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