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