Convert library to support multi-arch.
[deb_libnfs.git] / aclocal.m4
CommitLineData
dabf4152
AM
1# generated automatically by aclocal 1.11.1 -*- Autoconf -*-
2
3# Copyright (C) 1996, 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2004,
4# 2005, 2006, 2007, 2008, 2009 Free Software Foundation, Inc.
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
14m4_ifndef([AC_AUTOCONF_VERSION],
15 [m4_copy([m4_PACKAGE_VERSION], [AC_AUTOCONF_VERSION])])dnl
16m4_if(m4_defn([AC_AUTOCONF_VERSION]), [2.68],,
17[m4_warning([this file was generated for autoconf 2.68.
18You have another version of autoconf. It may work, but is not guaranteed to.
19If you have problems, you may need to regenerate the build system entirely.
20To do so, use the procedure documented by the package, typically `autoreconf'.])])
21
22# libtool.m4 - Configure libtool for the host system. -*-Autoconf-*-
23#
24# Copyright (C) 1996, 1997, 1998, 1999, 2000, 2001, 2003, 2004, 2005,
5670ec6e
AM
25# 2006, 2007, 2008, 2009, 2010, 2011 Free Software
26# Foundation, Inc.
dabf4152
AM
27# Written by Gordon Matzigkeit, 1996
28#
29# This file is free software; the Free Software Foundation gives
30# unlimited permission to copy and/or distribute it, with or without
31# modifications, as long as this notice is preserved.
32
33m4_define([_LT_COPYING], [dnl
34# Copyright (C) 1996, 1997, 1998, 1999, 2000, 2001, 2003, 2004, 2005,
5670ec6e
AM
35# 2006, 2007, 2008, 2009, 2010, 2011 Free Software
36# Foundation, Inc.
dabf4152
AM
37# Written by Gordon Matzigkeit, 1996
38#
39# This file is part of GNU Libtool.
40#
41# GNU Libtool is free software; you can redistribute it and/or
42# modify it under the terms of the GNU General Public License as
43# published by the Free Software Foundation; either version 2 of
44# the License, or (at your option) any later version.
45#
46# As a special exception to the GNU General Public License,
47# if you distribute this file as part of a program or library that
48# is built using GNU Libtool, you may include this file under the
49# same distribution terms that you use for the rest of that program.
50#
51# GNU Libtool is distributed in the hope that it will be useful,
52# but WITHOUT ANY WARRANTY; without even the implied warranty of
53# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
54# GNU General Public License for more details.
55#
56# You should have received a copy of the GNU General Public License
57# along with GNU Libtool; see the file COPYING. If not, a copy
58# can be downloaded from http://www.gnu.org/licenses/gpl.html, or
59# obtained by writing to the Free Software Foundation, Inc.,
60# 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
61])
62
63# serial 57 LT_INIT
64
65
66# LT_PREREQ(VERSION)
67# ------------------
68# Complain and exit if this libtool version is less that VERSION.
69m4_defun([LT_PREREQ],
70[m4_if(m4_version_compare(m4_defn([LT_PACKAGE_VERSION]), [$1]), -1,
71 [m4_default([$3],
72 [m4_fatal([Libtool version $1 or higher is required],
73 63)])],
74 [$2])])
75
76
77# _LT_CHECK_BUILDDIR
78# ------------------
79# Complain if the absolute build directory name contains unusual characters
80m4_defun([_LT_CHECK_BUILDDIR],
81[case `pwd` in
82 *\ * | *\ *)
83 AC_MSG_WARN([Libtool does not cope well with whitespace in `pwd`]) ;;
84esac
85])
86
87
88# LT_INIT([OPTIONS])
89# ------------------
90AC_DEFUN([LT_INIT],
91[AC_PREREQ([2.58])dnl We use AC_INCLUDES_DEFAULT
92AC_REQUIRE([AC_CONFIG_AUX_DIR_DEFAULT])dnl
93AC_BEFORE([$0], [LT_LANG])dnl
94AC_BEFORE([$0], [LT_OUTPUT])dnl
95AC_BEFORE([$0], [LTDL_INIT])dnl
96m4_require([_LT_CHECK_BUILDDIR])dnl
97
98dnl Autoconf doesn't catch unexpanded LT_ macros by default:
99m4_pattern_forbid([^_?LT_[A-Z_]+$])dnl
100m4_pattern_allow([^(_LT_EOF|LT_DLGLOBAL|LT_DLLAZY_OR_NOW|LT_MULTI_MODULE)$])dnl
101dnl aclocal doesn't pull ltoptions.m4, ltsugar.m4, or ltversion.m4
102dnl unless we require an AC_DEFUNed macro:
103AC_REQUIRE([LTOPTIONS_VERSION])dnl
104AC_REQUIRE([LTSUGAR_VERSION])dnl
105AC_REQUIRE([LTVERSION_VERSION])dnl
106AC_REQUIRE([LTOBSOLETE_VERSION])dnl
107m4_require([_LT_PROG_LTMAIN])dnl
108
109_LT_SHELL_INIT([SHELL=${CONFIG_SHELL-/bin/sh}])
110
111dnl Parse OPTIONS
112_LT_SET_OPTIONS([$0], [$1])
113
114# This can be used to rebuild libtool when needed
115LIBTOOL_DEPS="$ltmain"
116
117# Always use our own libtool.
118LIBTOOL='$(SHELL) $(top_builddir)/libtool'
119AC_SUBST(LIBTOOL)dnl
120
121_LT_SETUP
122
123# Only expand once:
124m4_define([LT_INIT])
125])# LT_INIT
126
127# Old names:
128AU_ALIAS([AC_PROG_LIBTOOL], [LT_INIT])
129AU_ALIAS([AM_PROG_LIBTOOL], [LT_INIT])
130dnl aclocal-1.4 backwards compatibility:
131dnl AC_DEFUN([AC_PROG_LIBTOOL], [])
132dnl AC_DEFUN([AM_PROG_LIBTOOL], [])
133
134
135# _LT_CC_BASENAME(CC)
136# -------------------
137# Calculate cc_basename. Skip known compiler wrappers and cross-prefix.
138m4_defun([_LT_CC_BASENAME],
139[for cc_temp in $1""; do
140 case $cc_temp in
141 compile | *[[\\/]]compile | ccache | *[[\\/]]ccache ) ;;
142 distcc | *[[\\/]]distcc | purify | *[[\\/]]purify ) ;;
143 \-*) ;;
144 *) break;;
145 esac
146done
147cc_basename=`$ECHO "$cc_temp" | $SED "s%.*/%%; s%^$host_alias-%%"`
148])
149
150
151# _LT_FILEUTILS_DEFAULTS
152# ----------------------
153# It is okay to use these file commands and assume they have been set
154# sensibly after `m4_require([_LT_FILEUTILS_DEFAULTS])'.
155m4_defun([_LT_FILEUTILS_DEFAULTS],
156[: ${CP="cp -f"}
157: ${MV="mv -f"}
158: ${RM="rm -f"}
159])# _LT_FILEUTILS_DEFAULTS
160
161
162# _LT_SETUP
163# ---------
164m4_defun([_LT_SETUP],
165[AC_REQUIRE([AC_CANONICAL_HOST])dnl
166AC_REQUIRE([AC_CANONICAL_BUILD])dnl
167AC_REQUIRE([_LT_PREPARE_SED_QUOTE_VARS])dnl
168AC_REQUIRE([_LT_PROG_ECHO_BACKSLASH])dnl
169
5670ec6e
AM
170_LT_DECL([], [PATH_SEPARATOR], [1], [The PATH separator for the build system])dnl
171dnl
dabf4152
AM
172_LT_DECL([], [host_alias], [0], [The host system])dnl
173_LT_DECL([], [host], [0])dnl
174_LT_DECL([], [host_os], [0])dnl
175dnl
176_LT_DECL([], [build_alias], [0], [The build system])dnl
177_LT_DECL([], [build], [0])dnl
178_LT_DECL([], [build_os], [0])dnl
179dnl
180AC_REQUIRE([AC_PROG_CC])dnl
181AC_REQUIRE([LT_PATH_LD])dnl
182AC_REQUIRE([LT_PATH_NM])dnl
183dnl
184AC_REQUIRE([AC_PROG_LN_S])dnl
185test -z "$LN_S" && LN_S="ln -s"
186_LT_DECL([], [LN_S], [1], [Whether we need soft or hard links])dnl
187dnl
188AC_REQUIRE([LT_CMD_MAX_LEN])dnl
189_LT_DECL([objext], [ac_objext], [0], [Object file suffix (normally "o")])dnl
190_LT_DECL([], [exeext], [0], [Executable file suffix (normally "")])dnl
191dnl
192m4_require([_LT_FILEUTILS_DEFAULTS])dnl
193m4_require([_LT_CHECK_SHELL_FEATURES])dnl
194m4_require([_LT_PATH_CONVERSION_FUNCTIONS])dnl
195m4_require([_LT_CMD_RELOAD])dnl
196m4_require([_LT_CHECK_MAGIC_METHOD])dnl
197m4_require([_LT_CHECK_SHAREDLIB_FROM_LINKLIB])dnl
198m4_require([_LT_CMD_OLD_ARCHIVE])dnl
199m4_require([_LT_CMD_GLOBAL_SYMBOLS])dnl
200m4_require([_LT_WITH_SYSROOT])dnl
201
202_LT_CONFIG_LIBTOOL_INIT([
203# See if we are running on zsh, and set the options which allow our
204# commands through without removal of \ escapes INIT.
205if test -n "\${ZSH_VERSION+set}" ; then
206 setopt NO_GLOB_SUBST
207fi
208])
209if test -n "${ZSH_VERSION+set}" ; then
210 setopt NO_GLOB_SUBST
211fi
212
213_LT_CHECK_OBJDIR
214
215m4_require([_LT_TAG_COMPILER])dnl
216
217case $host_os in
218aix3*)
219 # AIX sometimes has problems with the GCC collect2 program. For some
220 # reason, if we set the COLLECT_NAMES environment variable, the problems
221 # vanish in a puff of smoke.
222 if test "X${COLLECT_NAMES+set}" != Xset; then
223 COLLECT_NAMES=
224 export COLLECT_NAMES
225 fi
226 ;;
227esac
228
229# Global variables:
230ofile=libtool
231can_build_shared=yes
232
233# All known linkers require a `.a' archive for static linking (except MSVC,
234# which needs '.lib').
235libext=a
236
237with_gnu_ld="$lt_cv_prog_gnu_ld"
238
239old_CC="$CC"
240old_CFLAGS="$CFLAGS"
241
242# Set sane defaults for various variables
243test -z "$CC" && CC=cc
244test -z "$LTCC" && LTCC=$CC
245test -z "$LTCFLAGS" && LTCFLAGS=$CFLAGS
246test -z "$LD" && LD=ld
247test -z "$ac_objext" && ac_objext=o
248
249_LT_CC_BASENAME([$compiler])
250
251# Only perform the check for file, if the check method requires it
252test -z "$MAGIC_CMD" && MAGIC_CMD=file
253case $deplibs_check_method in
254file_magic*)
255 if test "$file_magic_cmd" = '$MAGIC_CMD'; then
256 _LT_PATH_MAGIC
257 fi
258 ;;
259esac
260
261# Use C for the default configuration in the libtool script
262LT_SUPPORTED_TAG([CC])
263_LT_LANG_C_CONFIG
264_LT_LANG_DEFAULT_CONFIG
265_LT_CONFIG_COMMANDS
266])# _LT_SETUP
267
268
269# _LT_PREPARE_SED_QUOTE_VARS
270# --------------------------
271# Define a few sed substitution that help us do robust quoting.
272m4_defun([_LT_PREPARE_SED_QUOTE_VARS],
273[# Backslashify metacharacters that are still active within
274# double-quoted strings.
275sed_quote_subst='s/\([["`$\\]]\)/\\\1/g'
276
277# Same as above, but do not quote variable references.
278double_quote_subst='s/\([["`\\]]\)/\\\1/g'
279
280# Sed substitution to delay expansion of an escaped shell variable in a
281# double_quote_subst'ed string.
282delay_variable_subst='s/\\\\\\\\\\\$/\\\\\\$/g'
283
284# Sed substitution to delay expansion of an escaped single quote.
285delay_single_quote_subst='s/'\''/'\'\\\\\\\'\''/g'
286
287# Sed substitution to avoid accidental globbing in evaled expressions
288no_glob_subst='s/\*/\\\*/g'
289])
290
291# _LT_PROG_LTMAIN
292# ---------------
293# Note that this code is called both from `configure', and `config.status'
294# now that we use AC_CONFIG_COMMANDS to generate libtool. Notably,
295# `config.status' has no value for ac_aux_dir unless we are using Automake,
296# so we pass a copy along to make sure it has a sensible value anyway.
297m4_defun([_LT_PROG_LTMAIN],
298[m4_ifdef([AC_REQUIRE_AUX_FILE], [AC_REQUIRE_AUX_FILE([ltmain.sh])])dnl
299_LT_CONFIG_LIBTOOL_INIT([ac_aux_dir='$ac_aux_dir'])
300ltmain="$ac_aux_dir/ltmain.sh"
301])# _LT_PROG_LTMAIN
302
303
304
305# So that we can recreate a full libtool script including additional
306# tags, we accumulate the chunks of code to send to AC_CONFIG_COMMANDS
307# in macros and then make a single call at the end using the `libtool'
308# label.
309
310
311# _LT_CONFIG_LIBTOOL_INIT([INIT-COMMANDS])
312# ----------------------------------------
313# Register INIT-COMMANDS to be passed to AC_CONFIG_COMMANDS later.
314m4_define([_LT_CONFIG_LIBTOOL_INIT],
315[m4_ifval([$1],
316 [m4_append([_LT_OUTPUT_LIBTOOL_INIT],
317 [$1
318])])])
319
320# Initialize.
321m4_define([_LT_OUTPUT_LIBTOOL_INIT])
322
323
324# _LT_CONFIG_LIBTOOL([COMMANDS])
325# ------------------------------
326# Register COMMANDS to be passed to AC_CONFIG_COMMANDS later.
327m4_define([_LT_CONFIG_LIBTOOL],
328[m4_ifval([$1],
329 [m4_append([_LT_OUTPUT_LIBTOOL_COMMANDS],
330 [$1
331])])])
332
333# Initialize.
334m4_define([_LT_OUTPUT_LIBTOOL_COMMANDS])
335
336
337# _LT_CONFIG_SAVE_COMMANDS([COMMANDS], [INIT_COMMANDS])
338# -----------------------------------------------------
339m4_defun([_LT_CONFIG_SAVE_COMMANDS],
340[_LT_CONFIG_LIBTOOL([$1])
341_LT_CONFIG_LIBTOOL_INIT([$2])
342])
343
344
345# _LT_FORMAT_COMMENT([COMMENT])
346# -----------------------------
347# Add leading comment marks to the start of each line, and a trailing
348# full-stop to the whole comment if one is not present already.
349m4_define([_LT_FORMAT_COMMENT],
350[m4_ifval([$1], [
351m4_bpatsubst([m4_bpatsubst([$1], [^ *], [# ])],
352 [['`$\]], [\\\&])]m4_bmatch([$1], [[!?.]$], [], [.])
353)])
354
355
356
357
358
359# _LT_DECL([CONFIGNAME], VARNAME, VALUE, [DESCRIPTION], [IS-TAGGED?])
360# -------------------------------------------------------------------
361# CONFIGNAME is the name given to the value in the libtool script.
362# VARNAME is the (base) name used in the configure script.
363# VALUE may be 0, 1 or 2 for a computed quote escaped value based on
364# VARNAME. Any other value will be used directly.
365m4_define([_LT_DECL],
366[lt_if_append_uniq([lt_decl_varnames], [$2], [, ],
367 [lt_dict_add_subkey([lt_decl_dict], [$2], [libtool_name],
368 [m4_ifval([$1], [$1], [$2])])
369 lt_dict_add_subkey([lt_decl_dict], [$2], [value], [$3])
370 m4_ifval([$4],
371 [lt_dict_add_subkey([lt_decl_dict], [$2], [description], [$4])])
372 lt_dict_add_subkey([lt_decl_dict], [$2],
373 [tagged?], [m4_ifval([$5], [yes], [no])])])
374])
375
376
377# _LT_TAGDECL([CONFIGNAME], VARNAME, VALUE, [DESCRIPTION])
378# --------------------------------------------------------
379m4_define([_LT_TAGDECL], [_LT_DECL([$1], [$2], [$3], [$4], [yes])])
380
381
382# lt_decl_tag_varnames([SEPARATOR], [VARNAME1...])
383# ------------------------------------------------
384m4_define([lt_decl_tag_varnames],
385[_lt_decl_filter([tagged?], [yes], $@)])
386
387
388# _lt_decl_filter(SUBKEY, VALUE, [SEPARATOR], [VARNAME1..])
389# ---------------------------------------------------------
390m4_define([_lt_decl_filter],
391[m4_case([$#],
392 [0], [m4_fatal([$0: too few arguments: $#])],
393 [1], [m4_fatal([$0: too few arguments: $#: $1])],
394 [2], [lt_dict_filter([lt_decl_dict], [$1], [$2], [], lt_decl_varnames)],
395 [3], [lt_dict_filter([lt_decl_dict], [$1], [$2], [$3], lt_decl_varnames)],
396 [lt_dict_filter([lt_decl_dict], $@)])[]dnl
397])
398
399
400# lt_decl_quote_varnames([SEPARATOR], [VARNAME1...])
401# --------------------------------------------------
402m4_define([lt_decl_quote_varnames],
403[_lt_decl_filter([value], [1], $@)])
404
405
406# lt_decl_dquote_varnames([SEPARATOR], [VARNAME1...])
407# ---------------------------------------------------
408m4_define([lt_decl_dquote_varnames],
409[_lt_decl_filter([value], [2], $@)])
410
411
412# lt_decl_varnames_tagged([SEPARATOR], [VARNAME1...])
413# ---------------------------------------------------
414m4_define([lt_decl_varnames_tagged],
415[m4_assert([$# <= 2])dnl
416_$0(m4_quote(m4_default([$1], [[, ]])),
417 m4_ifval([$2], [[$2]], [m4_dquote(lt_decl_tag_varnames)]),
418 m4_split(m4_normalize(m4_quote(_LT_TAGS)), [ ]))])
419m4_define([_lt_decl_varnames_tagged],
420[m4_ifval([$3], [lt_combine([$1], [$2], [_], $3)])])
421
422
423# lt_decl_all_varnames([SEPARATOR], [VARNAME1...])
424# ------------------------------------------------
425m4_define([lt_decl_all_varnames],
426[_$0(m4_quote(m4_default([$1], [[, ]])),
427 m4_if([$2], [],
428 m4_quote(lt_decl_varnames),
429 m4_quote(m4_shift($@))))[]dnl
430])
431m4_define([_lt_decl_all_varnames],
432[lt_join($@, lt_decl_varnames_tagged([$1],
433 lt_decl_tag_varnames([[, ]], m4_shift($@))))dnl
434])
435
436
437# _LT_CONFIG_STATUS_DECLARE([VARNAME])
438# ------------------------------------
439# Quote a variable value, and forward it to `config.status' so that its
440# declaration there will have the same value as in `configure'. VARNAME
441# must have a single quote delimited value for this to work.
442m4_define([_LT_CONFIG_STATUS_DECLARE],
443[$1='`$ECHO "$][$1" | $SED "$delay_single_quote_subst"`'])
444
445
446# _LT_CONFIG_STATUS_DECLARATIONS
447# ------------------------------
448# We delimit libtool config variables with single quotes, so when
449# we write them to config.status, we have to be sure to quote all
450# embedded single quotes properly. In configure, this macro expands
451# each variable declared with _LT_DECL (and _LT_TAGDECL) into:
452#
453# <var>='`$ECHO "$<var>" | $SED "$delay_single_quote_subst"`'
454m4_defun([_LT_CONFIG_STATUS_DECLARATIONS],
455[m4_foreach([_lt_var], m4_quote(lt_decl_all_varnames),
456 [m4_n([_LT_CONFIG_STATUS_DECLARE(_lt_var)])])])
457
458
459# _LT_LIBTOOL_TAGS
460# ----------------
461# Output comment and list of tags supported by the script
462m4_defun([_LT_LIBTOOL_TAGS],
463[_LT_FORMAT_COMMENT([The names of the tagged configurations supported by this script])dnl
464available_tags="_LT_TAGS"dnl
465])
466
467
468# _LT_LIBTOOL_DECLARE(VARNAME, [TAG])
469# -----------------------------------
470# Extract the dictionary values for VARNAME (optionally with TAG) and
471# expand to a commented shell variable setting:
472#
473# # Some comment about what VAR is for.
474# visible_name=$lt_internal_name
475m4_define([_LT_LIBTOOL_DECLARE],
476[_LT_FORMAT_COMMENT(m4_quote(lt_dict_fetch([lt_decl_dict], [$1],
477 [description])))[]dnl
478m4_pushdef([_libtool_name],
479 m4_quote(lt_dict_fetch([lt_decl_dict], [$1], [libtool_name])))[]dnl
480m4_case(m4_quote(lt_dict_fetch([lt_decl_dict], [$1], [value])),
481 [0], [_libtool_name=[$]$1],
482 [1], [_libtool_name=$lt_[]$1],
483 [2], [_libtool_name=$lt_[]$1],
484 [_libtool_name=lt_dict_fetch([lt_decl_dict], [$1], [value])])[]dnl
485m4_ifval([$2], [_$2])[]m4_popdef([_libtool_name])[]dnl
486])
487
488
489# _LT_LIBTOOL_CONFIG_VARS
490# -----------------------
491# Produce commented declarations of non-tagged libtool config variables
492# suitable for insertion in the LIBTOOL CONFIG section of the `libtool'
493# script. Tagged libtool config variables (even for the LIBTOOL CONFIG
494# section) are produced by _LT_LIBTOOL_TAG_VARS.
495m4_defun([_LT_LIBTOOL_CONFIG_VARS],
496[m4_foreach([_lt_var],
497 m4_quote(_lt_decl_filter([tagged?], [no], [], lt_decl_varnames)),
498 [m4_n([_LT_LIBTOOL_DECLARE(_lt_var)])])])
499
500
501# _LT_LIBTOOL_TAG_VARS(TAG)
502# -------------------------
503m4_define([_LT_LIBTOOL_TAG_VARS],
504[m4_foreach([_lt_var], m4_quote(lt_decl_tag_varnames),
505 [m4_n([_LT_LIBTOOL_DECLARE(_lt_var, [$1])])])])
506
507
508# _LT_TAGVAR(VARNAME, [TAGNAME])
509# ------------------------------
510m4_define([_LT_TAGVAR], [m4_ifval([$2], [$1_$2], [$1])])
511
512
513# _LT_CONFIG_COMMANDS
514# -------------------
515# Send accumulated output to $CONFIG_STATUS. Thanks to the lists of
516# variables for single and double quote escaping we saved from calls
517# to _LT_DECL, we can put quote escaped variables declarations
518# into `config.status', and then the shell code to quote escape them in
519# for loops in `config.status'. Finally, any additional code accumulated
520# from calls to _LT_CONFIG_LIBTOOL_INIT is expanded.
521m4_defun([_LT_CONFIG_COMMANDS],
522[AC_PROVIDE_IFELSE([LT_OUTPUT],
523 dnl If the libtool generation code has been placed in $CONFIG_LT,
524 dnl instead of duplicating it all over again into config.status,
525 dnl then we will have config.status run $CONFIG_LT later, so it
526 dnl needs to know what name is stored there:
527 [AC_CONFIG_COMMANDS([libtool],
528 [$SHELL $CONFIG_LT || AS_EXIT(1)], [CONFIG_LT='$CONFIG_LT'])],
529 dnl If the libtool generation code is destined for config.status,
530 dnl expand the accumulated commands and init code now:
531 [AC_CONFIG_COMMANDS([libtool],
532 [_LT_OUTPUT_LIBTOOL_COMMANDS], [_LT_OUTPUT_LIBTOOL_COMMANDS_INIT])])
533])#_LT_CONFIG_COMMANDS
534
535
536# Initialize.
537m4_define([_LT_OUTPUT_LIBTOOL_COMMANDS_INIT],
538[
539
540# The HP-UX ksh and POSIX shell print the target directory to stdout
541# if CDPATH is set.
542(unset CDPATH) >/dev/null 2>&1 && unset CDPATH
543
544sed_quote_subst='$sed_quote_subst'
545double_quote_subst='$double_quote_subst'
546delay_variable_subst='$delay_variable_subst'
547_LT_CONFIG_STATUS_DECLARATIONS
548LTCC='$LTCC'
549LTCFLAGS='$LTCFLAGS'
550compiler='$compiler_DEFAULT'
551
552# A function that is used when there is no print builtin or printf.
553func_fallback_echo ()
554{
555 eval 'cat <<_LTECHO_EOF
556\$[]1
557_LTECHO_EOF'
558}
559
560# Quote evaled strings.
561for var in lt_decl_all_varnames([[ \
562]], lt_decl_quote_varnames); do
563 case \`eval \\\\\$ECHO \\\\""\\\\\$\$var"\\\\"\` in
564 *[[\\\\\\\`\\"\\\$]]*)
565 eval "lt_\$var=\\\\\\"\\\`\\\$ECHO \\"\\\$\$var\\" | \\\$SED \\"\\\$sed_quote_subst\\"\\\`\\\\\\""
566 ;;
567 *)
568 eval "lt_\$var=\\\\\\"\\\$\$var\\\\\\""
569 ;;
570 esac
571done
572
573# Double-quote double-evaled strings.
574for var in lt_decl_all_varnames([[ \
575]], lt_decl_dquote_varnames); do
576 case \`eval \\\\\$ECHO \\\\""\\\\\$\$var"\\\\"\` in
577 *[[\\\\\\\`\\"\\\$]]*)
578 eval "lt_\$var=\\\\\\"\\\`\\\$ECHO \\"\\\$\$var\\" | \\\$SED -e \\"\\\$double_quote_subst\\" -e \\"\\\$sed_quote_subst\\" -e \\"\\\$delay_variable_subst\\"\\\`\\\\\\""
579 ;;
580 *)
581 eval "lt_\$var=\\\\\\"\\\$\$var\\\\\\""
582 ;;
583 esac
584done
585
586_LT_OUTPUT_LIBTOOL_INIT
587])
588
589# _LT_GENERATED_FILE_INIT(FILE, [COMMENT])
590# ------------------------------------
591# Generate a child script FILE with all initialization necessary to
592# reuse the environment learned by the parent script, and make the
593# file executable. If COMMENT is supplied, it is inserted after the
594# `#!' sequence but before initialization text begins. After this
595# macro, additional text can be appended to FILE to form the body of
596# the child script. The macro ends with non-zero status if the
597# file could not be fully written (such as if the disk is full).
598m4_ifdef([AS_INIT_GENERATED],
599[m4_defun([_LT_GENERATED_FILE_INIT],[AS_INIT_GENERATED($@)])],
600[m4_defun([_LT_GENERATED_FILE_INIT],
601[m4_require([AS_PREPARE])]dnl
602[m4_pushdef([AS_MESSAGE_LOG_FD])]dnl
603[lt_write_fail=0
604cat >$1 <<_ASEOF || lt_write_fail=1
605#! $SHELL
606# Generated by $as_me.
607$2
608SHELL=\${CONFIG_SHELL-$SHELL}
609export SHELL
610_ASEOF
611cat >>$1 <<\_ASEOF || lt_write_fail=1
612AS_SHELL_SANITIZE
613_AS_PREPARE
614exec AS_MESSAGE_FD>&1
615_ASEOF
616test $lt_write_fail = 0 && chmod +x $1[]dnl
617m4_popdef([AS_MESSAGE_LOG_FD])])])# _LT_GENERATED_FILE_INIT
618
619# LT_OUTPUT
620# ---------
621# This macro allows early generation of the libtool script (before
622# AC_OUTPUT is called), incase it is used in configure for compilation
623# tests.
624AC_DEFUN([LT_OUTPUT],
625[: ${CONFIG_LT=./config.lt}
626AC_MSG_NOTICE([creating $CONFIG_LT])
627_LT_GENERATED_FILE_INIT(["$CONFIG_LT"],
628[# Run this file to recreate a libtool stub with the current configuration.])
629
630cat >>"$CONFIG_LT" <<\_LTEOF
631lt_cl_silent=false
632exec AS_MESSAGE_LOG_FD>>config.log
633{
634 echo
635 AS_BOX([Running $as_me.])
636} >&AS_MESSAGE_LOG_FD
637
638lt_cl_help="\
639\`$as_me' creates a local libtool stub from the current configuration,
640for use in further configure time tests before the real libtool is
641generated.
642
643Usage: $[0] [[OPTIONS]]
644
645 -h, --help print this help, then exit
646 -V, --version print version number, then exit
647 -q, --quiet do not print progress messages
648 -d, --debug don't remove temporary files
649
650Report bugs to <bug-libtool@gnu.org>."
651
652lt_cl_version="\
653m4_ifset([AC_PACKAGE_NAME], [AC_PACKAGE_NAME ])config.lt[]dnl
654m4_ifset([AC_PACKAGE_VERSION], [ AC_PACKAGE_VERSION])
655configured by $[0], generated by m4_PACKAGE_STRING.
656
5670ec6e 657Copyright (C) 2011 Free Software Foundation, Inc.
dabf4152
AM
658This config.lt script is free software; the Free Software Foundation
659gives unlimited permision to copy, distribute and modify it."
660
661while test $[#] != 0
662do
663 case $[1] in
664 --version | --v* | -V )
665 echo "$lt_cl_version"; exit 0 ;;
666 --help | --h* | -h )
667 echo "$lt_cl_help"; exit 0 ;;
668 --debug | --d* | -d )
669 debug=: ;;
670 --quiet | --q* | --silent | --s* | -q )
671 lt_cl_silent=: ;;
672
673 -*) AC_MSG_ERROR([unrecognized option: $[1]
674Try \`$[0] --help' for more information.]) ;;
675
676 *) AC_MSG_ERROR([unrecognized argument: $[1]
677Try \`$[0] --help' for more information.]) ;;
678 esac
679 shift
680done
681
682if $lt_cl_silent; then
683 exec AS_MESSAGE_FD>/dev/null
684fi
685_LTEOF
686
687cat >>"$CONFIG_LT" <<_LTEOF
688_LT_OUTPUT_LIBTOOL_COMMANDS_INIT
689_LTEOF
690
691cat >>"$CONFIG_LT" <<\_LTEOF
692AC_MSG_NOTICE([creating $ofile])
693_LT_OUTPUT_LIBTOOL_COMMANDS
694AS_EXIT(0)
695_LTEOF
696chmod +x "$CONFIG_LT"
697
698# configure is writing to config.log, but config.lt does its own redirection,
699# appending to config.log, which fails on DOS, as config.log is still kept
700# open by configure. Here we exec the FD to /dev/null, effectively closing
701# config.log, so it can be properly (re)opened and appended to by config.lt.
702lt_cl_success=:
703test "$silent" = yes &&
704 lt_config_lt_args="$lt_config_lt_args --quiet"
705exec AS_MESSAGE_LOG_FD>/dev/null
706$SHELL "$CONFIG_LT" $lt_config_lt_args || lt_cl_success=false
707exec AS_MESSAGE_LOG_FD>>config.log
708$lt_cl_success || AS_EXIT(1)
709])# LT_OUTPUT
710
711
712# _LT_CONFIG(TAG)
713# ---------------
714# If TAG is the built-in tag, create an initial libtool script with a
715# default configuration from the untagged config vars. Otherwise add code
716# to config.status for appending the configuration named by TAG from the
717# matching tagged config vars.
718m4_defun([_LT_CONFIG],
719[m4_require([_LT_FILEUTILS_DEFAULTS])dnl
720_LT_CONFIG_SAVE_COMMANDS([
721 m4_define([_LT_TAG], m4_if([$1], [], [C], [$1]))dnl
722 m4_if(_LT_TAG, [C], [
723 # See if we are running on zsh, and set the options which allow our
724 # commands through without removal of \ escapes.
725 if test -n "${ZSH_VERSION+set}" ; then
726 setopt NO_GLOB_SUBST
727 fi
728
729 cfgfile="${ofile}T"
730 trap "$RM \"$cfgfile\"; exit 1" 1 2 15
731 $RM "$cfgfile"
732
733 cat <<_LT_EOF >> "$cfgfile"
734#! $SHELL
735
736# `$ECHO "$ofile" | sed 's%^.*/%%'` - Provide generalized library-building support services.
737# Generated automatically by $as_me ($PACKAGE$TIMESTAMP) $VERSION
738# Libtool was configured on host `(hostname || uname -n) 2>/dev/null | sed 1q`:
739# NOTE: Changes made to this file will be lost: look at ltmain.sh.
740#
741_LT_COPYING
742_LT_LIBTOOL_TAGS
743
744# ### BEGIN LIBTOOL CONFIG
745_LT_LIBTOOL_CONFIG_VARS
746_LT_LIBTOOL_TAG_VARS
747# ### END LIBTOOL CONFIG
748
749_LT_EOF
750
751 case $host_os in
752 aix3*)
753 cat <<\_LT_EOF >> "$cfgfile"
754# AIX sometimes has problems with the GCC collect2 program. For some
755# reason, if we set the COLLECT_NAMES environment variable, the problems
756# vanish in a puff of smoke.
757if test "X${COLLECT_NAMES+set}" != Xset; then
758 COLLECT_NAMES=
759 export COLLECT_NAMES
760fi
761_LT_EOF
762 ;;
763 esac
764
765 _LT_PROG_LTMAIN
766
767 # We use sed instead of cat because bash on DJGPP gets confused if
768 # if finds mixed CR/LF and LF-only lines. Since sed operates in
769 # text mode, it properly converts lines to CR/LF. This bash problem
770 # is reportedly fixed, but why not run on old versions too?
771 sed '$q' "$ltmain" >> "$cfgfile" \
772 || (rm -f "$cfgfile"; exit 1)
773
774 _LT_PROG_REPLACE_SHELLFNS
775
776 mv -f "$cfgfile" "$ofile" ||
777 (rm -f "$ofile" && cp "$cfgfile" "$ofile" && rm -f "$cfgfile")
778 chmod +x "$ofile"
779],
780[cat <<_LT_EOF >> "$ofile"
781
782dnl Unfortunately we have to use $1 here, since _LT_TAG is not expanded
783dnl in a comment (ie after a #).
784# ### BEGIN LIBTOOL TAG CONFIG: $1
785_LT_LIBTOOL_TAG_VARS(_LT_TAG)
786# ### END LIBTOOL TAG CONFIG: $1
787_LT_EOF
788])dnl /m4_if
789],
790[m4_if([$1], [], [
791 PACKAGE='$PACKAGE'
792 VERSION='$VERSION'
793 TIMESTAMP='$TIMESTAMP'
794 RM='$RM'
795 ofile='$ofile'], [])
796])dnl /_LT_CONFIG_SAVE_COMMANDS
797])# _LT_CONFIG
798
799
800# LT_SUPPORTED_TAG(TAG)
801# ---------------------
802# Trace this macro to discover what tags are supported by the libtool
803# --tag option, using:
804# autoconf --trace 'LT_SUPPORTED_TAG:$1'
805AC_DEFUN([LT_SUPPORTED_TAG], [])
806
807
808# C support is built-in for now
809m4_define([_LT_LANG_C_enabled], [])
810m4_define([_LT_TAGS], [])
811
812
813# LT_LANG(LANG)
814# -------------
815# Enable libtool support for the given language if not already enabled.
816AC_DEFUN([LT_LANG],
817[AC_BEFORE([$0], [LT_OUTPUT])dnl
818m4_case([$1],
819 [C], [_LT_LANG(C)],
820 [C++], [_LT_LANG(CXX)],
5670ec6e 821 [Go], [_LT_LANG(GO)],
dabf4152
AM
822 [Java], [_LT_LANG(GCJ)],
823 [Fortran 77], [_LT_LANG(F77)],
824 [Fortran], [_LT_LANG(FC)],
825 [Windows Resource], [_LT_LANG(RC)],
826 [m4_ifdef([_LT_LANG_]$1[_CONFIG],
827 [_LT_LANG($1)],
828 [m4_fatal([$0: unsupported language: "$1"])])])dnl
829])# LT_LANG
830
831
832# _LT_LANG(LANGNAME)
833# ------------------
834m4_defun([_LT_LANG],
835[m4_ifdef([_LT_LANG_]$1[_enabled], [],
836 [LT_SUPPORTED_TAG([$1])dnl
837 m4_append([_LT_TAGS], [$1 ])dnl
838 m4_define([_LT_LANG_]$1[_enabled], [])dnl
839 _LT_LANG_$1_CONFIG($1)])dnl
840])# _LT_LANG
841
842
5670ec6e
AM
843m4_ifndef([AC_PROG_GO], [
844# NOTE: This macro has been submitted for inclusion into #
845# GNU Autoconf as AC_PROG_GO. When it is available in #
846# a released version of Autoconf we should remove this #
847# macro and use it instead. #
848m4_defun([AC_PROG_GO],
849[AC_LANG_PUSH(Go)dnl
850AC_ARG_VAR([GOC], [Go compiler command])dnl
851AC_ARG_VAR([GOFLAGS], [Go compiler flags])dnl
852_AC_ARG_VAR_LDFLAGS()dnl
853AC_CHECK_TOOL(GOC, gccgo)
854if test -z "$GOC"; then
855 if test -n "$ac_tool_prefix"; then
856 AC_CHECK_PROG(GOC, [${ac_tool_prefix}gccgo], [${ac_tool_prefix}gccgo])
857 fi
858fi
859if test -z "$GOC"; then
860 AC_CHECK_PROG(GOC, gccgo, gccgo, false)
861fi
862])#m4_defun
863])#m4_ifndef
864
865
dabf4152
AM
866# _LT_LANG_DEFAULT_CONFIG
867# -----------------------
868m4_defun([_LT_LANG_DEFAULT_CONFIG],
869[AC_PROVIDE_IFELSE([AC_PROG_CXX],
870 [LT_LANG(CXX)],
871 [m4_define([AC_PROG_CXX], defn([AC_PROG_CXX])[LT_LANG(CXX)])])
872
873AC_PROVIDE_IFELSE([AC_PROG_F77],
874 [LT_LANG(F77)],
875 [m4_define([AC_PROG_F77], defn([AC_PROG_F77])[LT_LANG(F77)])])
876
877AC_PROVIDE_IFELSE([AC_PROG_FC],
878 [LT_LANG(FC)],
879 [m4_define([AC_PROG_FC], defn([AC_PROG_FC])[LT_LANG(FC)])])
880
881dnl The call to [A][M_PROG_GCJ] is quoted like that to stop aclocal
882dnl pulling things in needlessly.
883AC_PROVIDE_IFELSE([AC_PROG_GCJ],
884 [LT_LANG(GCJ)],
885 [AC_PROVIDE_IFELSE([A][M_PROG_GCJ],
886 [LT_LANG(GCJ)],
887 [AC_PROVIDE_IFELSE([LT_PROG_GCJ],
888 [LT_LANG(GCJ)],
889 [m4_ifdef([AC_PROG_GCJ],
890 [m4_define([AC_PROG_GCJ], defn([AC_PROG_GCJ])[LT_LANG(GCJ)])])
891 m4_ifdef([A][M_PROG_GCJ],
892 [m4_define([A][M_PROG_GCJ], defn([A][M_PROG_GCJ])[LT_LANG(GCJ)])])
893 m4_ifdef([LT_PROG_GCJ],
894 [m4_define([LT_PROG_GCJ], defn([LT_PROG_GCJ])[LT_LANG(GCJ)])])])])])
895
5670ec6e
AM
896AC_PROVIDE_IFELSE([AC_PROG_GO],
897 [LT_LANG(GO)],
898 [m4_define([AC_PROG_GO], defn([AC_PROG_GO])[LT_LANG(GO)])])
899
dabf4152
AM
900AC_PROVIDE_IFELSE([LT_PROG_RC],
901 [LT_LANG(RC)],
902 [m4_define([LT_PROG_RC], defn([LT_PROG_RC])[LT_LANG(RC)])])
903])# _LT_LANG_DEFAULT_CONFIG
904
905# Obsolete macros:
906AU_DEFUN([AC_LIBTOOL_CXX], [LT_LANG(C++)])
907AU_DEFUN([AC_LIBTOOL_F77], [LT_LANG(Fortran 77)])
908AU_DEFUN([AC_LIBTOOL_FC], [LT_LANG(Fortran)])
909AU_DEFUN([AC_LIBTOOL_GCJ], [LT_LANG(Java)])
910AU_DEFUN([AC_LIBTOOL_RC], [LT_LANG(Windows Resource)])
911dnl aclocal-1.4 backwards compatibility:
912dnl AC_DEFUN([AC_LIBTOOL_CXX], [])
913dnl AC_DEFUN([AC_LIBTOOL_F77], [])
914dnl AC_DEFUN([AC_LIBTOOL_FC], [])
915dnl AC_DEFUN([AC_LIBTOOL_GCJ], [])
916dnl AC_DEFUN([AC_LIBTOOL_RC], [])
917
918
919# _LT_TAG_COMPILER
920# ----------------
921m4_defun([_LT_TAG_COMPILER],
922[AC_REQUIRE([AC_PROG_CC])dnl
923
924_LT_DECL([LTCC], [CC], [1], [A C compiler])dnl
925_LT_DECL([LTCFLAGS], [CFLAGS], [1], [LTCC compiler flags])dnl
926_LT_TAGDECL([CC], [compiler], [1], [A language specific compiler])dnl
927_LT_TAGDECL([with_gcc], [GCC], [0], [Is the compiler the GNU compiler?])dnl
928
929# If no C compiler was specified, use CC.
930LTCC=${LTCC-"$CC"}
931
932# If no C compiler flags were specified, use CFLAGS.
933LTCFLAGS=${LTCFLAGS-"$CFLAGS"}
934
935# Allow CC to be a program name with arguments.
936compiler=$CC
937])# _LT_TAG_COMPILER
938
939
940# _LT_COMPILER_BOILERPLATE
941# ------------------------
942# Check for compiler boilerplate output or warnings with
943# the simple compiler test code.
944m4_defun([_LT_COMPILER_BOILERPLATE],
945[m4_require([_LT_DECL_SED])dnl
946ac_outfile=conftest.$ac_objext
947echo "$lt_simple_compile_test_code" >conftest.$ac_ext
948eval "$ac_compile" 2>&1 >/dev/null | $SED '/^$/d; /^ *+/d' >conftest.err
949_lt_compiler_boilerplate=`cat conftest.err`
950$RM conftest*
951])# _LT_COMPILER_BOILERPLATE
952
953
954# _LT_LINKER_BOILERPLATE
955# ----------------------
956# Check for linker boilerplate output or warnings with
957# the simple link test code.
958m4_defun([_LT_LINKER_BOILERPLATE],
959[m4_require([_LT_DECL_SED])dnl
960ac_outfile=conftest.$ac_objext
961echo "$lt_simple_link_test_code" >conftest.$ac_ext
962eval "$ac_link" 2>&1 >/dev/null | $SED '/^$/d; /^ *+/d' >conftest.err
963_lt_linker_boilerplate=`cat conftest.err`
964$RM -r conftest*
965])# _LT_LINKER_BOILERPLATE
966
967# _LT_REQUIRED_DARWIN_CHECKS
968# -------------------------
969m4_defun_once([_LT_REQUIRED_DARWIN_CHECKS],[
970 case $host_os in
971 rhapsody* | darwin*)
972 AC_CHECK_TOOL([DSYMUTIL], [dsymutil], [:])
973 AC_CHECK_TOOL([NMEDIT], [nmedit], [:])
974 AC_CHECK_TOOL([LIPO], [lipo], [:])
975 AC_CHECK_TOOL([OTOOL], [otool], [:])
976 AC_CHECK_TOOL([OTOOL64], [otool64], [:])
977 _LT_DECL([], [DSYMUTIL], [1],
978 [Tool to manipulate archived DWARF debug symbol files on Mac OS X])
979 _LT_DECL([], [NMEDIT], [1],
980 [Tool to change global to local symbols on Mac OS X])
981 _LT_DECL([], [LIPO], [1],
982 [Tool to manipulate fat objects and archives on Mac OS X])
983 _LT_DECL([], [OTOOL], [1],
984 [ldd/readelf like tool for Mach-O binaries on Mac OS X])
985 _LT_DECL([], [OTOOL64], [1],
986 [ldd/readelf like tool for 64 bit Mach-O binaries on Mac OS X 10.4])
987
988 AC_CACHE_CHECK([for -single_module linker flag],[lt_cv_apple_cc_single_mod],
989 [lt_cv_apple_cc_single_mod=no
990 if test -z "${LT_MULTI_MODULE}"; then
991 # By default we will add the -single_module flag. You can override
992 # by either setting the environment variable LT_MULTI_MODULE
993 # non-empty at configure time, or by adding -multi_module to the
994 # link flags.
995 rm -rf libconftest.dylib*
996 echo "int foo(void){return 1;}" > conftest.c
997 echo "$LTCC $LTCFLAGS $LDFLAGS -o libconftest.dylib \
998-dynamiclib -Wl,-single_module conftest.c" >&AS_MESSAGE_LOG_FD
999 $LTCC $LTCFLAGS $LDFLAGS -o libconftest.dylib \
1000 -dynamiclib -Wl,-single_module conftest.c 2>conftest.err
1001 _lt_result=$?
5670ec6e
AM
1002 # If there is a non-empty error log, and "single_module"
1003 # appears in it, assume the flag caused a linker warning
1004 if test -s conftest.err && $GREP single_module conftest.err; then
1005 cat conftest.err >&AS_MESSAGE_LOG_FD
1006 # Otherwise, if the output was created with a 0 exit code from
1007 # the compiler, it worked.
1008 elif test -f libconftest.dylib && test $_lt_result -eq 0; then
dabf4152
AM
1009 lt_cv_apple_cc_single_mod=yes
1010 else
1011 cat conftest.err >&AS_MESSAGE_LOG_FD
1012 fi
1013 rm -rf libconftest.dylib*
1014 rm -f conftest.*
1015 fi])
5670ec6e 1016
dabf4152
AM
1017 AC_CACHE_CHECK([for -exported_symbols_list linker flag],
1018 [lt_cv_ld_exported_symbols_list],
1019 [lt_cv_ld_exported_symbols_list=no
1020 save_LDFLAGS=$LDFLAGS
1021 echo "_main" > conftest.sym
1022 LDFLAGS="$LDFLAGS -Wl,-exported_symbols_list,conftest.sym"
1023 AC_LINK_IFELSE([AC_LANG_PROGRAM([],[])],
1024 [lt_cv_ld_exported_symbols_list=yes],
1025 [lt_cv_ld_exported_symbols_list=no])
1026 LDFLAGS="$save_LDFLAGS"
1027 ])
5670ec6e 1028
dabf4152
AM
1029 AC_CACHE_CHECK([for -force_load linker flag],[lt_cv_ld_force_load],
1030 [lt_cv_ld_force_load=no
1031 cat > conftest.c << _LT_EOF
1032int forced_loaded() { return 2;}
1033_LT_EOF
1034 echo "$LTCC $LTCFLAGS -c -o conftest.o conftest.c" >&AS_MESSAGE_LOG_FD
1035 $LTCC $LTCFLAGS -c -o conftest.o conftest.c 2>&AS_MESSAGE_LOG_FD
1036 echo "$AR cru libconftest.a conftest.o" >&AS_MESSAGE_LOG_FD
1037 $AR cru libconftest.a conftest.o 2>&AS_MESSAGE_LOG_FD
1038 echo "$RANLIB libconftest.a" >&AS_MESSAGE_LOG_FD
1039 $RANLIB libconftest.a 2>&AS_MESSAGE_LOG_FD
1040 cat > conftest.c << _LT_EOF
1041int main() { return 0;}
1042_LT_EOF
1043 echo "$LTCC $LTCFLAGS $LDFLAGS -o conftest conftest.c -Wl,-force_load,./libconftest.a" >&AS_MESSAGE_LOG_FD
1044 $LTCC $LTCFLAGS $LDFLAGS -o conftest conftest.c -Wl,-force_load,./libconftest.a 2>conftest.err
1045 _lt_result=$?
5670ec6e
AM
1046 if test -s conftest.err && $GREP force_load conftest.err; then
1047 cat conftest.err >&AS_MESSAGE_LOG_FD
1048 elif test -f conftest && test $_lt_result -eq 0 && $GREP forced_load conftest >/dev/null 2>&1 ; then
dabf4152
AM
1049 lt_cv_ld_force_load=yes
1050 else
1051 cat conftest.err >&AS_MESSAGE_LOG_FD
1052 fi
1053 rm -f conftest.err libconftest.a conftest conftest.c
1054 rm -rf conftest.dSYM
1055 ])
1056 case $host_os in
1057 rhapsody* | darwin1.[[012]])
1058 _lt_dar_allow_undefined='${wl}-undefined ${wl}suppress' ;;
1059 darwin1.*)
1060 _lt_dar_allow_undefined='${wl}-flat_namespace ${wl}-undefined ${wl}suppress' ;;
1061 darwin*) # darwin 5.x on
1062 # if running on 10.5 or later, the deployment target defaults
1063 # to the OS version, if on x86, and 10.4, the deployment
1064 # target defaults to 10.4. Don't you love it?
1065 case ${MACOSX_DEPLOYMENT_TARGET-10.0},$host in
1066 10.0,*86*-darwin8*|10.0,*-darwin[[91]]*)
1067 _lt_dar_allow_undefined='${wl}-undefined ${wl}dynamic_lookup' ;;
1068 10.[[012]]*)
1069 _lt_dar_allow_undefined='${wl}-flat_namespace ${wl}-undefined ${wl}suppress' ;;
1070 10.*)
1071 _lt_dar_allow_undefined='${wl}-undefined ${wl}dynamic_lookup' ;;
1072 esac
1073 ;;
1074 esac
1075 if test "$lt_cv_apple_cc_single_mod" = "yes"; then
1076 _lt_dar_single_mod='$single_module'
1077 fi
1078 if test "$lt_cv_ld_exported_symbols_list" = "yes"; then
1079 _lt_dar_export_syms=' ${wl}-exported_symbols_list,$output_objdir/${libname}-symbols.expsym'
1080 else
1081 _lt_dar_export_syms='~$NMEDIT -s $output_objdir/${libname}-symbols.expsym ${lib}'
1082 fi
1083 if test "$DSYMUTIL" != ":" && test "$lt_cv_ld_force_load" = "no"; then
1084 _lt_dsymutil='~$DSYMUTIL $lib || :'
1085 else
1086 _lt_dsymutil=
1087 fi
1088 ;;
1089 esac
1090])
1091
1092
5670ec6e
AM
1093# _LT_DARWIN_LINKER_FEATURES([TAG])
1094# ---------------------------------
dabf4152
AM
1095# Checks for linker and compiler features on darwin
1096m4_defun([_LT_DARWIN_LINKER_FEATURES],
1097[
1098 m4_require([_LT_REQUIRED_DARWIN_CHECKS])
1099 _LT_TAGVAR(archive_cmds_need_lc, $1)=no
1100 _LT_TAGVAR(hardcode_direct, $1)=no
1101 _LT_TAGVAR(hardcode_automatic, $1)=yes
1102 _LT_TAGVAR(hardcode_shlibpath_var, $1)=unsupported
1103 if test "$lt_cv_ld_force_load" = "yes"; then
1104 _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\"`'
5670ec6e
AM
1105 m4_case([$1], [F77], [_LT_TAGVAR(compiler_needs_object, $1)=yes],
1106 [FC], [_LT_TAGVAR(compiler_needs_object, $1)=yes])
dabf4152
AM
1107 else
1108 _LT_TAGVAR(whole_archive_flag_spec, $1)=''
1109 fi
1110 _LT_TAGVAR(link_all_deplibs, $1)=yes
1111 _LT_TAGVAR(allow_undefined_flag, $1)="$_lt_dar_allow_undefined"
1112 case $cc_basename in
1113 ifort*) _lt_dar_can_shared=yes ;;
1114 *) _lt_dar_can_shared=$GCC ;;
1115 esac
1116 if test "$_lt_dar_can_shared" = "yes"; then
1117 output_verbose_link_cmd=func_echo_all
1118 _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}"
1119 _LT_TAGVAR(module_cmds, $1)="\$CC \$allow_undefined_flag -o \$lib -bundle \$libobjs \$deplibs \$compiler_flags${_lt_dsymutil}"
1120 _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}"
1121 _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}"
1122 m4_if([$1], [CXX],
1123[ if test "$lt_cv_apple_cc_single_mod" != "yes"; then
1124 _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}"
1125 _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}"
1126 fi
1127],[])
1128 else
1129 _LT_TAGVAR(ld_shlibs, $1)=no
1130 fi
1131])
1132
1133# _LT_SYS_MODULE_PATH_AIX([TAGNAME])
1134# ----------------------------------
1135# Links a minimal program and checks the executable
1136# for the system default hardcoded library path. In most cases,
1137# this is /usr/lib:/lib, but when the MPI compilers are used
1138# the location of the communication and MPI libs are included too.
1139# If we don't find anything, use the default library path according
1140# to the aix ld manual.
1141# Store the results from the different compilers for each TAGNAME.
1142# Allow to override them for all tags through lt_cv_aix_libpath.
1143m4_defun([_LT_SYS_MODULE_PATH_AIX],
1144[m4_require([_LT_DECL_SED])dnl
1145if test "${lt_cv_aix_libpath+set}" = set; then
1146 aix_libpath=$lt_cv_aix_libpath
1147else
1148 AC_CACHE_VAL([_LT_TAGVAR([lt_cv_aix_libpath_], [$1])],
1149 [AC_LINK_IFELSE([AC_LANG_PROGRAM],[
1150 lt_aix_libpath_sed='[
1151 /Import File Strings/,/^$/ {
1152 /^0/ {
1153 s/^0 *\([^ ]*\) *$/\1/
1154 p
1155 }
1156 }]'
1157 _LT_TAGVAR([lt_cv_aix_libpath_], [$1])=`dump -H conftest$ac_exeext 2>/dev/null | $SED -n -e "$lt_aix_libpath_sed"`
1158 # Check for a 64-bit object if we didn't find anything.
1159 if test -z "$_LT_TAGVAR([lt_cv_aix_libpath_], [$1])"; then
1160 _LT_TAGVAR([lt_cv_aix_libpath_], [$1])=`dump -HX64 conftest$ac_exeext 2>/dev/null | $SED -n -e "$lt_aix_libpath_sed"`
1161 fi],[])
1162 if test -z "$_LT_TAGVAR([lt_cv_aix_libpath_], [$1])"; then
1163 _LT_TAGVAR([lt_cv_aix_libpath_], [$1])="/usr/lib:/lib"
1164 fi
1165 ])
1166 aix_libpath=$_LT_TAGVAR([lt_cv_aix_libpath_], [$1])
1167fi
1168])# _LT_SYS_MODULE_PATH_AIX
1169
1170
1171# _LT_SHELL_INIT(ARG)
1172# -------------------
1173m4_define([_LT_SHELL_INIT],
1174[m4_divert_text([M4SH-INIT], [$1
1175])])# _LT_SHELL_INIT
1176
1177
1178
1179# _LT_PROG_ECHO_BACKSLASH
1180# -----------------------
1181# Find how we can fake an echo command that does not interpret backslash.
1182# In particular, with Autoconf 2.60 or later we add some code to the start
1183# of the generated configure script which will find a shell with a builtin
1184# printf (which we can use as an echo command).
1185m4_defun([_LT_PROG_ECHO_BACKSLASH],
1186[ECHO='\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\'
1187ECHO=$ECHO$ECHO$ECHO$ECHO$ECHO
1188ECHO=$ECHO$ECHO$ECHO$ECHO$ECHO$ECHO
1189
1190AC_MSG_CHECKING([how to print strings])
1191# Test print first, because it will be a builtin if present.
1192if test "X`( print -r -- -n ) 2>/dev/null`" = X-n && \
1193 test "X`print -r -- $ECHO 2>/dev/null`" = "X$ECHO"; then
1194 ECHO='print -r --'
1195elif test "X`printf %s $ECHO 2>/dev/null`" = "X$ECHO"; then
1196 ECHO='printf %s\n'
1197else
1198 # Use this function as a fallback that always works.
1199 func_fallback_echo ()
1200 {
1201 eval 'cat <<_LTECHO_EOF
1202$[]1
1203_LTECHO_EOF'
1204 }
1205 ECHO='func_fallback_echo'
1206fi
1207
1208# func_echo_all arg...
1209# Invoke $ECHO with all args, space-separated.
1210func_echo_all ()
1211{
1212 $ECHO "$*"
1213}
1214
1215case "$ECHO" in
1216 printf*) AC_MSG_RESULT([printf]) ;;
1217 print*) AC_MSG_RESULT([print -r]) ;;
1218 *) AC_MSG_RESULT([cat]) ;;
1219esac
1220
1221m4_ifdef([_AS_DETECT_SUGGESTED],
1222[_AS_DETECT_SUGGESTED([
1223 test -n "${ZSH_VERSION+set}${BASH_VERSION+set}" || (
1224 ECHO='\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\'
1225 ECHO=$ECHO$ECHO$ECHO$ECHO$ECHO
1226 ECHO=$ECHO$ECHO$ECHO$ECHO$ECHO$ECHO
1227 PATH=/empty FPATH=/empty; export PATH FPATH
1228 test "X`printf %s $ECHO`" = "X$ECHO" \
1229 || test "X`print -r -- $ECHO`" = "X$ECHO" )])])
1230
1231_LT_DECL([], [SHELL], [1], [Shell to use when invoking shell scripts])
1232_LT_DECL([], [ECHO], [1], [An echo program that protects backslashes])
1233])# _LT_PROG_ECHO_BACKSLASH
1234
1235
1236# _LT_WITH_SYSROOT
1237# ----------------
1238AC_DEFUN([_LT_WITH_SYSROOT],
1239[AC_MSG_CHECKING([for sysroot])
1240AC_ARG_WITH([sysroot],
1241[ --with-sysroot[=DIR] Search for dependent libraries within DIR
1242 (or the compiler's sysroot if not specified).],
1243[], [with_sysroot=no])
1244
1245dnl lt_sysroot will always be passed unquoted. We quote it here
1246dnl in case the user passed a directory name.
1247lt_sysroot=
1248case ${with_sysroot} in #(
1249 yes)
1250 if test "$GCC" = yes; then
1251 lt_sysroot=`$CC --print-sysroot 2>/dev/null`
1252 fi
1253 ;; #(
1254 /*)
1255 lt_sysroot=`echo "$with_sysroot" | sed -e "$sed_quote_subst"`
1256 ;; #(
1257 no|'')
1258 ;; #(
1259 *)
1260 AC_MSG_RESULT([${with_sysroot}])
1261 AC_MSG_ERROR([The sysroot must be an absolute path.])
1262 ;;
1263esac
1264
1265 AC_MSG_RESULT([${lt_sysroot:-no}])
1266_LT_DECL([], [lt_sysroot], [0], [The root where to search for ]dnl
1267[dependent libraries, and in which our libraries should be installed.])])
1268
1269# _LT_ENABLE_LOCK
1270# ---------------
1271m4_defun([_LT_ENABLE_LOCK],
1272[AC_ARG_ENABLE([libtool-lock],
1273 [AS_HELP_STRING([--disable-libtool-lock],
1274 [avoid locking (might break parallel builds)])])
1275test "x$enable_libtool_lock" != xno && enable_libtool_lock=yes
1276
1277# Some flags need to be propagated to the compiler or linker for good
1278# libtool support.
1279case $host in
1280ia64-*-hpux*)
1281 # Find out which ABI we are using.
1282 echo 'int i;' > conftest.$ac_ext
1283 if AC_TRY_EVAL(ac_compile); then
1284 case `/usr/bin/file conftest.$ac_objext` in
1285 *ELF-32*)
1286 HPUX_IA64_MODE="32"
1287 ;;
1288 *ELF-64*)
1289 HPUX_IA64_MODE="64"
1290 ;;
1291 esac
1292 fi
1293 rm -rf conftest*
1294 ;;
1295*-*-irix6*)
1296 # Find out which ABI we are using.
1297 echo '[#]line '$LINENO' "configure"' > conftest.$ac_ext
1298 if AC_TRY_EVAL(ac_compile); then
1299 if test "$lt_cv_prog_gnu_ld" = yes; then
1300 case `/usr/bin/file conftest.$ac_objext` in
1301 *32-bit*)
1302 LD="${LD-ld} -melf32bsmip"
1303 ;;
1304 *N32*)
1305 LD="${LD-ld} -melf32bmipn32"
1306 ;;
1307 *64-bit*)
1308 LD="${LD-ld} -melf64bmip"
1309 ;;
1310 esac
1311 else
1312 case `/usr/bin/file conftest.$ac_objext` in
1313 *32-bit*)
1314 LD="${LD-ld} -32"
1315 ;;
1316 *N32*)
1317 LD="${LD-ld} -n32"
1318 ;;
1319 *64-bit*)
1320 LD="${LD-ld} -64"
1321 ;;
1322 esac
1323 fi
1324 fi
1325 rm -rf conftest*
1326 ;;
1327
1328x86_64-*kfreebsd*-gnu|x86_64-*linux*|ppc*-*linux*|powerpc*-*linux*| \
1329s390*-*linux*|s390*-*tpf*|sparc*-*linux*)
1330 # Find out which ABI we are using.
1331 echo 'int i;' > conftest.$ac_ext
1332 if AC_TRY_EVAL(ac_compile); then
1333 case `/usr/bin/file conftest.o` in
1334 *32-bit*)
1335 case $host in
1336 x86_64-*kfreebsd*-gnu)
1337 LD="${LD-ld} -m elf_i386_fbsd"
1338 ;;
1339 x86_64-*linux*)
1340 LD="${LD-ld} -m elf_i386"
1341 ;;
1342 ppc64-*linux*|powerpc64-*linux*)
1343 LD="${LD-ld} -m elf32ppclinux"
1344 ;;
1345 s390x-*linux*)
1346 LD="${LD-ld} -m elf_s390"
1347 ;;
1348 sparc64-*linux*)
1349 LD="${LD-ld} -m elf32_sparc"
1350 ;;
1351 esac
1352 ;;
1353 *64-bit*)
1354 case $host in
1355 x86_64-*kfreebsd*-gnu)
1356 LD="${LD-ld} -m elf_x86_64_fbsd"
1357 ;;
1358 x86_64-*linux*)
1359 LD="${LD-ld} -m elf_x86_64"
1360 ;;
1361 ppc*-*linux*|powerpc*-*linux*)
1362 LD="${LD-ld} -m elf64ppc"
1363 ;;
1364 s390*-*linux*|s390*-*tpf*)
1365 LD="${LD-ld} -m elf64_s390"
1366 ;;
1367 sparc*-*linux*)
1368 LD="${LD-ld} -m elf64_sparc"
1369 ;;
1370 esac
1371 ;;
1372 esac
1373 fi
1374 rm -rf conftest*
1375 ;;
1376
1377*-*-sco3.2v5*)
1378 # On SCO OpenServer 5, we need -belf to get full-featured binaries.
1379 SAVE_CFLAGS="$CFLAGS"
1380 CFLAGS="$CFLAGS -belf"
1381 AC_CACHE_CHECK([whether the C compiler needs -belf], lt_cv_cc_needs_belf,
1382 [AC_LANG_PUSH(C)
1383 AC_LINK_IFELSE([AC_LANG_PROGRAM([[]],[[]])],[lt_cv_cc_needs_belf=yes],[lt_cv_cc_needs_belf=no])
1384 AC_LANG_POP])
1385 if test x"$lt_cv_cc_needs_belf" != x"yes"; then
1386 # this is probably gcc 2.8.0, egcs 1.0 or newer; no need for -belf
1387 CFLAGS="$SAVE_CFLAGS"
1388 fi
1389 ;;
5670ec6e 1390*-*solaris*)
dabf4152
AM
1391 # Find out which ABI we are using.
1392 echo 'int i;' > conftest.$ac_ext
1393 if AC_TRY_EVAL(ac_compile); then
1394 case `/usr/bin/file conftest.o` in
1395 *64-bit*)
1396 case $lt_cv_prog_gnu_ld in
5670ec6e
AM
1397 yes*)
1398 case $host in
1399 i?86-*-solaris*)
1400 LD="${LD-ld} -m elf_x86_64"
1401 ;;
1402 sparc*-*-solaris*)
1403 LD="${LD-ld} -m elf64_sparc"
1404 ;;
1405 esac
1406 # GNU ld 2.21 introduced _sol2 emulations. Use them if available.
1407 if ${LD-ld} -V | grep _sol2 >/dev/null 2>&1; then
1408 LD="${LD-ld}_sol2"
1409 fi
1410 ;;
dabf4152
AM
1411 *)
1412 if ${LD-ld} -64 -r -o conftest2.o conftest.o >/dev/null 2>&1; then
1413 LD="${LD-ld} -64"
1414 fi
1415 ;;
1416 esac
1417 ;;
1418 esac
1419 fi
1420 rm -rf conftest*
1421 ;;
1422esac
1423
1424need_locks="$enable_libtool_lock"
1425])# _LT_ENABLE_LOCK
1426
1427
1428# _LT_PROG_AR
1429# -----------
1430m4_defun([_LT_PROG_AR],
1431[AC_CHECK_TOOLS(AR, [ar], false)
1432: ${AR=ar}
1433: ${AR_FLAGS=cru}
1434_LT_DECL([], [AR], [1], [The archiver])
1435_LT_DECL([], [AR_FLAGS], [1], [Flags to create an archive])
1436
1437AC_CACHE_CHECK([for archiver @FILE support], [lt_cv_ar_at_file],
1438 [lt_cv_ar_at_file=no
1439 AC_COMPILE_IFELSE([AC_LANG_PROGRAM],
1440 [echo conftest.$ac_objext > conftest.lst
1441 lt_ar_try='$AR $AR_FLAGS libconftest.a @conftest.lst >&AS_MESSAGE_LOG_FD'
1442 AC_TRY_EVAL([lt_ar_try])
1443 if test "$ac_status" -eq 0; then
1444 # Ensure the archiver fails upon bogus file names.
1445 rm -f conftest.$ac_objext libconftest.a
1446 AC_TRY_EVAL([lt_ar_try])
1447 if test "$ac_status" -ne 0; then
1448 lt_cv_ar_at_file=@
1449 fi
1450 fi
1451 rm -f conftest.* libconftest.a
1452 ])
1453 ])
1454
1455if test "x$lt_cv_ar_at_file" = xno; then
1456 archiver_list_spec=
1457else
1458 archiver_list_spec=$lt_cv_ar_at_file
1459fi
1460_LT_DECL([], [archiver_list_spec], [1],
1461 [How to feed a file listing to the archiver])
1462])# _LT_PROG_AR
1463
1464
1465# _LT_CMD_OLD_ARCHIVE
1466# -------------------
1467m4_defun([_LT_CMD_OLD_ARCHIVE],
1468[_LT_PROG_AR
1469
1470AC_CHECK_TOOL(STRIP, strip, :)
1471test -z "$STRIP" && STRIP=:
1472_LT_DECL([], [STRIP], [1], [A symbol stripping program])
1473
1474AC_CHECK_TOOL(RANLIB, ranlib, :)
1475test -z "$RANLIB" && RANLIB=:
1476_LT_DECL([], [RANLIB], [1],
1477 [Commands used to install an old-style archive])
1478
1479# Determine commands to create old-style static archives.
1480old_archive_cmds='$AR $AR_FLAGS $oldlib$oldobjs'
1481old_postinstall_cmds='chmod 644 $oldlib'
1482old_postuninstall_cmds=
1483
1484if test -n "$RANLIB"; then
1485 case $host_os in
1486 openbsd*)
5670ec6e 1487 old_postinstall_cmds="$old_postinstall_cmds~\$RANLIB -t \$tool_oldlib"
dabf4152
AM
1488 ;;
1489 *)
5670ec6e 1490 old_postinstall_cmds="$old_postinstall_cmds~\$RANLIB \$tool_oldlib"
dabf4152
AM
1491 ;;
1492 esac
5670ec6e 1493 old_archive_cmds="$old_archive_cmds~\$RANLIB \$tool_oldlib"
dabf4152
AM
1494fi
1495
1496case $host_os in
1497 darwin*)
1498 lock_old_archive_extraction=yes ;;
1499 *)
1500 lock_old_archive_extraction=no ;;
1501esac
1502_LT_DECL([], [old_postinstall_cmds], [2])
1503_LT_DECL([], [old_postuninstall_cmds], [2])
1504_LT_TAGDECL([], [old_archive_cmds], [2],
1505 [Commands used to build an old-style archive])
1506_LT_DECL([], [lock_old_archive_extraction], [0],
1507 [Whether to use a lock for old archive extraction])
1508])# _LT_CMD_OLD_ARCHIVE
1509
1510
1511# _LT_COMPILER_OPTION(MESSAGE, VARIABLE-NAME, FLAGS,
1512# [OUTPUT-FILE], [ACTION-SUCCESS], [ACTION-FAILURE])
1513# ----------------------------------------------------------------
1514# Check whether the given compiler option works
1515AC_DEFUN([_LT_COMPILER_OPTION],
1516[m4_require([_LT_FILEUTILS_DEFAULTS])dnl
1517m4_require([_LT_DECL_SED])dnl
1518AC_CACHE_CHECK([$1], [$2],
1519 [$2=no
1520 m4_if([$4], , [ac_outfile=conftest.$ac_objext], [ac_outfile=$4])
1521 echo "$lt_simple_compile_test_code" > conftest.$ac_ext
1522 lt_compiler_flag="$3"
1523 # Insert the option either (1) after the last *FLAGS variable, or
1524 # (2) before a word containing "conftest.", or (3) at the end.
1525 # Note that $ac_compile itself does not contain backslashes and begins
1526 # with a dollar sign (not a hyphen), so the echo should work correctly.
1527 # The option is referenced via a variable to avoid confusing sed.
1528 lt_compile=`echo "$ac_compile" | $SED \
1529 -e 's:.*FLAGS}\{0,1\} :&$lt_compiler_flag :; t' \
1530 -e 's: [[^ ]]*conftest\.: $lt_compiler_flag&:; t' \
1531 -e 's:$: $lt_compiler_flag:'`
1532 (eval echo "\"\$as_me:$LINENO: $lt_compile\"" >&AS_MESSAGE_LOG_FD)
1533 (eval "$lt_compile" 2>conftest.err)
1534 ac_status=$?
1535 cat conftest.err >&AS_MESSAGE_LOG_FD
1536 echo "$as_me:$LINENO: \$? = $ac_status" >&AS_MESSAGE_LOG_FD
1537 if (exit $ac_status) && test -s "$ac_outfile"; then
1538 # The compiler can only warn and ignore the option if not recognized
1539 # So say no if there are warnings other than the usual output.
1540 $ECHO "$_lt_compiler_boilerplate" | $SED '/^$/d' >conftest.exp
1541 $SED '/^$/d; /^ *+/d' conftest.err >conftest.er2
1542 if test ! -s conftest.er2 || diff conftest.exp conftest.er2 >/dev/null; then
1543 $2=yes
1544 fi
1545 fi
1546 $RM conftest*
1547])
1548
1549if test x"[$]$2" = xyes; then
1550 m4_if([$5], , :, [$5])
1551else
1552 m4_if([$6], , :, [$6])
1553fi
1554])# _LT_COMPILER_OPTION
1555
1556# Old name:
1557AU_ALIAS([AC_LIBTOOL_COMPILER_OPTION], [_LT_COMPILER_OPTION])
1558dnl aclocal-1.4 backwards compatibility:
1559dnl AC_DEFUN([AC_LIBTOOL_COMPILER_OPTION], [])
1560
1561
1562# _LT_LINKER_OPTION(MESSAGE, VARIABLE-NAME, FLAGS,
1563# [ACTION-SUCCESS], [ACTION-FAILURE])
1564# ----------------------------------------------------
1565# Check whether the given linker option works
1566AC_DEFUN([_LT_LINKER_OPTION],
1567[m4_require([_LT_FILEUTILS_DEFAULTS])dnl
1568m4_require([_LT_DECL_SED])dnl
1569AC_CACHE_CHECK([$1], [$2],
1570 [$2=no
1571 save_LDFLAGS="$LDFLAGS"
1572 LDFLAGS="$LDFLAGS $3"
1573 echo "$lt_simple_link_test_code" > conftest.$ac_ext
1574 if (eval $ac_link 2>conftest.err) && test -s conftest$ac_exeext; then
1575 # The linker can only warn and ignore the option if not recognized
1576 # So say no if there are warnings
1577 if test -s conftest.err; then
1578 # Append any errors to the config.log.
1579 cat conftest.err 1>&AS_MESSAGE_LOG_FD
1580 $ECHO "$_lt_linker_boilerplate" | $SED '/^$/d' > conftest.exp
1581 $SED '/^$/d; /^ *+/d' conftest.err >conftest.er2
1582 if diff conftest.exp conftest.er2 >/dev/null; then
1583 $2=yes
1584 fi
1585 else
1586 $2=yes
1587 fi
1588 fi
1589 $RM -r conftest*
1590 LDFLAGS="$save_LDFLAGS"
1591])
1592
1593if test x"[$]$2" = xyes; then
1594 m4_if([$4], , :, [$4])
1595else
1596 m4_if([$5], , :, [$5])
1597fi
1598])# _LT_LINKER_OPTION
1599
1600# Old name:
1601AU_ALIAS([AC_LIBTOOL_LINKER_OPTION], [_LT_LINKER_OPTION])
1602dnl aclocal-1.4 backwards compatibility:
1603dnl AC_DEFUN([AC_LIBTOOL_LINKER_OPTION], [])
1604
1605
1606# LT_CMD_MAX_LEN
1607#---------------
1608AC_DEFUN([LT_CMD_MAX_LEN],
1609[AC_REQUIRE([AC_CANONICAL_HOST])dnl
1610# find the maximum length of command line arguments
1611AC_MSG_CHECKING([the maximum length of command line arguments])
1612AC_CACHE_VAL([lt_cv_sys_max_cmd_len], [dnl
1613 i=0
1614 teststring="ABCD"
1615
1616 case $build_os in
1617 msdosdjgpp*)
1618 # On DJGPP, this test can blow up pretty badly due to problems in libc
1619 # (any single argument exceeding 2000 bytes causes a buffer overrun
1620 # during glob expansion). Even if it were fixed, the result of this
1621 # check would be larger than it should be.
1622 lt_cv_sys_max_cmd_len=12288; # 12K is about right
1623 ;;
1624
1625 gnu*)
1626 # Under GNU Hurd, this test is not required because there is
1627 # no limit to the length of command line arguments.
1628 # Libtool will interpret -1 as no limit whatsoever
1629 lt_cv_sys_max_cmd_len=-1;
1630 ;;
1631
1632 cygwin* | mingw* | cegcc*)
1633 # On Win9x/ME, this test blows up -- it succeeds, but takes
1634 # about 5 minutes as the teststring grows exponentially.
1635 # Worse, since 9x/ME are not pre-emptively multitasking,
1636 # you end up with a "frozen" computer, even though with patience
1637 # the test eventually succeeds (with a max line length of 256k).
1638 # Instead, let's just punt: use the minimum linelength reported by
1639 # all of the supported platforms: 8192 (on NT/2K/XP).
1640 lt_cv_sys_max_cmd_len=8192;
1641 ;;
1642
1643 mint*)
1644 # On MiNT this can take a long time and run out of memory.
1645 lt_cv_sys_max_cmd_len=8192;
1646 ;;
1647
1648 amigaos*)
1649 # On AmigaOS with pdksh, this test takes hours, literally.
1650 # So we just punt and use a minimum line length of 8192.
1651 lt_cv_sys_max_cmd_len=8192;
1652 ;;
1653
1654 netbsd* | freebsd* | openbsd* | darwin* | dragonfly*)
1655 # This has been around since 386BSD, at least. Likely further.
1656 if test -x /sbin/sysctl; then
1657 lt_cv_sys_max_cmd_len=`/sbin/sysctl -n kern.argmax`
1658 elif test -x /usr/sbin/sysctl; then
1659 lt_cv_sys_max_cmd_len=`/usr/sbin/sysctl -n kern.argmax`
1660 else
1661 lt_cv_sys_max_cmd_len=65536 # usable default for all BSDs
1662 fi
1663 # And add a safety zone
1664 lt_cv_sys_max_cmd_len=`expr $lt_cv_sys_max_cmd_len \/ 4`
1665 lt_cv_sys_max_cmd_len=`expr $lt_cv_sys_max_cmd_len \* 3`
1666 ;;
1667
1668 interix*)
1669 # We know the value 262144 and hardcode it with a safety zone (like BSD)
1670 lt_cv_sys_max_cmd_len=196608
1671 ;;
1672
5670ec6e
AM
1673 os2*)
1674 # The test takes a long time on OS/2.
1675 lt_cv_sys_max_cmd_len=8192
1676 ;;
1677
dabf4152
AM
1678 osf*)
1679 # Dr. Hans Ekkehard Plesser reports seeing a kernel panic running configure
1680 # due to this test when exec_disable_arg_limit is 1 on Tru64. It is not
1681 # nice to cause kernel panics so lets avoid the loop below.
1682 # First set a reasonable default.
1683 lt_cv_sys_max_cmd_len=16384
1684 #
1685 if test -x /sbin/sysconfig; then
1686 case `/sbin/sysconfig -q proc exec_disable_arg_limit` in
1687 *1*) lt_cv_sys_max_cmd_len=-1 ;;
1688 esac
1689 fi
1690 ;;
1691 sco3.2v5*)
1692 lt_cv_sys_max_cmd_len=102400
1693 ;;
1694 sysv5* | sco5v6* | sysv4.2uw2*)
1695 kargmax=`grep ARG_MAX /etc/conf/cf.d/stune 2>/dev/null`
1696 if test -n "$kargmax"; then
1697 lt_cv_sys_max_cmd_len=`echo $kargmax | sed 's/.*[[ ]]//'`
1698 else
1699 lt_cv_sys_max_cmd_len=32768
1700 fi
1701 ;;
1702 *)
1703 lt_cv_sys_max_cmd_len=`(getconf ARG_MAX) 2> /dev/null`
1704 if test -n "$lt_cv_sys_max_cmd_len"; then
1705 lt_cv_sys_max_cmd_len=`expr $lt_cv_sys_max_cmd_len \/ 4`
1706 lt_cv_sys_max_cmd_len=`expr $lt_cv_sys_max_cmd_len \* 3`
1707 else
1708 # Make teststring a little bigger before we do anything with it.
1709 # a 1K string should be a reasonable start.
1710 for i in 1 2 3 4 5 6 7 8 ; do
1711 teststring=$teststring$teststring
1712 done
1713 SHELL=${SHELL-${CONFIG_SHELL-/bin/sh}}
1714 # If test is not a shell built-in, we'll probably end up computing a
1715 # maximum length that is only half of the actual maximum length, but
1716 # we can't tell.
5670ec6e 1717 while { test "X"`env echo "$teststring$teststring" 2>/dev/null` \
dabf4152
AM
1718 = "X$teststring$teststring"; } >/dev/null 2>&1 &&
1719 test $i != 17 # 1/2 MB should be enough
1720 do
1721 i=`expr $i + 1`
1722 teststring=$teststring$teststring
1723 done
1724 # Only check the string length outside the loop.
1725 lt_cv_sys_max_cmd_len=`expr "X$teststring" : ".*" 2>&1`
1726 teststring=
1727 # Add a significant safety factor because C++ compilers can tack on
1728 # massive amounts of additional arguments before passing them to the
1729 # linker. It appears as though 1/2 is a usable value.
1730 lt_cv_sys_max_cmd_len=`expr $lt_cv_sys_max_cmd_len \/ 2`
1731 fi
1732 ;;
1733 esac
1734])
1735if test -n $lt_cv_sys_max_cmd_len ; then
1736 AC_MSG_RESULT($lt_cv_sys_max_cmd_len)
1737else
1738 AC_MSG_RESULT(none)
1739fi
1740max_cmd_len=$lt_cv_sys_max_cmd_len
1741_LT_DECL([], [max_cmd_len], [0],
1742 [What is the maximum length of a command?])
1743])# LT_CMD_MAX_LEN
1744
1745# Old name:
1746AU_ALIAS([AC_LIBTOOL_SYS_MAX_CMD_LEN], [LT_CMD_MAX_LEN])
1747dnl aclocal-1.4 backwards compatibility:
1748dnl AC_DEFUN([AC_LIBTOOL_SYS_MAX_CMD_LEN], [])
1749
1750
1751# _LT_HEADER_DLFCN
1752# ----------------
1753m4_defun([_LT_HEADER_DLFCN],
1754[AC_CHECK_HEADERS([dlfcn.h], [], [], [AC_INCLUDES_DEFAULT])dnl
1755])# _LT_HEADER_DLFCN
1756
1757
1758# _LT_TRY_DLOPEN_SELF (ACTION-IF-TRUE, ACTION-IF-TRUE-W-USCORE,
1759# ACTION-IF-FALSE, ACTION-IF-CROSS-COMPILING)
1760# ----------------------------------------------------------------
1761m4_defun([_LT_TRY_DLOPEN_SELF],
1762[m4_require([_LT_HEADER_DLFCN])dnl
1763if test "$cross_compiling" = yes; then :
1764 [$4]
1765else
1766 lt_dlunknown=0; lt_dlno_uscore=1; lt_dlneed_uscore=2
1767 lt_status=$lt_dlunknown
1768 cat > conftest.$ac_ext <<_LT_EOF
1769[#line $LINENO "configure"
1770#include "confdefs.h"
1771
1772#if HAVE_DLFCN_H
1773#include <dlfcn.h>
1774#endif
1775
1776#include <stdio.h>
1777
1778#ifdef RTLD_GLOBAL
1779# define LT_DLGLOBAL RTLD_GLOBAL
1780#else
1781# ifdef DL_GLOBAL
1782# define LT_DLGLOBAL DL_GLOBAL
1783# else
1784# define LT_DLGLOBAL 0
1785# endif
1786#endif
1787
1788/* We may have to define LT_DLLAZY_OR_NOW in the command line if we
1789 find out it does not work in some platform. */
1790#ifndef LT_DLLAZY_OR_NOW
1791# ifdef RTLD_LAZY
1792# define LT_DLLAZY_OR_NOW RTLD_LAZY
1793# else
1794# ifdef DL_LAZY
1795# define LT_DLLAZY_OR_NOW DL_LAZY
1796# else
1797# ifdef RTLD_NOW
1798# define LT_DLLAZY_OR_NOW RTLD_NOW
1799# else
1800# ifdef DL_NOW
1801# define LT_DLLAZY_OR_NOW DL_NOW
1802# else
1803# define LT_DLLAZY_OR_NOW 0
1804# endif
1805# endif
1806# endif
1807# endif
1808#endif
1809
1810/* When -fvisbility=hidden is used, assume the code has been annotated
1811 correspondingly for the symbols needed. */
1812#if defined(__GNUC__) && (((__GNUC__ == 3) && (__GNUC_MINOR__ >= 3)) || (__GNUC__ > 3))
1813int fnord () __attribute__((visibility("default")));
1814#endif
1815
1816int fnord () { return 42; }
1817int main ()
1818{
1819 void *self = dlopen (0, LT_DLGLOBAL|LT_DLLAZY_OR_NOW);
1820 int status = $lt_dlunknown;
1821
1822 if (self)
1823 {
1824 if (dlsym (self,"fnord")) status = $lt_dlno_uscore;
1825 else
1826 {
1827 if (dlsym( self,"_fnord")) status = $lt_dlneed_uscore;
1828 else puts (dlerror ());
1829 }
1830 /* dlclose (self); */
1831 }
1832 else
1833 puts (dlerror ());
1834
1835 return status;
1836}]
1837_LT_EOF
1838 if AC_TRY_EVAL(ac_link) && test -s conftest${ac_exeext} 2>/dev/null; then
1839 (./conftest; exit; ) >&AS_MESSAGE_LOG_FD 2>/dev/null
1840 lt_status=$?
1841 case x$lt_status in
1842 x$lt_dlno_uscore) $1 ;;
1843 x$lt_dlneed_uscore) $2 ;;
1844 x$lt_dlunknown|x*) $3 ;;
1845 esac
1846 else :
1847 # compilation failed
1848 $3
1849 fi
1850fi
1851rm -fr conftest*
1852])# _LT_TRY_DLOPEN_SELF
1853
1854
1855# LT_SYS_DLOPEN_SELF
1856# ------------------
1857AC_DEFUN([LT_SYS_DLOPEN_SELF],
1858[m4_require([_LT_HEADER_DLFCN])dnl
1859if test "x$enable_dlopen" != xyes; then
1860 enable_dlopen=unknown
1861 enable_dlopen_self=unknown
1862 enable_dlopen_self_static=unknown
1863else
1864 lt_cv_dlopen=no
1865 lt_cv_dlopen_libs=
1866
1867 case $host_os in
1868 beos*)
1869 lt_cv_dlopen="load_add_on"
1870 lt_cv_dlopen_libs=
1871 lt_cv_dlopen_self=yes
1872 ;;
1873
1874 mingw* | pw32* | cegcc*)
1875 lt_cv_dlopen="LoadLibrary"
1876 lt_cv_dlopen_libs=
1877 ;;
1878
1879 cygwin*)
1880 lt_cv_dlopen="dlopen"
1881 lt_cv_dlopen_libs=
1882 ;;
1883
1884 darwin*)
1885 # if libdl is installed we need to link against it
1886 AC_CHECK_LIB([dl], [dlopen],
1887 [lt_cv_dlopen="dlopen" lt_cv_dlopen_libs="-ldl"],[
1888 lt_cv_dlopen="dyld"
1889 lt_cv_dlopen_libs=
1890 lt_cv_dlopen_self=yes
1891 ])
1892 ;;
1893
1894 *)
1895 AC_CHECK_FUNC([shl_load],
1896 [lt_cv_dlopen="shl_load"],
1897 [AC_CHECK_LIB([dld], [shl_load],
1898 [lt_cv_dlopen="shl_load" lt_cv_dlopen_libs="-ldld"],
1899 [AC_CHECK_FUNC([dlopen],
1900 [lt_cv_dlopen="dlopen"],
1901 [AC_CHECK_LIB([dl], [dlopen],
1902 [lt_cv_dlopen="dlopen" lt_cv_dlopen_libs="-ldl"],
1903 [AC_CHECK_LIB([svld], [dlopen],
1904 [lt_cv_dlopen="dlopen" lt_cv_dlopen_libs="-lsvld"],
1905 [AC_CHECK_LIB([dld], [dld_link],
1906 [lt_cv_dlopen="dld_link" lt_cv_dlopen_libs="-ldld"])
1907 ])
1908 ])
1909 ])
1910 ])
1911 ])
1912 ;;
1913 esac
1914
1915 if test "x$lt_cv_dlopen" != xno; then
1916 enable_dlopen=yes
1917 else
1918 enable_dlopen=no
1919 fi
1920
1921 case $lt_cv_dlopen in
1922 dlopen)
1923 save_CPPFLAGS="$CPPFLAGS"
1924 test "x$ac_cv_header_dlfcn_h" = xyes && CPPFLAGS="$CPPFLAGS -DHAVE_DLFCN_H"
1925
1926 save_LDFLAGS="$LDFLAGS"
1927 wl=$lt_prog_compiler_wl eval LDFLAGS=\"\$LDFLAGS $export_dynamic_flag_spec\"
1928
1929 save_LIBS="$LIBS"
1930 LIBS="$lt_cv_dlopen_libs $LIBS"
1931
1932 AC_CACHE_CHECK([whether a program can dlopen itself],
1933 lt_cv_dlopen_self, [dnl
1934 _LT_TRY_DLOPEN_SELF(
1935 lt_cv_dlopen_self=yes, lt_cv_dlopen_self=yes,
1936 lt_cv_dlopen_self=no, lt_cv_dlopen_self=cross)
1937 ])
1938
1939 if test "x$lt_cv_dlopen_self" = xyes; then
1940 wl=$lt_prog_compiler_wl eval LDFLAGS=\"\$LDFLAGS $lt_prog_compiler_static\"
1941 AC_CACHE_CHECK([whether a statically linked program can dlopen itself],
1942 lt_cv_dlopen_self_static, [dnl
1943 _LT_TRY_DLOPEN_SELF(
1944 lt_cv_dlopen_self_static=yes, lt_cv_dlopen_self_static=yes,
1945 lt_cv_dlopen_self_static=no, lt_cv_dlopen_self_static=cross)
1946 ])
1947 fi
1948
1949 CPPFLAGS="$save_CPPFLAGS"
1950 LDFLAGS="$save_LDFLAGS"
1951 LIBS="$save_LIBS"
1952 ;;
1953 esac
1954
1955 case $lt_cv_dlopen_self in
1956 yes|no) enable_dlopen_self=$lt_cv_dlopen_self ;;
1957 *) enable_dlopen_self=unknown ;;
1958 esac
1959
1960 case $lt_cv_dlopen_self_static in
1961 yes|no) enable_dlopen_self_static=$lt_cv_dlopen_self_static ;;
1962 *) enable_dlopen_self_static=unknown ;;
1963 esac
1964fi
1965_LT_DECL([dlopen_support], [enable_dlopen], [0],
1966 [Whether dlopen is supported])
1967_LT_DECL([dlopen_self], [enable_dlopen_self], [0],
1968 [Whether dlopen of programs is supported])
1969_LT_DECL([dlopen_self_static], [enable_dlopen_self_static], [0],
1970 [Whether dlopen of statically linked programs is supported])
1971])# LT_SYS_DLOPEN_SELF
1972
1973# Old name:
1974AU_ALIAS([AC_LIBTOOL_DLOPEN_SELF], [LT_SYS_DLOPEN_SELF])
1975dnl aclocal-1.4 backwards compatibility:
1976dnl AC_DEFUN([AC_LIBTOOL_DLOPEN_SELF], [])
1977
1978
1979# _LT_COMPILER_C_O([TAGNAME])
1980# ---------------------------
1981# Check to see if options -c and -o are simultaneously supported by compiler.
1982# This macro does not hard code the compiler like AC_PROG_CC_C_O.
1983m4_defun([_LT_COMPILER_C_O],
1984[m4_require([_LT_DECL_SED])dnl
1985m4_require([_LT_FILEUTILS_DEFAULTS])dnl
1986m4_require([_LT_TAG_COMPILER])dnl
1987AC_CACHE_CHECK([if $compiler supports -c -o file.$ac_objext],
1988 [_LT_TAGVAR(lt_cv_prog_compiler_c_o, $1)],
1989 [_LT_TAGVAR(lt_cv_prog_compiler_c_o, $1)=no
1990 $RM -r conftest 2>/dev/null
1991 mkdir conftest
1992 cd conftest
1993 mkdir out
1994 echo "$lt_simple_compile_test_code" > conftest.$ac_ext
1995
1996 lt_compiler_flag="-o out/conftest2.$ac_objext"
1997 # Insert the option either (1) after the last *FLAGS variable, or
1998 # (2) before a word containing "conftest.", or (3) at the end.
1999 # Note that $ac_compile itself does not contain backslashes and begins
2000 # with a dollar sign (not a hyphen), so the echo should work correctly.
2001 lt_compile=`echo "$ac_compile" | $SED \
2002 -e 's:.*FLAGS}\{0,1\} :&$lt_compiler_flag :; t' \
2003 -e 's: [[^ ]]*conftest\.: $lt_compiler_flag&:; t' \
2004 -e 's:$: $lt_compiler_flag:'`
2005 (eval echo "\"\$as_me:$LINENO: $lt_compile\"" >&AS_MESSAGE_LOG_FD)
2006 (eval "$lt_compile" 2>out/conftest.err)
2007 ac_status=$?
2008 cat out/conftest.err >&AS_MESSAGE_LOG_FD
2009 echo "$as_me:$LINENO: \$? = $ac_status" >&AS_MESSAGE_LOG_FD
2010 if (exit $ac_status) && test -s out/conftest2.$ac_objext
2011 then
2012 # The compiler can only warn and ignore the option if not recognized
2013 # So say no if there are warnings
2014 $ECHO "$_lt_compiler_boilerplate" | $SED '/^$/d' > out/conftest.exp
2015 $SED '/^$/d; /^ *+/d' out/conftest.err >out/conftest.er2
2016 if test ! -s out/conftest.er2 || diff out/conftest.exp out/conftest.er2 >/dev/null; then
2017 _LT_TAGVAR(lt_cv_prog_compiler_c_o, $1)=yes
2018 fi
2019 fi
2020 chmod u+w . 2>&AS_MESSAGE_LOG_FD
2021 $RM conftest*
2022 # SGI C++ compiler will create directory out/ii_files/ for
2023 # template instantiation
2024 test -d out/ii_files && $RM out/ii_files/* && rmdir out/ii_files
2025 $RM out/* && rmdir out
2026 cd ..
2027 $RM -r conftest
2028 $RM conftest*
2029])
2030_LT_TAGDECL([compiler_c_o], [lt_cv_prog_compiler_c_o], [1],
2031 [Does compiler simultaneously support -c and -o options?])
2032])# _LT_COMPILER_C_O
2033
2034
2035# _LT_COMPILER_FILE_LOCKS([TAGNAME])
2036# ----------------------------------
2037# Check to see if we can do hard links to lock some files if needed
2038m4_defun([_LT_COMPILER_FILE_LOCKS],
2039[m4_require([_LT_ENABLE_LOCK])dnl
2040m4_require([_LT_FILEUTILS_DEFAULTS])dnl
2041_LT_COMPILER_C_O([$1])
2042
2043hard_links="nottested"
2044if test "$_LT_TAGVAR(lt_cv_prog_compiler_c_o, $1)" = no && test "$need_locks" != no; then
2045 # do not overwrite the value of need_locks provided by the user
2046 AC_MSG_CHECKING([if we can lock with hard links])
2047 hard_links=yes
2048 $RM conftest*
2049 ln conftest.a conftest.b 2>/dev/null && hard_links=no
2050 touch conftest.a
2051 ln conftest.a conftest.b 2>&5 || hard_links=no
2052 ln conftest.a conftest.b 2>/dev/null && hard_links=no
2053 AC_MSG_RESULT([$hard_links])
2054 if test "$hard_links" = no; then
2055 AC_MSG_WARN([`$CC' does not support `-c -o', so `make -j' may be unsafe])
2056 need_locks=warn
2057 fi
2058else
2059 need_locks=no
2060fi
2061_LT_DECL([], [need_locks], [1], [Must we lock files when doing compilation?])
2062])# _LT_COMPILER_FILE_LOCKS
2063
2064
2065# _LT_CHECK_OBJDIR
2066# ----------------
2067m4_defun([_LT_CHECK_OBJDIR],
2068[AC_CACHE_CHECK([for objdir], [lt_cv_objdir],
2069[rm -f .libs 2>/dev/null
2070mkdir .libs 2>/dev/null
2071if test -d .libs; then
2072 lt_cv_objdir=.libs
2073else
2074 # MS-DOS does not allow filenames that begin with a dot.
2075 lt_cv_objdir=_libs
2076fi
2077rmdir .libs 2>/dev/null])
2078objdir=$lt_cv_objdir
2079_LT_DECL([], [objdir], [0],
2080 [The name of the directory that contains temporary libtool files])dnl
2081m4_pattern_allow([LT_OBJDIR])dnl
2082AC_DEFINE_UNQUOTED(LT_OBJDIR, "$lt_cv_objdir/",
2083 [Define to the sub-directory in which libtool stores uninstalled libraries.])
2084])# _LT_CHECK_OBJDIR
2085
2086
2087# _LT_LINKER_HARDCODE_LIBPATH([TAGNAME])
2088# --------------------------------------
2089# Check hardcoding attributes.
2090m4_defun([_LT_LINKER_HARDCODE_LIBPATH],
2091[AC_MSG_CHECKING([how to hardcode library paths into programs])
2092_LT_TAGVAR(hardcode_action, $1)=
2093if test -n "$_LT_TAGVAR(hardcode_libdir_flag_spec, $1)" ||
2094 test -n "$_LT_TAGVAR(runpath_var, $1)" ||
2095 test "X$_LT_TAGVAR(hardcode_automatic, $1)" = "Xyes" ; then
2096
2097 # We can hardcode non-existent directories.
2098 if test "$_LT_TAGVAR(hardcode_direct, $1)" != no &&
2099 # If the only mechanism to avoid hardcoding is shlibpath_var, we
2100 # have to relink, otherwise we might link with an installed library
2101 # when we should be linking with a yet-to-be-installed one
2102 ## test "$_LT_TAGVAR(hardcode_shlibpath_var, $1)" != no &&
2103 test "$_LT_TAGVAR(hardcode_minus_L, $1)" != no; then
2104 # Linking always hardcodes the temporary library directory.
2105 _LT_TAGVAR(hardcode_action, $1)=relink
2106 else
2107 # We can link without hardcoding, and we can hardcode nonexisting dirs.
2108 _LT_TAGVAR(hardcode_action, $1)=immediate
2109 fi
2110else
2111 # We cannot hardcode anything, or else we can only hardcode existing
2112 # directories.
2113 _LT_TAGVAR(hardcode_action, $1)=unsupported
2114fi
2115AC_MSG_RESULT([$_LT_TAGVAR(hardcode_action, $1)])
2116
2117if test "$_LT_TAGVAR(hardcode_action, $1)" = relink ||
2118 test "$_LT_TAGVAR(inherit_rpath, $1)" = yes; then
2119 # Fast installation is not supported
2120 enable_fast_install=no
2121elif test "$shlibpath_overrides_runpath" = yes ||
2122 test "$enable_shared" = no; then
2123 # Fast installation is not necessary
2124 enable_fast_install=needless
2125fi
2126_LT_TAGDECL([], [hardcode_action], [0],
2127 [How to hardcode a shared library path into an executable])
2128])# _LT_LINKER_HARDCODE_LIBPATH
2129
2130
2131# _LT_CMD_STRIPLIB
2132# ----------------
2133m4_defun([_LT_CMD_STRIPLIB],
2134[m4_require([_LT_DECL_EGREP])
2135striplib=
2136old_striplib=
2137AC_MSG_CHECKING([whether stripping libraries is possible])
2138if test -n "$STRIP" && $STRIP -V 2>&1 | $GREP "GNU strip" >/dev/null; then
2139 test -z "$old_striplib" && old_striplib="$STRIP --strip-debug"
2140 test -z "$striplib" && striplib="$STRIP --strip-unneeded"
2141 AC_MSG_RESULT([yes])
2142else
2143# FIXME - insert some real tests, host_os isn't really good enough
2144 case $host_os in
2145 darwin*)
2146 if test -n "$STRIP" ; then
2147 striplib="$STRIP -x"
2148 old_striplib="$STRIP -S"
2149 AC_MSG_RESULT([yes])
2150 else
2151 AC_MSG_RESULT([no])
2152 fi
2153 ;;
2154 *)
2155 AC_MSG_RESULT([no])
2156 ;;
2157 esac
2158fi
2159_LT_DECL([], [old_striplib], [1], [Commands to strip libraries])
2160_LT_DECL([], [striplib], [1])
2161])# _LT_CMD_STRIPLIB
2162
2163
2164# _LT_SYS_DYNAMIC_LINKER([TAG])
2165# -----------------------------
2166# PORTME Fill in your ld.so characteristics
2167m4_defun([_LT_SYS_DYNAMIC_LINKER],
2168[AC_REQUIRE([AC_CANONICAL_HOST])dnl
2169m4_require([_LT_DECL_EGREP])dnl
2170m4_require([_LT_FILEUTILS_DEFAULTS])dnl
2171m4_require([_LT_DECL_OBJDUMP])dnl
2172m4_require([_LT_DECL_SED])dnl
2173m4_require([_LT_CHECK_SHELL_FEATURES])dnl
2174AC_MSG_CHECKING([dynamic linker characteristics])
2175m4_if([$1],
2176 [], [
2177if test "$GCC" = yes; then
2178 case $host_os in
2179 darwin*) lt_awk_arg="/^libraries:/,/LR/" ;;
2180 *) lt_awk_arg="/^libraries:/" ;;
2181 esac
2182 case $host_os in
2183 mingw* | cegcc*) lt_sed_strip_eq="s,=\([[A-Za-z]]:\),\1,g" ;;
2184 *) lt_sed_strip_eq="s,=/,/,g" ;;
2185 esac
2186 lt_search_path_spec=`$CC -print-search-dirs | awk $lt_awk_arg | $SED -e "s/^libraries://" -e $lt_sed_strip_eq`
2187 case $lt_search_path_spec in
2188 *\;*)
2189 # if the path contains ";" then we assume it to be the separator
2190 # otherwise default to the standard path separator (i.e. ":") - it is
2191 # assumed that no part of a normal pathname contains ";" but that should
2192 # okay in the real world where ";" in dirpaths is itself problematic.
2193 lt_search_path_spec=`$ECHO "$lt_search_path_spec" | $SED 's/;/ /g'`
2194 ;;
2195 *)
2196 lt_search_path_spec=`$ECHO "$lt_search_path_spec" | $SED "s/$PATH_SEPARATOR/ /g"`
2197 ;;
2198 esac
2199 # Ok, now we have the path, separated by spaces, we can step through it
2200 # and add multilib dir if necessary.
2201 lt_tmp_lt_search_path_spec=
2202 lt_multi_os_dir=`$CC $CPPFLAGS $CFLAGS $LDFLAGS -print-multi-os-directory 2>/dev/null`
2203 for lt_sys_path in $lt_search_path_spec; do
2204 if test -d "$lt_sys_path/$lt_multi_os_dir"; then
2205 lt_tmp_lt_search_path_spec="$lt_tmp_lt_search_path_spec $lt_sys_path/$lt_multi_os_dir"
2206 else
2207 test -d "$lt_sys_path" && \
2208 lt_tmp_lt_search_path_spec="$lt_tmp_lt_search_path_spec $lt_sys_path"
2209 fi
2210 done
2211 lt_search_path_spec=`$ECHO "$lt_tmp_lt_search_path_spec" | awk '
2212BEGIN {RS=" "; FS="/|\n";} {
2213 lt_foo="";
2214 lt_count=0;
2215 for (lt_i = NF; lt_i > 0; lt_i--) {
2216 if ($lt_i != "" && $lt_i != ".") {
2217 if ($lt_i == "..") {
2218 lt_count++;
2219 } else {
2220 if (lt_count == 0) {
2221 lt_foo="/" $lt_i lt_foo;
2222 } else {
2223 lt_count--;
2224 }
2225 }
2226 }
2227 }
2228 if (lt_foo != "") { lt_freq[[lt_foo]]++; }
2229 if (lt_freq[[lt_foo]] == 1) { print lt_foo; }
2230}'`
2231 # AWK program above erroneously prepends '/' to C:/dos/paths
2232 # for these hosts.
2233 case $host_os in
2234 mingw* | cegcc*) lt_search_path_spec=`$ECHO "$lt_search_path_spec" |\
2235 $SED 's,/\([[A-Za-z]]:\),\1,g'` ;;
2236 esac
2237 sys_lib_search_path_spec=`$ECHO "$lt_search_path_spec" | $lt_NL2SP`
2238else
2239 sys_lib_search_path_spec="/lib /usr/lib /usr/local/lib"
2240fi])
2241library_names_spec=
2242libname_spec='lib$name'
2243soname_spec=
2244shrext_cmds=".so"
2245postinstall_cmds=
2246postuninstall_cmds=
2247finish_cmds=
2248finish_eval=
2249shlibpath_var=
2250shlibpath_overrides_runpath=unknown
2251version_type=none
2252dynamic_linker="$host_os ld.so"
2253sys_lib_dlsearch_path_spec="/lib /usr/lib"
2254need_lib_prefix=unknown
2255hardcode_into_libs=no
2256
2257# when you set need_version to no, make sure it does not cause -set_version
2258# flags to be left without arguments
2259need_version=unknown
2260
2261case $host_os in
2262aix3*)
5670ec6e 2263 version_type=linux # correct to gnu/linux during the next big refactor
dabf4152
AM
2264 library_names_spec='${libname}${release}${shared_ext}$versuffix $libname.a'
2265 shlibpath_var=LIBPATH
2266
2267 # AIX 3 has no versioning support, so we append a major version to the name.
2268 soname_spec='${libname}${release}${shared_ext}$major'
2269 ;;
2270
2271aix[[4-9]]*)
5670ec6e 2272 version_type=linux # correct to gnu/linux during the next big refactor
dabf4152
AM
2273 need_lib_prefix=no
2274 need_version=no
2275 hardcode_into_libs=yes
2276 if test "$host_cpu" = ia64; then
2277 # AIX 5 supports IA64
2278 library_names_spec='${libname}${release}${shared_ext}$major ${libname}${release}${shared_ext}$versuffix $libname${shared_ext}'
2279 shlibpath_var=LD_LIBRARY_PATH
2280 else
2281 # With GCC up to 2.95.x, collect2 would create an import file
2282 # for dependence libraries. The import file would start with
2283 # the line `#! .'. This would cause the generated library to
2284 # depend on `.', always an invalid library. This was fixed in
2285 # development snapshots of GCC prior to 3.0.
2286 case $host_os in
2287 aix4 | aix4.[[01]] | aix4.[[01]].*)
2288 if { echo '#if __GNUC__ > 2 || (__GNUC__ == 2 && __GNUC_MINOR__ >= 97)'
2289 echo ' yes '
2290 echo '#endif'; } | ${CC} -E - | $GREP yes > /dev/null; then
2291 :
2292 else
2293 can_build_shared=no
2294 fi
2295 ;;
2296 esac
2297 # AIX (on Power*) has no versioning support, so currently we can not hardcode correct
2298 # soname into executable. Probably we can add versioning support to
2299 # collect2, so additional links can be useful in future.
2300 if test "$aix_use_runtimelinking" = yes; then
2301 # If using run time linking (on AIX 4.2 or later) use lib<name>.so
2302 # instead of lib<name>.a to let people know that these are not
2303 # typical AIX shared libraries.
2304 library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}'
2305 else
2306 # We preserve .a as extension for shared libraries through AIX4.2
2307 # and later when we are not doing run time linking.
2308 library_names_spec='${libname}${release}.a $libname.a'
2309 soname_spec='${libname}${release}${shared_ext}$major'
2310 fi
2311 shlibpath_var=LIBPATH
2312 fi
2313 ;;
2314
2315amigaos*)
2316 case $host_cpu in
2317 powerpc)
2318 # Since July 2007 AmigaOS4 officially supports .so libraries.
2319 # When compiling the executable, add -use-dynld -Lsobjs: to the compileline.
2320 library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}'
2321 ;;
2322 m68k)
2323 library_names_spec='$libname.ixlibrary $libname.a'
2324 # Create ${libname}_ixlibrary.a entries in /sys/libs.
2325 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'
2326 ;;
2327 esac
2328 ;;
2329
2330beos*)
2331 library_names_spec='${libname}${shared_ext}'
2332 dynamic_linker="$host_os ld.so"
2333 shlibpath_var=LIBRARY_PATH
2334 ;;
2335
2336bsdi[[45]]*)
5670ec6e 2337 version_type=linux # correct to gnu/linux during the next big refactor
dabf4152
AM
2338 need_version=no
2339 library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}'
2340 soname_spec='${libname}${release}${shared_ext}$major'
2341 finish_cmds='PATH="\$PATH:/sbin" ldconfig $libdir'
2342 shlibpath_var=LD_LIBRARY_PATH
2343 sys_lib_search_path_spec="/shlib /usr/lib /usr/X11/lib /usr/contrib/lib /lib /usr/local/lib"
2344 sys_lib_dlsearch_path_spec="/shlib /usr/lib /usr/local/lib"
2345 # the default ld.so.conf also contains /usr/contrib/lib and
2346 # /usr/X11R6/lib (/usr/X11 is a link to /usr/X11R6), but let us allow
2347 # libtool to hard-code these into programs
2348 ;;
2349
2350cygwin* | mingw* | pw32* | cegcc*)
2351 version_type=windows
2352 shrext_cmds=".dll"
2353 need_version=no
2354 need_lib_prefix=no
2355
2356 case $GCC,$cc_basename in
2357 yes,*)
2358 # gcc
2359 library_names_spec='$libname.dll.a'
2360 # DLL is installed to $(libdir)/../bin by postinstall_cmds
2361 postinstall_cmds='base_file=`basename \${file}`~
2362 dlpath=`$SHELL 2>&1 -c '\''. $dir/'\''\${base_file}'\''i; echo \$dlname'\''`~
2363 dldir=$destdir/`dirname \$dlpath`~
2364 test -d \$dldir || mkdir -p \$dldir~
2365 $install_prog $dir/$dlname \$dldir/$dlname~
2366 chmod a+x \$dldir/$dlname~
2367 if test -n '\''$stripme'\'' && test -n '\''$striplib'\''; then
2368 eval '\''$striplib \$dldir/$dlname'\'' || exit \$?;
2369 fi'
2370 postuninstall_cmds='dldll=`$SHELL 2>&1 -c '\''. $file; echo \$dlname'\''`~
2371 dlpath=$dir/\$dldll~
2372 $RM \$dlpath'
2373 shlibpath_overrides_runpath=yes
2374
2375 case $host_os in
2376 cygwin*)
2377 # Cygwin DLLs use 'cyg' prefix rather than 'lib'
2378 soname_spec='`echo ${libname} | sed -e 's/^lib/cyg/'``echo ${release} | $SED -e 's/[[.]]/-/g'`${versuffix}${shared_ext}'
2379m4_if([$1], [],[
2380 sys_lib_search_path_spec="$sys_lib_search_path_spec /usr/lib/w32api"])
2381 ;;
2382 mingw* | cegcc*)
2383 # MinGW DLLs use traditional 'lib' prefix
2384 soname_spec='${libname}`echo ${release} | $SED -e 's/[[.]]/-/g'`${versuffix}${shared_ext}'
2385 ;;
2386 pw32*)
2387 # pw32 DLLs use 'pw' prefix rather than 'lib'
2388 library_names_spec='`echo ${libname} | sed -e 's/^lib/pw/'``echo ${release} | $SED -e 's/[[.]]/-/g'`${versuffix}${shared_ext}'
2389 ;;
2390 esac
2391 dynamic_linker='Win32 ld.exe'
2392 ;;
2393
2394 *,cl*)
2395 # Native MSVC
2396 libname_spec='$name'
2397 soname_spec='${libname}`echo ${release} | $SED -e 's/[[.]]/-/g'`${versuffix}${shared_ext}'
2398 library_names_spec='${libname}.dll.lib'
2399
2400 case $build_os in
2401 mingw*)
2402 sys_lib_search_path_spec=
2403 lt_save_ifs=$IFS
2404 IFS=';'
2405 for lt_path in $LIB
2406 do
2407 IFS=$lt_save_ifs
2408 # Let DOS variable expansion print the short 8.3 style file name.
2409 lt_path=`cd "$lt_path" 2>/dev/null && cmd //C "for %i in (".") do @echo %~si"`
2410 sys_lib_search_path_spec="$sys_lib_search_path_spec $lt_path"
2411 done
2412 IFS=$lt_save_ifs
2413 # Convert to MSYS style.
2414 sys_lib_search_path_spec=`$ECHO "$sys_lib_search_path_spec" | sed -e 's|\\\\|/|g' -e 's| \\([[a-zA-Z]]\\):| /\\1|g' -e 's|^ ||'`
2415 ;;
2416 cygwin*)
2417 # Convert to unix form, then to dos form, then back to unix form
2418 # but this time dos style (no spaces!) so that the unix form looks
2419 # like /cygdrive/c/PROGRA~1:/cygdr...
2420 sys_lib_search_path_spec=`cygpath --path --unix "$LIB"`
2421 sys_lib_search_path_spec=`cygpath --path --dos "$sys_lib_search_path_spec" 2>/dev/null`
2422 sys_lib_search_path_spec=`cygpath --path --unix "$sys_lib_search_path_spec" | $SED -e "s/$PATH_SEPARATOR/ /g"`
2423 ;;
2424 *)
2425 sys_lib_search_path_spec="$LIB"
2426 if $ECHO "$sys_lib_search_path_spec" | [$GREP ';[c-zC-Z]:/' >/dev/null]; then
2427 # It is most probably a Windows format PATH.
2428 sys_lib_search_path_spec=`$ECHO "$sys_lib_search_path_spec" | $SED -e 's/;/ /g'`
2429 else
2430 sys_lib_search_path_spec=`$ECHO "$sys_lib_search_path_spec" | $SED -e "s/$PATH_SEPARATOR/ /g"`
2431 fi
2432 # FIXME: find the short name or the path components, as spaces are
2433 # common. (e.g. "Program Files" -> "PROGRA~1")
2434 ;;
2435 esac
2436
2437 # DLL is installed to $(libdir)/../bin by postinstall_cmds
2438 postinstall_cmds='base_file=`basename \${file}`~
2439 dlpath=`$SHELL 2>&1 -c '\''. $dir/'\''\${base_file}'\''i; echo \$dlname'\''`~
2440 dldir=$destdir/`dirname \$dlpath`~
2441 test -d \$dldir || mkdir -p \$dldir~
2442 $install_prog $dir/$dlname \$dldir/$dlname'
2443 postuninstall_cmds='dldll=`$SHELL 2>&1 -c '\''. $file; echo \$dlname'\''`~
2444 dlpath=$dir/\$dldll~
2445 $RM \$dlpath'
2446 shlibpath_overrides_runpath=yes
2447 dynamic_linker='Win32 link.exe'
2448 ;;
2449
2450 *)
2451 # Assume MSVC wrapper
2452 library_names_spec='${libname}`echo ${release} | $SED -e 's/[[.]]/-/g'`${versuffix}${shared_ext} $libname.lib'
2453 dynamic_linker='Win32 ld.exe'
2454 ;;
2455 esac
2456 # FIXME: first we should search . and the directory the executable is in
2457 shlibpath_var=PATH
2458 ;;
2459
2460darwin* | rhapsody*)
2461 dynamic_linker="$host_os dyld"
2462 version_type=darwin
2463 need_lib_prefix=no
2464 need_version=no
2465 library_names_spec='${libname}${release}${major}$shared_ext ${libname}$shared_ext'
2466 soname_spec='${libname}${release}${major}$shared_ext'
2467 shlibpath_overrides_runpath=yes
2468 shlibpath_var=DYLD_LIBRARY_PATH
2469 shrext_cmds='`test .$module = .yes && echo .so || echo .dylib`'
2470m4_if([$1], [],[
2471 sys_lib_search_path_spec="$sys_lib_search_path_spec /usr/local/lib"])
2472 sys_lib_dlsearch_path_spec='/usr/local/lib /lib /usr/lib'
2473 ;;
2474
2475dgux*)
5670ec6e 2476 version_type=linux # correct to gnu/linux during the next big refactor
dabf4152
AM
2477 need_lib_prefix=no
2478 need_version=no
2479 library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname$shared_ext'
2480 soname_spec='${libname}${release}${shared_ext}$major'
2481 shlibpath_var=LD_LIBRARY_PATH
2482 ;;
2483
dabf4152
AM
2484freebsd* | dragonfly*)
2485 # DragonFly does not have aout. When/if they implement a new
2486 # versioning mechanism, adjust this.
2487 if test -x /usr/bin/objformat; then
2488 objformat=`/usr/bin/objformat`
2489 else
2490 case $host_os in
5670ec6e 2491 freebsd[[23]].*) objformat=aout ;;
dabf4152
AM
2492 *) objformat=elf ;;
2493 esac
2494 fi
2495 version_type=freebsd-$objformat
2496 case $version_type in
2497 freebsd-elf*)
2498 library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext} $libname${shared_ext}'
2499 need_version=no
2500 need_lib_prefix=no
2501 ;;
2502 freebsd-*)
2503 library_names_spec='${libname}${release}${shared_ext}$versuffix $libname${shared_ext}$versuffix'
2504 need_version=yes
2505 ;;
2506 esac
2507 shlibpath_var=LD_LIBRARY_PATH
2508 case $host_os in
5670ec6e 2509 freebsd2.*)
dabf4152
AM
2510 shlibpath_overrides_runpath=yes
2511 ;;
2512 freebsd3.[[01]]* | freebsdelf3.[[01]]*)
2513 shlibpath_overrides_runpath=yes
2514 hardcode_into_libs=yes
2515 ;;
2516 freebsd3.[[2-9]]* | freebsdelf3.[[2-9]]* | \
2517 freebsd4.[[0-5]] | freebsdelf4.[[0-5]] | freebsd4.1.1 | freebsdelf4.1.1)
2518 shlibpath_overrides_runpath=no
2519 hardcode_into_libs=yes
2520 ;;
2521 *) # from 4.6 on, and DragonFly
2522 shlibpath_overrides_runpath=yes
2523 hardcode_into_libs=yes
2524 ;;
2525 esac
2526 ;;
2527
2528gnu*)
5670ec6e 2529 version_type=linux # correct to gnu/linux during the next big refactor
dabf4152
AM
2530 need_lib_prefix=no
2531 need_version=no
2532 library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}${major} ${libname}${shared_ext}'
2533 soname_spec='${libname}${release}${shared_ext}$major'
2534 shlibpath_var=LD_LIBRARY_PATH
2535 shlibpath_overrides_runpath=no
2536 hardcode_into_libs=yes
2537 ;;
2538
2539haiku*)
5670ec6e 2540 version_type=linux # correct to gnu/linux during the next big refactor
dabf4152
AM
2541 need_lib_prefix=no
2542 need_version=no
2543 dynamic_linker="$host_os runtime_loader"
2544 library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}${major} ${libname}${shared_ext}'
2545 soname_spec='${libname}${release}${shared_ext}$major'
2546 shlibpath_var=LIBRARY_PATH
2547 shlibpath_overrides_runpath=yes
2548 sys_lib_dlsearch_path_spec='/boot/home/config/lib /boot/common/lib /boot/system/lib'
2549 hardcode_into_libs=yes
2550 ;;
2551
2552hpux9* | hpux10* | hpux11*)
2553 # Give a soname corresponding to the major version so that dld.sl refuses to
2554 # link against other versions.
2555 version_type=sunos
2556 need_lib_prefix=no
2557 need_version=no
2558 case $host_cpu in
2559 ia64*)
2560 shrext_cmds='.so'
2561 hardcode_into_libs=yes
2562 dynamic_linker="$host_os dld.so"
2563 shlibpath_var=LD_LIBRARY_PATH
2564 shlibpath_overrides_runpath=yes # Unless +noenvvar is specified.
2565 library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}'
2566 soname_spec='${libname}${release}${shared_ext}$major'
2567 if test "X$HPUX_IA64_MODE" = X32; then
2568 sys_lib_search_path_spec="/usr/lib/hpux32 /usr/local/lib/hpux32 /usr/local/lib"
2569 else
2570 sys_lib_search_path_spec="/usr/lib/hpux64 /usr/local/lib/hpux64"
2571 fi
2572 sys_lib_dlsearch_path_spec=$sys_lib_search_path_spec
2573 ;;
2574 hppa*64*)
2575 shrext_cmds='.sl'
2576 hardcode_into_libs=yes
2577 dynamic_linker="$host_os dld.sl"
2578 shlibpath_var=LD_LIBRARY_PATH # How should we handle SHLIB_PATH
2579 shlibpath_overrides_runpath=yes # Unless +noenvvar is specified.
2580 library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}'
2581 soname_spec='${libname}${release}${shared_ext}$major'
2582 sys_lib_search_path_spec="/usr/lib/pa20_64 /usr/ccs/lib/pa20_64"
2583 sys_lib_dlsearch_path_spec=$sys_lib_search_path_spec
2584 ;;
2585 *)
2586 shrext_cmds='.sl'
2587 dynamic_linker="$host_os dld.sl"
2588 shlibpath_var=SHLIB_PATH
2589 shlibpath_overrides_runpath=no # +s is required to enable SHLIB_PATH
2590 library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}'
2591 soname_spec='${libname}${release}${shared_ext}$major'
2592 ;;
2593 esac
2594 # HP-UX runs *really* slowly unless shared libraries are mode 555, ...
2595 postinstall_cmds='chmod 555 $lib'
2596 # or fails outright, so override atomically:
2597 install_override_mode=555
2598 ;;
2599
2600interix[[3-9]]*)
5670ec6e 2601 version_type=linux # correct to gnu/linux during the next big refactor
dabf4152
AM
2602 need_lib_prefix=no
2603 need_version=no
2604 library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major ${libname}${shared_ext}'
2605 soname_spec='${libname}${release}${shared_ext}$major'
2606 dynamic_linker='Interix 3.x ld.so.1 (PE, like ELF)'
2607 shlibpath_var=LD_LIBRARY_PATH
2608 shlibpath_overrides_runpath=no
2609 hardcode_into_libs=yes
2610 ;;
2611
2612irix5* | irix6* | nonstopux*)
2613 case $host_os in
2614 nonstopux*) version_type=nonstopux ;;
2615 *)
2616 if test "$lt_cv_prog_gnu_ld" = yes; then
5670ec6e 2617 version_type=linux # correct to gnu/linux during the next big refactor
dabf4152
AM
2618 else
2619 version_type=irix
2620 fi ;;
2621 esac
2622 need_lib_prefix=no
2623 need_version=no
2624 soname_spec='${libname}${release}${shared_ext}$major'
2625 library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major ${libname}${release}${shared_ext} $libname${shared_ext}'
2626 case $host_os in
2627 irix5* | nonstopux*)
2628 libsuff= shlibsuff=
2629 ;;
2630 *)
2631 case $LD in # libtool.m4 will add one of these switches to LD
2632 *-32|*"-32 "|*-melf32bsmip|*"-melf32bsmip ")
2633 libsuff= shlibsuff= libmagic=32-bit;;
2634 *-n32|*"-n32 "|*-melf32bmipn32|*"-melf32bmipn32 ")
2635 libsuff=32 shlibsuff=N32 libmagic=N32;;
2636 *-64|*"-64 "|*-melf64bmip|*"-melf64bmip ")
2637 libsuff=64 shlibsuff=64 libmagic=64-bit;;
2638 *) libsuff= shlibsuff= libmagic=never-match;;
2639 esac
2640 ;;
2641 esac
2642 shlibpath_var=LD_LIBRARY${shlibsuff}_PATH
2643 shlibpath_overrides_runpath=no
2644 sys_lib_search_path_spec="/usr/lib${libsuff} /lib${libsuff} /usr/local/lib${libsuff}"
2645 sys_lib_dlsearch_path_spec="/usr/lib${libsuff} /lib${libsuff}"
2646 hardcode_into_libs=yes
2647 ;;
2648
2649# No shared lib support for Linux oldld, aout, or coff.
2650linux*oldld* | linux*aout* | linux*coff*)
2651 dynamic_linker=no
2652 ;;
2653
5670ec6e 2654# This must be glibc/ELF.
dabf4152 2655linux* | k*bsd*-gnu | kopensolaris*-gnu)
5670ec6e 2656 version_type=linux # correct to gnu/linux during the next big refactor
dabf4152
AM
2657 need_lib_prefix=no
2658 need_version=no
2659 library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}'
2660 soname_spec='${libname}${release}${shared_ext}$major'
2661 finish_cmds='PATH="\$PATH:/sbin" ldconfig -n $libdir'
2662 shlibpath_var=LD_LIBRARY_PATH
2663 shlibpath_overrides_runpath=no
2664
2665 # Some binutils ld are patched to set DT_RUNPATH
2666 AC_CACHE_VAL([lt_cv_shlibpath_overrides_runpath],
2667 [lt_cv_shlibpath_overrides_runpath=no
2668 save_LDFLAGS=$LDFLAGS
2669 save_libdir=$libdir
2670 eval "libdir=/foo; wl=\"$_LT_TAGVAR(lt_prog_compiler_wl, $1)\"; \
2671 LDFLAGS=\"\$LDFLAGS $_LT_TAGVAR(hardcode_libdir_flag_spec, $1)\""
2672 AC_LINK_IFELSE([AC_LANG_PROGRAM([],[])],
2673 [AS_IF([ ($OBJDUMP -p conftest$ac_exeext) 2>/dev/null | grep "RUNPATH.*$libdir" >/dev/null],
2674 [lt_cv_shlibpath_overrides_runpath=yes])])
2675 LDFLAGS=$save_LDFLAGS
2676 libdir=$save_libdir
2677 ])
2678 shlibpath_overrides_runpath=$lt_cv_shlibpath_overrides_runpath
2679
2680 # This implies no fast_install, which is unacceptable.
2681 # Some rework will be needed to allow for fast_install
2682 # before this can be enabled.
2683 hardcode_into_libs=yes
2684
2685 # Append ld.so.conf contents to the search path
2686 if test -f /etc/ld.so.conf; then
2687 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' ' '`
2688 sys_lib_dlsearch_path_spec="/lib /usr/lib $lt_ld_extra"
2689 fi
2690
2691 # We used to test for /lib/ld.so.1 and disable shared libraries on
2692 # powerpc, because MkLinux only supported shared libraries with the
2693 # GNU dynamic linker. Since this was broken with cross compilers,
2694 # most powerpc-linux boxes support dynamic linking these days and
2695 # people can always --disable-shared, the test was removed, and we
2696 # assume the GNU/Linux dynamic linker is in use.
2697 dynamic_linker='GNU/Linux ld.so'
2698 ;;
2699
2700netbsdelf*-gnu)
2701 version_type=linux
2702 need_lib_prefix=no
2703 need_version=no
2704 library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major ${libname}${shared_ext}'
2705 soname_spec='${libname}${release}${shared_ext}$major'
2706 shlibpath_var=LD_LIBRARY_PATH
2707 shlibpath_overrides_runpath=no
2708 hardcode_into_libs=yes
2709 dynamic_linker='NetBSD ld.elf_so'
2710 ;;
2711
2712netbsd*)
2713 version_type=sunos
2714 need_lib_prefix=no
2715 need_version=no
2716 if echo __ELF__ | $CC -E - | $GREP __ELF__ >/dev/null; then
2717 library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${shared_ext}$versuffix'
2718 finish_cmds='PATH="\$PATH:/sbin" ldconfig -m $libdir'
2719 dynamic_linker='NetBSD (a.out) ld.so'
2720 else
2721 library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major ${libname}${shared_ext}'
2722 soname_spec='${libname}${release}${shared_ext}$major'
2723 dynamic_linker='NetBSD ld.elf_so'
2724 fi
2725 shlibpath_var=LD_LIBRARY_PATH
2726 shlibpath_overrides_runpath=yes
2727 hardcode_into_libs=yes
2728 ;;
2729
2730newsos6)
5670ec6e 2731 version_type=linux # correct to gnu/linux during the next big refactor
dabf4152
AM
2732 library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}'
2733 shlibpath_var=LD_LIBRARY_PATH
2734 shlibpath_overrides_runpath=yes
2735 ;;
2736
2737*nto* | *qnx*)
2738 version_type=qnx
2739 need_lib_prefix=no
2740 need_version=no
2741 library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}'
2742 soname_spec='${libname}${release}${shared_ext}$major'
2743 shlibpath_var=LD_LIBRARY_PATH
2744 shlibpath_overrides_runpath=no
2745 hardcode_into_libs=yes
2746 dynamic_linker='ldqnx.so'
2747 ;;
2748
2749openbsd*)
2750 version_type=sunos
2751 sys_lib_dlsearch_path_spec="/usr/lib"
2752 need_lib_prefix=no
2753 # Some older versions of OpenBSD (3.3 at least) *do* need versioned libs.
2754 case $host_os in
2755 openbsd3.3 | openbsd3.3.*) need_version=yes ;;
2756 *) need_version=no ;;
2757 esac
2758 library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${shared_ext}$versuffix'
2759 finish_cmds='PATH="\$PATH:/sbin" ldconfig -m $libdir'
2760 shlibpath_var=LD_LIBRARY_PATH
2761 if test -z "`echo __ELF__ | $CC -E - | $GREP __ELF__`" || test "$host_os-$host_cpu" = "openbsd2.8-powerpc"; then
2762 case $host_os in
2763 openbsd2.[[89]] | openbsd2.[[89]].*)
2764 shlibpath_overrides_runpath=no
2765 ;;
2766 *)
2767 shlibpath_overrides_runpath=yes
2768 ;;
2769 esac
2770 else
2771 shlibpath_overrides_runpath=yes
2772 fi
2773 ;;
2774
2775os2*)
2776 libname_spec='$name'
2777 shrext_cmds=".dll"
2778 need_lib_prefix=no
2779 library_names_spec='$libname${shared_ext} $libname.a'
2780 dynamic_linker='OS/2 ld.exe'
2781 shlibpath_var=LIBPATH
2782 ;;
2783
2784osf3* | osf4* | osf5*)
2785 version_type=osf
2786 need_lib_prefix=no
2787 need_version=no
2788 soname_spec='${libname}${release}${shared_ext}$major'
2789 library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}'
2790 shlibpath_var=LD_LIBRARY_PATH
2791 sys_lib_search_path_spec="/usr/shlib /usr/ccs/lib /usr/lib/cmplrs/cc /usr/lib /usr/local/lib /var/shlib"
2792 sys_lib_dlsearch_path_spec="$sys_lib_search_path_spec"
2793 ;;
2794
2795rdos*)
2796 dynamic_linker=no
2797 ;;
2798
2799solaris*)
5670ec6e 2800 version_type=linux # correct to gnu/linux during the next big refactor
dabf4152
AM
2801 need_lib_prefix=no
2802 need_version=no
2803 library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}'
2804 soname_spec='${libname}${release}${shared_ext}$major'
2805 shlibpath_var=LD_LIBRARY_PATH
2806 shlibpath_overrides_runpath=yes
2807 hardcode_into_libs=yes
2808 # ldd complains unless libraries are executable
2809 postinstall_cmds='chmod +x $lib'
2810 ;;
2811
2812sunos4*)
2813 version_type=sunos
2814 library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${shared_ext}$versuffix'
2815 finish_cmds='PATH="\$PATH:/usr/etc" ldconfig $libdir'
2816 shlibpath_var=LD_LIBRARY_PATH
2817 shlibpath_overrides_runpath=yes
2818 if test "$with_gnu_ld" = yes; then
2819 need_lib_prefix=no
2820 fi
2821 need_version=yes
2822 ;;
2823
2824sysv4 | sysv4.3*)
5670ec6e 2825 version_type=linux # correct to gnu/linux during the next big refactor
dabf4152
AM
2826 library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}'
2827 soname_spec='${libname}${release}${shared_ext}$major'
2828 shlibpath_var=LD_LIBRARY_PATH
2829 case $host_vendor in
2830 sni)
2831 shlibpath_overrides_runpath=no
2832 need_lib_prefix=no
2833 runpath_var=LD_RUN_PATH
2834 ;;
2835 siemens)
2836 need_lib_prefix=no
2837 ;;
2838 motorola)
2839 need_lib_prefix=no
2840 need_version=no
2841 shlibpath_overrides_runpath=no
2842 sys_lib_search_path_spec='/lib /usr/lib /usr/ccs/lib'
2843 ;;
2844 esac
2845 ;;
2846
2847sysv4*MP*)
2848 if test -d /usr/nec ;then
5670ec6e 2849 version_type=linux # correct to gnu/linux during the next big refactor
dabf4152
AM
2850 library_names_spec='$libname${shared_ext}.$versuffix $libname${shared_ext}.$major $libname${shared_ext}'
2851 soname_spec='$libname${shared_ext}.$major'
2852 shlibpath_var=LD_LIBRARY_PATH
2853 fi
2854 ;;
2855
2856sysv5* | sco3.2v5* | sco5v6* | unixware* | OpenUNIX* | sysv4*uw2*)
2857 version_type=freebsd-elf
2858 need_lib_prefix=no
2859 need_version=no
2860 library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext} $libname${shared_ext}'
2861 soname_spec='${libname}${release}${shared_ext}$major'
2862 shlibpath_var=LD_LIBRARY_PATH
2863 shlibpath_overrides_runpath=yes
2864 hardcode_into_libs=yes
2865 if test "$with_gnu_ld" = yes; then
2866 sys_lib_search_path_spec='/usr/local/lib /usr/gnu/lib /usr/ccs/lib /usr/lib /lib'
2867 else
2868 sys_lib_search_path_spec='/usr/ccs/lib /usr/lib'
2869 case $host_os in
2870 sco3.2v5*)
2871 sys_lib_search_path_spec="$sys_lib_search_path_spec /lib"
2872 ;;
2873 esac
2874 fi
2875 sys_lib_dlsearch_path_spec='/usr/lib'
2876 ;;
2877
2878tpf*)
2879 # TPF is a cross-target only. Preferred cross-host = GNU/Linux.
5670ec6e 2880 version_type=linux # correct to gnu/linux during the next big refactor
dabf4152
AM
2881 need_lib_prefix=no
2882 need_version=no
2883 library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}'
2884 shlibpath_var=LD_LIBRARY_PATH
2885 shlibpath_overrides_runpath=no
2886 hardcode_into_libs=yes
2887 ;;
2888
2889uts4*)
5670ec6e 2890 version_type=linux # correct to gnu/linux during the next big refactor
dabf4152
AM
2891 library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}'
2892 soname_spec='${libname}${release}${shared_ext}$major'
2893 shlibpath_var=LD_LIBRARY_PATH
2894 ;;
2895
2896*)
2897 dynamic_linker=no
2898 ;;
2899esac
2900AC_MSG_RESULT([$dynamic_linker])
2901test "$dynamic_linker" = no && can_build_shared=no
2902
2903variables_saved_for_relink="PATH $shlibpath_var $runpath_var"
2904if test "$GCC" = yes; then
2905 variables_saved_for_relink="$variables_saved_for_relink GCC_EXEC_PREFIX COMPILER_PATH LIBRARY_PATH"
2906fi
2907
2908if test "${lt_cv_sys_lib_search_path_spec+set}" = set; then
2909 sys_lib_search_path_spec="$lt_cv_sys_lib_search_path_spec"
2910fi
2911if test "${lt_cv_sys_lib_dlsearch_path_spec+set}" = set; then
2912 sys_lib_dlsearch_path_spec="$lt_cv_sys_lib_dlsearch_path_spec"
2913fi
2914
2915_LT_DECL([], [variables_saved_for_relink], [1],
2916 [Variables whose values should be saved in libtool wrapper scripts and
2917 restored at link time])
2918_LT_DECL([], [need_lib_prefix], [0],
2919 [Do we need the "lib" prefix for modules?])
2920_LT_DECL([], [need_version], [0], [Do we need a version for libraries?])
2921_LT_DECL([], [version_type], [0], [Library versioning type])
2922_LT_DECL([], [runpath_var], [0], [Shared library runtime path variable])
2923_LT_DECL([], [shlibpath_var], [0],[Shared library path variable])
2924_LT_DECL([], [shlibpath_overrides_runpath], [0],
2925 [Is shlibpath searched before the hard-coded library search path?])
2926_LT_DECL([], [libname_spec], [1], [Format of library name prefix])
2927_LT_DECL([], [library_names_spec], [1],
2928 [[List of archive names. First name is the real one, the rest are links.
2929 The last name is the one that the linker finds with -lNAME]])
2930_LT_DECL([], [soname_spec], [1],
2931 [[The coded name of the library, if different from the real name]])
2932_LT_DECL([], [install_override_mode], [1],
2933 [Permission mode override for installation of shared libraries])
2934_LT_DECL([], [postinstall_cmds], [2],
2935 [Command to use after installation of a shared archive])
2936_LT_DECL([], [postuninstall_cmds], [2],
2937 [Command to use after uninstallation of a shared archive])
2938_LT_DECL([], [finish_cmds], [2],
2939 [Commands used to finish a libtool library installation in a directory])
2940_LT_DECL([], [finish_eval], [1],
2941 [[As "finish_cmds", except a single script fragment to be evaled but
2942 not shown]])
2943_LT_DECL([], [hardcode_into_libs], [0],
2944 [Whether we should hardcode library paths into libraries])
2945_LT_DECL([], [sys_lib_search_path_spec], [2],
2946 [Compile-time system search path for libraries])
2947_LT_DECL([], [sys_lib_dlsearch_path_spec], [2],
2948 [Run-time system search path for libraries])
2949])# _LT_SYS_DYNAMIC_LINKER
2950
2951
2952# _LT_PATH_TOOL_PREFIX(TOOL)
2953# --------------------------
2954# find a file program which can recognize shared library
2955AC_DEFUN([_LT_PATH_TOOL_PREFIX],
2956[m4_require([_LT_DECL_EGREP])dnl
2957AC_MSG_CHECKING([for $1])
2958AC_CACHE_VAL(lt_cv_path_MAGIC_CMD,
2959[case $MAGIC_CMD in
2960[[\\/*] | ?:[\\/]*])
2961 lt_cv_path_MAGIC_CMD="$MAGIC_CMD" # Let the user override the test with a path.
2962 ;;
2963*)
2964 lt_save_MAGIC_CMD="$MAGIC_CMD"
2965 lt_save_ifs="$IFS"; IFS=$PATH_SEPARATOR
2966dnl $ac_dummy forces splitting on constant user-supplied paths.
2967dnl POSIX.2 word splitting is done only on the output of word expansions,
2968dnl not every word. This closes a longstanding sh security hole.
2969 ac_dummy="m4_if([$2], , $PATH, [$2])"
2970 for ac_dir in $ac_dummy; do
2971 IFS="$lt_save_ifs"
2972 test -z "$ac_dir" && ac_dir=.
2973 if test -f $ac_dir/$1; then
2974 lt_cv_path_MAGIC_CMD="$ac_dir/$1"
2975 if test -n "$file_magic_test_file"; then
2976 case $deplibs_check_method in
2977 "file_magic "*)
2978 file_magic_regex=`expr "$deplibs_check_method" : "file_magic \(.*\)"`
2979 MAGIC_CMD="$lt_cv_path_MAGIC_CMD"
2980 if eval $file_magic_cmd \$file_magic_test_file 2> /dev/null |
2981 $EGREP "$file_magic_regex" > /dev/null; then
2982 :
2983 else
2984 cat <<_LT_EOF 1>&2
2985
2986*** Warning: the command libtool uses to detect shared libraries,
2987*** $file_magic_cmd, produces output that libtool cannot recognize.
2988*** The result is that libtool may fail to recognize shared libraries
2989*** as such. This will affect the creation of libtool libraries that
2990*** depend on shared libraries, but programs linked with such libtool
2991*** libraries will work regardless of this problem. Nevertheless, you
2992*** may want to report the problem to your system manager and/or to
2993*** bug-libtool@gnu.org
2994
2995_LT_EOF
2996 fi ;;
2997 esac
2998 fi
2999 break
3000 fi
3001 done
3002 IFS="$lt_save_ifs"
3003 MAGIC_CMD="$lt_save_MAGIC_CMD"
3004 ;;
3005esac])
3006MAGIC_CMD="$lt_cv_path_MAGIC_CMD"
3007if test -n "$MAGIC_CMD"; then
3008 AC_MSG_RESULT($MAGIC_CMD)
3009else
3010 AC_MSG_RESULT(no)
3011fi
3012_LT_DECL([], [MAGIC_CMD], [0],
3013 [Used to examine libraries when file_magic_cmd begins with "file"])dnl
3014])# _LT_PATH_TOOL_PREFIX
3015
3016# Old name:
3017AU_ALIAS([AC_PATH_TOOL_PREFIX], [_LT_PATH_TOOL_PREFIX])
3018dnl aclocal-1.4 backwards compatibility:
3019dnl AC_DEFUN([AC_PATH_TOOL_PREFIX], [])
3020
3021
3022# _LT_PATH_MAGIC
3023# --------------
3024# find a file program which can recognize a shared library
3025m4_defun([_LT_PATH_MAGIC],
3026[_LT_PATH_TOOL_PREFIX(${ac_tool_prefix}file, /usr/bin$PATH_SEPARATOR$PATH)
3027if test -z "$lt_cv_path_MAGIC_CMD"; then
3028 if test -n "$ac_tool_prefix"; then
3029 _LT_PATH_TOOL_PREFIX(file, /usr/bin$PATH_SEPARATOR$PATH)
3030 else
3031 MAGIC_CMD=:
3032 fi
3033fi
3034])# _LT_PATH_MAGIC
3035
3036
3037# LT_PATH_LD
3038# ----------
3039# find the pathname to the GNU or non-GNU linker
3040AC_DEFUN([LT_PATH_LD],
3041[AC_REQUIRE([AC_PROG_CC])dnl
3042AC_REQUIRE([AC_CANONICAL_HOST])dnl
3043AC_REQUIRE([AC_CANONICAL_BUILD])dnl
3044m4_require([_LT_DECL_SED])dnl
3045m4_require([_LT_DECL_EGREP])dnl
3046m4_require([_LT_PROG_ECHO_BACKSLASH])dnl
3047
3048AC_ARG_WITH([gnu-ld],
3049 [AS_HELP_STRING([--with-gnu-ld],
3050 [assume the C compiler uses GNU ld @<:@default=no@:>@])],
3051 [test "$withval" = no || with_gnu_ld=yes],
3052 [with_gnu_ld=no])dnl
3053
3054ac_prog=ld
3055if test "$GCC" = yes; then
3056 # Check if gcc -print-prog-name=ld gives a path.
3057 AC_MSG_CHECKING([for ld used by $CC])
3058 case $host in
3059 *-*-mingw*)
3060 # gcc leaves a trailing carriage return which upsets mingw
3061 ac_prog=`($CC -print-prog-name=ld) 2>&5 | tr -d '\015'` ;;
3062 *)
3063 ac_prog=`($CC -print-prog-name=ld) 2>&5` ;;
3064 esac
3065 case $ac_prog in
3066 # Accept absolute paths.
3067 [[\\/]]* | ?:[[\\/]]*)
3068 re_direlt='/[[^/]][[^/]]*/\.\./'
3069 # Canonicalize the pathname of ld
3070 ac_prog=`$ECHO "$ac_prog"| $SED 's%\\\\%/%g'`
3071 while $ECHO "$ac_prog" | $GREP "$re_direlt" > /dev/null 2>&1; do
3072 ac_prog=`$ECHO $ac_prog| $SED "s%$re_direlt%/%"`
3073 done
3074 test -z "$LD" && LD="$ac_prog"
3075 ;;
3076 "")
3077 # If it fails, then pretend we aren't using GCC.
3078 ac_prog=ld
3079 ;;
3080 *)
3081 # If it is relative, then search for the first ld in PATH.
3082 with_gnu_ld=unknown
3083 ;;
3084 esac
3085elif test "$with_gnu_ld" = yes; then
3086 AC_MSG_CHECKING([for GNU ld])
3087else
3088 AC_MSG_CHECKING([for non-GNU ld])
3089fi
3090AC_CACHE_VAL(lt_cv_path_LD,
3091[if test -z "$LD"; then
3092 lt_save_ifs="$IFS"; IFS=$PATH_SEPARATOR
3093 for ac_dir in $PATH; do
3094 IFS="$lt_save_ifs"
3095 test -z "$ac_dir" && ac_dir=.
3096 if test -f "$ac_dir/$ac_prog" || test -f "$ac_dir/$ac_prog$ac_exeext"; then
3097 lt_cv_path_LD="$ac_dir/$ac_prog"
3098 # Check to see if the program is GNU ld. I'd rather use --version,
3099 # but apparently some variants of GNU ld only accept -v.
3100 # Break only if it was the GNU/non-GNU ld that we prefer.
3101 case `"$lt_cv_path_LD" -v 2>&1 </dev/null` in
3102 *GNU* | *'with BFD'*)
3103 test "$with_gnu_ld" != no && break
3104 ;;
3105 *)
3106 test "$with_gnu_ld" != yes && break
3107 ;;
3108 esac
3109 fi
3110 done
3111 IFS="$lt_save_ifs"
3112else
3113 lt_cv_path_LD="$LD" # Let the user override the test with a path.
3114fi])
3115LD="$lt_cv_path_LD"
3116if test -n "$LD"; then
3117 AC_MSG_RESULT($LD)
3118else
3119 AC_MSG_RESULT(no)
3120fi
3121test -z "$LD" && AC_MSG_ERROR([no acceptable ld found in \$PATH])
3122_LT_PATH_LD_GNU
3123AC_SUBST([LD])
3124
3125_LT_TAGDECL([], [LD], [1], [The linker used to build libraries])
3126])# LT_PATH_LD
3127
3128# Old names:
3129AU_ALIAS([AM_PROG_LD], [LT_PATH_LD])
3130AU_ALIAS([AC_PROG_LD], [LT_PATH_LD])
3131dnl aclocal-1.4 backwards compatibility:
3132dnl AC_DEFUN([AM_PROG_LD], [])
3133dnl AC_DEFUN([AC_PROG_LD], [])
3134
3135
3136# _LT_PATH_LD_GNU
3137#- --------------
3138m4_defun([_LT_PATH_LD_GNU],
3139[AC_CACHE_CHECK([if the linker ($LD) is GNU ld], lt_cv_prog_gnu_ld,
3140[# I'd rather use --version here, but apparently some GNU lds only accept -v.
3141case `$LD -v 2>&1 </dev/null` in
3142*GNU* | *'with BFD'*)
3143 lt_cv_prog_gnu_ld=yes
3144 ;;
3145*)
3146 lt_cv_prog_gnu_ld=no
3147 ;;
3148esac])
3149with_gnu_ld=$lt_cv_prog_gnu_ld
3150])# _LT_PATH_LD_GNU
3151
3152
3153# _LT_CMD_RELOAD
3154# --------------
3155# find reload flag for linker
3156# -- PORTME Some linkers may need a different reload flag.
3157m4_defun([_LT_CMD_RELOAD],
3158[AC_CACHE_CHECK([for $LD option to reload object files],
3159 lt_cv_ld_reload_flag,
3160 [lt_cv_ld_reload_flag='-r'])
3161reload_flag=$lt_cv_ld_reload_flag
3162case $reload_flag in
3163"" | " "*) ;;
3164*) reload_flag=" $reload_flag" ;;
3165esac
3166reload_cmds='$LD$reload_flag -o $output$reload_objs'
3167case $host_os in
3168 cygwin* | mingw* | pw32* | cegcc*)
3169 if test "$GCC" != yes; then
3170 reload_cmds=false
3171 fi
3172 ;;
3173 darwin*)
3174 if test "$GCC" = yes; then
3175 reload_cmds='$LTCC $LTCFLAGS -nostdlib ${wl}-r -o $output$reload_objs'
3176 else
3177 reload_cmds='$LD$reload_flag -o $output$reload_objs'
3178 fi
3179 ;;
3180esac
3181_LT_TAGDECL([], [reload_flag], [1], [How to create reloadable object files])dnl
3182_LT_TAGDECL([], [reload_cmds], [2])dnl
3183])# _LT_CMD_RELOAD
3184
3185
3186# _LT_CHECK_MAGIC_METHOD
3187# ----------------------
3188# how to check for library dependencies
3189# -- PORTME fill in with the dynamic library characteristics
3190m4_defun([_LT_CHECK_MAGIC_METHOD],
3191[m4_require([_LT_DECL_EGREP])
3192m4_require([_LT_DECL_OBJDUMP])
3193AC_CACHE_CHECK([how to recognize dependent libraries],
3194lt_cv_deplibs_check_method,
3195[lt_cv_file_magic_cmd='$MAGIC_CMD'
3196lt_cv_file_magic_test_file=
3197lt_cv_deplibs_check_method='unknown'
3198# Need to set the preceding variable on all platforms that support
3199# interlibrary dependencies.
3200# 'none' -- dependencies not supported.
3201# `unknown' -- same as none, but documents that we really don't know.
3202# 'pass_all' -- all dependencies passed with no checks.
3203# 'test_compile' -- check by making test program.
3204# 'file_magic [[regex]]' -- check by looking for files in library path
3205# which responds to the $file_magic_cmd with a given extended regex.
3206# If you have `file' or equivalent on your system and you're not sure
3207# whether `pass_all' will *always* work, you probably want this one.
3208
3209case $host_os in
3210aix[[4-9]]*)
3211 lt_cv_deplibs_check_method=pass_all
3212 ;;
3213
3214beos*)
3215 lt_cv_deplibs_check_method=pass_all
3216 ;;
3217
3218bsdi[[45]]*)
3219 lt_cv_deplibs_check_method='file_magic ELF [[0-9]][[0-9]]*-bit [[ML]]SB (shared object|dynamic lib)'
3220 lt_cv_file_magic_cmd='/usr/bin/file -L'
3221 lt_cv_file_magic_test_file=/shlib/libc.so
3222 ;;
3223
3224cygwin*)
3225 # func_win32_libid is a shell function defined in ltmain.sh
3226 lt_cv_deplibs_check_method='file_magic ^x86 archive import|^x86 DLL'
3227 lt_cv_file_magic_cmd='func_win32_libid'
3228 ;;
3229
3230mingw* | pw32*)
3231 # Base MSYS/MinGW do not provide the 'file' command needed by
3232 # func_win32_libid shell function, so use a weaker test based on 'objdump',
3233 # unless we find 'file', for example because we are cross-compiling.
3234 # func_win32_libid assumes BSD nm, so disallow it if using MS dumpbin.
3235 if ( test "$lt_cv_nm_interface" = "BSD nm" && file / ) >/dev/null 2>&1; then
3236 lt_cv_deplibs_check_method='file_magic ^x86 archive import|^x86 DLL'
3237 lt_cv_file_magic_cmd='func_win32_libid'
3238 else
3239 # Keep this pattern in sync with the one in func_win32_libid.
3240 lt_cv_deplibs_check_method='file_magic file format (pei*-i386(.*architecture: i386)?|pe-arm-wince|pe-x86-64)'
3241 lt_cv_file_magic_cmd='$OBJDUMP -f'
3242 fi
3243 ;;
3244
3245cegcc*)
3246 # use the weaker test based on 'objdump'. See mingw*.
3247 lt_cv_deplibs_check_method='file_magic file format pe-arm-.*little(.*architecture: arm)?'
3248 lt_cv_file_magic_cmd='$OBJDUMP -f'
3249 ;;
3250
3251darwin* | rhapsody*)
3252 lt_cv_deplibs_check_method=pass_all
3253 ;;
3254
3255freebsd* | dragonfly*)
3256 if echo __ELF__ | $CC -E - | $GREP __ELF__ > /dev/null; then
3257 case $host_cpu in
3258 i*86 )
3259 # Not sure whether the presence of OpenBSD here was a mistake.
3260 # Let's accept both of them until this is cleared up.
3261 lt_cv_deplibs_check_method='file_magic (FreeBSD|OpenBSD|DragonFly)/i[[3-9]]86 (compact )?demand paged shared library'
3262 lt_cv_file_magic_cmd=/usr/bin/file
3263 lt_cv_file_magic_test_file=`echo /usr/lib/libc.so.*`
3264 ;;
3265 esac
3266 else
3267 lt_cv_deplibs_check_method=pass_all
3268 fi
3269 ;;
3270
3271gnu*)
3272 lt_cv_deplibs_check_method=pass_all
3273 ;;
3274
3275haiku*)
3276 lt_cv_deplibs_check_method=pass_all
3277 ;;
3278
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*)
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]']
3288 lt_cv_file_magic_test_file=/usr/lib/pa20_64/libc.sl
3289 ;;
3290 *)
3291 lt_cv_deplibs_check_method='file_magic (s[[0-9]][[0-9]][[0-9]]|PA-RISC[[0-9]]\.[[0-9]]) shared library'
3292 lt_cv_file_magic_test_file=/usr/lib/libc.sl
3293 ;;
3294 esac
3295 ;;
3296
3297interix[[3-9]]*)
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
5670ec6e 3312# This must be glibc/ELF.
dabf4152
AM
3313linux* | k*bsd*-gnu | kopensolaris*-gnu)
3314 lt_cv_deplibs_check_method=pass_all
3315 ;;
3316
3317netbsd* | netbsdelf*-gnu)
3318 if echo __ELF__ | $CC -E - | $GREP __ELF__ > /dev/null; then
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
3331*nto* | *qnx*)
3332 lt_cv_deplibs_check_method=pass_all
3333 ;;
3334
3335openbsd*)
3336 if test -z "`echo __ELF__ | $CC -E - | $GREP __ELF__`" || test "$host_os-$host_cpu" = "openbsd2.8-powerpc"; then
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
3347rdos*)
3348 lt_cv_deplibs_check_method=pass_all
3349 ;;
3350
3351solaris*)
3352 lt_cv_deplibs_check_method=pass_all
3353 ;;
3354
3355sysv5* | sco3.2v5* | sco5v6* | unixware* | OpenUNIX* | sysv4*uw2*)
3356 lt_cv_deplibs_check_method=pass_all
3357 ;;
3358
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
3386tpf*)
3387 lt_cv_deplibs_check_method=pass_all
3388 ;;
3389esac
3390])
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
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
3409
3410_LT_DECL([], [deplibs_check_method], [1],
3411 [Method to check whether dependent libraries are shared objects])
3412_LT_DECL([], [file_magic_cmd], [1],
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"])
3418])# _LT_CHECK_MAGIC_METHOD
3419
3420
3421# LT_PATH_NM
3422# ----------
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,
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"
3432 if test -n "$ac_tool_prefix" && test "$build" = "$host"; then
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
3468 : ${lt_cv_path_NM=no}
3469fi])
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.
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
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
3499 (eval echo "\"\$as_me:$LINENO: $ac_compile\"" >&AS_MESSAGE_LOG_FD)
3500 (eval "$ac_compile" 2>conftest.err)
3501 cat conftest.err >&AS_MESSAGE_LOG_FD
3502 (eval echo "\"\$as_me:$LINENO: $NM \\\"conftest.$ac_objext\\\"\"" >&AS_MESSAGE_LOG_FD)
3503 (eval "$NM \"conftest.$ac_objext\"" 2>conftest.err > conftest.out)
3504 cat conftest.err >&AS_MESSAGE_LOG_FD
3505 (eval echo "\"\$as_me:$LINENO: output\"" >&AS_MESSAGE_LOG_FD)
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
3512
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], [])
3519
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
3581
3582# LT_LIB_M
3583# --------
3584# check for math library
3585AC_DEFUN([LT_LIB_M],
3586[AC_REQUIRE([AC_CANONICAL_HOST])dnl
3587LIBM=
3588case $host in
3589*-*-beos* | *-*-cegcc* | *-*-cygwin* | *-*-haiku* | *-*-pw32* | *-*-darwin*)
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
3600AC_SUBST([LIBM])
3601])# LT_LIB_M
3602
3603# Old name:
3604AU_ALIAS([AC_CHECK_LIBM], [LT_LIB_M])
3605dnl aclocal-1.4 backwards compatibility:
3606dnl AC_DEFUN([AC_CHECK_LIBM], [])
3607
3608
3609# _LT_COMPILER_NO_RTTI([TAGNAME])
3610# -------------------------------
3611m4_defun([_LT_COMPILER_NO_RTTI],
3612[m4_require([_LT_TAG_COMPILER])dnl
3613
3614_LT_TAGVAR(lt_prog_compiler_no_builtin_flag, $1)=
3615
3616if test "$GCC" = yes; then
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
3623
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"])
3628fi
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
3632
3633
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
3639AC_REQUIRE([AC_PROG_AWK])dnl
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
3645
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?!! ;)]
3652
3653# Character class describing NM global symbol codes.
3654symcode='[[BCDEGRST]]'
3655
3656# Regexp to match symbols that can be accessed directly from C.
3657sympat='\([[_A-Za-z]][[_A-Za-z0-9]]*\)'
3658
3659# Define system-specific variables.
3660case $host_os in
3661aix*)
3662 symcode='[[BCDT]]'
3663 ;;
3664cygwin* | mingw* | pw32* | cegcc*)
3665 symcode='[[ABCDGISTW]]'
3666 ;;
3667hpux*)
3668 if test "$host_cpu" = ia64; then
3669 symcode='[[ABCDEGRST]]'
3670 fi
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 ;;
3693esac
3694
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
3700
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'"
3705
3706# Transform an extracted symbol line into symbol name and symbol address
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'"
3709
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
3717
3718# Try without a prefix underscore, then with it.
3719for ac_symprfx in "" "_"; do
3720
3721 # Transform symcode, sympat, and symprfx into a raw symbol and a C symbol.
3722 symxfrm="\\1 $ac_symprfx\\2 \\2"
3723
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};"\
5670ec6e 3732" /^COFF SYMBOL TABLE/{for(i in hide) delete hide[i]};"\
dabf4152
AM
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]"
3742 else
3743 lt_cv_sys_global_symbol_pipe="sed -n -e 's/^.*[[ ]]\($symcode$symcode*\)[[ ]][[ ]]*$ac_symprfx$sympat$opt_cr$/$symxfrm/p'"
3744 fi
3745 lt_cv_sys_global_symbol_pipe="$lt_cv_sys_global_symbol_pipe | sed '/ __gnu_lto/d'"
3746
3747 # Check to see that the pipe works correctly.
3748 pipe_works=no
3749
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
3763
3764 if AC_TRY_EVAL(ac_compile); then
3765 # Now try to grab the symbols.
3766 nlist=conftest.nm
3767 if AC_TRY_EVAL(NM conftest.$ac_objext \| "$lt_cv_sys_global_symbol_pipe" \> $nlist) && test -s "$nlist"; then
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
3774
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
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
3791#ifdef __cplusplus
3792extern "C" {
3793#endif
3794
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'
3798
3799 cat <<_LT_EOF >> conftest.$ac_ext
3800
3801/* The mapping between symbol names and symbols. */
3802LT@&t@_DLSYM_CONST struct {
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
3828 lt_globsym_save_LIBS=$LIBS
3829 lt_globsym_save_CFLAGS=$CFLAGS
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
3835 LIBS=$lt_globsym_save_LIBS
3836 CFLAGS=$lt_globsym_save_CFLAGS
3837 else
3838 echo "cannot find nm_test_func in $nlist" >&AS_MESSAGE_LOG_FD
3839 fi
3840 else
3841 echo "cannot find nm_test_var in $nlist" >&AS_MESSAGE_LOG_FD
3842 fi
3843 else
3844 echo "cannot run $lt_cv_sys_global_symbol_pipe" >&AS_MESSAGE_LOG_FD
3845 fi
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*
3851
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
3868
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
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])
3886_LT_DECL([], [nm_file_list_spec], [1],
3887 [Specify filename containing input files for $NM])
3888]) # _LT_CMD_GLOBAL_SYMBOLS
3889
3890
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)=
3898
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'
3911 fi
3912 ;;
3913
3914 amigaos*)
3915 case $host_cpu in
3916 powerpc)
3917 # see comment about AmigaOS4 .so support
3918 _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fPIC'
3919 ;;
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'
3925 ;;
3926 esac
3927 ;;
3928
3929 beos* | irix5* | irix6* | nonstopux* | osf3* | osf4* | osf5*)
3930 # PIC is the default for these OSes.
3931 ;;
3932 mingw* | cygwin* | os2* | pw32* | cegcc*)
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 ;;
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 ;;
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*)
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.
3967 case $host_cpu in
3968 hppa*64*)
3969 ;;
3970 *)
3971 _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fPIC'
3972 ;;
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 ;;
3983 esac
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'
3991 else
3992 _LT_TAGVAR(lt_prog_compiler_static, $1)='-bnso -bI:/lib/syscalls.exp'
3993 fi
3994 ;;
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
4002 ;;
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 ;;
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
4021 ;;
4022 freebsd* | dragonfly*)
4023 # FreeBSD uses GNU C++
4024 ;;
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 ;;
4046 *)
4047 ;;
4048 esac
4049 ;;
4050 interix*)
4051 # This is c89, which is MS Visual C++ (no shared libs)
4052 # Anyone wants to do a port?
4053 ;;
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
4064 ;;
4065 linux* | k*bsd*-gnu | kopensolaris*-gnu)
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 ;;
4072 ecpc* )
4073 # old Intel C++ for x86_64 which still supported -KPIC.
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 ;;
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 ;;
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 ;;
4098 xlc* | xlC* | bgxl[[cC]]* | mpixl[[cC]]*)
4099 # IBM XL 8.0, 9.0 on PPC and BlueGene
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
4115 ;;
4116 lynxos*)
4117 ;;
4118 m88k*)
4119 ;;
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
4128 ;;
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
4161 CC* | sunCC*)
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
4213 ;;
4214 esac
4215 fi
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'
4221
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 ;;
4230
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 ;;
4245
4246 beos* | irix5* | irix6* | nonstopux* | osf3* | osf4* | osf5*)
4247 # PIC is the default for these OSes.
4248 ;;
4249
4250 mingw* | cygwin* | pw32* | os2* | cegcc*)
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 ;;
4258
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 ;;
4264
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
4271 hpux*)
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.
4275 case $host_cpu in
4276 hppa*64*)
4277 # +Z the default
4278 ;;
4279 *)
4280 _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fPIC'
4281 ;;
4282 esac
4283 ;;
4284
4285 interix[[3-9]]*)
4286 # Interix 3.x gcc -fpic/-fPIC options generate broken code.
4287 # Instead, we relocate shared libraries at runtime.
4288 ;;
4289
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 ;;
4296
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 ;;
4302
4303 sysv4*MP*)
4304 if test -d /usr/nec; then
4305 _LT_TAGVAR(lt_prog_compiler_pic, $1)=-Kconform_pic
4306 fi
4307 ;;
4308
4309 *)
4310 _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fPIC'
4311 ;;
4312 esac
4313
4314 case $cc_basename in
4315 nvcc*) # Cuda Compiler Driver 2.2
4316 _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Xlinker '
5670ec6e
AM
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
dabf4152
AM
4320 ;;
4321 esac
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 ;;
4334
4335 mingw* | cygwin* | pw32* | os2* | cegcc*)
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 ;;
4341
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 ;;
4357
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 ;;
4363
4364 linux* | k*bsd*-gnu | kopensolaris*-gnu)
4365 case $cc_basename in
4366 # old Intel for x86_64 which still supported -KPIC.
4367 ecc*)
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 ;;
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 ;;
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*)
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 ;;
4403 xl* | bgxl* | bgf* | mpixl*)
4404 # IBM XL C 8.0/Fortran 10.1, 11.1 on PPC and BlueGene
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
5670ec6e 4411 *Sun\ Ceres\ Fortran* | *Sun*Fortran*\ [[1-7]].* | *Sun*Fortran*\ 8.[[0-3]]*)
dabf4152
AM
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 ;;
5670ec6e
AM
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 ;;
dabf4152
AM
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 ;;
5670ec6e
AM
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'
4436 _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic'
4437 ;;
dabf4152
AM
4438 esac
4439 ;;
4440 esac
4441 ;;
4442
4443 newsos6)
4444 _LT_TAGVAR(lt_prog_compiler_pic, $1)='-KPIC'
4445 _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic'
4446 ;;
4447
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 ;;
4453
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 ;;
4459
4460 rdos*)
4461 _LT_TAGVAR(lt_prog_compiler_static, $1)='-non_shared'
4462 ;;
4463
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
4468 f77* | f90* | f95* | sunf77* | sunf90* | sunf95*)
4469 _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Qoption ld ';;
4470 *)
4471 _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,';;
4472 esac
4473 ;;
4474
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 ;;
4480
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 ;;
4486
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 ;;
4493
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 ;;
4499
4500 unicos*)
4501 _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
4502 _LT_TAGVAR(lt_prog_compiler_can_build_shared, $1)=no
4503 ;;
4504
4505 uts4*)
4506 _LT_TAGVAR(lt_prog_compiler_pic, $1)='-pic'
4507 _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic'
4508 ;;
4509
4510 *)
4511 _LT_TAGVAR(lt_prog_compiler_can_build_shared, $1)=no
4512 ;;
4513 esac
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)=
4520 ;;
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
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)
4530
4531#
4532# Check to make sure the PIC flag actually works.
4533#
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
4548_LT_TAGDECL([wl], [lt_prog_compiler_wl], [1],
4549 [How to pass a linker flag through the compiler])
4550#
4551# Check to make sure the static flag actually works.
4552#
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
4562
4563
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
4570m4_require([_LT_PATH_MANIFEST_TOOL])dnl
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'
4579 _LT_TAGVAR(exclude_expsyms, $1)=['_GLOBAL_OFFSET_TABLE_|_GLOBAL__F[ID]_.*']
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
4584 # Also, AIX nm treats weak defined symbols like other global defined
4585 # symbols, whereas GNU nm marks them as "W".
4586 if $NM -V 2>&1 | $GREP 'GNU' > /dev/null; then
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'
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"
4594 ;;
4595 cygwin* | mingw* | cegcc*)
4596 case $cc_basename in
5670ec6e
AM
4597 cl*)
4598 _LT_TAGVAR(exclude_expsyms, $1)='_NULL_IMPORT_DESCRIPTOR|_IMPORT_DESCRIPTOR_.*'
4599 ;;
dabf4152
AM
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*)
4607 _LT_TAGVAR(link_all_deplibs, $1)=no
4608 ;;
4609 *)
4610 _LT_TAGVAR(export_symbols_cmds, $1)='$NM $libobjs $convenience | $global_symbol_pipe | $SED '\''s/.* //'\'' | sort | uniq > $export_symbols'
4611 ;;
4612 esac
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)=
dabf4152
AM
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=
4654
4655 case $host_os in
4656 cygwin* | mingw* | pw32* | cegcc*)
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 ;;
4671 linux* | k*bsd*-gnu | gnu*)
4672 _LT_TAGVAR(link_all_deplibs, $1)=no
4673 ;;
4674 esac
4675
4676 _LT_TAGVAR(ld_shlibs, $1)=yes
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
4681 if test "$with_gnu_ld" = yes; then
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
4704 # If archive_cmds runs LD, not CC, wlarc should be empty
4705 wlarc='${wl}'
4706
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
4721 *GNU\ gold*) supports_anon_versioning=yes ;;
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
4728
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
4736
4737*** Warning: the GNU linker, at least up to release 2.19, is reported
4738*** to be unable to reliably create shared libraries on AIX.
4739*** Therefore, libtool is disabling shared libraries support. If you
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.
4743
4744_LT_EOF
4745 fi
4746 ;;
4747
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 ;;
4762
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 ;;
4773
4774 cygwin* | mingw* | pw32* | cegcc*)
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'
4778 _LT_TAGVAR(export_dynamic_flag_spec, $1)='${wl}--export-all-symbols'
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
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']
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 ;;
4800
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
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 ;;
4820
4821 gnu* | linux* | tpf* | k*bsd*-gnu | kopensolaris*-gnu)
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
4831 tmp_addflag=' $pic_flag'
4832 tmp_sharedflag='-shared'
4833 case $cc_basename,$host_cpu in
4834 pgcc*) # Portland Group C compiler
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'
4836 tmp_addflag=' $pic_flag'
4837 ;;
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'
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' ;;
4848 lf95*) # Lahey Fortran 8.1
4849 _LT_TAGVAR(whole_archive_flag_spec, $1)=
4850 tmp_sharedflag='--shared' ;;
4851 xl[[cC]]* | bgxl[[cC]]* | mpixl[[cC]]*) # IBM XL C 8.0 on PPC (deal with xlf below)
4852 tmp_sharedflag='-qmkshrobj'
4853 tmp_addflag= ;;
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 ;;
4858 esac
4859 case `$CC -V 2>&1 | sed 5q` in
4860 *Sun\ C*) # Sun C 5.9
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'
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'
4868
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
4875
4876 case $cc_basename in
4877 xlf* | bgf* | bgxlf* | mpixlf*)
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'
5670ec6e 4880 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath ${wl}$libdir'
dabf4152
AM
4881 _LT_TAGVAR(archive_cmds, $1)='$LD -shared $libobjs $deplibs $linker_flags -soname $soname -o $lib'
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~
4886 $LD -shared $libobjs $deplibs $linker_flags -soname $soname -version-script $output_objdir/$libname.ver -o $lib'
4887 fi
4888 ;;
4889 esac
4890 else
4891 _LT_TAGVAR(ld_shlibs, $1)=no
4892 fi
4893 ;;
4894
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
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'
4902 fi
4903 ;;
4904
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
4909
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.
4916
4917_LT_EOF
4918 elif $LD --help 2>&1 | $GREP ': supported targets:.* elf' > /dev/null; then
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'
4921 else
4922 _LT_TAGVAR(ld_shlibs, $1)=no
4923 fi
4924 ;;
4925
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
4931
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.
4938
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 ;;
4956
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 ;;
4963
4964 *)
4965 if $LD --help 2>&1 | $GREP ': supported targets:.* elf' > /dev/null; then
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'
4968 else
4969 _LT_TAGVAR(ld_shlibs, $1)=no
4970 fi
4971 ;;
4972 esac
4973
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 ;;
4996
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
5007 # Also, AIX nm treats weak defined symbols like other global
5008 # defined symbols, whereas GNU nm marks them as "W".
5009 if $NM -V 2>&1 | $GREP 'GNU' > /dev/null; then
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'
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
5015
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
5028
5029 exp_sym_flag='-bexport'
5030 no_entry_flag='-bnoentry'
5031 fi
5032
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.
5038
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,'
5045
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
5087
5088 _LT_TAGVAR(export_dynamic_flag_spec, $1)='${wl}-bexpall'
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.
5098 _LT_SYS_MODULE_PATH_AIX([$1])
5099 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-blibpath:$libdir:'"$aix_libpath"
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"
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.
5109 _LT_SYS_MODULE_PATH_AIX([$1])
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'
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
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 ;;
5128
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 ;;
5143
5144 bsdi[[45]]*)
5145 _LT_TAGVAR(export_dynamic_flag_spec, $1)=-rdynamic
5146 ;;
5147
5148 cygwin* | mingw* | pw32* | cegcc*)
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.
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
5670ec6e 5176 _LT_TAGVAR(exclude_expsyms, $1)='_NULL_IMPORT_DESCRIPTOR|_IMPORT_DESCRIPTOR_.*'
dabf4152
AM
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
5211 ;;
5212
5213 darwin* | rhapsody*)
5214 _LT_DARWIN_LINKER_FEATURES($1)
5215 ;;
5216
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 ;;
5222
dabf4152
AM
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 ;;
5233
5234 # Unfortunately, older versions of FreeBSD 2 do not have this feature.
5670ec6e 5235 freebsd2.*)
dabf4152
AM
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 ;;
5241
5242 # FreeBSD 3 and greater uses gcc -shared to do shared libraries.
5243 freebsd* | dragonfly*)
5244 _LT_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag -o $lib $libobjs $deplibs $compiler_flags'
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 ;;
5249
5250 hpux9*)
5251 if test "$GCC" = yes; then
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'
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
5259
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 ;;
5265
5266 hpux10*)
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'
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'
dabf4152
AM
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 ;;
5283
5284 hpux11*)
5285 if test "$GCC" = yes && test "$with_gnu_ld" = no; then
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*)
5291 _LT_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag ${wl}+h ${wl}$soname ${wl}+nodefaultrpath -o $lib $libobjs $deplibs $compiler_flags'
5292 ;;
5293 *)
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'
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 *)
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'])
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)=:
5320
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'
5330
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 ;;
5338
5339 irix5* | irix6* | nonstopux*)
5340 if test "$GCC" = yes; then
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'
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.
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
5366 else
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'
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 ;;
5376
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 ;;
5387
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 ;;
5395
5396 *nto* | *qnx*)
5397 ;;
5398
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 ;;
5425
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
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'
5431 _LT_TAGVAR(old_archive_from_new_cmds, $1)='emximp -o $output_objdir/$libname.a $output_objdir/$libname.def'
5432 ;;
5433
5434 osf3*)
5435 if test "$GCC" = yes; then
5436 _LT_TAGVAR(allow_undefined_flag, $1)=' ${wl}-expect_unresolved ${wl}\*'
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'
5438 else
5439 _LT_TAGVAR(allow_undefined_flag, $1)=' -expect_unresolved \*'
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'
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 ;;
5446
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}\*'
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'
5451 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath ${wl}$libdir'
5452 else
5453 _LT_TAGVAR(allow_undefined_flag, $1)=' -expect_unresolved \*'
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'
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~
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'
5457
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 ;;
5464
5465 solaris*)
5466 _LT_TAGVAR(no_undefined_flag, $1)=' -z defs'
5467 if test "$GCC" = yes; then
5468 wlarc='${wl}'
5469 _LT_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag ${wl}-z ${wl}text ${wl}-h ${wl}$soname -o $lib $libobjs $deplibs $compiler_flags'
5470 _LT_TAGVAR(archive_expsym_cmds, $1)='echo "{ global:" > $lib.exp~cat $export_symbols | $SED -e "s/\(.*\)/\1;/" >> $lib.exp~echo "local: *; };" >> $lib.exp~
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'
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 ;;
5506
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 ;;
5520
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 ;;
5542
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 ;;
5548
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 ;;
5558
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'
5564
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 ;;
5573
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'
5590
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 ;;
5599
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 ;;
5605
5606 *)
5607 _LT_TAGVAR(ld_shlibs, $1)=no
5608 ;;
5609 esac
5610
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
5622
5623_LT_TAGVAR(with_gnu_ld, $1)=$with_gnu_ld
5624
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])
5629
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
5637
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.
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)
5679 ;;
5680 esac
5681 fi
5682 ;;
5683esac
5684
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])
dabf4152
AM
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])
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])
5750_LT_TAGDECL([], [postlink_cmds], [2],
5751 [Commands necessary for finishing linking programs])
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)
5769
5770# Source file extension for C test sources.
5771ac_ext=c
5772
5773# Object file extension for compiled C test sources.
5774objext=o
5775_LT_TAGVAR(objext, $1)=$objext
5776
5777# Code to be used in simple compile tests
5778lt_simple_compile_test_code="int some_variable = 0;"
5779
5780# Code to be used in simple link tests
5781lt_simple_link_test_code='int main(){return(0);}'
5782
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
5787
5788# save warnings/boilerplate of simple test code
5789_LT_COMPILER_BOILERPLATE
5790_LT_LINKER_BOILERPLATE
5791
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.
5812 case $host_os in
5813 aix3*)
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 ;;
5820
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
5825 ;;
5826 esac
5827 AC_MSG_RESULT([$enable_shared])
5828
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])
5833
5834 _LT_CONFIG($1)
5835fi
5836AC_LANG_POP
5837CC="$lt_save_CC"
5838])# _LT_LANG_C_CONFIG
5839
5840
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],
5847[m4_require([_LT_FILEUTILS_DEFAULTS])dnl
5848m4_require([_LT_DECL_EGREP])dnl
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
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)=
dabf4152
AM
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
5877_LT_TAGVAR(reload_flag, $1)=$reload_flag
5878_LT_TAGVAR(reload_cmds, $1)=$reload_cmds
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
5882
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
5910 lt_save_CFLAGS=$CFLAGS
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
5918 else
5919 $as_unset lt_cv_prog_gnu_ld
5920 fi
5921 if test -n "${lt_cv_path_LDCXX+set}"; then
5922 lt_cv_path_LD=$lt_cv_path_LDCXX
5923 else
5924 $as_unset lt_cv_path_LD
5925 fi
5926 test -z "${LDCXX+set}" || LD=$LDCXX
5927 CC=${CXX-"c++"}
5928 CFLAGS=$CXXFLAGS
5929 compiler=$CC
5930 _LT_TAGVAR(compiler, $1)=$CC
5931 _LT_CC_BASENAME([$compiler])
5932
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
5941
5942 if test "$GXX" = yes; then
5943 # Set up default GNU C++ configuration
5944
5945 LT_PATH_LD
5946
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
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'
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'
5978 fi
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.
5983 output_verbose_link_cmd='$CC -shared $CFLAGS -v conftest.$objext 2>&1 | $GREP -v "^Configured with:" | $GREP "\-L"'
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
5994 case $host_os in
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
6081 _LT_TAGVAR(export_dynamic_flag_spec, $1)='${wl}-bexpall'
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.
6092 _LT_SYS_MODULE_PATH_AIX([$1])
6093 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-blibpath:$libdir:'"$aix_libpath"
6094
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"
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.
6104 _LT_SYS_MODULE_PATH_AIX([$1])
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'
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
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'
6131 else
6132 _LT_TAGVAR(ld_shlibs, $1)=no
6133 fi
6134 ;;
6135
6136 chorus*)
6137 case $cc_basename in
6138 *)
6139 # FIXME: insert proper C++ library support
6140 _LT_TAGVAR(ld_shlibs, $1)=no
6141 ;;
6142 esac
6143 ;;
6144
6145 cygwin* | mingw* | pw32* | cegcc*)
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 ;;
6215 darwin* | rhapsody*)
6216 _LT_DARWIN_LINKER_FEATURES($1)
6217 ;;
6218
6219 dgux*)
6220 case $cc_basename in
6221 ec++*)
6222 # FIXME: insert proper C++ library support
6223 _LT_TAGVAR(ld_shlibs, $1)=no
6224 ;;
6225 ghcx*)
6226 # Green Hills C++ Compiler
6227 # FIXME: insert proper C++ library support
6228 _LT_TAGVAR(ld_shlibs, $1)=no
6229 ;;
6230 *)
6231 # FIXME: insert proper C++ library support
6232 _LT_TAGVAR(ld_shlibs, $1)=no
6233 ;;
6234 esac
6235 ;;
6236
5670ec6e 6237 freebsd2.*)
dabf4152
AM
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
6247 freebsd* | dragonfly*)
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
6253 gnu*)
6254 ;;
6255
6256 haiku*)
6257 _LT_TAGVAR(archive_cmds, $1)='$CC -shared $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname -o $lib'
6258 _LT_TAGVAR(link_all_deplibs, $1)=yes
6259 ;;
6260
6261 hpux9*)
6262 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}+b ${wl}$libdir'
6263 _LT_TAGVAR(hardcode_libdir_separator, $1)=:
6264 _LT_TAGVAR(export_dynamic_flag_spec, $1)='${wl}-E'
6265 _LT_TAGVAR(hardcode_direct, $1)=yes
6266 _LT_TAGVAR(hardcode_minus_L, $1)=yes # Not in the search PATH,
6267 # but as the default
6268 # location of the library.
6269
6270 case $cc_basename in
6271 CC*)
6272 # FIXME: insert proper C++ library support
6273 _LT_TAGVAR(ld_shlibs, $1)=no
6274 ;;
6275 aCC*)
6276 _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'
6277 # Commands to make compiler produce verbose output that lists
6278 # what "hidden" libraries, object files and flags are used when
6279 # linking a shared library.
6280 #
6281 # There doesn't appear to be a way to prevent this compiler from
6282 # explicitly linking system object files so we need to strip them
6283 # from the output so that they don't get included in the library
6284 # dependencies.
6285 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"'
6286 ;;
6287 *)
6288 if test "$GXX" = yes; then
6289 _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'
6290 else
6291 # FIXME: insert proper C++ library support
6292 _LT_TAGVAR(ld_shlibs, $1)=no
6293 fi
6294 ;;
6295 esac
6296 ;;
6297
6298 hpux10*|hpux11*)
6299 if test $with_gnu_ld = no; then
6300 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}+b ${wl}$libdir'
6301 _LT_TAGVAR(hardcode_libdir_separator, $1)=:
6302
6303 case $host_cpu in
6304 hppa*64*|ia64*)
6305 ;;
6306 *)
6307 _LT_TAGVAR(export_dynamic_flag_spec, $1)='${wl}-E'
6308 ;;
6309 esac
6310 fi
6311 case $host_cpu in
6312 hppa*64*|ia64*)
6313 _LT_TAGVAR(hardcode_direct, $1)=no
6314 _LT_TAGVAR(hardcode_shlibpath_var, $1)=no
6315 ;;
6316 *)
6317 _LT_TAGVAR(hardcode_direct, $1)=yes
6318 _LT_TAGVAR(hardcode_direct_absolute, $1)=yes
6319 _LT_TAGVAR(hardcode_minus_L, $1)=yes # Not in the search PATH,
6320 # but as the default
6321 # location of the library.
6322 ;;
6323 esac
6324
6325 case $cc_basename in
6326 CC*)
6327 # FIXME: insert proper C++ library support
6328 _LT_TAGVAR(ld_shlibs, $1)=no
6329 ;;
6330 aCC*)
6331 case $host_cpu in
6332 hppa*64*)
6333 _LT_TAGVAR(archive_cmds, $1)='$CC -b ${wl}+h ${wl}$soname -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags'
6334 ;;
6335 ia64*)
6336 _LT_TAGVAR(archive_cmds, $1)='$CC -b ${wl}+h ${wl}$soname ${wl}+nodefaultrpath -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags'
6337 ;;
6338 *)
6339 _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'
6340 ;;
6341 esac
6342 # Commands to make compiler produce verbose output that lists
6343 # what "hidden" libraries, object files and flags are used when
6344 # linking a shared library.
6345 #
6346 # There doesn't appear to be a way to prevent this compiler from
6347 # explicitly linking system object files so we need to strip them
6348 # from the output so that they don't get included in the library
6349 # dependencies.
6350 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"'
6351 ;;
6352 *)
6353 if test "$GXX" = yes; then
6354 if test $with_gnu_ld = no; then
6355 case $host_cpu in
6356 hppa*64*)
6357 _LT_TAGVAR(archive_cmds, $1)='$CC -shared -nostdlib -fPIC ${wl}+h ${wl}$soname -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags'
6358 ;;
6359 ia64*)
6360 _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'
6361 ;;
6362 *)
6363 _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'
6364 ;;
6365 esac
6366 fi
6367 else
6368 # FIXME: insert proper C++ library support
6369 _LT_TAGVAR(ld_shlibs, $1)=no
6370 fi
6371 ;;
6372 esac
6373 ;;
6374
6375 interix[[3-9]]*)
6376 _LT_TAGVAR(hardcode_direct, $1)=no
6377 _LT_TAGVAR(hardcode_shlibpath_var, $1)=no
6378 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath,$libdir'
6379 _LT_TAGVAR(export_dynamic_flag_spec, $1)='${wl}-E'
6380 # Hack: On Interix 3.x, we cannot compile PIC because of a broken gcc.
6381 # Instead, shared libraries are loaded at an image base (0x10000000 by
6382 # default) and relocated if they conflict, which is a slow very memory
6383 # consuming and fragmenting process. To avoid this, we pick a random,
6384 # 256 KiB-aligned image base between 0x50000000 and 0x6FFC0000 at link
6385 # time. Moving up from 0x10000000 also allows more sbrk(2) space.
6386 _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'
6387 _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'
6388 ;;
6389 irix5* | irix6*)
6390 case $cc_basename in
6391 CC*)
6392 # SGI C++
6393 _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'
6394
6395 # Archives containing C++ object files must be created using
6396 # "CC -ar", where "CC" is the IRIX C++ compiler. This is
6397 # necessary to make sure instantiated templates are included
6398 # in the archive.
6399 _LT_TAGVAR(old_archive_cmds, $1)='$CC -ar -WR,-u -o $oldlib $oldobjs'
6400 ;;
6401 *)
6402 if test "$GXX" = yes; then
6403 if test "$with_gnu_ld" = no; then
6404 _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'
6405 else
6406 _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'
6407 fi
6408 fi
6409 _LT_TAGVAR(link_all_deplibs, $1)=yes
6410 ;;
6411 esac
6412 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath ${wl}$libdir'
6413 _LT_TAGVAR(hardcode_libdir_separator, $1)=:
6414 _LT_TAGVAR(inherit_rpath, $1)=yes
6415 ;;
6416
6417 linux* | k*bsd*-gnu | kopensolaris*-gnu)
6418 case $cc_basename in
6419 KCC*)
6420 # Kuck and Associates, Inc. (KAI) C++ Compiler
6421
6422 # KCC will only create a shared library if the output file
6423 # ends with ".so" (or ".sl" for HP-UX), so rename the library
6424 # to its proper name (with version) after linking.
6425 _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'
6426 _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'
6427 # Commands to make compiler produce verbose output that lists
6428 # what "hidden" libraries, object files and flags are used when
6429 # linking a shared library.
6430 #
6431 # There doesn't appear to be a way to prevent this compiler from
6432 # explicitly linking system object files so we need to strip them
6433 # from the output so that they don't get included in the library
6434 # dependencies.
6435 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"'
6436
6437 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath,$libdir'
6438 _LT_TAGVAR(export_dynamic_flag_spec, $1)='${wl}--export-dynamic'
6439
6440 # Archives containing C++ object files must be created using
6441 # "CC -Bstatic", where "CC" is the KAI C++ compiler.
6442 _LT_TAGVAR(old_archive_cmds, $1)='$CC -Bstatic -o $oldlib $oldobjs'
6443 ;;
6444 icpc* | ecpc* )
6445 # Intel C++
6446 with_gnu_ld=yes
6447 # version 8.0 and above of icpc choke on multiply defined symbols
6448 # if we add $predep_objects and $postdep_objects, however 7.1 and
6449 # earlier do not add the objects themselves.
6450 case `$CC -V 2>&1` in
6451 *"Version 7."*)
6452 _LT_TAGVAR(archive_cmds, $1)='$CC -shared $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags ${wl}-soname $wl$soname -o $lib'
6453 _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'
6454 ;;
6455 *) # Version 8.0 or newer
6456 tmp_idyn=
6457 case $host_cpu in
6458 ia64*) tmp_idyn=' -i_dynamic';;
6459 esac
6460 _LT_TAGVAR(archive_cmds, $1)='$CC -shared'"$tmp_idyn"' $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname -o $lib'
6461 _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'
6462 ;;
6463 esac
6464 _LT_TAGVAR(archive_cmds_need_lc, $1)=no
6465 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath,$libdir'
6466 _LT_TAGVAR(export_dynamic_flag_spec, $1)='${wl}--export-dynamic'
6467 _LT_TAGVAR(whole_archive_flag_spec, $1)='${wl}--whole-archive$convenience ${wl}--no-whole-archive'
6468 ;;
6469 pgCC* | pgcpp*)
6470 # Portland Group C++ compiler
6471 case `$CC -V` in
6472 *pgCC\ [[1-5]].* | *pgcpp\ [[1-5]].*)
6473 _LT_TAGVAR(prelink_cmds, $1)='tpldir=Template.dir~
6474 rm -rf $tpldir~
6475 $CC --prelink_objects --instantiation_dir $tpldir $objs $libobjs $compile_deplibs~
6476 compile_command="$compile_command `find $tpldir -name \*.o | sort | $NL2SP`"'
6477 _LT_TAGVAR(old_archive_cmds, $1)='tpldir=Template.dir~
6478 rm -rf $tpldir~
6479 $CC --prelink_objects --instantiation_dir $tpldir $oldobjs$old_deplibs~
6480 $AR $AR_FLAGS $oldlib$oldobjs$old_deplibs `find $tpldir -name \*.o | sort | $NL2SP`~
6481 $RANLIB $oldlib'
6482 _LT_TAGVAR(archive_cmds, $1)='tpldir=Template.dir~
6483 rm -rf $tpldir~
6484 $CC --prelink_objects --instantiation_dir $tpldir $predep_objects $libobjs $deplibs $convenience $postdep_objects~
6485 $CC -shared $pic_flag $predep_objects $libobjs $deplibs `find $tpldir -name \*.o | sort | $NL2SP` $postdep_objects $compiler_flags ${wl}-soname ${wl}$soname -o $lib'
6486 _LT_TAGVAR(archive_expsym_cmds, $1)='tpldir=Template.dir~
6487 rm -rf $tpldir~
6488 $CC --prelink_objects --instantiation_dir $tpldir $predep_objects $libobjs $deplibs $convenience $postdep_objects~
6489 $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'
6490 ;;
6491 *) # Version 6 and above use weak symbols
6492 _LT_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags ${wl}-soname ${wl}$soname -o $lib'
6493 _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'
6494 ;;
6495 esac
6496
6497 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}--rpath ${wl}$libdir'
6498 _LT_TAGVAR(export_dynamic_flag_spec, $1)='${wl}--export-dynamic'
6499 _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'
6500 ;;
6501 cxx*)
6502 # Compaq C++
6503 _LT_TAGVAR(archive_cmds, $1)='$CC -shared $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags ${wl}-soname $wl$soname -o $lib'
6504 _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'
6505
6506 runpath_var=LD_RUN_PATH
6507 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-rpath $libdir'
6508 _LT_TAGVAR(hardcode_libdir_separator, $1)=:
6509
6510 # Commands to make compiler produce verbose output that lists
6511 # what "hidden" libraries, object files and flags are used when
6512 # linking a shared library.
6513 #
6514 # There doesn't appear to be a way to prevent this compiler from
6515 # explicitly linking system object files so we need to strip them
6516 # from the output so that they don't get included in the library
6517 # dependencies.
6518 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'
6519 ;;
6520 xl* | mpixl* | bgxl*)
6521 # IBM XL 8.0 on PPC, with GNU ld
6522 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath ${wl}$libdir'
6523 _LT_TAGVAR(export_dynamic_flag_spec, $1)='${wl}--export-dynamic'
6524 _LT_TAGVAR(archive_cmds, $1)='$CC -qmkshrobj $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname -o $lib'
6525 if test "x$supports_anon_versioning" = xyes; then
6526 _LT_TAGVAR(archive_expsym_cmds, $1)='echo "{ global:" > $output_objdir/$libname.ver~
6527 cat $export_symbols | sed -e "s/\(.*\)/\1;/" >> $output_objdir/$libname.ver~
6528 echo "local: *; };" >> $output_objdir/$libname.ver~
6529 $CC -qmkshrobj $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname ${wl}-version-script ${wl}$output_objdir/$libname.ver -o $lib'
6530 fi
6531 ;;
6532 *)
6533 case `$CC -V 2>&1 | sed 5q` in
6534 *Sun\ C*)
6535 # Sun C++ 5.9
6536 _LT_TAGVAR(no_undefined_flag, $1)=' -zdefs'
6537 _LT_TAGVAR(archive_cmds, $1)='$CC -G${allow_undefined_flag} -h$soname -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags'
6538 _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'
6539 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-R$libdir'
6540 _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'
6541 _LT_TAGVAR(compiler_needs_object, $1)=yes
6542
6543 # Not sure whether something based on
6544 # $CC $CFLAGS -v conftest.$objext -o libconftest$shared_ext 2>&1
6545 # would be better.
6546 output_verbose_link_cmd='func_echo_all'
6547
6548 # Archives containing C++ object files must be created using
6549 # "CC -xar", where "CC" is the Sun C++ compiler. This is
6550 # necessary to make sure instantiated templates are included
6551 # in the archive.
6552 _LT_TAGVAR(old_archive_cmds, $1)='$CC -xar -o $oldlib $oldobjs'
6553 ;;
6554 esac
6555 ;;
6556 esac
6557 ;;
6558
6559 lynxos*)
6560 # FIXME: insert proper C++ library support
6561 _LT_TAGVAR(ld_shlibs, $1)=no
6562 ;;
6563
6564 m88k*)
6565 # FIXME: insert proper C++ library support
6566 _LT_TAGVAR(ld_shlibs, $1)=no
6567 ;;
6568
6569 mvs*)
6570 case $cc_basename in
6571 cxx*)
6572 # FIXME: insert proper C++ library support
6573 _LT_TAGVAR(ld_shlibs, $1)=no
6574 ;;
6575 *)
6576 # FIXME: insert proper C++ library support
6577 _LT_TAGVAR(ld_shlibs, $1)=no
6578 ;;
6579 esac
6580 ;;
6581
6582 netbsd*)
6583 if echo __ELF__ | $CC -E - | $GREP __ELF__ >/dev/null; then
6584 _LT_TAGVAR(archive_cmds, $1)='$LD -Bshareable -o $lib $predep_objects $libobjs $deplibs $postdep_objects $linker_flags'
6585 wlarc=
6586 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-R$libdir'
6587 _LT_TAGVAR(hardcode_direct, $1)=yes
6588 _LT_TAGVAR(hardcode_shlibpath_var, $1)=no
6589 fi
6590 # Workaround some broken pre-1.5 toolchains
6591 output_verbose_link_cmd='$CC -shared $CFLAGS -v conftest.$objext 2>&1 | $GREP conftest.$objext | $SED -e "s:-lgcc -lc -lgcc::"'
6592 ;;
6593
6594 *nto* | *qnx*)
6595 _LT_TAGVAR(ld_shlibs, $1)=yes
6596 ;;
6597
6598 openbsd2*)
6599 # C++ shared libraries are fairly broken
6600 _LT_TAGVAR(ld_shlibs, $1)=no
6601 ;;
6602
6603 openbsd*)
6604 if test -f /usr/libexec/ld.so; then
6605 _LT_TAGVAR(hardcode_direct, $1)=yes
6606 _LT_TAGVAR(hardcode_shlibpath_var, $1)=no
6607 _LT_TAGVAR(hardcode_direct_absolute, $1)=yes
6608 _LT_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags -o $lib'
6609 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath,$libdir'
6610 if test -z "`echo __ELF__ | $CC -E - | grep __ELF__`" || test "$host_os-$host_cpu" = "openbsd2.8-powerpc"; then
6611 _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'
6612 _LT_TAGVAR(export_dynamic_flag_spec, $1)='${wl}-E'
6613 _LT_TAGVAR(whole_archive_flag_spec, $1)="$wlarc"'--whole-archive$convenience '"$wlarc"'--no-whole-archive'
6614 fi
6615 output_verbose_link_cmd=func_echo_all
6616 else
6617 _LT_TAGVAR(ld_shlibs, $1)=no
6618 fi
6619 ;;
6620
6621 osf3* | osf4* | osf5*)
6622 case $cc_basename in
6623 KCC*)
6624 # Kuck and Associates, Inc. (KAI) C++ Compiler
6625
6626 # KCC will only create a shared library if the output file
6627 # ends with ".so" (or ".sl" for HP-UX), so rename the library
6628 # to its proper name (with version) after linking.
6629 _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'
6630
6631 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath,$libdir'
6632 _LT_TAGVAR(hardcode_libdir_separator, $1)=:
6633
6634 # Archives containing C++ object files must be created using
6635 # the KAI C++ compiler.
6636 case $host in
6637 osf3*) _LT_TAGVAR(old_archive_cmds, $1)='$CC -Bstatic -o $oldlib $oldobjs' ;;
6638 *) _LT_TAGVAR(old_archive_cmds, $1)='$CC -o $oldlib $oldobjs' ;;
6639 esac
6640 ;;
6641 RCC*)
6642 # Rational C++ 2.4.1
6643 # FIXME: insert proper C++ library support
6644 _LT_TAGVAR(ld_shlibs, $1)=no
6645 ;;
6646 cxx*)
6647 case $host in
6648 osf3*)
6649 _LT_TAGVAR(allow_undefined_flag, $1)=' ${wl}-expect_unresolved ${wl}\*'
6650 _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'
6651 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath ${wl}$libdir'
6652 ;;
6653 *)
6654 _LT_TAGVAR(allow_undefined_flag, $1)=' -expect_unresolved \*'
6655 _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'
6656 _LT_TAGVAR(archive_expsym_cmds, $1)='for i in `cat $export_symbols`; do printf "%s %s\\n" -exported_symbol "\$i" >> $lib.exp; done~
6657 echo "-hidden">> $lib.exp~
6658 $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~
6659 $RM $lib.exp'
6660 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-rpath $libdir'
6661 ;;
6662 esac
6663
6664 _LT_TAGVAR(hardcode_libdir_separator, $1)=:
6665
6666 # Commands to make compiler produce verbose output that lists
6667 # what "hidden" libraries, object files and flags are used when
6668 # linking a shared library.
6669 #
6670 # There doesn't appear to be a way to prevent this compiler from
6671 # explicitly linking system object files so we need to strip them
6672 # from the output so that they don't get included in the library
6673 # dependencies.
6674 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"'
6675 ;;
6676 *)
6677 if test "$GXX" = yes && test "$with_gnu_ld" = no; then
6678 _LT_TAGVAR(allow_undefined_flag, $1)=' ${wl}-expect_unresolved ${wl}\*'
6679 case $host in
6680 osf3*)
6681 _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'
6682 ;;
6683 *)
6684 _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'
6685 ;;
6686 esac
6687
6688 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath ${wl}$libdir'
6689 _LT_TAGVAR(hardcode_libdir_separator, $1)=:
6690
6691 # Commands to make compiler produce verbose output that lists
6692 # what "hidden" libraries, object files and flags are used when
6693 # linking a shared library.
6694 output_verbose_link_cmd='$CC -shared $CFLAGS -v conftest.$objext 2>&1 | $GREP -v "^Configured with:" | $GREP "\-L"'
6695
6696 else
6697 # FIXME: insert proper C++ library support
6698 _LT_TAGVAR(ld_shlibs, $1)=no
6699 fi
6700 ;;
6701 esac
6702 ;;
6703
6704 psos*)
6705 # FIXME: insert proper C++ library support
6706 _LT_TAGVAR(ld_shlibs, $1)=no
6707 ;;
6708
6709 sunos4*)
6710 case $cc_basename in
6711 CC*)
6712 # Sun C++ 4.x
6713 # FIXME: insert proper C++ library support
6714 _LT_TAGVAR(ld_shlibs, $1)=no
6715 ;;
6716 lcc*)
6717 # Lucid
6718 # FIXME: insert proper C++ library support
6719 _LT_TAGVAR(ld_shlibs, $1)=no
6720 ;;
6721 *)
6722 # FIXME: insert proper C++ library support
6723 _LT_TAGVAR(ld_shlibs, $1)=no
6724 ;;
6725 esac
6726 ;;
6727
6728 solaris*)
6729 case $cc_basename in
6730 CC* | sunCC*)
6731 # Sun C++ 4.2, 5.x and Centerline C++
6732 _LT_TAGVAR(archive_cmds_need_lc,$1)=yes
6733 _LT_TAGVAR(no_undefined_flag, $1)=' -zdefs'
6734 _LT_TAGVAR(archive_cmds, $1)='$CC -G${allow_undefined_flag} -h$soname -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags'
6735 _LT_TAGVAR(archive_expsym_cmds, $1)='echo "{ global:" > $lib.exp~cat $export_symbols | $SED -e "s/\(.*\)/\1;/" >> $lib.exp~echo "local: *; };" >> $lib.exp~
6736 $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'
6737
6738 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-R$libdir'
6739 _LT_TAGVAR(hardcode_shlibpath_var, $1)=no
6740 case $host_os in
6741 solaris2.[[0-5]] | solaris2.[[0-5]].*) ;;
6742 *)
6743 # The compiler driver will combine and reorder linker options,
6744 # but understands `-z linker_flag'.
6745 # Supported since Solaris 2.6 (maybe 2.5.1?)
6746 _LT_TAGVAR(whole_archive_flag_spec, $1)='-z allextract$convenience -z defaultextract'
6747 ;;
6748 esac
6749 _LT_TAGVAR(link_all_deplibs, $1)=yes
6750
6751 output_verbose_link_cmd='func_echo_all'
6752
6753 # Archives containing C++ object files must be created using
6754 # "CC -xar", where "CC" is the Sun C++ compiler. This is
6755 # necessary to make sure instantiated templates are included
6756 # in the archive.
6757 _LT_TAGVAR(old_archive_cmds, $1)='$CC -xar -o $oldlib $oldobjs'
6758 ;;
6759 gcx*)
6760 # Green Hills C++ Compiler
6761 _LT_TAGVAR(archive_cmds, $1)='$CC -shared $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags ${wl}-h $wl$soname -o $lib'
6762
6763 # The C++ compiler must be used to create the archive.
6764 _LT_TAGVAR(old_archive_cmds, $1)='$CC $LDFLAGS -archive -o $oldlib $oldobjs'
6765 ;;
6766 *)
6767 # GNU C++ compiler with Solaris linker
6768 if test "$GXX" = yes && test "$with_gnu_ld" = no; then
6769 _LT_TAGVAR(no_undefined_flag, $1)=' ${wl}-z ${wl}defs'
6770 if $CC --version | $GREP -v '^2\.7' > /dev/null; then
6771 _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'
6772 _LT_TAGVAR(archive_expsym_cmds, $1)='echo "{ global:" > $lib.exp~cat $export_symbols | $SED -e "s/\(.*\)/\1;/" >> $lib.exp~echo "local: *; };" >> $lib.exp~
6773 $CC -shared $pic_flag -nostdlib ${wl}-M $wl$lib.exp -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags~$RM $lib.exp'
6774
6775 # Commands to make compiler produce verbose output that lists
6776 # what "hidden" libraries, object files and flags are used when
6777 # linking a shared library.
6778 output_verbose_link_cmd='$CC -shared $CFLAGS -v conftest.$objext 2>&1 | $GREP -v "^Configured with:" | $GREP "\-L"'
6779 else
6780 # g++ 2.7 appears to require `-G' NOT `-shared' on this
6781 # platform.
6782 _LT_TAGVAR(archive_cmds, $1)='$CC -G -nostdlib $LDFLAGS $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags ${wl}-h $wl$soname -o $lib'
6783 _LT_TAGVAR(archive_expsym_cmds, $1)='echo "{ global:" > $lib.exp~cat $export_symbols | $SED -e "s/\(.*\)/\1;/" >> $lib.exp~echo "local: *; };" >> $lib.exp~
6784 $CC -G -nostdlib ${wl}-M $wl$lib.exp -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags~$RM $lib.exp'
6785
6786 # Commands to make compiler produce verbose output that lists
6787 # what "hidden" libraries, object files and flags are used when
6788 # linking a shared library.
6789 output_verbose_link_cmd='$CC -G $CFLAGS -v conftest.$objext 2>&1 | $GREP -v "^Configured with:" | $GREP "\-L"'
6790 fi
6791
6792 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-R $wl$libdir'
6793 case $host_os in
6794 solaris2.[[0-5]] | solaris2.[[0-5]].*) ;;
6795 *)
6796 _LT_TAGVAR(whole_archive_flag_spec, $1)='${wl}-z ${wl}allextract$convenience ${wl}-z ${wl}defaultextract'
6797 ;;
6798 esac
6799 fi
6800 ;;
6801 esac
6802 ;;
6803
6804 sysv4*uw2* | sysv5OpenUNIX* | sysv5UnixWare7.[[01]].[[10]]* | unixware7* | sco3.2v5.0.[[024]]*)
6805 _LT_TAGVAR(no_undefined_flag, $1)='${wl}-z,text'
6806 _LT_TAGVAR(archive_cmds_need_lc, $1)=no
6807 _LT_TAGVAR(hardcode_shlibpath_var, $1)=no
6808 runpath_var='LD_RUN_PATH'
6809
6810 case $cc_basename in
6811 CC*)
6812 _LT_TAGVAR(archive_cmds, $1)='$CC -G ${wl}-h,$soname -o $lib $libobjs $deplibs $compiler_flags'
6813 _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -G ${wl}-Bexport:$export_symbols ${wl}-h,$soname -o $lib $libobjs $deplibs $compiler_flags'
6814 ;;
6815 *)
6816 _LT_TAGVAR(archive_cmds, $1)='$CC -shared ${wl}-h,$soname -o $lib $libobjs $deplibs $compiler_flags'
6817 _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -shared ${wl}-Bexport:$export_symbols ${wl}-h,$soname -o $lib $libobjs $deplibs $compiler_flags'
6818 ;;
6819 esac
6820 ;;
6821
6822 sysv5* | sco3.2v5* | sco5v6*)
6823 # Note: We can NOT use -z defs as we might desire, because we do not
6824 # link with -lc, and that would cause any symbols used from libc to
6825 # always be unresolved, which means just about no library would
6826 # ever link correctly. If we're not using GNU ld we use -z text
6827 # though, which does catch some bad symbols but isn't as heavy-handed
6828 # as -z defs.
6829 _LT_TAGVAR(no_undefined_flag, $1)='${wl}-z,text'
6830 _LT_TAGVAR(allow_undefined_flag, $1)='${wl}-z,nodefs'
6831 _LT_TAGVAR(archive_cmds_need_lc, $1)=no
6832 _LT_TAGVAR(hardcode_shlibpath_var, $1)=no
6833 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-R,$libdir'
6834 _LT_TAGVAR(hardcode_libdir_separator, $1)=':'
6835 _LT_TAGVAR(link_all_deplibs, $1)=yes
6836 _LT_TAGVAR(export_dynamic_flag_spec, $1)='${wl}-Bexport'
6837 runpath_var='LD_RUN_PATH'
6838
6839 case $cc_basename in
6840 CC*)
6841 _LT_TAGVAR(archive_cmds, $1)='$CC -G ${wl}-h,$soname -o $lib $libobjs $deplibs $compiler_flags'
6842 _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -G ${wl}-Bexport:$export_symbols ${wl}-h,$soname -o $lib $libobjs $deplibs $compiler_flags'
6843 _LT_TAGVAR(old_archive_cmds, $1)='$CC -Tprelink_objects $oldobjs~
6844 '"$_LT_TAGVAR(old_archive_cmds, $1)"
6845 _LT_TAGVAR(reload_cmds, $1)='$CC -Tprelink_objects $reload_objs~
6846 '"$_LT_TAGVAR(reload_cmds, $1)"
6847 ;;
6848 *)
6849 _LT_TAGVAR(archive_cmds, $1)='$CC -shared ${wl}-h,$soname -o $lib $libobjs $deplibs $compiler_flags'
6850 _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -shared ${wl}-Bexport:$export_symbols ${wl}-h,$soname -o $lib $libobjs $deplibs $compiler_flags'
6851 ;;
6852 esac
6853 ;;
6854
6855 tandem*)
6856 case $cc_basename in
6857 NCC*)
6858 # NonStop-UX NCC 3.20
6859 # FIXME: insert proper C++ library support
6860 _LT_TAGVAR(ld_shlibs, $1)=no
6861 ;;
6862 *)
6863 # FIXME: insert proper C++ library support
6864 _LT_TAGVAR(ld_shlibs, $1)=no
6865 ;;
6866 esac
6867 ;;
6868
6869 vxworks*)
6870 # FIXME: insert proper C++ library support
6871 _LT_TAGVAR(ld_shlibs, $1)=no
6872 ;;
6873
6874 *)
6875 # FIXME: insert proper C++ library support
6876 _LT_TAGVAR(ld_shlibs, $1)=no
6877 ;;
6878 esac
6879
6880 AC_MSG_RESULT([$_LT_TAGVAR(ld_shlibs, $1)])
6881 test "$_LT_TAGVAR(ld_shlibs, $1)" = no && can_build_shared=no
6882
6883 _LT_TAGVAR(GCC, $1)="$GXX"
6884 _LT_TAGVAR(LD, $1)="$LD"
6885
6886 ## CAVEAT EMPTOR:
6887 ## There is no encapsulation within the following macros, do not change
6888 ## the running order or otherwise move them around unless you know exactly
6889 ## what you are doing...
6890 _LT_SYS_HIDDEN_LIBDEPS($1)
6891 _LT_COMPILER_PIC($1)
6892 _LT_COMPILER_C_O($1)
6893 _LT_COMPILER_FILE_LOCKS($1)
6894 _LT_LINKER_SHLIBS($1)
6895 _LT_SYS_DYNAMIC_LINKER($1)
6896 _LT_LINKER_HARDCODE_LIBPATH($1)
6897
6898 _LT_CONFIG($1)
6899 fi # test -n "$compiler"
6900
6901 CC=$lt_save_CC
6902 CFLAGS=$lt_save_CFLAGS
6903 LDCXX=$LD
6904 LD=$lt_save_LD
6905 GCC=$lt_save_GCC
6906 with_gnu_ld=$lt_save_with_gnu_ld
6907 lt_cv_path_LDCXX=$lt_cv_path_LD
6908 lt_cv_path_LD=$lt_save_path_LD
6909 lt_cv_prog_gnu_ldcxx=$lt_cv_prog_gnu_ld
6910 lt_cv_prog_gnu_ld=$lt_save_with_gnu_ld
6911fi # test "$_lt_caught_CXX_error" != yes
6912
6913AC_LANG_POP
6914])# _LT_LANG_CXX_CONFIG
6915
6916
6917# _LT_FUNC_STRIPNAME_CNF
6918# ----------------------
6919# func_stripname_cnf prefix suffix name
6920# strip PREFIX and SUFFIX off of NAME.
6921# PREFIX and SUFFIX must not contain globbing or regex special
6922# characters, hashes, percent signs, but SUFFIX may contain a leading
6923# dot (in which case that matches only a dot).
6924#
6925# This function is identical to the (non-XSI) version of func_stripname,
6926# except this one can be used by m4 code that may be executed by configure,
6927# rather than the libtool script.
6928m4_defun([_LT_FUNC_STRIPNAME_CNF],[dnl
6929AC_REQUIRE([_LT_DECL_SED])
6930AC_REQUIRE([_LT_PROG_ECHO_BACKSLASH])
6931func_stripname_cnf ()
6932{
6933 case ${2} in
6934 .*) func_stripname_result=`$ECHO "${3}" | $SED "s%^${1}%%; s%\\\\${2}\$%%"`;;
6935 *) func_stripname_result=`$ECHO "${3}" | $SED "s%^${1}%%; s%${2}\$%%"`;;
6936 esac
6937} # func_stripname_cnf
6938])# _LT_FUNC_STRIPNAME_CNF
6939
6940# _LT_SYS_HIDDEN_LIBDEPS([TAGNAME])
6941# ---------------------------------
6942# Figure out "hidden" library dependencies from verbose
6943# compiler output when linking a shared library.
6944# Parse the compiler output and extract the necessary
6945# objects, libraries and library flags.
6946m4_defun([_LT_SYS_HIDDEN_LIBDEPS],
6947[m4_require([_LT_FILEUTILS_DEFAULTS])dnl
6948AC_REQUIRE([_LT_FUNC_STRIPNAME_CNF])dnl
6949# Dependencies to place before and after the object being linked:
6950_LT_TAGVAR(predep_objects, $1)=
6951_LT_TAGVAR(postdep_objects, $1)=
6952_LT_TAGVAR(predeps, $1)=
6953_LT_TAGVAR(postdeps, $1)=
6954_LT_TAGVAR(compiler_lib_search_path, $1)=
6955
6956dnl we can't use the lt_simple_compile_test_code here,
6957dnl because it contains code intended for an executable,
6958dnl not a library. It's possible we should let each
6959dnl tag define a new lt_????_link_test_code variable,
6960dnl but it's only used here...
6961m4_if([$1], [], [cat > conftest.$ac_ext <<_LT_EOF
6962int a;
6963void foo (void) { a = 0; }
6964_LT_EOF
6965], [$1], [CXX], [cat > conftest.$ac_ext <<_LT_EOF
6966class Foo
6967{
6968public:
6969 Foo (void) { a = 0; }
6970private:
6971 int a;
6972};
6973_LT_EOF
6974], [$1], [F77], [cat > conftest.$ac_ext <<_LT_EOF
6975 subroutine foo
6976 implicit none
6977 integer*4 a
6978 a=0
6979 return
6980 end
6981_LT_EOF
6982], [$1], [FC], [cat > conftest.$ac_ext <<_LT_EOF
6983 subroutine foo
6984 implicit none
6985 integer a
6986 a=0
6987 return
6988 end
6989_LT_EOF
6990], [$1], [GCJ], [cat > conftest.$ac_ext <<_LT_EOF
6991public class foo {
6992 private int a;
6993 public void bar (void) {
6994 a = 0;
6995 }
6996};
6997_LT_EOF
5670ec6e
AM
6998], [$1], [GO], [cat > conftest.$ac_ext <<_LT_EOF
6999package foo
7000func foo() {
7001}
7002_LT_EOF
dabf4152
AM
7003])
7004
7005_lt_libdeps_save_CFLAGS=$CFLAGS
7006case "$CC $CFLAGS " in #(
7007*\ -flto*\ *) CFLAGS="$CFLAGS -fno-lto" ;;
7008*\ -fwhopr*\ *) CFLAGS="$CFLAGS -fno-whopr" ;;
5670ec6e 7009*\ -fuse-linker-plugin*\ *) CFLAGS="$CFLAGS -fno-use-linker-plugin" ;;
dabf4152
AM
7010esac
7011
7012dnl Parse the compiler output and extract the necessary
7013dnl objects, libraries and library flags.
7014if AC_TRY_EVAL(ac_compile); then
7015 # Parse the compiler output and extract the necessary
7016 # objects, libraries and library flags.
7017
7018 # Sentinel used to keep track of whether or not we are before
7019 # the conftest object file.
7020 pre_test_object_deps_done=no
7021
7022 for p in `eval "$output_verbose_link_cmd"`; do
7023 case ${prev}${p} in
7024
7025 -L* | -R* | -l*)
7026 # Some compilers place space between "-{L,R}" and the path.
7027 # Remove the space.
7028 if test $p = "-L" ||
7029 test $p = "-R"; then
7030 prev=$p
7031 continue
7032 fi
7033
7034 # Expand the sysroot to ease extracting the directories later.
7035 if test -z "$prev"; then
7036 case $p in
7037 -L*) func_stripname_cnf '-L' '' "$p"; prev=-L; p=$func_stripname_result ;;
7038 -R*) func_stripname_cnf '-R' '' "$p"; prev=-R; p=$func_stripname_result ;;
7039 -l*) func_stripname_cnf '-l' '' "$p"; prev=-l; p=$func_stripname_result ;;
7040 esac
7041 fi
7042 case $p in
7043 =*) func_stripname_cnf '=' '' "$p"; p=$lt_sysroot$func_stripname_result ;;
7044 esac
7045 if test "$pre_test_object_deps_done" = no; then
7046 case ${prev} in
7047 -L | -R)
7048 # Internal compiler library paths should come after those
7049 # provided the user. The postdeps already come after the
7050 # user supplied libs so there is no need to process them.
7051 if test -z "$_LT_TAGVAR(compiler_lib_search_path, $1)"; then
7052 _LT_TAGVAR(compiler_lib_search_path, $1)="${prev}${p}"
7053 else
7054 _LT_TAGVAR(compiler_lib_search_path, $1)="${_LT_TAGVAR(compiler_lib_search_path, $1)} ${prev}${p}"
7055 fi
7056 ;;
7057 # The "-l" case would never come before the object being
7058 # linked, so don't bother handling this case.
7059 esac
7060 else
7061 if test -z "$_LT_TAGVAR(postdeps, $1)"; then
7062 _LT_TAGVAR(postdeps, $1)="${prev}${p}"
7063 else
7064 _LT_TAGVAR(postdeps, $1)="${_LT_TAGVAR(postdeps, $1)} ${prev}${p}"
7065 fi
7066 fi
7067 prev=
7068 ;;
7069
7070 *.lto.$objext) ;; # Ignore GCC LTO objects
7071 *.$objext)
7072 # This assumes that the test object file only shows up
7073 # once in the compiler output.
7074 if test "$p" = "conftest.$objext"; then
7075 pre_test_object_deps_done=yes
7076 continue
7077 fi
7078
7079 if test "$pre_test_object_deps_done" = no; then
7080 if test -z "$_LT_TAGVAR(predep_objects, $1)"; then
7081 _LT_TAGVAR(predep_objects, $1)="$p"
7082 else
7083 _LT_TAGVAR(predep_objects, $1)="$_LT_TAGVAR(predep_objects, $1) $p"
7084 fi
7085 else
7086 if test -z "$_LT_TAGVAR(postdep_objects, $1)"; then
7087 _LT_TAGVAR(postdep_objects, $1)="$p"
7088 else
7089 _LT_TAGVAR(postdep_objects, $1)="$_LT_TAGVAR(postdep_objects, $1) $p"
7090 fi
7091 fi
7092 ;;
7093
7094 *) ;; # Ignore the rest.
7095
7096 esac
7097 done
7098
7099 # Clean up.
7100 rm -f a.out a.exe
7101else
7102 echo "libtool.m4: error: problem compiling $1 test program"
7103fi
7104
7105$RM -f confest.$objext
7106CFLAGS=$_lt_libdeps_save_CFLAGS
7107
7108# PORTME: override above test on systems where it is broken
7109m4_if([$1], [CXX],
7110[case $host_os in
7111interix[[3-9]]*)
7112 # Interix 3.5 installs completely hosed .la files for C++, so rather than
7113 # hack all around it, let's just trust "g++" to DTRT.
7114 _LT_TAGVAR(predep_objects,$1)=
7115 _LT_TAGVAR(postdep_objects,$1)=
7116 _LT_TAGVAR(postdeps,$1)=
7117 ;;
7118
7119linux*)
7120 case `$CC -V 2>&1 | sed 5q` in
7121 *Sun\ C*)
7122 # Sun C++ 5.9
7123
7124 # The more standards-conforming stlport4 library is
7125 # incompatible with the Cstd library. Avoid specifying
7126 # it if it's in CXXFLAGS. Ignore libCrun as
7127 # -library=stlport4 depends on it.
7128 case " $CXX $CXXFLAGS " in
7129 *" -library=stlport4 "*)
7130 solaris_use_stlport4=yes
7131 ;;
7132 esac
7133
7134 if test "$solaris_use_stlport4" != yes; then
7135 _LT_TAGVAR(postdeps,$1)='-library=Cstd -library=Crun'
7136 fi
7137 ;;
7138 esac
7139 ;;
7140
7141solaris*)
7142 case $cc_basename in
7143 CC* | sunCC*)
7144 # The more standards-conforming stlport4 library is
7145 # incompatible with the Cstd library. Avoid specifying
7146 # it if it's in CXXFLAGS. Ignore libCrun as
7147 # -library=stlport4 depends on it.
7148 case " $CXX $CXXFLAGS " in
7149 *" -library=stlport4 "*)
7150 solaris_use_stlport4=yes
7151 ;;
7152 esac
7153
7154 # Adding this requires a known-good setup of shared libraries for
7155 # Sun compiler versions before 5.6, else PIC objects from an old
7156 # archive will be linked into the output, leading to subtle bugs.
7157 if test "$solaris_use_stlport4" != yes; then
7158 _LT_TAGVAR(postdeps,$1)='-library=Cstd -library=Crun'
7159 fi
7160 ;;
7161 esac
7162 ;;
7163esac
7164])
7165
7166case " $_LT_TAGVAR(postdeps, $1) " in
7167*" -lc "*) _LT_TAGVAR(archive_cmds_need_lc, $1)=no ;;
7168esac
7169 _LT_TAGVAR(compiler_lib_search_dirs, $1)=
7170if test -n "${_LT_TAGVAR(compiler_lib_search_path, $1)}"; then
7171 _LT_TAGVAR(compiler_lib_search_dirs, $1)=`echo " ${_LT_TAGVAR(compiler_lib_search_path, $1)}" | ${SED} -e 's! -L! !g' -e 's!^ !!'`
7172fi
7173_LT_TAGDECL([], [compiler_lib_search_dirs], [1],
7174 [The directories searched by this compiler when creating a shared library])
7175_LT_TAGDECL([], [predep_objects], [1],
7176 [Dependencies to place before and after the objects being linked to
7177 create a shared library])
7178_LT_TAGDECL([], [postdep_objects], [1])
7179_LT_TAGDECL([], [predeps], [1])
7180_LT_TAGDECL([], [postdeps], [1])
7181_LT_TAGDECL([], [compiler_lib_search_path], [1],
7182 [The library search path used internally by the compiler when linking
7183 a shared library])
7184])# _LT_SYS_HIDDEN_LIBDEPS
7185
7186
7187# _LT_LANG_F77_CONFIG([TAG])
7188# --------------------------
7189# Ensure that the configuration variables for a Fortran 77 compiler are
7190# suitably defined. These variables are subsequently used by _LT_CONFIG
7191# to write the compiler configuration to `libtool'.
7192m4_defun([_LT_LANG_F77_CONFIG],
7193[AC_LANG_PUSH(Fortran 77)
7194if test -z "$F77" || test "X$F77" = "Xno"; then
7195 _lt_disable_F77=yes
7196fi
7197
7198_LT_TAGVAR(archive_cmds_need_lc, $1)=no
7199_LT_TAGVAR(allow_undefined_flag, $1)=
7200_LT_TAGVAR(always_export_symbols, $1)=no
7201_LT_TAGVAR(archive_expsym_cmds, $1)=
7202_LT_TAGVAR(export_dynamic_flag_spec, $1)=
7203_LT_TAGVAR(hardcode_direct, $1)=no
7204_LT_TAGVAR(hardcode_direct_absolute, $1)=no
7205_LT_TAGVAR(hardcode_libdir_flag_spec, $1)=
dabf4152
AM
7206_LT_TAGVAR(hardcode_libdir_separator, $1)=
7207_LT_TAGVAR(hardcode_minus_L, $1)=no
7208_LT_TAGVAR(hardcode_automatic, $1)=no
7209_LT_TAGVAR(inherit_rpath, $1)=no
7210_LT_TAGVAR(module_cmds, $1)=
7211_LT_TAGVAR(module_expsym_cmds, $1)=
7212_LT_TAGVAR(link_all_deplibs, $1)=unknown
7213_LT_TAGVAR(old_archive_cmds, $1)=$old_archive_cmds
7214_LT_TAGVAR(reload_flag, $1)=$reload_flag
7215_LT_TAGVAR(reload_cmds, $1)=$reload_cmds
7216_LT_TAGVAR(no_undefined_flag, $1)=
7217_LT_TAGVAR(whole_archive_flag_spec, $1)=
7218_LT_TAGVAR(enable_shared_with_static_runtimes, $1)=no
7219
7220# Source file extension for f77 test sources.
7221ac_ext=f
7222
7223# Object file extension for compiled f77 test sources.
7224objext=o
7225_LT_TAGVAR(objext, $1)=$objext
7226
7227# No sense in running all these tests if we already determined that
7228# the F77 compiler isn't working. Some variables (like enable_shared)
7229# are currently assumed to apply to all compilers on this platform,
7230# and will be corrupted by setting them based on a non-working compiler.
7231if test "$_lt_disable_F77" != yes; then
7232 # Code to be used in simple compile tests
7233 lt_simple_compile_test_code="\
7234 subroutine t
7235 return
7236 end
7237"
7238
7239 # Code to be used in simple link tests
7240 lt_simple_link_test_code="\
7241 program t
7242 end
7243"
7244
7245 # ltmain only uses $CC for tagged configurations so make sure $CC is set.
7246 _LT_TAG_COMPILER
7247
7248 # save warnings/boilerplate of simple test code
7249 _LT_COMPILER_BOILERPLATE
7250 _LT_LINKER_BOILERPLATE
7251
7252 # Allow CC to be a program name with arguments.
7253 lt_save_CC="$CC"
7254 lt_save_GCC=$GCC
7255 lt_save_CFLAGS=$CFLAGS
7256 CC=${F77-"f77"}
7257 CFLAGS=$FFLAGS
7258 compiler=$CC
7259 _LT_TAGVAR(compiler, $1)=$CC
7260 _LT_CC_BASENAME([$compiler])
7261 GCC=$G77
7262 if test -n "$compiler"; then
7263 AC_MSG_CHECKING([if libtool supports shared libraries])
7264 AC_MSG_RESULT([$can_build_shared])
7265
7266 AC_MSG_CHECKING([whether to build shared libraries])
7267 test "$can_build_shared" = "no" && enable_shared=no
7268
7269 # On AIX, shared libraries and static libraries use the same namespace, and
7270 # are all built from PIC.
7271 case $host_os in
7272 aix3*)
7273 test "$enable_shared" = yes && enable_static=no
7274 if test -n "$RANLIB"; then
7275 archive_cmds="$archive_cmds~\$RANLIB \$lib"
7276 postinstall_cmds='$RANLIB $lib'
7277 fi
7278 ;;
7279 aix[[4-9]]*)
7280 if test "$host_cpu" != ia64 && test "$aix_use_runtimelinking" = no ; then
7281 test "$enable_shared" = yes && enable_static=no
7282 fi
7283 ;;
7284 esac
7285 AC_MSG_RESULT([$enable_shared])
7286
7287 AC_MSG_CHECKING([whether to build static libraries])
7288 # Make sure either enable_shared or enable_static is yes.
7289 test "$enable_shared" = yes || enable_static=yes
7290 AC_MSG_RESULT([$enable_static])
7291
7292 _LT_TAGVAR(GCC, $1)="$G77"
7293 _LT_TAGVAR(LD, $1)="$LD"
7294
7295 ## CAVEAT EMPTOR:
7296 ## There is no encapsulation within the following macros, do not change
7297 ## the running order or otherwise move them around unless you know exactly
7298 ## what you are doing...
7299 _LT_COMPILER_PIC($1)
7300 _LT_COMPILER_C_O($1)
7301 _LT_COMPILER_FILE_LOCKS($1)
7302 _LT_LINKER_SHLIBS($1)
7303 _LT_SYS_DYNAMIC_LINKER($1)
7304 _LT_LINKER_HARDCODE_LIBPATH($1)
7305
7306 _LT_CONFIG($1)
7307 fi # test -n "$compiler"
7308
7309 GCC=$lt_save_GCC
7310 CC="$lt_save_CC"
7311 CFLAGS="$lt_save_CFLAGS"
7312fi # test "$_lt_disable_F77" != yes
7313
7314AC_LANG_POP
7315])# _LT_LANG_F77_CONFIG
7316
7317
7318# _LT_LANG_FC_CONFIG([TAG])
7319# -------------------------
7320# Ensure that the configuration variables for a Fortran compiler are
7321# suitably defined. These variables are subsequently used by _LT_CONFIG
7322# to write the compiler configuration to `libtool'.
7323m4_defun([_LT_LANG_FC_CONFIG],
7324[AC_LANG_PUSH(Fortran)
7325
7326if test -z "$FC" || test "X$FC" = "Xno"; then
7327 _lt_disable_FC=yes
7328fi
7329
7330_LT_TAGVAR(archive_cmds_need_lc, $1)=no
7331_LT_TAGVAR(allow_undefined_flag, $1)=
7332_LT_TAGVAR(always_export_symbols, $1)=no
7333_LT_TAGVAR(archive_expsym_cmds, $1)=
7334_LT_TAGVAR(export_dynamic_flag_spec, $1)=
7335_LT_TAGVAR(hardcode_direct, $1)=no
7336_LT_TAGVAR(hardcode_direct_absolute, $1)=no
7337_LT_TAGVAR(hardcode_libdir_flag_spec, $1)=
dabf4152
AM
7338_LT_TAGVAR(hardcode_libdir_separator, $1)=
7339_LT_TAGVAR(hardcode_minus_L, $1)=no
7340_LT_TAGVAR(hardcode_automatic, $1)=no
7341_LT_TAGVAR(inherit_rpath, $1)=no
7342_LT_TAGVAR(module_cmds, $1)=
7343_LT_TAGVAR(module_expsym_cmds, $1)=
7344_LT_TAGVAR(link_all_deplibs, $1)=unknown
7345_LT_TAGVAR(old_archive_cmds, $1)=$old_archive_cmds
7346_LT_TAGVAR(reload_flag, $1)=$reload_flag
7347_LT_TAGVAR(reload_cmds, $1)=$reload_cmds
7348_LT_TAGVAR(no_undefined_flag, $1)=
7349_LT_TAGVAR(whole_archive_flag_spec, $1)=
7350_LT_TAGVAR(enable_shared_with_static_runtimes, $1)=no
7351
7352# Source file extension for fc test sources.
7353ac_ext=${ac_fc_srcext-f}
7354
7355# Object file extension for compiled fc test sources.
7356objext=o
7357_LT_TAGVAR(objext, $1)=$objext
7358
7359# No sense in running all these tests if we already determined that
7360# the FC compiler isn't working. Some variables (like enable_shared)
7361# are currently assumed to apply to all compilers on this platform,
7362# and will be corrupted by setting them based on a non-working compiler.
7363if test "$_lt_disable_FC" != yes; then
7364 # Code to be used in simple compile tests
7365 lt_simple_compile_test_code="\
7366 subroutine t
7367 return
7368 end
7369"
7370
7371 # Code to be used in simple link tests
7372 lt_simple_link_test_code="\
7373 program t
7374 end
7375"
7376
7377 # ltmain only uses $CC for tagged configurations so make sure $CC is set.
7378 _LT_TAG_COMPILER
7379
7380 # save warnings/boilerplate of simple test code
7381 _LT_COMPILER_BOILERPLATE
7382 _LT_LINKER_BOILERPLATE
7383
7384 # Allow CC to be a program name with arguments.
7385 lt_save_CC="$CC"
7386 lt_save_GCC=$GCC
7387 lt_save_CFLAGS=$CFLAGS
7388 CC=${FC-"f95"}
7389 CFLAGS=$FCFLAGS
7390 compiler=$CC
7391 GCC=$ac_cv_fc_compiler_gnu
7392
7393 _LT_TAGVAR(compiler, $1)=$CC
7394 _LT_CC_BASENAME([$compiler])
7395
7396 if test -n "$compiler"; then
7397 AC_MSG_CHECKING([if libtool supports shared libraries])
7398 AC_MSG_RESULT([$can_build_shared])
7399
7400 AC_MSG_CHECKING([whether to build shared libraries])
7401 test "$can_build_shared" = "no" && enable_shared=no
7402
7403 # On AIX, shared libraries and static libraries use the same namespace, and
7404 # are all built from PIC.
7405 case $host_os in
7406 aix3*)
7407 test "$enable_shared" = yes && enable_static=no
7408 if test -n "$RANLIB"; then
7409 archive_cmds="$archive_cmds~\$RANLIB \$lib"
7410 postinstall_cmds='$RANLIB $lib'
7411 fi
7412 ;;
7413 aix[[4-9]]*)
7414 if test "$host_cpu" != ia64 && test "$aix_use_runtimelinking" = no ; then
7415 test "$enable_shared" = yes && enable_static=no
7416 fi
7417 ;;
7418 esac
7419 AC_MSG_RESULT([$enable_shared])
7420
7421 AC_MSG_CHECKING([whether to build static libraries])
7422 # Make sure either enable_shared or enable_static is yes.
7423 test "$enable_shared" = yes || enable_static=yes
7424 AC_MSG_RESULT([$enable_static])
7425
7426 _LT_TAGVAR(GCC, $1)="$ac_cv_fc_compiler_gnu"
7427 _LT_TAGVAR(LD, $1)="$LD"
7428
7429 ## CAVEAT EMPTOR:
7430 ## There is no encapsulation within the following macros, do not change
7431 ## the running order or otherwise move them around unless you know exactly
7432 ## what you are doing...
7433 _LT_SYS_HIDDEN_LIBDEPS($1)
7434 _LT_COMPILER_PIC($1)
7435 _LT_COMPILER_C_O($1)
7436 _LT_COMPILER_FILE_LOCKS($1)
7437 _LT_LINKER_SHLIBS($1)
7438 _LT_SYS_DYNAMIC_LINKER($1)
7439 _LT_LINKER_HARDCODE_LIBPATH($1)
7440
7441 _LT_CONFIG($1)
7442 fi # test -n "$compiler"
7443
7444 GCC=$lt_save_GCC
7445 CC=$lt_save_CC
7446 CFLAGS=$lt_save_CFLAGS
7447fi # test "$_lt_disable_FC" != yes
7448
7449AC_LANG_POP
7450])# _LT_LANG_FC_CONFIG
7451
7452
7453# _LT_LANG_GCJ_CONFIG([TAG])
7454# --------------------------
7455# Ensure that the configuration variables for the GNU Java Compiler compiler
7456# are suitably defined. These variables are subsequently used by _LT_CONFIG
7457# to write the compiler configuration to `libtool'.
7458m4_defun([_LT_LANG_GCJ_CONFIG],
7459[AC_REQUIRE([LT_PROG_GCJ])dnl
7460AC_LANG_SAVE
7461
7462# Source file extension for Java test sources.
7463ac_ext=java
7464
7465# Object file extension for compiled Java test sources.
7466objext=o
7467_LT_TAGVAR(objext, $1)=$objext
7468
7469# Code to be used in simple compile tests
7470lt_simple_compile_test_code="class foo {}"
7471
7472# Code to be used in simple link tests
7473lt_simple_link_test_code='public class conftest { public static void main(String[[]] argv) {}; }'
7474
7475# ltmain only uses $CC for tagged configurations so make sure $CC is set.
7476_LT_TAG_COMPILER
7477
7478# save warnings/boilerplate of simple test code
7479_LT_COMPILER_BOILERPLATE
7480_LT_LINKER_BOILERPLATE
7481
7482# Allow CC to be a program name with arguments.
7483lt_save_CC=$CC
7484lt_save_CFLAGS=$CFLAGS
7485lt_save_GCC=$GCC
7486GCC=yes
7487CC=${GCJ-"gcj"}
7488CFLAGS=$GCJFLAGS
7489compiler=$CC
7490_LT_TAGVAR(compiler, $1)=$CC
7491_LT_TAGVAR(LD, $1)="$LD"
7492_LT_CC_BASENAME([$compiler])
7493
7494# GCJ did not exist at the time GCC didn't implicitly link libc in.
7495_LT_TAGVAR(archive_cmds_need_lc, $1)=no
7496
7497_LT_TAGVAR(old_archive_cmds, $1)=$old_archive_cmds
7498_LT_TAGVAR(reload_flag, $1)=$reload_flag
7499_LT_TAGVAR(reload_cmds, $1)=$reload_cmds
7500
7501if test -n "$compiler"; then
7502 _LT_COMPILER_NO_RTTI($1)
7503 _LT_COMPILER_PIC($1)
7504 _LT_COMPILER_C_O($1)
7505 _LT_COMPILER_FILE_LOCKS($1)
7506 _LT_LINKER_SHLIBS($1)
7507 _LT_LINKER_HARDCODE_LIBPATH($1)
7508
7509 _LT_CONFIG($1)
7510fi
7511
7512AC_LANG_RESTORE
7513
7514GCC=$lt_save_GCC
7515CC=$lt_save_CC
7516CFLAGS=$lt_save_CFLAGS
7517])# _LT_LANG_GCJ_CONFIG
7518
7519
5670ec6e
AM
7520# _LT_LANG_GO_CONFIG([TAG])
7521# --------------------------
7522# Ensure that the configuration variables for the GNU Go compiler
7523# are suitably defined. These variables are subsequently used by _LT_CONFIG
7524# to write the compiler configuration to `libtool'.
7525m4_defun([_LT_LANG_GO_CONFIG],
7526[AC_REQUIRE([LT_PROG_GO])dnl
7527AC_LANG_SAVE
7528
7529# Source file extension for Go test sources.
7530ac_ext=go
7531
7532# Object file extension for compiled Go test sources.
7533objext=o
7534_LT_TAGVAR(objext, $1)=$objext
7535
7536# Code to be used in simple compile tests
7537lt_simple_compile_test_code="package main; func main() { }"
7538
7539# Code to be used in simple link tests
7540lt_simple_link_test_code='package main; func main() { }'
7541
7542# ltmain only uses $CC for tagged configurations so make sure $CC is set.
7543_LT_TAG_COMPILER
7544
7545# save warnings/boilerplate of simple test code
7546_LT_COMPILER_BOILERPLATE
7547_LT_LINKER_BOILERPLATE
7548
7549# Allow CC to be a program name with arguments.
7550lt_save_CC=$CC
7551lt_save_CFLAGS=$CFLAGS
7552lt_save_GCC=$GCC
7553GCC=yes
7554CC=${GOC-"gccgo"}
7555CFLAGS=$GOFLAGS
7556compiler=$CC
7557_LT_TAGVAR(compiler, $1)=$CC
7558_LT_TAGVAR(LD, $1)="$LD"
7559_LT_CC_BASENAME([$compiler])
7560
7561# Go did not exist at the time GCC didn't implicitly link libc in.
7562_LT_TAGVAR(archive_cmds_need_lc, $1)=no
7563
7564_LT_TAGVAR(old_archive_cmds, $1)=$old_archive_cmds
7565_LT_TAGVAR(reload_flag, $1)=$reload_flag
7566_LT_TAGVAR(reload_cmds, $1)=$reload_cmds
7567
7568if test -n "$compiler"; then
7569 _LT_COMPILER_NO_RTTI($1)
7570 _LT_COMPILER_PIC($1)
7571 _LT_COMPILER_C_O($1)
7572 _LT_COMPILER_FILE_LOCKS($1)
7573 _LT_LINKER_SHLIBS($1)
7574 _LT_LINKER_HARDCODE_LIBPATH($1)
7575
7576 _LT_CONFIG($1)
7577fi
7578
7579AC_LANG_RESTORE
7580
7581GCC=$lt_save_GCC
7582CC=$lt_save_CC
7583CFLAGS=$lt_save_CFLAGS
7584])# _LT_LANG_GO_CONFIG
7585
7586
dabf4152
AM
7587# _LT_LANG_RC_CONFIG([TAG])
7588# -------------------------
7589# Ensure that the configuration variables for the Windows resource compiler
7590# are suitably defined. These variables are subsequently used by _LT_CONFIG
7591# to write the compiler configuration to `libtool'.
7592m4_defun([_LT_LANG_RC_CONFIG],
7593[AC_REQUIRE([LT_PROG_RC])dnl
7594AC_LANG_SAVE
7595
7596# Source file extension for RC test sources.
7597ac_ext=rc
7598
7599# Object file extension for compiled RC test sources.
7600objext=o
7601_LT_TAGVAR(objext, $1)=$objext
7602
7603# Code to be used in simple compile tests
7604lt_simple_compile_test_code='sample MENU { MENUITEM "&Soup", 100, CHECKED }'
7605
7606# Code to be used in simple link tests
7607lt_simple_link_test_code="$lt_simple_compile_test_code"
7608
7609# ltmain only uses $CC for tagged configurations so make sure $CC is set.
7610_LT_TAG_COMPILER
7611
7612# save warnings/boilerplate of simple test code
7613_LT_COMPILER_BOILERPLATE
7614_LT_LINKER_BOILERPLATE
7615
7616# Allow CC to be a program name with arguments.
7617lt_save_CC="$CC"
7618lt_save_CFLAGS=$CFLAGS
7619lt_save_GCC=$GCC
7620GCC=
7621CC=${RC-"windres"}
7622CFLAGS=
7623compiler=$CC
7624_LT_TAGVAR(compiler, $1)=$CC
7625_LT_CC_BASENAME([$compiler])
7626_LT_TAGVAR(lt_cv_prog_compiler_c_o, $1)=yes
7627
7628if test -n "$compiler"; then
7629 :
7630 _LT_CONFIG($1)
7631fi
7632
7633GCC=$lt_save_GCC
7634AC_LANG_RESTORE
7635CC=$lt_save_CC
7636CFLAGS=$lt_save_CFLAGS
7637])# _LT_LANG_RC_CONFIG
7638
7639
7640# LT_PROG_GCJ
7641# -----------
7642AC_DEFUN([LT_PROG_GCJ],
7643[m4_ifdef([AC_PROG_GCJ], [AC_PROG_GCJ],
7644 [m4_ifdef([A][M_PROG_GCJ], [A][M_PROG_GCJ],
7645 [AC_CHECK_TOOL(GCJ, gcj,)
7646 test "x${GCJFLAGS+set}" = xset || GCJFLAGS="-g -O2"
7647 AC_SUBST(GCJFLAGS)])])[]dnl
7648])
7649
7650# Old name:
7651AU_ALIAS([LT_AC_PROG_GCJ], [LT_PROG_GCJ])
7652dnl aclocal-1.4 backwards compatibility:
7653dnl AC_DEFUN([LT_AC_PROG_GCJ], [])
7654
7655
5670ec6e
AM
7656# LT_PROG_GO
7657# ----------
7658AC_DEFUN([LT_PROG_GO],
7659[AC_CHECK_TOOL(GOC, gccgo,)
7660])
7661
7662
dabf4152
AM
7663# LT_PROG_RC
7664# ----------
7665AC_DEFUN([LT_PROG_RC],
7666[AC_CHECK_TOOL(RC, windres,)
7667])
7668
7669# Old name:
7670AU_ALIAS([LT_AC_PROG_RC], [LT_PROG_RC])
7671dnl aclocal-1.4 backwards compatibility:
7672dnl AC_DEFUN([LT_AC_PROG_RC], [])
7673
7674
7675# _LT_DECL_EGREP
7676# --------------
7677# If we don't have a new enough Autoconf to choose the best grep
7678# available, choose the one first in the user's PATH.
7679m4_defun([_LT_DECL_EGREP],
7680[AC_REQUIRE([AC_PROG_EGREP])dnl
7681AC_REQUIRE([AC_PROG_FGREP])dnl
7682test -z "$GREP" && GREP=grep
7683_LT_DECL([], [GREP], [1], [A grep program that handles long lines])
7684_LT_DECL([], [EGREP], [1], [An ERE matcher])
7685_LT_DECL([], [FGREP], [1], [A literal string matcher])
7686dnl Non-bleeding-edge autoconf doesn't subst GREP, so do it here too
7687AC_SUBST([GREP])
7688])
7689
7690
7691# _LT_DECL_OBJDUMP
7692# --------------
7693# If we don't have a new enough Autoconf to choose the best objdump
7694# available, choose the one first in the user's PATH.
7695m4_defun([_LT_DECL_OBJDUMP],
7696[AC_CHECK_TOOL(OBJDUMP, objdump, false)
7697test -z "$OBJDUMP" && OBJDUMP=objdump
7698_LT_DECL([], [OBJDUMP], [1], [An object symbol dumper])
7699AC_SUBST([OBJDUMP])
7700])
7701
7702# _LT_DECL_DLLTOOL
7703# ----------------
7704# Ensure DLLTOOL variable is set.
7705m4_defun([_LT_DECL_DLLTOOL],
7706[AC_CHECK_TOOL(DLLTOOL, dlltool, false)
7707test -z "$DLLTOOL" && DLLTOOL=dlltool
7708_LT_DECL([], [DLLTOOL], [1], [DLL creation program])
7709AC_SUBST([DLLTOOL])
7710])
7711
7712# _LT_DECL_SED
7713# ------------
7714# Check for a fully-functional sed program, that truncates
7715# as few characters as possible. Prefer GNU sed if found.
7716m4_defun([_LT_DECL_SED],
7717[AC_PROG_SED
7718test -z "$SED" && SED=sed
7719Xsed="$SED -e 1s/^X//"
7720_LT_DECL([], [SED], [1], [A sed program that does not truncate output])
7721_LT_DECL([], [Xsed], ["\$SED -e 1s/^X//"],
7722 [Sed that helps us avoid accidentally triggering echo(1) options like -n])
7723])# _LT_DECL_SED
7724
7725m4_ifndef([AC_PROG_SED], [
7726# NOTE: This macro has been submitted for inclusion into #
7727# GNU Autoconf as AC_PROG_SED. When it is available in #
7728# a released version of Autoconf we should remove this #
7729# macro and use it instead. #
7730
7731m4_defun([AC_PROG_SED],
7732[AC_MSG_CHECKING([for a sed that does not truncate output])
7733AC_CACHE_VAL(lt_cv_path_SED,
7734[# Loop through the user's path and test for sed and gsed.
7735# Then use that list of sed's as ones to test for truncation.
7736as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
7737for as_dir in $PATH
7738do
7739 IFS=$as_save_IFS
7740 test -z "$as_dir" && as_dir=.
7741 for lt_ac_prog in sed gsed; do
7742 for ac_exec_ext in '' $ac_executable_extensions; do
7743 if $as_executable_p "$as_dir/$lt_ac_prog$ac_exec_ext"; then
7744 lt_ac_sed_list="$lt_ac_sed_list $as_dir/$lt_ac_prog$ac_exec_ext"
7745 fi
7746 done
7747 done
7748done
7749IFS=$as_save_IFS
7750lt_ac_max=0
7751lt_ac_count=0
7752# Add /usr/xpg4/bin/sed as it is typically found on Solaris
7753# along with /bin/sed that truncates output.
7754for lt_ac_sed in $lt_ac_sed_list /usr/xpg4/bin/sed; do
7755 test ! -f $lt_ac_sed && continue
7756 cat /dev/null > conftest.in
7757 lt_ac_count=0
7758 echo $ECHO_N "0123456789$ECHO_C" >conftest.in
7759 # Check for GNU sed and select it if it is found.
7760 if "$lt_ac_sed" --version 2>&1 < /dev/null | grep 'GNU' > /dev/null; then
7761 lt_cv_path_SED=$lt_ac_sed
7762 break
7763 fi
7764 while true; do
7765 cat conftest.in conftest.in >conftest.tmp
7766 mv conftest.tmp conftest.in
7767 cp conftest.in conftest.nl
7768 echo >>conftest.nl
7769 $lt_ac_sed -e 's/a$//' < conftest.nl >conftest.out || break
7770 cmp -s conftest.out conftest.nl || break
7771 # 10000 chars as input seems more than enough
7772 test $lt_ac_count -gt 10 && break
7773 lt_ac_count=`expr $lt_ac_count + 1`
7774 if test $lt_ac_count -gt $lt_ac_max; then
7775 lt_ac_max=$lt_ac_count
7776 lt_cv_path_SED=$lt_ac_sed
7777 fi
7778 done
7779done
7780])
7781SED=$lt_cv_path_SED
7782AC_SUBST([SED])
7783AC_MSG_RESULT([$SED])
7784])#AC_PROG_SED
7785])#m4_ifndef
7786
7787# Old name:
7788AU_ALIAS([LT_AC_PROG_SED], [AC_PROG_SED])
7789dnl aclocal-1.4 backwards compatibility:
7790dnl AC_DEFUN([LT_AC_PROG_SED], [])
7791
7792
7793# _LT_CHECK_SHELL_FEATURES
7794# ------------------------
7795# Find out whether the shell is Bourne or XSI compatible,
7796# or has some other useful features.
7797m4_defun([_LT_CHECK_SHELL_FEATURES],
7798[AC_MSG_CHECKING([whether the shell understands some XSI constructs])
7799# Try some XSI features
7800xsi_shell=no
7801( _lt_dummy="a/b/c"
7802 test "${_lt_dummy##*/},${_lt_dummy%/*},${_lt_dummy#??}"${_lt_dummy%"$_lt_dummy"}, \
7803 = c,a/b,b/c, \
7804 && eval 'test $(( 1 + 1 )) -eq 2 \
7805 && test "${#_lt_dummy}" -eq 5' ) >/dev/null 2>&1 \
7806 && xsi_shell=yes
7807AC_MSG_RESULT([$xsi_shell])
7808_LT_CONFIG_LIBTOOL_INIT([xsi_shell='$xsi_shell'])
7809
7810AC_MSG_CHECKING([whether the shell understands "+="])
7811lt_shell_append=no
7812( foo=bar; set foo baz; eval "$[1]+=\$[2]" && test "$foo" = barbaz ) \
7813 >/dev/null 2>&1 \
7814 && lt_shell_append=yes
7815AC_MSG_RESULT([$lt_shell_append])
7816_LT_CONFIG_LIBTOOL_INIT([lt_shell_append='$lt_shell_append'])
7817
7818if ( (MAIL=60; unset MAIL) || exit) >/dev/null 2>&1; then
7819 lt_unset=unset
7820else
7821 lt_unset=false
7822fi
7823_LT_DECL([], [lt_unset], [0], [whether the shell understands "unset"])dnl
7824
7825# test EBCDIC or ASCII
7826case `echo X|tr X '\101'` in
7827 A) # ASCII based system
7828 # \n is not interpreted correctly by Solaris 8 /usr/ucb/tr
7829 lt_SP2NL='tr \040 \012'
7830 lt_NL2SP='tr \015\012 \040\040'
7831 ;;
7832 *) # EBCDIC based system
7833 lt_SP2NL='tr \100 \n'
7834 lt_NL2SP='tr \r\n \100\100'
7835 ;;
7836esac
7837_LT_DECL([SP2NL], [lt_SP2NL], [1], [turn spaces into newlines])dnl
7838_LT_DECL([NL2SP], [lt_NL2SP], [1], [turn newlines into spaces])dnl
7839])# _LT_CHECK_SHELL_FEATURES
7840
7841
7842# _LT_PROG_FUNCTION_REPLACE (FUNCNAME, REPLACEMENT-BODY)
7843# ------------------------------------------------------
7844# In `$cfgfile', look for function FUNCNAME delimited by `^FUNCNAME ()$' and
7845# '^} FUNCNAME ', and replace its body with REPLACEMENT-BODY.
7846m4_defun([_LT_PROG_FUNCTION_REPLACE],
7847[dnl {
7848sed -e '/^$1 ()$/,/^} # $1 /c\
7849$1 ()\
7850{\
7851m4_bpatsubsts([$2], [$], [\\], [^\([ ]\)], [\\\1])
7852} # Extended-shell $1 implementation' "$cfgfile" > $cfgfile.tmp \
7853 && mv -f "$cfgfile.tmp" "$cfgfile" \
7854 || (rm -f "$cfgfile" && cp "$cfgfile.tmp" "$cfgfile" && rm -f "$cfgfile.tmp")
7855test 0 -eq $? || _lt_function_replace_fail=:
7856])
7857
7858
7859# _LT_PROG_REPLACE_SHELLFNS
7860# -------------------------
7861# Replace existing portable implementations of several shell functions with
7862# equivalent extended shell implementations where those features are available..
7863m4_defun([_LT_PROG_REPLACE_SHELLFNS],
7864[if test x"$xsi_shell" = xyes; then
7865 _LT_PROG_FUNCTION_REPLACE([func_dirname], [dnl
7866 case ${1} in
7867 */*) func_dirname_result="${1%/*}${2}" ;;
7868 * ) func_dirname_result="${3}" ;;
7869 esac])
7870
7871 _LT_PROG_FUNCTION_REPLACE([func_basename], [dnl
7872 func_basename_result="${1##*/}"])
7873
7874 _LT_PROG_FUNCTION_REPLACE([func_dirname_and_basename], [dnl
7875 case ${1} in
7876 */*) func_dirname_result="${1%/*}${2}" ;;
7877 * ) func_dirname_result="${3}" ;;
7878 esac
7879 func_basename_result="${1##*/}"])
7880
7881 _LT_PROG_FUNCTION_REPLACE([func_stripname], [dnl
7882 # pdksh 5.2.14 does not do ${X%$Y} correctly if both X and Y are
7883 # positional parameters, so assign one to ordinary parameter first.
7884 func_stripname_result=${3}
7885 func_stripname_result=${func_stripname_result#"${1}"}
7886 func_stripname_result=${func_stripname_result%"${2}"}])
7887
7888 _LT_PROG_FUNCTION_REPLACE([func_split_long_opt], [dnl
7889 func_split_long_opt_name=${1%%=*}
7890 func_split_long_opt_arg=${1#*=}])
7891
7892 _LT_PROG_FUNCTION_REPLACE([func_split_short_opt], [dnl
7893 func_split_short_opt_arg=${1#??}
7894 func_split_short_opt_name=${1%"$func_split_short_opt_arg"}])
7895
7896 _LT_PROG_FUNCTION_REPLACE([func_lo2o], [dnl
7897 case ${1} in
7898 *.lo) func_lo2o_result=${1%.lo}.${objext} ;;
7899 *) func_lo2o_result=${1} ;;
7900 esac])
7901
7902 _LT_PROG_FUNCTION_REPLACE([func_xform], [ func_xform_result=${1%.*}.lo])
7903
7904 _LT_PROG_FUNCTION_REPLACE([func_arith], [ func_arith_result=$(( $[*] ))])
7905
7906 _LT_PROG_FUNCTION_REPLACE([func_len], [ func_len_result=${#1}])
7907fi
7908
7909if test x"$lt_shell_append" = xyes; then
7910 _LT_PROG_FUNCTION_REPLACE([func_append], [ eval "${1}+=\\${2}"])
7911
7912 _LT_PROG_FUNCTION_REPLACE([func_append_quoted], [dnl
7913 func_quote_for_eval "${2}"
7914dnl m4 expansion turns \\\\ into \\, and then the shell eval turns that into \
7915 eval "${1}+=\\\\ \\$func_quote_for_eval_result"])
7916
7917 # Save a `func_append' function call where possible by direct use of '+='
7918 sed -e 's%func_append \([[a-zA-Z_]]\{1,\}\) "%\1+="%g' $cfgfile > $cfgfile.tmp \
7919 && mv -f "$cfgfile.tmp" "$cfgfile" \
7920 || (rm -f "$cfgfile" && cp "$cfgfile.tmp" "$cfgfile" && rm -f "$cfgfile.tmp")
7921 test 0 -eq $? || _lt_function_replace_fail=:
7922else
7923 # Save a `func_append' function call even when '+=' is not available
7924 sed -e 's%func_append \([[a-zA-Z_]]\{1,\}\) "%\1="$\1%g' $cfgfile > $cfgfile.tmp \
7925 && mv -f "$cfgfile.tmp" "$cfgfile" \
7926 || (rm -f "$cfgfile" && cp "$cfgfile.tmp" "$cfgfile" && rm -f "$cfgfile.tmp")
7927 test 0 -eq $? || _lt_function_replace_fail=:
7928fi
7929
7930if test x"$_lt_function_replace_fail" = x":"; then
7931 AC_MSG_WARN([Unable to substitute extended shell functions in $ofile])
7932fi
7933])
7934
7935# _LT_PATH_CONVERSION_FUNCTIONS
7936# -----------------------------
7937# Determine which file name conversion functions should be used by
7938# func_to_host_file (and, implicitly, by func_to_host_path). These are needed
7939# for certain cross-compile configurations and native mingw.
7940m4_defun([_LT_PATH_CONVERSION_FUNCTIONS],
7941[AC_REQUIRE([AC_CANONICAL_HOST])dnl
7942AC_REQUIRE([AC_CANONICAL_BUILD])dnl
7943AC_MSG_CHECKING([how to convert $build file names to $host format])
7944AC_CACHE_VAL(lt_cv_to_host_file_cmd,
7945[case $host in
7946 *-*-mingw* )
7947 case $build in
7948 *-*-mingw* ) # actually msys
7949 lt_cv_to_host_file_cmd=func_convert_file_msys_to_w32
7950 ;;
7951 *-*-cygwin* )
7952 lt_cv_to_host_file_cmd=func_convert_file_cygwin_to_w32
7953 ;;
7954 * ) # otherwise, assume *nix
7955 lt_cv_to_host_file_cmd=func_convert_file_nix_to_w32
7956 ;;
7957 esac
7958 ;;
7959 *-*-cygwin* )
7960 case $build in
7961 *-*-mingw* ) # actually msys
7962 lt_cv_to_host_file_cmd=func_convert_file_msys_to_cygwin
7963 ;;
7964 *-*-cygwin* )
7965 lt_cv_to_host_file_cmd=func_convert_file_noop
7966 ;;
7967 * ) # otherwise, assume *nix
7968 lt_cv_to_host_file_cmd=func_convert_file_nix_to_cygwin
7969 ;;
7970 esac
7971 ;;
7972 * ) # unhandled hosts (and "normal" native builds)
7973 lt_cv_to_host_file_cmd=func_convert_file_noop
7974 ;;
7975esac
7976])
7977to_host_file_cmd=$lt_cv_to_host_file_cmd
7978AC_MSG_RESULT([$lt_cv_to_host_file_cmd])
7979_LT_DECL([to_host_file_cmd], [lt_cv_to_host_file_cmd],
7980 [0], [convert $build file names to $host format])dnl
7981
7982AC_MSG_CHECKING([how to convert $build file names to toolchain format])
7983AC_CACHE_VAL(lt_cv_to_tool_file_cmd,
7984[#assume ordinary cross tools, or native build.
7985lt_cv_to_tool_file_cmd=func_convert_file_noop
7986case $host in
7987 *-*-mingw* )
7988 case $build in
7989 *-*-mingw* ) # actually msys
7990 lt_cv_to_tool_file_cmd=func_convert_file_msys_to_w32
7991 ;;
7992 esac
7993 ;;
7994esac
7995])
7996to_tool_file_cmd=$lt_cv_to_tool_file_cmd
7997AC_MSG_RESULT([$lt_cv_to_tool_file_cmd])
7998_LT_DECL([to_tool_file_cmd], [lt_cv_to_tool_file_cmd],
7999 [0], [convert $build files to toolchain format])dnl
8000])# _LT_PATH_CONVERSION_FUNCTIONS
8001
8002# Helper functions for option handling. -*- Autoconf -*-
8003#
8004# Copyright (C) 2004, 2005, 2007, 2008, 2009 Free Software Foundation,
8005# Inc.
8006# Written by Gary V. Vaughan, 2004
8007#
8008# This file is free software; the Free Software Foundation gives
8009# unlimited permission to copy and/or distribute it, with or without
8010# modifications, as long as this notice is preserved.
8011
8012# serial 7 ltoptions.m4
8013
8014# This is to help aclocal find these macros, as it can't see m4_define.
8015AC_DEFUN([LTOPTIONS_VERSION], [m4_if([1])])
8016
8017
8018# _LT_MANGLE_OPTION(MACRO-NAME, OPTION-NAME)
8019# ------------------------------------------
8020m4_define([_LT_MANGLE_OPTION],
8021[[_LT_OPTION_]m4_bpatsubst($1__$2, [[^a-zA-Z0-9_]], [_])])
8022
8023
8024# _LT_SET_OPTION(MACRO-NAME, OPTION-NAME)
8025# ---------------------------------------
8026# Set option OPTION-NAME for macro MACRO-NAME, and if there is a
8027# matching handler defined, dispatch to it. Other OPTION-NAMEs are
8028# saved as a flag.
8029m4_define([_LT_SET_OPTION],
8030[m4_define(_LT_MANGLE_OPTION([$1], [$2]))dnl
8031m4_ifdef(_LT_MANGLE_DEFUN([$1], [$2]),
8032 _LT_MANGLE_DEFUN([$1], [$2]),
8033 [m4_warning([Unknown $1 option `$2'])])[]dnl
8034])
8035
8036
8037# _LT_IF_OPTION(MACRO-NAME, OPTION-NAME, IF-SET, [IF-NOT-SET])
8038# ------------------------------------------------------------
8039# Execute IF-SET if OPTION is set, IF-NOT-SET otherwise.
8040m4_define([_LT_IF_OPTION],
8041[m4_ifdef(_LT_MANGLE_OPTION([$1], [$2]), [$3], [$4])])
8042
8043
8044# _LT_UNLESS_OPTIONS(MACRO-NAME, OPTION-LIST, IF-NOT-SET)
8045# -------------------------------------------------------
8046# Execute IF-NOT-SET unless all options in OPTION-LIST for MACRO-NAME
8047# are set.
8048m4_define([_LT_UNLESS_OPTIONS],
8049[m4_foreach([_LT_Option], m4_split(m4_normalize([$2])),
8050 [m4_ifdef(_LT_MANGLE_OPTION([$1], _LT_Option),
8051 [m4_define([$0_found])])])[]dnl
8052m4_ifdef([$0_found], [m4_undefine([$0_found])], [$3
8053])[]dnl
8054])
8055
8056
8057# _LT_SET_OPTIONS(MACRO-NAME, OPTION-LIST)
8058# ----------------------------------------
8059# OPTION-LIST is a space-separated list of Libtool options associated
8060# with MACRO-NAME. If any OPTION has a matching handler declared with
8061# LT_OPTION_DEFINE, dispatch to that macro; otherwise complain about
8062# the unknown option and exit.
8063m4_defun([_LT_SET_OPTIONS],
8064[# Set options
8065m4_foreach([_LT_Option], m4_split(m4_normalize([$2])),
8066 [_LT_SET_OPTION([$1], _LT_Option)])
8067
8068m4_if([$1],[LT_INIT],[
8069 dnl
8070 dnl Simply set some default values (i.e off) if boolean options were not
8071 dnl specified:
8072 _LT_UNLESS_OPTIONS([LT_INIT], [dlopen], [enable_dlopen=no
8073 ])
8074 _LT_UNLESS_OPTIONS([LT_INIT], [win32-dll], [enable_win32_dll=no
8075 ])
8076 dnl
8077 dnl If no reference was made to various pairs of opposing options, then
8078 dnl we run the default mode handler for the pair. For example, if neither
8079 dnl `shared' nor `disable-shared' was passed, we enable building of shared
8080 dnl archives by default:
8081 _LT_UNLESS_OPTIONS([LT_INIT], [shared disable-shared], [_LT_ENABLE_SHARED])
8082 _LT_UNLESS_OPTIONS([LT_INIT], [static disable-static], [_LT_ENABLE_STATIC])
8083 _LT_UNLESS_OPTIONS([LT_INIT], [pic-only no-pic], [_LT_WITH_PIC])
8084 _LT_UNLESS_OPTIONS([LT_INIT], [fast-install disable-fast-install],
8085 [_LT_ENABLE_FAST_INSTALL])
8086 ])
8087])# _LT_SET_OPTIONS
8088
8089
8090
8091# _LT_MANGLE_DEFUN(MACRO-NAME, OPTION-NAME)
8092# -----------------------------------------
8093m4_define([_LT_MANGLE_DEFUN],
8094[[_LT_OPTION_DEFUN_]m4_bpatsubst(m4_toupper([$1__$2]), [[^A-Z0-9_]], [_])])
8095
8096
8097# LT_OPTION_DEFINE(MACRO-NAME, OPTION-NAME, CODE)
8098# -----------------------------------------------
8099m4_define([LT_OPTION_DEFINE],
8100[m4_define(_LT_MANGLE_DEFUN([$1], [$2]), [$3])[]dnl
8101])# LT_OPTION_DEFINE
8102
8103
8104# dlopen
8105# ------
8106LT_OPTION_DEFINE([LT_INIT], [dlopen], [enable_dlopen=yes
8107])
8108
8109AU_DEFUN([AC_LIBTOOL_DLOPEN],
8110[_LT_SET_OPTION([LT_INIT], [dlopen])
8111AC_DIAGNOSE([obsolete],
8112[$0: Remove this warning and the call to _LT_SET_OPTION when you
8113put the `dlopen' option into LT_INIT's first parameter.])
8114])
8115
8116dnl aclocal-1.4 backwards compatibility:
8117dnl AC_DEFUN([AC_LIBTOOL_DLOPEN], [])
8118
8119
8120# win32-dll
8121# ---------
8122# Declare package support for building win32 dll's.
8123LT_OPTION_DEFINE([LT_INIT], [win32-dll],
8124[enable_win32_dll=yes
8125
8126case $host in
8127*-*-cygwin* | *-*-mingw* | *-*-pw32* | *-*-cegcc*)
8128 AC_CHECK_TOOL(AS, as, false)
8129 AC_CHECK_TOOL(DLLTOOL, dlltool, false)
8130 AC_CHECK_TOOL(OBJDUMP, objdump, false)
8131 ;;
8132esac
8133
8134test -z "$AS" && AS=as
8135_LT_DECL([], [AS], [1], [Assembler program])dnl
8136
8137test -z "$DLLTOOL" && DLLTOOL=dlltool
8138_LT_DECL([], [DLLTOOL], [1], [DLL creation program])dnl
8139
8140test -z "$OBJDUMP" && OBJDUMP=objdump
8141_LT_DECL([], [OBJDUMP], [1], [Object dumper program])dnl
8142])# win32-dll
8143
8144AU_DEFUN([AC_LIBTOOL_WIN32_DLL],
8145[AC_REQUIRE([AC_CANONICAL_HOST])dnl
8146_LT_SET_OPTION([LT_INIT], [win32-dll])
8147AC_DIAGNOSE([obsolete],
8148[$0: Remove this warning and the call to _LT_SET_OPTION when you
8149put the `win32-dll' option into LT_INIT's first parameter.])
8150])
8151
8152dnl aclocal-1.4 backwards compatibility:
8153dnl AC_DEFUN([AC_LIBTOOL_WIN32_DLL], [])
8154
8155
8156# _LT_ENABLE_SHARED([DEFAULT])
8157# ----------------------------
8158# implement the --enable-shared flag, and supports the `shared' and
8159# `disable-shared' LT_INIT options.
8160# DEFAULT is either `yes' or `no'. If omitted, it defaults to `yes'.
8161m4_define([_LT_ENABLE_SHARED],
8162[m4_define([_LT_ENABLE_SHARED_DEFAULT], [m4_if($1, no, no, yes)])dnl
8163AC_ARG_ENABLE([shared],
8164 [AS_HELP_STRING([--enable-shared@<:@=PKGS@:>@],
8165 [build shared libraries @<:@default=]_LT_ENABLE_SHARED_DEFAULT[@:>@])],
8166 [p=${PACKAGE-default}
8167 case $enableval in
8168 yes) enable_shared=yes ;;
8169 no) enable_shared=no ;;
8170 *)
8171 enable_shared=no
8172 # Look at the argument we got. We use all the common list separators.
8173 lt_save_ifs="$IFS"; IFS="${IFS}$PATH_SEPARATOR,"
8174 for pkg in $enableval; do
8175 IFS="$lt_save_ifs"
8176 if test "X$pkg" = "X$p"; then
8177 enable_shared=yes
8178 fi
8179 done
8180 IFS="$lt_save_ifs"
8181 ;;
8182 esac],
8183 [enable_shared=]_LT_ENABLE_SHARED_DEFAULT)
8184
8185 _LT_DECL([build_libtool_libs], [enable_shared], [0],
8186 [Whether or not to build shared libraries])
8187])# _LT_ENABLE_SHARED
8188
8189LT_OPTION_DEFINE([LT_INIT], [shared], [_LT_ENABLE_SHARED([yes])])
8190LT_OPTION_DEFINE([LT_INIT], [disable-shared], [_LT_ENABLE_SHARED([no])])
8191
8192# Old names:
8193AC_DEFUN([AC_ENABLE_SHARED],
8194[_LT_SET_OPTION([LT_INIT], m4_if([$1], [no], [disable-])[shared])
8195])
8196
8197AC_DEFUN([AC_DISABLE_SHARED],
8198[_LT_SET_OPTION([LT_INIT], [disable-shared])
8199])
8200
8201AU_DEFUN([AM_ENABLE_SHARED], [AC_ENABLE_SHARED($@)])
8202AU_DEFUN([AM_DISABLE_SHARED], [AC_DISABLE_SHARED($@)])
8203
8204dnl aclocal-1.4 backwards compatibility:
8205dnl AC_DEFUN([AM_ENABLE_SHARED], [])
8206dnl AC_DEFUN([AM_DISABLE_SHARED], [])
8207
8208
8209
8210# _LT_ENABLE_STATIC([DEFAULT])
8211# ----------------------------
8212# implement the --enable-static flag, and support the `static' and
8213# `disable-static' LT_INIT options.
8214# DEFAULT is either `yes' or `no'. If omitted, it defaults to `yes'.
8215m4_define([_LT_ENABLE_STATIC],
8216[m4_define([_LT_ENABLE_STATIC_DEFAULT], [m4_if($1, no, no, yes)])dnl
8217AC_ARG_ENABLE([static],
8218 [AS_HELP_STRING([--enable-static@<:@=PKGS@:>@],
8219 [build static libraries @<:@default=]_LT_ENABLE_STATIC_DEFAULT[@:>@])],
8220 [p=${PACKAGE-default}
8221 case $enableval in
8222 yes) enable_static=yes ;;
8223 no) enable_static=no ;;
8224 *)
8225 enable_static=no
8226 # Look at the argument we got. We use all the common list separators.
8227 lt_save_ifs="$IFS"; IFS="${IFS}$PATH_SEPARATOR,"
8228 for pkg in $enableval; do
8229 IFS="$lt_save_ifs"
8230 if test "X$pkg" = "X$p"; then
8231 enable_static=yes
8232 fi
8233 done
8234 IFS="$lt_save_ifs"
8235 ;;
8236 esac],
8237 [enable_static=]_LT_ENABLE_STATIC_DEFAULT)
8238
8239 _LT_DECL([build_old_libs], [enable_static], [0],
8240 [Whether or not to build static libraries])
8241])# _LT_ENABLE_STATIC
8242
8243LT_OPTION_DEFINE([LT_INIT], [static], [_LT_ENABLE_STATIC([yes])])
8244LT_OPTION_DEFINE([LT_INIT], [disable-static], [_LT_ENABLE_STATIC([no])])
8245
8246# Old names:
8247AC_DEFUN([AC_ENABLE_STATIC],
8248[_LT_SET_OPTION([LT_INIT], m4_if([$1], [no], [disable-])[static])
8249])
8250
8251AC_DEFUN([AC_DISABLE_STATIC],
8252[_LT_SET_OPTION([LT_INIT], [disable-static])
8253])
8254
8255AU_DEFUN([AM_ENABLE_STATIC], [AC_ENABLE_STATIC($@)])
8256AU_DEFUN([AM_DISABLE_STATIC], [AC_DISABLE_STATIC($@)])
8257
8258dnl aclocal-1.4 backwards compatibility:
8259dnl AC_DEFUN([AM_ENABLE_STATIC], [])
8260dnl AC_DEFUN([AM_DISABLE_STATIC], [])
8261
8262
8263
8264# _LT_ENABLE_FAST_INSTALL([DEFAULT])
8265# ----------------------------------
8266# implement the --enable-fast-install flag, and support the `fast-install'
8267# and `disable-fast-install' LT_INIT options.
8268# DEFAULT is either `yes' or `no'. If omitted, it defaults to `yes'.
8269m4_define([_LT_ENABLE_FAST_INSTALL],
8270[m4_define([_LT_ENABLE_FAST_INSTALL_DEFAULT], [m4_if($1, no, no, yes)])dnl
8271AC_ARG_ENABLE([fast-install],
8272 [AS_HELP_STRING([--enable-fast-install@<:@=PKGS@:>@],
8273 [optimize for fast installation @<:@default=]_LT_ENABLE_FAST_INSTALL_DEFAULT[@:>@])],
8274 [p=${PACKAGE-default}
8275 case $enableval in
8276 yes) enable_fast_install=yes ;;
8277 no) enable_fast_install=no ;;
8278 *)
8279 enable_fast_install=no
8280 # Look at the argument we got. We use all the common list separators.
8281 lt_save_ifs="$IFS"; IFS="${IFS}$PATH_SEPARATOR,"
8282 for pkg in $enableval; do
8283 IFS="$lt_save_ifs"
8284 if test "X$pkg" = "X$p"; then
8285 enable_fast_install=yes
8286 fi
8287 done
8288 IFS="$lt_save_ifs"
8289 ;;
8290 esac],
8291 [enable_fast_install=]_LT_ENABLE_FAST_INSTALL_DEFAULT)
8292
8293_LT_DECL([fast_install], [enable_fast_install], [0],
8294 [Whether or not to optimize for fast installation])dnl
8295])# _LT_ENABLE_FAST_INSTALL
8296
8297LT_OPTION_DEFINE([LT_INIT], [fast-install], [_LT_ENABLE_FAST_INSTALL([yes])])
8298LT_OPTION_DEFINE([LT_INIT], [disable-fast-install], [_LT_ENABLE_FAST_INSTALL([no])])
8299
8300# Old names:
8301AU_DEFUN([AC_ENABLE_FAST_INSTALL],
8302[_LT_SET_OPTION([LT_INIT], m4_if([$1], [no], [disable-])[fast-install])
8303AC_DIAGNOSE([obsolete],
8304[$0: Remove this warning and the call to _LT_SET_OPTION when you put
8305the `fast-install' option into LT_INIT's first parameter.])
8306])
8307
8308AU_DEFUN([AC_DISABLE_FAST_INSTALL],
8309[_LT_SET_OPTION([LT_INIT], [disable-fast-install])
8310AC_DIAGNOSE([obsolete],
8311[$0: Remove this warning and the call to _LT_SET_OPTION when you put
8312the `disable-fast-install' option into LT_INIT's first parameter.])
8313])
8314
8315dnl aclocal-1.4 backwards compatibility:
8316dnl AC_DEFUN([AC_ENABLE_FAST_INSTALL], [])
8317dnl AC_DEFUN([AM_DISABLE_FAST_INSTALL], [])
8318
8319
8320# _LT_WITH_PIC([MODE])
8321# --------------------
8322# implement the --with-pic flag, and support the `pic-only' and `no-pic'
8323# LT_INIT options.
8324# MODE is either `yes' or `no'. If omitted, it defaults to `both'.
8325m4_define([_LT_WITH_PIC],
8326[AC_ARG_WITH([pic],
5670ec6e 8327 [AS_HELP_STRING([--with-pic@<:@=PKGS@:>@],
dabf4152 8328 [try to use only PIC/non-PIC objects @<:@default=use both@:>@])],
5670ec6e
AM
8329 [lt_p=${PACKAGE-default}
8330 case $withval in
8331 yes|no) pic_mode=$withval ;;
8332 *)
8333 pic_mode=default
8334 # Look at the argument we got. We use all the common list separators.
8335 lt_save_ifs="$IFS"; IFS="${IFS}$PATH_SEPARATOR,"
8336 for lt_pkg in $withval; do
8337 IFS="$lt_save_ifs"
8338 if test "X$lt_pkg" = "X$lt_p"; then
8339 pic_mode=yes
8340 fi
8341 done
8342 IFS="$lt_save_ifs"
8343 ;;
8344 esac],
dabf4152
AM
8345 [pic_mode=default])
8346
8347test -z "$pic_mode" && pic_mode=m4_default([$1], [default])
8348
8349_LT_DECL([], [pic_mode], [0], [What type of objects to build])dnl
8350])# _LT_WITH_PIC
8351
8352LT_OPTION_DEFINE([LT_INIT], [pic-only], [_LT_WITH_PIC([yes])])
8353LT_OPTION_DEFINE([LT_INIT], [no-pic], [_LT_WITH_PIC([no])])
8354
8355# Old name:
8356AU_DEFUN([AC_LIBTOOL_PICMODE],
8357[_LT_SET_OPTION([LT_INIT], [pic-only])
8358AC_DIAGNOSE([obsolete],
8359[$0: Remove this warning and the call to _LT_SET_OPTION when you
8360put the `pic-only' option into LT_INIT's first parameter.])
8361])
8362
8363dnl aclocal-1.4 backwards compatibility:
8364dnl AC_DEFUN([AC_LIBTOOL_PICMODE], [])
8365
8366
8367m4_define([_LTDL_MODE], [])
8368LT_OPTION_DEFINE([LTDL_INIT], [nonrecursive],
8369 [m4_define([_LTDL_MODE], [nonrecursive])])
8370LT_OPTION_DEFINE([LTDL_INIT], [recursive],
8371 [m4_define([_LTDL_MODE], [recursive])])
8372LT_OPTION_DEFINE([LTDL_INIT], [subproject],
8373 [m4_define([_LTDL_MODE], [subproject])])
8374
8375m4_define([_LTDL_TYPE], [])
8376LT_OPTION_DEFINE([LTDL_INIT], [installable],
8377 [m4_define([_LTDL_TYPE], [installable])])
8378LT_OPTION_DEFINE([LTDL_INIT], [convenience],
8379 [m4_define([_LTDL_TYPE], [convenience])])
8380
8381# ltsugar.m4 -- libtool m4 base layer. -*-Autoconf-*-
8382#
8383# Copyright (C) 2004, 2005, 2007, 2008 Free Software Foundation, Inc.
8384# Written by Gary V. Vaughan, 2004
8385#
8386# This file is free software; the Free Software Foundation gives
8387# unlimited permission to copy and/or distribute it, with or without
8388# modifications, as long as this notice is preserved.
8389
8390# serial 6 ltsugar.m4
8391
8392# This is to help aclocal find these macros, as it can't see m4_define.
8393AC_DEFUN([LTSUGAR_VERSION], [m4_if([0.1])])
8394
8395
8396# lt_join(SEP, ARG1, [ARG2...])
8397# -----------------------------
8398# Produce ARG1SEPARG2...SEPARGn, omitting [] arguments and their
8399# associated separator.
8400# Needed until we can rely on m4_join from Autoconf 2.62, since all earlier
8401# versions in m4sugar had bugs.
8402m4_define([lt_join],
8403[m4_if([$#], [1], [],
8404 [$#], [2], [[$2]],
8405 [m4_if([$2], [], [], [[$2]_])$0([$1], m4_shift(m4_shift($@)))])])
8406m4_define([_lt_join],
8407[m4_if([$#$2], [2], [],
8408 [m4_if([$2], [], [], [[$1$2]])$0([$1], m4_shift(m4_shift($@)))])])
8409
8410
8411# lt_car(LIST)
8412# lt_cdr(LIST)
8413# ------------
8414# Manipulate m4 lists.
8415# These macros are necessary as long as will still need to support
8416# Autoconf-2.59 which quotes differently.
8417m4_define([lt_car], [[$1]])
8418m4_define([lt_cdr],
8419[m4_if([$#], 0, [m4_fatal([$0: cannot be called without arguments])],
8420 [$#], 1, [],
8421 [m4_dquote(m4_shift($@))])])
8422m4_define([lt_unquote], $1)
8423
8424
8425# lt_append(MACRO-NAME, STRING, [SEPARATOR])
8426# ------------------------------------------
8427# Redefine MACRO-NAME to hold its former content plus `SEPARATOR'`STRING'.
8428# Note that neither SEPARATOR nor STRING are expanded; they are appended
8429# to MACRO-NAME as is (leaving the expansion for when MACRO-NAME is invoked).
8430# No SEPARATOR is output if MACRO-NAME was previously undefined (different
8431# than defined and empty).
8432#
8433# This macro is needed until we can rely on Autoconf 2.62, since earlier
8434# versions of m4sugar mistakenly expanded SEPARATOR but not STRING.
8435m4_define([lt_append],
8436[m4_define([$1],
8437 m4_ifdef([$1], [m4_defn([$1])[$3]])[$2])])
8438
8439
8440
8441# lt_combine(SEP, PREFIX-LIST, INFIX, SUFFIX1, [SUFFIX2...])
8442# ----------------------------------------------------------
8443# Produce a SEP delimited list of all paired combinations of elements of
8444# PREFIX-LIST with SUFFIX1 through SUFFIXn. Each element of the list
8445# has the form PREFIXmINFIXSUFFIXn.
8446# Needed until we can rely on m4_combine added in Autoconf 2.62.
8447m4_define([lt_combine],
8448[m4_if(m4_eval([$# > 3]), [1],
8449 [m4_pushdef([_Lt_sep], [m4_define([_Lt_sep], m4_defn([lt_car]))])]]dnl
8450[[m4_foreach([_Lt_prefix], [$2],
8451 [m4_foreach([_Lt_suffix],
8452 ]m4_dquote(m4_dquote(m4_shift(m4_shift(m4_shift($@)))))[,
8453 [_Lt_sep([$1])[]m4_defn([_Lt_prefix])[$3]m4_defn([_Lt_suffix])])])])])
8454
8455
8456# lt_if_append_uniq(MACRO-NAME, VARNAME, [SEPARATOR], [UNIQ], [NOT-UNIQ])
8457# -----------------------------------------------------------------------
8458# Iff MACRO-NAME does not yet contain VARNAME, then append it (delimited
8459# by SEPARATOR if supplied) and expand UNIQ, else NOT-UNIQ.
8460m4_define([lt_if_append_uniq],
8461[m4_ifdef([$1],
8462 [m4_if(m4_index([$3]m4_defn([$1])[$3], [$3$2$3]), [-1],
8463 [lt_append([$1], [$2], [$3])$4],
8464 [$5])],
8465 [lt_append([$1], [$2], [$3])$4])])
8466
8467
8468# lt_dict_add(DICT, KEY, VALUE)
8469# -----------------------------
8470m4_define([lt_dict_add],
8471[m4_define([$1($2)], [$3])])
8472
8473
8474# lt_dict_add_subkey(DICT, KEY, SUBKEY, VALUE)
8475# --------------------------------------------
8476m4_define([lt_dict_add_subkey],
8477[m4_define([$1($2:$3)], [$4])])
8478
8479
8480# lt_dict_fetch(DICT, KEY, [SUBKEY])
8481# ----------------------------------
8482m4_define([lt_dict_fetch],
8483[m4_ifval([$3],
8484 m4_ifdef([$1($2:$3)], [m4_defn([$1($2:$3)])]),
8485 m4_ifdef([$1($2)], [m4_defn([$1($2)])]))])
8486
8487
8488# lt_if_dict_fetch(DICT, KEY, [SUBKEY], VALUE, IF-TRUE, [IF-FALSE])
8489# -----------------------------------------------------------------
8490m4_define([lt_if_dict_fetch],
8491[m4_if(lt_dict_fetch([$1], [$2], [$3]), [$4],
8492 [$5],
8493 [$6])])
8494
8495
8496# lt_dict_filter(DICT, [SUBKEY], VALUE, [SEPARATOR], KEY, [...])
8497# --------------------------------------------------------------
8498m4_define([lt_dict_filter],
8499[m4_if([$5], [], [],
8500 [lt_join(m4_quote(m4_default([$4], [[, ]])),
8501 lt_unquote(m4_split(m4_normalize(m4_foreach(_Lt_key, lt_car([m4_shiftn(4, $@)]),
8502 [lt_if_dict_fetch([$1], _Lt_key, [$2], [$3], [_Lt_key ])])))))])[]dnl
8503])
8504
8505# ltversion.m4 -- version numbers -*- Autoconf -*-
8506#
8507# Copyright (C) 2004 Free Software Foundation, Inc.
8508# Written by Scott James Remnant, 2004
8509#
8510# This file is free software; the Free Software Foundation gives
8511# unlimited permission to copy and/or distribute it, with or without
8512# modifications, as long as this notice is preserved.
8513
8514# @configure_input@
8515
5670ec6e 8516# serial 3337 ltversion.m4
dabf4152
AM
8517# This file is part of GNU Libtool
8518
5670ec6e
AM
8519m4_define([LT_PACKAGE_VERSION], [2.4.2])
8520m4_define([LT_PACKAGE_REVISION], [1.3337])
dabf4152
AM
8521
8522AC_DEFUN([LTVERSION_VERSION],
5670ec6e
AM
8523[macro_version='2.4.2'
8524macro_revision='1.3337'
dabf4152
AM
8525_LT_DECL(, macro_version, 0, [Which release of libtool.m4 was used?])
8526_LT_DECL(, macro_revision, 0)
8527])
8528
8529# lt~obsolete.m4 -- aclocal satisfying obsolete definitions. -*-Autoconf-*-
8530#
8531# Copyright (C) 2004, 2005, 2007, 2009 Free Software Foundation, Inc.
8532# Written by Scott James Remnant, 2004.
8533#
8534# This file is free software; the Free Software Foundation gives
8535# unlimited permission to copy and/or distribute it, with or without
8536# modifications, as long as this notice is preserved.
8537
8538# serial 5 lt~obsolete.m4
8539
8540# These exist entirely to fool aclocal when bootstrapping libtool.
8541#
8542# In the past libtool.m4 has provided macros via AC_DEFUN (or AU_DEFUN)
8543# which have later been changed to m4_define as they aren't part of the
8544# exported API, or moved to Autoconf or Automake where they belong.
8545#
8546# The trouble is, aclocal is a bit thick. It'll see the old AC_DEFUN
8547# in /usr/share/aclocal/libtool.m4 and remember it, then when it sees us
8548# using a macro with the same name in our local m4/libtool.m4 it'll
8549# pull the old libtool.m4 in (it doesn't see our shiny new m4_define
8550# and doesn't know about Autoconf macros at all.)
8551#
8552# So we provide this file, which has a silly filename so it's always
8553# included after everything else. This provides aclocal with the
8554# AC_DEFUNs it wants, but when m4 processes it, it doesn't do anything
8555# because those macros already exist, or will be overwritten later.
8556# We use AC_DEFUN over AU_DEFUN for compatibility with aclocal-1.6.
8557#
8558# Anytime we withdraw an AC_DEFUN or AU_DEFUN, remember to add it here.
8559# Yes, that means every name once taken will need to remain here until
8560# we give up compatibility with versions before 1.7, at which point
8561# we need to keep only those names which we still refer to.
8562
8563# This is to help aclocal find these macros, as it can't see m4_define.
8564AC_DEFUN([LTOBSOLETE_VERSION], [m4_if([1])])
8565
8566m4_ifndef([AC_LIBTOOL_LINKER_OPTION], [AC_DEFUN([AC_LIBTOOL_LINKER_OPTION])])
8567m4_ifndef([AC_PROG_EGREP], [AC_DEFUN([AC_PROG_EGREP])])
8568m4_ifndef([_LT_AC_PROG_ECHO_BACKSLASH], [AC_DEFUN([_LT_AC_PROG_ECHO_BACKSLASH])])
8569m4_ifndef([_LT_AC_SHELL_INIT], [AC_DEFUN([_LT_AC_SHELL_INIT])])
8570m4_ifndef([_LT_AC_SYS_LIBPATH_AIX], [AC_DEFUN([_LT_AC_SYS_LIBPATH_AIX])])
8571m4_ifndef([_LT_PROG_LTMAIN], [AC_DEFUN([_LT_PROG_LTMAIN])])
8572m4_ifndef([_LT_AC_TAGVAR], [AC_DEFUN([_LT_AC_TAGVAR])])
8573m4_ifndef([AC_LTDL_ENABLE_INSTALL], [AC_DEFUN([AC_LTDL_ENABLE_INSTALL])])
8574m4_ifndef([AC_LTDL_PREOPEN], [AC_DEFUN([AC_LTDL_PREOPEN])])
8575m4_ifndef([_LT_AC_SYS_COMPILER], [AC_DEFUN([_LT_AC_SYS_COMPILER])])
8576m4_ifndef([_LT_AC_LOCK], [AC_DEFUN([_LT_AC_LOCK])])
8577m4_ifndef([AC_LIBTOOL_SYS_OLD_ARCHIVE], [AC_DEFUN([AC_LIBTOOL_SYS_OLD_ARCHIVE])])
8578m4_ifndef([_LT_AC_TRY_DLOPEN_SELF], [AC_DEFUN([_LT_AC_TRY_DLOPEN_SELF])])
8579m4_ifndef([AC_LIBTOOL_PROG_CC_C_O], [AC_DEFUN([AC_LIBTOOL_PROG_CC_C_O])])
8580m4_ifndef([AC_LIBTOOL_SYS_HARD_LINK_LOCKS], [AC_DEFUN([AC_LIBTOOL_SYS_HARD_LINK_LOCKS])])
8581m4_ifndef([AC_LIBTOOL_OBJDIR], [AC_DEFUN([AC_LIBTOOL_OBJDIR])])
8582m4_ifndef([AC_LTDL_OBJDIR], [AC_DEFUN([AC_LTDL_OBJDIR])])
8583m4_ifndef([AC_LIBTOOL_PROG_LD_HARDCODE_LIBPATH], [AC_DEFUN([AC_LIBTOOL_PROG_LD_HARDCODE_LIBPATH])])
8584m4_ifndef([AC_LIBTOOL_SYS_LIB_STRIP], [AC_DEFUN([AC_LIBTOOL_SYS_LIB_STRIP])])
8585m4_ifndef([AC_PATH_MAGIC], [AC_DEFUN([AC_PATH_MAGIC])])
8586m4_ifndef([AC_PROG_LD_GNU], [AC_DEFUN([AC_PROG_LD_GNU])])
8587m4_ifndef([AC_PROG_LD_RELOAD_FLAG], [AC_DEFUN([AC_PROG_LD_RELOAD_FLAG])])
8588m4_ifndef([AC_DEPLIBS_CHECK_METHOD], [AC_DEFUN([AC_DEPLIBS_CHECK_METHOD])])
8589m4_ifndef([AC_LIBTOOL_PROG_COMPILER_NO_RTTI], [AC_DEFUN([AC_LIBTOOL_PROG_COMPILER_NO_RTTI])])
8590m4_ifndef([AC_LIBTOOL_SYS_GLOBAL_SYMBOL_PIPE], [AC_DEFUN([AC_LIBTOOL_SYS_GLOBAL_SYMBOL_PIPE])])
8591m4_ifndef([AC_LIBTOOL_PROG_COMPILER_PIC], [AC_DEFUN([AC_LIBTOOL_PROG_COMPILER_PIC])])
8592m4_ifndef([AC_LIBTOOL_PROG_LD_SHLIBS], [AC_DEFUN([AC_LIBTOOL_PROG_LD_SHLIBS])])
8593m4_ifndef([AC_LIBTOOL_POSTDEP_PREDEP], [AC_DEFUN([AC_LIBTOOL_POSTDEP_PREDEP])])
8594m4_ifndef([LT_AC_PROG_EGREP], [AC_DEFUN([LT_AC_PROG_EGREP])])
8595m4_ifndef([LT_AC_PROG_SED], [AC_DEFUN([LT_AC_PROG_SED])])
8596m4_ifndef([_LT_CC_BASENAME], [AC_DEFUN([_LT_CC_BASENAME])])
8597m4_ifndef([_LT_COMPILER_BOILERPLATE], [AC_DEFUN([_LT_COMPILER_BOILERPLATE])])
8598m4_ifndef([_LT_LINKER_BOILERPLATE], [AC_DEFUN([_LT_LINKER_BOILERPLATE])])
8599m4_ifndef([_AC_PROG_LIBTOOL], [AC_DEFUN([_AC_PROG_LIBTOOL])])
8600m4_ifndef([AC_LIBTOOL_SETUP], [AC_DEFUN([AC_LIBTOOL_SETUP])])
8601m4_ifndef([_LT_AC_CHECK_DLFCN], [AC_DEFUN([_LT_AC_CHECK_DLFCN])])
8602m4_ifndef([AC_LIBTOOL_SYS_DYNAMIC_LINKER], [AC_DEFUN([AC_LIBTOOL_SYS_DYNAMIC_LINKER])])
8603m4_ifndef([_LT_AC_TAGCONFIG], [AC_DEFUN([_LT_AC_TAGCONFIG])])
8604m4_ifndef([AC_DISABLE_FAST_INSTALL], [AC_DEFUN([AC_DISABLE_FAST_INSTALL])])
8605m4_ifndef([_LT_AC_LANG_CXX], [AC_DEFUN([_LT_AC_LANG_CXX])])
8606m4_ifndef([_LT_AC_LANG_F77], [AC_DEFUN([_LT_AC_LANG_F77])])
8607m4_ifndef([_LT_AC_LANG_GCJ], [AC_DEFUN([_LT_AC_LANG_GCJ])])
8608m4_ifndef([AC_LIBTOOL_LANG_C_CONFIG], [AC_DEFUN([AC_LIBTOOL_LANG_C_CONFIG])])
8609m4_ifndef([_LT_AC_LANG_C_CONFIG], [AC_DEFUN([_LT_AC_LANG_C_CONFIG])])
8610m4_ifndef([AC_LIBTOOL_LANG_CXX_CONFIG], [AC_DEFUN([AC_LIBTOOL_LANG_CXX_CONFIG])])
8611m4_ifndef([_LT_AC_LANG_CXX_CONFIG], [AC_DEFUN([_LT_AC_LANG_CXX_CONFIG])])
8612m4_ifndef([AC_LIBTOOL_LANG_F77_CONFIG], [AC_DEFUN([AC_LIBTOOL_LANG_F77_CONFIG])])
8613m4_ifndef([_LT_AC_LANG_F77_CONFIG], [AC_DEFUN([_LT_AC_LANG_F77_CONFIG])])
8614m4_ifndef([AC_LIBTOOL_LANG_GCJ_CONFIG], [AC_DEFUN([AC_LIBTOOL_LANG_GCJ_CONFIG])])
8615m4_ifndef([_LT_AC_LANG_GCJ_CONFIG], [AC_DEFUN([_LT_AC_LANG_GCJ_CONFIG])])
8616m4_ifndef([AC_LIBTOOL_LANG_RC_CONFIG], [AC_DEFUN([AC_LIBTOOL_LANG_RC_CONFIG])])
8617m4_ifndef([_LT_AC_LANG_RC_CONFIG], [AC_DEFUN([_LT_AC_LANG_RC_CONFIG])])
8618m4_ifndef([AC_LIBTOOL_CONFIG], [AC_DEFUN([AC_LIBTOOL_CONFIG])])
8619m4_ifndef([_LT_AC_FILE_LTDLL_C], [AC_DEFUN([_LT_AC_FILE_LTDLL_C])])
8620m4_ifndef([_LT_REQUIRED_DARWIN_CHECKS], [AC_DEFUN([_LT_REQUIRED_DARWIN_CHECKS])])
8621m4_ifndef([_LT_AC_PROG_CXXCPP], [AC_DEFUN([_LT_AC_PROG_CXXCPP])])
8622m4_ifndef([_LT_PREPARE_SED_QUOTE_VARS], [AC_DEFUN([_LT_PREPARE_SED_QUOTE_VARS])])
8623m4_ifndef([_LT_PROG_ECHO_BACKSLASH], [AC_DEFUN([_LT_PROG_ECHO_BACKSLASH])])
8624m4_ifndef([_LT_PROG_F77], [AC_DEFUN([_LT_PROG_F77])])
8625m4_ifndef([_LT_PROG_FC], [AC_DEFUN([_LT_PROG_FC])])
8626m4_ifndef([_LT_PROG_CXX], [AC_DEFUN([_LT_PROG_CXX])])
8627
5670ec6e
AM
8628# pkg.m4 - Macros to locate and utilise pkg-config. -*- Autoconf -*-
8629# serial 1 (pkg-config-0.24)
8630#
8631# Copyright © 2004 Scott James Remnant <scott@netsplit.com>.
8632#
8633# This program is free software; you can redistribute it and/or modify
8634# it under the terms of the GNU General Public License as published by
8635# the Free Software Foundation; either version 2 of the License, or
8636# (at your option) any later version.
8637#
8638# This program is distributed in the hope that it will be useful, but
8639# WITHOUT ANY WARRANTY; without even the implied warranty of
8640# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
8641# General Public License for more details.
8642#
8643# You should have received a copy of the GNU General Public License
8644# along with this program; if not, write to the Free Software
8645# Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
8646#
8647# As a special exception to the GNU General Public License, if you
8648# distribute this file as part of a program that contains a
8649# configuration script generated by Autoconf, you may include it under
8650# the same distribution terms that you use for the rest of that program.
8651
8652# PKG_PROG_PKG_CONFIG([MIN-VERSION])
8653# ----------------------------------
8654AC_DEFUN([PKG_PROG_PKG_CONFIG],
8655[m4_pattern_forbid([^_?PKG_[A-Z_]+$])
8656m4_pattern_allow([^PKG_CONFIG(_(PATH|LIBDIR|SYSROOT_DIR|ALLOW_SYSTEM_(CFLAGS|LIBS)))?$])
8657m4_pattern_allow([^PKG_CONFIG_(DISABLE_UNINSTALLED|TOP_BUILD_DIR|DEBUG_SPEW)$])
8658AC_ARG_VAR([PKG_CONFIG], [path to pkg-config utility])
8659AC_ARG_VAR([PKG_CONFIG_PATH], [directories to add to pkg-config's search path])
8660AC_ARG_VAR([PKG_CONFIG_LIBDIR], [path overriding pkg-config's built-in search path])
8661
8662if test "x$ac_cv_env_PKG_CONFIG_set" != "xset"; then
8663 AC_PATH_TOOL([PKG_CONFIG], [pkg-config])
8664fi
8665if test -n "$PKG_CONFIG"; then
8666 _pkg_min_version=m4_default([$1], [0.9.0])
8667 AC_MSG_CHECKING([pkg-config is at least version $_pkg_min_version])
8668 if $PKG_CONFIG --atleast-pkgconfig-version $_pkg_min_version; then
8669 AC_MSG_RESULT([yes])
8670 else
8671 AC_MSG_RESULT([no])
8672 PKG_CONFIG=""
8673 fi
8674fi[]dnl
8675])# PKG_PROG_PKG_CONFIG
8676
8677# PKG_CHECK_EXISTS(MODULES, [ACTION-IF-FOUND], [ACTION-IF-NOT-FOUND])
8678#
8679# Check to see whether a particular set of modules exists. Similar
8680# to PKG_CHECK_MODULES(), but does not set variables or print errors.
8681#
8682# Please remember that m4 expands AC_REQUIRE([PKG_PROG_PKG_CONFIG])
8683# only at the first occurence in configure.ac, so if the first place
8684# it's called might be skipped (such as if it is within an "if", you
8685# have to call PKG_CHECK_EXISTS manually
8686# --------------------------------------------------------------
8687AC_DEFUN([PKG_CHECK_EXISTS],
8688[AC_REQUIRE([PKG_PROG_PKG_CONFIG])dnl
8689if test -n "$PKG_CONFIG" && \
8690 AC_RUN_LOG([$PKG_CONFIG --exists --print-errors "$1"]); then
8691 m4_default([$2], [:])
8692m4_ifvaln([$3], [else
8693 $3])dnl
8694fi])
8695
8696# _PKG_CONFIG([VARIABLE], [COMMAND], [MODULES])
8697# ---------------------------------------------
8698m4_define([_PKG_CONFIG],
8699[if test -n "$$1"; then
8700 pkg_cv_[]$1="$$1"
8701 elif test -n "$PKG_CONFIG"; then
8702 PKG_CHECK_EXISTS([$3],
8703 [pkg_cv_[]$1=`$PKG_CONFIG --[]$2 "$3" 2>/dev/null`
8704 test "x$?" != "x0" && pkg_failed=yes ],
8705 [pkg_failed=yes])
8706 else
8707 pkg_failed=untried
8708fi[]dnl
8709])# _PKG_CONFIG
8710
8711# _PKG_SHORT_ERRORS_SUPPORTED
8712# -----------------------------
8713AC_DEFUN([_PKG_SHORT_ERRORS_SUPPORTED],
8714[AC_REQUIRE([PKG_PROG_PKG_CONFIG])
8715if $PKG_CONFIG --atleast-pkgconfig-version 0.20; then
8716 _pkg_short_errors_supported=yes
8717else
8718 _pkg_short_errors_supported=no
8719fi[]dnl
8720])# _PKG_SHORT_ERRORS_SUPPORTED
8721
8722
8723# PKG_CHECK_MODULES(VARIABLE-PREFIX, MODULES, [ACTION-IF-FOUND],
8724# [ACTION-IF-NOT-FOUND])
8725#
8726#
8727# Note that if there is a possibility the first call to
8728# PKG_CHECK_MODULES might not happen, you should be sure to include an
8729# explicit call to PKG_PROG_PKG_CONFIG in your configure.ac
8730#
8731#
8732# --------------------------------------------------------------
8733AC_DEFUN([PKG_CHECK_MODULES],
8734[AC_REQUIRE([PKG_PROG_PKG_CONFIG])dnl
8735AC_ARG_VAR([$1][_CFLAGS], [C compiler flags for $1, overriding pkg-config])dnl
8736AC_ARG_VAR([$1][_LIBS], [linker flags for $1, overriding pkg-config])dnl
8737
8738pkg_failed=no
8739AC_MSG_CHECKING([for $1])
8740
8741_PKG_CONFIG([$1][_CFLAGS], [cflags], [$2])
8742_PKG_CONFIG([$1][_LIBS], [libs], [$2])
8743
8744m4_define([_PKG_TEXT], [Alternatively, you may set the environment variables $1[]_CFLAGS
8745and $1[]_LIBS to avoid the need to call pkg-config.
8746See the pkg-config man page for more details.])
8747
8748if test $pkg_failed = yes; then
8749 AC_MSG_RESULT([no])
8750 _PKG_SHORT_ERRORS_SUPPORTED
8751 if test $_pkg_short_errors_supported = yes; then
8752 $1[]_PKG_ERRORS=`$PKG_CONFIG --short-errors --print-errors --cflags --libs "$2" 2>&1`
8753 else
8754 $1[]_PKG_ERRORS=`$PKG_CONFIG --print-errors --cflags --libs "$2" 2>&1`
8755 fi
8756 # Put the nasty error message in config.log where it belongs
8757 echo "$$1[]_PKG_ERRORS" >&AS_MESSAGE_LOG_FD
8758
8759 m4_default([$4], [AC_MSG_ERROR(
8760[Package requirements ($2) were not met:
8761
8762$$1_PKG_ERRORS
8763
8764Consider adjusting the PKG_CONFIG_PATH environment variable if you
8765installed software in a non-standard prefix.
8766
8767_PKG_TEXT])[]dnl
8768 ])
8769elif test $pkg_failed = untried; then
8770 AC_MSG_RESULT([no])
8771 m4_default([$4], [AC_MSG_FAILURE(
8772[The pkg-config script could not be found or is too old. Make sure it
8773is in your PATH or set the PKG_CONFIG environment variable to the full
8774path to pkg-config.
8775
8776_PKG_TEXT
8777
8778To get pkg-config, see <http://pkg-config.freedesktop.org/>.])[]dnl
8779 ])
8780else
8781 $1[]_CFLAGS=$pkg_cv_[]$1[]_CFLAGS
8782 $1[]_LIBS=$pkg_cv_[]$1[]_LIBS
8783 AC_MSG_RESULT([yes])
8784 $3
8785fi[]dnl
8786])# PKG_CHECK_MODULES
8787
dabf4152
AM
8788# Copyright (C) 2002, 2003, 2005, 2006, 2007, 2008 Free Software Foundation, Inc.
8789#
8790# This file is free software; the Free Software Foundation
8791# gives unlimited permission to copy and/or distribute it,
8792# with or without modifications, as long as this notice is preserved.
8793
8794# AM_AUTOMAKE_VERSION(VERSION)
8795# ----------------------------
8796# Automake X.Y traces this macro to ensure aclocal.m4 has been
8797# generated from the m4 files accompanying Automake X.Y.
8798# (This private macro should not be called outside this file.)
8799AC_DEFUN([AM_AUTOMAKE_VERSION],
8800[am__api_version='1.11'
8801dnl Some users find AM_AUTOMAKE_VERSION and mistake it for a way to
8802dnl require some minimum version. Point them to the right macro.
8803m4_if([$1], [1.11.1], [],
8804 [AC_FATAL([Do not call $0, use AM_INIT_AUTOMAKE([$1]).])])dnl
8805])
8806
8807# _AM_AUTOCONF_VERSION(VERSION)
8808# -----------------------------
8809# aclocal traces this macro to find the Autoconf version.
8810# This is a private macro too. Using m4_define simplifies
8811# the logic in aclocal, which can simply ignore this definition.
8812m4_define([_AM_AUTOCONF_VERSION], [])
8813
8814# AM_SET_CURRENT_AUTOMAKE_VERSION
8815# -------------------------------
8816# Call AM_AUTOMAKE_VERSION and AM_AUTOMAKE_VERSION so they can be traced.
8817# This function is AC_REQUIREd by AM_INIT_AUTOMAKE.
8818AC_DEFUN([AM_SET_CURRENT_AUTOMAKE_VERSION],
8819[AM_AUTOMAKE_VERSION([1.11.1])dnl
8820m4_ifndef([AC_AUTOCONF_VERSION],
8821 [m4_copy([m4_PACKAGE_VERSION], [AC_AUTOCONF_VERSION])])dnl
8822_AM_AUTOCONF_VERSION(m4_defn([AC_AUTOCONF_VERSION]))])
8823
8824# AM_AUX_DIR_EXPAND -*- Autoconf -*-
8825
8826# Copyright (C) 2001, 2003, 2005 Free Software Foundation, Inc.
8827#
8828# This file is free software; the Free Software Foundation
8829# gives unlimited permission to copy and/or distribute it,
8830# with or without modifications, as long as this notice is preserved.
8831
8832# For projects using AC_CONFIG_AUX_DIR([foo]), Autoconf sets
8833# $ac_aux_dir to `$srcdir/foo'. In other projects, it is set to
8834# `$srcdir', `$srcdir/..', or `$srcdir/../..'.
8835#
8836# Of course, Automake must honor this variable whenever it calls a
8837# tool from the auxiliary directory. The problem is that $srcdir (and
8838# therefore $ac_aux_dir as well) can be either absolute or relative,
8839# depending on how configure is run. This is pretty annoying, since
8840# it makes $ac_aux_dir quite unusable in subdirectories: in the top
8841# source directory, any form will work fine, but in subdirectories a
8842# relative path needs to be adjusted first.
8843#
8844# $ac_aux_dir/missing
8845# fails when called from a subdirectory if $ac_aux_dir is relative
8846# $top_srcdir/$ac_aux_dir/missing
8847# fails if $ac_aux_dir is absolute,
8848# fails when called from a subdirectory in a VPATH build with
8849# a relative $ac_aux_dir
8850#
8851# The reason of the latter failure is that $top_srcdir and $ac_aux_dir
8852# are both prefixed by $srcdir. In an in-source build this is usually
8853# harmless because $srcdir is `.', but things will broke when you
8854# start a VPATH build or use an absolute $srcdir.
8855#
8856# So we could use something similar to $top_srcdir/$ac_aux_dir/missing,
8857# iff we strip the leading $srcdir from $ac_aux_dir. That would be:
8858# am_aux_dir='\$(top_srcdir)/'`expr "$ac_aux_dir" : "$srcdir//*\(.*\)"`
8859# and then we would define $MISSING as
8860# MISSING="\${SHELL} $am_aux_dir/missing"
8861# This will work as long as MISSING is not called from configure, because
8862# unfortunately $(top_srcdir) has no meaning in configure.
8863# However there are other variables, like CC, which are often used in
8864# configure, and could therefore not use this "fixed" $ac_aux_dir.
8865#
8866# Another solution, used here, is to always expand $ac_aux_dir to an
8867# absolute PATH. The drawback is that using absolute paths prevent a
8868# configured tree to be moved without reconfiguration.
8869
8870AC_DEFUN([AM_AUX_DIR_EXPAND],
8871[dnl Rely on autoconf to set up CDPATH properly.
8872AC_PREREQ([2.50])dnl
8873# expand $ac_aux_dir to an absolute path
8874am_aux_dir=`cd $ac_aux_dir && pwd`
8875])
8876
8877# AM_CONDITIONAL -*- Autoconf -*-
8878
8879# Copyright (C) 1997, 2000, 2001, 2003, 2004, 2005, 2006, 2008
8880# Free Software Foundation, Inc.
8881#
8882# This file is free software; the Free Software Foundation
8883# gives unlimited permission to copy and/or distribute it,
8884# with or without modifications, as long as this notice is preserved.
8885
8886# serial 9
8887
8888# AM_CONDITIONAL(NAME, SHELL-CONDITION)
8889# -------------------------------------
8890# Define a conditional.
8891AC_DEFUN([AM_CONDITIONAL],
8892[AC_PREREQ(2.52)dnl
8893 ifelse([$1], [TRUE], [AC_FATAL([$0: invalid condition: $1])],
8894 [$1], [FALSE], [AC_FATAL([$0: invalid condition: $1])])dnl
8895AC_SUBST([$1_TRUE])dnl
8896AC_SUBST([$1_FALSE])dnl
8897_AM_SUBST_NOTMAKE([$1_TRUE])dnl
8898_AM_SUBST_NOTMAKE([$1_FALSE])dnl
8899m4_define([_AM_COND_VALUE_$1], [$2])dnl
8900if $2; then
8901 $1_TRUE=
8902 $1_FALSE='#'
8903else
8904 $1_TRUE='#'
8905 $1_FALSE=
8906fi
8907AC_CONFIG_COMMANDS_PRE(
8908[if test -z "${$1_TRUE}" && test -z "${$1_FALSE}"; then
8909 AC_MSG_ERROR([[conditional "$1" was never defined.
8910Usually this means the macro was only invoked conditionally.]])
8911fi])])
8912
8913# Copyright (C) 1999, 2000, 2001, 2002, 2003, 2004, 2005, 2006, 2009
8914# Free Software Foundation, Inc.
8915#
8916# This file is free software; the Free Software Foundation
8917# gives unlimited permission to copy and/or distribute it,
8918# with or without modifications, as long as this notice is preserved.
8919
8920# serial 10
8921
8922# There are a few dirty hacks below to avoid letting `AC_PROG_CC' be
8923# written in clear, in which case automake, when reading aclocal.m4,
8924# will think it sees a *use*, and therefore will trigger all it's
8925# C support machinery. Also note that it means that autoscan, seeing
8926# CC etc. in the Makefile, will ask for an AC_PROG_CC use...
8927
8928
8929# _AM_DEPENDENCIES(NAME)
8930# ----------------------
8931# See how the compiler implements dependency checking.
8932# NAME is "CC", "CXX", "GCJ", or "OBJC".
8933# We try a few techniques and use that to set a single cache variable.
8934#
8935# We don't AC_REQUIRE the corresponding AC_PROG_CC since the latter was
8936# modified to invoke _AM_DEPENDENCIES(CC); we would have a circular
8937# dependency, and given that the user is not expected to run this macro,
8938# just rely on AC_PROG_CC.
8939AC_DEFUN([_AM_DEPENDENCIES],
8940[AC_REQUIRE([AM_SET_DEPDIR])dnl
8941AC_REQUIRE([AM_OUTPUT_DEPENDENCY_COMMANDS])dnl
8942AC_REQUIRE([AM_MAKE_INCLUDE])dnl
8943AC_REQUIRE([AM_DEP_TRACK])dnl
8944
8945ifelse([$1], CC, [depcc="$CC" am_compiler_list=],
8946 [$1], CXX, [depcc="$CXX" am_compiler_list=],
8947 [$1], OBJC, [depcc="$OBJC" am_compiler_list='gcc3 gcc'],
8948 [$1], UPC, [depcc="$UPC" am_compiler_list=],
8949 [$1], GCJ, [depcc="$GCJ" am_compiler_list='gcc3 gcc'],
8950 [depcc="$$1" am_compiler_list=])
8951
8952AC_CACHE_CHECK([dependency style of $depcc],
8953 [am_cv_$1_dependencies_compiler_type],
8954[if test -z "$AMDEP_TRUE" && test -f "$am_depcomp"; then
8955 # We make a subdir and do the tests there. Otherwise we can end up
8956 # making bogus files that we don't know about and never remove. For
8957 # instance it was reported that on HP-UX the gcc test will end up
8958 # making a dummy file named `D' -- because `-MD' means `put the output
8959 # in D'.
8960 mkdir conftest.dir
8961 # Copy depcomp to subdir because otherwise we won't find it if we're
8962 # using a relative directory.
8963 cp "$am_depcomp" conftest.dir
8964 cd conftest.dir
8965 # We will build objects and dependencies in a subdirectory because
8966 # it helps to detect inapplicable dependency modes. For instance
8967 # both Tru64's cc and ICC support -MD to output dependencies as a
8968 # side effect of compilation, but ICC will put the dependencies in
8969 # the current directory while Tru64 will put them in the object
8970 # directory.
8971 mkdir sub
8972
8973 am_cv_$1_dependencies_compiler_type=none
8974 if test "$am_compiler_list" = ""; then
8975 am_compiler_list=`sed -n ['s/^#*\([a-zA-Z0-9]*\))$/\1/p'] < ./depcomp`
8976 fi
8977 am__universal=false
8978 m4_case([$1], [CC],
8979 [case " $depcc " in #(
8980 *\ -arch\ *\ -arch\ *) am__universal=true ;;
8981 esac],
8982 [CXX],
8983 [case " $depcc " in #(
8984 *\ -arch\ *\ -arch\ *) am__universal=true ;;
8985 esac])
8986
8987 for depmode in $am_compiler_list; do
8988 # Setup a source with many dependencies, because some compilers
8989 # like to wrap large dependency lists on column 80 (with \), and
8990 # we should not choose a depcomp mode which is confused by this.
8991 #
8992 # We need to recreate these files for each test, as the compiler may
8993 # overwrite some of them when testing with obscure command lines.
8994 # This happens at least with the AIX C compiler.
8995 : > sub/conftest.c
8996 for i in 1 2 3 4 5 6; do
8997 echo '#include "conftst'$i'.h"' >> sub/conftest.c
8998 # Using `: > sub/conftst$i.h' creates only sub/conftst1.h with
8999 # Solaris 8's {/usr,}/bin/sh.
9000 touch sub/conftst$i.h
9001 done
9002 echo "${am__include} ${am__quote}sub/conftest.Po${am__quote}" > confmf
9003
9004 # We check with `-c' and `-o' for the sake of the "dashmstdout"
9005 # mode. It turns out that the SunPro C++ compiler does not properly
9006 # handle `-M -o', and we need to detect this. Also, some Intel
9007 # versions had trouble with output in subdirs
9008 am__obj=sub/conftest.${OBJEXT-o}
9009 am__minus_obj="-o $am__obj"
9010 case $depmode in
9011 gcc)
9012 # This depmode causes a compiler race in universal mode.
9013 test "$am__universal" = false || continue
9014 ;;
9015 nosideeffect)
9016 # after this tag, mechanisms are not by side-effect, so they'll
9017 # only be used when explicitly requested
9018 if test "x$enable_dependency_tracking" = xyes; then
9019 continue
9020 else
9021 break
9022 fi
9023 ;;
9024 msvisualcpp | msvcmsys)
9025 # This compiler won't grok `-c -o', but also, the minuso test has
9026 # not run yet. These depmodes are late enough in the game, and
9027 # so weak that their functioning should not be impacted.
9028 am__obj=conftest.${OBJEXT-o}
9029 am__minus_obj=
9030 ;;
9031 none) break ;;
9032 esac
9033 if depmode=$depmode \
9034 source=sub/conftest.c object=$am__obj \
9035 depfile=sub/conftest.Po tmpdepfile=sub/conftest.TPo \
9036 $SHELL ./depcomp $depcc -c $am__minus_obj sub/conftest.c \
9037 >/dev/null 2>conftest.err &&
9038 grep sub/conftst1.h sub/conftest.Po > /dev/null 2>&1 &&
9039 grep sub/conftst6.h sub/conftest.Po > /dev/null 2>&1 &&
9040 grep $am__obj sub/conftest.Po > /dev/null 2>&1 &&
9041 ${MAKE-make} -s -f confmf > /dev/null 2>&1; then
9042 # icc doesn't choke on unknown options, it will just issue warnings
9043 # or remarks (even with -Werror). So we grep stderr for any message
9044 # that says an option was ignored or not supported.
9045 # When given -MP, icc 7.0 and 7.1 complain thusly:
9046 # icc: Command line warning: ignoring option '-M'; no argument required
9047 # The diagnosis changed in icc 8.0:
9048 # icc: Command line remark: option '-MP' not supported
9049 if (grep 'ignoring option' conftest.err ||
9050 grep 'not supported' conftest.err) >/dev/null 2>&1; then :; else
9051 am_cv_$1_dependencies_compiler_type=$depmode
9052 break
9053 fi
9054 fi
9055 done
9056
9057 cd ..
9058 rm -rf conftest.dir
9059else
9060 am_cv_$1_dependencies_compiler_type=none
9061fi
9062])
9063AC_SUBST([$1DEPMODE], [depmode=$am_cv_$1_dependencies_compiler_type])
9064AM_CONDITIONAL([am__fastdep$1], [
9065 test "x$enable_dependency_tracking" != xno \
9066 && test "$am_cv_$1_dependencies_compiler_type" = gcc3])
9067])
9068
9069
9070# AM_SET_DEPDIR
9071# -------------
9072# Choose a directory name for dependency files.
9073# This macro is AC_REQUIREd in _AM_DEPENDENCIES
9074AC_DEFUN([AM_SET_DEPDIR],
9075[AC_REQUIRE([AM_SET_LEADING_DOT])dnl
9076AC_SUBST([DEPDIR], ["${am__leading_dot}deps"])dnl
9077])
9078
9079
9080# AM_DEP_TRACK
9081# ------------
9082AC_DEFUN([AM_DEP_TRACK],
9083[AC_ARG_ENABLE(dependency-tracking,
9084[ --disable-dependency-tracking speeds up one-time build
9085 --enable-dependency-tracking do not reject slow dependency extractors])
9086if test "x$enable_dependency_tracking" != xno; then
9087 am_depcomp="$ac_aux_dir/depcomp"
9088 AMDEPBACKSLASH='\'
9089fi
9090AM_CONDITIONAL([AMDEP], [test "x$enable_dependency_tracking" != xno])
9091AC_SUBST([AMDEPBACKSLASH])dnl
9092_AM_SUBST_NOTMAKE([AMDEPBACKSLASH])dnl
9093])
9094
9095# Generate code to set up dependency tracking. -*- Autoconf -*-
9096
9097# Copyright (C) 1999, 2000, 2001, 2002, 2003, 2004, 2005, 2008
9098# Free Software Foundation, Inc.
9099#
9100# This file is free software; the Free Software Foundation
9101# gives unlimited permission to copy and/or distribute it,
9102# with or without modifications, as long as this notice is preserved.
9103
9104#serial 5
9105
9106# _AM_OUTPUT_DEPENDENCY_COMMANDS
9107# ------------------------------
9108AC_DEFUN([_AM_OUTPUT_DEPENDENCY_COMMANDS],
9109[{
9110 # Autoconf 2.62 quotes --file arguments for eval, but not when files
9111 # are listed without --file. Let's play safe and only enable the eval
9112 # if we detect the quoting.
9113 case $CONFIG_FILES in
9114 *\'*) eval set x "$CONFIG_FILES" ;;
9115 *) set x $CONFIG_FILES ;;
9116 esac
9117 shift
9118 for mf
9119 do
9120 # Strip MF so we end up with the name of the file.
9121 mf=`echo "$mf" | sed -e 's/:.*$//'`
9122 # Check whether this is an Automake generated Makefile or not.
9123 # We used to match only the files named `Makefile.in', but
9124 # some people rename them; so instead we look at the file content.
9125 # Grep'ing the first line is not enough: some people post-process
9126 # each Makefile.in and add a new line on top of each file to say so.
9127 # Grep'ing the whole file is not good either: AIX grep has a line
9128 # limit of 2048, but all sed's we know have understand at least 4000.
9129 if sed -n 's,^#.*generated by automake.*,X,p' "$mf" | grep X >/dev/null 2>&1; then
9130 dirpart=`AS_DIRNAME("$mf")`
9131 else
9132 continue
9133 fi
9134 # Extract the definition of DEPDIR, am__include, and am__quote
9135 # from the Makefile without running `make'.
9136 DEPDIR=`sed -n 's/^DEPDIR = //p' < "$mf"`
9137 test -z "$DEPDIR" && continue
9138 am__include=`sed -n 's/^am__include = //p' < "$mf"`
9139 test -z "am__include" && continue
9140 am__quote=`sed -n 's/^am__quote = //p' < "$mf"`
9141 # When using ansi2knr, U may be empty or an underscore; expand it
9142 U=`sed -n 's/^U = //p' < "$mf"`
9143 # Find all dependency output files, they are included files with
9144 # $(DEPDIR) in their names. We invoke sed twice because it is the
9145 # simplest approach to changing $(DEPDIR) to its actual value in the
9146 # expansion.
9147 for file in `sed -n "
9148 s/^$am__include $am__quote\(.*(DEPDIR).*\)$am__quote"'$/\1/p' <"$mf" | \
9149 sed -e 's/\$(DEPDIR)/'"$DEPDIR"'/g' -e 's/\$U/'"$U"'/g'`; do
9150 # Make sure the directory exists.
9151 test -f "$dirpart/$file" && continue
9152 fdir=`AS_DIRNAME(["$file"])`
9153 AS_MKDIR_P([$dirpart/$fdir])
9154 # echo "creating $dirpart/$file"
9155 echo '# dummy' > "$dirpart/$file"
9156 done
9157 done
9158}
9159])# _AM_OUTPUT_DEPENDENCY_COMMANDS
9160
9161
9162# AM_OUTPUT_DEPENDENCY_COMMANDS
9163# -----------------------------
9164# This macro should only be invoked once -- use via AC_REQUIRE.
9165#
9166# This code is only required when automatic dependency tracking
9167# is enabled. FIXME. This creates each `.P' file that we will
9168# need in order to bootstrap the dependency handling code.
9169AC_DEFUN([AM_OUTPUT_DEPENDENCY_COMMANDS],
9170[AC_CONFIG_COMMANDS([depfiles],
9171 [test x"$AMDEP_TRUE" != x"" || _AM_OUTPUT_DEPENDENCY_COMMANDS],
9172 [AMDEP_TRUE="$AMDEP_TRUE" ac_aux_dir="$ac_aux_dir"])
9173])
9174
9175# Do all the work for Automake. -*- Autoconf -*-
9176
9177# Copyright (C) 1996, 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2004,
9178# 2005, 2006, 2008, 2009 Free Software Foundation, Inc.
9179#
9180# This file is free software; the Free Software Foundation
9181# gives unlimited permission to copy and/or distribute it,
9182# with or without modifications, as long as this notice is preserved.
9183
9184# serial 16
9185
9186# This macro actually does too much. Some checks are only needed if
9187# your package does certain things. But this isn't really a big deal.
9188
9189# AM_INIT_AUTOMAKE(PACKAGE, VERSION, [NO-DEFINE])
9190# AM_INIT_AUTOMAKE([OPTIONS])
9191# -----------------------------------------------
9192# The call with PACKAGE and VERSION arguments is the old style
9193# call (pre autoconf-2.50), which is being phased out. PACKAGE
9194# and VERSION should now be passed to AC_INIT and removed from
9195# the call to AM_INIT_AUTOMAKE.
9196# We support both call styles for the transition. After
9197# the next Automake release, Autoconf can make the AC_INIT
9198# arguments mandatory, and then we can depend on a new Autoconf
9199# release and drop the old call support.
9200AC_DEFUN([AM_INIT_AUTOMAKE],
9201[AC_PREREQ([2.62])dnl
9202dnl Autoconf wants to disallow AM_ names. We explicitly allow
9203dnl the ones we care about.
9204m4_pattern_allow([^AM_[A-Z]+FLAGS$])dnl
9205AC_REQUIRE([AM_SET_CURRENT_AUTOMAKE_VERSION])dnl
9206AC_REQUIRE([AC_PROG_INSTALL])dnl
9207if test "`cd $srcdir && pwd`" != "`pwd`"; then
9208 # Use -I$(srcdir) only when $(srcdir) != ., so that make's output
9209 # is not polluted with repeated "-I."
9210 AC_SUBST([am__isrc], [' -I$(srcdir)'])_AM_SUBST_NOTMAKE([am__isrc])dnl
9211 # test to see if srcdir already configured
9212 if test -f $srcdir/config.status; then
9213 AC_MSG_ERROR([source directory already configured; run "make distclean" there first])
9214 fi
9215fi
9216
9217# test whether we have cygpath
9218if test -z "$CYGPATH_W"; then
9219 if (cygpath --version) >/dev/null 2>/dev/null; then
9220 CYGPATH_W='cygpath -w'
9221 else
9222 CYGPATH_W=echo
9223 fi
9224fi
9225AC_SUBST([CYGPATH_W])
9226
9227# Define the identity of the package.
9228dnl Distinguish between old-style and new-style calls.
9229m4_ifval([$2],
9230[m4_ifval([$3], [_AM_SET_OPTION([no-define])])dnl
9231 AC_SUBST([PACKAGE], [$1])dnl
9232 AC_SUBST([VERSION], [$2])],
9233[_AM_SET_OPTIONS([$1])dnl
9234dnl Diagnose old-style AC_INIT with new-style AM_AUTOMAKE_INIT.
9235m4_if(m4_ifdef([AC_PACKAGE_NAME], 1)m4_ifdef([AC_PACKAGE_VERSION], 1), 11,,
9236 [m4_fatal([AC_INIT should be called with package and version arguments])])dnl
9237 AC_SUBST([PACKAGE], ['AC_PACKAGE_TARNAME'])dnl
9238 AC_SUBST([VERSION], ['AC_PACKAGE_VERSION'])])dnl
9239
9240_AM_IF_OPTION([no-define],,
9241[AC_DEFINE_UNQUOTED(PACKAGE, "$PACKAGE", [Name of package])
9242 AC_DEFINE_UNQUOTED(VERSION, "$VERSION", [Version number of package])])dnl
9243
9244# Some tools Automake needs.
9245AC_REQUIRE([AM_SANITY_CHECK])dnl
9246AC_REQUIRE([AC_ARG_PROGRAM])dnl
9247AM_MISSING_PROG(ACLOCAL, aclocal-${am__api_version})
9248AM_MISSING_PROG(AUTOCONF, autoconf)
9249AM_MISSING_PROG(AUTOMAKE, automake-${am__api_version})
9250AM_MISSING_PROG(AUTOHEADER, autoheader)
9251AM_MISSING_PROG(MAKEINFO, makeinfo)
9252AC_REQUIRE([AM_PROG_INSTALL_SH])dnl
9253AC_REQUIRE([AM_PROG_INSTALL_STRIP])dnl
9254AC_REQUIRE([AM_PROG_MKDIR_P])dnl
9255# We need awk for the "check" target. The system "awk" is bad on
9256# some platforms.
9257AC_REQUIRE([AC_PROG_AWK])dnl
9258AC_REQUIRE([AC_PROG_MAKE_SET])dnl
9259AC_REQUIRE([AM_SET_LEADING_DOT])dnl
9260_AM_IF_OPTION([tar-ustar], [_AM_PROG_TAR([ustar])],
9261 [_AM_IF_OPTION([tar-pax], [_AM_PROG_TAR([pax])],
9262 [_AM_PROG_TAR([v7])])])
9263_AM_IF_OPTION([no-dependencies],,
9264[AC_PROVIDE_IFELSE([AC_PROG_CC],
9265 [_AM_DEPENDENCIES(CC)],
9266 [define([AC_PROG_CC],
9267 defn([AC_PROG_CC])[_AM_DEPENDENCIES(CC)])])dnl
9268AC_PROVIDE_IFELSE([AC_PROG_CXX],
9269 [_AM_DEPENDENCIES(CXX)],
9270 [define([AC_PROG_CXX],
9271 defn([AC_PROG_CXX])[_AM_DEPENDENCIES(CXX)])])dnl
9272AC_PROVIDE_IFELSE([AC_PROG_OBJC],
9273 [_AM_DEPENDENCIES(OBJC)],
9274 [define([AC_PROG_OBJC],
9275 defn([AC_PROG_OBJC])[_AM_DEPENDENCIES(OBJC)])])dnl
9276])
9277_AM_IF_OPTION([silent-rules], [AC_REQUIRE([AM_SILENT_RULES])])dnl
9278dnl The `parallel-tests' driver may need to know about EXEEXT, so add the
9279dnl `am__EXEEXT' conditional if _AM_COMPILER_EXEEXT was seen. This macro
9280dnl is hooked onto _AC_COMPILER_EXEEXT early, see below.
9281AC_CONFIG_COMMANDS_PRE(dnl
9282[m4_provide_if([_AM_COMPILER_EXEEXT],
9283 [AM_CONDITIONAL([am__EXEEXT], [test -n "$EXEEXT"])])])dnl
9284])
9285
9286dnl Hook into `_AC_COMPILER_EXEEXT' early to learn its expansion. Do not
9287dnl add the conditional right here, as _AC_COMPILER_EXEEXT may be further
9288dnl mangled by Autoconf and run in a shell conditional statement.
9289m4_define([_AC_COMPILER_EXEEXT],
9290m4_defn([_AC_COMPILER_EXEEXT])[m4_provide([_AM_COMPILER_EXEEXT])])
9291
9292
9293# When config.status generates a header, we must update the stamp-h file.
9294# This file resides in the same directory as the config header
9295# that is generated. The stamp files are numbered to have different names.
9296
9297# Autoconf calls _AC_AM_CONFIG_HEADER_HOOK (when defined) in the
9298# loop where config.status creates the headers, so we can generate
9299# our stamp files there.
9300AC_DEFUN([_AC_AM_CONFIG_HEADER_HOOK],
9301[# Compute $1's index in $config_headers.
9302_am_arg=$1
9303_am_stamp_count=1
9304for _am_header in $config_headers :; do
9305 case $_am_header in
9306 $_am_arg | $_am_arg:* )
9307 break ;;
9308 * )
9309 _am_stamp_count=`expr $_am_stamp_count + 1` ;;
9310 esac
9311done
9312echo "timestamp for $_am_arg" >`AS_DIRNAME(["$_am_arg"])`/stamp-h[]$_am_stamp_count])
9313
9314# Copyright (C) 2001, 2003, 2005, 2008 Free Software Foundation, Inc.
9315#
9316# This file is free software; the Free Software Foundation
9317# gives unlimited permission to copy and/or distribute it,
9318# with or without modifications, as long as this notice is preserved.
9319
9320# AM_PROG_INSTALL_SH
9321# ------------------
9322# Define $install_sh.
9323AC_DEFUN([AM_PROG_INSTALL_SH],
9324[AC_REQUIRE([AM_AUX_DIR_EXPAND])dnl
9325if test x"${install_sh}" != xset; then
9326 case $am_aux_dir in
9327 *\ * | *\ *)
9328 install_sh="\${SHELL} '$am_aux_dir/install-sh'" ;;
9329 *)
9330 install_sh="\${SHELL} $am_aux_dir/install-sh"
9331 esac
9332fi
9333AC_SUBST(install_sh)])
9334
9335# Copyright (C) 2003, 2005 Free Software Foundation, Inc.
9336#
9337# This file is free software; the Free Software Foundation
9338# gives unlimited permission to copy and/or distribute it,
9339# with or without modifications, as long as this notice is preserved.
9340
9341# serial 2
9342
9343# Check whether the underlying file-system supports filenames
9344# with a leading dot. For instance MS-DOS doesn't.
9345AC_DEFUN([AM_SET_LEADING_DOT],
9346[rm -rf .tst 2>/dev/null
9347mkdir .tst 2>/dev/null
9348if test -d .tst; then
9349 am__leading_dot=.
9350else
9351 am__leading_dot=_
9352fi
9353rmdir .tst 2>/dev/null
9354AC_SUBST([am__leading_dot])])
9355
9356# Check to see how 'make' treats includes. -*- Autoconf -*-
9357
9358# Copyright (C) 2001, 2002, 2003, 2005, 2009 Free Software Foundation, Inc.
9359#
9360# This file is free software; the Free Software Foundation
9361# gives unlimited permission to copy and/or distribute it,
9362# with or without modifications, as long as this notice is preserved.
9363
9364# serial 4
9365
9366# AM_MAKE_INCLUDE()
9367# -----------------
9368# Check to see how make treats includes.
9369AC_DEFUN([AM_MAKE_INCLUDE],
9370[am_make=${MAKE-make}
9371cat > confinc << 'END'
9372am__doit:
9373 @echo this is the am__doit target
9374.PHONY: am__doit
9375END
9376# If we don't find an include directive, just comment out the code.
9377AC_MSG_CHECKING([for style of include used by $am_make])
9378am__include="#"
9379am__quote=
9380_am_result=none
9381# First try GNU make style include.
9382echo "include confinc" > confmf
9383# Ignore all kinds of additional output from `make'.
9384case `$am_make -s -f confmf 2> /dev/null` in #(
9385*the\ am__doit\ target*)
9386 am__include=include
9387 am__quote=
9388 _am_result=GNU
9389 ;;
9390esac
9391# Now try BSD make style include.
9392if test "$am__include" = "#"; then
9393 echo '.include "confinc"' > confmf
9394 case `$am_make -s -f confmf 2> /dev/null` in #(
9395 *the\ am__doit\ target*)
9396 am__include=.include
9397 am__quote="\""
9398 _am_result=BSD
9399 ;;
9400 esac
9401fi
9402AC_SUBST([am__include])
9403AC_SUBST([am__quote])
9404AC_MSG_RESULT([$_am_result])
9405rm -f confinc confmf
9406])
9407
9408# Copyright (C) 1999, 2000, 2001, 2003, 2004, 2005, 2008
9409# Free Software Foundation, Inc.
9410#
9411# This file is free software; the Free Software Foundation
9412# gives unlimited permission to copy and/or distribute it,
9413# with or without modifications, as long as this notice is preserved.
9414
9415# serial 6
9416
9417# AM_PROG_CC_C_O
9418# --------------
9419# Like AC_PROG_CC_C_O, but changed for automake.
9420AC_DEFUN([AM_PROG_CC_C_O],
9421[AC_REQUIRE([AC_PROG_CC_C_O])dnl
9422AC_REQUIRE([AM_AUX_DIR_EXPAND])dnl
9423AC_REQUIRE_AUX_FILE([compile])dnl
9424# FIXME: we rely on the cache variable name because
9425# there is no other way.
9426set dummy $CC
9427am_cc=`echo $[2] | sed ['s/[^a-zA-Z0-9_]/_/g;s/^[0-9]/_/']`
9428eval am_t=\$ac_cv_prog_cc_${am_cc}_c_o
9429if test "$am_t" != yes; then
9430 # Losing compiler, so override with the script.
9431 # FIXME: It is wrong to rewrite CC.
9432 # But if we don't then we get into trouble of one sort or another.
9433 # A longer-term fix would be to have automake use am__CC in this case,
9434 # and then we could set am__CC="\$(top_srcdir)/compile \$(CC)"
9435 CC="$am_aux_dir/compile $CC"
9436fi
9437dnl Make sure AC_PROG_CC is never called again, or it will override our
9438dnl setting of CC.
9439m4_define([AC_PROG_CC],
9440 [m4_fatal([AC_PROG_CC cannot be called after AM_PROG_CC_C_O])])
9441])
9442
9443# Fake the existence of programs that GNU maintainers use. -*- Autoconf -*-
9444
9445# Copyright (C) 1997, 1999, 2000, 2001, 2003, 2004, 2005, 2008
9446# Free Software Foundation, Inc.
9447#
9448# This file is free software; the Free Software Foundation
9449# gives unlimited permission to copy and/or distribute it,
9450# with or without modifications, as long as this notice is preserved.
9451
9452# serial 6
9453
9454# AM_MISSING_PROG(NAME, PROGRAM)
9455# ------------------------------
9456AC_DEFUN([AM_MISSING_PROG],
9457[AC_REQUIRE([AM_MISSING_HAS_RUN])
9458$1=${$1-"${am_missing_run}$2"}
9459AC_SUBST($1)])
9460
9461
9462# AM_MISSING_HAS_RUN
9463# ------------------
9464# Define MISSING if not defined so far and test if it supports --run.
9465# If it does, set am_missing_run to use it, otherwise, to nothing.
9466AC_DEFUN([AM_MISSING_HAS_RUN],
9467[AC_REQUIRE([AM_AUX_DIR_EXPAND])dnl
9468AC_REQUIRE_AUX_FILE([missing])dnl
9469if test x"${MISSING+set}" != xset; then
9470 case $am_aux_dir in
9471 *\ * | *\ *)
9472 MISSING="\${SHELL} \"$am_aux_dir/missing\"" ;;
9473 *)
9474 MISSING="\${SHELL} $am_aux_dir/missing" ;;
9475 esac
9476fi
9477# Use eval to expand $SHELL
9478if eval "$MISSING --run true"; then
9479 am_missing_run="$MISSING --run "
9480else
9481 am_missing_run=
9482 AC_MSG_WARN([`missing' script is too old or missing])
9483fi
9484])
9485
9486# Copyright (C) 2003, 2004, 2005, 2006 Free Software Foundation, Inc.
9487#
9488# This file is free software; the Free Software Foundation
9489# gives unlimited permission to copy and/or distribute it,
9490# with or without modifications, as long as this notice is preserved.
9491
9492# AM_PROG_MKDIR_P
9493# ---------------
9494# Check for `mkdir -p'.
9495AC_DEFUN([AM_PROG_MKDIR_P],
9496[AC_PREREQ([2.60])dnl
9497AC_REQUIRE([AC_PROG_MKDIR_P])dnl
9498dnl Automake 1.8 to 1.9.6 used to define mkdir_p. We now use MKDIR_P,
9499dnl while keeping a definition of mkdir_p for backward compatibility.
9500dnl @MKDIR_P@ is magic: AC_OUTPUT adjusts its value for each Makefile.
9501dnl However we cannot define mkdir_p as $(MKDIR_P) for the sake of
9502dnl Makefile.ins that do not define MKDIR_P, so we do our own
9503dnl adjustment using top_builddir (which is defined more often than
9504dnl MKDIR_P).
9505AC_SUBST([mkdir_p], ["$MKDIR_P"])dnl
9506case $mkdir_p in
9507 [[\\/$]]* | ?:[[\\/]]*) ;;
9508 */*) mkdir_p="\$(top_builddir)/$mkdir_p" ;;
9509esac
9510])
9511
9512# Helper functions for option handling. -*- Autoconf -*-
9513
9514# Copyright (C) 2001, 2002, 2003, 2005, 2008 Free Software Foundation, Inc.
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
9520# serial 4
9521
9522# _AM_MANGLE_OPTION(NAME)
9523# -----------------------
9524AC_DEFUN([_AM_MANGLE_OPTION],
9525[[_AM_OPTION_]m4_bpatsubst($1, [[^a-zA-Z0-9_]], [_])])
9526
9527# _AM_SET_OPTION(NAME)
9528# ------------------------------
9529# Set option NAME. Presently that only means defining a flag for this option.
9530AC_DEFUN([_AM_SET_OPTION],
9531[m4_define(_AM_MANGLE_OPTION([$1]), 1)])
9532
9533# _AM_SET_OPTIONS(OPTIONS)
9534# ----------------------------------
9535# OPTIONS is a space-separated list of Automake options.
9536AC_DEFUN([_AM_SET_OPTIONS],
9537[m4_foreach_w([_AM_Option], [$1], [_AM_SET_OPTION(_AM_Option)])])
9538
9539# _AM_IF_OPTION(OPTION, IF-SET, [IF-NOT-SET])
9540# -------------------------------------------
9541# Execute IF-SET if OPTION is set, IF-NOT-SET otherwise.
9542AC_DEFUN([_AM_IF_OPTION],
9543[m4_ifset(_AM_MANGLE_OPTION([$1]), [$2], [$3])])
9544
9545# Check to make sure that the build environment is sane. -*- Autoconf -*-
9546
9547# Copyright (C) 1996, 1997, 2000, 2001, 2003, 2005, 2008
9548# Free Software Foundation, Inc.
9549#
9550# This file is free software; the Free Software Foundation
9551# gives unlimited permission to copy and/or distribute it,
9552# with or without modifications, as long as this notice is preserved.
9553
9554# serial 5
9555
9556# AM_SANITY_CHECK
9557# ---------------
9558AC_DEFUN([AM_SANITY_CHECK],
9559[AC_MSG_CHECKING([whether build environment is sane])
9560# Just in case
9561sleep 1
9562echo timestamp > conftest.file
9563# Reject unsafe characters in $srcdir or the absolute working directory
9564# name. Accept space and tab only in the latter.
9565am_lf='
9566'
9567case `pwd` in
9568 *[[\\\"\#\$\&\'\`$am_lf]]*)
9569 AC_MSG_ERROR([unsafe absolute working directory name]);;
9570esac
9571case $srcdir in
9572 *[[\\\"\#\$\&\'\`$am_lf\ \ ]]*)
9573 AC_MSG_ERROR([unsafe srcdir value: `$srcdir']);;
9574esac
9575
9576# Do `set' in a subshell so we don't clobber the current shell's
9577# arguments. Must try -L first in case configure is actually a
9578# symlink; some systems play weird games with the mod time of symlinks
9579# (eg FreeBSD returns the mod time of the symlink's containing
9580# directory).
9581if (
9582 set X `ls -Lt "$srcdir/configure" conftest.file 2> /dev/null`
9583 if test "$[*]" = "X"; then
9584 # -L didn't work.
9585 set X `ls -t "$srcdir/configure" conftest.file`
9586 fi
9587 rm -f conftest.file
9588 if test "$[*]" != "X $srcdir/configure conftest.file" \
9589 && test "$[*]" != "X conftest.file $srcdir/configure"; then
9590
9591 # If neither matched, then we have a broken ls. This can happen
9592 # if, for instance, CONFIG_SHELL is bash and it inherits a
9593 # broken ls alias from the environment. This has actually
9594 # happened. Such a system could not be considered "sane".
9595 AC_MSG_ERROR([ls -t appears to fail. Make sure there is not a broken
9596alias in your environment])
9597 fi
9598
9599 test "$[2]" = conftest.file
9600 )
9601then
9602 # Ok.
9603 :
9604else
9605 AC_MSG_ERROR([newly created file is older than distributed files!
9606Check your system clock])
9607fi
9608AC_MSG_RESULT(yes)])
9609
9610# Copyright (C) 2001, 2003, 2005 Free Software Foundation, Inc.
9611#
9612# This file is free software; the Free Software Foundation
9613# gives unlimited permission to copy and/or distribute it,
9614# with or without modifications, as long as this notice is preserved.
9615
9616# AM_PROG_INSTALL_STRIP
9617# ---------------------
9618# One issue with vendor `install' (even GNU) is that you can't
9619# specify the program used to strip binaries. This is especially
9620# annoying in cross-compiling environments, where the build's strip
9621# is unlikely to handle the host's binaries.
9622# Fortunately install-sh will honor a STRIPPROG variable, so we
9623# always use install-sh in `make install-strip', and initialize
9624# STRIPPROG with the value of the STRIP variable (set by the user).
9625AC_DEFUN([AM_PROG_INSTALL_STRIP],
9626[AC_REQUIRE([AM_PROG_INSTALL_SH])dnl
9627# Installed binaries are usually stripped using `strip' when the user
9628# run `make install-strip'. However `strip' might not be the right
9629# tool to use in cross-compilation environments, therefore Automake
9630# will honor the `STRIP' environment variable to overrule this program.
9631dnl Don't test for $cross_compiling = yes, because it might be `maybe'.
9632if test "$cross_compiling" != no; then
9633 AC_CHECK_TOOL([STRIP], [strip], :)
9634fi
9635INSTALL_STRIP_PROGRAM="\$(install_sh) -c -s"
9636AC_SUBST([INSTALL_STRIP_PROGRAM])])
9637
9638# Copyright (C) 2006, 2008 Free Software Foundation, Inc.
9639#
9640# This file is free software; the Free Software Foundation
9641# gives unlimited permission to copy and/or distribute it,
9642# with or without modifications, as long as this notice is preserved.
9643
9644# serial 2
9645
9646# _AM_SUBST_NOTMAKE(VARIABLE)
9647# ---------------------------
9648# Prevent Automake from outputting VARIABLE = @VARIABLE@ in Makefile.in.
9649# This macro is traced by Automake.
9650AC_DEFUN([_AM_SUBST_NOTMAKE])
9651
9652# AM_SUBST_NOTMAKE(VARIABLE)
9653# ---------------------------
9654# Public sister of _AM_SUBST_NOTMAKE.
9655AC_DEFUN([AM_SUBST_NOTMAKE], [_AM_SUBST_NOTMAKE($@)])
9656
9657# Check how to create a tarball. -*- Autoconf -*-
9658
9659# Copyright (C) 2004, 2005 Free Software Foundation, Inc.
9660#
9661# This file is free software; the Free Software Foundation
9662# gives unlimited permission to copy and/or distribute it,
9663# with or without modifications, as long as this notice is preserved.
9664
9665# serial 2
9666
9667# _AM_PROG_TAR(FORMAT)
9668# --------------------
9669# Check how to create a tarball in format FORMAT.
9670# FORMAT should be one of `v7', `ustar', or `pax'.
9671#
9672# Substitute a variable $(am__tar) that is a command
9673# writing to stdout a FORMAT-tarball containing the directory
9674# $tardir.
9675# tardir=directory && $(am__tar) > result.tar
9676#
9677# Substitute a variable $(am__untar) that extract such
9678# a tarball read from stdin.
9679# $(am__untar) < result.tar
9680AC_DEFUN([_AM_PROG_TAR],
9681[# Always define AMTAR for backward compatibility.
9682AM_MISSING_PROG([AMTAR], [tar])
9683m4_if([$1], [v7],
9684 [am__tar='${AMTAR} chof - "$$tardir"'; am__untar='${AMTAR} xf -'],
9685 [m4_case([$1], [ustar],, [pax],,
9686 [m4_fatal([Unknown tar format])])
9687AC_MSG_CHECKING([how to create a $1 tar archive])
9688# Loop over all known methods to create a tar archive until one works.
9689_am_tools='gnutar m4_if([$1], [ustar], [plaintar]) pax cpio none'
9690_am_tools=${am_cv_prog_tar_$1-$_am_tools}
9691# Do not fold the above two line into one, because Tru64 sh and
9692# Solaris sh will not grok spaces in the rhs of `-'.
9693for _am_tool in $_am_tools
9694do
9695 case $_am_tool in
9696 gnutar)
9697 for _am_tar in tar gnutar gtar;
9698 do
9699 AM_RUN_LOG([$_am_tar --version]) && break
9700 done
9701 am__tar="$_am_tar --format=m4_if([$1], [pax], [posix], [$1]) -chf - "'"$$tardir"'
9702 am__tar_="$_am_tar --format=m4_if([$1], [pax], [posix], [$1]) -chf - "'"$tardir"'
9703 am__untar="$_am_tar -xf -"
9704 ;;
9705 plaintar)
9706 # Must skip GNU tar: if it does not support --format= it doesn't create
9707 # ustar tarball either.
9708 (tar --version) >/dev/null 2>&1 && continue
9709 am__tar='tar chf - "$$tardir"'
9710 am__tar_='tar chf - "$tardir"'
9711 am__untar='tar xf -'
9712 ;;
9713 pax)
9714 am__tar='pax -L -x $1 -w "$$tardir"'
9715 am__tar_='pax -L -x $1 -w "$tardir"'
9716 am__untar='pax -r'
9717 ;;
9718 cpio)
9719 am__tar='find "$$tardir" -print | cpio -o -H $1 -L'
9720 am__tar_='find "$tardir" -print | cpio -o -H $1 -L'
9721 am__untar='cpio -i -H $1 -d'
9722 ;;
9723 none)
9724 am__tar=false
9725 am__tar_=false
9726 am__untar=false
9727 ;;
9728 esac
9729
9730 # If the value was cached, stop now. We just wanted to have am__tar
9731 # and am__untar set.
9732 test -n "${am_cv_prog_tar_$1}" && break
9733
9734 # tar/untar a dummy directory, and stop if the command works
9735 rm -rf conftest.dir
9736 mkdir conftest.dir
9737 echo GrepMe > conftest.dir/file
9738 AM_RUN_LOG([tardir=conftest.dir && eval $am__tar_ >conftest.tar])
9739 rm -rf conftest.dir
9740 if test -s conftest.tar; then
9741 AM_RUN_LOG([$am__untar <conftest.tar])
9742 grep GrepMe conftest.dir/file >/dev/null 2>&1 && break
9743 fi
9744done
9745rm -rf conftest.dir
9746
9747AC_CACHE_VAL([am_cv_prog_tar_$1], [am_cv_prog_tar_$1=$_am_tool])
9748AC_MSG_RESULT([$am_cv_prog_tar_$1])])
9749AC_SUBST([am__tar])
9750AC_SUBST([am__untar])
9751]) # _AM_PROG_TAR
9752