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