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