aclocal.m4 revision 302b15bd
1# generated automatically by aclocal 1.11.1 -*- Autoconf -*-
2
3# Copyright (C) 1996, 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2004,
4# 2005, 2006, 2007, 2008, 2009  Free Software Foundation, Inc.
5# This file is free software; the Free Software Foundation
6# gives unlimited permission to copy and/or distribute it,
7# with or without modifications, as long as this notice is preserved.
8
9# This program is distributed in the hope that it will be useful,
10# but WITHOUT ANY WARRANTY, to the extent permitted by law; without
11# even the implied warranty of MERCHANTABILITY or FITNESS FOR A
12# PARTICULAR PURPOSE.
13
14m4_ifndef([AC_AUTOCONF_VERSION],
15  [m4_copy([m4_PACKAGE_VERSION], [AC_AUTOCONF_VERSION])])dnl
16m4_if(m4_defn([AC_AUTOCONF_VERSION]), [2.68],,
17[m4_warning([this file was generated for autoconf 2.68.
18You have another version of autoconf.  It may work, but is not guaranteed to.
19If you have problems, you may need to regenerate the build system entirely.
20To do so, use the procedure documented by the package, typically `autoreconf'.])])
21
22# libtool.m4 - Configure libtool for the host system. -*-Autoconf-*-
23#
24#   Copyright (C) 1996, 1997, 1998, 1999, 2000, 2001, 2003, 2004, 2005,
25#                 2006, 2007, 2008, 2009, 2010 Free Software Foundation,
26#                 Inc.
27#   Written by Gordon Matzigkeit, 1996
28#
29# This file is free software; the Free Software Foundation gives
30# unlimited permission to copy and/or distribute it, with or without
31# modifications, as long as this notice is preserved.
32
33m4_define([_LT_COPYING], [dnl
34#   Copyright (C) 1996, 1997, 1998, 1999, 2000, 2001, 2003, 2004, 2005,
35#                 2006, 2007, 2008, 2009, 2010 Free Software Foundation,
36#                 Inc.
37#   Written by Gordon Matzigkeit, 1996
38#
39#   This file is part of GNU Libtool.
40#
41# GNU Libtool is free software; you can redistribute it and/or
42# modify it under the terms of the GNU General Public License as
43# published by the Free Software Foundation; either version 2 of
44# the License, or (at your option) any later version.
45#
46# As a special exception to the GNU General Public License,
47# if you distribute this file as part of a program or library that
48# is built using GNU Libtool, you may include this file under the
49# same distribution terms that you use for the rest of that program.
50#
51# GNU Libtool is distributed in the hope that it will be useful,
52# but WITHOUT ANY WARRANTY; without even the implied warranty of
53# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
54# GNU General Public License for more details.
55#
56# You should have received a copy of the GNU General Public License
57# along with GNU Libtool; see the file COPYING.  If not, a copy
58# can be downloaded from http://www.gnu.org/licenses/gpl.html, or
59# obtained by writing to the Free Software Foundation, Inc.,
60# 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
61])
62
63# serial 57 LT_INIT
64
65
66# LT_PREREQ(VERSION)
67# ------------------
68# Complain and exit if this libtool version is less that VERSION.
69m4_defun([LT_PREREQ],
70[m4_if(m4_version_compare(m4_defn([LT_PACKAGE_VERSION]), [$1]), -1,
71       [m4_default([$3],
72		   [m4_fatal([Libtool version $1 or higher is required],
73		             63)])],
74       [$2])])
75
76
77# _LT_CHECK_BUILDDIR
78# ------------------
79# Complain if the absolute build directory name contains unusual characters
80m4_defun([_LT_CHECK_BUILDDIR],
81[case `pwd` in
82  *\ * | *\	*)
83    AC_MSG_WARN([Libtool does not cope well with whitespace in `pwd`]) ;;
84esac
85])
86
87
88# LT_INIT([OPTIONS])
89# ------------------
90AC_DEFUN([LT_INIT],
91[AC_PREREQ([2.58])dnl We use AC_INCLUDES_DEFAULT
92AC_REQUIRE([AC_CONFIG_AUX_DIR_DEFAULT])dnl
93AC_BEFORE([$0], [LT_LANG])dnl
94AC_BEFORE([$0], [LT_OUTPUT])dnl
95AC_BEFORE([$0], [LTDL_INIT])dnl
96m4_require([_LT_CHECK_BUILDDIR])dnl
97
98dnl Autoconf doesn't catch unexpanded LT_ macros by default:
99m4_pattern_forbid([^_?LT_[A-Z_]+$])dnl
100m4_pattern_allow([^(_LT_EOF|LT_DLGLOBAL|LT_DLLAZY_OR_NOW|LT_MULTI_MODULE)$])dnl
101dnl aclocal doesn't pull ltoptions.m4, ltsugar.m4, or ltversion.m4
102dnl unless we require an AC_DEFUNed macro:
103AC_REQUIRE([LTOPTIONS_VERSION])dnl
104AC_REQUIRE([LTSUGAR_VERSION])dnl
105AC_REQUIRE([LTVERSION_VERSION])dnl
106AC_REQUIRE([LTOBSOLETE_VERSION])dnl
107m4_require([_LT_PROG_LTMAIN])dnl
108
109_LT_SHELL_INIT([SHELL=${CONFIG_SHELL-/bin/sh}])
110
111dnl Parse OPTIONS
112_LT_SET_OPTIONS([$0], [$1])
113
114# This can be used to rebuild libtool when needed
115LIBTOOL_DEPS="$ltmain"
116
117# Always use our own libtool.
118LIBTOOL='$(SHELL) $(top_builddir)/libtool'
119AC_SUBST(LIBTOOL)dnl
120
121_LT_SETUP
122
123# Only expand once:
124m4_define([LT_INIT])
125])# LT_INIT
126
127# Old names:
128AU_ALIAS([AC_PROG_LIBTOOL], [LT_INIT])
129AU_ALIAS([AM_PROG_LIBTOOL], [LT_INIT])
130dnl aclocal-1.4 backwards compatibility:
131dnl AC_DEFUN([AC_PROG_LIBTOOL], [])
132dnl AC_DEFUN([AM_PROG_LIBTOOL], [])
133
134
135# _LT_CC_BASENAME(CC)
136# -------------------
137# Calculate cc_basename.  Skip known compiler wrappers and cross-prefix.
138m4_defun([_LT_CC_BASENAME],
139[for cc_temp in $1""; do
140  case $cc_temp in
141    compile | *[[\\/]]compile | ccache | *[[\\/]]ccache ) ;;
142    distcc | *[[\\/]]distcc | purify | *[[\\/]]purify ) ;;
143    \-*) ;;
144    *) break;;
145  esac
146done
147cc_basename=`$ECHO "$cc_temp" | $SED "s%.*/%%; s%^$host_alias-%%"`
148])
149
150
151# _LT_FILEUTILS_DEFAULTS
152# ----------------------
153# It is okay to use these file commands and assume they have been set
154# sensibly after `m4_require([_LT_FILEUTILS_DEFAULTS])'.
155m4_defun([_LT_FILEUTILS_DEFAULTS],
156[: ${CP="cp -f"}
157: ${MV="mv -f"}
158: ${RM="rm -f"}
159])# _LT_FILEUTILS_DEFAULTS
160
161
162# _LT_SETUP
163# ---------
164m4_defun([_LT_SETUP],
165[AC_REQUIRE([AC_CANONICAL_HOST])dnl
166AC_REQUIRE([AC_CANONICAL_BUILD])dnl
167AC_REQUIRE([_LT_PREPARE_SED_QUOTE_VARS])dnl
168AC_REQUIRE([_LT_PROG_ECHO_BACKSLASH])dnl
169
170_LT_DECL([], [host_alias], [0], [The host system])dnl
171_LT_DECL([], [host], [0])dnl
172_LT_DECL([], [host_os], [0])dnl
173dnl
174_LT_DECL([], [build_alias], [0], [The build system])dnl
175_LT_DECL([], [build], [0])dnl
176_LT_DECL([], [build_os], [0])dnl
177dnl
178AC_REQUIRE([AC_PROG_CC])dnl
179AC_REQUIRE([LT_PATH_LD])dnl
180AC_REQUIRE([LT_PATH_NM])dnl
181dnl
182AC_REQUIRE([AC_PROG_LN_S])dnl
183test -z "$LN_S" && LN_S="ln -s"
184_LT_DECL([], [LN_S], [1], [Whether we need soft or hard links])dnl
185dnl
186AC_REQUIRE([LT_CMD_MAX_LEN])dnl
187_LT_DECL([objext], [ac_objext], [0], [Object file suffix (normally "o")])dnl
188_LT_DECL([], [exeext], [0], [Executable file suffix (normally "")])dnl
189dnl
190m4_require([_LT_FILEUTILS_DEFAULTS])dnl
191m4_require([_LT_CHECK_SHELL_FEATURES])dnl
192m4_require([_LT_PATH_CONVERSION_FUNCTIONS])dnl
193m4_require([_LT_CMD_RELOAD])dnl
194m4_require([_LT_CHECK_MAGIC_METHOD])dnl
195m4_require([_LT_CHECK_SHAREDLIB_FROM_LINKLIB])dnl
196m4_require([_LT_CMD_OLD_ARCHIVE])dnl
197m4_require([_LT_CMD_GLOBAL_SYMBOLS])dnl
198m4_require([_LT_WITH_SYSROOT])dnl
199
200_LT_CONFIG_LIBTOOL_INIT([
201# See if we are running on zsh, and set the options which allow our
202# commands through without removal of \ escapes INIT.
203if test -n "\${ZSH_VERSION+set}" ; then
204   setopt NO_GLOB_SUBST
205fi
206])
207if test -n "${ZSH_VERSION+set}" ; then
208   setopt NO_GLOB_SUBST
209fi
210
211_LT_CHECK_OBJDIR
212
213m4_require([_LT_TAG_COMPILER])dnl
214
215case $host_os in
216aix3*)
217  # AIX sometimes has problems with the GCC collect2 program.  For some
218  # reason, if we set the COLLECT_NAMES environment variable, the problems
219  # vanish in a puff of smoke.
220  if test "X${COLLECT_NAMES+set}" != Xset; then
221    COLLECT_NAMES=
222    export COLLECT_NAMES
223  fi
224  ;;
225esac
226
227# Global variables:
228ofile=libtool
229can_build_shared=yes
230
231# All known linkers require a `.a' archive for static linking (except MSVC,
232# which needs '.lib').
233libext=a
234
235with_gnu_ld="$lt_cv_prog_gnu_ld"
236
237old_CC="$CC"
238old_CFLAGS="$CFLAGS"
239
240# Set sane defaults for various variables
241test -z "$CC" && CC=cc
242test -z "$LTCC" && LTCC=$CC
243test -z "$LTCFLAGS" && LTCFLAGS=$CFLAGS
244test -z "$LD" && LD=ld
245test -z "$ac_objext" && ac_objext=o
246
247_LT_CC_BASENAME([$compiler])
248
249# Only perform the check for file, if the check method requires it
250test -z "$MAGIC_CMD" && MAGIC_CMD=file
251case $deplibs_check_method in
252file_magic*)
253  if test "$file_magic_cmd" = '$MAGIC_CMD'; then
254    _LT_PATH_MAGIC
255  fi
256  ;;
257esac
258
259# Use C for the default configuration in the libtool script
260LT_SUPPORTED_TAG([CC])
261_LT_LANG_C_CONFIG
262_LT_LANG_DEFAULT_CONFIG
263_LT_CONFIG_COMMANDS
264])# _LT_SETUP
265
266
267# _LT_PREPARE_SED_QUOTE_VARS
268# --------------------------
269# Define a few sed substitution that help us do robust quoting.
270m4_defun([_LT_PREPARE_SED_QUOTE_VARS],
271[# Backslashify metacharacters that are still active within
272# double-quoted strings.
273sed_quote_subst='s/\([["`$\\]]\)/\\\1/g'
274
275# Same as above, but do not quote variable references.
276double_quote_subst='s/\([["`\\]]\)/\\\1/g'
277
278# Sed substitution to delay expansion of an escaped shell variable in a
279# double_quote_subst'ed string.
280delay_variable_subst='s/\\\\\\\\\\\$/\\\\\\$/g'
281
282# Sed substitution to delay expansion of an escaped single quote.
283delay_single_quote_subst='s/'\''/'\'\\\\\\\'\''/g'
284
285# Sed substitution to avoid accidental globbing in evaled expressions
286no_glob_subst='s/\*/\\\*/g'
287])
288
289# _LT_PROG_LTMAIN
290# ---------------
291# Note that this code is called both from `configure', and `config.status'
292# now that we use AC_CONFIG_COMMANDS to generate libtool.  Notably,
293# `config.status' has no value for ac_aux_dir unless we are using Automake,
294# so we pass a copy along to make sure it has a sensible value anyway.
295m4_defun([_LT_PROG_LTMAIN],
296[m4_ifdef([AC_REQUIRE_AUX_FILE], [AC_REQUIRE_AUX_FILE([ltmain.sh])])dnl
297_LT_CONFIG_LIBTOOL_INIT([ac_aux_dir='$ac_aux_dir'])
298ltmain="$ac_aux_dir/ltmain.sh"
299])# _LT_PROG_LTMAIN
300
301
302
303# So that we can recreate a full libtool script including additional
304# tags, we accumulate the chunks of code to send to AC_CONFIG_COMMANDS
305# in macros and then make a single call at the end using the `libtool'
306# label.
307
308
309# _LT_CONFIG_LIBTOOL_INIT([INIT-COMMANDS])
310# ----------------------------------------
311# Register INIT-COMMANDS to be passed to AC_CONFIG_COMMANDS later.
312m4_define([_LT_CONFIG_LIBTOOL_INIT],
313[m4_ifval([$1],
314          [m4_append([_LT_OUTPUT_LIBTOOL_INIT],
315                     [$1
316])])])
317
318# Initialize.
319m4_define([_LT_OUTPUT_LIBTOOL_INIT])
320
321
322# _LT_CONFIG_LIBTOOL([COMMANDS])
323# ------------------------------
324# Register COMMANDS to be passed to AC_CONFIG_COMMANDS later.
325m4_define([_LT_CONFIG_LIBTOOL],
326[m4_ifval([$1],
327          [m4_append([_LT_OUTPUT_LIBTOOL_COMMANDS],
328                     [$1
329])])])
330
331# Initialize.
332m4_define([_LT_OUTPUT_LIBTOOL_COMMANDS])
333
334
335# _LT_CONFIG_SAVE_COMMANDS([COMMANDS], [INIT_COMMANDS])
336# -----------------------------------------------------
337m4_defun([_LT_CONFIG_SAVE_COMMANDS],
338[_LT_CONFIG_LIBTOOL([$1])
339_LT_CONFIG_LIBTOOL_INIT([$2])
340])
341
342
343# _LT_FORMAT_COMMENT([COMMENT])
344# -----------------------------
345# Add leading comment marks to the start of each line, and a trailing
346# full-stop to the whole comment if one is not present already.
347m4_define([_LT_FORMAT_COMMENT],
348[m4_ifval([$1], [
349m4_bpatsubst([m4_bpatsubst([$1], [^ *], [# ])],
350              [['`$\]], [\\\&])]m4_bmatch([$1], [[!?.]$], [], [.])
351)])
352
353
354
355
356
357# _LT_DECL([CONFIGNAME], VARNAME, VALUE, [DESCRIPTION], [IS-TAGGED?])
358# -------------------------------------------------------------------
359# CONFIGNAME is the name given to the value in the libtool script.
360# VARNAME is the (base) name used in the configure script.
361# VALUE may be 0, 1 or 2 for a computed quote escaped value based on
362# VARNAME.  Any other value will be used directly.
363m4_define([_LT_DECL],
364[lt_if_append_uniq([lt_decl_varnames], [$2], [, ],
365    [lt_dict_add_subkey([lt_decl_dict], [$2], [libtool_name],
366	[m4_ifval([$1], [$1], [$2])])
367    lt_dict_add_subkey([lt_decl_dict], [$2], [value], [$3])
368    m4_ifval([$4],
369	[lt_dict_add_subkey([lt_decl_dict], [$2], [description], [$4])])
370    lt_dict_add_subkey([lt_decl_dict], [$2],
371	[tagged?], [m4_ifval([$5], [yes], [no])])])
372])
373
374
375# _LT_TAGDECL([CONFIGNAME], VARNAME, VALUE, [DESCRIPTION])
376# --------------------------------------------------------
377m4_define([_LT_TAGDECL], [_LT_DECL([$1], [$2], [$3], [$4], [yes])])
378
379
380# lt_decl_tag_varnames([SEPARATOR], [VARNAME1...])
381# ------------------------------------------------
382m4_define([lt_decl_tag_varnames],
383[_lt_decl_filter([tagged?], [yes], $@)])
384
385
386# _lt_decl_filter(SUBKEY, VALUE, [SEPARATOR], [VARNAME1..])
387# ---------------------------------------------------------
388m4_define([_lt_decl_filter],
389[m4_case([$#],
390  [0], [m4_fatal([$0: too few arguments: $#])],
391  [1], [m4_fatal([$0: too few arguments: $#: $1])],
392  [2], [lt_dict_filter([lt_decl_dict], [$1], [$2], [], lt_decl_varnames)],
393  [3], [lt_dict_filter([lt_decl_dict], [$1], [$2], [$3], lt_decl_varnames)],
394  [lt_dict_filter([lt_decl_dict], $@)])[]dnl
395])
396
397
398# lt_decl_quote_varnames([SEPARATOR], [VARNAME1...])
399# --------------------------------------------------
400m4_define([lt_decl_quote_varnames],
401[_lt_decl_filter([value], [1], $@)])
402
403
404# lt_decl_dquote_varnames([SEPARATOR], [VARNAME1...])
405# ---------------------------------------------------
406m4_define([lt_decl_dquote_varnames],
407[_lt_decl_filter([value], [2], $@)])
408
409
410# lt_decl_varnames_tagged([SEPARATOR], [VARNAME1...])
411# ---------------------------------------------------
412m4_define([lt_decl_varnames_tagged],
413[m4_assert([$# <= 2])dnl
414_$0(m4_quote(m4_default([$1], [[, ]])),
415    m4_ifval([$2], [[$2]], [m4_dquote(lt_decl_tag_varnames)]),
416    m4_split(m4_normalize(m4_quote(_LT_TAGS)), [ ]))])
417m4_define([_lt_decl_varnames_tagged],
418[m4_ifval([$3], [lt_combine([$1], [$2], [_], $3)])])
419
420
421# lt_decl_all_varnames([SEPARATOR], [VARNAME1...])
422# ------------------------------------------------
423m4_define([lt_decl_all_varnames],
424[_$0(m4_quote(m4_default([$1], [[, ]])),
425     m4_if([$2], [],
426	   m4_quote(lt_decl_varnames),
427	m4_quote(m4_shift($@))))[]dnl
428])
429m4_define([_lt_decl_all_varnames],
430[lt_join($@, lt_decl_varnames_tagged([$1],
431			lt_decl_tag_varnames([[, ]], m4_shift($@))))dnl
432])
433
434
435# _LT_CONFIG_STATUS_DECLARE([VARNAME])
436# ------------------------------------
437# Quote a variable value, and forward it to `config.status' so that its
438# declaration there will have the same value as in `configure'.  VARNAME
439# must have a single quote delimited value for this to work.
440m4_define([_LT_CONFIG_STATUS_DECLARE],
441[$1='`$ECHO "$][$1" | $SED "$delay_single_quote_subst"`'])
442
443
444# _LT_CONFIG_STATUS_DECLARATIONS
445# ------------------------------
446# We delimit libtool config variables with single quotes, so when
447# we write them to config.status, we have to be sure to quote all
448# embedded single quotes properly.  In configure, this macro expands
449# each variable declared with _LT_DECL (and _LT_TAGDECL) into:
450#
451#    <var>='`$ECHO "$<var>" | $SED "$delay_single_quote_subst"`'
452m4_defun([_LT_CONFIG_STATUS_DECLARATIONS],
453[m4_foreach([_lt_var], m4_quote(lt_decl_all_varnames),
454    [m4_n([_LT_CONFIG_STATUS_DECLARE(_lt_var)])])])
455
456
457# _LT_LIBTOOL_TAGS
458# ----------------
459# Output comment and list of tags supported by the script
460m4_defun([_LT_LIBTOOL_TAGS],
461[_LT_FORMAT_COMMENT([The names of the tagged configurations supported by this script])dnl
462available_tags="_LT_TAGS"dnl
463])
464
465
466# _LT_LIBTOOL_DECLARE(VARNAME, [TAG])
467# -----------------------------------
468# Extract the dictionary values for VARNAME (optionally with TAG) and
469# expand to a commented shell variable setting:
470#
471#    # Some comment about what VAR is for.
472#    visible_name=$lt_internal_name
473m4_define([_LT_LIBTOOL_DECLARE],
474[_LT_FORMAT_COMMENT(m4_quote(lt_dict_fetch([lt_decl_dict], [$1],
475					   [description])))[]dnl
476m4_pushdef([_libtool_name],
477    m4_quote(lt_dict_fetch([lt_decl_dict], [$1], [libtool_name])))[]dnl
478m4_case(m4_quote(lt_dict_fetch([lt_decl_dict], [$1], [value])),
479    [0], [_libtool_name=[$]$1],
480    [1], [_libtool_name=$lt_[]$1],
481    [2], [_libtool_name=$lt_[]$1],
482    [_libtool_name=lt_dict_fetch([lt_decl_dict], [$1], [value])])[]dnl
483m4_ifval([$2], [_$2])[]m4_popdef([_libtool_name])[]dnl
484])
485
486
487# _LT_LIBTOOL_CONFIG_VARS
488# -----------------------
489# Produce commented declarations of non-tagged libtool config variables
490# suitable for insertion in the LIBTOOL CONFIG section of the `libtool'
491# script.  Tagged libtool config variables (even for the LIBTOOL CONFIG
492# section) are produced by _LT_LIBTOOL_TAG_VARS.
493m4_defun([_LT_LIBTOOL_CONFIG_VARS],
494[m4_foreach([_lt_var],
495    m4_quote(_lt_decl_filter([tagged?], [no], [], lt_decl_varnames)),
496    [m4_n([_LT_LIBTOOL_DECLARE(_lt_var)])])])
497
498
499# _LT_LIBTOOL_TAG_VARS(TAG)
500# -------------------------
501m4_define([_LT_LIBTOOL_TAG_VARS],
502[m4_foreach([_lt_var], m4_quote(lt_decl_tag_varnames),
503    [m4_n([_LT_LIBTOOL_DECLARE(_lt_var, [$1])])])])
504
505
506# _LT_TAGVAR(VARNAME, [TAGNAME])
507# ------------------------------
508m4_define([_LT_TAGVAR], [m4_ifval([$2], [$1_$2], [$1])])
509
510
511# _LT_CONFIG_COMMANDS
512# -------------------
513# Send accumulated output to $CONFIG_STATUS.  Thanks to the lists of
514# variables for single and double quote escaping we saved from calls
515# to _LT_DECL, we can put quote escaped variables declarations
516# into `config.status', and then the shell code to quote escape them in
517# for loops in `config.status'.  Finally, any additional code accumulated
518# from calls to _LT_CONFIG_LIBTOOL_INIT is expanded.
519m4_defun([_LT_CONFIG_COMMANDS],
520[AC_PROVIDE_IFELSE([LT_OUTPUT],
521	dnl If the libtool generation code has been placed in $CONFIG_LT,
522	dnl instead of duplicating it all over again into config.status,
523	dnl then we will have config.status run $CONFIG_LT later, so it
524	dnl needs to know what name is stored there:
525        [AC_CONFIG_COMMANDS([libtool],
526            [$SHELL $CONFIG_LT || AS_EXIT(1)], [CONFIG_LT='$CONFIG_LT'])],
527    dnl If the libtool generation code is destined for config.status,
528    dnl expand the accumulated commands and init code now:
529    [AC_CONFIG_COMMANDS([libtool],
530        [_LT_OUTPUT_LIBTOOL_COMMANDS], [_LT_OUTPUT_LIBTOOL_COMMANDS_INIT])])
531])#_LT_CONFIG_COMMANDS
532
533
534# Initialize.
535m4_define([_LT_OUTPUT_LIBTOOL_COMMANDS_INIT],
536[
537
538# The HP-UX ksh and POSIX shell print the target directory to stdout
539# if CDPATH is set.
540(unset CDPATH) >/dev/null 2>&1 && unset CDPATH
541
542sed_quote_subst='$sed_quote_subst'
543double_quote_subst='$double_quote_subst'
544delay_variable_subst='$delay_variable_subst'
545_LT_CONFIG_STATUS_DECLARATIONS
546LTCC='$LTCC'
547LTCFLAGS='$LTCFLAGS'
548compiler='$compiler_DEFAULT'
549
550# A function that is used when there is no print builtin or printf.
551func_fallback_echo ()
552{
553  eval 'cat <<_LTECHO_EOF
554\$[]1
555_LTECHO_EOF'
556}
557
558# Quote evaled strings.
559for var in lt_decl_all_varnames([[ \
560]], lt_decl_quote_varnames); do
561    case \`eval \\\\\$ECHO \\\\""\\\\\$\$var"\\\\"\` in
562    *[[\\\\\\\`\\"\\\$]]*)
563      eval "lt_\$var=\\\\\\"\\\`\\\$ECHO \\"\\\$\$var\\" | \\\$SED \\"\\\$sed_quote_subst\\"\\\`\\\\\\""
564      ;;
565    *)
566      eval "lt_\$var=\\\\\\"\\\$\$var\\\\\\""
567      ;;
568    esac
569done
570
571# Double-quote double-evaled strings.
572for var in lt_decl_all_varnames([[ \
573]], lt_decl_dquote_varnames); do
574    case \`eval \\\\\$ECHO \\\\""\\\\\$\$var"\\\\"\` in
575    *[[\\\\\\\`\\"\\\$]]*)
576      eval "lt_\$var=\\\\\\"\\\`\\\$ECHO \\"\\\$\$var\\" | \\\$SED -e \\"\\\$double_quote_subst\\" -e \\"\\\$sed_quote_subst\\" -e \\"\\\$delay_variable_subst\\"\\\`\\\\\\""
577      ;;
578    *)
579      eval "lt_\$var=\\\\\\"\\\$\$var\\\\\\""
580      ;;
581    esac
582done
583
584_LT_OUTPUT_LIBTOOL_INIT
585])
586
587# _LT_GENERATED_FILE_INIT(FILE, [COMMENT])
588# ------------------------------------
589# Generate a child script FILE with all initialization necessary to
590# reuse the environment learned by the parent script, and make the
591# file executable.  If COMMENT is supplied, it is inserted after the
592# `#!' sequence but before initialization text begins.  After this
593# macro, additional text can be appended to FILE to form the body of
594# the child script.  The macro ends with non-zero status if the
595# file could not be fully written (such as if the disk is full).
596m4_ifdef([AS_INIT_GENERATED],
597[m4_defun([_LT_GENERATED_FILE_INIT],[AS_INIT_GENERATED($@)])],
598[m4_defun([_LT_GENERATED_FILE_INIT],
599[m4_require([AS_PREPARE])]dnl
600[m4_pushdef([AS_MESSAGE_LOG_FD])]dnl
601[lt_write_fail=0
602cat >$1 <<_ASEOF || lt_write_fail=1
603#! $SHELL
604# Generated by $as_me.
605$2
606SHELL=\${CONFIG_SHELL-$SHELL}
607export SHELL
608_ASEOF
609cat >>$1 <<\_ASEOF || lt_write_fail=1
610AS_SHELL_SANITIZE
611_AS_PREPARE
612exec AS_MESSAGE_FD>&1
613_ASEOF
614test $lt_write_fail = 0 && chmod +x $1[]dnl
615m4_popdef([AS_MESSAGE_LOG_FD])])])# _LT_GENERATED_FILE_INIT
616
617# LT_OUTPUT
618# ---------
619# This macro allows early generation of the libtool script (before
620# AC_OUTPUT is called), incase it is used in configure for compilation
621# tests.
622AC_DEFUN([LT_OUTPUT],
623[: ${CONFIG_LT=./config.lt}
624AC_MSG_NOTICE([creating $CONFIG_LT])
625_LT_GENERATED_FILE_INIT(["$CONFIG_LT"],
626[# Run this file to recreate a libtool stub with the current configuration.])
627
628cat >>"$CONFIG_LT" <<\_LTEOF
629lt_cl_silent=false
630exec AS_MESSAGE_LOG_FD>>config.log
631{
632  echo
633  AS_BOX([Running $as_me.])
634} >&AS_MESSAGE_LOG_FD
635
636lt_cl_help="\
637\`$as_me' creates a local libtool stub from the current configuration,
638for use in further configure time tests before the real libtool is
639generated.
640
641Usage: $[0] [[OPTIONS]]
642
643  -h, --help      print this help, then exit
644  -V, --version   print version number, then exit
645  -q, --quiet     do not print progress messages
646  -d, --debug     don't remove temporary files
647
648Report bugs to <bug-libtool@gnu.org>."
649
650lt_cl_version="\
651m4_ifset([AC_PACKAGE_NAME], [AC_PACKAGE_NAME ])config.lt[]dnl
652m4_ifset([AC_PACKAGE_VERSION], [ AC_PACKAGE_VERSION])
653configured by $[0], generated by m4_PACKAGE_STRING.
654
655Copyright (C) 2010 Free Software Foundation, Inc.
656This config.lt script is free software; the Free Software Foundation
657gives unlimited permision to copy, distribute and modify it."
658
659while test $[#] != 0
660do
661  case $[1] in
662    --version | --v* | -V )
663      echo "$lt_cl_version"; exit 0 ;;
664    --help | --h* | -h )
665      echo "$lt_cl_help"; exit 0 ;;
666    --debug | --d* | -d )
667      debug=: ;;
668    --quiet | --q* | --silent | --s* | -q )
669      lt_cl_silent=: ;;
670
671    -*) AC_MSG_ERROR([unrecognized option: $[1]
672Try \`$[0] --help' for more information.]) ;;
673
674    *) AC_MSG_ERROR([unrecognized argument: $[1]
675Try \`$[0] --help' for more information.]) ;;
676  esac
677  shift
678done
679
680if $lt_cl_silent; then
681  exec AS_MESSAGE_FD>/dev/null
682fi
683_LTEOF
684
685cat >>"$CONFIG_LT" <<_LTEOF
686_LT_OUTPUT_LIBTOOL_COMMANDS_INIT
687_LTEOF
688
689cat >>"$CONFIG_LT" <<\_LTEOF
690AC_MSG_NOTICE([creating $ofile])
691_LT_OUTPUT_LIBTOOL_COMMANDS
692AS_EXIT(0)
693_LTEOF
694chmod +x "$CONFIG_LT"
695
696# configure is writing to config.log, but config.lt does its own redirection,
697# appending to config.log, which fails on DOS, as config.log is still kept
698# open by configure.  Here we exec the FD to /dev/null, effectively closing
699# config.log, so it can be properly (re)opened and appended to by config.lt.
700lt_cl_success=:
701test "$silent" = yes &&
702  lt_config_lt_args="$lt_config_lt_args --quiet"
703exec AS_MESSAGE_LOG_FD>/dev/null
704$SHELL "$CONFIG_LT" $lt_config_lt_args || lt_cl_success=false
705exec AS_MESSAGE_LOG_FD>>config.log
706$lt_cl_success || AS_EXIT(1)
707])# LT_OUTPUT
708
709
710# _LT_CONFIG(TAG)
711# ---------------
712# If TAG is the built-in tag, create an initial libtool script with a
713# default configuration from the untagged config vars.  Otherwise add code
714# to config.status for appending the configuration named by TAG from the
715# matching tagged config vars.
716m4_defun([_LT_CONFIG],
717[m4_require([_LT_FILEUTILS_DEFAULTS])dnl
718_LT_CONFIG_SAVE_COMMANDS([
719  m4_define([_LT_TAG], m4_if([$1], [], [C], [$1]))dnl
720  m4_if(_LT_TAG, [C], [
721    # See if we are running on zsh, and set the options which allow our
722    # commands through without removal of \ escapes.
723    if test -n "${ZSH_VERSION+set}" ; then
724      setopt NO_GLOB_SUBST
725    fi
726
727    cfgfile="${ofile}T"
728    trap "$RM \"$cfgfile\"; exit 1" 1 2 15
729    $RM "$cfgfile"
730
731    cat <<_LT_EOF >> "$cfgfile"
732#! $SHELL
733
734# `$ECHO "$ofile" | sed 's%^.*/%%'` - Provide generalized library-building support services.
735# Generated automatically by $as_me ($PACKAGE$TIMESTAMP) $VERSION
736# Libtool was configured on host `(hostname || uname -n) 2>/dev/null | sed 1q`:
737# NOTE: Changes made to this file will be lost: look at ltmain.sh.
738#
739_LT_COPYING
740_LT_LIBTOOL_TAGS
741
742# ### BEGIN LIBTOOL CONFIG
743_LT_LIBTOOL_CONFIG_VARS
744_LT_LIBTOOL_TAG_VARS
745# ### END LIBTOOL CONFIG
746
747_LT_EOF
748
749  case $host_os in
750  aix3*)
751    cat <<\_LT_EOF >> "$cfgfile"
752# AIX sometimes has problems with the GCC collect2 program.  For some
753# reason, if we set the COLLECT_NAMES environment variable, the problems
754# vanish in a puff of smoke.
755if test "X${COLLECT_NAMES+set}" != Xset; then
756  COLLECT_NAMES=
757  export COLLECT_NAMES
758fi
759_LT_EOF
760    ;;
761  esac
762
763  _LT_PROG_LTMAIN
764
765  # We use sed instead of cat because bash on DJGPP gets confused if
766  # if finds mixed CR/LF and LF-only lines.  Since sed operates in
767  # text mode, it properly converts lines to CR/LF.  This bash problem
768  # is reportedly fixed, but why not run on old versions too?
769  sed '$q' "$ltmain" >> "$cfgfile" \
770     || (rm -f "$cfgfile"; exit 1)
771
772  _LT_PROG_REPLACE_SHELLFNS
773
774   mv -f "$cfgfile" "$ofile" ||
775    (rm -f "$ofile" && cp "$cfgfile" "$ofile" && rm -f "$cfgfile")
776  chmod +x "$ofile"
777],
778[cat <<_LT_EOF >> "$ofile"
779
780dnl Unfortunately we have to use $1 here, since _LT_TAG is not expanded
781dnl in a comment (ie after a #).
782# ### BEGIN LIBTOOL TAG CONFIG: $1
783_LT_LIBTOOL_TAG_VARS(_LT_TAG)
784# ### END LIBTOOL TAG CONFIG: $1
785_LT_EOF
786])dnl /m4_if
787],
788[m4_if([$1], [], [
789    PACKAGE='$PACKAGE'
790    VERSION='$VERSION'
791    TIMESTAMP='$TIMESTAMP'
792    RM='$RM'
793    ofile='$ofile'], [])
794])dnl /_LT_CONFIG_SAVE_COMMANDS
795])# _LT_CONFIG
796
797
798# LT_SUPPORTED_TAG(TAG)
799# ---------------------
800# Trace this macro to discover what tags are supported by the libtool
801# --tag option, using:
802#    autoconf --trace 'LT_SUPPORTED_TAG:$1'
803AC_DEFUN([LT_SUPPORTED_TAG], [])
804
805
806# C support is built-in for now
807m4_define([_LT_LANG_C_enabled], [])
808m4_define([_LT_TAGS], [])
809
810
811# LT_LANG(LANG)
812# -------------
813# Enable libtool support for the given language if not already enabled.
814AC_DEFUN([LT_LANG],
815[AC_BEFORE([$0], [LT_OUTPUT])dnl
816m4_case([$1],
817  [C],			[_LT_LANG(C)],
818  [C++],		[_LT_LANG(CXX)],
819  [Java],		[_LT_LANG(GCJ)],
820  [Fortran 77],		[_LT_LANG(F77)],
821  [Fortran],		[_LT_LANG(FC)],
822  [Windows Resource],	[_LT_LANG(RC)],
823  [m4_ifdef([_LT_LANG_]$1[_CONFIG],
824    [_LT_LANG($1)],
825    [m4_fatal([$0: unsupported language: "$1"])])])dnl
826])# LT_LANG
827
828
829# _LT_LANG(LANGNAME)
830# ------------------
831m4_defun([_LT_LANG],
832[m4_ifdef([_LT_LANG_]$1[_enabled], [],
833  [LT_SUPPORTED_TAG([$1])dnl
834  m4_append([_LT_TAGS], [$1 ])dnl
835  m4_define([_LT_LANG_]$1[_enabled], [])dnl
836  _LT_LANG_$1_CONFIG($1)])dnl
837])# _LT_LANG
838
839
840# _LT_LANG_DEFAULT_CONFIG
841# -----------------------
842m4_defun([_LT_LANG_DEFAULT_CONFIG],
843[AC_PROVIDE_IFELSE([AC_PROG_CXX],
844  [LT_LANG(CXX)],
845  [m4_define([AC_PROG_CXX], defn([AC_PROG_CXX])[LT_LANG(CXX)])])
846
847AC_PROVIDE_IFELSE([AC_PROG_F77],
848  [LT_LANG(F77)],
849  [m4_define([AC_PROG_F77], defn([AC_PROG_F77])[LT_LANG(F77)])])
850
851AC_PROVIDE_IFELSE([AC_PROG_FC],
852  [LT_LANG(FC)],
853  [m4_define([AC_PROG_FC], defn([AC_PROG_FC])[LT_LANG(FC)])])
854
855dnl The call to [A][M_PROG_GCJ] is quoted like that to stop aclocal
856dnl pulling things in needlessly.
857AC_PROVIDE_IFELSE([AC_PROG_GCJ],
858  [LT_LANG(GCJ)],
859  [AC_PROVIDE_IFELSE([A][M_PROG_GCJ],
860    [LT_LANG(GCJ)],
861    [AC_PROVIDE_IFELSE([LT_PROG_GCJ],
862      [LT_LANG(GCJ)],
863      [m4_ifdef([AC_PROG_GCJ],
864	[m4_define([AC_PROG_GCJ], defn([AC_PROG_GCJ])[LT_LANG(GCJ)])])
865       m4_ifdef([A][M_PROG_GCJ],
866	[m4_define([A][M_PROG_GCJ], defn([A][M_PROG_GCJ])[LT_LANG(GCJ)])])
867       m4_ifdef([LT_PROG_GCJ],
868	[m4_define([LT_PROG_GCJ], defn([LT_PROG_GCJ])[LT_LANG(GCJ)])])])])])
869
870AC_PROVIDE_IFELSE([LT_PROG_RC],
871  [LT_LANG(RC)],
872  [m4_define([LT_PROG_RC], defn([LT_PROG_RC])[LT_LANG(RC)])])
873])# _LT_LANG_DEFAULT_CONFIG
874
875# Obsolete macros:
876AU_DEFUN([AC_LIBTOOL_CXX], [LT_LANG(C++)])
877AU_DEFUN([AC_LIBTOOL_F77], [LT_LANG(Fortran 77)])
878AU_DEFUN([AC_LIBTOOL_FC], [LT_LANG(Fortran)])
879AU_DEFUN([AC_LIBTOOL_GCJ], [LT_LANG(Java)])
880AU_DEFUN([AC_LIBTOOL_RC], [LT_LANG(Windows Resource)])
881dnl aclocal-1.4 backwards compatibility:
882dnl AC_DEFUN([AC_LIBTOOL_CXX], [])
883dnl AC_DEFUN([AC_LIBTOOL_F77], [])
884dnl AC_DEFUN([AC_LIBTOOL_FC], [])
885dnl AC_DEFUN([AC_LIBTOOL_GCJ], [])
886dnl AC_DEFUN([AC_LIBTOOL_RC], [])
887
888
889# _LT_TAG_COMPILER
890# ----------------
891m4_defun([_LT_TAG_COMPILER],
892[AC_REQUIRE([AC_PROG_CC])dnl
893
894_LT_DECL([LTCC], [CC], [1], [A C compiler])dnl
895_LT_DECL([LTCFLAGS], [CFLAGS], [1], [LTCC compiler flags])dnl
896_LT_TAGDECL([CC], [compiler], [1], [A language specific compiler])dnl
897_LT_TAGDECL([with_gcc], [GCC], [0], [Is the compiler the GNU compiler?])dnl
898
899# If no C compiler was specified, use CC.
900LTCC=${LTCC-"$CC"}
901
902# If no C compiler flags were specified, use CFLAGS.
903LTCFLAGS=${LTCFLAGS-"$CFLAGS"}
904
905# Allow CC to be a program name with arguments.
906compiler=$CC
907])# _LT_TAG_COMPILER
908
909
910# _LT_COMPILER_BOILERPLATE
911# ------------------------
912# Check for compiler boilerplate output or warnings with
913# the simple compiler test code.
914m4_defun([_LT_COMPILER_BOILERPLATE],
915[m4_require([_LT_DECL_SED])dnl
916ac_outfile=conftest.$ac_objext
917echo "$lt_simple_compile_test_code" >conftest.$ac_ext
918eval "$ac_compile" 2>&1 >/dev/null | $SED '/^$/d; /^ *+/d' >conftest.err
919_lt_compiler_boilerplate=`cat conftest.err`
920$RM conftest*
921])# _LT_COMPILER_BOILERPLATE
922
923
924# _LT_LINKER_BOILERPLATE
925# ----------------------
926# Check for linker boilerplate output or warnings with
927# the simple link test code.
928m4_defun([_LT_LINKER_BOILERPLATE],
929[m4_require([_LT_DECL_SED])dnl
930ac_outfile=conftest.$ac_objext
931echo "$lt_simple_link_test_code" >conftest.$ac_ext
932eval "$ac_link" 2>&1 >/dev/null | $SED '/^$/d; /^ *+/d' >conftest.err
933_lt_linker_boilerplate=`cat conftest.err`
934$RM -r conftest*
935])# _LT_LINKER_BOILERPLATE
936
937# _LT_REQUIRED_DARWIN_CHECKS
938# -------------------------
939m4_defun_once([_LT_REQUIRED_DARWIN_CHECKS],[
940  case $host_os in
941    rhapsody* | darwin*)
942    AC_CHECK_TOOL([DSYMUTIL], [dsymutil], [:])
943    AC_CHECK_TOOL([NMEDIT], [nmedit], [:])
944    AC_CHECK_TOOL([LIPO], [lipo], [:])
945    AC_CHECK_TOOL([OTOOL], [otool], [:])
946    AC_CHECK_TOOL([OTOOL64], [otool64], [:])
947    _LT_DECL([], [DSYMUTIL], [1],
948      [Tool to manipulate archived DWARF debug symbol files on Mac OS X])
949    _LT_DECL([], [NMEDIT], [1],
950      [Tool to change global to local symbols on Mac OS X])
951    _LT_DECL([], [LIPO], [1],
952      [Tool to manipulate fat objects and archives on Mac OS X])
953    _LT_DECL([], [OTOOL], [1],
954      [ldd/readelf like tool for Mach-O binaries on Mac OS X])
955    _LT_DECL([], [OTOOL64], [1],
956      [ldd/readelf like tool for 64 bit Mach-O binaries on Mac OS X 10.4])
957
958    AC_CACHE_CHECK([for -single_module linker flag],[lt_cv_apple_cc_single_mod],
959      [lt_cv_apple_cc_single_mod=no
960      if test -z "${LT_MULTI_MODULE}"; then
961	# By default we will add the -single_module flag. You can override
962	# by either setting the environment variable LT_MULTI_MODULE
963	# non-empty at configure time, or by adding -multi_module to the
964	# link flags.
965	rm -rf libconftest.dylib*
966	echo "int foo(void){return 1;}" > conftest.c
967	echo "$LTCC $LTCFLAGS $LDFLAGS -o libconftest.dylib \
968-dynamiclib -Wl,-single_module conftest.c" >&AS_MESSAGE_LOG_FD
969	$LTCC $LTCFLAGS $LDFLAGS -o libconftest.dylib \
970	  -dynamiclib -Wl,-single_module conftest.c 2>conftest.err
971        _lt_result=$?
972	if test -f libconftest.dylib && test ! -s conftest.err && test $_lt_result = 0; then
973	  lt_cv_apple_cc_single_mod=yes
974	else
975	  cat conftest.err >&AS_MESSAGE_LOG_FD
976	fi
977	rm -rf libconftest.dylib*
978	rm -f conftest.*
979      fi])
980    AC_CACHE_CHECK([for -exported_symbols_list linker flag],
981      [lt_cv_ld_exported_symbols_list],
982      [lt_cv_ld_exported_symbols_list=no
983      save_LDFLAGS=$LDFLAGS
984      echo "_main" > conftest.sym
985      LDFLAGS="$LDFLAGS -Wl,-exported_symbols_list,conftest.sym"
986      AC_LINK_IFELSE([AC_LANG_PROGRAM([],[])],
987	[lt_cv_ld_exported_symbols_list=yes],
988	[lt_cv_ld_exported_symbols_list=no])
989	LDFLAGS="$save_LDFLAGS"
990    ])
991    AC_CACHE_CHECK([for -force_load linker flag],[lt_cv_ld_force_load],
992      [lt_cv_ld_force_load=no
993      cat > conftest.c << _LT_EOF
994int forced_loaded() { return 2;}
995_LT_EOF
996      echo "$LTCC $LTCFLAGS -c -o conftest.o conftest.c" >&AS_MESSAGE_LOG_FD
997      $LTCC $LTCFLAGS -c -o conftest.o conftest.c 2>&AS_MESSAGE_LOG_FD
998      echo "$AR cru libconftest.a conftest.o" >&AS_MESSAGE_LOG_FD
999      $AR cru libconftest.a conftest.o 2>&AS_MESSAGE_LOG_FD
1000      echo "$RANLIB libconftest.a" >&AS_MESSAGE_LOG_FD
1001      $RANLIB libconftest.a 2>&AS_MESSAGE_LOG_FD
1002      cat > conftest.c << _LT_EOF
1003int main() { return 0;}
1004_LT_EOF
1005      echo "$LTCC $LTCFLAGS $LDFLAGS -o conftest conftest.c -Wl,-force_load,./libconftest.a" >&AS_MESSAGE_LOG_FD
1006      $LTCC $LTCFLAGS $LDFLAGS -o conftest conftest.c -Wl,-force_load,./libconftest.a 2>conftest.err
1007      _lt_result=$?
1008      if test -f conftest && test ! -s conftest.err && test $_lt_result = 0 && $GREP forced_load conftest 2>&1 >/dev/null; then
1009	lt_cv_ld_force_load=yes
1010      else
1011	cat conftest.err >&AS_MESSAGE_LOG_FD
1012      fi
1013        rm -f conftest.err libconftest.a conftest conftest.c
1014        rm -rf conftest.dSYM
1015    ])
1016    case $host_os in
1017    rhapsody* | darwin1.[[012]])
1018      _lt_dar_allow_undefined='${wl}-undefined ${wl}suppress' ;;
1019    darwin1.*)
1020      _lt_dar_allow_undefined='${wl}-flat_namespace ${wl}-undefined ${wl}suppress' ;;
1021    darwin*) # darwin 5.x on
1022      # if running on 10.5 or later, the deployment target defaults
1023      # to the OS version, if on x86, and 10.4, the deployment
1024      # target defaults to 10.4. Don't you love it?
1025      case ${MACOSX_DEPLOYMENT_TARGET-10.0},$host in
1026	10.0,*86*-darwin8*|10.0,*-darwin[[91]]*)
1027	  _lt_dar_allow_undefined='${wl}-undefined ${wl}dynamic_lookup' ;;
1028	10.[[012]]*)
1029	  _lt_dar_allow_undefined='${wl}-flat_namespace ${wl}-undefined ${wl}suppress' ;;
1030	10.*)
1031	  _lt_dar_allow_undefined='${wl}-undefined ${wl}dynamic_lookup' ;;
1032      esac
1033    ;;
1034  esac
1035    if test "$lt_cv_apple_cc_single_mod" = "yes"; then
1036      _lt_dar_single_mod='$single_module'
1037    fi
1038    if test "$lt_cv_ld_exported_symbols_list" = "yes"; then
1039      _lt_dar_export_syms=' ${wl}-exported_symbols_list,$output_objdir/${libname}-symbols.expsym'
1040    else
1041      _lt_dar_export_syms='~$NMEDIT -s $output_objdir/${libname}-symbols.expsym ${lib}'
1042    fi
1043    if test "$DSYMUTIL" != ":" && test "$lt_cv_ld_force_load" = "no"; then
1044      _lt_dsymutil='~$DSYMUTIL $lib || :'
1045    else
1046      _lt_dsymutil=
1047    fi
1048    ;;
1049  esac
1050])
1051
1052
1053# _LT_DARWIN_LINKER_FEATURES
1054# --------------------------
1055# Checks for linker and compiler features on darwin
1056m4_defun([_LT_DARWIN_LINKER_FEATURES],
1057[
1058  m4_require([_LT_REQUIRED_DARWIN_CHECKS])
1059  _LT_TAGVAR(archive_cmds_need_lc, $1)=no
1060  _LT_TAGVAR(hardcode_direct, $1)=no
1061  _LT_TAGVAR(hardcode_automatic, $1)=yes
1062  _LT_TAGVAR(hardcode_shlibpath_var, $1)=unsupported
1063  if test "$lt_cv_ld_force_load" = "yes"; then
1064    _LT_TAGVAR(whole_archive_flag_spec, $1)='`for conv in $convenience\"\"; do test  -n \"$conv\" && new_convenience=\"$new_convenience ${wl}-force_load,$conv\"; done; func_echo_all \"$new_convenience\"`'
1065  else
1066    _LT_TAGVAR(whole_archive_flag_spec, $1)=''
1067  fi
1068  _LT_TAGVAR(link_all_deplibs, $1)=yes
1069  _LT_TAGVAR(allow_undefined_flag, $1)="$_lt_dar_allow_undefined"
1070  case $cc_basename in
1071     ifort*) _lt_dar_can_shared=yes ;;
1072     *) _lt_dar_can_shared=$GCC ;;
1073  esac
1074  if test "$_lt_dar_can_shared" = "yes"; then
1075    output_verbose_link_cmd=func_echo_all
1076    _LT_TAGVAR(archive_cmds, $1)="\$CC -dynamiclib \$allow_undefined_flag -o \$lib \$libobjs \$deplibs \$compiler_flags -install_name \$rpath/\$soname \$verstring $_lt_dar_single_mod${_lt_dsymutil}"
1077    _LT_TAGVAR(module_cmds, $1)="\$CC \$allow_undefined_flag -o \$lib -bundle \$libobjs \$deplibs \$compiler_flags${_lt_dsymutil}"
1078    _LT_TAGVAR(archive_expsym_cmds, $1)="sed 's,^,_,' < \$export_symbols > \$output_objdir/\${libname}-symbols.expsym~\$CC -dynamiclib \$allow_undefined_flag -o \$lib \$libobjs \$deplibs \$compiler_flags -install_name \$rpath/\$soname \$verstring ${_lt_dar_single_mod}${_lt_dar_export_syms}${_lt_dsymutil}"
1079    _LT_TAGVAR(module_expsym_cmds, $1)="sed -e 's,^,_,' < \$export_symbols > \$output_objdir/\${libname}-symbols.expsym~\$CC \$allow_undefined_flag -o \$lib -bundle \$libobjs \$deplibs \$compiler_flags${_lt_dar_export_syms}${_lt_dsymutil}"
1080    m4_if([$1], [CXX],
1081[   if test "$lt_cv_apple_cc_single_mod" != "yes"; then
1082      _LT_TAGVAR(archive_cmds, $1)="\$CC -r -keep_private_externs -nostdlib -o \${lib}-master.o \$libobjs~\$CC -dynamiclib \$allow_undefined_flag -o \$lib \${lib}-master.o \$deplibs \$compiler_flags -install_name \$rpath/\$soname \$verstring${_lt_dsymutil}"
1083      _LT_TAGVAR(archive_expsym_cmds, $1)="sed 's,^,_,' < \$export_symbols > \$output_objdir/\${libname}-symbols.expsym~\$CC -r -keep_private_externs -nostdlib -o \${lib}-master.o \$libobjs~\$CC -dynamiclib \$allow_undefined_flag -o \$lib \${lib}-master.o \$deplibs \$compiler_flags -install_name \$rpath/\$soname \$verstring${_lt_dar_export_syms}${_lt_dsymutil}"
1084    fi
1085],[])
1086  else
1087  _LT_TAGVAR(ld_shlibs, $1)=no
1088  fi
1089])
1090
1091# _LT_SYS_MODULE_PATH_AIX([TAGNAME])
1092# ----------------------------------
1093# Links a minimal program and checks the executable
1094# for the system default hardcoded library path. In most cases,
1095# this is /usr/lib:/lib, but when the MPI compilers are used
1096# the location of the communication and MPI libs are included too.
1097# If we don't find anything, use the default library path according
1098# to the aix ld manual.
1099# Store the results from the different compilers for each TAGNAME.
1100# Allow to override them for all tags through lt_cv_aix_libpath.
1101m4_defun([_LT_SYS_MODULE_PATH_AIX],
1102[m4_require([_LT_DECL_SED])dnl
1103if test "${lt_cv_aix_libpath+set}" = set; then
1104  aix_libpath=$lt_cv_aix_libpath
1105else
1106  AC_CACHE_VAL([_LT_TAGVAR([lt_cv_aix_libpath_], [$1])],
1107  [AC_LINK_IFELSE([AC_LANG_PROGRAM],[
1108  lt_aix_libpath_sed='[
1109      /Import File Strings/,/^$/ {
1110	  /^0/ {
1111	      s/^0  *\([^ ]*\) *$/\1/
1112	      p
1113	  }
1114      }]'
1115  _LT_TAGVAR([lt_cv_aix_libpath_], [$1])=`dump -H conftest$ac_exeext 2>/dev/null | $SED -n -e "$lt_aix_libpath_sed"`
1116  # Check for a 64-bit object if we didn't find anything.
1117  if test -z "$_LT_TAGVAR([lt_cv_aix_libpath_], [$1])"; then
1118    _LT_TAGVAR([lt_cv_aix_libpath_], [$1])=`dump -HX64 conftest$ac_exeext 2>/dev/null | $SED -n -e "$lt_aix_libpath_sed"`
1119  fi],[])
1120  if test -z "$_LT_TAGVAR([lt_cv_aix_libpath_], [$1])"; then
1121    _LT_TAGVAR([lt_cv_aix_libpath_], [$1])="/usr/lib:/lib"
1122  fi
1123  ])
1124  aix_libpath=$_LT_TAGVAR([lt_cv_aix_libpath_], [$1])
1125fi
1126])# _LT_SYS_MODULE_PATH_AIX
1127
1128
1129# _LT_SHELL_INIT(ARG)
1130# -------------------
1131m4_define([_LT_SHELL_INIT],
1132[m4_divert_text([M4SH-INIT], [$1
1133])])# _LT_SHELL_INIT
1134
1135
1136
1137# _LT_PROG_ECHO_BACKSLASH
1138# -----------------------
1139# Find how we can fake an echo command that does not interpret backslash.
1140# In particular, with Autoconf 2.60 or later we add some code to the start
1141# of the generated configure script which will find a shell with a builtin
1142# printf (which we can use as an echo command).
1143m4_defun([_LT_PROG_ECHO_BACKSLASH],
1144[ECHO='\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\'
1145ECHO=$ECHO$ECHO$ECHO$ECHO$ECHO
1146ECHO=$ECHO$ECHO$ECHO$ECHO$ECHO$ECHO
1147
1148AC_MSG_CHECKING([how to print strings])
1149# Test print first, because it will be a builtin if present.
1150if test "X`( print -r -- -n ) 2>/dev/null`" = X-n && \
1151   test "X`print -r -- $ECHO 2>/dev/null`" = "X$ECHO"; then
1152  ECHO='print -r --'
1153elif test "X`printf %s $ECHO 2>/dev/null`" = "X$ECHO"; then
1154  ECHO='printf %s\n'
1155else
1156  # Use this function as a fallback that always works.
1157  func_fallback_echo ()
1158  {
1159    eval 'cat <<_LTECHO_EOF
1160$[]1
1161_LTECHO_EOF'
1162  }
1163  ECHO='func_fallback_echo'
1164fi
1165
1166# func_echo_all arg...
1167# Invoke $ECHO with all args, space-separated.
1168func_echo_all ()
1169{
1170    $ECHO "$*" 
1171}
1172
1173case "$ECHO" in
1174  printf*) AC_MSG_RESULT([printf]) ;;
1175  print*) AC_MSG_RESULT([print -r]) ;;
1176  *) AC_MSG_RESULT([cat]) ;;
1177esac
1178
1179m4_ifdef([_AS_DETECT_SUGGESTED],
1180[_AS_DETECT_SUGGESTED([
1181  test -n "${ZSH_VERSION+set}${BASH_VERSION+set}" || (
1182    ECHO='\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\'
1183    ECHO=$ECHO$ECHO$ECHO$ECHO$ECHO
1184    ECHO=$ECHO$ECHO$ECHO$ECHO$ECHO$ECHO
1185    PATH=/empty FPATH=/empty; export PATH FPATH
1186    test "X`printf %s $ECHO`" = "X$ECHO" \
1187      || test "X`print -r -- $ECHO`" = "X$ECHO" )])])
1188
1189_LT_DECL([], [SHELL], [1], [Shell to use when invoking shell scripts])
1190_LT_DECL([], [ECHO], [1], [An echo program that protects backslashes])
1191])# _LT_PROG_ECHO_BACKSLASH
1192
1193
1194# _LT_WITH_SYSROOT
1195# ----------------
1196AC_DEFUN([_LT_WITH_SYSROOT],
1197[AC_MSG_CHECKING([for sysroot])
1198AC_ARG_WITH([sysroot],
1199[  --with-sysroot[=DIR] Search for dependent libraries within DIR
1200                        (or the compiler's sysroot if not specified).],
1201[], [with_sysroot=no])
1202
1203dnl lt_sysroot will always be passed unquoted.  We quote it here
1204dnl in case the user passed a directory name.
1205lt_sysroot=
1206case ${with_sysroot} in #(
1207 yes)
1208   if test "$GCC" = yes; then
1209     lt_sysroot=`$CC --print-sysroot 2>/dev/null`
1210   fi
1211   ;; #(
1212 /*)
1213   lt_sysroot=`echo "$with_sysroot" | sed -e "$sed_quote_subst"`
1214   ;; #(
1215 no|'')
1216   ;; #(
1217 *)
1218   AC_MSG_RESULT([${with_sysroot}])
1219   AC_MSG_ERROR([The sysroot must be an absolute path.])
1220   ;;
1221esac
1222
1223 AC_MSG_RESULT([${lt_sysroot:-no}])
1224_LT_DECL([], [lt_sysroot], [0], [The root where to search for ]dnl
1225[dependent libraries, and in which our libraries should be installed.])])
1226
1227# _LT_ENABLE_LOCK
1228# ---------------
1229m4_defun([_LT_ENABLE_LOCK],
1230[AC_ARG_ENABLE([libtool-lock],
1231  [AS_HELP_STRING([--disable-libtool-lock],
1232    [avoid locking (might break parallel builds)])])
1233test "x$enable_libtool_lock" != xno && enable_libtool_lock=yes
1234
1235# Some flags need to be propagated to the compiler or linker for good
1236# libtool support.
1237case $host in
1238ia64-*-hpux*)
1239  # Find out which ABI we are using.
1240  echo 'int i;' > conftest.$ac_ext
1241  if AC_TRY_EVAL(ac_compile); then
1242    case `/usr/bin/file conftest.$ac_objext` in
1243      *ELF-32*)
1244	HPUX_IA64_MODE="32"
1245	;;
1246      *ELF-64*)
1247	HPUX_IA64_MODE="64"
1248	;;
1249    esac
1250  fi
1251  rm -rf conftest*
1252  ;;
1253*-*-irix6*)
1254  # Find out which ABI we are using.
1255  echo '[#]line '$LINENO' "configure"' > conftest.$ac_ext
1256  if AC_TRY_EVAL(ac_compile); then
1257    if test "$lt_cv_prog_gnu_ld" = yes; then
1258      case `/usr/bin/file conftest.$ac_objext` in
1259	*32-bit*)
1260	  LD="${LD-ld} -melf32bsmip"
1261	  ;;
1262	*N32*)
1263	  LD="${LD-ld} -melf32bmipn32"
1264	  ;;
1265	*64-bit*)
1266	  LD="${LD-ld} -melf64bmip"
1267	;;
1268      esac
1269    else
1270      case `/usr/bin/file conftest.$ac_objext` in
1271	*32-bit*)
1272	  LD="${LD-ld} -32"
1273	  ;;
1274	*N32*)
1275	  LD="${LD-ld} -n32"
1276	  ;;
1277	*64-bit*)
1278	  LD="${LD-ld} -64"
1279	  ;;
1280      esac
1281    fi
1282  fi
1283  rm -rf conftest*
1284  ;;
1285
1286x86_64-*kfreebsd*-gnu|x86_64-*linux*|ppc*-*linux*|powerpc*-*linux*| \
1287s390*-*linux*|s390*-*tpf*|sparc*-*linux*)
1288  # Find out which ABI we are using.
1289  echo 'int i;' > conftest.$ac_ext
1290  if AC_TRY_EVAL(ac_compile); then
1291    case `/usr/bin/file conftest.o` in
1292      *32-bit*)
1293	case $host in
1294	  x86_64-*kfreebsd*-gnu)
1295	    LD="${LD-ld} -m elf_i386_fbsd"
1296	    ;;
1297	  x86_64-*linux*)
1298	    LD="${LD-ld} -m elf_i386"
1299	    ;;
1300	  ppc64-*linux*|powerpc64-*linux*)
1301	    LD="${LD-ld} -m elf32ppclinux"
1302	    ;;
1303	  s390x-*linux*)
1304	    LD="${LD-ld} -m elf_s390"
1305	    ;;
1306	  sparc64-*linux*)
1307	    LD="${LD-ld} -m elf32_sparc"
1308	    ;;
1309	esac
1310	;;
1311      *64-bit*)
1312	case $host in
1313	  x86_64-*kfreebsd*-gnu)
1314	    LD="${LD-ld} -m elf_x86_64_fbsd"
1315	    ;;
1316	  x86_64-*linux*)
1317	    LD="${LD-ld} -m elf_x86_64"
1318	    ;;
1319	  ppc*-*linux*|powerpc*-*linux*)
1320	    LD="${LD-ld} -m elf64ppc"
1321	    ;;
1322	  s390*-*linux*|s390*-*tpf*)
1323	    LD="${LD-ld} -m elf64_s390"
1324	    ;;
1325	  sparc*-*linux*)
1326	    LD="${LD-ld} -m elf64_sparc"
1327	    ;;
1328	esac
1329	;;
1330    esac
1331  fi
1332  rm -rf conftest*
1333  ;;
1334
1335*-*-sco3.2v5*)
1336  # On SCO OpenServer 5, we need -belf to get full-featured binaries.
1337  SAVE_CFLAGS="$CFLAGS"
1338  CFLAGS="$CFLAGS -belf"
1339  AC_CACHE_CHECK([whether the C compiler needs -belf], lt_cv_cc_needs_belf,
1340    [AC_LANG_PUSH(C)
1341     AC_LINK_IFELSE([AC_LANG_PROGRAM([[]],[[]])],[lt_cv_cc_needs_belf=yes],[lt_cv_cc_needs_belf=no])
1342     AC_LANG_POP])
1343  if test x"$lt_cv_cc_needs_belf" != x"yes"; then
1344    # this is probably gcc 2.8.0, egcs 1.0 or newer; no need for -belf
1345    CFLAGS="$SAVE_CFLAGS"
1346  fi
1347  ;;
1348sparc*-*solaris*)
1349  # Find out which ABI we are using.
1350  echo 'int i;' > conftest.$ac_ext
1351  if AC_TRY_EVAL(ac_compile); then
1352    case `/usr/bin/file conftest.o` in
1353    *64-bit*)
1354      case $lt_cv_prog_gnu_ld in
1355      yes*) LD="${LD-ld} -m elf64_sparc" ;;
1356      *)
1357	if ${LD-ld} -64 -r -o conftest2.o conftest.o >/dev/null 2>&1; then
1358	  LD="${LD-ld} -64"
1359	fi
1360	;;
1361      esac
1362      ;;
1363    esac
1364  fi
1365  rm -rf conftest*
1366  ;;
1367esac
1368
1369need_locks="$enable_libtool_lock"
1370])# _LT_ENABLE_LOCK
1371
1372
1373# _LT_PROG_AR
1374# -----------
1375m4_defun([_LT_PROG_AR],
1376[AC_CHECK_TOOLS(AR, [ar], false)
1377: ${AR=ar}
1378: ${AR_FLAGS=cru}
1379_LT_DECL([], [AR], [1], [The archiver])
1380_LT_DECL([], [AR_FLAGS], [1], [Flags to create an archive])
1381
1382AC_CACHE_CHECK([for archiver @FILE support], [lt_cv_ar_at_file],
1383  [lt_cv_ar_at_file=no
1384   AC_COMPILE_IFELSE([AC_LANG_PROGRAM],
1385     [echo conftest.$ac_objext > conftest.lst
1386      lt_ar_try='$AR $AR_FLAGS libconftest.a @conftest.lst >&AS_MESSAGE_LOG_FD'
1387      AC_TRY_EVAL([lt_ar_try])
1388      if test "$ac_status" -eq 0; then
1389	# Ensure the archiver fails upon bogus file names.
1390	rm -f conftest.$ac_objext libconftest.a
1391	AC_TRY_EVAL([lt_ar_try])
1392	if test "$ac_status" -ne 0; then
1393          lt_cv_ar_at_file=@
1394        fi
1395      fi
1396      rm -f conftest.* libconftest.a
1397     ])
1398  ])
1399
1400if test "x$lt_cv_ar_at_file" = xno; then
1401  archiver_list_spec=
1402else
1403  archiver_list_spec=$lt_cv_ar_at_file
1404fi
1405_LT_DECL([], [archiver_list_spec], [1],
1406  [How to feed a file listing to the archiver])
1407])# _LT_PROG_AR
1408
1409
1410# _LT_CMD_OLD_ARCHIVE
1411# -------------------
1412m4_defun([_LT_CMD_OLD_ARCHIVE],
1413[_LT_PROG_AR
1414
1415AC_CHECK_TOOL(STRIP, strip, :)
1416test -z "$STRIP" && STRIP=:
1417_LT_DECL([], [STRIP], [1], [A symbol stripping program])
1418
1419AC_CHECK_TOOL(RANLIB, ranlib, :)
1420test -z "$RANLIB" && RANLIB=:
1421_LT_DECL([], [RANLIB], [1],
1422    [Commands used to install an old-style archive])
1423
1424# Determine commands to create old-style static archives.
1425old_archive_cmds='$AR $AR_FLAGS $oldlib$oldobjs'
1426old_postinstall_cmds='chmod 644 $oldlib'
1427old_postuninstall_cmds=
1428
1429if test -n "$RANLIB"; then
1430  case $host_os in
1431  openbsd*)
1432    old_postinstall_cmds="$old_postinstall_cmds~\$RANLIB -t \$oldlib"
1433    ;;
1434  *)
1435    old_postinstall_cmds="$old_postinstall_cmds~\$RANLIB \$oldlib"
1436    ;;
1437  esac
1438  old_archive_cmds="$old_archive_cmds~\$RANLIB \$oldlib"
1439fi
1440
1441case $host_os in
1442  darwin*)
1443    lock_old_archive_extraction=yes ;;
1444  *)
1445    lock_old_archive_extraction=no ;;
1446esac
1447_LT_DECL([], [old_postinstall_cmds], [2])
1448_LT_DECL([], [old_postuninstall_cmds], [2])
1449_LT_TAGDECL([], [old_archive_cmds], [2],
1450    [Commands used to build an old-style archive])
1451_LT_DECL([], [lock_old_archive_extraction], [0],
1452    [Whether to use a lock for old archive extraction])
1453])# _LT_CMD_OLD_ARCHIVE
1454
1455
1456# _LT_COMPILER_OPTION(MESSAGE, VARIABLE-NAME, FLAGS,
1457#		[OUTPUT-FILE], [ACTION-SUCCESS], [ACTION-FAILURE])
1458# ----------------------------------------------------------------
1459# Check whether the given compiler option works
1460AC_DEFUN([_LT_COMPILER_OPTION],
1461[m4_require([_LT_FILEUTILS_DEFAULTS])dnl
1462m4_require([_LT_DECL_SED])dnl
1463AC_CACHE_CHECK([$1], [$2],
1464  [$2=no
1465   m4_if([$4], , [ac_outfile=conftest.$ac_objext], [ac_outfile=$4])
1466   echo "$lt_simple_compile_test_code" > conftest.$ac_ext
1467   lt_compiler_flag="$3"
1468   # Insert the option either (1) after the last *FLAGS variable, or
1469   # (2) before a word containing "conftest.", or (3) at the end.
1470   # Note that $ac_compile itself does not contain backslashes and begins
1471   # with a dollar sign (not a hyphen), so the echo should work correctly.
1472   # The option is referenced via a variable to avoid confusing sed.
1473   lt_compile=`echo "$ac_compile" | $SED \
1474   -e 's:.*FLAGS}\{0,1\} :&$lt_compiler_flag :; t' \
1475   -e 's: [[^ ]]*conftest\.: $lt_compiler_flag&:; t' \
1476   -e 's:$: $lt_compiler_flag:'`
1477   (eval echo "\"\$as_me:$LINENO: $lt_compile\"" >&AS_MESSAGE_LOG_FD)
1478   (eval "$lt_compile" 2>conftest.err)
1479   ac_status=$?
1480   cat conftest.err >&AS_MESSAGE_LOG_FD
1481   echo "$as_me:$LINENO: \$? = $ac_status" >&AS_MESSAGE_LOG_FD
1482   if (exit $ac_status) && test -s "$ac_outfile"; then
1483     # The compiler can only warn and ignore the option if not recognized
1484     # So say no if there are warnings other than the usual output.
1485     $ECHO "$_lt_compiler_boilerplate" | $SED '/^$/d' >conftest.exp
1486     $SED '/^$/d; /^ *+/d' conftest.err >conftest.er2
1487     if test ! -s conftest.er2 || diff conftest.exp conftest.er2 >/dev/null; then
1488       $2=yes
1489     fi
1490   fi
1491   $RM conftest*
1492])
1493
1494if test x"[$]$2" = xyes; then
1495    m4_if([$5], , :, [$5])
1496else
1497    m4_if([$6], , :, [$6])
1498fi
1499])# _LT_COMPILER_OPTION
1500
1501# Old name:
1502AU_ALIAS([AC_LIBTOOL_COMPILER_OPTION], [_LT_COMPILER_OPTION])
1503dnl aclocal-1.4 backwards compatibility:
1504dnl AC_DEFUN([AC_LIBTOOL_COMPILER_OPTION], [])
1505
1506
1507# _LT_LINKER_OPTION(MESSAGE, VARIABLE-NAME, FLAGS,
1508#                  [ACTION-SUCCESS], [ACTION-FAILURE])
1509# ----------------------------------------------------
1510# Check whether the given linker option works
1511AC_DEFUN([_LT_LINKER_OPTION],
1512[m4_require([_LT_FILEUTILS_DEFAULTS])dnl
1513m4_require([_LT_DECL_SED])dnl
1514AC_CACHE_CHECK([$1], [$2],
1515  [$2=no
1516   save_LDFLAGS="$LDFLAGS"
1517   LDFLAGS="$LDFLAGS $3"
1518   echo "$lt_simple_link_test_code" > conftest.$ac_ext
1519   if (eval $ac_link 2>conftest.err) && test -s conftest$ac_exeext; then
1520     # The linker can only warn and ignore the option if not recognized
1521     # So say no if there are warnings
1522     if test -s conftest.err; then
1523       # Append any errors to the config.log.
1524       cat conftest.err 1>&AS_MESSAGE_LOG_FD
1525       $ECHO "$_lt_linker_boilerplate" | $SED '/^$/d' > conftest.exp
1526       $SED '/^$/d; /^ *+/d' conftest.err >conftest.er2
1527       if diff conftest.exp conftest.er2 >/dev/null; then
1528         $2=yes
1529       fi
1530     else
1531       $2=yes
1532     fi
1533   fi
1534   $RM -r conftest*
1535   LDFLAGS="$save_LDFLAGS"
1536])
1537
1538if test x"[$]$2" = xyes; then
1539    m4_if([$4], , :, [$4])
1540else
1541    m4_if([$5], , :, [$5])
1542fi
1543])# _LT_LINKER_OPTION
1544
1545# Old name:
1546AU_ALIAS([AC_LIBTOOL_LINKER_OPTION], [_LT_LINKER_OPTION])
1547dnl aclocal-1.4 backwards compatibility:
1548dnl AC_DEFUN([AC_LIBTOOL_LINKER_OPTION], [])
1549
1550
1551# LT_CMD_MAX_LEN
1552#---------------
1553AC_DEFUN([LT_CMD_MAX_LEN],
1554[AC_REQUIRE([AC_CANONICAL_HOST])dnl
1555# find the maximum length of command line arguments
1556AC_MSG_CHECKING([the maximum length of command line arguments])
1557AC_CACHE_VAL([lt_cv_sys_max_cmd_len], [dnl
1558  i=0
1559  teststring="ABCD"
1560
1561  case $build_os in
1562  msdosdjgpp*)
1563    # On DJGPP, this test can blow up pretty badly due to problems in libc
1564    # (any single argument exceeding 2000 bytes causes a buffer overrun
1565    # during glob expansion).  Even if it were fixed, the result of this
1566    # check would be larger than it should be.
1567    lt_cv_sys_max_cmd_len=12288;    # 12K is about right
1568    ;;
1569
1570  gnu*)
1571    # Under GNU Hurd, this test is not required because there is
1572    # no limit to the length of command line arguments.
1573    # Libtool will interpret -1 as no limit whatsoever
1574    lt_cv_sys_max_cmd_len=-1;
1575    ;;
1576
1577  cygwin* | mingw* | cegcc*)
1578    # On Win9x/ME, this test blows up -- it succeeds, but takes
1579    # about 5 minutes as the teststring grows exponentially.
1580    # Worse, since 9x/ME are not pre-emptively multitasking,
1581    # you end up with a "frozen" computer, even though with patience
1582    # the test eventually succeeds (with a max line length of 256k).
1583    # Instead, let's just punt: use the minimum linelength reported by
1584    # all of the supported platforms: 8192 (on NT/2K/XP).
1585    lt_cv_sys_max_cmd_len=8192;
1586    ;;
1587
1588  mint*)
1589    # On MiNT this can take a long time and run out of memory.
1590    lt_cv_sys_max_cmd_len=8192;
1591    ;;
1592
1593  amigaos*)
1594    # On AmigaOS with pdksh, this test takes hours, literally.
1595    # So we just punt and use a minimum line length of 8192.
1596    lt_cv_sys_max_cmd_len=8192;
1597    ;;
1598
1599  netbsd* | freebsd* | openbsd* | darwin* | dragonfly*)
1600    # This has been around since 386BSD, at least.  Likely further.
1601    if test -x /sbin/sysctl; then
1602      lt_cv_sys_max_cmd_len=`/sbin/sysctl -n kern.argmax`
1603    elif test -x /usr/sbin/sysctl; then
1604      lt_cv_sys_max_cmd_len=`/usr/sbin/sysctl -n kern.argmax`
1605    else
1606      lt_cv_sys_max_cmd_len=65536	# usable default for all BSDs
1607    fi
1608    # And add a safety zone
1609    lt_cv_sys_max_cmd_len=`expr $lt_cv_sys_max_cmd_len \/ 4`
1610    lt_cv_sys_max_cmd_len=`expr $lt_cv_sys_max_cmd_len \* 3`
1611    ;;
1612
1613  interix*)
1614    # We know the value 262144 and hardcode it with a safety zone (like BSD)
1615    lt_cv_sys_max_cmd_len=196608
1616    ;;
1617
1618  osf*)
1619    # Dr. Hans Ekkehard Plesser reports seeing a kernel panic running configure
1620    # due to this test when exec_disable_arg_limit is 1 on Tru64. It is not
1621    # nice to cause kernel panics so lets avoid the loop below.
1622    # First set a reasonable default.
1623    lt_cv_sys_max_cmd_len=16384
1624    #
1625    if test -x /sbin/sysconfig; then
1626      case `/sbin/sysconfig -q proc exec_disable_arg_limit` in
1627        *1*) lt_cv_sys_max_cmd_len=-1 ;;
1628      esac
1629    fi
1630    ;;
1631  sco3.2v5*)
1632    lt_cv_sys_max_cmd_len=102400
1633    ;;
1634  sysv5* | sco5v6* | sysv4.2uw2*)
1635    kargmax=`grep ARG_MAX /etc/conf/cf.d/stune 2>/dev/null`
1636    if test -n "$kargmax"; then
1637      lt_cv_sys_max_cmd_len=`echo $kargmax | sed 's/.*[[	 ]]//'`
1638    else
1639      lt_cv_sys_max_cmd_len=32768
1640    fi
1641    ;;
1642  *)
1643    lt_cv_sys_max_cmd_len=`(getconf ARG_MAX) 2> /dev/null`
1644    if test -n "$lt_cv_sys_max_cmd_len"; then
1645      lt_cv_sys_max_cmd_len=`expr $lt_cv_sys_max_cmd_len \/ 4`
1646      lt_cv_sys_max_cmd_len=`expr $lt_cv_sys_max_cmd_len \* 3`
1647    else
1648      # Make teststring a little bigger before we do anything with it.
1649      # a 1K string should be a reasonable start.
1650      for i in 1 2 3 4 5 6 7 8 ; do
1651        teststring=$teststring$teststring
1652      done
1653      SHELL=${SHELL-${CONFIG_SHELL-/bin/sh}}
1654      # If test is not a shell built-in, we'll probably end up computing a
1655      # maximum length that is only half of the actual maximum length, but
1656      # we can't tell.
1657      while { test "X"`func_fallback_echo "$teststring$teststring" 2>/dev/null` \
1658	         = "X$teststring$teststring"; } >/dev/null 2>&1 &&
1659	      test $i != 17 # 1/2 MB should be enough
1660      do
1661        i=`expr $i + 1`
1662        teststring=$teststring$teststring
1663      done
1664      # Only check the string length outside the loop.
1665      lt_cv_sys_max_cmd_len=`expr "X$teststring" : ".*" 2>&1`
1666      teststring=
1667      # Add a significant safety factor because C++ compilers can tack on
1668      # massive amounts of additional arguments before passing them to the
1669      # linker.  It appears as though 1/2 is a usable value.
1670      lt_cv_sys_max_cmd_len=`expr $lt_cv_sys_max_cmd_len \/ 2`
1671    fi
1672    ;;
1673  esac
1674])
1675if test -n $lt_cv_sys_max_cmd_len ; then
1676  AC_MSG_RESULT($lt_cv_sys_max_cmd_len)
1677else
1678  AC_MSG_RESULT(none)
1679fi
1680max_cmd_len=$lt_cv_sys_max_cmd_len
1681_LT_DECL([], [max_cmd_len], [0],
1682    [What is the maximum length of a command?])
1683])# LT_CMD_MAX_LEN
1684
1685# Old name:
1686AU_ALIAS([AC_LIBTOOL_SYS_MAX_CMD_LEN], [LT_CMD_MAX_LEN])
1687dnl aclocal-1.4 backwards compatibility:
1688dnl AC_DEFUN([AC_LIBTOOL_SYS_MAX_CMD_LEN], [])
1689
1690
1691# _LT_HEADER_DLFCN
1692# ----------------
1693m4_defun([_LT_HEADER_DLFCN],
1694[AC_CHECK_HEADERS([dlfcn.h], [], [], [AC_INCLUDES_DEFAULT])dnl
1695])# _LT_HEADER_DLFCN
1696
1697
1698# _LT_TRY_DLOPEN_SELF (ACTION-IF-TRUE, ACTION-IF-TRUE-W-USCORE,
1699#                      ACTION-IF-FALSE, ACTION-IF-CROSS-COMPILING)
1700# ----------------------------------------------------------------
1701m4_defun([_LT_TRY_DLOPEN_SELF],
1702[m4_require([_LT_HEADER_DLFCN])dnl
1703if test "$cross_compiling" = yes; then :
1704  [$4]
1705else
1706  lt_dlunknown=0; lt_dlno_uscore=1; lt_dlneed_uscore=2
1707  lt_status=$lt_dlunknown
1708  cat > conftest.$ac_ext <<_LT_EOF
1709[#line $LINENO "configure"
1710#include "confdefs.h"
1711
1712#if HAVE_DLFCN_H
1713#include <dlfcn.h>
1714#endif
1715
1716#include <stdio.h>
1717
1718#ifdef RTLD_GLOBAL
1719#  define LT_DLGLOBAL		RTLD_GLOBAL
1720#else
1721#  ifdef DL_GLOBAL
1722#    define LT_DLGLOBAL		DL_GLOBAL
1723#  else
1724#    define LT_DLGLOBAL		0
1725#  endif
1726#endif
1727
1728/* We may have to define LT_DLLAZY_OR_NOW in the command line if we
1729   find out it does not work in some platform. */
1730#ifndef LT_DLLAZY_OR_NOW
1731#  ifdef RTLD_LAZY
1732#    define LT_DLLAZY_OR_NOW		RTLD_LAZY
1733#  else
1734#    ifdef DL_LAZY
1735#      define LT_DLLAZY_OR_NOW		DL_LAZY
1736#    else
1737#      ifdef RTLD_NOW
1738#        define LT_DLLAZY_OR_NOW	RTLD_NOW
1739#      else
1740#        ifdef DL_NOW
1741#          define LT_DLLAZY_OR_NOW	DL_NOW
1742#        else
1743#          define LT_DLLAZY_OR_NOW	0
1744#        endif
1745#      endif
1746#    endif
1747#  endif
1748#endif
1749
1750/* When -fvisbility=hidden is used, assume the code has been annotated
1751   correspondingly for the symbols needed.  */
1752#if defined(__GNUC__) && (((__GNUC__ == 3) && (__GNUC_MINOR__ >= 3)) || (__GNUC__ > 3))
1753int fnord () __attribute__((visibility("default")));
1754#endif
1755
1756int fnord () { return 42; }
1757int main ()
1758{
1759  void *self = dlopen (0, LT_DLGLOBAL|LT_DLLAZY_OR_NOW);
1760  int status = $lt_dlunknown;
1761
1762  if (self)
1763    {
1764      if (dlsym (self,"fnord"))       status = $lt_dlno_uscore;
1765      else
1766        {
1767	  if (dlsym( self,"_fnord"))  status = $lt_dlneed_uscore;
1768          else puts (dlerror ());
1769	}
1770      /* dlclose (self); */
1771    }
1772  else
1773    puts (dlerror ());
1774
1775  return status;
1776}]
1777_LT_EOF
1778  if AC_TRY_EVAL(ac_link) && test -s conftest${ac_exeext} 2>/dev/null; then
1779    (./conftest; exit; ) >&AS_MESSAGE_LOG_FD 2>/dev/null
1780    lt_status=$?
1781    case x$lt_status in
1782      x$lt_dlno_uscore) $1 ;;
1783      x$lt_dlneed_uscore) $2 ;;
1784      x$lt_dlunknown|x*) $3 ;;
1785    esac
1786  else :
1787    # compilation failed
1788    $3
1789  fi
1790fi
1791rm -fr conftest*
1792])# _LT_TRY_DLOPEN_SELF
1793
1794
1795# LT_SYS_DLOPEN_SELF
1796# ------------------
1797AC_DEFUN([LT_SYS_DLOPEN_SELF],
1798[m4_require([_LT_HEADER_DLFCN])dnl
1799if test "x$enable_dlopen" != xyes; then
1800  enable_dlopen=unknown
1801  enable_dlopen_self=unknown
1802  enable_dlopen_self_static=unknown
1803else
1804  lt_cv_dlopen=no
1805  lt_cv_dlopen_libs=
1806
1807  case $host_os in
1808  beos*)
1809    lt_cv_dlopen="load_add_on"
1810    lt_cv_dlopen_libs=
1811    lt_cv_dlopen_self=yes
1812    ;;
1813
1814  mingw* | pw32* | cegcc*)
1815    lt_cv_dlopen="LoadLibrary"
1816    lt_cv_dlopen_libs=
1817    ;;
1818
1819  cygwin*)
1820    lt_cv_dlopen="dlopen"
1821    lt_cv_dlopen_libs=
1822    ;;
1823
1824  darwin*)
1825  # if libdl is installed we need to link against it
1826    AC_CHECK_LIB([dl], [dlopen],
1827		[lt_cv_dlopen="dlopen" lt_cv_dlopen_libs="-ldl"],[
1828    lt_cv_dlopen="dyld"
1829    lt_cv_dlopen_libs=
1830    lt_cv_dlopen_self=yes
1831    ])
1832    ;;
1833
1834  *)
1835    AC_CHECK_FUNC([shl_load],
1836	  [lt_cv_dlopen="shl_load"],
1837      [AC_CHECK_LIB([dld], [shl_load],
1838	    [lt_cv_dlopen="shl_load" lt_cv_dlopen_libs="-ldld"],
1839	[AC_CHECK_FUNC([dlopen],
1840	      [lt_cv_dlopen="dlopen"],
1841	  [AC_CHECK_LIB([dl], [dlopen],
1842		[lt_cv_dlopen="dlopen" lt_cv_dlopen_libs="-ldl"],
1843	    [AC_CHECK_LIB([svld], [dlopen],
1844		  [lt_cv_dlopen="dlopen" lt_cv_dlopen_libs="-lsvld"],
1845	      [AC_CHECK_LIB([dld], [dld_link],
1846		    [lt_cv_dlopen="dld_link" lt_cv_dlopen_libs="-ldld"])
1847	      ])
1848	    ])
1849	  ])
1850	])
1851      ])
1852    ;;
1853  esac
1854
1855  if test "x$lt_cv_dlopen" != xno; then
1856    enable_dlopen=yes
1857  else
1858    enable_dlopen=no
1859  fi
1860
1861  case $lt_cv_dlopen in
1862  dlopen)
1863    save_CPPFLAGS="$CPPFLAGS"
1864    test "x$ac_cv_header_dlfcn_h" = xyes && CPPFLAGS="$CPPFLAGS -DHAVE_DLFCN_H"
1865
1866    save_LDFLAGS="$LDFLAGS"
1867    wl=$lt_prog_compiler_wl eval LDFLAGS=\"\$LDFLAGS $export_dynamic_flag_spec\"
1868
1869    save_LIBS="$LIBS"
1870    LIBS="$lt_cv_dlopen_libs $LIBS"
1871
1872    AC_CACHE_CHECK([whether a program can dlopen itself],
1873	  lt_cv_dlopen_self, [dnl
1874	  _LT_TRY_DLOPEN_SELF(
1875	    lt_cv_dlopen_self=yes, lt_cv_dlopen_self=yes,
1876	    lt_cv_dlopen_self=no, lt_cv_dlopen_self=cross)
1877    ])
1878
1879    if test "x$lt_cv_dlopen_self" = xyes; then
1880      wl=$lt_prog_compiler_wl eval LDFLAGS=\"\$LDFLAGS $lt_prog_compiler_static\"
1881      AC_CACHE_CHECK([whether a statically linked program can dlopen itself],
1882	  lt_cv_dlopen_self_static, [dnl
1883	  _LT_TRY_DLOPEN_SELF(
1884	    lt_cv_dlopen_self_static=yes, lt_cv_dlopen_self_static=yes,
1885	    lt_cv_dlopen_self_static=no,  lt_cv_dlopen_self_static=cross)
1886      ])
1887    fi
1888
1889    CPPFLAGS="$save_CPPFLAGS"
1890    LDFLAGS="$save_LDFLAGS"
1891    LIBS="$save_LIBS"
1892    ;;
1893  esac
1894
1895  case $lt_cv_dlopen_self in
1896  yes|no) enable_dlopen_self=$lt_cv_dlopen_self ;;
1897  *) enable_dlopen_self=unknown ;;
1898  esac
1899
1900  case $lt_cv_dlopen_self_static in
1901  yes|no) enable_dlopen_self_static=$lt_cv_dlopen_self_static ;;
1902  *) enable_dlopen_self_static=unknown ;;
1903  esac
1904fi
1905_LT_DECL([dlopen_support], [enable_dlopen], [0],
1906	 [Whether dlopen is supported])
1907_LT_DECL([dlopen_self], [enable_dlopen_self], [0],
1908	 [Whether dlopen of programs is supported])
1909_LT_DECL([dlopen_self_static], [enable_dlopen_self_static], [0],
1910	 [Whether dlopen of statically linked programs is supported])
1911])# LT_SYS_DLOPEN_SELF
1912
1913# Old name:
1914AU_ALIAS([AC_LIBTOOL_DLOPEN_SELF], [LT_SYS_DLOPEN_SELF])
1915dnl aclocal-1.4 backwards compatibility:
1916dnl AC_DEFUN([AC_LIBTOOL_DLOPEN_SELF], [])
1917
1918
1919# _LT_COMPILER_C_O([TAGNAME])
1920# ---------------------------
1921# Check to see if options -c and -o are simultaneously supported by compiler.
1922# This macro does not hard code the compiler like AC_PROG_CC_C_O.
1923m4_defun([_LT_COMPILER_C_O],
1924[m4_require([_LT_DECL_SED])dnl
1925m4_require([_LT_FILEUTILS_DEFAULTS])dnl
1926m4_require([_LT_TAG_COMPILER])dnl
1927AC_CACHE_CHECK([if $compiler supports -c -o file.$ac_objext],
1928  [_LT_TAGVAR(lt_cv_prog_compiler_c_o, $1)],
1929  [_LT_TAGVAR(lt_cv_prog_compiler_c_o, $1)=no
1930   $RM -r conftest 2>/dev/null
1931   mkdir conftest
1932   cd conftest
1933   mkdir out
1934   echo "$lt_simple_compile_test_code" > conftest.$ac_ext
1935
1936   lt_compiler_flag="-o out/conftest2.$ac_objext"
1937   # Insert the option either (1) after the last *FLAGS variable, or
1938   # (2) before a word containing "conftest.", or (3) at the end.
1939   # Note that $ac_compile itself does not contain backslashes and begins
1940   # with a dollar sign (not a hyphen), so the echo should work correctly.
1941   lt_compile=`echo "$ac_compile" | $SED \
1942   -e 's:.*FLAGS}\{0,1\} :&$lt_compiler_flag :; t' \
1943   -e 's: [[^ ]]*conftest\.: $lt_compiler_flag&:; t' \
1944   -e 's:$: $lt_compiler_flag:'`
1945   (eval echo "\"\$as_me:$LINENO: $lt_compile\"" >&AS_MESSAGE_LOG_FD)
1946   (eval "$lt_compile" 2>out/conftest.err)
1947   ac_status=$?
1948   cat out/conftest.err >&AS_MESSAGE_LOG_FD
1949   echo "$as_me:$LINENO: \$? = $ac_status" >&AS_MESSAGE_LOG_FD
1950   if (exit $ac_status) && test -s out/conftest2.$ac_objext
1951   then
1952     # The compiler can only warn and ignore the option if not recognized
1953     # So say no if there are warnings
1954     $ECHO "$_lt_compiler_boilerplate" | $SED '/^$/d' > out/conftest.exp
1955     $SED '/^$/d; /^ *+/d' out/conftest.err >out/conftest.er2
1956     if test ! -s out/conftest.er2 || diff out/conftest.exp out/conftest.er2 >/dev/null; then
1957       _LT_TAGVAR(lt_cv_prog_compiler_c_o, $1)=yes
1958     fi
1959   fi
1960   chmod u+w . 2>&AS_MESSAGE_LOG_FD
1961   $RM conftest*
1962   # SGI C++ compiler will create directory out/ii_files/ for
1963   # template instantiation
1964   test -d out/ii_files && $RM out/ii_files/* && rmdir out/ii_files
1965   $RM out/* && rmdir out
1966   cd ..
1967   $RM -r conftest
1968   $RM conftest*
1969])
1970_LT_TAGDECL([compiler_c_o], [lt_cv_prog_compiler_c_o], [1],
1971	[Does compiler simultaneously support -c and -o options?])
1972])# _LT_COMPILER_C_O
1973
1974
1975# _LT_COMPILER_FILE_LOCKS([TAGNAME])
1976# ----------------------------------
1977# Check to see if we can do hard links to lock some files if needed
1978m4_defun([_LT_COMPILER_FILE_LOCKS],
1979[m4_require([_LT_ENABLE_LOCK])dnl
1980m4_require([_LT_FILEUTILS_DEFAULTS])dnl
1981_LT_COMPILER_C_O([$1])
1982
1983hard_links="nottested"
1984if test "$_LT_TAGVAR(lt_cv_prog_compiler_c_o, $1)" = no && test "$need_locks" != no; then
1985  # do not overwrite the value of need_locks provided by the user
1986  AC_MSG_CHECKING([if we can lock with hard links])
1987  hard_links=yes
1988  $RM conftest*
1989  ln conftest.a conftest.b 2>/dev/null && hard_links=no
1990  touch conftest.a
1991  ln conftest.a conftest.b 2>&5 || hard_links=no
1992  ln conftest.a conftest.b 2>/dev/null && hard_links=no
1993  AC_MSG_RESULT([$hard_links])
1994  if test "$hard_links" = no; then
1995    AC_MSG_WARN([`$CC' does not support `-c -o', so `make -j' may be unsafe])
1996    need_locks=warn
1997  fi
1998else
1999  need_locks=no
2000fi
2001_LT_DECL([], [need_locks], [1], [Must we lock files when doing compilation?])
2002])# _LT_COMPILER_FILE_LOCKS
2003
2004
2005# _LT_CHECK_OBJDIR
2006# ----------------
2007m4_defun([_LT_CHECK_OBJDIR],
2008[AC_CACHE_CHECK([for objdir], [lt_cv_objdir],
2009[rm -f .libs 2>/dev/null
2010mkdir .libs 2>/dev/null
2011if test -d .libs; then
2012  lt_cv_objdir=.libs
2013else
2014  # MS-DOS does not allow filenames that begin with a dot.
2015  lt_cv_objdir=_libs
2016fi
2017rmdir .libs 2>/dev/null])
2018objdir=$lt_cv_objdir
2019_LT_DECL([], [objdir], [0],
2020         [The name of the directory that contains temporary libtool files])dnl
2021m4_pattern_allow([LT_OBJDIR])dnl
2022AC_DEFINE_UNQUOTED(LT_OBJDIR, "$lt_cv_objdir/",
2023  [Define to the sub-directory in which libtool stores uninstalled libraries.])
2024])# _LT_CHECK_OBJDIR
2025
2026
2027# _LT_LINKER_HARDCODE_LIBPATH([TAGNAME])
2028# --------------------------------------
2029# Check hardcoding attributes.
2030m4_defun([_LT_LINKER_HARDCODE_LIBPATH],
2031[AC_MSG_CHECKING([how to hardcode library paths into programs])
2032_LT_TAGVAR(hardcode_action, $1)=
2033if test -n "$_LT_TAGVAR(hardcode_libdir_flag_spec, $1)" ||
2034   test -n "$_LT_TAGVAR(runpath_var, $1)" ||
2035   test "X$_LT_TAGVAR(hardcode_automatic, $1)" = "Xyes" ; then
2036
2037  # We can hardcode non-existent directories.
2038  if test "$_LT_TAGVAR(hardcode_direct, $1)" != no &&
2039     # If the only mechanism to avoid hardcoding is shlibpath_var, we
2040     # have to relink, otherwise we might link with an installed library
2041     # when we should be linking with a yet-to-be-installed one
2042     ## test "$_LT_TAGVAR(hardcode_shlibpath_var, $1)" != no &&
2043     test "$_LT_TAGVAR(hardcode_minus_L, $1)" != no; then
2044    # Linking always hardcodes the temporary library directory.
2045    _LT_TAGVAR(hardcode_action, $1)=relink
2046  else
2047    # We can link without hardcoding, and we can hardcode nonexisting dirs.
2048    _LT_TAGVAR(hardcode_action, $1)=immediate
2049  fi
2050else
2051  # We cannot hardcode anything, or else we can only hardcode existing
2052  # directories.
2053  _LT_TAGVAR(hardcode_action, $1)=unsupported
2054fi
2055AC_MSG_RESULT([$_LT_TAGVAR(hardcode_action, $1)])
2056
2057if test "$_LT_TAGVAR(hardcode_action, $1)" = relink ||
2058   test "$_LT_TAGVAR(inherit_rpath, $1)" = yes; then
2059  # Fast installation is not supported
2060  enable_fast_install=no
2061elif test "$shlibpath_overrides_runpath" = yes ||
2062     test "$enable_shared" = no; then
2063  # Fast installation is not necessary
2064  enable_fast_install=needless
2065fi
2066_LT_TAGDECL([], [hardcode_action], [0],
2067    [How to hardcode a shared library path into an executable])
2068])# _LT_LINKER_HARDCODE_LIBPATH
2069
2070
2071# _LT_CMD_STRIPLIB
2072# ----------------
2073m4_defun([_LT_CMD_STRIPLIB],
2074[m4_require([_LT_DECL_EGREP])
2075striplib=
2076old_striplib=
2077AC_MSG_CHECKING([whether stripping libraries is possible])
2078if test -n "$STRIP" && $STRIP -V 2>&1 | $GREP "GNU strip" >/dev/null; then
2079  test -z "$old_striplib" && old_striplib="$STRIP --strip-debug"
2080  test -z "$striplib" && striplib="$STRIP --strip-unneeded"
2081  AC_MSG_RESULT([yes])
2082else
2083# FIXME - insert some real tests, host_os isn't really good enough
2084  case $host_os in
2085  darwin*)
2086    if test -n "$STRIP" ; then
2087      striplib="$STRIP -x"
2088      old_striplib="$STRIP -S"
2089      AC_MSG_RESULT([yes])
2090    else
2091      AC_MSG_RESULT([no])
2092    fi
2093    ;;
2094  *)
2095    AC_MSG_RESULT([no])
2096    ;;
2097  esac
2098fi
2099_LT_DECL([], [old_striplib], [1], [Commands to strip libraries])
2100_LT_DECL([], [striplib], [1])
2101])# _LT_CMD_STRIPLIB
2102
2103
2104# _LT_SYS_DYNAMIC_LINKER([TAG])
2105# -----------------------------
2106# PORTME Fill in your ld.so characteristics
2107m4_defun([_LT_SYS_DYNAMIC_LINKER],
2108[AC_REQUIRE([AC_CANONICAL_HOST])dnl
2109m4_require([_LT_DECL_EGREP])dnl
2110m4_require([_LT_FILEUTILS_DEFAULTS])dnl
2111m4_require([_LT_DECL_OBJDUMP])dnl
2112m4_require([_LT_DECL_SED])dnl
2113m4_require([_LT_CHECK_SHELL_FEATURES])dnl
2114AC_MSG_CHECKING([dynamic linker characteristics])
2115m4_if([$1],
2116	[], [
2117if test "$GCC" = yes; then
2118  case $host_os in
2119    darwin*) lt_awk_arg="/^libraries:/,/LR/" ;;
2120    *) lt_awk_arg="/^libraries:/" ;;
2121  esac
2122  case $host_os in
2123    mingw* | cegcc*) lt_sed_strip_eq="s,=\([[A-Za-z]]:\),\1,g" ;;
2124    *) lt_sed_strip_eq="s,=/,/,g" ;;
2125  esac
2126  lt_search_path_spec=`$CC -print-search-dirs | awk $lt_awk_arg | $SED -e "s/^libraries://" -e $lt_sed_strip_eq`
2127  case $lt_search_path_spec in
2128  *\;*)
2129    # if the path contains ";" then we assume it to be the separator
2130    # otherwise default to the standard path separator (i.e. ":") - it is
2131    # assumed that no part of a normal pathname contains ";" but that should
2132    # okay in the real world where ";" in dirpaths is itself problematic.
2133    lt_search_path_spec=`$ECHO "$lt_search_path_spec" | $SED 's/;/ /g'`
2134    ;;
2135  *)
2136    lt_search_path_spec=`$ECHO "$lt_search_path_spec" | $SED "s/$PATH_SEPARATOR/ /g"`
2137    ;;
2138  esac
2139  # Ok, now we have the path, separated by spaces, we can step through it
2140  # and add multilib dir if necessary.
2141  lt_tmp_lt_search_path_spec=
2142  lt_multi_os_dir=`$CC $CPPFLAGS $CFLAGS $LDFLAGS -print-multi-os-directory 2>/dev/null`
2143  for lt_sys_path in $lt_search_path_spec; do
2144    if test -d "$lt_sys_path/$lt_multi_os_dir"; then
2145      lt_tmp_lt_search_path_spec="$lt_tmp_lt_search_path_spec $lt_sys_path/$lt_multi_os_dir"
2146    else
2147      test -d "$lt_sys_path" && \
2148	lt_tmp_lt_search_path_spec="$lt_tmp_lt_search_path_spec $lt_sys_path"
2149    fi
2150  done
2151  lt_search_path_spec=`$ECHO "$lt_tmp_lt_search_path_spec" | awk '
2152BEGIN {RS=" "; FS="/|\n";} {
2153  lt_foo="";
2154  lt_count=0;
2155  for (lt_i = NF; lt_i > 0; lt_i--) {
2156    if ($lt_i != "" && $lt_i != ".") {
2157      if ($lt_i == "..") {
2158        lt_count++;
2159      } else {
2160        if (lt_count == 0) {
2161          lt_foo="/" $lt_i lt_foo;
2162        } else {
2163          lt_count--;
2164        }
2165      }
2166    }
2167  }
2168  if (lt_foo != "") { lt_freq[[lt_foo]]++; }
2169  if (lt_freq[[lt_foo]] == 1) { print lt_foo; }
2170}'`
2171  # AWK program above erroneously prepends '/' to C:/dos/paths
2172  # for these hosts.
2173  case $host_os in
2174    mingw* | cegcc*) lt_search_path_spec=`$ECHO "$lt_search_path_spec" |\
2175      $SED 's,/\([[A-Za-z]]:\),\1,g'` ;;
2176  esac
2177  sys_lib_search_path_spec=`$ECHO "$lt_search_path_spec" | $lt_NL2SP`
2178else
2179  sys_lib_search_path_spec="/lib /usr/lib /usr/local/lib"
2180fi])
2181library_names_spec=
2182libname_spec='lib$name'
2183soname_spec=
2184shrext_cmds=".so"
2185postinstall_cmds=
2186postuninstall_cmds=
2187finish_cmds=
2188finish_eval=
2189shlibpath_var=
2190shlibpath_overrides_runpath=unknown
2191version_type=none
2192dynamic_linker="$host_os ld.so"
2193sys_lib_dlsearch_path_spec="/lib /usr/lib"
2194need_lib_prefix=unknown
2195hardcode_into_libs=no
2196
2197# when you set need_version to no, make sure it does not cause -set_version
2198# flags to be left without arguments
2199need_version=unknown
2200
2201case $host_os in
2202aix3*)
2203  version_type=linux
2204  library_names_spec='${libname}${release}${shared_ext}$versuffix $libname.a'
2205  shlibpath_var=LIBPATH
2206
2207  # AIX 3 has no versioning support, so we append a major version to the name.
2208  soname_spec='${libname}${release}${shared_ext}$major'
2209  ;;
2210
2211aix[[4-9]]*)
2212  version_type=linux
2213  need_lib_prefix=no
2214  need_version=no
2215  hardcode_into_libs=yes
2216  if test "$host_cpu" = ia64; then
2217    # AIX 5 supports IA64
2218    library_names_spec='${libname}${release}${shared_ext}$major ${libname}${release}${shared_ext}$versuffix $libname${shared_ext}'
2219    shlibpath_var=LD_LIBRARY_PATH
2220  else
2221    # With GCC up to 2.95.x, collect2 would create an import file
2222    # for dependence libraries.  The import file would start with
2223    # the line `#! .'.  This would cause the generated library to
2224    # depend on `.', always an invalid library.  This was fixed in
2225    # development snapshots of GCC prior to 3.0.
2226    case $host_os in
2227      aix4 | aix4.[[01]] | aix4.[[01]].*)
2228      if { echo '#if __GNUC__ > 2 || (__GNUC__ == 2 && __GNUC_MINOR__ >= 97)'
2229	   echo ' yes '
2230	   echo '#endif'; } | ${CC} -E - | $GREP yes > /dev/null; then
2231	:
2232      else
2233	can_build_shared=no
2234      fi
2235      ;;
2236    esac
2237    # AIX (on Power*) has no versioning support, so currently we can not hardcode correct
2238    # soname into executable. Probably we can add versioning support to
2239    # collect2, so additional links can be useful in future.
2240    if test "$aix_use_runtimelinking" = yes; then
2241      # If using run time linking (on AIX 4.2 or later) use lib<name>.so
2242      # instead of lib<name>.a to let people know that these are not
2243      # typical AIX shared libraries.
2244      library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}'
2245    else
2246      # We preserve .a as extension for shared libraries through AIX4.2
2247      # and later when we are not doing run time linking.
2248      library_names_spec='${libname}${release}.a $libname.a'
2249      soname_spec='${libname}${release}${shared_ext}$major'
2250    fi
2251    shlibpath_var=LIBPATH
2252  fi
2253  ;;
2254
2255amigaos*)
2256  case $host_cpu in
2257  powerpc)
2258    # Since July 2007 AmigaOS4 officially supports .so libraries.
2259    # When compiling the executable, add -use-dynld -Lsobjs: to the compileline.
2260    library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}'
2261    ;;
2262  m68k)
2263    library_names_spec='$libname.ixlibrary $libname.a'
2264    # Create ${libname}_ixlibrary.a entries in /sys/libs.
2265    finish_eval='for lib in `ls $libdir/*.ixlibrary 2>/dev/null`; do libname=`func_echo_all "$lib" | $SED '\''s%^.*/\([[^/]]*\)\.ixlibrary$%\1%'\''`; test $RM /sys/libs/${libname}_ixlibrary.a; $show "cd /sys/libs && $LN_S $lib ${libname}_ixlibrary.a"; cd /sys/libs && $LN_S $lib ${libname}_ixlibrary.a || exit 1; done'
2266    ;;
2267  esac
2268  ;;
2269
2270beos*)
2271  library_names_spec='${libname}${shared_ext}'
2272  dynamic_linker="$host_os ld.so"
2273  shlibpath_var=LIBRARY_PATH
2274  ;;
2275
2276bsdi[[45]]*)
2277  version_type=linux
2278  need_version=no
2279  library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}'
2280  soname_spec='${libname}${release}${shared_ext}$major'
2281  finish_cmds='PATH="\$PATH:/sbin" ldconfig $libdir'
2282  shlibpath_var=LD_LIBRARY_PATH
2283  sys_lib_search_path_spec="/shlib /usr/lib /usr/X11/lib /usr/contrib/lib /lib /usr/local/lib"
2284  sys_lib_dlsearch_path_spec="/shlib /usr/lib /usr/local/lib"
2285  # the default ld.so.conf also contains /usr/contrib/lib and
2286  # /usr/X11R6/lib (/usr/X11 is a link to /usr/X11R6), but let us allow
2287  # libtool to hard-code these into programs
2288  ;;
2289
2290cygwin* | mingw* | pw32* | cegcc*)
2291  version_type=windows
2292  shrext_cmds=".dll"
2293  need_version=no
2294  need_lib_prefix=no
2295
2296  case $GCC,$cc_basename in
2297  yes,*)
2298    # gcc
2299    library_names_spec='$libname.dll.a'
2300    # DLL is installed to $(libdir)/../bin by postinstall_cmds
2301    postinstall_cmds='base_file=`basename \${file}`~
2302      dlpath=`$SHELL 2>&1 -c '\''. $dir/'\''\${base_file}'\''i; echo \$dlname'\''`~
2303      dldir=$destdir/`dirname \$dlpath`~
2304      test -d \$dldir || mkdir -p \$dldir~
2305      $install_prog $dir/$dlname \$dldir/$dlname~
2306      chmod a+x \$dldir/$dlname~
2307      if test -n '\''$stripme'\'' && test -n '\''$striplib'\''; then
2308        eval '\''$striplib \$dldir/$dlname'\'' || exit \$?;
2309      fi'
2310    postuninstall_cmds='dldll=`$SHELL 2>&1 -c '\''. $file; echo \$dlname'\''`~
2311      dlpath=$dir/\$dldll~
2312       $RM \$dlpath'
2313    shlibpath_overrides_runpath=yes
2314
2315    case $host_os in
2316    cygwin*)
2317      # Cygwin DLLs use 'cyg' prefix rather than 'lib'
2318      soname_spec='`echo ${libname} | sed -e 's/^lib/cyg/'``echo ${release} | $SED -e 's/[[.]]/-/g'`${versuffix}${shared_ext}'
2319m4_if([$1], [],[
2320      sys_lib_search_path_spec="$sys_lib_search_path_spec /usr/lib/w32api"])
2321      ;;
2322    mingw* | cegcc*)
2323      # MinGW DLLs use traditional 'lib' prefix
2324      soname_spec='${libname}`echo ${release} | $SED -e 's/[[.]]/-/g'`${versuffix}${shared_ext}'
2325      ;;
2326    pw32*)
2327      # pw32 DLLs use 'pw' prefix rather than 'lib'
2328      library_names_spec='`echo ${libname} | sed -e 's/^lib/pw/'``echo ${release} | $SED -e 's/[[.]]/-/g'`${versuffix}${shared_ext}'
2329      ;;
2330    esac
2331    dynamic_linker='Win32 ld.exe'
2332    ;;
2333
2334  *,cl*)
2335    # Native MSVC
2336    libname_spec='$name'
2337    soname_spec='${libname}`echo ${release} | $SED -e 's/[[.]]/-/g'`${versuffix}${shared_ext}'
2338    library_names_spec='${libname}.dll.lib'
2339
2340    case $build_os in
2341    mingw*)
2342      sys_lib_search_path_spec=
2343      lt_save_ifs=$IFS
2344      IFS=';'
2345      for lt_path in $LIB
2346      do
2347        IFS=$lt_save_ifs
2348        # Let DOS variable expansion print the short 8.3 style file name.
2349        lt_path=`cd "$lt_path" 2>/dev/null && cmd //C "for %i in (".") do @echo %~si"`
2350        sys_lib_search_path_spec="$sys_lib_search_path_spec $lt_path"
2351      done
2352      IFS=$lt_save_ifs
2353      # Convert to MSYS style.
2354      sys_lib_search_path_spec=`$ECHO "$sys_lib_search_path_spec" | sed -e 's|\\\\|/|g' -e 's| \\([[a-zA-Z]]\\):| /\\1|g' -e 's|^ ||'`
2355      ;;
2356    cygwin*)
2357      # Convert to unix form, then to dos form, then back to unix form
2358      # but this time dos style (no spaces!) so that the unix form looks
2359      # like /cygdrive/c/PROGRA~1:/cygdr...
2360      sys_lib_search_path_spec=`cygpath --path --unix "$LIB"`
2361      sys_lib_search_path_spec=`cygpath --path --dos "$sys_lib_search_path_spec" 2>/dev/null`
2362      sys_lib_search_path_spec=`cygpath --path --unix "$sys_lib_search_path_spec" | $SED -e "s/$PATH_SEPARATOR/ /g"`
2363      ;;
2364    *)
2365      sys_lib_search_path_spec="$LIB"
2366      if $ECHO "$sys_lib_search_path_spec" | [$GREP ';[c-zC-Z]:/' >/dev/null]; then
2367        # It is most probably a Windows format PATH.
2368        sys_lib_search_path_spec=`$ECHO "$sys_lib_search_path_spec" | $SED -e 's/;/ /g'`
2369      else
2370        sys_lib_search_path_spec=`$ECHO "$sys_lib_search_path_spec" | $SED -e "s/$PATH_SEPARATOR/ /g"`
2371      fi
2372      # FIXME: find the short name or the path components, as spaces are
2373      # common. (e.g. "Program Files" -> "PROGRA~1")
2374      ;;
2375    esac
2376
2377    # DLL is installed to $(libdir)/../bin by postinstall_cmds
2378    postinstall_cmds='base_file=`basename \${file}`~
2379      dlpath=`$SHELL 2>&1 -c '\''. $dir/'\''\${base_file}'\''i; echo \$dlname'\''`~
2380      dldir=$destdir/`dirname \$dlpath`~
2381      test -d \$dldir || mkdir -p \$dldir~
2382      $install_prog $dir/$dlname \$dldir/$dlname'
2383    postuninstall_cmds='dldll=`$SHELL 2>&1 -c '\''. $file; echo \$dlname'\''`~
2384      dlpath=$dir/\$dldll~
2385       $RM \$dlpath'
2386    shlibpath_overrides_runpath=yes
2387    dynamic_linker='Win32 link.exe'
2388    ;;
2389
2390  *)
2391    # Assume MSVC wrapper
2392    library_names_spec='${libname}`echo ${release} | $SED -e 's/[[.]]/-/g'`${versuffix}${shared_ext} $libname.lib'
2393    dynamic_linker='Win32 ld.exe'
2394    ;;
2395  esac
2396  # FIXME: first we should search . and the directory the executable is in
2397  shlibpath_var=PATH
2398  ;;
2399
2400darwin* | rhapsody*)
2401  dynamic_linker="$host_os dyld"
2402  version_type=darwin
2403  need_lib_prefix=no
2404  need_version=no
2405  library_names_spec='${libname}${release}${major}$shared_ext ${libname}$shared_ext'
2406  soname_spec='${libname}${release}${major}$shared_ext'
2407  shlibpath_overrides_runpath=yes
2408  shlibpath_var=DYLD_LIBRARY_PATH
2409  shrext_cmds='`test .$module = .yes && echo .so || echo .dylib`'
2410m4_if([$1], [],[
2411  sys_lib_search_path_spec="$sys_lib_search_path_spec /usr/local/lib"])
2412  sys_lib_dlsearch_path_spec='/usr/local/lib /lib /usr/lib'
2413  ;;
2414
2415dgux*)
2416  version_type=linux
2417  need_lib_prefix=no
2418  need_version=no
2419  library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname$shared_ext'
2420  soname_spec='${libname}${release}${shared_ext}$major'
2421  shlibpath_var=LD_LIBRARY_PATH
2422  ;;
2423
2424freebsd1*)
2425  dynamic_linker=no
2426  ;;
2427
2428freebsd* | dragonfly*)
2429  # DragonFly does not have aout.  When/if they implement a new
2430  # versioning mechanism, adjust this.
2431  if test -x /usr/bin/objformat; then
2432    objformat=`/usr/bin/objformat`
2433  else
2434    case $host_os in
2435    freebsd[[123]]*) objformat=aout ;;
2436    *) objformat=elf ;;
2437    esac
2438  fi
2439  version_type=freebsd-$objformat
2440  case $version_type in
2441    freebsd-elf*)
2442      library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext} $libname${shared_ext}'
2443      need_version=no
2444      need_lib_prefix=no
2445      ;;
2446    freebsd-*)
2447      library_names_spec='${libname}${release}${shared_ext}$versuffix $libname${shared_ext}$versuffix'
2448      need_version=yes
2449      ;;
2450  esac
2451  shlibpath_var=LD_LIBRARY_PATH
2452  case $host_os in
2453  freebsd2*)
2454    shlibpath_overrides_runpath=yes
2455    ;;
2456  freebsd3.[[01]]* | freebsdelf3.[[01]]*)
2457    shlibpath_overrides_runpath=yes
2458    hardcode_into_libs=yes
2459    ;;
2460  freebsd3.[[2-9]]* | freebsdelf3.[[2-9]]* | \
2461  freebsd4.[[0-5]] | freebsdelf4.[[0-5]] | freebsd4.1.1 | freebsdelf4.1.1)
2462    shlibpath_overrides_runpath=no
2463    hardcode_into_libs=yes
2464    ;;
2465  *) # from 4.6 on, and DragonFly
2466    shlibpath_overrides_runpath=yes
2467    hardcode_into_libs=yes
2468    ;;
2469  esac
2470  ;;
2471
2472gnu*)
2473  version_type=linux
2474  need_lib_prefix=no
2475  need_version=no
2476  library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}${major} ${libname}${shared_ext}'
2477  soname_spec='${libname}${release}${shared_ext}$major'
2478  shlibpath_var=LD_LIBRARY_PATH
2479  hardcode_into_libs=yes
2480  ;;
2481
2482haiku*)
2483  version_type=linux
2484  need_lib_prefix=no
2485  need_version=no
2486  dynamic_linker="$host_os runtime_loader"
2487  library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}${major} ${libname}${shared_ext}'
2488  soname_spec='${libname}${release}${shared_ext}$major'
2489  shlibpath_var=LIBRARY_PATH
2490  shlibpath_overrides_runpath=yes
2491  sys_lib_dlsearch_path_spec='/boot/home/config/lib /boot/common/lib /boot/system/lib'
2492  hardcode_into_libs=yes
2493  ;;
2494
2495hpux9* | hpux10* | hpux11*)
2496  # Give a soname corresponding to the major version so that dld.sl refuses to
2497  # link against other versions.
2498  version_type=sunos
2499  need_lib_prefix=no
2500  need_version=no
2501  case $host_cpu in
2502  ia64*)
2503    shrext_cmds='.so'
2504    hardcode_into_libs=yes
2505    dynamic_linker="$host_os dld.so"
2506    shlibpath_var=LD_LIBRARY_PATH
2507    shlibpath_overrides_runpath=yes # Unless +noenvvar is specified.
2508    library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}'
2509    soname_spec='${libname}${release}${shared_ext}$major'
2510    if test "X$HPUX_IA64_MODE" = X32; then
2511      sys_lib_search_path_spec="/usr/lib/hpux32 /usr/local/lib/hpux32 /usr/local/lib"
2512    else
2513      sys_lib_search_path_spec="/usr/lib/hpux64 /usr/local/lib/hpux64"
2514    fi
2515    sys_lib_dlsearch_path_spec=$sys_lib_search_path_spec
2516    ;;
2517  hppa*64*)
2518    shrext_cmds='.sl'
2519    hardcode_into_libs=yes
2520    dynamic_linker="$host_os dld.sl"
2521    shlibpath_var=LD_LIBRARY_PATH # How should we handle SHLIB_PATH
2522    shlibpath_overrides_runpath=yes # Unless +noenvvar is specified.
2523    library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}'
2524    soname_spec='${libname}${release}${shared_ext}$major'
2525    sys_lib_search_path_spec="/usr/lib/pa20_64 /usr/ccs/lib/pa20_64"
2526    sys_lib_dlsearch_path_spec=$sys_lib_search_path_spec
2527    ;;
2528  *)
2529    shrext_cmds='.sl'
2530    dynamic_linker="$host_os dld.sl"
2531    shlibpath_var=SHLIB_PATH
2532    shlibpath_overrides_runpath=no # +s is required to enable SHLIB_PATH
2533    library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}'
2534    soname_spec='${libname}${release}${shared_ext}$major'
2535    ;;
2536  esac
2537  # HP-UX runs *really* slowly unless shared libraries are mode 555, ...
2538  postinstall_cmds='chmod 555 $lib'
2539  # or fails outright, so override atomically:
2540  install_override_mode=555
2541  ;;
2542
2543interix[[3-9]]*)
2544  version_type=linux
2545  need_lib_prefix=no
2546  need_version=no
2547  library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major ${libname}${shared_ext}'
2548  soname_spec='${libname}${release}${shared_ext}$major'
2549  dynamic_linker='Interix 3.x ld.so.1 (PE, like ELF)'
2550  shlibpath_var=LD_LIBRARY_PATH
2551  shlibpath_overrides_runpath=no
2552  hardcode_into_libs=yes
2553  ;;
2554
2555irix5* | irix6* | nonstopux*)
2556  case $host_os in
2557    nonstopux*) version_type=nonstopux ;;
2558    *)
2559	if test "$lt_cv_prog_gnu_ld" = yes; then
2560		version_type=linux
2561	else
2562		version_type=irix
2563	fi ;;
2564  esac
2565  need_lib_prefix=no
2566  need_version=no
2567  soname_spec='${libname}${release}${shared_ext}$major'
2568  library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major ${libname}${release}${shared_ext} $libname${shared_ext}'
2569  case $host_os in
2570  irix5* | nonstopux*)
2571    libsuff= shlibsuff=
2572    ;;
2573  *)
2574    case $LD in # libtool.m4 will add one of these switches to LD
2575    *-32|*"-32 "|*-melf32bsmip|*"-melf32bsmip ")
2576      libsuff= shlibsuff= libmagic=32-bit;;
2577    *-n32|*"-n32 "|*-melf32bmipn32|*"-melf32bmipn32 ")
2578      libsuff=32 shlibsuff=N32 libmagic=N32;;
2579    *-64|*"-64 "|*-melf64bmip|*"-melf64bmip ")
2580      libsuff=64 shlibsuff=64 libmagic=64-bit;;
2581    *) libsuff= shlibsuff= libmagic=never-match;;
2582    esac
2583    ;;
2584  esac
2585  shlibpath_var=LD_LIBRARY${shlibsuff}_PATH
2586  shlibpath_overrides_runpath=no
2587  sys_lib_search_path_spec="/usr/lib${libsuff} /lib${libsuff} /usr/local/lib${libsuff}"
2588  sys_lib_dlsearch_path_spec="/usr/lib${libsuff} /lib${libsuff}"
2589  hardcode_into_libs=yes
2590  ;;
2591
2592# No shared lib support for Linux oldld, aout, or coff.
2593linux*oldld* | linux*aout* | linux*coff*)
2594  dynamic_linker=no
2595  ;;
2596
2597# This must be Linux ELF.
2598linux* | k*bsd*-gnu | kopensolaris*-gnu)
2599  version_type=linux
2600  need_lib_prefix=no
2601  need_version=no
2602  library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}'
2603  soname_spec='${libname}${release}${shared_ext}$major'
2604  finish_cmds='PATH="\$PATH:/sbin" ldconfig -n $libdir'
2605  shlibpath_var=LD_LIBRARY_PATH
2606  shlibpath_overrides_runpath=no
2607
2608  # Some binutils ld are patched to set DT_RUNPATH
2609  AC_CACHE_VAL([lt_cv_shlibpath_overrides_runpath],
2610    [lt_cv_shlibpath_overrides_runpath=no
2611    save_LDFLAGS=$LDFLAGS
2612    save_libdir=$libdir
2613    eval "libdir=/foo; wl=\"$_LT_TAGVAR(lt_prog_compiler_wl, $1)\"; \
2614	 LDFLAGS=\"\$LDFLAGS $_LT_TAGVAR(hardcode_libdir_flag_spec, $1)\""
2615    AC_LINK_IFELSE([AC_LANG_PROGRAM([],[])],
2616      [AS_IF([ ($OBJDUMP -p conftest$ac_exeext) 2>/dev/null | grep "RUNPATH.*$libdir" >/dev/null],
2617	 [lt_cv_shlibpath_overrides_runpath=yes])])
2618    LDFLAGS=$save_LDFLAGS
2619    libdir=$save_libdir
2620    ])
2621  shlibpath_overrides_runpath=$lt_cv_shlibpath_overrides_runpath
2622
2623  # This implies no fast_install, which is unacceptable.
2624  # Some rework will be needed to allow for fast_install
2625  # before this can be enabled.
2626  hardcode_into_libs=yes
2627
2628  # Add ABI-specific directories to the system library path.
2629  sys_lib_dlsearch_path_spec="/lib64 /usr/lib64 /lib /usr/lib"
2630
2631  # Append ld.so.conf contents to the search path
2632  if test -f /etc/ld.so.conf; then
2633    lt_ld_extra=`awk '/^include / { system(sprintf("cd /etc; cat %s 2>/dev/null", \[$]2)); skip = 1; } { if (!skip) print \[$]0; skip = 0; }' < /etc/ld.so.conf | $SED -e 's/#.*//;/^[	 ]*hwcap[	 ]/d;s/[:,	]/ /g;s/=[^=]*$//;s/=[^= ]* / /g;s/"//g;/^$/d' | tr '\n' ' '`
2634    sys_lib_dlsearch_path_spec="$sys_lib_dlsearch_path_spec $lt_ld_extra"
2635
2636  fi
2637
2638  # We used to test for /lib/ld.so.1 and disable shared libraries on
2639  # powerpc, because MkLinux only supported shared libraries with the
2640  # GNU dynamic linker.  Since this was broken with cross compilers,
2641  # most powerpc-linux boxes support dynamic linking these days and
2642  # people can always --disable-shared, the test was removed, and we
2643  # assume the GNU/Linux dynamic linker is in use.
2644  dynamic_linker='GNU/Linux ld.so'
2645  ;;
2646
2647netbsd*)
2648  version_type=sunos
2649  need_lib_prefix=no
2650  need_version=no
2651  if echo __ELF__ | $CC -E - | $GREP __ELF__ >/dev/null; then
2652    library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${shared_ext}$versuffix'
2653    finish_cmds='PATH="\$PATH:/sbin" ldconfig -m $libdir'
2654    dynamic_linker='NetBSD (a.out) ld.so'
2655  else
2656    library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major ${libname}${shared_ext}'
2657    soname_spec='${libname}${release}${shared_ext}$major'
2658    dynamic_linker='NetBSD ld.elf_so'
2659  fi
2660  shlibpath_var=LD_LIBRARY_PATH
2661  shlibpath_overrides_runpath=yes
2662  hardcode_into_libs=yes
2663  ;;
2664
2665newsos6)
2666  version_type=linux
2667  library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}'
2668  shlibpath_var=LD_LIBRARY_PATH
2669  shlibpath_overrides_runpath=yes
2670  ;;
2671
2672*nto* | *qnx*)
2673  version_type=qnx
2674  need_lib_prefix=no
2675  need_version=no
2676  library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}'
2677  soname_spec='${libname}${release}${shared_ext}$major'
2678  shlibpath_var=LD_LIBRARY_PATH
2679  shlibpath_overrides_runpath=no
2680  hardcode_into_libs=yes
2681  dynamic_linker='ldqnx.so'
2682  ;;
2683
2684openbsd*)
2685  version_type=sunos
2686  sys_lib_dlsearch_path_spec="/usr/lib"
2687  need_lib_prefix=no
2688  # Some older versions of OpenBSD (3.3 at least) *do* need versioned libs.
2689  case $host_os in
2690    openbsd3.3 | openbsd3.3.*)	need_version=yes ;;
2691    *)				need_version=no  ;;
2692  esac
2693  library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${shared_ext}$versuffix'
2694  finish_cmds='PATH="\$PATH:/sbin" ldconfig -m $libdir'
2695  shlibpath_var=LD_LIBRARY_PATH
2696  if test -z "`echo __ELF__ | $CC -E - | $GREP __ELF__`" || test "$host_os-$host_cpu" = "openbsd2.8-powerpc"; then
2697    case $host_os in
2698      openbsd2.[[89]] | openbsd2.[[89]].*)
2699	shlibpath_overrides_runpath=no
2700	;;
2701      *)
2702	shlibpath_overrides_runpath=yes
2703	;;
2704      esac
2705  else
2706    shlibpath_overrides_runpath=yes
2707  fi
2708  ;;
2709
2710os2*)
2711  libname_spec='$name'
2712  shrext_cmds=".dll"
2713  need_lib_prefix=no
2714  library_names_spec='$libname${shared_ext} $libname.a'
2715  dynamic_linker='OS/2 ld.exe'
2716  shlibpath_var=LIBPATH
2717  ;;
2718
2719osf3* | osf4* | osf5*)
2720  version_type=osf
2721  need_lib_prefix=no
2722  need_version=no
2723  soname_spec='${libname}${release}${shared_ext}$major'
2724  library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}'
2725  shlibpath_var=LD_LIBRARY_PATH
2726  sys_lib_search_path_spec="/usr/shlib /usr/ccs/lib /usr/lib/cmplrs/cc /usr/lib /usr/local/lib /var/shlib"
2727  sys_lib_dlsearch_path_spec="$sys_lib_search_path_spec"
2728  ;;
2729
2730rdos*)
2731  dynamic_linker=no
2732  ;;
2733
2734solaris*)
2735  version_type=linux
2736  need_lib_prefix=no
2737  need_version=no
2738  library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}'
2739  soname_spec='${libname}${release}${shared_ext}$major'
2740  shlibpath_var=LD_LIBRARY_PATH
2741  shlibpath_overrides_runpath=yes
2742  hardcode_into_libs=yes
2743  # ldd complains unless libraries are executable
2744  postinstall_cmds='chmod +x $lib'
2745  ;;
2746
2747sunos4*)
2748  version_type=sunos
2749  library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${shared_ext}$versuffix'
2750  finish_cmds='PATH="\$PATH:/usr/etc" ldconfig $libdir'
2751  shlibpath_var=LD_LIBRARY_PATH
2752  shlibpath_overrides_runpath=yes
2753  if test "$with_gnu_ld" = yes; then
2754    need_lib_prefix=no
2755  fi
2756  need_version=yes
2757  ;;
2758
2759sysv4 | sysv4.3*)
2760  version_type=linux
2761  library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}'
2762  soname_spec='${libname}${release}${shared_ext}$major'
2763  shlibpath_var=LD_LIBRARY_PATH
2764  case $host_vendor in
2765    sni)
2766      shlibpath_overrides_runpath=no
2767      need_lib_prefix=no
2768      runpath_var=LD_RUN_PATH
2769      ;;
2770    siemens)
2771      need_lib_prefix=no
2772      ;;
2773    motorola)
2774      need_lib_prefix=no
2775      need_version=no
2776      shlibpath_overrides_runpath=no
2777      sys_lib_search_path_spec='/lib /usr/lib /usr/ccs/lib'
2778      ;;
2779  esac
2780  ;;
2781
2782sysv4*MP*)
2783  if test -d /usr/nec ;then
2784    version_type=linux
2785    library_names_spec='$libname${shared_ext}.$versuffix $libname${shared_ext}.$major $libname${shared_ext}'
2786    soname_spec='$libname${shared_ext}.$major'
2787    shlibpath_var=LD_LIBRARY_PATH
2788  fi
2789  ;;
2790
2791sysv5* | sco3.2v5* | sco5v6* | unixware* | OpenUNIX* | sysv4*uw2*)
2792  version_type=freebsd-elf
2793  need_lib_prefix=no
2794  need_version=no
2795  library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext} $libname${shared_ext}'
2796  soname_spec='${libname}${release}${shared_ext}$major'
2797  shlibpath_var=LD_LIBRARY_PATH
2798  shlibpath_overrides_runpath=yes
2799  hardcode_into_libs=yes
2800  if test "$with_gnu_ld" = yes; then
2801    sys_lib_search_path_spec='/usr/local/lib /usr/gnu/lib /usr/ccs/lib /usr/lib /lib'
2802  else
2803    sys_lib_search_path_spec='/usr/ccs/lib /usr/lib'
2804    case $host_os in
2805      sco3.2v5*)
2806        sys_lib_search_path_spec="$sys_lib_search_path_spec /lib"
2807	;;
2808    esac
2809  fi
2810  sys_lib_dlsearch_path_spec='/usr/lib'
2811  ;;
2812
2813tpf*)
2814  # TPF is a cross-target only.  Preferred cross-host = GNU/Linux.
2815  version_type=linux
2816  need_lib_prefix=no
2817  need_version=no
2818  library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}'
2819  shlibpath_var=LD_LIBRARY_PATH
2820  shlibpath_overrides_runpath=no
2821  hardcode_into_libs=yes
2822  ;;
2823
2824uts4*)
2825  version_type=linux
2826  library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}'
2827  soname_spec='${libname}${release}${shared_ext}$major'
2828  shlibpath_var=LD_LIBRARY_PATH
2829  ;;
2830
2831*)
2832  dynamic_linker=no
2833  ;;
2834esac
2835AC_MSG_RESULT([$dynamic_linker])
2836test "$dynamic_linker" = no && can_build_shared=no
2837
2838variables_saved_for_relink="PATH $shlibpath_var $runpath_var"
2839if test "$GCC" = yes; then
2840  variables_saved_for_relink="$variables_saved_for_relink GCC_EXEC_PREFIX COMPILER_PATH LIBRARY_PATH"
2841fi
2842
2843if test "${lt_cv_sys_lib_search_path_spec+set}" = set; then
2844  sys_lib_search_path_spec="$lt_cv_sys_lib_search_path_spec"
2845fi
2846if test "${lt_cv_sys_lib_dlsearch_path_spec+set}" = set; then
2847  sys_lib_dlsearch_path_spec="$lt_cv_sys_lib_dlsearch_path_spec"
2848fi
2849
2850_LT_DECL([], [variables_saved_for_relink], [1],
2851    [Variables whose values should be saved in libtool wrapper scripts and
2852    restored at link time])
2853_LT_DECL([], [need_lib_prefix], [0],
2854    [Do we need the "lib" prefix for modules?])
2855_LT_DECL([], [need_version], [0], [Do we need a version for libraries?])
2856_LT_DECL([], [version_type], [0], [Library versioning type])
2857_LT_DECL([], [runpath_var], [0],  [Shared library runtime path variable])
2858_LT_DECL([], [shlibpath_var], [0],[Shared library path variable])
2859_LT_DECL([], [shlibpath_overrides_runpath], [0],
2860    [Is shlibpath searched before the hard-coded library search path?])
2861_LT_DECL([], [libname_spec], [1], [Format of library name prefix])
2862_LT_DECL([], [library_names_spec], [1],
2863    [[List of archive names.  First name is the real one, the rest are links.
2864    The last name is the one that the linker finds with -lNAME]])
2865_LT_DECL([], [soname_spec], [1],
2866    [[The coded name of the library, if different from the real name]])
2867_LT_DECL([], [install_override_mode], [1],
2868    [Permission mode override for installation of shared libraries])
2869_LT_DECL([], [postinstall_cmds], [2],
2870    [Command to use after installation of a shared archive])
2871_LT_DECL([], [postuninstall_cmds], [2],
2872    [Command to use after uninstallation of a shared archive])
2873_LT_DECL([], [finish_cmds], [2],
2874    [Commands used to finish a libtool library installation in a directory])
2875_LT_DECL([], [finish_eval], [1],
2876    [[As "finish_cmds", except a single script fragment to be evaled but
2877    not shown]])
2878_LT_DECL([], [hardcode_into_libs], [0],
2879    [Whether we should hardcode library paths into libraries])
2880_LT_DECL([], [sys_lib_search_path_spec], [2],
2881    [Compile-time system search path for libraries])
2882_LT_DECL([], [sys_lib_dlsearch_path_spec], [2],
2883    [Run-time system search path for libraries])
2884])# _LT_SYS_DYNAMIC_LINKER
2885
2886
2887# _LT_PATH_TOOL_PREFIX(TOOL)
2888# --------------------------
2889# find a file program which can recognize shared library
2890AC_DEFUN([_LT_PATH_TOOL_PREFIX],
2891[m4_require([_LT_DECL_EGREP])dnl
2892AC_MSG_CHECKING([for $1])
2893AC_CACHE_VAL(lt_cv_path_MAGIC_CMD,
2894[case $MAGIC_CMD in
2895[[\\/*] |  ?:[\\/]*])
2896  lt_cv_path_MAGIC_CMD="$MAGIC_CMD" # Let the user override the test with a path.
2897  ;;
2898*)
2899  lt_save_MAGIC_CMD="$MAGIC_CMD"
2900  lt_save_ifs="$IFS"; IFS=$PATH_SEPARATOR
2901dnl $ac_dummy forces splitting on constant user-supplied paths.
2902dnl POSIX.2 word splitting is done only on the output of word expansions,
2903dnl not every word.  This closes a longstanding sh security hole.
2904  ac_dummy="m4_if([$2], , $PATH, [$2])"
2905  for ac_dir in $ac_dummy; do
2906    IFS="$lt_save_ifs"
2907    test -z "$ac_dir" && ac_dir=.
2908    if test -f $ac_dir/$1; then
2909      lt_cv_path_MAGIC_CMD="$ac_dir/$1"
2910      if test -n "$file_magic_test_file"; then
2911	case $deplibs_check_method in
2912	"file_magic "*)
2913	  file_magic_regex=`expr "$deplibs_check_method" : "file_magic \(.*\)"`
2914	  MAGIC_CMD="$lt_cv_path_MAGIC_CMD"
2915	  if eval $file_magic_cmd \$file_magic_test_file 2> /dev/null |
2916	    $EGREP "$file_magic_regex" > /dev/null; then
2917	    :
2918	  else
2919	    cat <<_LT_EOF 1>&2
2920
2921*** Warning: the command libtool uses to detect shared libraries,
2922*** $file_magic_cmd, produces output that libtool cannot recognize.
2923*** The result is that libtool may fail to recognize shared libraries
2924*** as such.  This will affect the creation of libtool libraries that
2925*** depend on shared libraries, but programs linked with such libtool
2926*** libraries will work regardless of this problem.  Nevertheless, you
2927*** may want to report the problem to your system manager and/or to
2928*** bug-libtool@gnu.org
2929
2930_LT_EOF
2931	  fi ;;
2932	esac
2933      fi
2934      break
2935    fi
2936  done
2937  IFS="$lt_save_ifs"
2938  MAGIC_CMD="$lt_save_MAGIC_CMD"
2939  ;;
2940esac])
2941MAGIC_CMD="$lt_cv_path_MAGIC_CMD"
2942if test -n "$MAGIC_CMD"; then
2943  AC_MSG_RESULT($MAGIC_CMD)
2944else
2945  AC_MSG_RESULT(no)
2946fi
2947_LT_DECL([], [MAGIC_CMD], [0],
2948	 [Used to examine libraries when file_magic_cmd begins with "file"])dnl
2949])# _LT_PATH_TOOL_PREFIX
2950
2951# Old name:
2952AU_ALIAS([AC_PATH_TOOL_PREFIX], [_LT_PATH_TOOL_PREFIX])
2953dnl aclocal-1.4 backwards compatibility:
2954dnl AC_DEFUN([AC_PATH_TOOL_PREFIX], [])
2955
2956
2957# _LT_PATH_MAGIC
2958# --------------
2959# find a file program which can recognize a shared library
2960m4_defun([_LT_PATH_MAGIC],
2961[_LT_PATH_TOOL_PREFIX(${ac_tool_prefix}file, /usr/bin$PATH_SEPARATOR$PATH)
2962if test -z "$lt_cv_path_MAGIC_CMD"; then
2963  if test -n "$ac_tool_prefix"; then
2964    _LT_PATH_TOOL_PREFIX(file, /usr/bin$PATH_SEPARATOR$PATH)
2965  else
2966    MAGIC_CMD=:
2967  fi
2968fi
2969])# _LT_PATH_MAGIC
2970
2971
2972# LT_PATH_LD
2973# ----------
2974# find the pathname to the GNU or non-GNU linker
2975AC_DEFUN([LT_PATH_LD],
2976[AC_REQUIRE([AC_PROG_CC])dnl
2977AC_REQUIRE([AC_CANONICAL_HOST])dnl
2978AC_REQUIRE([AC_CANONICAL_BUILD])dnl
2979m4_require([_LT_DECL_SED])dnl
2980m4_require([_LT_DECL_EGREP])dnl
2981m4_require([_LT_PROG_ECHO_BACKSLASH])dnl
2982
2983AC_ARG_WITH([gnu-ld],
2984    [AS_HELP_STRING([--with-gnu-ld],
2985	[assume the C compiler uses GNU ld @<:@default=no@:>@])],
2986    [test "$withval" = no || with_gnu_ld=yes],
2987    [with_gnu_ld=no])dnl
2988
2989ac_prog=ld
2990if test "$GCC" = yes; then
2991  # Check if gcc -print-prog-name=ld gives a path.
2992  AC_MSG_CHECKING([for ld used by $CC])
2993  case $host in
2994  *-*-mingw*)
2995    # gcc leaves a trailing carriage return which upsets mingw
2996    ac_prog=`($CC -print-prog-name=ld) 2>&5 | tr -d '\015'` ;;
2997  *)
2998    ac_prog=`($CC -print-prog-name=ld) 2>&5` ;;
2999  esac
3000  case $ac_prog in
3001    # Accept absolute paths.
3002    [[\\/]]* | ?:[[\\/]]*)
3003      re_direlt='/[[^/]][[^/]]*/\.\./'
3004      # Canonicalize the pathname of ld
3005      ac_prog=`$ECHO "$ac_prog"| $SED 's%\\\\%/%g'`
3006      while $ECHO "$ac_prog" | $GREP "$re_direlt" > /dev/null 2>&1; do
3007	ac_prog=`$ECHO $ac_prog| $SED "s%$re_direlt%/%"`
3008      done
3009      test -z "$LD" && LD="$ac_prog"
3010      ;;
3011  "")
3012    # If it fails, then pretend we aren't using GCC.
3013    ac_prog=ld
3014    ;;
3015  *)
3016    # If it is relative, then search for the first ld in PATH.
3017    with_gnu_ld=unknown
3018    ;;
3019  esac
3020elif test "$with_gnu_ld" = yes; then
3021  AC_MSG_CHECKING([for GNU ld])
3022else
3023  AC_MSG_CHECKING([for non-GNU ld])
3024fi
3025AC_CACHE_VAL(lt_cv_path_LD,
3026[if test -z "$LD"; then
3027  lt_save_ifs="$IFS"; IFS=$PATH_SEPARATOR
3028  for ac_dir in $PATH; do
3029    IFS="$lt_save_ifs"
3030    test -z "$ac_dir" && ac_dir=.
3031    if test -f "$ac_dir/$ac_prog" || test -f "$ac_dir/$ac_prog$ac_exeext"; then
3032      lt_cv_path_LD="$ac_dir/$ac_prog"
3033      # Check to see if the program is GNU ld.  I'd rather use --version,
3034      # but apparently some variants of GNU ld only accept -v.
3035      # Break only if it was the GNU/non-GNU ld that we prefer.
3036      case `"$lt_cv_path_LD" -v 2>&1 </dev/null` in
3037      *GNU* | *'with BFD'*)
3038	test "$with_gnu_ld" != no && break
3039	;;
3040      *)
3041	test "$with_gnu_ld" != yes && break
3042	;;
3043      esac
3044    fi
3045  done
3046  IFS="$lt_save_ifs"
3047else
3048  lt_cv_path_LD="$LD" # Let the user override the test with a path.
3049fi])
3050LD="$lt_cv_path_LD"
3051if test -n "$LD"; then
3052  AC_MSG_RESULT($LD)
3053else
3054  AC_MSG_RESULT(no)
3055fi
3056test -z "$LD" && AC_MSG_ERROR([no acceptable ld found in \$PATH])
3057_LT_PATH_LD_GNU
3058AC_SUBST([LD])
3059
3060_LT_TAGDECL([], [LD], [1], [The linker used to build libraries])
3061])# LT_PATH_LD
3062
3063# Old names:
3064AU_ALIAS([AM_PROG_LD], [LT_PATH_LD])
3065AU_ALIAS([AC_PROG_LD], [LT_PATH_LD])
3066dnl aclocal-1.4 backwards compatibility:
3067dnl AC_DEFUN([AM_PROG_LD], [])
3068dnl AC_DEFUN([AC_PROG_LD], [])
3069
3070
3071# _LT_PATH_LD_GNU
3072#- --------------
3073m4_defun([_LT_PATH_LD_GNU],
3074[AC_CACHE_CHECK([if the linker ($LD) is GNU ld], lt_cv_prog_gnu_ld,
3075[# I'd rather use --version here, but apparently some GNU lds only accept -v.
3076case `$LD -v 2>&1 </dev/null` in
3077*GNU* | *'with BFD'*)
3078  lt_cv_prog_gnu_ld=yes
3079  ;;
3080*)
3081  lt_cv_prog_gnu_ld=no
3082  ;;
3083esac])
3084with_gnu_ld=$lt_cv_prog_gnu_ld
3085])# _LT_PATH_LD_GNU
3086
3087
3088# _LT_CMD_RELOAD
3089# --------------
3090# find reload flag for linker
3091#   -- PORTME Some linkers may need a different reload flag.
3092m4_defun([_LT_CMD_RELOAD],
3093[AC_CACHE_CHECK([for $LD option to reload object files],
3094  lt_cv_ld_reload_flag,
3095  [lt_cv_ld_reload_flag='-r'])
3096reload_flag=$lt_cv_ld_reload_flag
3097case $reload_flag in
3098"" | " "*) ;;
3099*) reload_flag=" $reload_flag" ;;
3100esac
3101reload_cmds='$LD$reload_flag -o $output$reload_objs'
3102case $host_os in
3103  cygwin* | mingw* | pw32* | cegcc*)
3104    if test "$GCC" != yes; then
3105      reload_cmds=false
3106    fi
3107    ;;
3108  darwin*)
3109    if test "$GCC" = yes; then
3110      reload_cmds='$LTCC $LTCFLAGS -nostdlib ${wl}-r -o $output$reload_objs'
3111    else
3112      reload_cmds='$LD$reload_flag -o $output$reload_objs'
3113    fi
3114    ;;
3115esac
3116_LT_TAGDECL([], [reload_flag], [1], [How to create reloadable object files])dnl
3117_LT_TAGDECL([], [reload_cmds], [2])dnl
3118])# _LT_CMD_RELOAD
3119
3120
3121# _LT_CHECK_MAGIC_METHOD
3122# ----------------------
3123# how to check for library dependencies
3124#  -- PORTME fill in with the dynamic library characteristics
3125m4_defun([_LT_CHECK_MAGIC_METHOD],
3126[m4_require([_LT_DECL_EGREP])
3127m4_require([_LT_DECL_OBJDUMP])
3128AC_CACHE_CHECK([how to recognize dependent libraries],
3129lt_cv_deplibs_check_method,
3130[lt_cv_file_magic_cmd='$MAGIC_CMD'
3131lt_cv_file_magic_test_file=
3132lt_cv_deplibs_check_method='unknown'
3133# Need to set the preceding variable on all platforms that support
3134# interlibrary dependencies.
3135# 'none' -- dependencies not supported.
3136# `unknown' -- same as none, but documents that we really don't know.
3137# 'pass_all' -- all dependencies passed with no checks.
3138# 'test_compile' -- check by making test program.
3139# 'file_magic [[regex]]' -- check by looking for files in library path
3140# which responds to the $file_magic_cmd with a given extended regex.
3141# If you have `file' or equivalent on your system and you're not sure
3142# whether `pass_all' will *always* work, you probably want this one.
3143
3144case $host_os in
3145aix[[4-9]]*)
3146  lt_cv_deplibs_check_method=pass_all
3147  ;;
3148
3149beos*)
3150  lt_cv_deplibs_check_method=pass_all
3151  ;;
3152
3153bsdi[[45]]*)
3154  lt_cv_deplibs_check_method='file_magic ELF [[0-9]][[0-9]]*-bit [[ML]]SB (shared object|dynamic lib)'
3155  lt_cv_file_magic_cmd='/usr/bin/file -L'
3156  lt_cv_file_magic_test_file=/shlib/libc.so
3157  ;;
3158
3159cygwin*)
3160  # func_win32_libid is a shell function defined in ltmain.sh
3161  lt_cv_deplibs_check_method='file_magic ^x86 archive import|^x86 DLL'
3162  lt_cv_file_magic_cmd='func_win32_libid'
3163  ;;
3164
3165mingw* | pw32*)
3166  # Base MSYS/MinGW do not provide the 'file' command needed by
3167  # func_win32_libid shell function, so use a weaker test based on 'objdump',
3168  # unless we find 'file', for example because we are cross-compiling.
3169  # func_win32_libid assumes BSD nm, so disallow it if using MS dumpbin.
3170  if ( test "$lt_cv_nm_interface" = "BSD nm" && file / ) >/dev/null 2>&1; then
3171    lt_cv_deplibs_check_method='file_magic ^x86 archive import|^x86 DLL'
3172    lt_cv_file_magic_cmd='func_win32_libid'
3173  else
3174    # Keep this pattern in sync with the one in func_win32_libid.
3175    lt_cv_deplibs_check_method='file_magic file format (pei*-i386(.*architecture: i386)?|pe-arm-wince|pe-x86-64)'
3176    lt_cv_file_magic_cmd='$OBJDUMP -f'
3177  fi
3178  ;;
3179
3180cegcc*)
3181  # use the weaker test based on 'objdump'. See mingw*.
3182  lt_cv_deplibs_check_method='file_magic file format pe-arm-.*little(.*architecture: arm)?'
3183  lt_cv_file_magic_cmd='$OBJDUMP -f'
3184  ;;
3185
3186darwin* | rhapsody*)
3187  lt_cv_deplibs_check_method=pass_all
3188  ;;
3189
3190freebsd* | dragonfly*)
3191  if echo __ELF__ | $CC -E - | $GREP __ELF__ > /dev/null; then
3192    case $host_cpu in
3193    i*86 )
3194      # Not sure whether the presence of OpenBSD here was a mistake.
3195      # Let's accept both of them until this is cleared up.
3196      lt_cv_deplibs_check_method='file_magic (FreeBSD|OpenBSD|DragonFly)/i[[3-9]]86 (compact )?demand paged shared library'
3197      lt_cv_file_magic_cmd=/usr/bin/file
3198      lt_cv_file_magic_test_file=`echo /usr/lib/libc.so.*`
3199      ;;
3200    esac
3201  else
3202    lt_cv_deplibs_check_method=pass_all
3203  fi
3204  ;;
3205
3206gnu*)
3207  lt_cv_deplibs_check_method=pass_all
3208  ;;
3209
3210haiku*)
3211  lt_cv_deplibs_check_method=pass_all
3212  ;;
3213
3214hpux10.20* | hpux11*)
3215  lt_cv_file_magic_cmd=/usr/bin/file
3216  case $host_cpu in
3217  ia64*)
3218    lt_cv_deplibs_check_method='file_magic (s[[0-9]][[0-9]][[0-9]]|ELF-[[0-9]][[0-9]]) shared object file - IA64'
3219    lt_cv_file_magic_test_file=/usr/lib/hpux32/libc.so
3220    ;;
3221  hppa*64*)
3222    [lt_cv_deplibs_check_method='file_magic (s[0-9][0-9][0-9]|ELF[ -][0-9][0-9])(-bit)?( [LM]SB)? shared object( file)?[, -]* PA-RISC [0-9]\.[0-9]']
3223    lt_cv_file_magic_test_file=/usr/lib/pa20_64/libc.sl
3224    ;;
3225  *)
3226    lt_cv_deplibs_check_method='file_magic (s[[0-9]][[0-9]][[0-9]]|PA-RISC[[0-9]]\.[[0-9]]) shared library'
3227    lt_cv_file_magic_test_file=/usr/lib/libc.sl
3228    ;;
3229  esac
3230  ;;
3231
3232interix[[3-9]]*)
3233  # PIC code is broken on Interix 3.x, that's why |\.a not |_pic\.a here
3234  lt_cv_deplibs_check_method='match_pattern /lib[[^/]]+(\.so|\.a)$'
3235  ;;
3236
3237irix5* | irix6* | nonstopux*)
3238  case $LD in
3239  *-32|*"-32 ") libmagic=32-bit;;
3240  *-n32|*"-n32 ") libmagic=N32;;
3241  *-64|*"-64 ") libmagic=64-bit;;
3242  *) libmagic=never-match;;
3243  esac
3244  lt_cv_deplibs_check_method=pass_all
3245  ;;
3246
3247# This must be Linux ELF.
3248linux* | k*bsd*-gnu | kopensolaris*-gnu)
3249  lt_cv_deplibs_check_method=pass_all
3250  ;;
3251
3252netbsd*)
3253  if echo __ELF__ | $CC -E - | $GREP __ELF__ > /dev/null; then
3254    lt_cv_deplibs_check_method='match_pattern /lib[[^/]]+(\.so\.[[0-9]]+\.[[0-9]]+|_pic\.a)$'
3255  else
3256    lt_cv_deplibs_check_method='match_pattern /lib[[^/]]+(\.so|_pic\.a)$'
3257  fi
3258  ;;
3259
3260newos6*)
3261  lt_cv_deplibs_check_method='file_magic ELF [[0-9]][[0-9]]*-bit [[ML]]SB (executable|dynamic lib)'
3262  lt_cv_file_magic_cmd=/usr/bin/file
3263  lt_cv_file_magic_test_file=/usr/lib/libnls.so
3264  ;;
3265
3266*nto* | *qnx*)
3267  lt_cv_deplibs_check_method=pass_all
3268  ;;
3269
3270openbsd*)
3271  if test -z "`echo __ELF__ | $CC -E - | $GREP __ELF__`" || test "$host_os-$host_cpu" = "openbsd2.8-powerpc"; then
3272    lt_cv_deplibs_check_method='match_pattern /lib[[^/]]+(\.so\.[[0-9]]+\.[[0-9]]+|\.so|_pic\.a)$'
3273  else
3274    lt_cv_deplibs_check_method='match_pattern /lib[[^/]]+(\.so\.[[0-9]]+\.[[0-9]]+|_pic\.a)$'
3275  fi
3276  ;;
3277
3278osf3* | osf4* | osf5*)
3279  lt_cv_deplibs_check_method=pass_all
3280  ;;
3281
3282rdos*)
3283  lt_cv_deplibs_check_method=pass_all
3284  ;;
3285
3286solaris*)
3287  lt_cv_deplibs_check_method=pass_all
3288  ;;
3289
3290sysv5* | sco3.2v5* | sco5v6* | unixware* | OpenUNIX* | sysv4*uw2*)
3291  lt_cv_deplibs_check_method=pass_all
3292  ;;
3293
3294sysv4 | sysv4.3*)
3295  case $host_vendor in
3296  motorola)
3297    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]]'
3298    lt_cv_file_magic_test_file=`echo /usr/lib/libc.so*`
3299    ;;
3300  ncr)
3301    lt_cv_deplibs_check_method=pass_all
3302    ;;
3303  sequent)
3304    lt_cv_file_magic_cmd='/bin/file'
3305    lt_cv_deplibs_check_method='file_magic ELF [[0-9]][[0-9]]*-bit [[LM]]SB (shared object|dynamic lib )'
3306    ;;
3307  sni)
3308    lt_cv_file_magic_cmd='/bin/file'
3309    lt_cv_deplibs_check_method="file_magic ELF [[0-9]][[0-9]]*-bit [[LM]]SB dynamic lib"
3310    lt_cv_file_magic_test_file=/lib/libc.so
3311    ;;
3312  siemens)
3313    lt_cv_deplibs_check_method=pass_all
3314    ;;
3315  pc)
3316    lt_cv_deplibs_check_method=pass_all
3317    ;;
3318  esac
3319  ;;
3320
3321tpf*)
3322  lt_cv_deplibs_check_method=pass_all
3323  ;;
3324esac
3325])
3326
3327file_magic_glob=
3328want_nocaseglob=no
3329if test "$build" = "$host"; then
3330  case $host_os in
3331  mingw* | pw32*)
3332    if ( shopt | grep nocaseglob ) >/dev/null 2>&1; then
3333      want_nocaseglob=yes
3334    else
3335      file_magic_glob=`echo aAbBcCdDeEfFgGhHiIjJkKlLmMnNoOpPqQrRsStTuUvVwWxXyYzZ | $SED -e "s/\(..\)/s\/[[\1]]\/[[\1]]\/g;/g"`
3336    fi
3337    ;;
3338  esac
3339fi
3340
3341file_magic_cmd=$lt_cv_file_magic_cmd
3342deplibs_check_method=$lt_cv_deplibs_check_method
3343test -z "$deplibs_check_method" && deplibs_check_method=unknown
3344
3345_LT_DECL([], [deplibs_check_method], [1],
3346    [Method to check whether dependent libraries are shared objects])
3347_LT_DECL([], [file_magic_cmd], [1],
3348    [Command to use when deplibs_check_method = "file_magic"])
3349_LT_DECL([], [file_magic_glob], [1],
3350    [How to find potential files when deplibs_check_method = "file_magic"])
3351_LT_DECL([], [want_nocaseglob], [1],
3352    [Find potential files using nocaseglob when deplibs_check_method = "file_magic"])
3353])# _LT_CHECK_MAGIC_METHOD
3354
3355
3356# LT_PATH_NM
3357# ----------
3358# find the pathname to a BSD- or MS-compatible name lister
3359AC_DEFUN([LT_PATH_NM],
3360[AC_REQUIRE([AC_PROG_CC])dnl
3361AC_CACHE_CHECK([for BSD- or MS-compatible name lister (nm)], lt_cv_path_NM,
3362[if test -n "$NM"; then
3363  # Let the user override the test.
3364  lt_cv_path_NM="$NM"
3365else
3366  lt_nm_to_check="${ac_tool_prefix}nm"
3367  if test -n "$ac_tool_prefix" && test "$build" = "$host"; then
3368    lt_nm_to_check="$lt_nm_to_check nm"
3369  fi
3370  for lt_tmp_nm in $lt_nm_to_check; do
3371    lt_save_ifs="$IFS"; IFS=$PATH_SEPARATOR
3372    for ac_dir in $PATH /usr/ccs/bin/elf /usr/ccs/bin /usr/ucb /bin; do
3373      IFS="$lt_save_ifs"
3374      test -z "$ac_dir" && ac_dir=.
3375      tmp_nm="$ac_dir/$lt_tmp_nm"
3376      if test -f "$tmp_nm" || test -f "$tmp_nm$ac_exeext" ; then
3377	# Check to see if the nm accepts a BSD-compat flag.
3378	# Adding the `sed 1q' prevents false positives on HP-UX, which says:
3379	#   nm: unknown option "B" ignored
3380	# Tru64's nm complains that /dev/null is an invalid object file
3381	case `"$tmp_nm" -B /dev/null 2>&1 | sed '1q'` in
3382	*/dev/null* | *'Invalid file or object type'*)
3383	  lt_cv_path_NM="$tmp_nm -B"
3384	  break
3385	  ;;
3386	*)
3387	  case `"$tmp_nm" -p /dev/null 2>&1 | sed '1q'` in
3388	  */dev/null*)
3389	    lt_cv_path_NM="$tmp_nm -p"
3390	    break
3391	    ;;
3392	  *)
3393	    lt_cv_path_NM=${lt_cv_path_NM="$tmp_nm"} # keep the first match, but
3394	    continue # so that we can try to find one that supports BSD flags
3395	    ;;
3396	  esac
3397	  ;;
3398	esac
3399      fi
3400    done
3401    IFS="$lt_save_ifs"
3402  done
3403  : ${lt_cv_path_NM=no}
3404fi])
3405if test "$lt_cv_path_NM" != "no"; then
3406  NM="$lt_cv_path_NM"
3407else
3408  # Didn't find any BSD compatible name lister, look for dumpbin.
3409  if test -n "$DUMPBIN"; then :
3410    # Let the user override the test.
3411  else
3412    AC_CHECK_TOOLS(DUMPBIN, [dumpbin "link -dump"], :)
3413    case `$DUMPBIN -symbols /dev/null 2>&1 | sed '1q'` in
3414    *COFF*)
3415      DUMPBIN="$DUMPBIN -symbols"
3416      ;;
3417    *)
3418      DUMPBIN=:
3419      ;;
3420    esac
3421  fi
3422  AC_SUBST([DUMPBIN])
3423  if test "$DUMPBIN" != ":"; then
3424    NM="$DUMPBIN"
3425  fi
3426fi
3427test -z "$NM" && NM=nm
3428AC_SUBST([NM])
3429_LT_DECL([], [NM], [1], [A BSD- or MS-compatible name lister])dnl
3430
3431AC_CACHE_CHECK([the name lister ($NM) interface], [lt_cv_nm_interface],
3432  [lt_cv_nm_interface="BSD nm"
3433  echo "int some_variable = 0;" > conftest.$ac_ext
3434  (eval echo "\"\$as_me:$LINENO: $ac_compile\"" >&AS_MESSAGE_LOG_FD)
3435  (eval "$ac_compile" 2>conftest.err)
3436  cat conftest.err >&AS_MESSAGE_LOG_FD
3437  (eval echo "\"\$as_me:$LINENO: $NM \\\"conftest.$ac_objext\\\"\"" >&AS_MESSAGE_LOG_FD)
3438  (eval "$NM \"conftest.$ac_objext\"" 2>conftest.err > conftest.out)
3439  cat conftest.err >&AS_MESSAGE_LOG_FD
3440  (eval echo "\"\$as_me:$LINENO: output\"" >&AS_MESSAGE_LOG_FD)
3441  cat conftest.out >&AS_MESSAGE_LOG_FD
3442  if $GREP 'External.*some_variable' conftest.out > /dev/null; then
3443    lt_cv_nm_interface="MS dumpbin"
3444  fi
3445  rm -f conftest*])
3446])# LT_PATH_NM
3447
3448# Old names:
3449AU_ALIAS([AM_PROG_NM], [LT_PATH_NM])
3450AU_ALIAS([AC_PROG_NM], [LT_PATH_NM])
3451dnl aclocal-1.4 backwards compatibility:
3452dnl AC_DEFUN([AM_PROG_NM], [])
3453dnl AC_DEFUN([AC_PROG_NM], [])
3454
3455# _LT_CHECK_SHAREDLIB_FROM_LINKLIB
3456# --------------------------------
3457# how to determine the name of the shared library
3458# associated with a specific link library.
3459#  -- PORTME fill in with the dynamic library characteristics
3460m4_defun([_LT_CHECK_SHAREDLIB_FROM_LINKLIB],
3461[m4_require([_LT_DECL_EGREP])
3462m4_require([_LT_DECL_OBJDUMP])
3463m4_require([_LT_DECL_DLLTOOL])
3464AC_CACHE_CHECK([how to associate runtime and link libraries],
3465lt_cv_sharedlib_from_linklib_cmd,
3466[lt_cv_sharedlib_from_linklib_cmd='unknown'
3467
3468case $host_os in
3469cygwin* | mingw* | pw32* | cegcc*)
3470  # two different shell functions defined in ltmain.sh
3471  # decide which to use based on capabilities of $DLLTOOL
3472  case `$DLLTOOL --help 2>&1` in
3473  *--identify-strict*)
3474    lt_cv_sharedlib_from_linklib_cmd=func_cygming_dll_for_implib
3475    ;;
3476  *)
3477    lt_cv_sharedlib_from_linklib_cmd=func_cygming_dll_for_implib_fallback
3478    ;;
3479  esac
3480  ;;
3481*)
3482  # fallback: assume linklib IS sharedlib
3483  lt_cv_sharedlib_from_linklib_cmd="$ECHO"
3484  ;;
3485esac
3486])
3487sharedlib_from_linklib_cmd=$lt_cv_sharedlib_from_linklib_cmd
3488test -z "$sharedlib_from_linklib_cmd" && sharedlib_from_linklib_cmd=$ECHO
3489
3490_LT_DECL([], [sharedlib_from_linklib_cmd], [1],
3491    [Command to associate shared and link libraries])
3492])# _LT_CHECK_SHAREDLIB_FROM_LINKLIB
3493
3494
3495# _LT_PATH_MANIFEST_TOOL
3496# ----------------------
3497# locate the manifest tool
3498m4_defun([_LT_PATH_MANIFEST_TOOL],
3499[AC_CHECK_TOOL(MANIFEST_TOOL, mt, :)
3500test -z "$MANIFEST_TOOL" && MANIFEST_TOOL=mt
3501AC_CACHE_CHECK([if $MANIFEST_TOOL is a manifest tool], [lt_cv_path_mainfest_tool],
3502  [lt_cv_path_mainfest_tool=no
3503  echo "$as_me:$LINENO: $MANIFEST_TOOL '-?'" >&AS_MESSAGE_LOG_FD
3504  $MANIFEST_TOOL '-?' 2>conftest.err > conftest.out
3505  cat conftest.err >&AS_MESSAGE_LOG_FD
3506  if $GREP 'Manifest Tool' conftest.out > /dev/null; then
3507    lt_cv_path_mainfest_tool=yes
3508  fi
3509  rm -f conftest*])
3510if test "x$lt_cv_path_mainfest_tool" != xyes; then
3511  MANIFEST_TOOL=:
3512fi
3513_LT_DECL([], [MANIFEST_TOOL], [1], [Manifest tool])dnl
3514])# _LT_PATH_MANIFEST_TOOL
3515
3516
3517# LT_LIB_M
3518# --------
3519# check for math library
3520AC_DEFUN([LT_LIB_M],
3521[AC_REQUIRE([AC_CANONICAL_HOST])dnl
3522LIBM=
3523case $host in
3524*-*-beos* | *-*-cegcc* | *-*-cygwin* | *-*-haiku* | *-*-pw32* | *-*-darwin*)
3525  # These system don't have libm, or don't need it
3526  ;;
3527*-ncr-sysv4.3*)
3528  AC_CHECK_LIB(mw, _mwvalidcheckl, LIBM="-lmw")
3529  AC_CHECK_LIB(m, cos, LIBM="$LIBM -lm")
3530  ;;
3531*)
3532  AC_CHECK_LIB(m, cos, LIBM="-lm")
3533  ;;
3534esac
3535AC_SUBST([LIBM])
3536])# LT_LIB_M
3537
3538# Old name:
3539AU_ALIAS([AC_CHECK_LIBM], [LT_LIB_M])
3540dnl aclocal-1.4 backwards compatibility:
3541dnl AC_DEFUN([AC_CHECK_LIBM], [])
3542
3543
3544# _LT_COMPILER_NO_RTTI([TAGNAME])
3545# -------------------------------
3546m4_defun([_LT_COMPILER_NO_RTTI],
3547[m4_require([_LT_TAG_COMPILER])dnl
3548
3549_LT_TAGVAR(lt_prog_compiler_no_builtin_flag, $1)=
3550
3551if test "$GCC" = yes; then
3552  case $cc_basename in
3553  nvcc*)
3554    _LT_TAGVAR(lt_prog_compiler_no_builtin_flag, $1)=' -Xcompiler -fno-builtin' ;;
3555  *)
3556    _LT_TAGVAR(lt_prog_compiler_no_builtin_flag, $1)=' -fno-builtin' ;;
3557  esac
3558
3559  _LT_COMPILER_OPTION([if $compiler supports -fno-rtti -fno-exceptions],
3560    lt_cv_prog_compiler_rtti_exceptions,
3561    [-fno-rtti -fno-exceptions], [],
3562    [_LT_TAGVAR(lt_prog_compiler_no_builtin_flag, $1)="$_LT_TAGVAR(lt_prog_compiler_no_builtin_flag, $1) -fno-rtti -fno-exceptions"])
3563fi
3564_LT_TAGDECL([no_builtin_flag], [lt_prog_compiler_no_builtin_flag], [1],
3565	[Compiler flag to turn off builtin functions])
3566])# _LT_COMPILER_NO_RTTI
3567
3568
3569# _LT_CMD_GLOBAL_SYMBOLS
3570# ----------------------
3571m4_defun([_LT_CMD_GLOBAL_SYMBOLS],
3572[AC_REQUIRE([AC_CANONICAL_HOST])dnl
3573AC_REQUIRE([AC_PROG_CC])dnl
3574AC_REQUIRE([AC_PROG_AWK])dnl
3575AC_REQUIRE([LT_PATH_NM])dnl
3576AC_REQUIRE([LT_PATH_LD])dnl
3577m4_require([_LT_DECL_SED])dnl
3578m4_require([_LT_DECL_EGREP])dnl
3579m4_require([_LT_TAG_COMPILER])dnl
3580
3581# Check for command to grab the raw symbol name followed by C symbol from nm.
3582AC_MSG_CHECKING([command to parse $NM output from $compiler object])
3583AC_CACHE_VAL([lt_cv_sys_global_symbol_pipe],
3584[
3585# These are sane defaults that work on at least a few old systems.
3586# [They come from Ultrix.  What could be older than Ultrix?!! ;)]
3587
3588# Character class describing NM global symbol codes.
3589symcode='[[BCDEGRST]]'
3590
3591# Regexp to match symbols that can be accessed directly from C.
3592sympat='\([[_A-Za-z]][[_A-Za-z0-9]]*\)'
3593
3594# Define system-specific variables.
3595case $host_os in
3596aix*)
3597  symcode='[[BCDT]]'
3598  ;;
3599cygwin* | mingw* | pw32* | cegcc*)
3600  symcode='[[ABCDGISTW]]'
3601  ;;
3602hpux*)
3603  if test "$host_cpu" = ia64; then
3604    symcode='[[ABCDEGRST]]'
3605  fi
3606  ;;
3607irix* | nonstopux*)
3608  symcode='[[BCDEGRST]]'
3609  ;;
3610osf*)
3611  symcode='[[BCDEGQRST]]'
3612  ;;
3613solaris*)
3614  symcode='[[BDRT]]'
3615  ;;
3616sco3.2v5*)
3617  symcode='[[DT]]'
3618  ;;
3619sysv4.2uw2*)
3620  symcode='[[DT]]'
3621  ;;
3622sysv5* | sco5v6* | unixware* | OpenUNIX*)
3623  symcode='[[ABDT]]'
3624  ;;
3625sysv4)
3626  symcode='[[DFNSTU]]'
3627  ;;
3628esac
3629
3630# If we're using GNU nm, then use its standard symbol codes.
3631case `$NM -V 2>&1` in
3632*GNU* | *'with BFD'*)
3633  symcode='[[ABCDGIRSTW]]' ;;
3634esac
3635
3636# Transform an extracted symbol line into a proper C declaration.
3637# Some systems (esp. on ia64) link data and code symbols differently,
3638# so use this general approach.
3639lt_cv_sys_global_symbol_to_cdecl="sed -n -e 's/^T .* \(.*\)$/extern int \1();/p' -e 's/^$symcode* .* \(.*\)$/extern char \1;/p'"
3640
3641# Transform an extracted symbol line into symbol name and symbol address
3642lt_cv_sys_global_symbol_to_c_name_address="sed -n -e 's/^: \([[^ ]]*\)[[ ]]*$/  {\\\"\1\\\", (void *) 0},/p' -e 's/^$symcode* \([[^ ]]*\) \([[^ ]]*\)$/  {\"\2\", (void *) \&\2},/p'"
3643lt_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'"
3644
3645# Handle CRLF in mingw tool chain
3646opt_cr=
3647case $build_os in
3648mingw*)
3649  opt_cr=`$ECHO 'x\{0,1\}' | tr x '\015'` # option cr in regexp
3650  ;;
3651esac
3652
3653# Try without a prefix underscore, then with it.
3654for ac_symprfx in "" "_"; do
3655
3656  # Transform symcode, sympat, and symprfx into a raw symbol and a C symbol.
3657  symxfrm="\\1 $ac_symprfx\\2 \\2"
3658
3659  # Write the raw and C identifiers.
3660  if test "$lt_cv_nm_interface" = "MS dumpbin"; then
3661    # Fake it for dumpbin and say T for any non-static function
3662    # and D for any global variable.
3663    # Also find C++ and __fastcall symbols from MSVC++,
3664    # which start with @ or ?.
3665    lt_cv_sys_global_symbol_pipe="$AWK ['"\
3666"     {last_section=section; section=\$ 3};"\
3667"     /Section length .*#relocs.*(pick any)/{hide[last_section]=1};"\
3668"     \$ 0!~/External *\|/{next};"\
3669"     / 0+ UNDEF /{next}; / UNDEF \([^|]\)*()/{next};"\
3670"     {if(hide[section]) next};"\
3671"     {f=0}; \$ 0~/\(\).*\|/{f=1}; {printf f ? \"T \" : \"D \"};"\
3672"     {split(\$ 0, a, /\||\r/); split(a[2], s)};"\
3673"     s[1]~/^[@?]/{print s[1], s[1]; next};"\
3674"     s[1]~prfx {split(s[1],t,\"@\"); print t[1], substr(t[1],length(prfx))}"\
3675"     ' prfx=^$ac_symprfx]"
3676  else
3677    lt_cv_sys_global_symbol_pipe="sed -n -e 's/^.*[[	 ]]\($symcode$symcode*\)[[	 ]][[	 ]]*$ac_symprfx$sympat$opt_cr$/$symxfrm/p'"
3678  fi
3679  lt_cv_sys_global_symbol_pipe="$lt_cv_sys_global_symbol_pipe | sed '/ __gnu_lto/d'"
3680
3681  # Check to see that the pipe works correctly.
3682  pipe_works=no
3683
3684  rm -f conftest*
3685  cat > conftest.$ac_ext <<_LT_EOF
3686#ifdef __cplusplus
3687extern "C" {
3688#endif
3689char nm_test_var;
3690void nm_test_func(void);
3691void nm_test_func(void){}
3692#ifdef __cplusplus
3693}
3694#endif
3695int main(){nm_test_var='a';nm_test_func();return(0);}
3696_LT_EOF
3697
3698  if AC_TRY_EVAL(ac_compile); then
3699    # Now try to grab the symbols.
3700    nlist=conftest.nm
3701    if AC_TRY_EVAL(NM conftest.$ac_objext \| "$lt_cv_sys_global_symbol_pipe" \> $nlist) && test -s "$nlist"; then
3702      # Try sorting and uniquifying the output.
3703      if sort "$nlist" | uniq > "$nlist"T; then
3704	mv -f "$nlist"T "$nlist"
3705      else
3706	rm -f "$nlist"T
3707      fi
3708
3709      # Make sure that we snagged all the symbols we need.
3710      if $GREP ' nm_test_var$' "$nlist" >/dev/null; then
3711	if $GREP ' nm_test_func$' "$nlist" >/dev/null; then
3712	  cat <<_LT_EOF > conftest.$ac_ext
3713/* Keep this code in sync between libtool.m4, ltmain, lt_system.h, and tests.  */
3714#if defined(_WIN32) || defined(__CYGWIN__) || defined(_WIN32_WCE)
3715/* DATA imports from DLLs on WIN32 con't be const, because runtime
3716   relocations are performed -- see ld's documentation on pseudo-relocs.  */
3717# define LT@&t@_DLSYM_CONST
3718#elif defined(__osf__)
3719/* This system does not cope well with relocations in const data.  */
3720# define LT@&t@_DLSYM_CONST
3721#else
3722# define LT@&t@_DLSYM_CONST const
3723#endif
3724
3725#ifdef __cplusplus
3726extern "C" {
3727#endif
3728
3729_LT_EOF
3730	  # Now generate the symbol file.
3731	  eval "$lt_cv_sys_global_symbol_to_cdecl"' < "$nlist" | $GREP -v main >> conftest.$ac_ext'
3732
3733	  cat <<_LT_EOF >> conftest.$ac_ext
3734
3735/* The mapping between symbol names and symbols.  */
3736LT@&t@_DLSYM_CONST struct {
3737  const char *name;
3738  void       *address;
3739}
3740lt__PROGRAM__LTX_preloaded_symbols[[]] =
3741{
3742  { "@PROGRAM@", (void *) 0 },
3743_LT_EOF
3744	  $SED "s/^$symcode$symcode* \(.*\) \(.*\)$/  {\"\2\", (void *) \&\2},/" < "$nlist" | $GREP -v main >> conftest.$ac_ext
3745	  cat <<\_LT_EOF >> conftest.$ac_ext
3746  {0, (void *) 0}
3747};
3748
3749/* This works around a problem in FreeBSD linker */
3750#ifdef FREEBSD_WORKAROUND
3751static const void *lt_preloaded_setup() {
3752  return lt__PROGRAM__LTX_preloaded_symbols;
3753}
3754#endif
3755
3756#ifdef __cplusplus
3757}
3758#endif
3759_LT_EOF
3760	  # Now try linking the two files.
3761	  mv conftest.$ac_objext conftstm.$ac_objext
3762	  lt_globsym_save_LIBS=$LIBS
3763	  lt_globsym_save_CFLAGS=$CFLAGS
3764	  LIBS="conftstm.$ac_objext"
3765	  CFLAGS="$CFLAGS$_LT_TAGVAR(lt_prog_compiler_no_builtin_flag, $1)"
3766	  if AC_TRY_EVAL(ac_link) && test -s conftest${ac_exeext}; then
3767	    pipe_works=yes
3768	  fi
3769	  LIBS=$lt_globsym_save_LIBS
3770	  CFLAGS=$lt_globsym_save_CFLAGS
3771	else
3772	  echo "cannot find nm_test_func in $nlist" >&AS_MESSAGE_LOG_FD
3773	fi
3774      else
3775	echo "cannot find nm_test_var in $nlist" >&AS_MESSAGE_LOG_FD
3776      fi
3777    else
3778      echo "cannot run $lt_cv_sys_global_symbol_pipe" >&AS_MESSAGE_LOG_FD
3779    fi
3780  else
3781    echo "$progname: failed program was:" >&AS_MESSAGE_LOG_FD
3782    cat conftest.$ac_ext >&5
3783  fi
3784  rm -rf conftest* conftst*
3785
3786  # Do not use the global_symbol_pipe unless it works.
3787  if test "$pipe_works" = yes; then
3788    break
3789  else
3790    lt_cv_sys_global_symbol_pipe=
3791  fi
3792done
3793])
3794if test -z "$lt_cv_sys_global_symbol_pipe"; then
3795  lt_cv_sys_global_symbol_to_cdecl=
3796fi
3797if test -z "$lt_cv_sys_global_symbol_pipe$lt_cv_sys_global_symbol_to_cdecl"; then
3798  AC_MSG_RESULT(failed)
3799else
3800  AC_MSG_RESULT(ok)
3801fi
3802
3803# Response file support.
3804if test "$lt_cv_nm_interface" = "MS dumpbin"; then
3805  nm_file_list_spec='@'
3806elif $NM --help 2>/dev/null | grep '[[@]]FILE' >/dev/null; then
3807  nm_file_list_spec='@'
3808fi
3809
3810_LT_DECL([global_symbol_pipe], [lt_cv_sys_global_symbol_pipe], [1],
3811    [Take the output of nm and produce a listing of raw symbols and C names])
3812_LT_DECL([global_symbol_to_cdecl], [lt_cv_sys_global_symbol_to_cdecl], [1],
3813    [Transform the output of nm in a proper C declaration])
3814_LT_DECL([global_symbol_to_c_name_address],
3815    [lt_cv_sys_global_symbol_to_c_name_address], [1],
3816    [Transform the output of nm in a C name address pair])
3817_LT_DECL([global_symbol_to_c_name_address_lib_prefix],
3818    [lt_cv_sys_global_symbol_to_c_name_address_lib_prefix], [1],
3819    [Transform the output of nm in a C name address pair when lib prefix is needed])
3820_LT_DECL([], [nm_file_list_spec], [1],
3821    [Specify filename containing input files for $NM])
3822]) # _LT_CMD_GLOBAL_SYMBOLS
3823
3824
3825# _LT_COMPILER_PIC([TAGNAME])
3826# ---------------------------
3827m4_defun([_LT_COMPILER_PIC],
3828[m4_require([_LT_TAG_COMPILER])dnl
3829_LT_TAGVAR(lt_prog_compiler_wl, $1)=
3830_LT_TAGVAR(lt_prog_compiler_pic, $1)=
3831_LT_TAGVAR(lt_prog_compiler_static, $1)=
3832
3833m4_if([$1], [CXX], [
3834  # C++ specific cases for pic, static, wl, etc.
3835  if test "$GXX" = yes; then
3836    _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
3837    _LT_TAGVAR(lt_prog_compiler_static, $1)='-static'
3838
3839    case $host_os in
3840    aix*)
3841      # All AIX code is PIC.
3842      if test "$host_cpu" = ia64; then
3843	# AIX 5 now supports IA64 processor
3844	_LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic'
3845      fi
3846      ;;
3847
3848    amigaos*)
3849      case $host_cpu in
3850      powerpc)
3851            # see comment about AmigaOS4 .so support
3852            _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fPIC'
3853        ;;
3854      m68k)
3855            # FIXME: we need at least 68020 code to build shared libraries, but
3856            # adding the `-m68020' flag to GCC prevents building anything better,
3857            # like `-m68040'.
3858            _LT_TAGVAR(lt_prog_compiler_pic, $1)='-m68020 -resident32 -malways-restore-a4'
3859        ;;
3860      esac
3861      ;;
3862
3863    beos* | irix5* | irix6* | nonstopux* | osf3* | osf4* | osf5*)
3864      # PIC is the default for these OSes.
3865      ;;
3866    mingw* | cygwin* | os2* | pw32* | cegcc*)
3867      # This hack is so that the source file can tell whether it is being
3868      # built for inclusion in a dll (and should export symbols for example).
3869      # Although the cygwin gcc ignores -fPIC, still need this for old-style
3870      # (--disable-auto-import) libraries
3871      m4_if([$1], [GCJ], [],
3872	[_LT_TAGVAR(lt_prog_compiler_pic, $1)='-DDLL_EXPORT'])
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    *djgpp*)
3880      # DJGPP does not support shared libraries at all
3881      _LT_TAGVAR(lt_prog_compiler_pic, $1)=
3882      ;;
3883    haiku*)
3884      # PIC is the default for Haiku.
3885      # The "-static" flag exists, but is broken.
3886      _LT_TAGVAR(lt_prog_compiler_static, $1)=
3887      ;;
3888    interix[[3-9]]*)
3889      # Interix 3.x gcc -fpic/-fPIC options generate broken code.
3890      # Instead, we relocate shared libraries at runtime.
3891      ;;
3892    sysv4*MP*)
3893      if test -d /usr/nec; then
3894	_LT_TAGVAR(lt_prog_compiler_pic, $1)=-Kconform_pic
3895      fi
3896      ;;
3897    hpux*)
3898      # PIC is the default for 64-bit PA HP-UX, but not for 32-bit
3899      # PA HP-UX.  On IA64 HP-UX, PIC is the default but the pic flag
3900      # sets the default TLS model and affects inlining.
3901      case $host_cpu in
3902      hppa*64*)
3903	;;
3904      *)
3905	_LT_TAGVAR(lt_prog_compiler_pic, $1)='-fPIC'
3906	;;
3907      esac
3908      ;;
3909    *qnx* | *nto*)
3910      # QNX uses GNU C++, but need to define -shared option too, otherwise
3911      # it will coredump.
3912      _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fPIC -shared'
3913      ;;
3914    *)
3915      _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fPIC'
3916      ;;
3917    esac
3918  else
3919    case $host_os in
3920      aix[[4-9]]*)
3921	# All AIX code is PIC.
3922	if test "$host_cpu" = ia64; then
3923	  # AIX 5 now supports IA64 processor
3924	  _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic'
3925	else
3926	  _LT_TAGVAR(lt_prog_compiler_static, $1)='-bnso -bI:/lib/syscalls.exp'
3927	fi
3928	;;
3929      chorus*)
3930	case $cc_basename in
3931	cxch68*)
3932	  # Green Hills C++ Compiler
3933	  # _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"
3934	  ;;
3935	esac
3936	;;
3937      mingw* | cygwin* | os2* | pw32* | cegcc*)
3938	# This hack is so that the source file can tell whether it is being
3939	# built for inclusion in a dll (and should export symbols for example).
3940	m4_if([$1], [GCJ], [],
3941	  [_LT_TAGVAR(lt_prog_compiler_pic, $1)='-DDLL_EXPORT'])
3942	;;
3943      dgux*)
3944	case $cc_basename in
3945	  ec++*)
3946	    _LT_TAGVAR(lt_prog_compiler_pic, $1)='-KPIC'
3947	    ;;
3948	  ghcx*)
3949	    # Green Hills C++ Compiler
3950	    _LT_TAGVAR(lt_prog_compiler_pic, $1)='-pic'
3951	    ;;
3952	  *)
3953	    ;;
3954	esac
3955	;;
3956      freebsd* | dragonfly*)
3957	# FreeBSD uses GNU C++
3958	;;
3959      hpux9* | hpux10* | hpux11*)
3960	case $cc_basename in
3961	  CC*)
3962	    _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
3963	    _LT_TAGVAR(lt_prog_compiler_static, $1)='${wl}-a ${wl}archive'
3964	    if test "$host_cpu" != ia64; then
3965	      _LT_TAGVAR(lt_prog_compiler_pic, $1)='+Z'
3966	    fi
3967	    ;;
3968	  aCC*)
3969	    _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
3970	    _LT_TAGVAR(lt_prog_compiler_static, $1)='${wl}-a ${wl}archive'
3971	    case $host_cpu in
3972	    hppa*64*|ia64*)
3973	      # +Z the default
3974	      ;;
3975	    *)
3976	      _LT_TAGVAR(lt_prog_compiler_pic, $1)='+Z'
3977	      ;;
3978	    esac
3979	    ;;
3980	  *)
3981	    ;;
3982	esac
3983	;;
3984      interix*)
3985	# This is c89, which is MS Visual C++ (no shared libs)
3986	# Anyone wants to do a port?
3987	;;
3988      irix5* | irix6* | nonstopux*)
3989	case $cc_basename in
3990	  CC*)
3991	    _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
3992	    _LT_TAGVAR(lt_prog_compiler_static, $1)='-non_shared'
3993	    # CC pic flag -KPIC is the default.
3994	    ;;
3995	  *)
3996	    ;;
3997	esac
3998	;;
3999      linux* | k*bsd*-gnu | kopensolaris*-gnu)
4000	case $cc_basename in
4001	  KCC*)
4002	    # KAI C++ Compiler
4003	    _LT_TAGVAR(lt_prog_compiler_wl, $1)='--backend -Wl,'
4004	    _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fPIC'
4005	    ;;
4006	  ecpc* )
4007	    # old Intel C++ for x86_64 which still supported -KPIC.
4008	    _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
4009	    _LT_TAGVAR(lt_prog_compiler_pic, $1)='-KPIC'
4010	    _LT_TAGVAR(lt_prog_compiler_static, $1)='-static'
4011	    ;;
4012	  icpc* )
4013	    # Intel C++, used to be incompatible with GCC.
4014	    # ICC 10 doesn't accept -KPIC any more.
4015	    _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
4016	    _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fPIC'
4017	    _LT_TAGVAR(lt_prog_compiler_static, $1)='-static'
4018	    ;;
4019	  pgCC* | pgcpp*)
4020	    # Portland Group C++ compiler
4021	    _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
4022	    _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fpic'
4023	    _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic'
4024	    ;;
4025	  cxx*)
4026	    # Compaq C++
4027	    # Make sure the PIC flag is empty.  It appears that all Alpha
4028	    # Linux and Compaq Tru64 Unix objects are PIC.
4029	    _LT_TAGVAR(lt_prog_compiler_pic, $1)=
4030	    _LT_TAGVAR(lt_prog_compiler_static, $1)='-non_shared'
4031	    ;;
4032	  xlc* | xlC* | bgxl[[cC]]* | mpixl[[cC]]*)
4033	    # IBM XL 8.0, 9.0 on PPC and BlueGene
4034	    _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
4035	    _LT_TAGVAR(lt_prog_compiler_pic, $1)='-qpic'
4036	    _LT_TAGVAR(lt_prog_compiler_static, $1)='-qstaticlink'
4037	    ;;
4038	  *)
4039	    case `$CC -V 2>&1 | sed 5q` in
4040	    *Sun\ C*)
4041	      # Sun C++ 5.9
4042	      _LT_TAGVAR(lt_prog_compiler_pic, $1)='-KPIC'
4043	      _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic'
4044	      _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Qoption ld '
4045	      ;;
4046	    esac
4047	    ;;
4048	esac
4049	;;
4050      lynxos*)
4051	;;
4052      m88k*)
4053	;;
4054      mvs*)
4055	case $cc_basename in
4056	  cxx*)
4057	    _LT_TAGVAR(lt_prog_compiler_pic, $1)='-W c,exportall'
4058	    ;;
4059	  *)
4060	    ;;
4061	esac
4062	;;
4063      netbsd*)
4064	;;
4065      *qnx* | *nto*)
4066        # QNX uses GNU C++, but need to define -shared option too, otherwise
4067        # it will coredump.
4068        _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fPIC -shared'
4069        ;;
4070      osf3* | osf4* | osf5*)
4071	case $cc_basename in
4072	  KCC*)
4073	    _LT_TAGVAR(lt_prog_compiler_wl, $1)='--backend -Wl,'
4074	    ;;
4075	  RCC*)
4076	    # Rational C++ 2.4.1
4077	    _LT_TAGVAR(lt_prog_compiler_pic, $1)='-pic'
4078	    ;;
4079	  cxx*)
4080	    # Digital/Compaq C++
4081	    _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
4082	    # Make sure the PIC flag is empty.  It appears that all Alpha
4083	    # Linux and Compaq Tru64 Unix objects are PIC.
4084	    _LT_TAGVAR(lt_prog_compiler_pic, $1)=
4085	    _LT_TAGVAR(lt_prog_compiler_static, $1)='-non_shared'
4086	    ;;
4087	  *)
4088	    ;;
4089	esac
4090	;;
4091      psos*)
4092	;;
4093      solaris*)
4094	case $cc_basename in
4095	  CC* | sunCC*)
4096	    # Sun C++ 4.2, 5.x and Centerline C++
4097	    _LT_TAGVAR(lt_prog_compiler_pic, $1)='-KPIC'
4098	    _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic'
4099	    _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Qoption ld '
4100	    ;;
4101	  gcx*)
4102	    # Green Hills C++ Compiler
4103	    _LT_TAGVAR(lt_prog_compiler_pic, $1)='-PIC'
4104	    ;;
4105	  *)
4106	    ;;
4107	esac
4108	;;
4109      sunos4*)
4110	case $cc_basename in
4111	  CC*)
4112	    # Sun C++ 4.x
4113	    _LT_TAGVAR(lt_prog_compiler_pic, $1)='-pic'
4114	    _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic'
4115	    ;;
4116	  lcc*)
4117	    # Lucid
4118	    _LT_TAGVAR(lt_prog_compiler_pic, $1)='-pic'
4119	    ;;
4120	  *)
4121	    ;;
4122	esac
4123	;;
4124      sysv5* | unixware* | sco3.2v5* | sco5v6* | OpenUNIX*)
4125	case $cc_basename in
4126	  CC*)
4127	    _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
4128	    _LT_TAGVAR(lt_prog_compiler_pic, $1)='-KPIC'
4129	    _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic'
4130	    ;;
4131	esac
4132	;;
4133      tandem*)
4134	case $cc_basename in
4135	  NCC*)
4136	    # NonStop-UX NCC 3.20
4137	    _LT_TAGVAR(lt_prog_compiler_pic, $1)='-KPIC'
4138	    ;;
4139	  *)
4140	    ;;
4141	esac
4142	;;
4143      vxworks*)
4144	;;
4145      *)
4146	_LT_TAGVAR(lt_prog_compiler_can_build_shared, $1)=no
4147	;;
4148    esac
4149  fi
4150],
4151[
4152  if test "$GCC" = yes; then
4153    _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
4154    _LT_TAGVAR(lt_prog_compiler_static, $1)='-static'
4155
4156    case $host_os in
4157      aix*)
4158      # All AIX code is PIC.
4159      if test "$host_cpu" = ia64; then
4160	# AIX 5 now supports IA64 processor
4161	_LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic'
4162      fi
4163      ;;
4164
4165    amigaos*)
4166      case $host_cpu in
4167      powerpc)
4168            # see comment about AmigaOS4 .so support
4169            _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fPIC'
4170        ;;
4171      m68k)
4172            # FIXME: we need at least 68020 code to build shared libraries, but
4173            # adding the `-m68020' flag to GCC prevents building anything better,
4174            # like `-m68040'.
4175            _LT_TAGVAR(lt_prog_compiler_pic, $1)='-m68020 -resident32 -malways-restore-a4'
4176        ;;
4177      esac
4178      ;;
4179
4180    beos* | irix5* | irix6* | nonstopux* | osf3* | osf4* | osf5*)
4181      # PIC is the default for these OSes.
4182      ;;
4183
4184    mingw* | cygwin* | pw32* | os2* | cegcc*)
4185      # This hack is so that the source file can tell whether it is being
4186      # built for inclusion in a dll (and should export symbols for example).
4187      # Although the cygwin gcc ignores -fPIC, still need this for old-style
4188      # (--disable-auto-import) libraries
4189      m4_if([$1], [GCJ], [],
4190	[_LT_TAGVAR(lt_prog_compiler_pic, $1)='-DDLL_EXPORT'])
4191      ;;
4192
4193    darwin* | rhapsody*)
4194      # PIC is the default on this platform
4195      # Common symbols not allowed in MH_DYLIB files
4196      _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fno-common'
4197      ;;
4198
4199    haiku*)
4200      # PIC is the default for Haiku.
4201      # The "-static" flag exists, but is broken.
4202      _LT_TAGVAR(lt_prog_compiler_static, $1)=
4203      ;;
4204
4205    hpux*)
4206      # PIC is the default for 64-bit PA HP-UX, but not for 32-bit
4207      # PA HP-UX.  On IA64 HP-UX, PIC is the default but the pic flag
4208      # sets the default TLS model and affects inlining.
4209      case $host_cpu in
4210      hppa*64*)
4211	# +Z the default
4212	;;
4213      *)
4214	_LT_TAGVAR(lt_prog_compiler_pic, $1)='-fPIC'
4215	;;
4216      esac
4217      ;;
4218
4219    interix[[3-9]]*)
4220      # Interix 3.x gcc -fpic/-fPIC options generate broken code.
4221      # Instead, we relocate shared libraries at runtime.
4222      ;;
4223
4224    msdosdjgpp*)
4225      # Just because we use GCC doesn't mean we suddenly get shared libraries
4226      # on systems that don't support them.
4227      _LT_TAGVAR(lt_prog_compiler_can_build_shared, $1)=no
4228      enable_shared=no
4229      ;;
4230
4231    *nto* | *qnx*)
4232      # QNX uses GNU C++, but need to define -shared option too, otherwise
4233      # it will coredump.
4234      _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fPIC -shared'
4235      ;;
4236
4237    sysv4*MP*)
4238      if test -d /usr/nec; then
4239	_LT_TAGVAR(lt_prog_compiler_pic, $1)=-Kconform_pic
4240      fi
4241      ;;
4242
4243    *)
4244      _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fPIC'
4245      ;;
4246    esac
4247
4248    case $cc_basename in
4249    nvcc*) # Cuda Compiler Driver 2.2
4250      _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Xlinker '
4251      _LT_TAGVAR(lt_prog_compiler_pic, $1)='-Xcompiler -fPIC'
4252      ;;
4253    esac
4254  else
4255    # PORTME Check for flag to pass linker flags through the system compiler.
4256    case $host_os in
4257    aix*)
4258      _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
4259      if test "$host_cpu" = ia64; then
4260	# AIX 5 now supports IA64 processor
4261	_LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic'
4262      else
4263	_LT_TAGVAR(lt_prog_compiler_static, $1)='-bnso -bI:/lib/syscalls.exp'
4264      fi
4265      ;;
4266
4267    mingw* | cygwin* | pw32* | os2* | cegcc*)
4268      # This hack is so that the source file can tell whether it is being
4269      # built for inclusion in a dll (and should export symbols for example).
4270      m4_if([$1], [GCJ], [],
4271	[_LT_TAGVAR(lt_prog_compiler_pic, $1)='-DDLL_EXPORT'])
4272      ;;
4273
4274    hpux9* | hpux10* | hpux11*)
4275      _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
4276      # PIC is the default for IA64 HP-UX and 64-bit HP-UX, but
4277      # not for PA HP-UX.
4278      case $host_cpu in
4279      hppa*64*|ia64*)
4280	# +Z the default
4281	;;
4282      *)
4283	_LT_TAGVAR(lt_prog_compiler_pic, $1)='+Z'
4284	;;
4285      esac
4286      # Is there a better lt_prog_compiler_static that works with the bundled CC?
4287      _LT_TAGVAR(lt_prog_compiler_static, $1)='${wl}-a ${wl}archive'
4288      ;;
4289
4290    irix5* | irix6* | nonstopux*)
4291      _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
4292      # PIC (with -KPIC) is the default.
4293      _LT_TAGVAR(lt_prog_compiler_static, $1)='-non_shared'
4294      ;;
4295
4296    linux* | k*bsd*-gnu | kopensolaris*-gnu)
4297      case $cc_basename in
4298      # old Intel for x86_64 which still supported -KPIC.
4299      ecc*)
4300	_LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
4301	_LT_TAGVAR(lt_prog_compiler_pic, $1)='-KPIC'
4302	_LT_TAGVAR(lt_prog_compiler_static, $1)='-static'
4303        ;;
4304      # icc used to be incompatible with GCC.
4305      # ICC 10 doesn't accept -KPIC any more.
4306      icc* | ifort*)
4307	_LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
4308	_LT_TAGVAR(lt_prog_compiler_pic, $1)='-fPIC'
4309	_LT_TAGVAR(lt_prog_compiler_static, $1)='-static'
4310        ;;
4311      # Lahey Fortran 8.1.
4312      lf95*)
4313	_LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
4314	_LT_TAGVAR(lt_prog_compiler_pic, $1)='--shared'
4315	_LT_TAGVAR(lt_prog_compiler_static, $1)='--static'
4316	;;
4317      nagfor*)
4318	# NAG Fortran compiler
4319	_LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,-Wl,,'
4320	_LT_TAGVAR(lt_prog_compiler_pic, $1)='-PIC'
4321	_LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic'
4322	;;
4323      pgcc* | pgf77* | pgf90* | pgf95* | pgfortran*)
4324        # Portland Group compilers (*not* the Pentium gcc compiler,
4325	# which looks to be a dead project)
4326	_LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
4327	_LT_TAGVAR(lt_prog_compiler_pic, $1)='-fpic'
4328	_LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic'
4329        ;;
4330      ccc*)
4331        _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
4332        # All Alpha code is PIC.
4333        _LT_TAGVAR(lt_prog_compiler_static, $1)='-non_shared'
4334        ;;
4335      xl* | bgxl* | bgf* | mpixl*)
4336	# IBM XL C 8.0/Fortran 10.1, 11.1 on PPC and BlueGene
4337	_LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
4338	_LT_TAGVAR(lt_prog_compiler_pic, $1)='-qpic'
4339	_LT_TAGVAR(lt_prog_compiler_static, $1)='-qstaticlink'
4340	;;
4341      *)
4342	case `$CC -V 2>&1 | sed 5q` in
4343	*Sun\ F* | *Sun*Fortran*)
4344	  # Sun Fortran 8.3 passes all unrecognized flags to the linker
4345	  _LT_TAGVAR(lt_prog_compiler_pic, $1)='-KPIC'
4346	  _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic'
4347	  _LT_TAGVAR(lt_prog_compiler_wl, $1)=''
4348	  ;;
4349	*Sun\ C*)
4350	  # Sun C 5.9
4351	  _LT_TAGVAR(lt_prog_compiler_pic, $1)='-KPIC'
4352	  _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic'
4353	  _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
4354	  ;;
4355	esac
4356	;;
4357      esac
4358      ;;
4359
4360    newsos6)
4361      _LT_TAGVAR(lt_prog_compiler_pic, $1)='-KPIC'
4362      _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic'
4363      ;;
4364
4365    *nto* | *qnx*)
4366      # QNX uses GNU C++, but need to define -shared option too, otherwise
4367      # it will coredump.
4368      _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fPIC -shared'
4369      ;;
4370
4371    osf3* | osf4* | osf5*)
4372      _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
4373      # All OSF/1 code is PIC.
4374      _LT_TAGVAR(lt_prog_compiler_static, $1)='-non_shared'
4375      ;;
4376
4377    rdos*)
4378      _LT_TAGVAR(lt_prog_compiler_static, $1)='-non_shared'
4379      ;;
4380
4381    solaris*)
4382      _LT_TAGVAR(lt_prog_compiler_pic, $1)='-KPIC'
4383      _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic'
4384      case $cc_basename in
4385      f77* | f90* | f95* | sunf77* | sunf90* | sunf95*)
4386	_LT_TAGVAR(lt_prog_compiler_wl, $1)='-Qoption ld ';;
4387      *)
4388	_LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,';;
4389      esac
4390      ;;
4391
4392    sunos4*)
4393      _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Qoption ld '
4394      _LT_TAGVAR(lt_prog_compiler_pic, $1)='-PIC'
4395      _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic'
4396      ;;
4397
4398    sysv4 | sysv4.2uw2* | sysv4.3*)
4399      _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
4400      _LT_TAGVAR(lt_prog_compiler_pic, $1)='-KPIC'
4401      _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic'
4402      ;;
4403
4404    sysv4*MP*)
4405      if test -d /usr/nec ;then
4406	_LT_TAGVAR(lt_prog_compiler_pic, $1)='-Kconform_pic'
4407	_LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic'
4408      fi
4409      ;;
4410
4411    sysv5* | unixware* | sco3.2v5* | sco5v6* | OpenUNIX*)
4412      _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
4413      _LT_TAGVAR(lt_prog_compiler_pic, $1)='-KPIC'
4414      _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic'
4415      ;;
4416
4417    unicos*)
4418      _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
4419      _LT_TAGVAR(lt_prog_compiler_can_build_shared, $1)=no
4420      ;;
4421
4422    uts4*)
4423      _LT_TAGVAR(lt_prog_compiler_pic, $1)='-pic'
4424      _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic'
4425      ;;
4426
4427    *)
4428      _LT_TAGVAR(lt_prog_compiler_can_build_shared, $1)=no
4429      ;;
4430    esac
4431  fi
4432])
4433case $host_os in
4434  # For platforms which do not support PIC, -DPIC is meaningless:
4435  *djgpp*)
4436    _LT_TAGVAR(lt_prog_compiler_pic, $1)=
4437    ;;
4438  *)
4439    _LT_TAGVAR(lt_prog_compiler_pic, $1)="$_LT_TAGVAR(lt_prog_compiler_pic, $1)@&t@m4_if([$1],[],[ -DPIC],[m4_if([$1],[CXX],[ -DPIC],[])])"
4440    ;;
4441esac
4442
4443AC_CACHE_CHECK([for $compiler option to produce PIC],
4444  [_LT_TAGVAR(lt_cv_prog_compiler_pic, $1)],
4445  [_LT_TAGVAR(lt_cv_prog_compiler_pic, $1)=$_LT_TAGVAR(lt_prog_compiler_pic, $1)])
4446_LT_TAGVAR(lt_prog_compiler_pic, $1)=$_LT_TAGVAR(lt_cv_prog_compiler_pic, $1)
4447
4448#
4449# Check to make sure the PIC flag actually works.
4450#
4451if test -n "$_LT_TAGVAR(lt_prog_compiler_pic, $1)"; then
4452  _LT_COMPILER_OPTION([if $compiler PIC flag $_LT_TAGVAR(lt_prog_compiler_pic, $1) works],
4453    [_LT_TAGVAR(lt_cv_prog_compiler_pic_works, $1)],
4454    [$_LT_TAGVAR(lt_prog_compiler_pic, $1)@&t@m4_if([$1],[],[ -DPIC],[m4_if([$1],[CXX],[ -DPIC],[])])], [],
4455    [case $_LT_TAGVAR(lt_prog_compiler_pic, $1) in
4456     "" | " "*) ;;
4457     *) _LT_TAGVAR(lt_prog_compiler_pic, $1)=" $_LT_TAGVAR(lt_prog_compiler_pic, $1)" ;;
4458     esac],
4459    [_LT_TAGVAR(lt_prog_compiler_pic, $1)=
4460     _LT_TAGVAR(lt_prog_compiler_can_build_shared, $1)=no])
4461fi
4462_LT_TAGDECL([pic_flag], [lt_prog_compiler_pic], [1],
4463	[Additional compiler flags for building library objects])
4464
4465_LT_TAGDECL([wl], [lt_prog_compiler_wl], [1],
4466	[How to pass a linker flag through the compiler])
4467#
4468# Check to make sure the static flag actually works.
4469#
4470wl=$_LT_TAGVAR(lt_prog_compiler_wl, $1) eval lt_tmp_static_flag=\"$_LT_TAGVAR(lt_prog_compiler_static, $1)\"
4471_LT_LINKER_OPTION([if $compiler static flag $lt_tmp_static_flag works],
4472  _LT_TAGVAR(lt_cv_prog_compiler_static_works, $1),
4473  $lt_tmp_static_flag,
4474  [],
4475  [_LT_TAGVAR(lt_prog_compiler_static, $1)=])
4476_LT_TAGDECL([link_static_flag], [lt_prog_compiler_static], [1],
4477	[Compiler flag to prevent dynamic linking])
4478])# _LT_COMPILER_PIC
4479
4480
4481# _LT_LINKER_SHLIBS([TAGNAME])
4482# ----------------------------
4483# See if the linker supports building shared libraries.
4484m4_defun([_LT_LINKER_SHLIBS],
4485[AC_REQUIRE([LT_PATH_LD])dnl
4486AC_REQUIRE([LT_PATH_NM])dnl
4487m4_require([_LT_PATH_MANIFEST_TOOL])dnl
4488m4_require([_LT_FILEUTILS_DEFAULTS])dnl
4489m4_require([_LT_DECL_EGREP])dnl
4490m4_require([_LT_DECL_SED])dnl
4491m4_require([_LT_CMD_GLOBAL_SYMBOLS])dnl
4492m4_require([_LT_TAG_COMPILER])dnl
4493AC_MSG_CHECKING([whether the $compiler linker ($LD) supports shared libraries])
4494m4_if([$1], [CXX], [
4495  _LT_TAGVAR(export_symbols_cmds, $1)='$NM $libobjs $convenience | $global_symbol_pipe | $SED '\''s/.* //'\'' | sort | uniq > $export_symbols'
4496  _LT_TAGVAR(exclude_expsyms, $1)=['_GLOBAL_OFFSET_TABLE_|_GLOBAL__F[ID]_.*']
4497  case $host_os in
4498  aix[[4-9]]*)
4499    # If we're using GNU nm, then we don't want the "-C" option.
4500    # -C means demangle to AIX nm, but means don't demangle with GNU nm
4501    # Also, AIX nm treats weak defined symbols like other global defined
4502    # symbols, whereas GNU nm marks them as "W".
4503    if $NM -V 2>&1 | $GREP 'GNU' > /dev/null; then
4504      _LT_TAGVAR(export_symbols_cmds, $1)='$NM -Bpg $libobjs $convenience | awk '\''{ if (((\$ 2 == "T") || (\$ 2 == "D") || (\$ 2 == "B") || (\$ 2 == "W")) && ([substr](\$ 3,1,1) != ".")) { print \$ 3 } }'\'' | sort -u > $export_symbols'
4505    else
4506      _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'
4507    fi
4508    ;;
4509  pw32*)
4510    _LT_TAGVAR(export_symbols_cmds, $1)="$ltdll_cmds"
4511    ;;
4512  cygwin* | mingw* | cegcc*)
4513    case $cc_basename in
4514    cl*) ;;
4515    *)
4516      _LT_TAGVAR(export_symbols_cmds, $1)='$NM $libobjs $convenience | $global_symbol_pipe | $SED -e '\''/^[[BCDGRS]][[ ]]/s/.*[[ ]]\([[^ ]]*\)/\1 DATA/;s/^.*[[ ]]__nm__\([[^ ]]*\)[[ ]][[^ ]]*/\1 DATA/;/^I[[ ]]/d;/^[[AITW]][[ ]]/s/.* //'\'' | sort | uniq > $export_symbols'
4517      _LT_TAGVAR(exclude_expsyms, $1)=['[_]+GLOBAL_OFFSET_TABLE_|[_]+GLOBAL__[FID]_.*|[_]+head_[A-Za-z0-9_]+_dll|[A-Za-z0-9_]+_dll_iname']
4518      ;;
4519    esac
4520    ;;
4521  *)
4522    _LT_TAGVAR(export_symbols_cmds, $1)='$NM $libobjs $convenience | $global_symbol_pipe | $SED '\''s/.* //'\'' | sort | uniq > $export_symbols'
4523    ;;
4524  esac
4525], [
4526  runpath_var=
4527  _LT_TAGVAR(allow_undefined_flag, $1)=
4528  _LT_TAGVAR(always_export_symbols, $1)=no
4529  _LT_TAGVAR(archive_cmds, $1)=
4530  _LT_TAGVAR(archive_expsym_cmds, $1)=
4531  _LT_TAGVAR(compiler_needs_object, $1)=no
4532  _LT_TAGVAR(enable_shared_with_static_runtimes, $1)=no
4533  _LT_TAGVAR(export_dynamic_flag_spec, $1)=
4534  _LT_TAGVAR(export_symbols_cmds, $1)='$NM $libobjs $convenience | $global_symbol_pipe | $SED '\''s/.* //'\'' | sort | uniq > $export_symbols'
4535  _LT_TAGVAR(hardcode_automatic, $1)=no
4536  _LT_TAGVAR(hardcode_direct, $1)=no
4537  _LT_TAGVAR(hardcode_direct_absolute, $1)=no
4538  _LT_TAGVAR(hardcode_libdir_flag_spec, $1)=
4539  _LT_TAGVAR(hardcode_libdir_flag_spec_ld, $1)=
4540  _LT_TAGVAR(hardcode_libdir_separator, $1)=
4541  _LT_TAGVAR(hardcode_minus_L, $1)=no
4542  _LT_TAGVAR(hardcode_shlibpath_var, $1)=unsupported
4543  _LT_TAGVAR(inherit_rpath, $1)=no
4544  _LT_TAGVAR(link_all_deplibs, $1)=unknown
4545  _LT_TAGVAR(module_cmds, $1)=
4546  _LT_TAGVAR(module_expsym_cmds, $1)=
4547  _LT_TAGVAR(old_archive_from_new_cmds, $1)=
4548  _LT_TAGVAR(old_archive_from_expsyms_cmds, $1)=
4549  _LT_TAGVAR(thread_safe_flag_spec, $1)=
4550  _LT_TAGVAR(whole_archive_flag_spec, $1)=
4551  # include_expsyms should be a list of space-separated symbols to be *always*
4552  # included in the symbol list
4553  _LT_TAGVAR(include_expsyms, $1)=
4554  # exclude_expsyms can be an extended regexp of symbols to exclude
4555  # it will be wrapped by ` (' and `)$', so one must not match beginning or
4556  # end of line.  Example: `a|bc|.*d.*' will exclude the symbols `a' and `bc',
4557  # as well as any symbol that contains `d'.
4558  _LT_TAGVAR(exclude_expsyms, $1)=['_GLOBAL_OFFSET_TABLE_|_GLOBAL__F[ID]_.*']
4559  # Although _GLOBAL_OFFSET_TABLE_ is a valid symbol C name, most a.out
4560  # platforms (ab)use it in PIC code, but their linkers get confused if
4561  # the symbol is explicitly referenced.  Since portable code cannot
4562  # rely on this symbol name, it's probably fine to never include it in
4563  # preloaded symbol tables.
4564  # Exclude shared library initialization/finalization symbols.
4565dnl Note also adjust exclude_expsyms for C++ above.
4566  extract_expsyms_cmds=
4567
4568  case $host_os in
4569  cygwin* | mingw* | pw32* | cegcc*)
4570    # FIXME: the MSVC++ port hasn't been tested in a loooong time
4571    # When not using gcc, we currently assume that we are using
4572    # Microsoft Visual C++.
4573    if test "$GCC" != yes; then
4574      with_gnu_ld=no
4575    fi
4576    ;;
4577  interix*)
4578    # we just hope/assume this is gcc and not c89 (= MSVC++)
4579    with_gnu_ld=yes
4580    ;;
4581  openbsd*)
4582    with_gnu_ld=no
4583    ;;
4584  esac
4585
4586  _LT_TAGVAR(ld_shlibs, $1)=yes
4587
4588  # On some targets, GNU ld is compatible enough with the native linker
4589  # that we're better off using the native interface for both.
4590  lt_use_gnu_ld_interface=no
4591  if test "$with_gnu_ld" = yes; then
4592    case $host_os in
4593      aix*)
4594	# The AIX port of GNU ld has always aspired to compatibility
4595	# with the native linker.  However, as the warning in the GNU ld
4596	# block says, versions before 2.19.5* couldn't really create working
4597	# shared libraries, regardless of the interface used.
4598	case `$LD -v 2>&1` in
4599	  *\ \(GNU\ Binutils\)\ 2.19.5*) ;;
4600	  *\ \(GNU\ Binutils\)\ 2.[[2-9]]*) ;;
4601	  *\ \(GNU\ Binutils\)\ [[3-9]]*) ;;
4602	  *)
4603	    lt_use_gnu_ld_interface=yes
4604	    ;;
4605	esac
4606	;;
4607      *)
4608	lt_use_gnu_ld_interface=yes
4609	;;
4610    esac
4611  fi
4612
4613  if test "$lt_use_gnu_ld_interface" = yes; then
4614    # If archive_cmds runs LD, not CC, wlarc should be empty
4615    wlarc='${wl}'
4616
4617    # Set some defaults for GNU ld with shared library support. These
4618    # are reset later if shared libraries are not supported. Putting them
4619    # here allows them to be overridden if necessary.
4620    runpath_var=LD_RUN_PATH
4621    _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath ${wl}$libdir'
4622    _LT_TAGVAR(export_dynamic_flag_spec, $1)='${wl}--export-dynamic'
4623    # ancient GNU ld didn't support --whole-archive et. al.
4624    if $LD --help 2>&1 | $GREP 'no-whole-archive' > /dev/null; then
4625      _LT_TAGVAR(whole_archive_flag_spec, $1)="$wlarc"'--whole-archive$convenience '"$wlarc"'--no-whole-archive'
4626    else
4627      _LT_TAGVAR(whole_archive_flag_spec, $1)=
4628    fi
4629    supports_anon_versioning=no
4630    case `$LD -v 2>&1` in
4631      *GNU\ gold*) supports_anon_versioning=yes ;;
4632      *\ [[01]].* | *\ 2.[[0-9]].* | *\ 2.10.*) ;; # catch versions < 2.11
4633      *\ 2.11.93.0.2\ *) supports_anon_versioning=yes ;; # RH7.3 ...
4634      *\ 2.11.92.0.12\ *) supports_anon_versioning=yes ;; # Mandrake 8.2 ...
4635      *\ 2.11.*) ;; # other 2.11 versions
4636      *) supports_anon_versioning=yes ;;
4637    esac
4638
4639    # See if GNU ld supports shared libraries.
4640    case $host_os in
4641    aix[[3-9]]*)
4642      # On AIX/PPC, the GNU linker is very broken
4643      if test "$host_cpu" != ia64; then
4644	_LT_TAGVAR(ld_shlibs, $1)=no
4645	cat <<_LT_EOF 1>&2
4646
4647*** Warning: the GNU linker, at least up to release 2.19, is reported
4648*** to be unable to reliably create shared libraries on AIX.
4649*** Therefore, libtool is disabling shared libraries support.  If you
4650*** really care for shared libraries, you may want to install binutils
4651*** 2.20 or above, or modify your PATH so that a non-GNU linker is found.
4652*** You will then need to restart the configuration process.
4653
4654_LT_EOF
4655      fi
4656      ;;
4657
4658    amigaos*)
4659      case $host_cpu in
4660      powerpc)
4661            # see comment about AmigaOS4 .so support
4662            _LT_TAGVAR(archive_cmds, $1)='$CC -shared $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname -o $lib'
4663            _LT_TAGVAR(archive_expsym_cmds, $1)=''
4664        ;;
4665      m68k)
4666            _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)'
4667            _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-L$libdir'
4668            _LT_TAGVAR(hardcode_minus_L, $1)=yes
4669        ;;
4670      esac
4671      ;;
4672
4673    beos*)
4674      if $LD --help 2>&1 | $GREP ': supported targets:.* elf' > /dev/null; then
4675	_LT_TAGVAR(allow_undefined_flag, $1)=unsupported
4676	# Joseph Beckenbach <jrb3@best.com> says some releases of gcc
4677	# support --undefined.  This deserves some investigation.  FIXME
4678	_LT_TAGVAR(archive_cmds, $1)='$CC -nostart $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname -o $lib'
4679      else
4680	_LT_TAGVAR(ld_shlibs, $1)=no
4681      fi
4682      ;;
4683
4684    cygwin* | mingw* | pw32* | cegcc*)
4685      # _LT_TAGVAR(hardcode_libdir_flag_spec, $1) is actually meaningless,
4686      # as there is no search path for DLLs.
4687      _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-L$libdir'
4688      _LT_TAGVAR(export_dynamic_flag_spec, $1)='${wl}--export-all-symbols'
4689      _LT_TAGVAR(allow_undefined_flag, $1)=unsupported
4690      _LT_TAGVAR(always_export_symbols, $1)=no
4691      _LT_TAGVAR(enable_shared_with_static_runtimes, $1)=yes
4692      _LT_TAGVAR(export_symbols_cmds, $1)='$NM $libobjs $convenience | $global_symbol_pipe | $SED -e '\''/^[[BCDGRS]][[ ]]/s/.*[[ ]]\([[^ ]]*\)/\1 DATA/;s/^.*[[ ]]__nm__\([[^ ]]*\)[[ ]][[^ ]]*/\1 DATA/;/^I[[ ]]/d;/^[[AITW]][[ ]]/s/.* //'\'' | sort | uniq > $export_symbols'
4693      _LT_TAGVAR(exclude_expsyms, $1)=['[_]+GLOBAL_OFFSET_TABLE_|[_]+GLOBAL__[FID]_.*|[_]+head_[A-Za-z0-9_]+_dll|[A-Za-z0-9_]+_dll_iname']
4694
4695      if $LD --help 2>&1 | $GREP 'auto-import' > /dev/null; then
4696        _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'
4697	# If the export-symbols file already is a .def file (1st line
4698	# is EXPORTS), use it as is; otherwise, prepend...
4699	_LT_TAGVAR(archive_expsym_cmds, $1)='if test "x`$SED 1q $export_symbols`" = xEXPORTS; then
4700	  cp $export_symbols $output_objdir/$soname.def;
4701	else
4702	  echo EXPORTS > $output_objdir/$soname.def;
4703	  cat $export_symbols >> $output_objdir/$soname.def;
4704	fi~
4705	$CC -shared $output_objdir/$soname.def $libobjs $deplibs $compiler_flags -o $output_objdir/$soname ${wl}--enable-auto-image-base -Xlinker --out-implib -Xlinker $lib'
4706      else
4707	_LT_TAGVAR(ld_shlibs, $1)=no
4708      fi
4709      ;;
4710
4711    haiku*)
4712      _LT_TAGVAR(archive_cmds, $1)='$CC -shared $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname -o $lib'
4713      _LT_TAGVAR(link_all_deplibs, $1)=yes
4714      ;;
4715
4716    interix[[3-9]]*)
4717      _LT_TAGVAR(hardcode_direct, $1)=no
4718      _LT_TAGVAR(hardcode_shlibpath_var, $1)=no
4719      _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath,$libdir'
4720      _LT_TAGVAR(export_dynamic_flag_spec, $1)='${wl}-E'
4721      # Hack: On Interix 3.x, we cannot compile PIC because of a broken gcc.
4722      # Instead, shared libraries are loaded at an image base (0x10000000 by
4723      # default) and relocated if they conflict, which is a slow very memory
4724      # consuming and fragmenting process.  To avoid this, we pick a random,
4725      # 256 KiB-aligned image base between 0x50000000 and 0x6FFC0000 at link
4726      # time.  Moving up from 0x10000000 also allows more sbrk(2) space.
4727      _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'
4728      _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'
4729      ;;
4730
4731    gnu* | linux* | tpf* | k*bsd*-gnu | kopensolaris*-gnu)
4732      tmp_diet=no
4733      if test "$host_os" = linux-dietlibc; then
4734	case $cc_basename in
4735	  diet\ *) tmp_diet=yes;;	# linux-dietlibc with static linking (!diet-dyn)
4736	esac
4737      fi
4738      if $LD --help 2>&1 | $EGREP ': supported targets:.* elf' > /dev/null \
4739	 && test "$tmp_diet" = no
4740      then
4741	tmp_addflag=' $pic_flag'
4742	tmp_sharedflag='-shared'
4743	case $cc_basename,$host_cpu in
4744        pgcc*)				# Portland Group C compiler
4745	  _LT_TAGVAR(whole_archive_flag_spec, $1)='${wl}--whole-archive`for conv in $convenience\"\"; do test  -n \"$conv\" && new_convenience=\"$new_convenience,$conv\"; done; func_echo_all \"$new_convenience\"` ${wl}--no-whole-archive'
4746	  tmp_addflag=' $pic_flag'
4747	  ;;
4748	pgf77* | pgf90* | pgf95* | pgfortran*)
4749					# Portland Group f77 and f90 compilers
4750	  _LT_TAGVAR(whole_archive_flag_spec, $1)='${wl}--whole-archive`for conv in $convenience\"\"; do test  -n \"$conv\" && new_convenience=\"$new_convenience,$conv\"; done; func_echo_all \"$new_convenience\"` ${wl}--no-whole-archive'
4751	  tmp_addflag=' $pic_flag -Mnomain' ;;
4752	ecc*,ia64* | icc*,ia64*)	# Intel C compiler on ia64
4753	  tmp_addflag=' -i_dynamic' ;;
4754	efc*,ia64* | ifort*,ia64*)	# Intel Fortran compiler on ia64
4755	  tmp_addflag=' -i_dynamic -nofor_main' ;;
4756	ifc* | ifort*)			# Intel Fortran compiler
4757	  tmp_addflag=' -nofor_main' ;;
4758	lf95*)				# Lahey Fortran 8.1
4759	  _LT_TAGVAR(whole_archive_flag_spec, $1)=
4760	  tmp_sharedflag='--shared' ;;
4761	xl[[cC]]* | bgxl[[cC]]* | mpixl[[cC]]*) # IBM XL C 8.0 on PPC (deal with xlf below)
4762	  tmp_sharedflag='-qmkshrobj'
4763	  tmp_addflag= ;;
4764	nvcc*)	# Cuda Compiler Driver 2.2
4765	  _LT_TAGVAR(whole_archive_flag_spec, $1)='${wl}--whole-archive`for conv in $convenience\"\"; do test  -n \"$conv\" && new_convenience=\"$new_convenience,$conv\"; done; func_echo_all \"$new_convenience\"` ${wl}--no-whole-archive'
4766	  _LT_TAGVAR(compiler_needs_object, $1)=yes
4767	  ;;
4768	esac
4769	case `$CC -V 2>&1 | sed 5q` in
4770	*Sun\ C*)			# Sun C 5.9
4771	  _LT_TAGVAR(whole_archive_flag_spec, $1)='${wl}--whole-archive`new_convenience=; for conv in $convenience\"\"; do test -z \"$conv\" || new_convenience=\"$new_convenience,$conv\"; done; func_echo_all \"$new_convenience\"` ${wl}--no-whole-archive'
4772	  _LT_TAGVAR(compiler_needs_object, $1)=yes
4773	  tmp_sharedflag='-G' ;;
4774	*Sun\ F*)			# Sun Fortran 8.3
4775	  tmp_sharedflag='-G' ;;
4776	esac
4777	_LT_TAGVAR(archive_cmds, $1)='$CC '"$tmp_sharedflag""$tmp_addflag"' $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname -o $lib'
4778
4779        if test "x$supports_anon_versioning" = xyes; then
4780          _LT_TAGVAR(archive_expsym_cmds, $1)='echo "{ global:" > $output_objdir/$libname.ver~
4781	    cat $export_symbols | sed -e "s/\(.*\)/\1;/" >> $output_objdir/$libname.ver~
4782	    echo "local: *; };" >> $output_objdir/$libname.ver~
4783	    $CC '"$tmp_sharedflag""$tmp_addflag"' $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname ${wl}-version-script ${wl}$output_objdir/$libname.ver -o $lib'
4784        fi
4785
4786	case $cc_basename in
4787	xlf* | bgf* | bgxlf* | mpixlf*)
4788	  # IBM XL Fortran 10.1 on PPC cannot create shared libs itself
4789	  _LT_TAGVAR(whole_archive_flag_spec, $1)='--whole-archive$convenience --no-whole-archive'
4790	  _LT_TAGVAR(hardcode_libdir_flag_spec, $1)=
4791	  _LT_TAGVAR(hardcode_libdir_flag_spec_ld, $1)='-rpath $libdir'
4792	  _LT_TAGVAR(archive_cmds, $1)='$LD -shared $libobjs $deplibs $linker_flags -soname $soname -o $lib'
4793	  if test "x$supports_anon_versioning" = xyes; then
4794	    _LT_TAGVAR(archive_expsym_cmds, $1)='echo "{ global:" > $output_objdir/$libname.ver~
4795	      cat $export_symbols | sed -e "s/\(.*\)/\1;/" >> $output_objdir/$libname.ver~
4796	      echo "local: *; };" >> $output_objdir/$libname.ver~
4797	      $LD -shared $libobjs $deplibs $linker_flags -soname $soname -version-script $output_objdir/$libname.ver -o $lib'
4798	  fi
4799	  ;;
4800	esac
4801      else
4802        _LT_TAGVAR(ld_shlibs, $1)=no
4803      fi
4804      ;;
4805
4806    netbsd*)
4807      if echo __ELF__ | $CC -E - | $GREP __ELF__ >/dev/null; then
4808	_LT_TAGVAR(archive_cmds, $1)='$LD -Bshareable $libobjs $deplibs $linker_flags -o $lib'
4809	wlarc=
4810      else
4811	_LT_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname -o $lib'
4812	_LT_TAGVAR(archive_expsym_cmds, $1)='$CC -shared $pic_flag $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname ${wl}-retain-symbols-file $wl$export_symbols -o $lib'
4813      fi
4814      ;;
4815
4816    solaris*)
4817      if $LD -v 2>&1 | $GREP 'BFD 2\.8' > /dev/null; then
4818	_LT_TAGVAR(ld_shlibs, $1)=no
4819	cat <<_LT_EOF 1>&2
4820
4821*** Warning: The releases 2.8.* of the GNU linker cannot reliably
4822*** create shared libraries on Solaris systems.  Therefore, libtool
4823*** is disabling shared libraries support.  We urge you to upgrade GNU
4824*** binutils to release 2.9.1 or newer.  Another option is to modify
4825*** your PATH or compiler configuration so that the native linker is
4826*** used, and then restart.
4827
4828_LT_EOF
4829      elif $LD --help 2>&1 | $GREP ': supported targets:.* elf' > /dev/null; then
4830	_LT_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname -o $lib'
4831	_LT_TAGVAR(archive_expsym_cmds, $1)='$CC -shared $pic_flag $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname ${wl}-retain-symbols-file $wl$export_symbols -o $lib'
4832      else
4833	_LT_TAGVAR(ld_shlibs, $1)=no
4834      fi
4835      ;;
4836
4837    sysv5* | sco3.2v5* | sco5v6* | unixware* | OpenUNIX*)
4838      case `$LD -v 2>&1` in
4839        *\ [[01]].* | *\ 2.[[0-9]].* | *\ 2.1[[0-5]].*)
4840	_LT_TAGVAR(ld_shlibs, $1)=no
4841	cat <<_LT_EOF 1>&2
4842
4843*** Warning: Releases of the GNU linker prior to 2.16.91.0.3 can not
4844*** reliably create shared libraries on SCO systems.  Therefore, libtool
4845*** is disabling shared libraries support.  We urge you to upgrade GNU
4846*** binutils to release 2.16.91.0.3 or newer.  Another option is to modify
4847*** your PATH or compiler configuration so that the native linker is
4848*** used, and then restart.
4849
4850_LT_EOF
4851	;;
4852	*)
4853	  # For security reasons, it is highly recommended that you always
4854	  # use absolute paths for naming shared libraries, and exclude the
4855	  # DT_RUNPATH tag from executables and libraries.  But doing so
4856	  # requires that you compile everything twice, which is a pain.
4857	  if $LD --help 2>&1 | $GREP ': supported targets:.* elf' > /dev/null; then
4858	    _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath ${wl}$libdir'
4859	    _LT_TAGVAR(archive_cmds, $1)='$CC -shared $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname -o $lib'
4860	    _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'
4861	  else
4862	    _LT_TAGVAR(ld_shlibs, $1)=no
4863	  fi
4864	;;
4865      esac
4866      ;;
4867
4868    sunos4*)
4869      _LT_TAGVAR(archive_cmds, $1)='$LD -assert pure-text -Bshareable -o $lib $libobjs $deplibs $linker_flags'
4870      wlarc=
4871      _LT_TAGVAR(hardcode_direct, $1)=yes
4872      _LT_TAGVAR(hardcode_shlibpath_var, $1)=no
4873      ;;
4874
4875    *)
4876      if $LD --help 2>&1 | $GREP ': supported targets:.* elf' > /dev/null; then
4877	_LT_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname -o $lib'
4878	_LT_TAGVAR(archive_expsym_cmds, $1)='$CC -shared $pic_flag $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname ${wl}-retain-symbols-file $wl$export_symbols -o $lib'
4879      else
4880	_LT_TAGVAR(ld_shlibs, $1)=no
4881      fi
4882      ;;
4883    esac
4884
4885    if test "$_LT_TAGVAR(ld_shlibs, $1)" = no; then
4886      runpath_var=
4887      _LT_TAGVAR(hardcode_libdir_flag_spec, $1)=
4888      _LT_TAGVAR(export_dynamic_flag_spec, $1)=
4889      _LT_TAGVAR(whole_archive_flag_spec, $1)=
4890    fi
4891  else
4892    # PORTME fill in a description of your system's linker (not GNU ld)
4893    case $host_os in
4894    aix3*)
4895      _LT_TAGVAR(allow_undefined_flag, $1)=unsupported
4896      _LT_TAGVAR(always_export_symbols, $1)=yes
4897      _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'
4898      # Note: this linker hardcodes the directories in LIBPATH if there
4899      # are no directories specified by -L.
4900      _LT_TAGVAR(hardcode_minus_L, $1)=yes
4901      if test "$GCC" = yes && test -z "$lt_prog_compiler_static"; then
4902	# Neither direct hardcoding nor static linking is supported with a
4903	# broken collect2.
4904	_LT_TAGVAR(hardcode_direct, $1)=unsupported
4905      fi
4906      ;;
4907
4908    aix[[4-9]]*)
4909      if test "$host_cpu" = ia64; then
4910	# On IA64, the linker does run time linking by default, so we don't
4911	# have to do anything special.
4912	aix_use_runtimelinking=no
4913	exp_sym_flag='-Bexport'
4914	no_entry_flag=""
4915      else
4916	# If we're using GNU nm, then we don't want the "-C" option.
4917	# -C means demangle to AIX nm, but means don't demangle with GNU nm
4918	# Also, AIX nm treats weak defined symbols like other global
4919	# defined symbols, whereas GNU nm marks them as "W".
4920	if $NM -V 2>&1 | $GREP 'GNU' > /dev/null; then
4921	  _LT_TAGVAR(export_symbols_cmds, $1)='$NM -Bpg $libobjs $convenience | awk '\''{ if (((\$ 2 == "T") || (\$ 2 == "D") || (\$ 2 == "B") || (\$ 2 == "W")) && ([substr](\$ 3,1,1) != ".")) { print \$ 3 } }'\'' | sort -u > $export_symbols'
4922	else
4923	  _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'
4924	fi
4925	aix_use_runtimelinking=no
4926
4927	# Test if we are trying to use run time linking or normal
4928	# AIX style linking. If -brtl is somewhere in LDFLAGS, we
4929	# need to do runtime linking.
4930	case $host_os in aix4.[[23]]|aix4.[[23]].*|aix[[5-9]]*)
4931	  for ld_flag in $LDFLAGS; do
4932	  if (test $ld_flag = "-brtl" || test $ld_flag = "-Wl,-brtl"); then
4933	    aix_use_runtimelinking=yes
4934	    break
4935	  fi
4936	  done
4937	  ;;
4938	esac
4939
4940	exp_sym_flag='-bexport'
4941	no_entry_flag='-bnoentry'
4942      fi
4943
4944      # When large executables or shared objects are built, AIX ld can
4945      # have problems creating the table of contents.  If linking a library
4946      # or program results in "error TOC overflow" add -mminimal-toc to
4947      # CXXFLAGS/CFLAGS for g++/gcc.  In the cases where that is not
4948      # enough to fix the problem, add -Wl,-bbigtoc to LDFLAGS.
4949
4950      _LT_TAGVAR(archive_cmds, $1)=''
4951      _LT_TAGVAR(hardcode_direct, $1)=yes
4952      _LT_TAGVAR(hardcode_direct_absolute, $1)=yes
4953      _LT_TAGVAR(hardcode_libdir_separator, $1)=':'
4954      _LT_TAGVAR(link_all_deplibs, $1)=yes
4955      _LT_TAGVAR(file_list_spec, $1)='${wl}-f,'
4956
4957      if test "$GCC" = yes; then
4958	case $host_os in aix4.[[012]]|aix4.[[012]].*)
4959	# We only want to do this on AIX 4.2 and lower, the check
4960	# below for broken collect2 doesn't work under 4.3+
4961	  collect2name=`${CC} -print-prog-name=collect2`
4962	  if test -f "$collect2name" &&
4963	   strings "$collect2name" | $GREP resolve_lib_name >/dev/null
4964	  then
4965	  # We have reworked collect2
4966	  :
4967	  else
4968	  # We have old collect2
4969	  _LT_TAGVAR(hardcode_direct, $1)=unsupported
4970	  # It fails to find uninstalled libraries when the uninstalled
4971	  # path is not listed in the libpath.  Setting hardcode_minus_L
4972	  # to unsupported forces relinking
4973	  _LT_TAGVAR(hardcode_minus_L, $1)=yes
4974	  _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-L$libdir'
4975	  _LT_TAGVAR(hardcode_libdir_separator, $1)=
4976	  fi
4977	  ;;
4978	esac
4979	shared_flag='-shared'
4980	if test "$aix_use_runtimelinking" = yes; then
4981	  shared_flag="$shared_flag "'${wl}-G'
4982	fi
4983      else
4984	# not using gcc
4985	if test "$host_cpu" = ia64; then
4986	# VisualAge C++, Version 5.5 for AIX 5L for IA-64, Beta 3 Release
4987	# chokes on -Wl,-G. The following line is correct:
4988	  shared_flag='-G'
4989	else
4990	  if test "$aix_use_runtimelinking" = yes; then
4991	    shared_flag='${wl}-G'
4992	  else
4993	    shared_flag='${wl}-bM:SRE'
4994	  fi
4995	fi
4996      fi
4997
4998      _LT_TAGVAR(export_dynamic_flag_spec, $1)='${wl}-bexpall'
4999      # It seems that -bexpall does not export symbols beginning with
5000      # underscore (_), so it is better to generate a list of symbols to export.
5001      _LT_TAGVAR(always_export_symbols, $1)=yes
5002      if test "$aix_use_runtimelinking" = yes; then
5003	# Warning - without using the other runtime loading flags (-brtl),
5004	# -berok will link without error, but may produce a broken library.
5005	_LT_TAGVAR(allow_undefined_flag, $1)='-berok'
5006        # Determine the default libpath from the value encoded in an
5007        # empty executable.
5008        _LT_SYS_MODULE_PATH_AIX([$1])
5009        _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-blibpath:$libdir:'"$aix_libpath"
5010        _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -o $output_objdir/$soname $libobjs $deplibs '"\${wl}$no_entry_flag"' $compiler_flags `if test "x${allow_undefined_flag}" != "x"; then func_echo_all "${wl}${allow_undefined_flag}"; else :; fi` '"\${wl}$exp_sym_flag:\$export_symbols $shared_flag"
5011      else
5012	if test "$host_cpu" = ia64; then
5013	  _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-R $libdir:/usr/lib:/lib'
5014	  _LT_TAGVAR(allow_undefined_flag, $1)="-z nodefs"
5015	  _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"
5016	else
5017	 # Determine the default libpath from the value encoded in an
5018	 # empty executable.
5019	 _LT_SYS_MODULE_PATH_AIX([$1])
5020	 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-blibpath:$libdir:'"$aix_libpath"
5021	  # Warning - without using the other run time loading flags,
5022	  # -berok will link without error, but may produce a broken library.
5023	  _LT_TAGVAR(no_undefined_flag, $1)=' ${wl}-bernotok'
5024	  _LT_TAGVAR(allow_undefined_flag, $1)=' ${wl}-berok'
5025	  if test "$with_gnu_ld" = yes; then
5026	    # We only use this code for GNU lds that support --whole-archive.
5027	    _LT_TAGVAR(whole_archive_flag_spec, $1)='${wl}--whole-archive$convenience ${wl}--no-whole-archive'
5028	  else
5029	    # Exported symbols can be pulled into shared objects from archives
5030	    _LT_TAGVAR(whole_archive_flag_spec, $1)='$convenience'
5031	  fi
5032	  _LT_TAGVAR(archive_cmds_need_lc, $1)=yes
5033	  # This is similar to how AIX traditionally builds its shared libraries.
5034	  _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'
5035	fi
5036      fi
5037      ;;
5038
5039    amigaos*)
5040      case $host_cpu in
5041      powerpc)
5042            # see comment about AmigaOS4 .so support
5043            _LT_TAGVAR(archive_cmds, $1)='$CC -shared $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname -o $lib'
5044            _LT_TAGVAR(archive_expsym_cmds, $1)=''
5045        ;;
5046      m68k)
5047            _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)'
5048            _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-L$libdir'
5049            _LT_TAGVAR(hardcode_minus_L, $1)=yes
5050        ;;
5051      esac
5052      ;;
5053
5054    bsdi[[45]]*)
5055      _LT_TAGVAR(export_dynamic_flag_spec, $1)=-rdynamic
5056      ;;
5057
5058    cygwin* | mingw* | pw32* | cegcc*)
5059      # When not using gcc, we currently assume that we are using
5060      # Microsoft Visual C++.
5061      # hardcode_libdir_flag_spec is actually meaningless, as there is
5062      # no search path for DLLs.
5063      case $cc_basename in
5064      cl*)
5065	# Native MSVC
5066	_LT_TAGVAR(hardcode_libdir_flag_spec, $1)=' '
5067	_LT_TAGVAR(allow_undefined_flag, $1)=unsupported
5068	_LT_TAGVAR(always_export_symbols, $1)=yes
5069	_LT_TAGVAR(file_list_spec, $1)='@'
5070	# Tell ltmain to make .lib files, not .a files.
5071	libext=lib
5072	# Tell ltmain to make .dll files, not .so files.
5073	shrext_cmds=".dll"
5074	# FIXME: Setting linknames here is a bad hack.
5075	_LT_TAGVAR(archive_cmds, $1)='$CC -o $output_objdir/$soname $libobjs $compiler_flags $deplibs -Wl,-dll~linknames='
5076	_LT_TAGVAR(archive_expsym_cmds, $1)='if test "x`$SED 1q $export_symbols`" = xEXPORTS; then
5077	    sed -n -e 's/\\\\\\\(.*\\\\\\\)/-link\\\ -EXPORT:\\\\\\\1/' -e '1\\\!p' < $export_symbols > $output_objdir/$soname.exp;
5078	  else
5079	    sed -e 's/\\\\\\\(.*\\\\\\\)/-link\\\ -EXPORT:\\\\\\\1/' < $export_symbols > $output_objdir/$soname.exp;
5080	  fi~
5081	  $CC -o $tool_output_objdir$soname $libobjs $compiler_flags $deplibs "@$tool_output_objdir$soname.exp" -Wl,-DLL,-IMPLIB:"$tool_output_objdir$libname.dll.lib"~
5082	  linknames='
5083	# The linker will not automatically build a static lib if we build a DLL.
5084	# _LT_TAGVAR(old_archive_from_new_cmds, $1)='true'
5085	_LT_TAGVAR(enable_shared_with_static_runtimes, $1)=yes
5086	_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'
5087	# Don't use ranlib
5088	_LT_TAGVAR(old_postinstall_cmds, $1)='chmod 644 $oldlib'
5089	_LT_TAGVAR(postlink_cmds, $1)='lt_outputfile="@OUTPUT@"~
5090	  lt_tool_outputfile="@TOOL_OUTPUT@"~
5091	  case $lt_outputfile in
5092	    *.exe|*.EXE) ;;
5093	    *)
5094	      lt_outputfile="$lt_outputfile.exe"
5095	      lt_tool_outputfile="$lt_tool_outputfile.exe"
5096	      ;;
5097	  esac~
5098	  if test "$MANIFEST_TOOL" != ":" && test -f "$lt_outputfile.manifest"; then
5099	    $MANIFEST_TOOL -manifest "$lt_tool_outputfile.manifest" -outputresource:"$lt_tool_outputfile" || exit 1;
5100	    $RM "$lt_outputfile.manifest";
5101	  fi'
5102	;;
5103      *)
5104	# Assume MSVC wrapper
5105	_LT_TAGVAR(hardcode_libdir_flag_spec, $1)=' '
5106	_LT_TAGVAR(allow_undefined_flag, $1)=unsupported
5107	# Tell ltmain to make .lib files, not .a files.
5108	libext=lib
5109	# Tell ltmain to make .dll files, not .so files.
5110	shrext_cmds=".dll"
5111	# FIXME: Setting linknames here is a bad hack.
5112	_LT_TAGVAR(archive_cmds, $1)='$CC -o $lib $libobjs $compiler_flags `func_echo_all "$deplibs" | $SED '\''s/ -lc$//'\''` -link -dll~linknames='
5113	# The linker will automatically build a .lib file if we build a DLL.
5114	_LT_TAGVAR(old_archive_from_new_cmds, $1)='true'
5115	# FIXME: Should let the user specify the lib program.
5116	_LT_TAGVAR(old_archive_cmds, $1)='lib -OUT:$oldlib$oldobjs$old_deplibs'
5117	_LT_TAGVAR(enable_shared_with_static_runtimes, $1)=yes
5118	;;
5119      esac
5120      ;;
5121
5122    darwin* | rhapsody*)
5123      _LT_DARWIN_LINKER_FEATURES($1)
5124      ;;
5125
5126    dgux*)
5127      _LT_TAGVAR(archive_cmds, $1)='$LD -G -h $soname -o $lib $libobjs $deplibs $linker_flags'
5128      _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-L$libdir'
5129      _LT_TAGVAR(hardcode_shlibpath_var, $1)=no
5130      ;;
5131
5132    freebsd1*)
5133      _LT_TAGVAR(ld_shlibs, $1)=no
5134      ;;
5135
5136    # FreeBSD 2.2.[012] allows us to include c++rt0.o to get C++ constructor
5137    # support.  Future versions do this automatically, but an explicit c++rt0.o
5138    # does not break anything, and helps significantly (at the cost of a little
5139    # extra space).
5140    freebsd2.2*)
5141      _LT_TAGVAR(archive_cmds, $1)='$LD -Bshareable -o $lib $libobjs $deplibs $linker_flags /usr/lib/c++rt0.o'
5142      _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-R$libdir'
5143      _LT_TAGVAR(hardcode_direct, $1)=yes
5144      _LT_TAGVAR(hardcode_shlibpath_var, $1)=no
5145      ;;
5146
5147    # Unfortunately, older versions of FreeBSD 2 do not have this feature.
5148    freebsd2*)
5149      _LT_TAGVAR(archive_cmds, $1)='$LD -Bshareable -o $lib $libobjs $deplibs $linker_flags'
5150      _LT_TAGVAR(hardcode_direct, $1)=yes
5151      _LT_TAGVAR(hardcode_minus_L, $1)=yes
5152      _LT_TAGVAR(hardcode_shlibpath_var, $1)=no
5153      ;;
5154
5155    # FreeBSD 3 and greater uses gcc -shared to do shared libraries.
5156    freebsd* | dragonfly*)
5157      _LT_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag -o $lib $libobjs $deplibs $compiler_flags'
5158      _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-R$libdir'
5159      _LT_TAGVAR(hardcode_direct, $1)=yes
5160      _LT_TAGVAR(hardcode_shlibpath_var, $1)=no
5161      ;;
5162
5163    hpux9*)
5164      if test "$GCC" = yes; then
5165	_LT_TAGVAR(archive_cmds, $1)='$RM $output_objdir/$soname~$CC -shared $pic_flag ${wl}+b ${wl}$install_libdir -o $output_objdir/$soname $libobjs $deplibs $compiler_flags~test $output_objdir/$soname = $lib || mv $output_objdir/$soname $lib'
5166      else
5167	_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'
5168      fi
5169      _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}+b ${wl}$libdir'
5170      _LT_TAGVAR(hardcode_libdir_separator, $1)=:
5171      _LT_TAGVAR(hardcode_direct, $1)=yes
5172
5173      # hardcode_minus_L: Not really in the search PATH,
5174      # but as the default location of the library.
5175      _LT_TAGVAR(hardcode_minus_L, $1)=yes
5176      _LT_TAGVAR(export_dynamic_flag_spec, $1)='${wl}-E'
5177      ;;
5178
5179    hpux10*)
5180      if test "$GCC" = yes && test "$with_gnu_ld" = no; then
5181	_LT_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag ${wl}+h ${wl}$soname ${wl}+b ${wl}$install_libdir -o $lib $libobjs $deplibs $compiler_flags'
5182      else
5183	_LT_TAGVAR(archive_cmds, $1)='$LD -b +h $soname +b $install_libdir -o $lib $libobjs $deplibs $linker_flags'
5184      fi
5185      if test "$with_gnu_ld" = no; then
5186	_LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}+b ${wl}$libdir'
5187	_LT_TAGVAR(hardcode_libdir_flag_spec_ld, $1)='+b $libdir'
5188	_LT_TAGVAR(hardcode_libdir_separator, $1)=:
5189	_LT_TAGVAR(hardcode_direct, $1)=yes
5190	_LT_TAGVAR(hardcode_direct_absolute, $1)=yes
5191	_LT_TAGVAR(export_dynamic_flag_spec, $1)='${wl}-E'
5192	# hardcode_minus_L: Not really in the search PATH,
5193	# but as the default location of the library.
5194	_LT_TAGVAR(hardcode_minus_L, $1)=yes
5195      fi
5196      ;;
5197
5198    hpux11*)
5199      if test "$GCC" = yes && test "$with_gnu_ld" = no; then
5200	case $host_cpu in
5201	hppa*64*)
5202	  _LT_TAGVAR(archive_cmds, $1)='$CC -shared ${wl}+h ${wl}$soname -o $lib $libobjs $deplibs $compiler_flags'
5203	  ;;
5204	ia64*)
5205	  _LT_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag ${wl}+h ${wl}$soname ${wl}+nodefaultrpath -o $lib $libobjs $deplibs $compiler_flags'
5206	  ;;
5207	*)
5208	  _LT_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag ${wl}+h ${wl}$soname ${wl}+b ${wl}$install_libdir -o $lib $libobjs $deplibs $compiler_flags'
5209	  ;;
5210	esac
5211      else
5212	case $host_cpu in
5213	hppa*64*)
5214	  _LT_TAGVAR(archive_cmds, $1)='$CC -b ${wl}+h ${wl}$soname -o $lib $libobjs $deplibs $compiler_flags'
5215	  ;;
5216	ia64*)
5217	  _LT_TAGVAR(archive_cmds, $1)='$CC -b ${wl}+h ${wl}$soname ${wl}+nodefaultrpath -o $lib $libobjs $deplibs $compiler_flags'
5218	  ;;
5219	*)
5220	m4_if($1, [], [
5221	  # Older versions of the 11.00 compiler do not understand -b yet
5222	  # (HP92453-01 A.11.01.20 doesn't, HP92453-01 B.11.X.35175-35176.GP does)
5223	  _LT_LINKER_OPTION([if $CC understands -b],
5224	    _LT_TAGVAR(lt_cv_prog_compiler__b, $1), [-b],
5225	    [_LT_TAGVAR(archive_cmds, $1)='$CC -b ${wl}+h ${wl}$soname ${wl}+b ${wl}$install_libdir -o $lib $libobjs $deplibs $compiler_flags'],
5226	    [_LT_TAGVAR(archive_cmds, $1)='$LD -b +h $soname +b $install_libdir -o $lib $libobjs $deplibs $linker_flags'])],
5227	  [_LT_TAGVAR(archive_cmds, $1)='$CC -b ${wl}+h ${wl}$soname ${wl}+b ${wl}$install_libdir -o $lib $libobjs $deplibs $compiler_flags'])
5228	  ;;
5229	esac
5230      fi
5231      if test "$with_gnu_ld" = no; then
5232	_LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}+b ${wl}$libdir'
5233	_LT_TAGVAR(hardcode_libdir_separator, $1)=:
5234
5235	case $host_cpu in
5236	hppa*64*|ia64*)
5237	  _LT_TAGVAR(hardcode_direct, $1)=no
5238	  _LT_TAGVAR(hardcode_shlibpath_var, $1)=no
5239	  ;;
5240	*)
5241	  _LT_TAGVAR(hardcode_direct, $1)=yes
5242	  _LT_TAGVAR(hardcode_direct_absolute, $1)=yes
5243	  _LT_TAGVAR(export_dynamic_flag_spec, $1)='${wl}-E'
5244
5245	  # hardcode_minus_L: Not really in the search PATH,
5246	  # but as the default location of the library.
5247	  _LT_TAGVAR(hardcode_minus_L, $1)=yes
5248	  ;;
5249	esac
5250      fi
5251      ;;
5252
5253    irix5* | irix6* | nonstopux*)
5254      if test "$GCC" = yes; then
5255	_LT_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag $libobjs $deplibs $compiler_flags ${wl}-soname ${wl}$soname `test -n "$verstring" && func_echo_all "${wl}-set_version ${wl}$verstring"` ${wl}-update_registry ${wl}${output_objdir}/so_locations -o $lib'
5256	# Try to use the -exported_symbol ld option, if it does not
5257	# work, assume that -exports_file does not work either and
5258	# implicitly export all symbols.
5259	# This should be the same for all languages, so no per-tag cache variable.
5260	AC_CACHE_CHECK([whether the $host_os linker accepts -exported_symbol],
5261	  [lt_cv_irix_exported_symbol],
5262	  [save_LDFLAGS="$LDFLAGS"
5263	   LDFLAGS="$LDFLAGS -shared ${wl}-exported_symbol ${wl}foo ${wl}-update_registry ${wl}/dev/null"
5264	   AC_LINK_IFELSE(
5265	     [AC_LANG_SOURCE(
5266	        [AC_LANG_CASE([C], [[int foo (void) { return 0; }]],
5267			      [C++], [[int foo (void) { return 0; }]],
5268			      [Fortran 77], [[
5269      subroutine foo
5270      end]],
5271			      [Fortran], [[
5272      subroutine foo
5273      end]])])],
5274	      [lt_cv_irix_exported_symbol=yes],
5275	      [lt_cv_irix_exported_symbol=no])
5276           LDFLAGS="$save_LDFLAGS"])
5277	if test "$lt_cv_irix_exported_symbol" = yes; then
5278          _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -shared $pic_flag $libobjs $deplibs $compiler_flags ${wl}-soname ${wl}$soname `test -n "$verstring" && func_echo_all "${wl}-set_version ${wl}$verstring"` ${wl}-update_registry ${wl}${output_objdir}/so_locations ${wl}-exports_file ${wl}$export_symbols -o $lib'
5279	fi
5280      else
5281	_LT_TAGVAR(archive_cmds, $1)='$CC -shared $libobjs $deplibs $compiler_flags -soname $soname `test -n "$verstring" && func_echo_all "-set_version $verstring"` -update_registry ${output_objdir}/so_locations -o $lib'
5282	_LT_TAGVAR(archive_expsym_cmds, $1)='$CC -shared $libobjs $deplibs $compiler_flags -soname $soname `test -n "$verstring" && func_echo_all "-set_version $verstring"` -update_registry ${output_objdir}/so_locations -exports_file $export_symbols -o $lib'
5283      fi
5284      _LT_TAGVAR(archive_cmds_need_lc, $1)='no'
5285      _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath ${wl}$libdir'
5286      _LT_TAGVAR(hardcode_libdir_separator, $1)=:
5287      _LT_TAGVAR(inherit_rpath, $1)=yes
5288      _LT_TAGVAR(link_all_deplibs, $1)=yes
5289      ;;
5290
5291    netbsd*)
5292      if echo __ELF__ | $CC -E - | $GREP __ELF__ >/dev/null; then
5293	_LT_TAGVAR(archive_cmds, $1)='$LD -Bshareable -o $lib $libobjs $deplibs $linker_flags'  # a.out
5294      else
5295	_LT_TAGVAR(archive_cmds, $1)='$LD -shared -o $lib $libobjs $deplibs $linker_flags'      # ELF
5296      fi
5297      _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-R$libdir'
5298      _LT_TAGVAR(hardcode_direct, $1)=yes
5299      _LT_TAGVAR(hardcode_shlibpath_var, $1)=no
5300      ;;
5301
5302    newsos6)
5303      _LT_TAGVAR(archive_cmds, $1)='$LD -G -h $soname -o $lib $libobjs $deplibs $linker_flags'
5304      _LT_TAGVAR(hardcode_direct, $1)=yes
5305      _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath ${wl}$libdir'
5306      _LT_TAGVAR(hardcode_libdir_separator, $1)=:
5307      _LT_TAGVAR(hardcode_shlibpath_var, $1)=no
5308      ;;
5309
5310    *nto* | *qnx*)
5311      ;;
5312
5313    openbsd*)
5314      if test -f /usr/libexec/ld.so; then
5315	_LT_TAGVAR(hardcode_direct, $1)=yes
5316	_LT_TAGVAR(hardcode_shlibpath_var, $1)=no
5317	_LT_TAGVAR(hardcode_direct_absolute, $1)=yes
5318	if test -z "`echo __ELF__ | $CC -E - | $GREP __ELF__`" || test "$host_os-$host_cpu" = "openbsd2.8-powerpc"; then
5319	  _LT_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag -o $lib $libobjs $deplibs $compiler_flags'
5320	  _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -shared $pic_flag -o $lib $libobjs $deplibs $compiler_flags ${wl}-retain-symbols-file,$export_symbols'
5321	  _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath,$libdir'
5322	  _LT_TAGVAR(export_dynamic_flag_spec, $1)='${wl}-E'
5323	else
5324	  case $host_os in
5325	   openbsd[[01]].* | openbsd2.[[0-7]] | openbsd2.[[0-7]].*)
5326	     _LT_TAGVAR(archive_cmds, $1)='$LD -Bshareable -o $lib $libobjs $deplibs $linker_flags'
5327	     _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-R$libdir'
5328	     ;;
5329	   *)
5330	     _LT_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag -o $lib $libobjs $deplibs $compiler_flags'
5331	     _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath,$libdir'
5332	     ;;
5333	  esac
5334	fi
5335      else
5336	_LT_TAGVAR(ld_shlibs, $1)=no
5337      fi
5338      ;;
5339
5340    os2*)
5341      _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-L$libdir'
5342      _LT_TAGVAR(hardcode_minus_L, $1)=yes
5343      _LT_TAGVAR(allow_undefined_flag, $1)=unsupported
5344      _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'
5345      _LT_TAGVAR(old_archive_from_new_cmds, $1)='emximp -o $output_objdir/$libname.a $output_objdir/$libname.def'
5346      ;;
5347
5348    osf3*)
5349      if test "$GCC" = yes; then
5350	_LT_TAGVAR(allow_undefined_flag, $1)=' ${wl}-expect_unresolved ${wl}\*'
5351	_LT_TAGVAR(archive_cmds, $1)='$CC -shared${allow_undefined_flag} $libobjs $deplibs $compiler_flags ${wl}-soname ${wl}$soname `test -n "$verstring" && func_echo_all "${wl}-set_version ${wl}$verstring"` ${wl}-update_registry ${wl}${output_objdir}/so_locations -o $lib'
5352      else
5353	_LT_TAGVAR(allow_undefined_flag, $1)=' -expect_unresolved \*'
5354	_LT_TAGVAR(archive_cmds, $1)='$CC -shared${allow_undefined_flag} $libobjs $deplibs $compiler_flags -soname $soname `test -n "$verstring" && func_echo_all "-set_version $verstring"` -update_registry ${output_objdir}/so_locations -o $lib'
5355      fi
5356      _LT_TAGVAR(archive_cmds_need_lc, $1)='no'
5357      _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath ${wl}$libdir'
5358      _LT_TAGVAR(hardcode_libdir_separator, $1)=:
5359      ;;
5360
5361    osf4* | osf5*)	# as osf3* with the addition of -msym flag
5362      if test "$GCC" = yes; then
5363	_LT_TAGVAR(allow_undefined_flag, $1)=' ${wl}-expect_unresolved ${wl}\*'
5364	_LT_TAGVAR(archive_cmds, $1)='$CC -shared${allow_undefined_flag} $pic_flag $libobjs $deplibs $compiler_flags ${wl}-msym ${wl}-soname ${wl}$soname `test -n "$verstring" && func_echo_all "${wl}-set_version ${wl}$verstring"` ${wl}-update_registry ${wl}${output_objdir}/so_locations -o $lib'
5365	_LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath ${wl}$libdir'
5366      else
5367	_LT_TAGVAR(allow_undefined_flag, $1)=' -expect_unresolved \*'
5368	_LT_TAGVAR(archive_cmds, $1)='$CC -shared${allow_undefined_flag} $libobjs $deplibs $compiler_flags -msym -soname $soname `test -n "$verstring" && func_echo_all "-set_version $verstring"` -update_registry ${output_objdir}/so_locations -o $lib'
5369	_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~
5370	$CC -shared${allow_undefined_flag} ${wl}-input ${wl}$lib.exp $compiler_flags $libobjs $deplibs -soname $soname `test -n "$verstring" && $ECHO "-set_version $verstring"` -update_registry ${output_objdir}/so_locations -o $lib~$RM $lib.exp'
5371
5372	# Both c and cxx compiler support -rpath directly
5373	_LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-rpath $libdir'
5374      fi
5375      _LT_TAGVAR(archive_cmds_need_lc, $1)='no'
5376      _LT_TAGVAR(hardcode_libdir_separator, $1)=:
5377      ;;
5378
5379    solaris*)
5380      _LT_TAGVAR(no_undefined_flag, $1)=' -z defs'
5381      if test "$GCC" = yes; then
5382	wlarc='${wl}'
5383	_LT_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag ${wl}-z ${wl}text ${wl}-h ${wl}$soname -o $lib $libobjs $deplibs $compiler_flags'
5384	_LT_TAGVAR(archive_expsym_cmds, $1)='echo "{ global:" > $lib.exp~cat $export_symbols | $SED -e "s/\(.*\)/\1;/" >> $lib.exp~echo "local: *; };" >> $lib.exp~
5385	  $CC -shared $pic_flag ${wl}-z ${wl}text ${wl}-M ${wl}$lib.exp ${wl}-h ${wl}$soname -o $lib $libobjs $deplibs $compiler_flags~$RM $lib.exp'
5386      else
5387	case `$CC -V 2>&1` in
5388	*"Compilers 5.0"*)
5389	  wlarc=''
5390	  _LT_TAGVAR(archive_cmds, $1)='$LD -G${allow_undefined_flag} -h $soname -o $lib $libobjs $deplibs $linker_flags'
5391	  _LT_TAGVAR(archive_expsym_cmds, $1)='echo "{ global:" > $lib.exp~cat $export_symbols | $SED -e "s/\(.*\)/\1;/" >> $lib.exp~echo "local: *; };" >> $lib.exp~
5392	  $LD -G${allow_undefined_flag} -M $lib.exp -h $soname -o $lib $libobjs $deplibs $linker_flags~$RM $lib.exp'
5393	  ;;
5394	*)
5395	  wlarc='${wl}'
5396	  _LT_TAGVAR(archive_cmds, $1)='$CC -G${allow_undefined_flag} -h $soname -o $lib $libobjs $deplibs $compiler_flags'
5397	  _LT_TAGVAR(archive_expsym_cmds, $1)='echo "{ global:" > $lib.exp~cat $export_symbols | $SED -e "s/\(.*\)/\1;/" >> $lib.exp~echo "local: *; };" >> $lib.exp~
5398	  $CC -G${allow_undefined_flag} -M $lib.exp -h $soname -o $lib $libobjs $deplibs $compiler_flags~$RM $lib.exp'
5399	  ;;
5400	esac
5401      fi
5402      _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-R$libdir'
5403      _LT_TAGVAR(hardcode_shlibpath_var, $1)=no
5404      case $host_os in
5405      solaris2.[[0-5]] | solaris2.[[0-5]].*) ;;
5406      *)
5407	# The compiler driver will combine and reorder linker options,
5408	# but understands `-z linker_flag'.  GCC discards it without `$wl',
5409	# but is careful enough not to reorder.
5410	# Supported since Solaris 2.6 (maybe 2.5.1?)
5411	if test "$GCC" = yes; then
5412	  _LT_TAGVAR(whole_archive_flag_spec, $1)='${wl}-z ${wl}allextract$convenience ${wl}-z ${wl}defaultextract'
5413	else
5414	  _LT_TAGVAR(whole_archive_flag_spec, $1)='-z allextract$convenience -z defaultextract'
5415	fi
5416	;;
5417      esac
5418      _LT_TAGVAR(link_all_deplibs, $1)=yes
5419      ;;
5420
5421    sunos4*)
5422      if test "x$host_vendor" = xsequent; then
5423	# Use $CC to link under sequent, because it throws in some extra .o
5424	# files that make .init and .fini sections work.
5425	_LT_TAGVAR(archive_cmds, $1)='$CC -G ${wl}-h $soname -o $lib $libobjs $deplibs $compiler_flags'
5426      else
5427	_LT_TAGVAR(archive_cmds, $1)='$LD -assert pure-text -Bstatic -o $lib $libobjs $deplibs $linker_flags'
5428      fi
5429      _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-L$libdir'
5430      _LT_TAGVAR(hardcode_direct, $1)=yes
5431      _LT_TAGVAR(hardcode_minus_L, $1)=yes
5432      _LT_TAGVAR(hardcode_shlibpath_var, $1)=no
5433      ;;
5434
5435    sysv4)
5436      case $host_vendor in
5437	sni)
5438	  _LT_TAGVAR(archive_cmds, $1)='$LD -G -h $soname -o $lib $libobjs $deplibs $linker_flags'
5439	  _LT_TAGVAR(hardcode_direct, $1)=yes # is this really true???
5440	;;
5441	siemens)
5442	  ## LD is ld it makes a PLAMLIB
5443	  ## CC just makes a GrossModule.
5444	  _LT_TAGVAR(archive_cmds, $1)='$LD -G -o $lib $libobjs $deplibs $linker_flags'
5445	  _LT_TAGVAR(reload_cmds, $1)='$CC -r -o $output$reload_objs'
5446	  _LT_TAGVAR(hardcode_direct, $1)=no
5447        ;;
5448	motorola)
5449	  _LT_TAGVAR(archive_cmds, $1)='$LD -G -h $soname -o $lib $libobjs $deplibs $linker_flags'
5450	  _LT_TAGVAR(hardcode_direct, $1)=no #Motorola manual says yes, but my tests say they lie
5451	;;
5452      esac
5453      runpath_var='LD_RUN_PATH'
5454      _LT_TAGVAR(hardcode_shlibpath_var, $1)=no
5455      ;;
5456
5457    sysv4.3*)
5458      _LT_TAGVAR(archive_cmds, $1)='$LD -G -h $soname -o $lib $libobjs $deplibs $linker_flags'
5459      _LT_TAGVAR(hardcode_shlibpath_var, $1)=no
5460      _LT_TAGVAR(export_dynamic_flag_spec, $1)='-Bexport'
5461      ;;
5462
5463    sysv4*MP*)
5464      if test -d /usr/nec; then
5465	_LT_TAGVAR(archive_cmds, $1)='$LD -G -h $soname -o $lib $libobjs $deplibs $linker_flags'
5466	_LT_TAGVAR(hardcode_shlibpath_var, $1)=no
5467	runpath_var=LD_RUN_PATH
5468	hardcode_runpath_var=yes
5469	_LT_TAGVAR(ld_shlibs, $1)=yes
5470      fi
5471      ;;
5472
5473    sysv4*uw2* | sysv5OpenUNIX* | sysv5UnixWare7.[[01]].[[10]]* | unixware7* | sco3.2v5.0.[[024]]*)
5474      _LT_TAGVAR(no_undefined_flag, $1)='${wl}-z,text'
5475      _LT_TAGVAR(archive_cmds_need_lc, $1)=no
5476      _LT_TAGVAR(hardcode_shlibpath_var, $1)=no
5477      runpath_var='LD_RUN_PATH'
5478
5479      if test "$GCC" = yes; then
5480	_LT_TAGVAR(archive_cmds, $1)='$CC -shared ${wl}-h,$soname -o $lib $libobjs $deplibs $compiler_flags'
5481	_LT_TAGVAR(archive_expsym_cmds, $1)='$CC -shared ${wl}-Bexport:$export_symbols ${wl}-h,$soname -o $lib $libobjs $deplibs $compiler_flags'
5482      else
5483	_LT_TAGVAR(archive_cmds, $1)='$CC -G ${wl}-h,$soname -o $lib $libobjs $deplibs $compiler_flags'
5484	_LT_TAGVAR(archive_expsym_cmds, $1)='$CC -G ${wl}-Bexport:$export_symbols ${wl}-h,$soname -o $lib $libobjs $deplibs $compiler_flags'
5485      fi
5486      ;;
5487
5488    sysv5* | sco3.2v5* | sco5v6*)
5489      # Note: We can NOT use -z defs as we might desire, because we do not
5490      # link with -lc, and that would cause any symbols used from libc to
5491      # always be unresolved, which means just about no library would
5492      # ever link correctly.  If we're not using GNU ld we use -z text
5493      # though, which does catch some bad symbols but isn't as heavy-handed
5494      # as -z defs.
5495      _LT_TAGVAR(no_undefined_flag, $1)='${wl}-z,text'
5496      _LT_TAGVAR(allow_undefined_flag, $1)='${wl}-z,nodefs'
5497      _LT_TAGVAR(archive_cmds_need_lc, $1)=no
5498      _LT_TAGVAR(hardcode_shlibpath_var, $1)=no
5499      _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-R,$libdir'
5500      _LT_TAGVAR(hardcode_libdir_separator, $1)=':'
5501      _LT_TAGVAR(link_all_deplibs, $1)=yes
5502      _LT_TAGVAR(export_dynamic_flag_spec, $1)='${wl}-Bexport'
5503      runpath_var='LD_RUN_PATH'
5504
5505      if test "$GCC" = yes; then
5506	_LT_TAGVAR(archive_cmds, $1)='$CC -shared ${wl}-h,$soname -o $lib $libobjs $deplibs $compiler_flags'
5507	_LT_TAGVAR(archive_expsym_cmds, $1)='$CC -shared ${wl}-Bexport:$export_symbols ${wl}-h,$soname -o $lib $libobjs $deplibs $compiler_flags'
5508      else
5509	_LT_TAGVAR(archive_cmds, $1)='$CC -G ${wl}-h,$soname -o $lib $libobjs $deplibs $compiler_flags'
5510	_LT_TAGVAR(archive_expsym_cmds, $1)='$CC -G ${wl}-Bexport:$export_symbols ${wl}-h,$soname -o $lib $libobjs $deplibs $compiler_flags'
5511      fi
5512      ;;
5513
5514    uts4*)
5515      _LT_TAGVAR(archive_cmds, $1)='$LD -G -h $soname -o $lib $libobjs $deplibs $linker_flags'
5516      _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-L$libdir'
5517      _LT_TAGVAR(hardcode_shlibpath_var, $1)=no
5518      ;;
5519
5520    *)
5521      _LT_TAGVAR(ld_shlibs, $1)=no
5522      ;;
5523    esac
5524
5525    if test x$host_vendor = xsni; then
5526      case $host in
5527      sysv4 | sysv4.2uw2* | sysv4.3* | sysv5*)
5528	_LT_TAGVAR(export_dynamic_flag_spec, $1)='${wl}-Blargedynsym'
5529	;;
5530      esac
5531    fi
5532  fi
5533])
5534AC_MSG_RESULT([$_LT_TAGVAR(ld_shlibs, $1)])
5535test "$_LT_TAGVAR(ld_shlibs, $1)" = no && can_build_shared=no
5536
5537_LT_TAGVAR(with_gnu_ld, $1)=$with_gnu_ld
5538
5539_LT_DECL([], [libext], [0], [Old archive suffix (normally "a")])dnl
5540_LT_DECL([], [shrext_cmds], [1], [Shared library suffix (normally ".so")])dnl
5541_LT_DECL([], [extract_expsyms_cmds], [2],
5542    [The commands to extract the exported symbol list from a shared archive])
5543
5544#
5545# Do we need to explicitly link libc?
5546#
5547case "x$_LT_TAGVAR(archive_cmds_need_lc, $1)" in
5548x|xyes)
5549  # Assume -lc should be added
5550  _LT_TAGVAR(archive_cmds_need_lc, $1)=yes
5551
5552  if test "$enable_shared" = yes && test "$GCC" = yes; then
5553    case $_LT_TAGVAR(archive_cmds, $1) in
5554    *'~'*)
5555      # FIXME: we may have to deal with multi-command sequences.
5556      ;;
5557    '$CC '*)
5558      # Test whether the compiler implicitly links with -lc since on some
5559      # systems, -lgcc has to come before -lc. If gcc already passes -lc
5560      # to ld, don't add -lc before -lgcc.
5561      AC_CACHE_CHECK([whether -lc should be explicitly linked in],
5562	[lt_cv_]_LT_TAGVAR(archive_cmds_need_lc, $1),
5563	[$RM conftest*
5564	echo "$lt_simple_compile_test_code" > conftest.$ac_ext
5565
5566	if AC_TRY_EVAL(ac_compile) 2>conftest.err; then
5567	  soname=conftest
5568	  lib=conftest
5569	  libobjs=conftest.$ac_objext
5570	  deplibs=
5571	  wl=$_LT_TAGVAR(lt_prog_compiler_wl, $1)
5572	  pic_flag=$_LT_TAGVAR(lt_prog_compiler_pic, $1)
5573	  compiler_flags=-v
5574	  linker_flags=-v
5575	  verstring=
5576	  output_objdir=.
5577	  libname=conftest
5578	  lt_save_allow_undefined_flag=$_LT_TAGVAR(allow_undefined_flag, $1)
5579	  _LT_TAGVAR(allow_undefined_flag, $1)=
5580	  if AC_TRY_EVAL(_LT_TAGVAR(archive_cmds, $1) 2\>\&1 \| $GREP \" -lc \" \>/dev/null 2\>\&1)
5581	  then
5582	    lt_cv_[]_LT_TAGVAR(archive_cmds_need_lc, $1)=no
5583	  else
5584	    lt_cv_[]_LT_TAGVAR(archive_cmds_need_lc, $1)=yes
5585	  fi
5586	  _LT_TAGVAR(allow_undefined_flag, $1)=$lt_save_allow_undefined_flag
5587	else
5588	  cat conftest.err 1>&5
5589	fi
5590	$RM conftest*
5591	])
5592      _LT_TAGVAR(archive_cmds_need_lc, $1)=$lt_cv_[]_LT_TAGVAR(archive_cmds_need_lc, $1)
5593      ;;
5594    esac
5595  fi
5596  ;;
5597esac
5598
5599_LT_TAGDECL([build_libtool_need_lc], [archive_cmds_need_lc], [0],
5600    [Whether or not to add -lc for building shared libraries])
5601_LT_TAGDECL([allow_libtool_libs_with_static_runtimes],
5602    [enable_shared_with_static_runtimes], [0],
5603    [Whether or not to disallow shared libs when runtime libs are static])
5604_LT_TAGDECL([], [export_dynamic_flag_spec], [1],
5605    [Compiler flag to allow reflexive dlopens])
5606_LT_TAGDECL([], [whole_archive_flag_spec], [1],
5607    [Compiler flag to generate shared objects directly from archives])
5608_LT_TAGDECL([], [compiler_needs_object], [1],
5609    [Whether the compiler copes with passing no objects directly])
5610_LT_TAGDECL([], [old_archive_from_new_cmds], [2],
5611    [Create an old-style archive from a shared archive])
5612_LT_TAGDECL([], [old_archive_from_expsyms_cmds], [2],
5613    [Create a temporary old-style archive to link instead of a shared archive])
5614_LT_TAGDECL([], [archive_cmds], [2], [Commands used to build a shared archive])
5615_LT_TAGDECL([], [archive_expsym_cmds], [2])
5616_LT_TAGDECL([], [module_cmds], [2],
5617    [Commands used to build a loadable module if different from building
5618    a shared archive.])
5619_LT_TAGDECL([], [module_expsym_cmds], [2])
5620_LT_TAGDECL([], [with_gnu_ld], [1],
5621    [Whether we are building with GNU ld or not])
5622_LT_TAGDECL([], [allow_undefined_flag], [1],
5623    [Flag that allows shared libraries with undefined symbols to be built])
5624_LT_TAGDECL([], [no_undefined_flag], [1],
5625    [Flag that enforces no undefined symbols])
5626_LT_TAGDECL([], [hardcode_libdir_flag_spec], [1],
5627    [Flag to hardcode $libdir into a binary during linking.
5628    This must work even if $libdir does not exist])
5629_LT_TAGDECL([], [hardcode_libdir_flag_spec_ld], [1],
5630    [[If ld is used when linking, flag to hardcode $libdir into a binary
5631    during linking.  This must work even if $libdir does not exist]])
5632_LT_TAGDECL([], [hardcode_libdir_separator], [1],
5633    [Whether we need a single "-rpath" flag with a separated argument])
5634_LT_TAGDECL([], [hardcode_direct], [0],
5635    [Set to "yes" if using DIR/libNAME${shared_ext} during linking hardcodes
5636    DIR into the resulting binary])
5637_LT_TAGDECL([], [hardcode_direct_absolute], [0],
5638    [Set to "yes" if using DIR/libNAME${shared_ext} during linking hardcodes
5639    DIR into the resulting binary and the resulting library dependency is
5640    "absolute", i.e impossible to change by setting ${shlibpath_var} if the
5641    library is relocated])
5642_LT_TAGDECL([], [hardcode_minus_L], [0],
5643    [Set to "yes" if using the -LDIR flag during linking hardcodes DIR
5644    into the resulting binary])
5645_LT_TAGDECL([], [hardcode_shlibpath_var], [0],
5646    [Set to "yes" if using SHLIBPATH_VAR=DIR during linking hardcodes DIR
5647    into the resulting binary])
5648_LT_TAGDECL([], [hardcode_automatic], [0],
5649    [Set to "yes" if building a shared library automatically hardcodes DIR
5650    into the library and all subsequent libraries and executables linked
5651    against it])
5652_LT_TAGDECL([], [inherit_rpath], [0],
5653    [Set to yes if linker adds runtime paths of dependent libraries
5654    to runtime path list])
5655_LT_TAGDECL([], [link_all_deplibs], [0],
5656    [Whether libtool must link a program against all its dependency libraries])
5657_LT_TAGDECL([], [always_export_symbols], [0],
5658    [Set to "yes" if exported symbols are required])
5659_LT_TAGDECL([], [export_symbols_cmds], [2],
5660    [The commands to list exported symbols])
5661_LT_TAGDECL([], [exclude_expsyms], [1],
5662    [Symbols that should not be listed in the preloaded symbols])
5663_LT_TAGDECL([], [include_expsyms], [1],
5664    [Symbols that must always be exported])
5665_LT_TAGDECL([], [prelink_cmds], [2],
5666    [Commands necessary for linking programs (against libraries) with templates])
5667_LT_TAGDECL([], [postlink_cmds], [2],
5668    [Commands necessary for finishing linking programs])
5669_LT_TAGDECL([], [file_list_spec], [1],
5670    [Specify filename containing input files])
5671dnl FIXME: Not yet implemented
5672dnl _LT_TAGDECL([], [thread_safe_flag_spec], [1],
5673dnl    [Compiler flag to generate thread safe objects])
5674])# _LT_LINKER_SHLIBS
5675
5676
5677# _LT_LANG_C_CONFIG([TAG])
5678# ------------------------
5679# Ensure that the configuration variables for a C compiler are suitably
5680# defined.  These variables are subsequently used by _LT_CONFIG to write
5681# the compiler configuration to `libtool'.
5682m4_defun([_LT_LANG_C_CONFIG],
5683[m4_require([_LT_DECL_EGREP])dnl
5684lt_save_CC="$CC"
5685AC_LANG_PUSH(C)
5686
5687# Source file extension for C test sources.
5688ac_ext=c
5689
5690# Object file extension for compiled C test sources.
5691objext=o
5692_LT_TAGVAR(objext, $1)=$objext
5693
5694# Code to be used in simple compile tests
5695lt_simple_compile_test_code="int some_variable = 0;"
5696
5697# Code to be used in simple link tests
5698lt_simple_link_test_code='int main(){return(0);}'
5699
5700_LT_TAG_COMPILER
5701# Save the default compiler, since it gets overwritten when the other
5702# tags are being tested, and _LT_TAGVAR(compiler, []) is a NOP.
5703compiler_DEFAULT=$CC
5704
5705# save warnings/boilerplate of simple test code
5706_LT_COMPILER_BOILERPLATE
5707_LT_LINKER_BOILERPLATE
5708
5709if test -n "$compiler"; then
5710  _LT_COMPILER_NO_RTTI($1)
5711  _LT_COMPILER_PIC($1)
5712  _LT_COMPILER_C_O($1)
5713  _LT_COMPILER_FILE_LOCKS($1)
5714  _LT_LINKER_SHLIBS($1)
5715  _LT_SYS_DYNAMIC_LINKER($1)
5716  _LT_LINKER_HARDCODE_LIBPATH($1)
5717  LT_SYS_DLOPEN_SELF
5718  _LT_CMD_STRIPLIB
5719
5720  # Report which library types will actually be built
5721  AC_MSG_CHECKING([if libtool supports shared libraries])
5722  AC_MSG_RESULT([$can_build_shared])
5723
5724  AC_MSG_CHECKING([whether to build shared libraries])
5725  test "$can_build_shared" = "no" && enable_shared=no
5726
5727  # On AIX, shared libraries and static libraries use the same namespace, and
5728  # are all built from PIC.
5729  case $host_os in
5730  aix3*)
5731    test "$enable_shared" = yes && enable_static=no
5732    if test -n "$RANLIB"; then
5733      archive_cmds="$archive_cmds~\$RANLIB \$lib"
5734      postinstall_cmds='$RANLIB $lib'
5735    fi
5736    ;;
5737
5738  aix[[4-9]]*)
5739    if test "$host_cpu" != ia64 && test "$aix_use_runtimelinking" = no ; then
5740      test "$enable_shared" = yes && enable_static=no
5741    fi
5742    ;;
5743  esac
5744  AC_MSG_RESULT([$enable_shared])
5745
5746  AC_MSG_CHECKING([whether to build static libraries])
5747  # Make sure either enable_shared or enable_static is yes.
5748  test "$enable_shared" = yes || enable_static=yes
5749  AC_MSG_RESULT([$enable_static])
5750
5751  _LT_CONFIG($1)
5752fi
5753AC_LANG_POP
5754CC="$lt_save_CC"
5755])# _LT_LANG_C_CONFIG
5756
5757
5758# _LT_LANG_CXX_CONFIG([TAG])
5759# --------------------------
5760# Ensure that the configuration variables for a C++ compiler are suitably
5761# defined.  These variables are subsequently used by _LT_CONFIG to write
5762# the compiler configuration to `libtool'.
5763m4_defun([_LT_LANG_CXX_CONFIG],
5764[m4_require([_LT_FILEUTILS_DEFAULTS])dnl
5765m4_require([_LT_DECL_EGREP])dnl
5766m4_require([_LT_PATH_MANIFEST_TOOL])dnl
5767if test -n "$CXX" && ( test "X$CXX" != "Xno" &&
5768    ( (test "X$CXX" = "Xg++" && `g++ -v >/dev/null 2>&1` ) ||
5769    (test "X$CXX" != "Xg++"))) ; then
5770  AC_PROG_CXXCPP
5771else
5772  _lt_caught_CXX_error=yes
5773fi
5774
5775AC_LANG_PUSH(C++)
5776_LT_TAGVAR(archive_cmds_need_lc, $1)=no
5777_LT_TAGVAR(allow_undefined_flag, $1)=
5778_LT_TAGVAR(always_export_symbols, $1)=no
5779_LT_TAGVAR(archive_expsym_cmds, $1)=
5780_LT_TAGVAR(compiler_needs_object, $1)=no
5781_LT_TAGVAR(export_dynamic_flag_spec, $1)=
5782_LT_TAGVAR(hardcode_direct, $1)=no
5783_LT_TAGVAR(hardcode_direct_absolute, $1)=no
5784_LT_TAGVAR(hardcode_libdir_flag_spec, $1)=
5785_LT_TAGVAR(hardcode_libdir_flag_spec_ld, $1)=
5786_LT_TAGVAR(hardcode_libdir_separator, $1)=
5787_LT_TAGVAR(hardcode_minus_L, $1)=no
5788_LT_TAGVAR(hardcode_shlibpath_var, $1)=unsupported
5789_LT_TAGVAR(hardcode_automatic, $1)=no
5790_LT_TAGVAR(inherit_rpath, $1)=no
5791_LT_TAGVAR(module_cmds, $1)=
5792_LT_TAGVAR(module_expsym_cmds, $1)=
5793_LT_TAGVAR(link_all_deplibs, $1)=unknown
5794_LT_TAGVAR(old_archive_cmds, $1)=$old_archive_cmds
5795_LT_TAGVAR(reload_flag, $1)=$reload_flag
5796_LT_TAGVAR(reload_cmds, $1)=$reload_cmds
5797_LT_TAGVAR(no_undefined_flag, $1)=
5798_LT_TAGVAR(whole_archive_flag_spec, $1)=
5799_LT_TAGVAR(enable_shared_with_static_runtimes, $1)=no
5800
5801# Source file extension for C++ test sources.
5802ac_ext=cpp
5803
5804# Object file extension for compiled C++ test sources.
5805objext=o
5806_LT_TAGVAR(objext, $1)=$objext
5807
5808# No sense in running all these tests if we already determined that
5809# the CXX compiler isn't working.  Some variables (like enable_shared)
5810# are currently assumed to apply to all compilers on this platform,
5811# and will be corrupted by setting them based on a non-working compiler.
5812if test "$_lt_caught_CXX_error" != yes; then
5813  # Code to be used in simple compile tests
5814  lt_simple_compile_test_code="int some_variable = 0;"
5815
5816  # Code to be used in simple link tests
5817  lt_simple_link_test_code='int main(int, char *[[]]) { return(0); }'
5818
5819  # ltmain only uses $CC for tagged configurations so make sure $CC is set.
5820  _LT_TAG_COMPILER
5821
5822  # save warnings/boilerplate of simple test code
5823  _LT_COMPILER_BOILERPLATE
5824  _LT_LINKER_BOILERPLATE
5825
5826  # Allow CC to be a program name with arguments.
5827  lt_save_CC=$CC
5828  lt_save_CFLAGS=$CFLAGS
5829  lt_save_LD=$LD
5830  lt_save_GCC=$GCC
5831  GCC=$GXX
5832  lt_save_with_gnu_ld=$with_gnu_ld
5833  lt_save_path_LD=$lt_cv_path_LD
5834  if test -n "${lt_cv_prog_gnu_ldcxx+set}"; then
5835    lt_cv_prog_gnu_ld=$lt_cv_prog_gnu_ldcxx
5836  else
5837    $as_unset lt_cv_prog_gnu_ld
5838  fi
5839  if test -n "${lt_cv_path_LDCXX+set}"; then
5840    lt_cv_path_LD=$lt_cv_path_LDCXX
5841  else
5842    $as_unset lt_cv_path_LD
5843  fi
5844  test -z "${LDCXX+set}" || LD=$LDCXX
5845  CC=${CXX-"c++"}
5846  CFLAGS=$CXXFLAGS
5847  compiler=$CC
5848  _LT_TAGVAR(compiler, $1)=$CC
5849  _LT_CC_BASENAME([$compiler])
5850
5851  if test -n "$compiler"; then
5852    # We don't want -fno-exception when compiling C++ code, so set the
5853    # no_builtin_flag separately
5854    if test "$GXX" = yes; then
5855      _LT_TAGVAR(lt_prog_compiler_no_builtin_flag, $1)=' -fno-builtin'
5856    else
5857      _LT_TAGVAR(lt_prog_compiler_no_builtin_flag, $1)=
5858    fi
5859
5860    if test "$GXX" = yes; then
5861      # Set up default GNU C++ configuration
5862
5863      LT_PATH_LD
5864
5865      # Check if GNU C++ uses GNU ld as the underlying linker, since the
5866      # archiving commands below assume that GNU ld is being used.
5867      if test "$with_gnu_ld" = yes; then
5868        _LT_TAGVAR(archive_cmds, $1)='$CC $pic_flag -shared -nostdlib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags ${wl}-soname $wl$soname -o $lib'
5869        _LT_TAGVAR(archive_expsym_cmds, $1)='$CC $pic_flag -shared -nostdlib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags ${wl}-soname $wl$soname ${wl}-retain-symbols-file $wl$export_symbols -o $lib'
5870
5871        _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath ${wl}$libdir'
5872        _LT_TAGVAR(export_dynamic_flag_spec, $1)='${wl}--export-dynamic'
5873
5874        # If archive_cmds runs LD, not CC, wlarc should be empty
5875        # XXX I think wlarc can be eliminated in ltcf-cxx, but I need to
5876        #     investigate it a little bit more. (MM)
5877        wlarc='${wl}'
5878
5879        # ancient GNU ld didn't support --whole-archive et. al.
5880        if eval "`$CC -print-prog-name=ld` --help 2>&1" |
5881	  $GREP 'no-whole-archive' > /dev/null; then
5882          _LT_TAGVAR(whole_archive_flag_spec, $1)="$wlarc"'--whole-archive$convenience '"$wlarc"'--no-whole-archive'
5883        else
5884          _LT_TAGVAR(whole_archive_flag_spec, $1)=
5885        fi
5886      else
5887        with_gnu_ld=no
5888        wlarc=
5889
5890        # A generic and very simple default shared library creation
5891        # command for GNU C++ for the case where it uses the native
5892        # linker, instead of GNU ld.  If possible, this setting should
5893        # overridden to take advantage of the native linker features on
5894        # the platform it is being used on.
5895        _LT_TAGVAR(archive_cmds, $1)='$CC -shared -nostdlib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags -o $lib'
5896      fi
5897
5898      # Commands to make compiler produce verbose output that lists
5899      # what "hidden" libraries, object files and flags are used when
5900      # linking a shared library.
5901      output_verbose_link_cmd='$CC -shared $CFLAGS -v conftest.$objext 2>&1 | $GREP -v "^Configured with:" | $GREP "\-L"'
5902
5903    else
5904      GXX=no
5905      with_gnu_ld=no
5906      wlarc=
5907    fi
5908
5909    # PORTME: fill in a description of your system's C++ link characteristics
5910    AC_MSG_CHECKING([whether the $compiler linker ($LD) supports shared libraries])
5911    _LT_TAGVAR(ld_shlibs, $1)=yes
5912    case $host_os in
5913      aix3*)
5914        # FIXME: insert proper C++ library support
5915        _LT_TAGVAR(ld_shlibs, $1)=no
5916        ;;
5917      aix[[4-9]]*)
5918        if test "$host_cpu" = ia64; then
5919          # On IA64, the linker does run time linking by default, so we don't
5920          # have to do anything special.
5921          aix_use_runtimelinking=no
5922          exp_sym_flag='-Bexport'
5923          no_entry_flag=""
5924        else
5925          aix_use_runtimelinking=no
5926
5927          # Test if we are trying to use run time linking or normal
5928          # AIX style linking. If -brtl is somewhere in LDFLAGS, we
5929          # need to do runtime linking.
5930          case $host_os in aix4.[[23]]|aix4.[[23]].*|aix[[5-9]]*)
5931	    for ld_flag in $LDFLAGS; do
5932	      case $ld_flag in
5933	      *-brtl*)
5934	        aix_use_runtimelinking=yes
5935	        break
5936	        ;;
5937	      esac
5938	    done
5939	    ;;
5940          esac
5941
5942          exp_sym_flag='-bexport'
5943          no_entry_flag='-bnoentry'
5944        fi
5945
5946        # When large executables or shared objects are built, AIX ld can
5947        # have problems creating the table of contents.  If linking a library
5948        # or program results in "error TOC overflow" add -mminimal-toc to
5949        # CXXFLAGS/CFLAGS for g++/gcc.  In the cases where that is not
5950        # enough to fix the problem, add -Wl,-bbigtoc to LDFLAGS.
5951
5952        _LT_TAGVAR(archive_cmds, $1)=''
5953        _LT_TAGVAR(hardcode_direct, $1)=yes
5954        _LT_TAGVAR(hardcode_direct_absolute, $1)=yes
5955        _LT_TAGVAR(hardcode_libdir_separator, $1)=':'
5956        _LT_TAGVAR(link_all_deplibs, $1)=yes
5957        _LT_TAGVAR(file_list_spec, $1)='${wl}-f,'
5958
5959        if test "$GXX" = yes; then
5960          case $host_os in aix4.[[012]]|aix4.[[012]].*)
5961          # We only want to do this on AIX 4.2 and lower, the check
5962          # below for broken collect2 doesn't work under 4.3+
5963	  collect2name=`${CC} -print-prog-name=collect2`
5964	  if test -f "$collect2name" &&
5965	     strings "$collect2name" | $GREP resolve_lib_name >/dev/null
5966	  then
5967	    # We have reworked collect2
5968	    :
5969	  else
5970	    # We have old collect2
5971	    _LT_TAGVAR(hardcode_direct, $1)=unsupported
5972	    # It fails to find uninstalled libraries when the uninstalled
5973	    # path is not listed in the libpath.  Setting hardcode_minus_L
5974	    # to unsupported forces relinking
5975	    _LT_TAGVAR(hardcode_minus_L, $1)=yes
5976	    _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-L$libdir'
5977	    _LT_TAGVAR(hardcode_libdir_separator, $1)=
5978	  fi
5979          esac
5980          shared_flag='-shared'
5981	  if test "$aix_use_runtimelinking" = yes; then
5982	    shared_flag="$shared_flag "'${wl}-G'
5983	  fi
5984        else
5985          # not using gcc
5986          if test "$host_cpu" = ia64; then
5987	  # VisualAge C++, Version 5.5 for AIX 5L for IA-64, Beta 3 Release
5988	  # chokes on -Wl,-G. The following line is correct:
5989	  shared_flag='-G'
5990          else
5991	    if test "$aix_use_runtimelinking" = yes; then
5992	      shared_flag='${wl}-G'
5993	    else
5994	      shared_flag='${wl}-bM:SRE'
5995	    fi
5996          fi
5997        fi
5998
5999        _LT_TAGVAR(export_dynamic_flag_spec, $1)='${wl}-bexpall'
6000        # It seems that -bexpall does not export symbols beginning with
6001        # underscore (_), so it is better to generate a list of symbols to
6002	# export.
6003        _LT_TAGVAR(always_export_symbols, $1)=yes
6004        if test "$aix_use_runtimelinking" = yes; then
6005          # Warning - without using the other runtime loading flags (-brtl),
6006          # -berok will link without error, but may produce a broken library.
6007          _LT_TAGVAR(allow_undefined_flag, $1)='-berok'
6008          # Determine the default libpath from the value encoded in an empty
6009          # executable.
6010          _LT_SYS_MODULE_PATH_AIX([$1])
6011          _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-blibpath:$libdir:'"$aix_libpath"
6012
6013          _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -o $output_objdir/$soname $libobjs $deplibs '"\${wl}$no_entry_flag"' $compiler_flags `if test "x${allow_undefined_flag}" != "x"; then func_echo_all "${wl}${allow_undefined_flag}"; else :; fi` '"\${wl}$exp_sym_flag:\$export_symbols $shared_flag"
6014        else
6015          if test "$host_cpu" = ia64; then
6016	    _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-R $libdir:/usr/lib:/lib'
6017	    _LT_TAGVAR(allow_undefined_flag, $1)="-z nodefs"
6018	    _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"
6019          else
6020	    # Determine the default libpath from the value encoded in an
6021	    # empty executable.
6022	    _LT_SYS_MODULE_PATH_AIX([$1])
6023	    _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-blibpath:$libdir:'"$aix_libpath"
6024	    # Warning - without using the other run time loading flags,
6025	    # -berok will link without error, but may produce a broken library.
6026	    _LT_TAGVAR(no_undefined_flag, $1)=' ${wl}-bernotok'
6027	    _LT_TAGVAR(allow_undefined_flag, $1)=' ${wl}-berok'
6028	    if test "$with_gnu_ld" = yes; then
6029	      # We only use this code for GNU lds that support --whole-archive.
6030	      _LT_TAGVAR(whole_archive_flag_spec, $1)='${wl}--whole-archive$convenience ${wl}--no-whole-archive'
6031	    else
6032	      # Exported symbols can be pulled into shared objects from archives
6033	      _LT_TAGVAR(whole_archive_flag_spec, $1)='$convenience'
6034	    fi
6035	    _LT_TAGVAR(archive_cmds_need_lc, $1)=yes
6036	    # This is similar to how AIX traditionally builds its shared
6037	    # libraries.
6038	    _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'
6039          fi
6040        fi
6041        ;;
6042
6043      beos*)
6044	if $LD --help 2>&1 | $GREP ': supported targets:.* elf' > /dev/null; then
6045	  _LT_TAGVAR(allow_undefined_flag, $1)=unsupported
6046	  # Joseph Beckenbach <jrb3@best.com> says some releases of gcc
6047	  # support --undefined.  This deserves some investigation.  FIXME
6048	  _LT_TAGVAR(archive_cmds, $1)='$CC -nostart $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname -o $lib'
6049	else
6050	  _LT_TAGVAR(ld_shlibs, $1)=no
6051	fi
6052	;;
6053
6054      chorus*)
6055        case $cc_basename in
6056          *)
6057	  # FIXME: insert proper C++ library support
6058	  _LT_TAGVAR(ld_shlibs, $1)=no
6059	  ;;
6060        esac
6061        ;;
6062
6063      cygwin* | mingw* | pw32* | cegcc*)
6064	case $GXX,$cc_basename in
6065	,cl* | no,cl*)
6066	  # Native MSVC
6067	  # hardcode_libdir_flag_spec is actually meaningless, as there is
6068	  # no search path for DLLs.
6069	  _LT_TAGVAR(hardcode_libdir_flag_spec, $1)=' '
6070	  _LT_TAGVAR(allow_undefined_flag, $1)=unsupported
6071	  _LT_TAGVAR(always_export_symbols, $1)=yes
6072	  _LT_TAGVAR(file_list_spec, $1)='@'
6073	  # Tell ltmain to make .lib files, not .a files.
6074	  libext=lib
6075	  # Tell ltmain to make .dll files, not .so files.
6076	  shrext_cmds=".dll"
6077	  # FIXME: Setting linknames here is a bad hack.
6078	  _LT_TAGVAR(archive_cmds, $1)='$CC -o $output_objdir/$soname $libobjs $compiler_flags $deplibs -Wl,-dll~linknames='
6079	  _LT_TAGVAR(archive_expsym_cmds, $1)='if test "x`$SED 1q $export_symbols`" = xEXPORTS; then
6080	      $SED -n -e 's/\\\\\\\(.*\\\\\\\)/-link\\\ -EXPORT:\\\\\\\1/' -e '1\\\!p' < $export_symbols > $output_objdir/$soname.exp;
6081	    else
6082	      $SED -e 's/\\\\\\\(.*\\\\\\\)/-link\\\ -EXPORT:\\\\\\\1/' < $export_symbols > $output_objdir/$soname.exp;
6083	    fi~
6084	    $CC -o $tool_output_objdir$soname $libobjs $compiler_flags $deplibs "@$tool_output_objdir$soname.exp" -Wl,-DLL,-IMPLIB:"$tool_output_objdir$libname.dll.lib"~
6085	    linknames='
6086	  # The linker will not automatically build a static lib if we build a DLL.
6087	  # _LT_TAGVAR(old_archive_from_new_cmds, $1)='true'
6088	  _LT_TAGVAR(enable_shared_with_static_runtimes, $1)=yes
6089	  # Don't use ranlib
6090	  _LT_TAGVAR(old_postinstall_cmds, $1)='chmod 644 $oldlib'
6091	  _LT_TAGVAR(postlink_cmds, $1)='lt_outputfile="@OUTPUT@"~
6092	    lt_tool_outputfile="@TOOL_OUTPUT@"~
6093	    case $lt_outputfile in
6094	      *.exe|*.EXE) ;;
6095	      *)
6096		lt_outputfile="$lt_outputfile.exe"
6097		lt_tool_outputfile="$lt_tool_outputfile.exe"
6098		;;
6099	    esac~
6100	    func_to_tool_file "$lt_outputfile"~
6101	    if test "$MANIFEST_TOOL" != ":" && test -f "$lt_outputfile.manifest"; then
6102	      $MANIFEST_TOOL -manifest "$lt_tool_outputfile.manifest" -outputresource:"$lt_tool_outputfile" || exit 1;
6103	      $RM "$lt_outputfile.manifest";
6104	    fi'
6105	  ;;
6106	*)
6107	  # g++
6108	  # _LT_TAGVAR(hardcode_libdir_flag_spec, $1) is actually meaningless,
6109	  # as there is no search path for DLLs.
6110	  _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-L$libdir'
6111	  _LT_TAGVAR(export_dynamic_flag_spec, $1)='${wl}--export-all-symbols'
6112	  _LT_TAGVAR(allow_undefined_flag, $1)=unsupported
6113	  _LT_TAGVAR(always_export_symbols, $1)=no
6114	  _LT_TAGVAR(enable_shared_with_static_runtimes, $1)=yes
6115
6116	  if $LD --help 2>&1 | $GREP 'auto-import' > /dev/null; then
6117	    _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'
6118	    # If the export-symbols file already is a .def file (1st line
6119	    # is EXPORTS), use it as is; otherwise, prepend...
6120	    _LT_TAGVAR(archive_expsym_cmds, $1)='if test "x`$SED 1q $export_symbols`" = xEXPORTS; then
6121	      cp $export_symbols $output_objdir/$soname.def;
6122	    else
6123	      echo EXPORTS > $output_objdir/$soname.def;
6124	      cat $export_symbols >> $output_objdir/$soname.def;
6125	    fi~
6126	    $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'
6127	  else
6128	    _LT_TAGVAR(ld_shlibs, $1)=no
6129	  fi
6130	  ;;
6131	esac
6132	;;
6133      darwin* | rhapsody*)
6134        _LT_DARWIN_LINKER_FEATURES($1)
6135	;;
6136
6137      dgux*)
6138        case $cc_basename in
6139          ec++*)
6140	    # FIXME: insert proper C++ library support
6141	    _LT_TAGVAR(ld_shlibs, $1)=no
6142	    ;;
6143          ghcx*)
6144	    # Green Hills C++ Compiler
6145	    # FIXME: insert proper C++ library support
6146	    _LT_TAGVAR(ld_shlibs, $1)=no
6147	    ;;
6148          *)
6149	    # FIXME: insert proper C++ library support
6150	    _LT_TAGVAR(ld_shlibs, $1)=no
6151	    ;;
6152        esac
6153        ;;
6154
6155      freebsd[[12]]*)
6156        # C++ shared libraries reported to be fairly broken before
6157	# switch to ELF
6158        _LT_TAGVAR(ld_shlibs, $1)=no
6159        ;;
6160
6161      freebsd-elf*)
6162        _LT_TAGVAR(archive_cmds_need_lc, $1)=no
6163        ;;
6164
6165      freebsd* | dragonfly*)
6166        # FreeBSD 3 and later use GNU C++ and GNU ld with standard ELF
6167        # conventions
6168        _LT_TAGVAR(ld_shlibs, $1)=yes
6169        ;;
6170
6171      gnu*)
6172        ;;
6173
6174      haiku*)
6175        _LT_TAGVAR(archive_cmds, $1)='$CC -shared $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname -o $lib'
6176        _LT_TAGVAR(link_all_deplibs, $1)=yes
6177        ;;
6178
6179      hpux9*)
6180        _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}+b ${wl}$libdir'
6181        _LT_TAGVAR(hardcode_libdir_separator, $1)=:
6182        _LT_TAGVAR(export_dynamic_flag_spec, $1)='${wl}-E'
6183        _LT_TAGVAR(hardcode_direct, $1)=yes
6184        _LT_TAGVAR(hardcode_minus_L, $1)=yes # Not in the search PATH,
6185				             # but as the default
6186				             # location of the library.
6187
6188        case $cc_basename in
6189          CC*)
6190            # FIXME: insert proper C++ library support
6191            _LT_TAGVAR(ld_shlibs, $1)=no
6192            ;;
6193          aCC*)
6194            _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'
6195            # Commands to make compiler produce verbose output that lists
6196            # what "hidden" libraries, object files and flags are used when
6197            # linking a shared library.
6198            #
6199            # There doesn't appear to be a way to prevent this compiler from
6200            # explicitly linking system object files so we need to strip them
6201            # from the output so that they don't get included in the library
6202            # dependencies.
6203            output_verbose_link_cmd='templist=`($CC -b $CFLAGS -v conftest.$objext 2>&1) | $EGREP "\-L"`; list=""; for z in $templist; do case $z in conftest.$objext) list="$list $z";; *.$objext);; *) list="$list $z";;esac; done; func_echo_all "$list"'
6204            ;;
6205          *)
6206            if test "$GXX" = yes; then
6207              _LT_TAGVAR(archive_cmds, $1)='$RM $output_objdir/$soname~$CC -shared -nostdlib $pic_flag ${wl}+b ${wl}$install_libdir -o $output_objdir/$soname $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags~test $output_objdir/$soname = $lib || mv $output_objdir/$soname $lib'
6208            else
6209              # FIXME: insert proper C++ library support
6210              _LT_TAGVAR(ld_shlibs, $1)=no
6211            fi
6212            ;;
6213        esac
6214        ;;
6215
6216      hpux10*|hpux11*)
6217        if test $with_gnu_ld = no; then
6218	  _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}+b ${wl}$libdir'
6219	  _LT_TAGVAR(hardcode_libdir_separator, $1)=:
6220
6221          case $host_cpu in
6222            hppa*64*|ia64*)
6223              ;;
6224            *)
6225	      _LT_TAGVAR(export_dynamic_flag_spec, $1)='${wl}-E'
6226              ;;
6227          esac
6228        fi
6229        case $host_cpu in
6230          hppa*64*|ia64*)
6231            _LT_TAGVAR(hardcode_direct, $1)=no
6232            _LT_TAGVAR(hardcode_shlibpath_var, $1)=no
6233            ;;
6234          *)
6235            _LT_TAGVAR(hardcode_direct, $1)=yes
6236            _LT_TAGVAR(hardcode_direct_absolute, $1)=yes
6237            _LT_TAGVAR(hardcode_minus_L, $1)=yes # Not in the search PATH,
6238					         # but as the default
6239					         # location of the library.
6240            ;;
6241        esac
6242
6243        case $cc_basename in
6244          CC*)
6245	    # FIXME: insert proper C++ library support
6246	    _LT_TAGVAR(ld_shlibs, $1)=no
6247	    ;;
6248          aCC*)
6249	    case $host_cpu in
6250	      hppa*64*)
6251	        _LT_TAGVAR(archive_cmds, $1)='$CC -b ${wl}+h ${wl}$soname -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags'
6252	        ;;
6253	      ia64*)
6254	        _LT_TAGVAR(archive_cmds, $1)='$CC -b ${wl}+h ${wl}$soname ${wl}+nodefaultrpath -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags'
6255	        ;;
6256	      *)
6257	        _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'
6258	        ;;
6259	    esac
6260	    # Commands to make compiler produce verbose output that lists
6261	    # what "hidden" libraries, object files and flags are used when
6262	    # linking a shared library.
6263	    #
6264	    # There doesn't appear to be a way to prevent this compiler from
6265	    # explicitly linking system object files so we need to strip them
6266	    # from the output so that they don't get included in the library
6267	    # dependencies.
6268	    output_verbose_link_cmd='templist=`($CC -b $CFLAGS -v conftest.$objext 2>&1) | $GREP "\-L"`; list=""; for z in $templist; do case $z in conftest.$objext) list="$list $z";; *.$objext);; *) list="$list $z";;esac; done; func_echo_all "$list"'
6269	    ;;
6270          *)
6271	    if test "$GXX" = yes; then
6272	      if test $with_gnu_ld = no; then
6273	        case $host_cpu in
6274	          hppa*64*)
6275	            _LT_TAGVAR(archive_cmds, $1)='$CC -shared -nostdlib -fPIC ${wl}+h ${wl}$soname -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags'
6276	            ;;
6277	          ia64*)
6278	            _LT_TAGVAR(archive_cmds, $1)='$CC -shared -nostdlib $pic_flag ${wl}+h ${wl}$soname ${wl}+nodefaultrpath -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags'
6279	            ;;
6280	          *)
6281	            _LT_TAGVAR(archive_cmds, $1)='$CC -shared -nostdlib $pic_flag ${wl}+h ${wl}$soname ${wl}+b ${wl}$install_libdir -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags'
6282	            ;;
6283	        esac
6284	      fi
6285	    else
6286	      # FIXME: insert proper C++ library support
6287	      _LT_TAGVAR(ld_shlibs, $1)=no
6288	    fi
6289	    ;;
6290        esac
6291        ;;
6292
6293      interix[[3-9]]*)
6294	_LT_TAGVAR(hardcode_direct, $1)=no
6295	_LT_TAGVAR(hardcode_shlibpath_var, $1)=no
6296	_LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath,$libdir'
6297	_LT_TAGVAR(export_dynamic_flag_spec, $1)='${wl}-E'
6298	# Hack: On Interix 3.x, we cannot compile PIC because of a broken gcc.
6299	# Instead, shared libraries are loaded at an image base (0x10000000 by
6300	# default) and relocated if they conflict, which is a slow very memory
6301	# consuming and fragmenting process.  To avoid this, we pick a random,
6302	# 256 KiB-aligned image base between 0x50000000 and 0x6FFC0000 at link
6303	# time.  Moving up from 0x10000000 also allows more sbrk(2) space.
6304	_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'
6305	_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'
6306	;;
6307      irix5* | irix6*)
6308        case $cc_basename in
6309          CC*)
6310	    # SGI C++
6311	    _LT_TAGVAR(archive_cmds, $1)='$CC -shared -all -multigot $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags -soname $soname `test -n "$verstring" && func_echo_all "-set_version $verstring"` -update_registry ${output_objdir}/so_locations -o $lib'
6312
6313	    # Archives containing C++ object files must be created using
6314	    # "CC -ar", where "CC" is the IRIX C++ compiler.  This is
6315	    # necessary to make sure instantiated templates are included
6316	    # in the archive.
6317	    _LT_TAGVAR(old_archive_cmds, $1)='$CC -ar -WR,-u -o $oldlib $oldobjs'
6318	    ;;
6319          *)
6320	    if test "$GXX" = yes; then
6321	      if test "$with_gnu_ld" = no; then
6322	        _LT_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag -nostdlib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags ${wl}-soname ${wl}$soname `test -n "$verstring" && func_echo_all "${wl}-set_version ${wl}$verstring"` ${wl}-update_registry ${wl}${output_objdir}/so_locations -o $lib'
6323	      else
6324	        _LT_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag -nostdlib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags ${wl}-soname ${wl}$soname `test -n "$verstring" && func_echo_all "${wl}-set_version ${wl}$verstring"` -o $lib'
6325	      fi
6326	    fi
6327	    _LT_TAGVAR(link_all_deplibs, $1)=yes
6328	    ;;
6329        esac
6330        _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath ${wl}$libdir'
6331        _LT_TAGVAR(hardcode_libdir_separator, $1)=:
6332        _LT_TAGVAR(inherit_rpath, $1)=yes
6333        ;;
6334
6335      linux* | k*bsd*-gnu | kopensolaris*-gnu)
6336        case $cc_basename in
6337          KCC*)
6338	    # Kuck and Associates, Inc. (KAI) C++ Compiler
6339
6340	    # KCC will only create a shared library if the output file
6341	    # ends with ".so" (or ".sl" for HP-UX), so rename the library
6342	    # to its proper name (with version) after linking.
6343	    _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'
6344	    _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'
6345	    # Commands to make compiler produce verbose output that lists
6346	    # what "hidden" libraries, object files and flags are used when
6347	    # linking a shared library.
6348	    #
6349	    # There doesn't appear to be a way to prevent this compiler from
6350	    # explicitly linking system object files so we need to strip them
6351	    # from the output so that they don't get included in the library
6352	    # dependencies.
6353	    output_verbose_link_cmd='templist=`$CC $CFLAGS -v conftest.$objext -o libconftest$shared_ext 2>&1 | $GREP "ld"`; rm -f libconftest$shared_ext; list=""; for z in $templist; do case $z in conftest.$objext) list="$list $z";; *.$objext);; *) list="$list $z";;esac; done; func_echo_all "$list"'
6354
6355	    _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath,$libdir'
6356	    _LT_TAGVAR(export_dynamic_flag_spec, $1)='${wl}--export-dynamic'
6357
6358	    # Archives containing C++ object files must be created using
6359	    # "CC -Bstatic", where "CC" is the KAI C++ compiler.
6360	    _LT_TAGVAR(old_archive_cmds, $1)='$CC -Bstatic -o $oldlib $oldobjs'
6361	    ;;
6362	  icpc* | ecpc* )
6363	    # Intel C++
6364	    with_gnu_ld=yes
6365	    # version 8.0 and above of icpc choke on multiply defined symbols
6366	    # if we add $predep_objects and $postdep_objects, however 7.1 and
6367	    # earlier do not add the objects themselves.
6368	    case `$CC -V 2>&1` in
6369	      *"Version 7."*)
6370	        _LT_TAGVAR(archive_cmds, $1)='$CC -shared $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags ${wl}-soname $wl$soname -o $lib'
6371		_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'
6372		;;
6373	      *)  # Version 8.0 or newer
6374	        tmp_idyn=
6375	        case $host_cpu in
6376		  ia64*) tmp_idyn=' -i_dynamic';;
6377		esac
6378	        _LT_TAGVAR(archive_cmds, $1)='$CC -shared'"$tmp_idyn"' $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname -o $lib'
6379		_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'
6380		;;
6381	    esac
6382	    _LT_TAGVAR(archive_cmds_need_lc, $1)=no
6383	    _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath,$libdir'
6384	    _LT_TAGVAR(export_dynamic_flag_spec, $1)='${wl}--export-dynamic'
6385	    _LT_TAGVAR(whole_archive_flag_spec, $1)='${wl}--whole-archive$convenience ${wl}--no-whole-archive'
6386	    ;;
6387          pgCC* | pgcpp*)
6388            # Portland Group C++ compiler
6389	    case `$CC -V` in
6390	    *pgCC\ [[1-5]].* | *pgcpp\ [[1-5]].*)
6391	      _LT_TAGVAR(prelink_cmds, $1)='tpldir=Template.dir~
6392		rm -rf $tpldir~
6393		$CC --prelink_objects --instantiation_dir $tpldir $objs $libobjs $compile_deplibs~
6394		compile_command="$compile_command `find $tpldir -name \*.o | sort | $NL2SP`"'
6395	      _LT_TAGVAR(old_archive_cmds, $1)='tpldir=Template.dir~
6396		rm -rf $tpldir~
6397		$CC --prelink_objects --instantiation_dir $tpldir $oldobjs$old_deplibs~
6398		$AR $AR_FLAGS $oldlib$oldobjs$old_deplibs `find $tpldir -name \*.o | sort | $NL2SP`~
6399		$RANLIB $oldlib'
6400	      _LT_TAGVAR(archive_cmds, $1)='tpldir=Template.dir~
6401		rm -rf $tpldir~
6402		$CC --prelink_objects --instantiation_dir $tpldir $predep_objects $libobjs $deplibs $convenience $postdep_objects~
6403		$CC -shared $pic_flag $predep_objects $libobjs $deplibs `find $tpldir -name \*.o | sort | $NL2SP` $postdep_objects $compiler_flags ${wl}-soname ${wl}$soname -o $lib'
6404	      _LT_TAGVAR(archive_expsym_cmds, $1)='tpldir=Template.dir~
6405		rm -rf $tpldir~
6406		$CC --prelink_objects --instantiation_dir $tpldir $predep_objects $libobjs $deplibs $convenience $postdep_objects~
6407		$CC -shared $pic_flag $predep_objects $libobjs $deplibs `find $tpldir -name \*.o | sort | $NL2SP` $postdep_objects $compiler_flags ${wl}-soname ${wl}$soname ${wl}-retain-symbols-file ${wl}$export_symbols -o $lib'
6408	      ;;
6409	    *) # Version 6 and above use weak symbols
6410	      _LT_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags ${wl}-soname ${wl}$soname -o $lib'
6411	      _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'
6412	      ;;
6413	    esac
6414
6415	    _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}--rpath ${wl}$libdir'
6416	    _LT_TAGVAR(export_dynamic_flag_spec, $1)='${wl}--export-dynamic'
6417	    _LT_TAGVAR(whole_archive_flag_spec, $1)='${wl}--whole-archive`for conv in $convenience\"\"; do test  -n \"$conv\" && new_convenience=\"$new_convenience,$conv\"; done; func_echo_all \"$new_convenience\"` ${wl}--no-whole-archive'
6418            ;;
6419	  cxx*)
6420	    # Compaq C++
6421	    _LT_TAGVAR(archive_cmds, $1)='$CC -shared $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags ${wl}-soname $wl$soname -o $lib'
6422	    _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'
6423
6424	    runpath_var=LD_RUN_PATH
6425	    _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-rpath $libdir'
6426	    _LT_TAGVAR(hardcode_libdir_separator, $1)=:
6427
6428	    # Commands to make compiler produce verbose output that lists
6429	    # what "hidden" libraries, object files and flags are used when
6430	    # linking a shared library.
6431	    #
6432	    # There doesn't appear to be a way to prevent this compiler from
6433	    # explicitly linking system object files so we need to strip them
6434	    # from the output so that they don't get included in the library
6435	    # dependencies.
6436	    output_verbose_link_cmd='templist=`$CC -shared $CFLAGS -v conftest.$objext 2>&1 | $GREP "ld"`; templist=`func_echo_all "$templist" | $SED "s/\(^.*ld.*\)\( .*ld .*$\)/\1/"`; list=""; for z in $templist; do case $z in conftest.$objext) list="$list $z";; *.$objext);; *) list="$list $z";;esac; done; func_echo_all "X$list" | $Xsed'
6437	    ;;
6438	  xl* | mpixl* | bgxl*)
6439	    # IBM XL 8.0 on PPC, with GNU ld
6440	    _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath ${wl}$libdir'
6441	    _LT_TAGVAR(export_dynamic_flag_spec, $1)='${wl}--export-dynamic'
6442	    _LT_TAGVAR(archive_cmds, $1)='$CC -qmkshrobj $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname -o $lib'
6443	    if test "x$supports_anon_versioning" = xyes; then
6444	      _LT_TAGVAR(archive_expsym_cmds, $1)='echo "{ global:" > $output_objdir/$libname.ver~
6445		cat $export_symbols | sed -e "s/\(.*\)/\1;/" >> $output_objdir/$libname.ver~
6446		echo "local: *; };" >> $output_objdir/$libname.ver~
6447		$CC -qmkshrobj $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname ${wl}-version-script ${wl}$output_objdir/$libname.ver -o $lib'
6448	    fi
6449	    ;;
6450	  *)
6451	    case `$CC -V 2>&1 | sed 5q` in
6452	    *Sun\ C*)
6453	      # Sun C++ 5.9
6454	      _LT_TAGVAR(no_undefined_flag, $1)=' -zdefs'
6455	      _LT_TAGVAR(archive_cmds, $1)='$CC -G${allow_undefined_flag} -h$soname -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags'
6456	      _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'
6457	      _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-R$libdir'
6458	      _LT_TAGVAR(whole_archive_flag_spec, $1)='${wl}--whole-archive`new_convenience=; for conv in $convenience\"\"; do test -z \"$conv\" || new_convenience=\"$new_convenience,$conv\"; done; func_echo_all \"$new_convenience\"` ${wl}--no-whole-archive'
6459	      _LT_TAGVAR(compiler_needs_object, $1)=yes
6460
6461	      # Not sure whether something based on
6462	      # $CC $CFLAGS -v conftest.$objext -o libconftest$shared_ext 2>&1
6463	      # would be better.
6464	      output_verbose_link_cmd='func_echo_all'
6465
6466	      # Archives containing C++ object files must be created using
6467	      # "CC -xar", where "CC" is the Sun C++ compiler.  This is
6468	      # necessary to make sure instantiated templates are included
6469	      # in the archive.
6470	      _LT_TAGVAR(old_archive_cmds, $1)='$CC -xar -o $oldlib $oldobjs'
6471	      ;;
6472	    esac
6473	    ;;
6474	esac
6475	;;
6476
6477      lynxos*)
6478        # FIXME: insert proper C++ library support
6479	_LT_TAGVAR(ld_shlibs, $1)=no
6480	;;
6481
6482      m88k*)
6483        # FIXME: insert proper C++ library support
6484        _LT_TAGVAR(ld_shlibs, $1)=no
6485	;;
6486
6487      mvs*)
6488        case $cc_basename in
6489          cxx*)
6490	    # FIXME: insert proper C++ library support
6491	    _LT_TAGVAR(ld_shlibs, $1)=no
6492	    ;;
6493	  *)
6494	    # FIXME: insert proper C++ library support
6495	    _LT_TAGVAR(ld_shlibs, $1)=no
6496	    ;;
6497	esac
6498	;;
6499
6500      netbsd*)
6501        if echo __ELF__ | $CC -E - | $GREP __ELF__ >/dev/null; then
6502	  _LT_TAGVAR(archive_cmds, $1)='$LD -Bshareable  -o $lib $predep_objects $libobjs $deplibs $postdep_objects $linker_flags'
6503	  wlarc=
6504	  _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-R$libdir'
6505	  _LT_TAGVAR(hardcode_direct, $1)=yes
6506	  _LT_TAGVAR(hardcode_shlibpath_var, $1)=no
6507	fi
6508	# Workaround some broken pre-1.5 toolchains
6509	output_verbose_link_cmd='$CC -shared $CFLAGS -v conftest.$objext 2>&1 | $GREP conftest.$objext | $SED -e "s:-lgcc -lc -lgcc::"'
6510	;;
6511
6512      *nto* | *qnx*)
6513        _LT_TAGVAR(ld_shlibs, $1)=yes
6514	;;
6515
6516      openbsd2*)
6517        # C++ shared libraries are fairly broken
6518	_LT_TAGVAR(ld_shlibs, $1)=no
6519	;;
6520
6521      openbsd*)
6522	if test -f /usr/libexec/ld.so; then
6523	  _LT_TAGVAR(hardcode_direct, $1)=yes
6524	  _LT_TAGVAR(hardcode_shlibpath_var, $1)=no
6525	  _LT_TAGVAR(hardcode_direct_absolute, $1)=yes
6526	  _LT_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags -o $lib'
6527	  _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath,$libdir'
6528	  if test -z "`echo __ELF__ | $CC -E - | grep __ELF__`" || test "$host_os-$host_cpu" = "openbsd2.8-powerpc"; then
6529	    _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'
6530	    _LT_TAGVAR(export_dynamic_flag_spec, $1)='${wl}-E'
6531	    _LT_TAGVAR(whole_archive_flag_spec, $1)="$wlarc"'--whole-archive$convenience '"$wlarc"'--no-whole-archive'
6532	  fi
6533	  output_verbose_link_cmd=func_echo_all
6534	else
6535	  _LT_TAGVAR(ld_shlibs, $1)=no
6536	fi
6537	;;
6538
6539      osf3* | osf4* | osf5*)
6540        case $cc_basename in
6541          KCC*)
6542	    # Kuck and Associates, Inc. (KAI) C++ Compiler
6543
6544	    # KCC will only create a shared library if the output file
6545	    # ends with ".so" (or ".sl" for HP-UX), so rename the library
6546	    # to its proper name (with version) after linking.
6547	    _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'
6548
6549	    _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath,$libdir'
6550	    _LT_TAGVAR(hardcode_libdir_separator, $1)=:
6551
6552	    # Archives containing C++ object files must be created using
6553	    # the KAI C++ compiler.
6554	    case $host in
6555	      osf3*) _LT_TAGVAR(old_archive_cmds, $1)='$CC -Bstatic -o $oldlib $oldobjs' ;;
6556	      *) _LT_TAGVAR(old_archive_cmds, $1)='$CC -o $oldlib $oldobjs' ;;
6557	    esac
6558	    ;;
6559          RCC*)
6560	    # Rational C++ 2.4.1
6561	    # FIXME: insert proper C++ library support
6562	    _LT_TAGVAR(ld_shlibs, $1)=no
6563	    ;;
6564          cxx*)
6565	    case $host in
6566	      osf3*)
6567	        _LT_TAGVAR(allow_undefined_flag, $1)=' ${wl}-expect_unresolved ${wl}\*'
6568	        _LT_TAGVAR(archive_cmds, $1)='$CC -shared${allow_undefined_flag} $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags ${wl}-soname $soname `test -n "$verstring" && func_echo_all "${wl}-set_version $verstring"` -update_registry ${output_objdir}/so_locations -o $lib'
6569	        _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath ${wl}$libdir'
6570		;;
6571	      *)
6572	        _LT_TAGVAR(allow_undefined_flag, $1)=' -expect_unresolved \*'
6573	        _LT_TAGVAR(archive_cmds, $1)='$CC -shared${allow_undefined_flag} $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags -msym -soname $soname `test -n "$verstring" && func_echo_all "-set_version $verstring"` -update_registry ${output_objdir}/so_locations -o $lib'
6574	        _LT_TAGVAR(archive_expsym_cmds, $1)='for i in `cat $export_symbols`; do printf "%s %s\\n" -exported_symbol "\$i" >> $lib.exp; done~
6575	          echo "-hidden">> $lib.exp~
6576	          $CC -shared$allow_undefined_flag $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags -msym -soname $soname ${wl}-input ${wl}$lib.exp  `test -n "$verstring" && $ECHO "-set_version $verstring"` -update_registry ${output_objdir}/so_locations -o $lib~
6577	          $RM $lib.exp'
6578	        _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-rpath $libdir'
6579		;;
6580	    esac
6581
6582	    _LT_TAGVAR(hardcode_libdir_separator, $1)=:
6583
6584	    # Commands to make compiler produce verbose output that lists
6585	    # what "hidden" libraries, object files and flags are used when
6586	    # linking a shared library.
6587	    #
6588	    # There doesn't appear to be a way to prevent this compiler from
6589	    # explicitly linking system object files so we need to strip them
6590	    # from the output so that they don't get included in the library
6591	    # dependencies.
6592	    output_verbose_link_cmd='templist=`$CC -shared $CFLAGS -v conftest.$objext 2>&1 | $GREP "ld" | $GREP -v "ld:"`; templist=`func_echo_all "$templist" | $SED "s/\(^.*ld.*\)\( .*ld.*$\)/\1/"`; list=""; for z in $templist; do case $z in conftest.$objext) list="$list $z";; *.$objext);; *) list="$list $z";;esac; done; func_echo_all "$list"'
6593	    ;;
6594	  *)
6595	    if test "$GXX" = yes && test "$with_gnu_ld" = no; then
6596	      _LT_TAGVAR(allow_undefined_flag, $1)=' ${wl}-expect_unresolved ${wl}\*'
6597	      case $host in
6598	        osf3*)
6599	          _LT_TAGVAR(archive_cmds, $1)='$CC -shared -nostdlib ${allow_undefined_flag} $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags ${wl}-soname ${wl}$soname `test -n "$verstring" && func_echo_all "${wl}-set_version ${wl}$verstring"` ${wl}-update_registry ${wl}${output_objdir}/so_locations -o $lib'
6600		  ;;
6601	        *)
6602	          _LT_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag -nostdlib ${allow_undefined_flag} $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags ${wl}-msym ${wl}-soname ${wl}$soname `test -n "$verstring" && func_echo_all "${wl}-set_version ${wl}$verstring"` ${wl}-update_registry ${wl}${output_objdir}/so_locations -o $lib'
6603		  ;;
6604	      esac
6605
6606	      _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath ${wl}$libdir'
6607	      _LT_TAGVAR(hardcode_libdir_separator, $1)=:
6608
6609	      # Commands to make compiler produce verbose output that lists
6610	      # what "hidden" libraries, object files and flags are used when
6611	      # linking a shared library.
6612	      output_verbose_link_cmd='$CC -shared $CFLAGS -v conftest.$objext 2>&1 | $GREP -v "^Configured with:" | $GREP "\-L"'
6613
6614	    else
6615	      # FIXME: insert proper C++ library support
6616	      _LT_TAGVAR(ld_shlibs, $1)=no
6617	    fi
6618	    ;;
6619        esac
6620        ;;
6621
6622      psos*)
6623        # FIXME: insert proper C++ library support
6624        _LT_TAGVAR(ld_shlibs, $1)=no
6625        ;;
6626
6627      sunos4*)
6628        case $cc_basename in
6629          CC*)
6630	    # Sun C++ 4.x
6631	    # FIXME: insert proper C++ library support
6632	    _LT_TAGVAR(ld_shlibs, $1)=no
6633	    ;;
6634          lcc*)
6635	    # Lucid
6636	    # FIXME: insert proper C++ library support
6637	    _LT_TAGVAR(ld_shlibs, $1)=no
6638	    ;;
6639          *)
6640	    # FIXME: insert proper C++ library support
6641	    _LT_TAGVAR(ld_shlibs, $1)=no
6642	    ;;
6643        esac
6644        ;;
6645
6646      solaris*)
6647        case $cc_basename in
6648          CC* | sunCC*)
6649	    # Sun C++ 4.2, 5.x and Centerline C++
6650            _LT_TAGVAR(archive_cmds_need_lc,$1)=yes
6651	    _LT_TAGVAR(no_undefined_flag, $1)=' -zdefs'
6652	    _LT_TAGVAR(archive_cmds, $1)='$CC -G${allow_undefined_flag}  -h$soname -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags'
6653	    _LT_TAGVAR(archive_expsym_cmds, $1)='echo "{ global:" > $lib.exp~cat $export_symbols | $SED -e "s/\(.*\)/\1;/" >> $lib.exp~echo "local: *; };" >> $lib.exp~
6654	      $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'
6655
6656	    _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-R$libdir'
6657	    _LT_TAGVAR(hardcode_shlibpath_var, $1)=no
6658	    case $host_os in
6659	      solaris2.[[0-5]] | solaris2.[[0-5]].*) ;;
6660	      *)
6661		# The compiler driver will combine and reorder linker options,
6662		# but understands `-z linker_flag'.
6663	        # Supported since Solaris 2.6 (maybe 2.5.1?)
6664		_LT_TAGVAR(whole_archive_flag_spec, $1)='-z allextract$convenience -z defaultextract'
6665	        ;;
6666	    esac
6667	    _LT_TAGVAR(link_all_deplibs, $1)=yes
6668
6669	    output_verbose_link_cmd='func_echo_all'
6670
6671	    # Archives containing C++ object files must be created using
6672	    # "CC -xar", where "CC" is the Sun C++ compiler.  This is
6673	    # necessary to make sure instantiated templates are included
6674	    # in the archive.
6675	    _LT_TAGVAR(old_archive_cmds, $1)='$CC -xar -o $oldlib $oldobjs'
6676	    ;;
6677          gcx*)
6678	    # Green Hills C++ Compiler
6679	    _LT_TAGVAR(archive_cmds, $1)='$CC -shared $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags ${wl}-h $wl$soname -o $lib'
6680
6681	    # The C++ compiler must be used to create the archive.
6682	    _LT_TAGVAR(old_archive_cmds, $1)='$CC $LDFLAGS -archive -o $oldlib $oldobjs'
6683	    ;;
6684          *)
6685	    # GNU C++ compiler with Solaris linker
6686	    if test "$GXX" = yes && test "$with_gnu_ld" = no; then
6687	      _LT_TAGVAR(no_undefined_flag, $1)=' ${wl}-z ${wl}defs'
6688	      if $CC --version | $GREP -v '^2\.7' > /dev/null; then
6689	        _LT_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag -nostdlib $LDFLAGS $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags ${wl}-h $wl$soname -o $lib'
6690	        _LT_TAGVAR(archive_expsym_cmds, $1)='echo "{ global:" > $lib.exp~cat $export_symbols | $SED -e "s/\(.*\)/\1;/" >> $lib.exp~echo "local: *; };" >> $lib.exp~
6691		  $CC -shared $pic_flag -nostdlib ${wl}-M $wl$lib.exp -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags~$RM $lib.exp'
6692
6693	        # Commands to make compiler produce verbose output that lists
6694	        # what "hidden" libraries, object files and flags are used when
6695	        # linking a shared library.
6696	        output_verbose_link_cmd='$CC -shared $CFLAGS -v conftest.$objext 2>&1 | $GREP -v "^Configured with:" | $GREP "\-L"'
6697	      else
6698	        # g++ 2.7 appears to require `-G' NOT `-shared' on this
6699	        # platform.
6700	        _LT_TAGVAR(archive_cmds, $1)='$CC -G -nostdlib $LDFLAGS $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags ${wl}-h $wl$soname -o $lib'
6701	        _LT_TAGVAR(archive_expsym_cmds, $1)='echo "{ global:" > $lib.exp~cat $export_symbols | $SED -e "s/\(.*\)/\1;/" >> $lib.exp~echo "local: *; };" >> $lib.exp~
6702		  $CC -G -nostdlib ${wl}-M $wl$lib.exp -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags~$RM $lib.exp'
6703
6704	        # Commands to make compiler produce verbose output that lists
6705	        # what "hidden" libraries, object files and flags are used when
6706	        # linking a shared library.
6707	        output_verbose_link_cmd='$CC -G $CFLAGS -v conftest.$objext 2>&1 | $GREP -v "^Configured with:" | $GREP "\-L"'
6708	      fi
6709
6710	      _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-R $wl$libdir'
6711	      case $host_os in
6712		solaris2.[[0-5]] | solaris2.[[0-5]].*) ;;
6713		*)
6714		  _LT_TAGVAR(whole_archive_flag_spec, $1)='${wl}-z ${wl}allextract$convenience ${wl}-z ${wl}defaultextract'
6715		  ;;
6716	      esac
6717	    fi
6718	    ;;
6719        esac
6720        ;;
6721
6722    sysv4*uw2* | sysv5OpenUNIX* | sysv5UnixWare7.[[01]].[[10]]* | unixware7* | sco3.2v5.0.[[024]]*)
6723      _LT_TAGVAR(no_undefined_flag, $1)='${wl}-z,text'
6724      _LT_TAGVAR(archive_cmds_need_lc, $1)=no
6725      _LT_TAGVAR(hardcode_shlibpath_var, $1)=no
6726      runpath_var='LD_RUN_PATH'
6727
6728      case $cc_basename in
6729        CC*)
6730	  _LT_TAGVAR(archive_cmds, $1)='$CC -G ${wl}-h,$soname -o $lib $libobjs $deplibs $compiler_flags'
6731	  _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -G ${wl}-Bexport:$export_symbols ${wl}-h,$soname -o $lib $libobjs $deplibs $compiler_flags'
6732	  ;;
6733	*)
6734	  _LT_TAGVAR(archive_cmds, $1)='$CC -shared ${wl}-h,$soname -o $lib $libobjs $deplibs $compiler_flags'
6735	  _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -shared ${wl}-Bexport:$export_symbols ${wl}-h,$soname -o $lib $libobjs $deplibs $compiler_flags'
6736	  ;;
6737      esac
6738      ;;
6739
6740      sysv5* | sco3.2v5* | sco5v6*)
6741	# Note: We can NOT use -z defs as we might desire, because we do not
6742	# link with -lc, and that would cause any symbols used from libc to
6743	# always be unresolved, which means just about no library would
6744	# ever link correctly.  If we're not using GNU ld we use -z text
6745	# though, which does catch some bad symbols but isn't as heavy-handed
6746	# as -z defs.
6747	_LT_TAGVAR(no_undefined_flag, $1)='${wl}-z,text'
6748	_LT_TAGVAR(allow_undefined_flag, $1)='${wl}-z,nodefs'
6749	_LT_TAGVAR(archive_cmds_need_lc, $1)=no
6750	_LT_TAGVAR(hardcode_shlibpath_var, $1)=no
6751	_LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-R,$libdir'
6752	_LT_TAGVAR(hardcode_libdir_separator, $1)=':'
6753	_LT_TAGVAR(link_all_deplibs, $1)=yes
6754	_LT_TAGVAR(export_dynamic_flag_spec, $1)='${wl}-Bexport'
6755	runpath_var='LD_RUN_PATH'
6756
6757	case $cc_basename in
6758          CC*)
6759	    _LT_TAGVAR(archive_cmds, $1)='$CC -G ${wl}-h,$soname -o $lib $libobjs $deplibs $compiler_flags'
6760	    _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -G ${wl}-Bexport:$export_symbols ${wl}-h,$soname -o $lib $libobjs $deplibs $compiler_flags'
6761	    _LT_TAGVAR(old_archive_cmds, $1)='$CC -Tprelink_objects $oldobjs~
6762	      '"$_LT_TAGVAR(old_archive_cmds, $1)"
6763	    _LT_TAGVAR(reload_cmds, $1)='$CC -Tprelink_objects $reload_objs~
6764	      '"$_LT_TAGVAR(reload_cmds, $1)"
6765	    ;;
6766	  *)
6767	    _LT_TAGVAR(archive_cmds, $1)='$CC -shared ${wl}-h,$soname -o $lib $libobjs $deplibs $compiler_flags'
6768	    _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -shared ${wl}-Bexport:$export_symbols ${wl}-h,$soname -o $lib $libobjs $deplibs $compiler_flags'
6769	    ;;
6770	esac
6771      ;;
6772
6773      tandem*)
6774        case $cc_basename in
6775          NCC*)
6776	    # NonStop-UX NCC 3.20
6777	    # FIXME: insert proper C++ library support
6778	    _LT_TAGVAR(ld_shlibs, $1)=no
6779	    ;;
6780          *)
6781	    # FIXME: insert proper C++ library support
6782	    _LT_TAGVAR(ld_shlibs, $1)=no
6783	    ;;
6784        esac
6785        ;;
6786
6787      vxworks*)
6788        # FIXME: insert proper C++ library support
6789        _LT_TAGVAR(ld_shlibs, $1)=no
6790        ;;
6791
6792      *)
6793        # FIXME: insert proper C++ library support
6794        _LT_TAGVAR(ld_shlibs, $1)=no
6795        ;;
6796    esac
6797
6798    AC_MSG_RESULT([$_LT_TAGVAR(ld_shlibs, $1)])
6799    test "$_LT_TAGVAR(ld_shlibs, $1)" = no && can_build_shared=no
6800
6801    _LT_TAGVAR(GCC, $1)="$GXX"
6802    _LT_TAGVAR(LD, $1)="$LD"
6803
6804    ## CAVEAT EMPTOR:
6805    ## There is no encapsulation within the following macros, do not change
6806    ## the running order or otherwise move them around unless you know exactly
6807    ## what you are doing...
6808    _LT_SYS_HIDDEN_LIBDEPS($1)
6809    _LT_COMPILER_PIC($1)
6810    _LT_COMPILER_C_O($1)
6811    _LT_COMPILER_FILE_LOCKS($1)
6812    _LT_LINKER_SHLIBS($1)
6813    _LT_SYS_DYNAMIC_LINKER($1)
6814    _LT_LINKER_HARDCODE_LIBPATH($1)
6815
6816    _LT_CONFIG($1)
6817  fi # test -n "$compiler"
6818
6819  CC=$lt_save_CC
6820  CFLAGS=$lt_save_CFLAGS
6821  LDCXX=$LD
6822  LD=$lt_save_LD
6823  GCC=$lt_save_GCC
6824  with_gnu_ld=$lt_save_with_gnu_ld
6825  lt_cv_path_LDCXX=$lt_cv_path_LD
6826  lt_cv_path_LD=$lt_save_path_LD
6827  lt_cv_prog_gnu_ldcxx=$lt_cv_prog_gnu_ld
6828  lt_cv_prog_gnu_ld=$lt_save_with_gnu_ld
6829fi # test "$_lt_caught_CXX_error" != yes
6830
6831AC_LANG_POP
6832])# _LT_LANG_CXX_CONFIG
6833
6834
6835# _LT_FUNC_STRIPNAME_CNF
6836# ----------------------
6837# func_stripname_cnf prefix suffix name
6838# strip PREFIX and SUFFIX off of NAME.
6839# PREFIX and SUFFIX must not contain globbing or regex special
6840# characters, hashes, percent signs, but SUFFIX may contain a leading
6841# dot (in which case that matches only a dot).
6842#
6843# This function is identical to the (non-XSI) version of func_stripname,
6844# except this one can be used by m4 code that may be executed by configure,
6845# rather than the libtool script.
6846m4_defun([_LT_FUNC_STRIPNAME_CNF],[dnl
6847AC_REQUIRE([_LT_DECL_SED])
6848AC_REQUIRE([_LT_PROG_ECHO_BACKSLASH])
6849func_stripname_cnf ()
6850{
6851  case ${2} in
6852  .*) func_stripname_result=`$ECHO "${3}" | $SED "s%^${1}%%; s%\\\\${2}\$%%"`;;
6853  *)  func_stripname_result=`$ECHO "${3}" | $SED "s%^${1}%%; s%${2}\$%%"`;;
6854  esac
6855} # func_stripname_cnf
6856])# _LT_FUNC_STRIPNAME_CNF
6857
6858# _LT_SYS_HIDDEN_LIBDEPS([TAGNAME])
6859# ---------------------------------
6860# Figure out "hidden" library dependencies from verbose
6861# compiler output when linking a shared library.
6862# Parse the compiler output and extract the necessary
6863# objects, libraries and library flags.
6864m4_defun([_LT_SYS_HIDDEN_LIBDEPS],
6865[m4_require([_LT_FILEUTILS_DEFAULTS])dnl
6866AC_REQUIRE([_LT_FUNC_STRIPNAME_CNF])dnl
6867# Dependencies to place before and after the object being linked:
6868_LT_TAGVAR(predep_objects, $1)=
6869_LT_TAGVAR(postdep_objects, $1)=
6870_LT_TAGVAR(predeps, $1)=
6871_LT_TAGVAR(postdeps, $1)=
6872_LT_TAGVAR(compiler_lib_search_path, $1)=
6873
6874dnl we can't use the lt_simple_compile_test_code here,
6875dnl because it contains code intended for an executable,
6876dnl not a library.  It's possible we should let each
6877dnl tag define a new lt_????_link_test_code variable,
6878dnl but it's only used here...
6879m4_if([$1], [], [cat > conftest.$ac_ext <<_LT_EOF
6880int a;
6881void foo (void) { a = 0; }
6882_LT_EOF
6883], [$1], [CXX], [cat > conftest.$ac_ext <<_LT_EOF
6884class Foo
6885{
6886public:
6887  Foo (void) { a = 0; }
6888private:
6889  int a;
6890};
6891_LT_EOF
6892], [$1], [F77], [cat > conftest.$ac_ext <<_LT_EOF
6893      subroutine foo
6894      implicit none
6895      integer*4 a
6896      a=0
6897      return
6898      end
6899_LT_EOF
6900], [$1], [FC], [cat > conftest.$ac_ext <<_LT_EOF
6901      subroutine foo
6902      implicit none
6903      integer a
6904      a=0
6905      return
6906      end
6907_LT_EOF
6908], [$1], [GCJ], [cat > conftest.$ac_ext <<_LT_EOF
6909public class foo {
6910  private int a;
6911  public void bar (void) {
6912    a = 0;
6913  }
6914};
6915_LT_EOF
6916])
6917
6918_lt_libdeps_save_CFLAGS=$CFLAGS
6919case "$CC $CFLAGS " in #(
6920*\ -flto*\ *) CFLAGS="$CFLAGS -fno-lto" ;;
6921*\ -fwhopr*\ *) CFLAGS="$CFLAGS -fno-whopr" ;;
6922esac
6923
6924dnl Parse the compiler output and extract the necessary
6925dnl objects, libraries and library flags.
6926if AC_TRY_EVAL(ac_compile); then
6927  # Parse the compiler output and extract the necessary
6928  # objects, libraries and library flags.
6929
6930  # Sentinel used to keep track of whether or not we are before
6931  # the conftest object file.
6932  pre_test_object_deps_done=no
6933
6934  for p in `eval "$output_verbose_link_cmd"`; do
6935    case ${prev}${p} in
6936
6937    -L* | -R* | -l*)
6938       # Some compilers place space between "-{L,R}" and the path.
6939       # Remove the space.
6940       if test $p = "-L" ||
6941          test $p = "-R"; then
6942	 prev=$p
6943	 continue
6944       fi
6945
6946       # Expand the sysroot to ease extracting the directories later.
6947       if test -z "$prev"; then
6948         case $p in
6949         -L*) func_stripname_cnf '-L' '' "$p"; prev=-L; p=$func_stripname_result ;;
6950         -R*) func_stripname_cnf '-R' '' "$p"; prev=-R; p=$func_stripname_result ;;
6951         -l*) func_stripname_cnf '-l' '' "$p"; prev=-l; p=$func_stripname_result ;;
6952         esac
6953       fi
6954       case $p in
6955       =*) func_stripname_cnf '=' '' "$p"; p=$lt_sysroot$func_stripname_result ;;
6956       esac
6957       if test "$pre_test_object_deps_done" = no; then
6958	 case ${prev} in
6959	 -L | -R)
6960	   # Internal compiler library paths should come after those
6961	   # provided the user.  The postdeps already come after the
6962	   # user supplied libs so there is no need to process them.
6963	   if test -z "$_LT_TAGVAR(compiler_lib_search_path, $1)"; then
6964	     _LT_TAGVAR(compiler_lib_search_path, $1)="${prev}${p}"
6965	   else
6966	     _LT_TAGVAR(compiler_lib_search_path, $1)="${_LT_TAGVAR(compiler_lib_search_path, $1)} ${prev}${p}"
6967	   fi
6968	   ;;
6969	 # The "-l" case would never come before the object being
6970	 # linked, so don't bother handling this case.
6971	 esac
6972       else
6973	 if test -z "$_LT_TAGVAR(postdeps, $1)"; then
6974	   _LT_TAGVAR(postdeps, $1)="${prev}${p}"
6975	 else
6976	   _LT_TAGVAR(postdeps, $1)="${_LT_TAGVAR(postdeps, $1)} ${prev}${p}"
6977	 fi
6978       fi
6979       prev=
6980       ;;
6981
6982    *.lto.$objext) ;; # Ignore GCC LTO objects
6983    *.$objext)
6984       # This assumes that the test object file only shows up
6985       # once in the compiler output.
6986       if test "$p" = "conftest.$objext"; then
6987	 pre_test_object_deps_done=yes
6988	 continue
6989       fi
6990
6991       if test "$pre_test_object_deps_done" = no; then
6992	 if test -z "$_LT_TAGVAR(predep_objects, $1)"; then
6993	   _LT_TAGVAR(predep_objects, $1)="$p"
6994	 else
6995	   _LT_TAGVAR(predep_objects, $1)="$_LT_TAGVAR(predep_objects, $1) $p"
6996	 fi
6997       else
6998	 if test -z "$_LT_TAGVAR(postdep_objects, $1)"; then
6999	   _LT_TAGVAR(postdep_objects, $1)="$p"
7000	 else
7001	   _LT_TAGVAR(postdep_objects, $1)="$_LT_TAGVAR(postdep_objects, $1) $p"
7002	 fi
7003       fi
7004       ;;
7005
7006    *) ;; # Ignore the rest.
7007
7008    esac
7009  done
7010
7011  # Clean up.
7012  rm -f a.out a.exe
7013else
7014  echo "libtool.m4: error: problem compiling $1 test program"
7015fi
7016
7017$RM -f confest.$objext
7018CFLAGS=$_lt_libdeps_save_CFLAGS
7019
7020# PORTME: override above test on systems where it is broken
7021m4_if([$1], [CXX],
7022[case $host_os in
7023interix[[3-9]]*)
7024  # Interix 3.5 installs completely hosed .la files for C++, so rather than
7025  # hack all around it, let's just trust "g++" to DTRT.
7026  _LT_TAGVAR(predep_objects,$1)=
7027  _LT_TAGVAR(postdep_objects,$1)=
7028  _LT_TAGVAR(postdeps,$1)=
7029  ;;
7030
7031linux*)
7032  case `$CC -V 2>&1 | sed 5q` in
7033  *Sun\ C*)
7034    # Sun C++ 5.9
7035
7036    # The more standards-conforming stlport4 library is
7037    # incompatible with the Cstd library. Avoid specifying
7038    # it if it's in CXXFLAGS. Ignore libCrun as
7039    # -library=stlport4 depends on it.
7040    case " $CXX $CXXFLAGS " in
7041    *" -library=stlport4 "*)
7042      solaris_use_stlport4=yes
7043      ;;
7044    esac
7045
7046    if test "$solaris_use_stlport4" != yes; then
7047      _LT_TAGVAR(postdeps,$1)='-library=Cstd -library=Crun'
7048    fi
7049    ;;
7050  esac
7051  ;;
7052
7053solaris*)
7054  case $cc_basename in
7055  CC* | sunCC*)
7056    # The more standards-conforming stlport4 library is
7057    # incompatible with the Cstd library. Avoid specifying
7058    # it if it's in CXXFLAGS. Ignore libCrun as
7059    # -library=stlport4 depends on it.
7060    case " $CXX $CXXFLAGS " in
7061    *" -library=stlport4 "*)
7062      solaris_use_stlport4=yes
7063      ;;
7064    esac
7065
7066    # Adding this requires a known-good setup of shared libraries for
7067    # Sun compiler versions before 5.6, else PIC objects from an old
7068    # archive will be linked into the output, leading to subtle bugs.
7069    if test "$solaris_use_stlport4" != yes; then
7070      _LT_TAGVAR(postdeps,$1)='-library=Cstd -library=Crun'
7071    fi
7072    ;;
7073  esac
7074  ;;
7075esac
7076])
7077
7078case " $_LT_TAGVAR(postdeps, $1) " in
7079*" -lc "*) _LT_TAGVAR(archive_cmds_need_lc, $1)=no ;;
7080esac
7081 _LT_TAGVAR(compiler_lib_search_dirs, $1)=
7082if test -n "${_LT_TAGVAR(compiler_lib_search_path, $1)}"; then
7083 _LT_TAGVAR(compiler_lib_search_dirs, $1)=`echo " ${_LT_TAGVAR(compiler_lib_search_path, $1)}" | ${SED} -e 's! -L! !g' -e 's!^ !!'`
7084fi
7085_LT_TAGDECL([], [compiler_lib_search_dirs], [1],
7086    [The directories searched by this compiler when creating a shared library])
7087_LT_TAGDECL([], [predep_objects], [1],
7088    [Dependencies to place before and after the objects being linked to
7089    create a shared library])
7090_LT_TAGDECL([], [postdep_objects], [1])
7091_LT_TAGDECL([], [predeps], [1])
7092_LT_TAGDECL([], [postdeps], [1])
7093_LT_TAGDECL([], [compiler_lib_search_path], [1],
7094    [The library search path used internally by the compiler when linking
7095    a shared library])
7096])# _LT_SYS_HIDDEN_LIBDEPS
7097
7098
7099# _LT_LANG_F77_CONFIG([TAG])
7100# --------------------------
7101# Ensure that the configuration variables for a Fortran 77 compiler are
7102# suitably defined.  These variables are subsequently used by _LT_CONFIG
7103# to write the compiler configuration to `libtool'.
7104m4_defun([_LT_LANG_F77_CONFIG],
7105[AC_LANG_PUSH(Fortran 77)
7106if test -z "$F77" || test "X$F77" = "Xno"; then
7107  _lt_disable_F77=yes
7108fi
7109
7110_LT_TAGVAR(archive_cmds_need_lc, $1)=no
7111_LT_TAGVAR(allow_undefined_flag, $1)=
7112_LT_TAGVAR(always_export_symbols, $1)=no
7113_LT_TAGVAR(archive_expsym_cmds, $1)=
7114_LT_TAGVAR(export_dynamic_flag_spec, $1)=
7115_LT_TAGVAR(hardcode_direct, $1)=no
7116_LT_TAGVAR(hardcode_direct_absolute, $1)=no
7117_LT_TAGVAR(hardcode_libdir_flag_spec, $1)=
7118_LT_TAGVAR(hardcode_libdir_flag_spec_ld, $1)=
7119_LT_TAGVAR(hardcode_libdir_separator, $1)=
7120_LT_TAGVAR(hardcode_minus_L, $1)=no
7121_LT_TAGVAR(hardcode_automatic, $1)=no
7122_LT_TAGVAR(inherit_rpath, $1)=no
7123_LT_TAGVAR(module_cmds, $1)=
7124_LT_TAGVAR(module_expsym_cmds, $1)=
7125_LT_TAGVAR(link_all_deplibs, $1)=unknown
7126_LT_TAGVAR(old_archive_cmds, $1)=$old_archive_cmds
7127_LT_TAGVAR(reload_flag, $1)=$reload_flag
7128_LT_TAGVAR(reload_cmds, $1)=$reload_cmds
7129_LT_TAGVAR(no_undefined_flag, $1)=
7130_LT_TAGVAR(whole_archive_flag_spec, $1)=
7131_LT_TAGVAR(enable_shared_with_static_runtimes, $1)=no
7132
7133# Source file extension for f77 test sources.
7134ac_ext=f
7135
7136# Object file extension for compiled f77 test sources.
7137objext=o
7138_LT_TAGVAR(objext, $1)=$objext
7139
7140# No sense in running all these tests if we already determined that
7141# the F77 compiler isn't working.  Some variables (like enable_shared)
7142# are currently assumed to apply to all compilers on this platform,
7143# and will be corrupted by setting them based on a non-working compiler.
7144if test "$_lt_disable_F77" != yes; then
7145  # Code to be used in simple compile tests
7146  lt_simple_compile_test_code="\
7147      subroutine t
7148      return
7149      end
7150"
7151
7152  # Code to be used in simple link tests
7153  lt_simple_link_test_code="\
7154      program t
7155      end
7156"
7157
7158  # ltmain only uses $CC for tagged configurations so make sure $CC is set.
7159  _LT_TAG_COMPILER
7160
7161  # save warnings/boilerplate of simple test code
7162  _LT_COMPILER_BOILERPLATE
7163  _LT_LINKER_BOILERPLATE
7164
7165  # Allow CC to be a program name with arguments.
7166  lt_save_CC="$CC"
7167  lt_save_GCC=$GCC
7168  lt_save_CFLAGS=$CFLAGS
7169  CC=${F77-"f77"}
7170  CFLAGS=$FFLAGS
7171  compiler=$CC
7172  _LT_TAGVAR(compiler, $1)=$CC
7173  _LT_CC_BASENAME([$compiler])
7174  GCC=$G77
7175  if test -n "$compiler"; then
7176    AC_MSG_CHECKING([if libtool supports shared libraries])
7177    AC_MSG_RESULT([$can_build_shared])
7178
7179    AC_MSG_CHECKING([whether to build shared libraries])
7180    test "$can_build_shared" = "no" && enable_shared=no
7181
7182    # On AIX, shared libraries and static libraries use the same namespace, and
7183    # are all built from PIC.
7184    case $host_os in
7185      aix3*)
7186        test "$enable_shared" = yes && enable_static=no
7187        if test -n "$RANLIB"; then
7188          archive_cmds="$archive_cmds~\$RANLIB \$lib"
7189          postinstall_cmds='$RANLIB $lib'
7190        fi
7191        ;;
7192      aix[[4-9]]*)
7193	if test "$host_cpu" != ia64 && test "$aix_use_runtimelinking" = no ; then
7194	  test "$enable_shared" = yes && enable_static=no
7195	fi
7196        ;;
7197    esac
7198    AC_MSG_RESULT([$enable_shared])
7199
7200    AC_MSG_CHECKING([whether to build static libraries])
7201    # Make sure either enable_shared or enable_static is yes.
7202    test "$enable_shared" = yes || enable_static=yes
7203    AC_MSG_RESULT([$enable_static])
7204
7205    _LT_TAGVAR(GCC, $1)="$G77"
7206    _LT_TAGVAR(LD, $1)="$LD"
7207
7208    ## CAVEAT EMPTOR:
7209    ## There is no encapsulation within the following macros, do not change
7210    ## the running order or otherwise move them around unless you know exactly
7211    ## what you are doing...
7212    _LT_COMPILER_PIC($1)
7213    _LT_COMPILER_C_O($1)
7214    _LT_COMPILER_FILE_LOCKS($1)
7215    _LT_LINKER_SHLIBS($1)
7216    _LT_SYS_DYNAMIC_LINKER($1)
7217    _LT_LINKER_HARDCODE_LIBPATH($1)
7218
7219    _LT_CONFIG($1)
7220  fi # test -n "$compiler"
7221
7222  GCC=$lt_save_GCC
7223  CC="$lt_save_CC"
7224  CFLAGS="$lt_save_CFLAGS"
7225fi # test "$_lt_disable_F77" != yes
7226
7227AC_LANG_POP
7228])# _LT_LANG_F77_CONFIG
7229
7230
7231# _LT_LANG_FC_CONFIG([TAG])
7232# -------------------------
7233# Ensure that the configuration variables for a Fortran compiler are
7234# suitably defined.  These variables are subsequently used by _LT_CONFIG
7235# to write the compiler configuration to `libtool'.
7236m4_defun([_LT_LANG_FC_CONFIG],
7237[AC_LANG_PUSH(Fortran)
7238
7239if test -z "$FC" || test "X$FC" = "Xno"; then
7240  _lt_disable_FC=yes
7241fi
7242
7243_LT_TAGVAR(archive_cmds_need_lc, $1)=no
7244_LT_TAGVAR(allow_undefined_flag, $1)=
7245_LT_TAGVAR(always_export_symbols, $1)=no
7246_LT_TAGVAR(archive_expsym_cmds, $1)=
7247_LT_TAGVAR(export_dynamic_flag_spec, $1)=
7248_LT_TAGVAR(hardcode_direct, $1)=no
7249_LT_TAGVAR(hardcode_direct_absolute, $1)=no
7250_LT_TAGVAR(hardcode_libdir_flag_spec, $1)=
7251_LT_TAGVAR(hardcode_libdir_flag_spec_ld, $1)=
7252_LT_TAGVAR(hardcode_libdir_separator, $1)=
7253_LT_TAGVAR(hardcode_minus_L, $1)=no
7254_LT_TAGVAR(hardcode_automatic, $1)=no
7255_LT_TAGVAR(inherit_rpath, $1)=no
7256_LT_TAGVAR(module_cmds, $1)=
7257_LT_TAGVAR(module_expsym_cmds, $1)=
7258_LT_TAGVAR(link_all_deplibs, $1)=unknown
7259_LT_TAGVAR(old_archive_cmds, $1)=$old_archive_cmds
7260_LT_TAGVAR(reload_flag, $1)=$reload_flag
7261_LT_TAGVAR(reload_cmds, $1)=$reload_cmds
7262_LT_TAGVAR(no_undefined_flag, $1)=
7263_LT_TAGVAR(whole_archive_flag_spec, $1)=
7264_LT_TAGVAR(enable_shared_with_static_runtimes, $1)=no
7265
7266# Source file extension for fc test sources.
7267ac_ext=${ac_fc_srcext-f}
7268
7269# Object file extension for compiled fc test sources.
7270objext=o
7271_LT_TAGVAR(objext, $1)=$objext
7272
7273# No sense in running all these tests if we already determined that
7274# the FC compiler isn't working.  Some variables (like enable_shared)
7275# are currently assumed to apply to all compilers on this platform,
7276# and will be corrupted by setting them based on a non-working compiler.
7277if test "$_lt_disable_FC" != yes; then
7278  # Code to be used in simple compile tests
7279  lt_simple_compile_test_code="\
7280      subroutine t
7281      return
7282      end
7283"
7284
7285  # Code to be used in simple link tests
7286  lt_simple_link_test_code="\
7287      program t
7288      end
7289"
7290
7291  # ltmain only uses $CC for tagged configurations so make sure $CC is set.
7292  _LT_TAG_COMPILER
7293
7294  # save warnings/boilerplate of simple test code
7295  _LT_COMPILER_BOILERPLATE
7296  _LT_LINKER_BOILERPLATE
7297
7298  # Allow CC to be a program name with arguments.
7299  lt_save_CC="$CC"
7300  lt_save_GCC=$GCC
7301  lt_save_CFLAGS=$CFLAGS
7302  CC=${FC-"f95"}
7303  CFLAGS=$FCFLAGS
7304  compiler=$CC
7305  GCC=$ac_cv_fc_compiler_gnu
7306
7307  _LT_TAGVAR(compiler, $1)=$CC
7308  _LT_CC_BASENAME([$compiler])
7309
7310  if test -n "$compiler"; then
7311    AC_MSG_CHECKING([if libtool supports shared libraries])
7312    AC_MSG_RESULT([$can_build_shared])
7313
7314    AC_MSG_CHECKING([whether to build shared libraries])
7315    test "$can_build_shared" = "no" && enable_shared=no
7316
7317    # On AIX, shared libraries and static libraries use the same namespace, and
7318    # are all built from PIC.
7319    case $host_os in
7320      aix3*)
7321        test "$enable_shared" = yes && enable_static=no
7322        if test -n "$RANLIB"; then
7323          archive_cmds="$archive_cmds~\$RANLIB \$lib"
7324          postinstall_cmds='$RANLIB $lib'
7325        fi
7326        ;;
7327      aix[[4-9]]*)
7328	if test "$host_cpu" != ia64 && test "$aix_use_runtimelinking" = no ; then
7329	  test "$enable_shared" = yes && enable_static=no
7330	fi
7331        ;;
7332    esac
7333    AC_MSG_RESULT([$enable_shared])
7334
7335    AC_MSG_CHECKING([whether to build static libraries])
7336    # Make sure either enable_shared or enable_static is yes.
7337    test "$enable_shared" = yes || enable_static=yes
7338    AC_MSG_RESULT([$enable_static])
7339
7340    _LT_TAGVAR(GCC, $1)="$ac_cv_fc_compiler_gnu"
7341    _LT_TAGVAR(LD, $1)="$LD"
7342
7343    ## CAVEAT EMPTOR:
7344    ## There is no encapsulation within the following macros, do not change
7345    ## the running order or otherwise move them around unless you know exactly
7346    ## what you are doing...
7347    _LT_SYS_HIDDEN_LIBDEPS($1)
7348    _LT_COMPILER_PIC($1)
7349    _LT_COMPILER_C_O($1)
7350    _LT_COMPILER_FILE_LOCKS($1)
7351    _LT_LINKER_SHLIBS($1)
7352    _LT_SYS_DYNAMIC_LINKER($1)
7353    _LT_LINKER_HARDCODE_LIBPATH($1)
7354
7355    _LT_CONFIG($1)
7356  fi # test -n "$compiler"
7357
7358  GCC=$lt_save_GCC
7359  CC=$lt_save_CC
7360  CFLAGS=$lt_save_CFLAGS
7361fi # test "$_lt_disable_FC" != yes
7362
7363AC_LANG_POP
7364])# _LT_LANG_FC_CONFIG
7365
7366
7367# _LT_LANG_GCJ_CONFIG([TAG])
7368# --------------------------
7369# Ensure that the configuration variables for the GNU Java Compiler compiler
7370# are suitably defined.  These variables are subsequently used by _LT_CONFIG
7371# to write the compiler configuration to `libtool'.
7372m4_defun([_LT_LANG_GCJ_CONFIG],
7373[AC_REQUIRE([LT_PROG_GCJ])dnl
7374AC_LANG_SAVE
7375
7376# Source file extension for Java test sources.
7377ac_ext=java
7378
7379# Object file extension for compiled Java test sources.
7380objext=o
7381_LT_TAGVAR(objext, $1)=$objext
7382
7383# Code to be used in simple compile tests
7384lt_simple_compile_test_code="class foo {}"
7385
7386# Code to be used in simple link tests
7387lt_simple_link_test_code='public class conftest { public static void main(String[[]] argv) {}; }'
7388
7389# ltmain only uses $CC for tagged configurations so make sure $CC is set.
7390_LT_TAG_COMPILER
7391
7392# save warnings/boilerplate of simple test code
7393_LT_COMPILER_BOILERPLATE
7394_LT_LINKER_BOILERPLATE
7395
7396# Allow CC to be a program name with arguments.
7397lt_save_CC=$CC
7398lt_save_CFLAGS=$CFLAGS
7399lt_save_GCC=$GCC
7400GCC=yes
7401CC=${GCJ-"gcj"}
7402CFLAGS=$GCJFLAGS
7403compiler=$CC
7404_LT_TAGVAR(compiler, $1)=$CC
7405_LT_TAGVAR(LD, $1)="$LD"
7406_LT_CC_BASENAME([$compiler])
7407
7408# GCJ did not exist at the time GCC didn't implicitly link libc in.
7409_LT_TAGVAR(archive_cmds_need_lc, $1)=no
7410
7411_LT_TAGVAR(old_archive_cmds, $1)=$old_archive_cmds
7412_LT_TAGVAR(reload_flag, $1)=$reload_flag
7413_LT_TAGVAR(reload_cmds, $1)=$reload_cmds
7414
7415if test -n "$compiler"; then
7416  _LT_COMPILER_NO_RTTI($1)
7417  _LT_COMPILER_PIC($1)
7418  _LT_COMPILER_C_O($1)
7419  _LT_COMPILER_FILE_LOCKS($1)
7420  _LT_LINKER_SHLIBS($1)
7421  _LT_LINKER_HARDCODE_LIBPATH($1)
7422
7423  _LT_CONFIG($1)
7424fi
7425
7426AC_LANG_RESTORE
7427
7428GCC=$lt_save_GCC
7429CC=$lt_save_CC
7430CFLAGS=$lt_save_CFLAGS
7431])# _LT_LANG_GCJ_CONFIG
7432
7433
7434# _LT_LANG_RC_CONFIG([TAG])
7435# -------------------------
7436# Ensure that the configuration variables for the Windows resource compiler
7437# are suitably defined.  These variables are subsequently used by _LT_CONFIG
7438# to write the compiler configuration to `libtool'.
7439m4_defun([_LT_LANG_RC_CONFIG],
7440[AC_REQUIRE([LT_PROG_RC])dnl
7441AC_LANG_SAVE
7442
7443# Source file extension for RC test sources.
7444ac_ext=rc
7445
7446# Object file extension for compiled RC test sources.
7447objext=o
7448_LT_TAGVAR(objext, $1)=$objext
7449
7450# Code to be used in simple compile tests
7451lt_simple_compile_test_code='sample MENU { MENUITEM "&Soup", 100, CHECKED }'
7452
7453# Code to be used in simple link tests
7454lt_simple_link_test_code="$lt_simple_compile_test_code"
7455
7456# ltmain only uses $CC for tagged configurations so make sure $CC is set.
7457_LT_TAG_COMPILER
7458
7459# save warnings/boilerplate of simple test code
7460_LT_COMPILER_BOILERPLATE
7461_LT_LINKER_BOILERPLATE
7462
7463# Allow CC to be a program name with arguments.
7464lt_save_CC="$CC"
7465lt_save_CFLAGS=$CFLAGS
7466lt_save_GCC=$GCC
7467GCC=
7468CC=${RC-"windres"}
7469CFLAGS=
7470compiler=$CC
7471_LT_TAGVAR(compiler, $1)=$CC
7472_LT_CC_BASENAME([$compiler])
7473_LT_TAGVAR(lt_cv_prog_compiler_c_o, $1)=yes
7474
7475if test -n "$compiler"; then
7476  :
7477  _LT_CONFIG($1)
7478fi
7479
7480GCC=$lt_save_GCC
7481AC_LANG_RESTORE
7482CC=$lt_save_CC
7483CFLAGS=$lt_save_CFLAGS
7484])# _LT_LANG_RC_CONFIG
7485
7486
7487# LT_PROG_GCJ
7488# -----------
7489AC_DEFUN([LT_PROG_GCJ],
7490[m4_ifdef([AC_PROG_GCJ], [AC_PROG_GCJ],
7491  [m4_ifdef([A][M_PROG_GCJ], [A][M_PROG_GCJ],
7492    [AC_CHECK_TOOL(GCJ, gcj,)
7493      test "x${GCJFLAGS+set}" = xset || GCJFLAGS="-g -O2"
7494      AC_SUBST(GCJFLAGS)])])[]dnl
7495])
7496
7497# Old name:
7498AU_ALIAS([LT_AC_PROG_GCJ], [LT_PROG_GCJ])
7499dnl aclocal-1.4 backwards compatibility:
7500dnl AC_DEFUN([LT_AC_PROG_GCJ], [])
7501
7502
7503# LT_PROG_RC
7504# ----------
7505AC_DEFUN([LT_PROG_RC],
7506[AC_CHECK_TOOL(RC, windres,)
7507])
7508
7509# Old name:
7510AU_ALIAS([LT_AC_PROG_RC], [LT_PROG_RC])
7511dnl aclocal-1.4 backwards compatibility:
7512dnl AC_DEFUN([LT_AC_PROG_RC], [])
7513
7514
7515# _LT_DECL_EGREP
7516# --------------
7517# If we don't have a new enough Autoconf to choose the best grep
7518# available, choose the one first in the user's PATH.
7519m4_defun([_LT_DECL_EGREP],
7520[AC_REQUIRE([AC_PROG_EGREP])dnl
7521AC_REQUIRE([AC_PROG_FGREP])dnl
7522test -z "$GREP" && GREP=grep
7523_LT_DECL([], [GREP], [1], [A grep program that handles long lines])
7524_LT_DECL([], [EGREP], [1], [An ERE matcher])
7525_LT_DECL([], [FGREP], [1], [A literal string matcher])
7526dnl Non-bleeding-edge autoconf doesn't subst GREP, so do it here too
7527AC_SUBST([GREP])
7528])
7529
7530
7531# _LT_DECL_OBJDUMP
7532# --------------
7533# If we don't have a new enough Autoconf to choose the best objdump
7534# available, choose the one first in the user's PATH.
7535m4_defun([_LT_DECL_OBJDUMP],
7536[AC_CHECK_TOOL(OBJDUMP, objdump, false)
7537test -z "$OBJDUMP" && OBJDUMP=objdump
7538_LT_DECL([], [OBJDUMP], [1], [An object symbol dumper])
7539AC_SUBST([OBJDUMP])
7540])
7541
7542# _LT_DECL_DLLTOOL
7543# ----------------
7544# Ensure DLLTOOL variable is set.
7545m4_defun([_LT_DECL_DLLTOOL],
7546[AC_CHECK_TOOL(DLLTOOL, dlltool, false)
7547test -z "$DLLTOOL" && DLLTOOL=dlltool
7548_LT_DECL([], [DLLTOOL], [1], [DLL creation program])
7549AC_SUBST([DLLTOOL])
7550])
7551
7552# _LT_DECL_SED
7553# ------------
7554# Check for a fully-functional sed program, that truncates
7555# as few characters as possible.  Prefer GNU sed if found.
7556m4_defun([_LT_DECL_SED],
7557[AC_PROG_SED
7558test -z "$SED" && SED=sed
7559Xsed="$SED -e 1s/^X//"
7560_LT_DECL([], [SED], [1], [A sed program that does not truncate output])
7561_LT_DECL([], [Xsed], ["\$SED -e 1s/^X//"],
7562    [Sed that helps us avoid accidentally triggering echo(1) options like -n])
7563])# _LT_DECL_SED
7564
7565m4_ifndef([AC_PROG_SED], [
7566# NOTE: This macro has been submitted for inclusion into   #
7567#  GNU Autoconf as AC_PROG_SED.  When it is available in   #
7568#  a released version of Autoconf we should remove this    #
7569#  macro and use it instead.                               #
7570
7571m4_defun([AC_PROG_SED],
7572[AC_MSG_CHECKING([for a sed that does not truncate output])
7573AC_CACHE_VAL(lt_cv_path_SED,
7574[# Loop through the user's path and test for sed and gsed.
7575# Then use that list of sed's as ones to test for truncation.
7576as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
7577for as_dir in $PATH
7578do
7579  IFS=$as_save_IFS
7580  test -z "$as_dir" && as_dir=.
7581  for lt_ac_prog in sed gsed; do
7582    for ac_exec_ext in '' $ac_executable_extensions; do
7583      if $as_executable_p "$as_dir/$lt_ac_prog$ac_exec_ext"; then
7584        lt_ac_sed_list="$lt_ac_sed_list $as_dir/$lt_ac_prog$ac_exec_ext"
7585      fi
7586    done
7587  done
7588done
7589IFS=$as_save_IFS
7590lt_ac_max=0
7591lt_ac_count=0
7592# Add /usr/xpg4/bin/sed as it is typically found on Solaris
7593# along with /bin/sed that truncates output.
7594for lt_ac_sed in $lt_ac_sed_list /usr/xpg4/bin/sed; do
7595  test ! -f $lt_ac_sed && continue
7596  cat /dev/null > conftest.in
7597  lt_ac_count=0
7598  echo $ECHO_N "0123456789$ECHO_C" >conftest.in
7599  # Check for GNU sed and select it if it is found.
7600  if "$lt_ac_sed" --version 2>&1 < /dev/null | grep 'GNU' > /dev/null; then
7601    lt_cv_path_SED=$lt_ac_sed
7602    break
7603  fi
7604  while true; do
7605    cat conftest.in conftest.in >conftest.tmp
7606    mv conftest.tmp conftest.in
7607    cp conftest.in conftest.nl
7608    echo >>conftest.nl
7609    $lt_ac_sed -e 's/a$//' < conftest.nl >conftest.out || break
7610    cmp -s conftest.out conftest.nl || break
7611    # 10000 chars as input seems more than enough
7612    test $lt_ac_count -gt 10 && break
7613    lt_ac_count=`expr $lt_ac_count + 1`
7614    if test $lt_ac_count -gt $lt_ac_max; then
7615      lt_ac_max=$lt_ac_count
7616      lt_cv_path_SED=$lt_ac_sed
7617    fi
7618  done
7619done
7620])
7621SED=$lt_cv_path_SED
7622AC_SUBST([SED])
7623AC_MSG_RESULT([$SED])
7624])#AC_PROG_SED
7625])#m4_ifndef
7626
7627# Old name:
7628AU_ALIAS([LT_AC_PROG_SED], [AC_PROG_SED])
7629dnl aclocal-1.4 backwards compatibility:
7630dnl AC_DEFUN([LT_AC_PROG_SED], [])
7631
7632
7633# _LT_CHECK_SHELL_FEATURES
7634# ------------------------
7635# Find out whether the shell is Bourne or XSI compatible,
7636# or has some other useful features.
7637m4_defun([_LT_CHECK_SHELL_FEATURES],
7638[AC_MSG_CHECKING([whether the shell understands some XSI constructs])
7639# Try some XSI features
7640xsi_shell=no
7641( _lt_dummy="a/b/c"
7642  test "${_lt_dummy##*/},${_lt_dummy%/*},${_lt_dummy#??}"${_lt_dummy%"$_lt_dummy"}, \
7643      = c,a/b,b/c, \
7644    && eval 'test $(( 1 + 1 )) -eq 2 \
7645    && test "${#_lt_dummy}" -eq 5' ) >/dev/null 2>&1 \
7646  && xsi_shell=yes
7647AC_MSG_RESULT([$xsi_shell])
7648_LT_CONFIG_LIBTOOL_INIT([xsi_shell='$xsi_shell'])
7649
7650AC_MSG_CHECKING([whether the shell understands "+="])
7651lt_shell_append=no
7652( foo=bar; set foo baz; eval "$[1]+=\$[2]" && test "$foo" = barbaz ) \
7653    >/dev/null 2>&1 \
7654  && lt_shell_append=yes
7655AC_MSG_RESULT([$lt_shell_append])
7656_LT_CONFIG_LIBTOOL_INIT([lt_shell_append='$lt_shell_append'])
7657
7658if ( (MAIL=60; unset MAIL) || exit) >/dev/null 2>&1; then
7659  lt_unset=unset
7660else
7661  lt_unset=false
7662fi
7663_LT_DECL([], [lt_unset], [0], [whether the shell understands "unset"])dnl
7664
7665# test EBCDIC or ASCII
7666case `echo X|tr X '\101'` in
7667 A) # ASCII based system
7668    # \n is not interpreted correctly by Solaris 8 /usr/ucb/tr
7669  lt_SP2NL='tr \040 \012'
7670  lt_NL2SP='tr \015\012 \040\040'
7671  ;;
7672 *) # EBCDIC based system
7673  lt_SP2NL='tr \100 \n'
7674  lt_NL2SP='tr \r\n \100\100'
7675  ;;
7676esac
7677_LT_DECL([SP2NL], [lt_SP2NL], [1], [turn spaces into newlines])dnl
7678_LT_DECL([NL2SP], [lt_NL2SP], [1], [turn newlines into spaces])dnl
7679])# _LT_CHECK_SHELL_FEATURES
7680
7681
7682# _LT_PROG_FUNCTION_REPLACE (FUNCNAME, REPLACEMENT-BODY)
7683# ------------------------------------------------------
7684# In `$cfgfile', look for function FUNCNAME delimited by `^FUNCNAME ()$' and
7685# '^} FUNCNAME ', and replace its body with REPLACEMENT-BODY.
7686m4_defun([_LT_PROG_FUNCTION_REPLACE],
7687[dnl {
7688sed -e '/^$1 ()$/,/^} # $1 /c\
7689$1 ()\
7690{\
7691m4_bpatsubsts([$2], [$], [\\], [^\([	 ]\)], [\\\1])
7692} # Extended-shell $1 implementation' "$cfgfile" > $cfgfile.tmp \
7693  && mv -f "$cfgfile.tmp" "$cfgfile" \
7694    || (rm -f "$cfgfile" && cp "$cfgfile.tmp" "$cfgfile" && rm -f "$cfgfile.tmp")
7695test 0 -eq $? || _lt_function_replace_fail=:
7696])
7697
7698
7699# _LT_PROG_REPLACE_SHELLFNS
7700# -------------------------
7701# Replace existing portable implementations of several shell functions with
7702# equivalent extended shell implementations where those features are available..
7703m4_defun([_LT_PROG_REPLACE_SHELLFNS],
7704[if test x"$xsi_shell" = xyes; then
7705  _LT_PROG_FUNCTION_REPLACE([func_dirname], [dnl
7706    case ${1} in
7707      */*) func_dirname_result="${1%/*}${2}" ;;
7708      *  ) func_dirname_result="${3}" ;;
7709    esac])
7710
7711  _LT_PROG_FUNCTION_REPLACE([func_basename], [dnl
7712    func_basename_result="${1##*/}"])
7713
7714  _LT_PROG_FUNCTION_REPLACE([func_dirname_and_basename], [dnl
7715    case ${1} in
7716      */*) func_dirname_result="${1%/*}${2}" ;;
7717      *  ) func_dirname_result="${3}" ;;
7718    esac
7719    func_basename_result="${1##*/}"])
7720
7721  _LT_PROG_FUNCTION_REPLACE([func_stripname], [dnl
7722    # pdksh 5.2.14 does not do ${X%$Y} correctly if both X and Y are
7723    # positional parameters, so assign one to ordinary parameter first.
7724    func_stripname_result=${3}
7725    func_stripname_result=${func_stripname_result#"${1}"}
7726    func_stripname_result=${func_stripname_result%"${2}"}])
7727
7728  _LT_PROG_FUNCTION_REPLACE([func_split_long_opt], [dnl
7729    func_split_long_opt_name=${1%%=*}
7730    func_split_long_opt_arg=${1#*=}])
7731
7732  _LT_PROG_FUNCTION_REPLACE([func_split_short_opt], [dnl
7733    func_split_short_opt_arg=${1#??}
7734    func_split_short_opt_name=${1%"$func_split_short_opt_arg"}])
7735
7736  _LT_PROG_FUNCTION_REPLACE([func_lo2o], [dnl
7737    case ${1} in
7738      *.lo) func_lo2o_result=${1%.lo}.${objext} ;;
7739      *)    func_lo2o_result=${1} ;;
7740    esac])
7741
7742  _LT_PROG_FUNCTION_REPLACE([func_xform], [    func_xform_result=${1%.*}.lo])
7743
7744  _LT_PROG_FUNCTION_REPLACE([func_arith], [    func_arith_result=$(( $[*] ))])
7745
7746  _LT_PROG_FUNCTION_REPLACE([func_len], [    func_len_result=${#1}])
7747fi
7748
7749if test x"$lt_shell_append" = xyes; then
7750  _LT_PROG_FUNCTION_REPLACE([func_append], [    eval "${1}+=\\${2}"])
7751
7752  _LT_PROG_FUNCTION_REPLACE([func_append_quoted], [dnl
7753    func_quote_for_eval "${2}"
7754dnl m4 expansion turns \\\\ into \\, and then the shell eval turns that into \
7755    eval "${1}+=\\\\ \\$func_quote_for_eval_result"])
7756
7757  # Save a `func_append' function call where possible by direct use of '+='
7758  sed -e 's%func_append \([[a-zA-Z_]]\{1,\}\) "%\1+="%g' $cfgfile > $cfgfile.tmp \
7759    && mv -f "$cfgfile.tmp" "$cfgfile" \
7760      || (rm -f "$cfgfile" && cp "$cfgfile.tmp" "$cfgfile" && rm -f "$cfgfile.tmp")
7761  test 0 -eq $? || _lt_function_replace_fail=:
7762else
7763  # Save a `func_append' function call even when '+=' is not available
7764  sed -e 's%func_append \([[a-zA-Z_]]\{1,\}\) "%\1="$\1%g' $cfgfile > $cfgfile.tmp \
7765    && mv -f "$cfgfile.tmp" "$cfgfile" \
7766      || (rm -f "$cfgfile" && cp "$cfgfile.tmp" "$cfgfile" && rm -f "$cfgfile.tmp")
7767  test 0 -eq $? || _lt_function_replace_fail=:
7768fi
7769
7770if test x"$_lt_function_replace_fail" = x":"; then
7771  AC_MSG_WARN([Unable to substitute extended shell functions in $ofile])
7772fi
7773])
7774
7775# _LT_PATH_CONVERSION_FUNCTIONS
7776# -----------------------------
7777# Determine which file name conversion functions should be used by
7778# func_to_host_file (and, implicitly, by func_to_host_path).  These are needed
7779# for certain cross-compile configurations and native mingw.
7780m4_defun([_LT_PATH_CONVERSION_FUNCTIONS],
7781[AC_REQUIRE([AC_CANONICAL_HOST])dnl
7782AC_REQUIRE([AC_CANONICAL_BUILD])dnl
7783AC_MSG_CHECKING([how to convert $build file names to $host format])
7784AC_CACHE_VAL(lt_cv_to_host_file_cmd,
7785[case $host in
7786  *-*-mingw* )
7787    case $build in
7788      *-*-mingw* ) # actually msys
7789        lt_cv_to_host_file_cmd=func_convert_file_msys_to_w32
7790        ;;
7791      *-*-cygwin* )
7792        lt_cv_to_host_file_cmd=func_convert_file_cygwin_to_w32
7793        ;;
7794      * ) # otherwise, assume *nix
7795        lt_cv_to_host_file_cmd=func_convert_file_nix_to_w32
7796        ;;
7797    esac
7798    ;;
7799  *-*-cygwin* )
7800    case $build in
7801      *-*-mingw* ) # actually msys
7802        lt_cv_to_host_file_cmd=func_convert_file_msys_to_cygwin
7803        ;;
7804      *-*-cygwin* )
7805        lt_cv_to_host_file_cmd=func_convert_file_noop
7806        ;;
7807      * ) # otherwise, assume *nix
7808        lt_cv_to_host_file_cmd=func_convert_file_nix_to_cygwin
7809        ;;
7810    esac
7811    ;;
7812  * ) # unhandled hosts (and "normal" native builds)
7813    lt_cv_to_host_file_cmd=func_convert_file_noop
7814    ;;
7815esac
7816])
7817to_host_file_cmd=$lt_cv_to_host_file_cmd
7818AC_MSG_RESULT([$lt_cv_to_host_file_cmd])
7819_LT_DECL([to_host_file_cmd], [lt_cv_to_host_file_cmd],
7820         [0], [convert $build file names to $host format])dnl
7821
7822AC_MSG_CHECKING([how to convert $build file names to toolchain format])
7823AC_CACHE_VAL(lt_cv_to_tool_file_cmd,
7824[#assume ordinary cross tools, or native build.
7825lt_cv_to_tool_file_cmd=func_convert_file_noop
7826case $host in
7827  *-*-mingw* )
7828    case $build in
7829      *-*-mingw* ) # actually msys
7830        lt_cv_to_tool_file_cmd=func_convert_file_msys_to_w32
7831        ;;
7832    esac
7833    ;;
7834esac
7835])
7836to_tool_file_cmd=$lt_cv_to_tool_file_cmd
7837AC_MSG_RESULT([$lt_cv_to_tool_file_cmd])
7838_LT_DECL([to_tool_file_cmd], [lt_cv_to_tool_file_cmd],
7839         [0], [convert $build files to toolchain format])dnl
7840])# _LT_PATH_CONVERSION_FUNCTIONS
7841
7842# Helper functions for option handling.                    -*- Autoconf -*-
7843#
7844#   Copyright (C) 2004, 2005, 2007, 2008, 2009 Free Software Foundation,
7845#   Inc.
7846#   Written by Gary V. Vaughan, 2004
7847#
7848# This file is free software; the Free Software Foundation gives
7849# unlimited permission to copy and/or distribute it, with or without
7850# modifications, as long as this notice is preserved.
7851
7852# serial 7 ltoptions.m4
7853
7854# This is to help aclocal find these macros, as it can't see m4_define.
7855AC_DEFUN([LTOPTIONS_VERSION], [m4_if([1])])
7856
7857
7858# _LT_MANGLE_OPTION(MACRO-NAME, OPTION-NAME)
7859# ------------------------------------------
7860m4_define([_LT_MANGLE_OPTION],
7861[[_LT_OPTION_]m4_bpatsubst($1__$2, [[^a-zA-Z0-9_]], [_])])
7862
7863
7864# _LT_SET_OPTION(MACRO-NAME, OPTION-NAME)
7865# ---------------------------------------
7866# Set option OPTION-NAME for macro MACRO-NAME, and if there is a
7867# matching handler defined, dispatch to it.  Other OPTION-NAMEs are
7868# saved as a flag.
7869m4_define([_LT_SET_OPTION],
7870[m4_define(_LT_MANGLE_OPTION([$1], [$2]))dnl
7871m4_ifdef(_LT_MANGLE_DEFUN([$1], [$2]),
7872        _LT_MANGLE_DEFUN([$1], [$2]),
7873    [m4_warning([Unknown $1 option `$2'])])[]dnl
7874])
7875
7876
7877# _LT_IF_OPTION(MACRO-NAME, OPTION-NAME, IF-SET, [IF-NOT-SET])
7878# ------------------------------------------------------------
7879# Execute IF-SET if OPTION is set, IF-NOT-SET otherwise.
7880m4_define([_LT_IF_OPTION],
7881[m4_ifdef(_LT_MANGLE_OPTION([$1], [$2]), [$3], [$4])])
7882
7883
7884# _LT_UNLESS_OPTIONS(MACRO-NAME, OPTION-LIST, IF-NOT-SET)
7885# -------------------------------------------------------
7886# Execute IF-NOT-SET unless all options in OPTION-LIST for MACRO-NAME
7887# are set.
7888m4_define([_LT_UNLESS_OPTIONS],
7889[m4_foreach([_LT_Option], m4_split(m4_normalize([$2])),
7890	    [m4_ifdef(_LT_MANGLE_OPTION([$1], _LT_Option),
7891		      [m4_define([$0_found])])])[]dnl
7892m4_ifdef([$0_found], [m4_undefine([$0_found])], [$3
7893])[]dnl
7894])
7895
7896
7897# _LT_SET_OPTIONS(MACRO-NAME, OPTION-LIST)
7898# ----------------------------------------
7899# OPTION-LIST is a space-separated list of Libtool options associated
7900# with MACRO-NAME.  If any OPTION has a matching handler declared with
7901# LT_OPTION_DEFINE, dispatch to that macro; otherwise complain about
7902# the unknown option and exit.
7903m4_defun([_LT_SET_OPTIONS],
7904[# Set options
7905m4_foreach([_LT_Option], m4_split(m4_normalize([$2])),
7906    [_LT_SET_OPTION([$1], _LT_Option)])
7907
7908m4_if([$1],[LT_INIT],[
7909  dnl
7910  dnl Simply set some default values (i.e off) if boolean options were not
7911  dnl specified:
7912  _LT_UNLESS_OPTIONS([LT_INIT], [dlopen], [enable_dlopen=no
7913  ])
7914  _LT_UNLESS_OPTIONS([LT_INIT], [win32-dll], [enable_win32_dll=no
7915  ])
7916  dnl
7917  dnl If no reference was made to various pairs of opposing options, then
7918  dnl we run the default mode handler for the pair.  For example, if neither
7919  dnl `shared' nor `disable-shared' was passed, we enable building of shared
7920  dnl archives by default:
7921  _LT_UNLESS_OPTIONS([LT_INIT], [shared disable-shared], [_LT_ENABLE_SHARED])
7922  _LT_UNLESS_OPTIONS([LT_INIT], [static disable-static], [_LT_ENABLE_STATIC])
7923  _LT_UNLESS_OPTIONS([LT_INIT], [pic-only no-pic], [_LT_WITH_PIC])
7924  _LT_UNLESS_OPTIONS([LT_INIT], [fast-install disable-fast-install],
7925  		   [_LT_ENABLE_FAST_INSTALL])
7926  ])
7927])# _LT_SET_OPTIONS
7928
7929
7930
7931# _LT_MANGLE_DEFUN(MACRO-NAME, OPTION-NAME)
7932# -----------------------------------------
7933m4_define([_LT_MANGLE_DEFUN],
7934[[_LT_OPTION_DEFUN_]m4_bpatsubst(m4_toupper([$1__$2]), [[^A-Z0-9_]], [_])])
7935
7936
7937# LT_OPTION_DEFINE(MACRO-NAME, OPTION-NAME, CODE)
7938# -----------------------------------------------
7939m4_define([LT_OPTION_DEFINE],
7940[m4_define(_LT_MANGLE_DEFUN([$1], [$2]), [$3])[]dnl
7941])# LT_OPTION_DEFINE
7942
7943
7944# dlopen
7945# ------
7946LT_OPTION_DEFINE([LT_INIT], [dlopen], [enable_dlopen=yes
7947])
7948
7949AU_DEFUN([AC_LIBTOOL_DLOPEN],
7950[_LT_SET_OPTION([LT_INIT], [dlopen])
7951AC_DIAGNOSE([obsolete],
7952[$0: Remove this warning and the call to _LT_SET_OPTION when you
7953put the `dlopen' option into LT_INIT's first parameter.])
7954])
7955
7956dnl aclocal-1.4 backwards compatibility:
7957dnl AC_DEFUN([AC_LIBTOOL_DLOPEN], [])
7958
7959
7960# win32-dll
7961# ---------
7962# Declare package support for building win32 dll's.
7963LT_OPTION_DEFINE([LT_INIT], [win32-dll],
7964[enable_win32_dll=yes
7965
7966case $host in
7967*-*-cygwin* | *-*-mingw* | *-*-pw32* | *-*-cegcc*)
7968  AC_CHECK_TOOL(AS, as, false)
7969  AC_CHECK_TOOL(DLLTOOL, dlltool, false)
7970  AC_CHECK_TOOL(OBJDUMP, objdump, false)
7971  ;;
7972esac
7973
7974test -z "$AS" && AS=as
7975_LT_DECL([], [AS],      [1], [Assembler program])dnl
7976
7977test -z "$DLLTOOL" && DLLTOOL=dlltool
7978_LT_DECL([], [DLLTOOL], [1], [DLL creation program])dnl
7979
7980test -z "$OBJDUMP" && OBJDUMP=objdump
7981_LT_DECL([], [OBJDUMP], [1], [Object dumper program])dnl
7982])# win32-dll
7983
7984AU_DEFUN([AC_LIBTOOL_WIN32_DLL],
7985[AC_REQUIRE([AC_CANONICAL_HOST])dnl
7986_LT_SET_OPTION([LT_INIT], [win32-dll])
7987AC_DIAGNOSE([obsolete],
7988[$0: Remove this warning and the call to _LT_SET_OPTION when you
7989put the `win32-dll' option into LT_INIT's first parameter.])
7990])
7991
7992dnl aclocal-1.4 backwards compatibility:
7993dnl AC_DEFUN([AC_LIBTOOL_WIN32_DLL], [])
7994
7995
7996# _LT_ENABLE_SHARED([DEFAULT])
7997# ----------------------------
7998# implement the --enable-shared flag, and supports the `shared' and
7999# `disable-shared' LT_INIT options.
8000# DEFAULT is either `yes' or `no'.  If omitted, it defaults to `yes'.
8001m4_define([_LT_ENABLE_SHARED],
8002[m4_define([_LT_ENABLE_SHARED_DEFAULT], [m4_if($1, no, no, yes)])dnl
8003AC_ARG_ENABLE([shared],
8004    [AS_HELP_STRING([--enable-shared@<:@=PKGS@:>@],
8005	[build shared libraries @<:@default=]_LT_ENABLE_SHARED_DEFAULT[@:>@])],
8006    [p=${PACKAGE-default}
8007    case $enableval in
8008    yes) enable_shared=yes ;;
8009    no) enable_shared=no ;;
8010    *)
8011      enable_shared=no
8012      # Look at the argument we got.  We use all the common list separators.
8013      lt_save_ifs="$IFS"; IFS="${IFS}$PATH_SEPARATOR,"
8014      for pkg in $enableval; do
8015	IFS="$lt_save_ifs"
8016	if test "X$pkg" = "X$p"; then
8017	  enable_shared=yes
8018	fi
8019      done
8020      IFS="$lt_save_ifs"
8021      ;;
8022    esac],
8023    [enable_shared=]_LT_ENABLE_SHARED_DEFAULT)
8024
8025    _LT_DECL([build_libtool_libs], [enable_shared], [0],
8026	[Whether or not to build shared libraries])
8027])# _LT_ENABLE_SHARED
8028
8029LT_OPTION_DEFINE([LT_INIT], [shared], [_LT_ENABLE_SHARED([yes])])
8030LT_OPTION_DEFINE([LT_INIT], [disable-shared], [_LT_ENABLE_SHARED([no])])
8031
8032# Old names:
8033AC_DEFUN([AC_ENABLE_SHARED],
8034[_LT_SET_OPTION([LT_INIT], m4_if([$1], [no], [disable-])[shared])
8035])
8036
8037AC_DEFUN([AC_DISABLE_SHARED],
8038[_LT_SET_OPTION([LT_INIT], [disable-shared])
8039])
8040
8041AU_DEFUN([AM_ENABLE_SHARED], [AC_ENABLE_SHARED($@)])
8042AU_DEFUN([AM_DISABLE_SHARED], [AC_DISABLE_SHARED($@)])
8043
8044dnl aclocal-1.4 backwards compatibility:
8045dnl AC_DEFUN([AM_ENABLE_SHARED], [])
8046dnl AC_DEFUN([AM_DISABLE_SHARED], [])
8047
8048
8049
8050# _LT_ENABLE_STATIC([DEFAULT])
8051# ----------------------------
8052# implement the --enable-static flag, and support the `static' and
8053# `disable-static' LT_INIT options.
8054# DEFAULT is either `yes' or `no'.  If omitted, it defaults to `yes'.
8055m4_define([_LT_ENABLE_STATIC],
8056[m4_define([_LT_ENABLE_STATIC_DEFAULT], [m4_if($1, no, no, yes)])dnl
8057AC_ARG_ENABLE([static],
8058    [AS_HELP_STRING([--enable-static@<:@=PKGS@:>@],
8059	[build static libraries @<:@default=]_LT_ENABLE_STATIC_DEFAULT[@:>@])],
8060    [p=${PACKAGE-default}
8061    case $enableval in
8062    yes) enable_static=yes ;;
8063    no) enable_static=no ;;
8064    *)
8065     enable_static=no
8066      # Look at the argument we got.  We use all the common list separators.
8067      lt_save_ifs="$IFS"; IFS="${IFS}$PATH_SEPARATOR,"
8068      for pkg in $enableval; do
8069	IFS="$lt_save_ifs"
8070	if test "X$pkg" = "X$p"; then
8071	  enable_static=yes
8072	fi
8073      done
8074      IFS="$lt_save_ifs"
8075      ;;
8076    esac],
8077    [enable_static=]_LT_ENABLE_STATIC_DEFAULT)
8078
8079    _LT_DECL([build_old_libs], [enable_static], [0],
8080	[Whether or not to build static libraries])
8081])# _LT_ENABLE_STATIC
8082
8083LT_OPTION_DEFINE([LT_INIT], [static], [_LT_ENABLE_STATIC([yes])])
8084LT_OPTION_DEFINE([LT_INIT], [disable-static], [_LT_ENABLE_STATIC([no])])
8085
8086# Old names:
8087AC_DEFUN([AC_ENABLE_STATIC],
8088[_LT_SET_OPTION([LT_INIT], m4_if([$1], [no], [disable-])[static])
8089])
8090
8091AC_DEFUN([AC_DISABLE_STATIC],
8092[_LT_SET_OPTION([LT_INIT], [disable-static])
8093])
8094
8095AU_DEFUN([AM_ENABLE_STATIC], [AC_ENABLE_STATIC($@)])
8096AU_DEFUN([AM_DISABLE_STATIC], [AC_DISABLE_STATIC($@)])
8097
8098dnl aclocal-1.4 backwards compatibility:
8099dnl AC_DEFUN([AM_ENABLE_STATIC], [])
8100dnl AC_DEFUN([AM_DISABLE_STATIC], [])
8101
8102
8103
8104# _LT_ENABLE_FAST_INSTALL([DEFAULT])
8105# ----------------------------------
8106# implement the --enable-fast-install flag, and support the `fast-install'
8107# and `disable-fast-install' LT_INIT options.
8108# DEFAULT is either `yes' or `no'.  If omitted, it defaults to `yes'.
8109m4_define([_LT_ENABLE_FAST_INSTALL],
8110[m4_define([_LT_ENABLE_FAST_INSTALL_DEFAULT], [m4_if($1, no, no, yes)])dnl
8111AC_ARG_ENABLE([fast-install],
8112    [AS_HELP_STRING([--enable-fast-install@<:@=PKGS@:>@],
8113    [optimize for fast installation @<:@default=]_LT_ENABLE_FAST_INSTALL_DEFAULT[@:>@])],
8114    [p=${PACKAGE-default}
8115    case $enableval in
8116    yes) enable_fast_install=yes ;;
8117    no) enable_fast_install=no ;;
8118    *)
8119      enable_fast_install=no
8120      # Look at the argument we got.  We use all the common list separators.
8121      lt_save_ifs="$IFS"; IFS="${IFS}$PATH_SEPARATOR,"
8122      for pkg in $enableval; do
8123	IFS="$lt_save_ifs"
8124	if test "X$pkg" = "X$p"; then
8125	  enable_fast_install=yes
8126	fi
8127      done
8128      IFS="$lt_save_ifs"
8129      ;;
8130    esac],
8131    [enable_fast_install=]_LT_ENABLE_FAST_INSTALL_DEFAULT)
8132
8133_LT_DECL([fast_install], [enable_fast_install], [0],
8134	 [Whether or not to optimize for fast installation])dnl
8135])# _LT_ENABLE_FAST_INSTALL
8136
8137LT_OPTION_DEFINE([LT_INIT], [fast-install], [_LT_ENABLE_FAST_INSTALL([yes])])
8138LT_OPTION_DEFINE([LT_INIT], [disable-fast-install], [_LT_ENABLE_FAST_INSTALL([no])])
8139
8140# Old names:
8141AU_DEFUN([AC_ENABLE_FAST_INSTALL],
8142[_LT_SET_OPTION([LT_INIT], m4_if([$1], [no], [disable-])[fast-install])
8143AC_DIAGNOSE([obsolete],
8144[$0: Remove this warning and the call to _LT_SET_OPTION when you put
8145the `fast-install' option into LT_INIT's first parameter.])
8146])
8147
8148AU_DEFUN([AC_DISABLE_FAST_INSTALL],
8149[_LT_SET_OPTION([LT_INIT], [disable-fast-install])
8150AC_DIAGNOSE([obsolete],
8151[$0: Remove this warning and the call to _LT_SET_OPTION when you put
8152the `disable-fast-install' option into LT_INIT's first parameter.])
8153])
8154
8155dnl aclocal-1.4 backwards compatibility:
8156dnl AC_DEFUN([AC_ENABLE_FAST_INSTALL], [])
8157dnl AC_DEFUN([AM_DISABLE_FAST_INSTALL], [])
8158
8159
8160# _LT_WITH_PIC([MODE])
8161# --------------------
8162# implement the --with-pic flag, and support the `pic-only' and `no-pic'
8163# LT_INIT options.
8164# MODE is either `yes' or `no'.  If omitted, it defaults to `both'.
8165m4_define([_LT_WITH_PIC],
8166[AC_ARG_WITH([pic],
8167    [AS_HELP_STRING([--with-pic],
8168	[try to use only PIC/non-PIC objects @<:@default=use both@:>@])],
8169    [pic_mode="$withval"],
8170    [pic_mode=default])
8171
8172test -z "$pic_mode" && pic_mode=m4_default([$1], [default])
8173
8174_LT_DECL([], [pic_mode], [0], [What type of objects to build])dnl
8175])# _LT_WITH_PIC
8176
8177LT_OPTION_DEFINE([LT_INIT], [pic-only], [_LT_WITH_PIC([yes])])
8178LT_OPTION_DEFINE([LT_INIT], [no-pic], [_LT_WITH_PIC([no])])
8179
8180# Old name:
8181AU_DEFUN([AC_LIBTOOL_PICMODE],
8182[_LT_SET_OPTION([LT_INIT], [pic-only])
8183AC_DIAGNOSE([obsolete],
8184[$0: Remove this warning and the call to _LT_SET_OPTION when you
8185put the `pic-only' option into LT_INIT's first parameter.])
8186])
8187
8188dnl aclocal-1.4 backwards compatibility:
8189dnl AC_DEFUN([AC_LIBTOOL_PICMODE], [])
8190
8191
8192m4_define([_LTDL_MODE], [])
8193LT_OPTION_DEFINE([LTDL_INIT], [nonrecursive],
8194		 [m4_define([_LTDL_MODE], [nonrecursive])])
8195LT_OPTION_DEFINE([LTDL_INIT], [recursive],
8196		 [m4_define([_LTDL_MODE], [recursive])])
8197LT_OPTION_DEFINE([LTDL_INIT], [subproject],
8198		 [m4_define([_LTDL_MODE], [subproject])])
8199
8200m4_define([_LTDL_TYPE], [])
8201LT_OPTION_DEFINE([LTDL_INIT], [installable],
8202		 [m4_define([_LTDL_TYPE], [installable])])
8203LT_OPTION_DEFINE([LTDL_INIT], [convenience],
8204		 [m4_define([_LTDL_TYPE], [convenience])])
8205
8206# ltsugar.m4 -- libtool m4 base layer.                         -*-Autoconf-*-
8207#
8208# Copyright (C) 2004, 2005, 2007, 2008 Free Software Foundation, Inc.
8209# Written by Gary V. Vaughan, 2004
8210#
8211# This file is free software; the Free Software Foundation gives
8212# unlimited permission to copy and/or distribute it, with or without
8213# modifications, as long as this notice is preserved.
8214
8215# serial 6 ltsugar.m4
8216
8217# This is to help aclocal find these macros, as it can't see m4_define.
8218AC_DEFUN([LTSUGAR_VERSION], [m4_if([0.1])])
8219
8220
8221# lt_join(SEP, ARG1, [ARG2...])
8222# -----------------------------
8223# Produce ARG1SEPARG2...SEPARGn, omitting [] arguments and their
8224# associated separator.
8225# Needed until we can rely on m4_join from Autoconf 2.62, since all earlier
8226# versions in m4sugar had bugs.
8227m4_define([lt_join],
8228[m4_if([$#], [1], [],
8229       [$#], [2], [[$2]],
8230       [m4_if([$2], [], [], [[$2]_])$0([$1], m4_shift(m4_shift($@)))])])
8231m4_define([_lt_join],
8232[m4_if([$#$2], [2], [],
8233       [m4_if([$2], [], [], [[$1$2]])$0([$1], m4_shift(m4_shift($@)))])])
8234
8235
8236# lt_car(LIST)
8237# lt_cdr(LIST)
8238# ------------
8239# Manipulate m4 lists.
8240# These macros are necessary as long as will still need to support
8241# Autoconf-2.59 which quotes differently.
8242m4_define([lt_car], [[$1]])
8243m4_define([lt_cdr],
8244[m4_if([$#], 0, [m4_fatal([$0: cannot be called without arguments])],
8245       [$#], 1, [],
8246       [m4_dquote(m4_shift($@))])])
8247m4_define([lt_unquote], $1)
8248
8249
8250# lt_append(MACRO-NAME, STRING, [SEPARATOR])
8251# ------------------------------------------
8252# Redefine MACRO-NAME to hold its former content plus `SEPARATOR'`STRING'.
8253# Note that neither SEPARATOR nor STRING are expanded; they are appended
8254# to MACRO-NAME as is (leaving the expansion for when MACRO-NAME is invoked).
8255# No SEPARATOR is output if MACRO-NAME was previously undefined (different
8256# than defined and empty).
8257#
8258# This macro is needed until we can rely on Autoconf 2.62, since earlier
8259# versions of m4sugar mistakenly expanded SEPARATOR but not STRING.
8260m4_define([lt_append],
8261[m4_define([$1],
8262	   m4_ifdef([$1], [m4_defn([$1])[$3]])[$2])])
8263
8264
8265
8266# lt_combine(SEP, PREFIX-LIST, INFIX, SUFFIX1, [SUFFIX2...])
8267# ----------------------------------------------------------
8268# Produce a SEP delimited list of all paired combinations of elements of
8269# PREFIX-LIST with SUFFIX1 through SUFFIXn.  Each element of the list
8270# has the form PREFIXmINFIXSUFFIXn.
8271# Needed until we can rely on m4_combine added in Autoconf 2.62.
8272m4_define([lt_combine],
8273[m4_if(m4_eval([$# > 3]), [1],
8274       [m4_pushdef([_Lt_sep], [m4_define([_Lt_sep], m4_defn([lt_car]))])]]dnl
8275[[m4_foreach([_Lt_prefix], [$2],
8276	     [m4_foreach([_Lt_suffix],
8277		]m4_dquote(m4_dquote(m4_shift(m4_shift(m4_shift($@)))))[,
8278	[_Lt_sep([$1])[]m4_defn([_Lt_prefix])[$3]m4_defn([_Lt_suffix])])])])])
8279
8280
8281# lt_if_append_uniq(MACRO-NAME, VARNAME, [SEPARATOR], [UNIQ], [NOT-UNIQ])
8282# -----------------------------------------------------------------------
8283# Iff MACRO-NAME does not yet contain VARNAME, then append it (delimited
8284# by SEPARATOR if supplied) and expand UNIQ, else NOT-UNIQ.
8285m4_define([lt_if_append_uniq],
8286[m4_ifdef([$1],
8287	  [m4_if(m4_index([$3]m4_defn([$1])[$3], [$3$2$3]), [-1],
8288		 [lt_append([$1], [$2], [$3])$4],
8289		 [$5])],
8290	  [lt_append([$1], [$2], [$3])$4])])
8291
8292
8293# lt_dict_add(DICT, KEY, VALUE)
8294# -----------------------------
8295m4_define([lt_dict_add],
8296[m4_define([$1($2)], [$3])])
8297
8298
8299# lt_dict_add_subkey(DICT, KEY, SUBKEY, VALUE)
8300# --------------------------------------------
8301m4_define([lt_dict_add_subkey],
8302[m4_define([$1($2:$3)], [$4])])
8303
8304
8305# lt_dict_fetch(DICT, KEY, [SUBKEY])
8306# ----------------------------------
8307m4_define([lt_dict_fetch],
8308[m4_ifval([$3],
8309	m4_ifdef([$1($2:$3)], [m4_defn([$1($2:$3)])]),
8310    m4_ifdef([$1($2)], [m4_defn([$1($2)])]))])
8311
8312
8313# lt_if_dict_fetch(DICT, KEY, [SUBKEY], VALUE, IF-TRUE, [IF-FALSE])
8314# -----------------------------------------------------------------
8315m4_define([lt_if_dict_fetch],
8316[m4_if(lt_dict_fetch([$1], [$2], [$3]), [$4],
8317	[$5],
8318    [$6])])
8319
8320
8321# lt_dict_filter(DICT, [SUBKEY], VALUE, [SEPARATOR], KEY, [...])
8322# --------------------------------------------------------------
8323m4_define([lt_dict_filter],
8324[m4_if([$5], [], [],
8325  [lt_join(m4_quote(m4_default([$4], [[, ]])),
8326           lt_unquote(m4_split(m4_normalize(m4_foreach(_Lt_key, lt_car([m4_shiftn(4, $@)]),
8327		      [lt_if_dict_fetch([$1], _Lt_key, [$2], [$3], [_Lt_key ])])))))])[]dnl
8328])
8329
8330# ltversion.m4 -- version numbers			-*- Autoconf -*-
8331#
8332#   Copyright (C) 2004 Free Software Foundation, Inc.
8333#   Written by Scott James Remnant, 2004
8334#
8335# This file is free software; the Free Software Foundation gives
8336# unlimited permission to copy and/or distribute it, with or without
8337# modifications, as long as this notice is preserved.
8338
8339# @configure_input@
8340
8341# serial 3293 ltversion.m4
8342# This file is part of GNU Libtool
8343
8344m4_define([LT_PACKAGE_VERSION], [2.4])
8345m4_define([LT_PACKAGE_REVISION], [1.3293])
8346
8347AC_DEFUN([LTVERSION_VERSION],
8348[macro_version='2.4'
8349macro_revision='1.3293'
8350_LT_DECL(, macro_version, 0, [Which release of libtool.m4 was used?])
8351_LT_DECL(, macro_revision, 0)
8352])
8353
8354# lt~obsolete.m4 -- aclocal satisfying obsolete definitions.    -*-Autoconf-*-
8355#
8356#   Copyright (C) 2004, 2005, 2007, 2009 Free Software Foundation, Inc.
8357#   Written by Scott James Remnant, 2004.
8358#
8359# This file is free software; the Free Software Foundation gives
8360# unlimited permission to copy and/or distribute it, with or without
8361# modifications, as long as this notice is preserved.
8362
8363# serial 5 lt~obsolete.m4
8364
8365# These exist entirely to fool aclocal when bootstrapping libtool.
8366#
8367# In the past libtool.m4 has provided macros via AC_DEFUN (or AU_DEFUN)
8368# which have later been changed to m4_define as they aren't part of the
8369# exported API, or moved to Autoconf or Automake where they belong.
8370#
8371# The trouble is, aclocal is a bit thick.  It'll see the old AC_DEFUN
8372# in /usr/share/aclocal/libtool.m4 and remember it, then when it sees us
8373# using a macro with the same name in our local m4/libtool.m4 it'll
8374# pull the old libtool.m4 in (it doesn't see our shiny new m4_define
8375# and doesn't know about Autoconf macros at all.)
8376#
8377# So we provide this file, which has a silly filename so it's always
8378# included after everything else.  This provides aclocal with the
8379# AC_DEFUNs it wants, but when m4 processes it, it doesn't do anything
8380# because those macros already exist, or will be overwritten later.
8381# We use AC_DEFUN over AU_DEFUN for compatibility with aclocal-1.6. 
8382#
8383# Anytime we withdraw an AC_DEFUN or AU_DEFUN, remember to add it here.
8384# Yes, that means every name once taken will need to remain here until
8385# we give up compatibility with versions before 1.7, at which point
8386# we need to keep only those names which we still refer to.
8387
8388# This is to help aclocal find these macros, as it can't see m4_define.
8389AC_DEFUN([LTOBSOLETE_VERSION], [m4_if([1])])
8390
8391m4_ifndef([AC_LIBTOOL_LINKER_OPTION],	[AC_DEFUN([AC_LIBTOOL_LINKER_OPTION])])
8392m4_ifndef([AC_PROG_EGREP],		[AC_DEFUN([AC_PROG_EGREP])])
8393m4_ifndef([_LT_AC_PROG_ECHO_BACKSLASH],	[AC_DEFUN([_LT_AC_PROG_ECHO_BACKSLASH])])
8394m4_ifndef([_LT_AC_SHELL_INIT],		[AC_DEFUN([_LT_AC_SHELL_INIT])])
8395m4_ifndef([_LT_AC_SYS_LIBPATH_AIX],	[AC_DEFUN([_LT_AC_SYS_LIBPATH_AIX])])
8396m4_ifndef([_LT_PROG_LTMAIN],		[AC_DEFUN([_LT_PROG_LTMAIN])])
8397m4_ifndef([_LT_AC_TAGVAR],		[AC_DEFUN([_LT_AC_TAGVAR])])
8398m4_ifndef([AC_LTDL_ENABLE_INSTALL],	[AC_DEFUN([AC_LTDL_ENABLE_INSTALL])])
8399m4_ifndef([AC_LTDL_PREOPEN],		[AC_DEFUN([AC_LTDL_PREOPEN])])
8400m4_ifndef([_LT_AC_SYS_COMPILER],	[AC_DEFUN([_LT_AC_SYS_COMPILER])])
8401m4_ifndef([_LT_AC_LOCK],		[AC_DEFUN([_LT_AC_LOCK])])
8402m4_ifndef([AC_LIBTOOL_SYS_OLD_ARCHIVE],	[AC_DEFUN([AC_LIBTOOL_SYS_OLD_ARCHIVE])])
8403m4_ifndef([_LT_AC_TRY_DLOPEN_SELF],	[AC_DEFUN([_LT_AC_TRY_DLOPEN_SELF])])
8404m4_ifndef([AC_LIBTOOL_PROG_CC_C_O],	[AC_DEFUN([AC_LIBTOOL_PROG_CC_C_O])])
8405m4_ifndef([AC_LIBTOOL_SYS_HARD_LINK_LOCKS], [AC_DEFUN([AC_LIBTOOL_SYS_HARD_LINK_LOCKS])])
8406m4_ifndef([AC_LIBTOOL_OBJDIR],		[AC_DEFUN([AC_LIBTOOL_OBJDIR])])
8407m4_ifndef([AC_LTDL_OBJDIR],		[AC_DEFUN([AC_LTDL_OBJDIR])])
8408m4_ifndef([AC_LIBTOOL_PROG_LD_HARDCODE_LIBPATH], [AC_DEFUN([AC_LIBTOOL_PROG_LD_HARDCODE_LIBPATH])])
8409m4_ifndef([AC_LIBTOOL_SYS_LIB_STRIP],	[AC_DEFUN([AC_LIBTOOL_SYS_LIB_STRIP])])
8410m4_ifndef([AC_PATH_MAGIC],		[AC_DEFUN([AC_PATH_MAGIC])])
8411m4_ifndef([AC_PROG_LD_GNU],		[AC_DEFUN([AC_PROG_LD_GNU])])
8412m4_ifndef([AC_PROG_LD_RELOAD_FLAG],	[AC_DEFUN([AC_PROG_LD_RELOAD_FLAG])])
8413m4_ifndef([AC_DEPLIBS_CHECK_METHOD],	[AC_DEFUN([AC_DEPLIBS_CHECK_METHOD])])
8414m4_ifndef([AC_LIBTOOL_PROG_COMPILER_NO_RTTI], [AC_DEFUN([AC_LIBTOOL_PROG_COMPILER_NO_RTTI])])
8415m4_ifndef([AC_LIBTOOL_SYS_GLOBAL_SYMBOL_PIPE], [AC_DEFUN([AC_LIBTOOL_SYS_GLOBAL_SYMBOL_PIPE])])
8416m4_ifndef([AC_LIBTOOL_PROG_COMPILER_PIC], [AC_DEFUN([AC_LIBTOOL_PROG_COMPILER_PIC])])
8417m4_ifndef([AC_LIBTOOL_PROG_LD_SHLIBS],	[AC_DEFUN([AC_LIBTOOL_PROG_LD_SHLIBS])])
8418m4_ifndef([AC_LIBTOOL_POSTDEP_PREDEP],	[AC_DEFUN([AC_LIBTOOL_POSTDEP_PREDEP])])
8419m4_ifndef([LT_AC_PROG_EGREP],		[AC_DEFUN([LT_AC_PROG_EGREP])])
8420m4_ifndef([LT_AC_PROG_SED],		[AC_DEFUN([LT_AC_PROG_SED])])
8421m4_ifndef([_LT_CC_BASENAME],		[AC_DEFUN([_LT_CC_BASENAME])])
8422m4_ifndef([_LT_COMPILER_BOILERPLATE],	[AC_DEFUN([_LT_COMPILER_BOILERPLATE])])
8423m4_ifndef([_LT_LINKER_BOILERPLATE],	[AC_DEFUN([_LT_LINKER_BOILERPLATE])])
8424m4_ifndef([_AC_PROG_LIBTOOL],		[AC_DEFUN([_AC_PROG_LIBTOOL])])
8425m4_ifndef([AC_LIBTOOL_SETUP],		[AC_DEFUN([AC_LIBTOOL_SETUP])])
8426m4_ifndef([_LT_AC_CHECK_DLFCN],		[AC_DEFUN([_LT_AC_CHECK_DLFCN])])
8427m4_ifndef([AC_LIBTOOL_SYS_DYNAMIC_LINKER],	[AC_DEFUN([AC_LIBTOOL_SYS_DYNAMIC_LINKER])])
8428m4_ifndef([_LT_AC_TAGCONFIG],		[AC_DEFUN([_LT_AC_TAGCONFIG])])
8429m4_ifndef([AC_DISABLE_FAST_INSTALL],	[AC_DEFUN([AC_DISABLE_FAST_INSTALL])])
8430m4_ifndef([_LT_AC_LANG_CXX],		[AC_DEFUN([_LT_AC_LANG_CXX])])
8431m4_ifndef([_LT_AC_LANG_F77],		[AC_DEFUN([_LT_AC_LANG_F77])])
8432m4_ifndef([_LT_AC_LANG_GCJ],		[AC_DEFUN([_LT_AC_LANG_GCJ])])
8433m4_ifndef([AC_LIBTOOL_LANG_C_CONFIG],	[AC_DEFUN([AC_LIBTOOL_LANG_C_CONFIG])])
8434m4_ifndef([_LT_AC_LANG_C_CONFIG],	[AC_DEFUN([_LT_AC_LANG_C_CONFIG])])
8435m4_ifndef([AC_LIBTOOL_LANG_CXX_CONFIG],	[AC_DEFUN([AC_LIBTOOL_LANG_CXX_CONFIG])])
8436m4_ifndef([_LT_AC_LANG_CXX_CONFIG],	[AC_DEFUN([_LT_AC_LANG_CXX_CONFIG])])
8437m4_ifndef([AC_LIBTOOL_LANG_F77_CONFIG],	[AC_DEFUN([AC_LIBTOOL_LANG_F77_CONFIG])])
8438m4_ifndef([_LT_AC_LANG_F77_CONFIG],	[AC_DEFUN([_LT_AC_LANG_F77_CONFIG])])
8439m4_ifndef([AC_LIBTOOL_LANG_GCJ_CONFIG],	[AC_DEFUN([AC_LIBTOOL_LANG_GCJ_CONFIG])])
8440m4_ifndef([_LT_AC_LANG_GCJ_CONFIG],	[AC_DEFUN([_LT_AC_LANG_GCJ_CONFIG])])
8441m4_ifndef([AC_LIBTOOL_LANG_RC_CONFIG],	[AC_DEFUN([AC_LIBTOOL_LANG_RC_CONFIG])])
8442m4_ifndef([_LT_AC_LANG_RC_CONFIG],	[AC_DEFUN([_LT_AC_LANG_RC_CONFIG])])
8443m4_ifndef([AC_LIBTOOL_CONFIG],		[AC_DEFUN([AC_LIBTOOL_CONFIG])])
8444m4_ifndef([_LT_AC_FILE_LTDLL_C],	[AC_DEFUN([_LT_AC_FILE_LTDLL_C])])
8445m4_ifndef([_LT_REQUIRED_DARWIN_CHECKS],	[AC_DEFUN([_LT_REQUIRED_DARWIN_CHECKS])])
8446m4_ifndef([_LT_AC_PROG_CXXCPP],		[AC_DEFUN([_LT_AC_PROG_CXXCPP])])
8447m4_ifndef([_LT_PREPARE_SED_QUOTE_VARS],	[AC_DEFUN([_LT_PREPARE_SED_QUOTE_VARS])])
8448m4_ifndef([_LT_PROG_ECHO_BACKSLASH],	[AC_DEFUN([_LT_PROG_ECHO_BACKSLASH])])
8449m4_ifndef([_LT_PROG_F77],		[AC_DEFUN([_LT_PROG_F77])])
8450m4_ifndef([_LT_PROG_FC],		[AC_DEFUN([_LT_PROG_FC])])
8451m4_ifndef([_LT_PROG_CXX],		[AC_DEFUN([_LT_PROG_CXX])])
8452
8453# pkg.m4 - Macros to locate and utilise pkg-config.            -*- Autoconf -*-
8454# serial 1 (pkg-config-0.24)
8455# 
8456# Copyright © 2004 Scott James Remnant <scott@netsplit.com>.
8457#
8458# This program is free software; you can redistribute it and/or modify
8459# it under the terms of the GNU General Public License as published by
8460# the Free Software Foundation; either version 2 of the License, or
8461# (at your option) any later version.
8462#
8463# This program is distributed in the hope that it will be useful, but
8464# WITHOUT ANY WARRANTY; without even the implied warranty of
8465# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
8466# General Public License for more details.
8467#
8468# You should have received a copy of the GNU General Public License
8469# along with this program; if not, write to the Free Software
8470# Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
8471#
8472# As a special exception to the GNU General Public License, if you
8473# distribute this file as part of a program that contains a
8474# configuration script generated by Autoconf, you may include it under
8475# the same distribution terms that you use for the rest of that program.
8476
8477# PKG_PROG_PKG_CONFIG([MIN-VERSION])
8478# ----------------------------------
8479AC_DEFUN([PKG_PROG_PKG_CONFIG],
8480[m4_pattern_forbid([^_?PKG_[A-Z_]+$])
8481m4_pattern_allow([^PKG_CONFIG(_PATH)?$])
8482AC_ARG_VAR([PKG_CONFIG], [path to pkg-config utility])
8483AC_ARG_VAR([PKG_CONFIG_PATH], [directories to add to pkg-config's search path])
8484AC_ARG_VAR([PKG_CONFIG_LIBDIR], [path overriding pkg-config's built-in search path])
8485
8486if test "x$ac_cv_env_PKG_CONFIG_set" != "xset"; then
8487	AC_PATH_TOOL([PKG_CONFIG], [pkg-config])
8488fi
8489if test -n "$PKG_CONFIG"; then
8490	_pkg_min_version=m4_default([$1], [0.9.0])
8491	AC_MSG_CHECKING([pkg-config is at least version $_pkg_min_version])
8492	if $PKG_CONFIG --atleast-pkgconfig-version $_pkg_min_version; then
8493		AC_MSG_RESULT([yes])
8494	else
8495		AC_MSG_RESULT([no])
8496		PKG_CONFIG=""
8497	fi
8498fi[]dnl
8499])# PKG_PROG_PKG_CONFIG
8500
8501# PKG_CHECK_EXISTS(MODULES, [ACTION-IF-FOUND], [ACTION-IF-NOT-FOUND])
8502#
8503# Check to see whether a particular set of modules exists.  Similar
8504# to PKG_CHECK_MODULES(), but does not set variables or print errors.
8505#
8506# Please remember that m4 expands AC_REQUIRE([PKG_PROG_PKG_CONFIG])
8507# only at the first occurence in configure.ac, so if the first place
8508# it's called might be skipped (such as if it is within an "if", you
8509# have to call PKG_CHECK_EXISTS manually
8510# --------------------------------------------------------------
8511AC_DEFUN([PKG_CHECK_EXISTS],
8512[AC_REQUIRE([PKG_PROG_PKG_CONFIG])dnl
8513if test -n "$PKG_CONFIG" && \
8514    AC_RUN_LOG([$PKG_CONFIG --exists --print-errors "$1"]); then
8515  m4_default([$2], [:])
8516m4_ifvaln([$3], [else
8517  $3])dnl
8518fi])
8519
8520# _PKG_CONFIG([VARIABLE], [COMMAND], [MODULES])
8521# ---------------------------------------------
8522m4_define([_PKG_CONFIG],
8523[if test -n "$$1"; then
8524    pkg_cv_[]$1="$$1"
8525 elif test -n "$PKG_CONFIG"; then
8526    PKG_CHECK_EXISTS([$3],
8527                     [pkg_cv_[]$1=`$PKG_CONFIG --[]$2 "$3" 2>/dev/null`],
8528		     [pkg_failed=yes])
8529 else
8530    pkg_failed=untried
8531fi[]dnl
8532])# _PKG_CONFIG
8533
8534# _PKG_SHORT_ERRORS_SUPPORTED
8535# -----------------------------
8536AC_DEFUN([_PKG_SHORT_ERRORS_SUPPORTED],
8537[AC_REQUIRE([PKG_PROG_PKG_CONFIG])
8538if $PKG_CONFIG --atleast-pkgconfig-version 0.20; then
8539        _pkg_short_errors_supported=yes
8540else
8541        _pkg_short_errors_supported=no
8542fi[]dnl
8543])# _PKG_SHORT_ERRORS_SUPPORTED
8544
8545
8546# PKG_CHECK_MODULES(VARIABLE-PREFIX, MODULES, [ACTION-IF-FOUND],
8547# [ACTION-IF-NOT-FOUND])
8548#
8549#
8550# Note that if there is a possibility the first call to
8551# PKG_CHECK_MODULES might not happen, you should be sure to include an
8552# explicit call to PKG_PROG_PKG_CONFIG in your configure.ac
8553#
8554#
8555# --------------------------------------------------------------
8556AC_DEFUN([PKG_CHECK_MODULES],
8557[AC_REQUIRE([PKG_PROG_PKG_CONFIG])dnl
8558AC_ARG_VAR([$1][_CFLAGS], [C compiler flags for $1, overriding pkg-config])dnl
8559AC_ARG_VAR([$1][_LIBS], [linker flags for $1, overriding pkg-config])dnl
8560
8561pkg_failed=no
8562AC_MSG_CHECKING([for $1])
8563
8564_PKG_CONFIG([$1][_CFLAGS], [cflags], [$2])
8565_PKG_CONFIG([$1][_LIBS], [libs], [$2])
8566
8567m4_define([_PKG_TEXT], [Alternatively, you may set the environment variables $1[]_CFLAGS
8568and $1[]_LIBS to avoid the need to call pkg-config.
8569See the pkg-config man page for more details.])
8570
8571if test $pkg_failed = yes; then
8572   	AC_MSG_RESULT([no])
8573        _PKG_SHORT_ERRORS_SUPPORTED
8574        if test $_pkg_short_errors_supported = yes; then
8575	        $1[]_PKG_ERRORS=`$PKG_CONFIG --short-errors --print-errors "$2" 2>&1`
8576        else 
8577	        $1[]_PKG_ERRORS=`$PKG_CONFIG --print-errors "$2" 2>&1`
8578        fi
8579	# Put the nasty error message in config.log where it belongs
8580	echo "$$1[]_PKG_ERRORS" >&AS_MESSAGE_LOG_FD
8581
8582	m4_default([$4], [AC_MSG_ERROR(
8583[Package requirements ($2) were not met:
8584
8585$$1_PKG_ERRORS
8586
8587Consider adjusting the PKG_CONFIG_PATH environment variable if you
8588installed software in a non-standard prefix.
8589
8590_PKG_TEXT])
8591        ])
8592elif test $pkg_failed = untried; then
8593     	AC_MSG_RESULT([no])
8594	m4_default([$4], [AC_MSG_FAILURE(
8595[The pkg-config script could not be found or is too old.  Make sure it
8596is in your PATH or set the PKG_CONFIG environment variable to the full
8597path to pkg-config.
8598
8599_PKG_TEXT
8600
8601To get pkg-config, see <http://pkg-config.freedesktop.org/>.])
8602        ])
8603else
8604	$1[]_CFLAGS=$pkg_cv_[]$1[]_CFLAGS
8605	$1[]_LIBS=$pkg_cv_[]$1[]_LIBS
8606        AC_MSG_RESULT([yes])
8607	$3
8608fi[]dnl
8609])# PKG_CHECK_MODULES
8610
8611# Copyright (C) 2002, 2003, 2005, 2006, 2007, 2008  Free Software Foundation, Inc.
8612#
8613# This file is free software; the Free Software Foundation
8614# gives unlimited permission to copy and/or distribute it,
8615# with or without modifications, as long as this notice is preserved.
8616
8617# AM_AUTOMAKE_VERSION(VERSION)
8618# ----------------------------
8619# Automake X.Y traces this macro to ensure aclocal.m4 has been
8620# generated from the m4 files accompanying Automake X.Y.
8621# (This private macro should not be called outside this file.)
8622AC_DEFUN([AM_AUTOMAKE_VERSION],
8623[am__api_version='1.11'
8624dnl Some users find AM_AUTOMAKE_VERSION and mistake it for a way to
8625dnl require some minimum version.  Point them to the right macro.
8626m4_if([$1], [1.11.1], [],
8627      [AC_FATAL([Do not call $0, use AM_INIT_AUTOMAKE([$1]).])])dnl
8628])
8629
8630# _AM_AUTOCONF_VERSION(VERSION)
8631# -----------------------------
8632# aclocal traces this macro to find the Autoconf version.
8633# This is a private macro too.  Using m4_define simplifies
8634# the logic in aclocal, which can simply ignore this definition.
8635m4_define([_AM_AUTOCONF_VERSION], [])
8636
8637# AM_SET_CURRENT_AUTOMAKE_VERSION
8638# -------------------------------
8639# Call AM_AUTOMAKE_VERSION and AM_AUTOMAKE_VERSION so they can be traced.
8640# This function is AC_REQUIREd by AM_INIT_AUTOMAKE.
8641AC_DEFUN([AM_SET_CURRENT_AUTOMAKE_VERSION],
8642[AM_AUTOMAKE_VERSION([1.11.1])dnl
8643m4_ifndef([AC_AUTOCONF_VERSION],
8644  [m4_copy([m4_PACKAGE_VERSION], [AC_AUTOCONF_VERSION])])dnl
8645_AM_AUTOCONF_VERSION(m4_defn([AC_AUTOCONF_VERSION]))])
8646
8647# AM_AUX_DIR_EXPAND                                         -*- Autoconf -*-
8648
8649# Copyright (C) 2001, 2003, 2005  Free Software Foundation, Inc.
8650#
8651# This file is free software; the Free Software Foundation
8652# gives unlimited permission to copy and/or distribute it,
8653# with or without modifications, as long as this notice is preserved.
8654
8655# For projects using AC_CONFIG_AUX_DIR([foo]), Autoconf sets
8656# $ac_aux_dir to `$srcdir/foo'.  In other projects, it is set to
8657# `$srcdir', `$srcdir/..', or `$srcdir/../..'.
8658#
8659# Of course, Automake must honor this variable whenever it calls a
8660# tool from the auxiliary directory.  The problem is that $srcdir (and
8661# therefore $ac_aux_dir as well) can be either absolute or relative,
8662# depending on how configure is run.  This is pretty annoying, since
8663# it makes $ac_aux_dir quite unusable in subdirectories: in the top
8664# source directory, any form will work fine, but in subdirectories a
8665# relative path needs to be adjusted first.
8666#
8667# $ac_aux_dir/missing
8668#    fails when called from a subdirectory if $ac_aux_dir is relative
8669# $top_srcdir/$ac_aux_dir/missing
8670#    fails if $ac_aux_dir is absolute,
8671#    fails when called from a subdirectory in a VPATH build with
8672#          a relative $ac_aux_dir
8673#
8674# The reason of the latter failure is that $top_srcdir and $ac_aux_dir
8675# are both prefixed by $srcdir.  In an in-source build this is usually
8676# harmless because $srcdir is `.', but things will broke when you
8677# start a VPATH build or use an absolute $srcdir.
8678#
8679# So we could use something similar to $top_srcdir/$ac_aux_dir/missing,
8680# iff we strip the leading $srcdir from $ac_aux_dir.  That would be:
8681#   am_aux_dir='\$(top_srcdir)/'`expr "$ac_aux_dir" : "$srcdir//*\(.*\)"`
8682# and then we would define $MISSING as
8683#   MISSING="\${SHELL} $am_aux_dir/missing"
8684# This will work as long as MISSING is not called from configure, because
8685# unfortunately $(top_srcdir) has no meaning in configure.
8686# However there are other variables, like CC, which are often used in
8687# configure, and could therefore not use this "fixed" $ac_aux_dir.
8688#
8689# Another solution, used here, is to always expand $ac_aux_dir to an
8690# absolute PATH.  The drawback is that using absolute paths prevent a
8691# configured tree to be moved without reconfiguration.
8692
8693AC_DEFUN([AM_AUX_DIR_EXPAND],
8694[dnl Rely on autoconf to set up CDPATH properly.
8695AC_PREREQ([2.50])dnl
8696# expand $ac_aux_dir to an absolute path
8697am_aux_dir=`cd $ac_aux_dir && pwd`
8698])
8699
8700# AM_CONDITIONAL                                            -*- Autoconf -*-
8701
8702# Copyright (C) 1997, 2000, 2001, 2003, 2004, 2005, 2006, 2008
8703# Free Software Foundation, Inc.
8704#
8705# This file is free software; the Free Software Foundation
8706# gives unlimited permission to copy and/or distribute it,
8707# with or without modifications, as long as this notice is preserved.
8708
8709# serial 9
8710
8711# AM_CONDITIONAL(NAME, SHELL-CONDITION)
8712# -------------------------------------
8713# Define a conditional.
8714AC_DEFUN([AM_CONDITIONAL],
8715[AC_PREREQ(2.52)dnl
8716 ifelse([$1], [TRUE],  [AC_FATAL([$0: invalid condition: $1])],
8717	[$1], [FALSE], [AC_FATAL([$0: invalid condition: $1])])dnl
8718AC_SUBST([$1_TRUE])dnl
8719AC_SUBST([$1_FALSE])dnl
8720_AM_SUBST_NOTMAKE([$1_TRUE])dnl
8721_AM_SUBST_NOTMAKE([$1_FALSE])dnl
8722m4_define([_AM_COND_VALUE_$1], [$2])dnl
8723if $2; then
8724  $1_TRUE=
8725  $1_FALSE='#'
8726else
8727  $1_TRUE='#'
8728  $1_FALSE=
8729fi
8730AC_CONFIG_COMMANDS_PRE(
8731[if test -z "${$1_TRUE}" && test -z "${$1_FALSE}"; then
8732  AC_MSG_ERROR([[conditional "$1" was never defined.
8733Usually this means the macro was only invoked conditionally.]])
8734fi])])
8735
8736# Copyright (C) 1999, 2000, 2001, 2002, 2003, 2004, 2005, 2006, 2009
8737# Free Software Foundation, Inc.
8738#
8739# This file is free software; the Free Software Foundation
8740# gives unlimited permission to copy and/or distribute it,
8741# with or without modifications, as long as this notice is preserved.
8742
8743# serial 10
8744
8745# There are a few dirty hacks below to avoid letting `AC_PROG_CC' be
8746# written in clear, in which case automake, when reading aclocal.m4,
8747# will think it sees a *use*, and therefore will trigger all it's
8748# C support machinery.  Also note that it means that autoscan, seeing
8749# CC etc. in the Makefile, will ask for an AC_PROG_CC use...
8750
8751
8752# _AM_DEPENDENCIES(NAME)
8753# ----------------------
8754# See how the compiler implements dependency checking.
8755# NAME is "CC", "CXX", "GCJ", or "OBJC".
8756# We try a few techniques and use that to set a single cache variable.
8757#
8758# We don't AC_REQUIRE the corresponding AC_PROG_CC since the latter was
8759# modified to invoke _AM_DEPENDENCIES(CC); we would have a circular
8760# dependency, and given that the user is not expected to run this macro,
8761# just rely on AC_PROG_CC.
8762AC_DEFUN([_AM_DEPENDENCIES],
8763[AC_REQUIRE([AM_SET_DEPDIR])dnl
8764AC_REQUIRE([AM_OUTPUT_DEPENDENCY_COMMANDS])dnl
8765AC_REQUIRE([AM_MAKE_INCLUDE])dnl
8766AC_REQUIRE([AM_DEP_TRACK])dnl
8767
8768ifelse([$1], CC,   [depcc="$CC"   am_compiler_list=],
8769       [$1], CXX,  [depcc="$CXX"  am_compiler_list=],
8770       [$1], OBJC, [depcc="$OBJC" am_compiler_list='gcc3 gcc'],
8771       [$1], UPC,  [depcc="$UPC"  am_compiler_list=],
8772       [$1], GCJ,  [depcc="$GCJ"  am_compiler_list='gcc3 gcc'],
8773                   [depcc="$$1"   am_compiler_list=])
8774
8775AC_CACHE_CHECK([dependency style of $depcc],
8776               [am_cv_$1_dependencies_compiler_type],
8777[if test -z "$AMDEP_TRUE" && test -f "$am_depcomp"; then
8778  # We make a subdir and do the tests there.  Otherwise we can end up
8779  # making bogus files that we don't know about and never remove.  For
8780  # instance it was reported that on HP-UX the gcc test will end up
8781  # making a dummy file named `D' -- because `-MD' means `put the output
8782  # in D'.
8783  mkdir conftest.dir
8784  # Copy depcomp to subdir because otherwise we won't find it if we're
8785  # using a relative directory.
8786  cp "$am_depcomp" conftest.dir
8787  cd conftest.dir
8788  # We will build objects and dependencies in a subdirectory because
8789  # it helps to detect inapplicable dependency modes.  For instance
8790  # both Tru64's cc and ICC support -MD to output dependencies as a
8791  # side effect of compilation, but ICC will put the dependencies in
8792  # the current directory while Tru64 will put them in the object
8793  # directory.
8794  mkdir sub
8795
8796  am_cv_$1_dependencies_compiler_type=none
8797  if test "$am_compiler_list" = ""; then
8798     am_compiler_list=`sed -n ['s/^#*\([a-zA-Z0-9]*\))$/\1/p'] < ./depcomp`
8799  fi
8800  am__universal=false
8801  m4_case([$1], [CC],
8802    [case " $depcc " in #(
8803     *\ -arch\ *\ -arch\ *) am__universal=true ;;
8804     esac],
8805    [CXX],
8806    [case " $depcc " in #(
8807     *\ -arch\ *\ -arch\ *) am__universal=true ;;
8808     esac])
8809
8810  for depmode in $am_compiler_list; do
8811    # Setup a source with many dependencies, because some compilers
8812    # like to wrap large dependency lists on column 80 (with \), and
8813    # we should not choose a depcomp mode which is confused by this.
8814    #
8815    # We need to recreate these files for each test, as the compiler may
8816    # overwrite some of them when testing with obscure command lines.
8817    # This happens at least with the AIX C compiler.
8818    : > sub/conftest.c
8819    for i in 1 2 3 4 5 6; do
8820      echo '#include "conftst'$i'.h"' >> sub/conftest.c
8821      # Using `: > sub/conftst$i.h' creates only sub/conftst1.h with
8822      # Solaris 8's {/usr,}/bin/sh.
8823      touch sub/conftst$i.h
8824    done
8825    echo "${am__include} ${am__quote}sub/conftest.Po${am__quote}" > confmf
8826
8827    # We check with `-c' and `-o' for the sake of the "dashmstdout"
8828    # mode.  It turns out that the SunPro C++ compiler does not properly
8829    # handle `-M -o', and we need to detect this.  Also, some Intel
8830    # versions had trouble with output in subdirs
8831    am__obj=sub/conftest.${OBJEXT-o}
8832    am__minus_obj="-o $am__obj"
8833    case $depmode in
8834    gcc)
8835      # This depmode causes a compiler race in universal mode.
8836      test "$am__universal" = false || continue
8837      ;;
8838    nosideeffect)
8839      # after this tag, mechanisms are not by side-effect, so they'll
8840      # only be used when explicitly requested
8841      if test "x$enable_dependency_tracking" = xyes; then
8842	continue
8843      else
8844	break
8845      fi
8846      ;;
8847    msvisualcpp | msvcmsys)
8848      # This compiler won't grok `-c -o', but also, the minuso test has
8849      # not run yet.  These depmodes are late enough in the game, and
8850      # so weak that their functioning should not be impacted.
8851      am__obj=conftest.${OBJEXT-o}
8852      am__minus_obj=
8853      ;;
8854    none) break ;;
8855    esac
8856    if depmode=$depmode \
8857       source=sub/conftest.c object=$am__obj \
8858       depfile=sub/conftest.Po tmpdepfile=sub/conftest.TPo \
8859       $SHELL ./depcomp $depcc -c $am__minus_obj sub/conftest.c \
8860         >/dev/null 2>conftest.err &&
8861       grep sub/conftst1.h sub/conftest.Po > /dev/null 2>&1 &&
8862       grep sub/conftst6.h sub/conftest.Po > /dev/null 2>&1 &&
8863       grep $am__obj sub/conftest.Po > /dev/null 2>&1 &&
8864       ${MAKE-make} -s -f confmf > /dev/null 2>&1; then
8865      # icc doesn't choke on unknown options, it will just issue warnings
8866      # or remarks (even with -Werror).  So we grep stderr for any message
8867      # that says an option was ignored or not supported.
8868      # When given -MP, icc 7.0 and 7.1 complain thusly:
8869      #   icc: Command line warning: ignoring option '-M'; no argument required
8870      # The diagnosis changed in icc 8.0:
8871      #   icc: Command line remark: option '-MP' not supported
8872      if (grep 'ignoring option' conftest.err ||
8873          grep 'not supported' conftest.err) >/dev/null 2>&1; then :; else
8874        am_cv_$1_dependencies_compiler_type=$depmode
8875        break
8876      fi
8877    fi
8878  done
8879
8880  cd ..
8881  rm -rf conftest.dir
8882else
8883  am_cv_$1_dependencies_compiler_type=none
8884fi
8885])
8886AC_SUBST([$1DEPMODE], [depmode=$am_cv_$1_dependencies_compiler_type])
8887AM_CONDITIONAL([am__fastdep$1], [
8888  test "x$enable_dependency_tracking" != xno \
8889  && test "$am_cv_$1_dependencies_compiler_type" = gcc3])
8890])
8891
8892
8893# AM_SET_DEPDIR
8894# -------------
8895# Choose a directory name for dependency files.
8896# This macro is AC_REQUIREd in _AM_DEPENDENCIES
8897AC_DEFUN([AM_SET_DEPDIR],
8898[AC_REQUIRE([AM_SET_LEADING_DOT])dnl
8899AC_SUBST([DEPDIR], ["${am__leading_dot}deps"])dnl
8900])
8901
8902
8903# AM_DEP_TRACK
8904# ------------
8905AC_DEFUN([AM_DEP_TRACK],
8906[AC_ARG_ENABLE(dependency-tracking,
8907[  --disable-dependency-tracking  speeds up one-time build
8908  --enable-dependency-tracking   do not reject slow dependency extractors])
8909if test "x$enable_dependency_tracking" != xno; then
8910  am_depcomp="$ac_aux_dir/depcomp"
8911  AMDEPBACKSLASH='\'
8912fi
8913AM_CONDITIONAL([AMDEP], [test "x$enable_dependency_tracking" != xno])
8914AC_SUBST([AMDEPBACKSLASH])dnl
8915_AM_SUBST_NOTMAKE([AMDEPBACKSLASH])dnl
8916])
8917
8918# Generate code to set up dependency tracking.              -*- Autoconf -*-
8919
8920# Copyright (C) 1999, 2000, 2001, 2002, 2003, 2004, 2005, 2008
8921# Free Software Foundation, Inc.
8922#
8923# This file is free software; the Free Software Foundation
8924# gives unlimited permission to copy and/or distribute it,
8925# with or without modifications, as long as this notice is preserved.
8926
8927#serial 5
8928
8929# _AM_OUTPUT_DEPENDENCY_COMMANDS
8930# ------------------------------
8931AC_DEFUN([_AM_OUTPUT_DEPENDENCY_COMMANDS],
8932[{
8933  # Autoconf 2.62 quotes --file arguments for eval, but not when files
8934  # are listed without --file.  Let's play safe and only enable the eval
8935  # if we detect the quoting.
8936  case $CONFIG_FILES in
8937  *\'*) eval set x "$CONFIG_FILES" ;;
8938  *)   set x $CONFIG_FILES ;;
8939  esac
8940  shift
8941  for mf
8942  do
8943    # Strip MF so we end up with the name of the file.
8944    mf=`echo "$mf" | sed -e 's/:.*$//'`
8945    # Check whether this is an Automake generated Makefile or not.
8946    # We used to match only the files named `Makefile.in', but
8947    # some people rename them; so instead we look at the file content.
8948    # Grep'ing the first line is not enough: some people post-process
8949    # each Makefile.in and add a new line on top of each file to say so.
8950    # Grep'ing the whole file is not good either: AIX grep has a line
8951    # limit of 2048, but all sed's we know have understand at least 4000.
8952    if sed -n 's,^#.*generated by automake.*,X,p' "$mf" | grep X >/dev/null 2>&1; then
8953      dirpart=`AS_DIRNAME("$mf")`
8954    else
8955      continue
8956    fi
8957    # Extract the definition of DEPDIR, am__include, and am__quote
8958    # from the Makefile without running `make'.
8959    DEPDIR=`sed -n 's/^DEPDIR = //p' < "$mf"`
8960    test -z "$DEPDIR" && continue
8961    am__include=`sed -n 's/^am__include = //p' < "$mf"`
8962    test -z "am__include" && continue
8963    am__quote=`sed -n 's/^am__quote = //p' < "$mf"`
8964    # When using ansi2knr, U may be empty or an underscore; expand it
8965    U=`sed -n 's/^U = //p' < "$mf"`
8966    # Find all dependency output files, they are included files with
8967    # $(DEPDIR) in their names.  We invoke sed twice because it is the
8968    # simplest approach to changing $(DEPDIR) to its actual value in the
8969    # expansion.
8970    for file in `sed -n "
8971      s/^$am__include $am__quote\(.*(DEPDIR).*\)$am__quote"'$/\1/p' <"$mf" | \
8972	 sed -e 's/\$(DEPDIR)/'"$DEPDIR"'/g' -e 's/\$U/'"$U"'/g'`; do
8973      # Make sure the directory exists.
8974      test -f "$dirpart/$file" && continue
8975      fdir=`AS_DIRNAME(["$file"])`
8976      AS_MKDIR_P([$dirpart/$fdir])
8977      # echo "creating $dirpart/$file"
8978      echo '# dummy' > "$dirpart/$file"
8979    done
8980  done
8981}
8982])# _AM_OUTPUT_DEPENDENCY_COMMANDS
8983
8984
8985# AM_OUTPUT_DEPENDENCY_COMMANDS
8986# -----------------------------
8987# This macro should only be invoked once -- use via AC_REQUIRE.
8988#
8989# This code is only required when automatic dependency tracking
8990# is enabled.  FIXME.  This creates each `.P' file that we will
8991# need in order to bootstrap the dependency handling code.
8992AC_DEFUN([AM_OUTPUT_DEPENDENCY_COMMANDS],
8993[AC_CONFIG_COMMANDS([depfiles],
8994     [test x"$AMDEP_TRUE" != x"" || _AM_OUTPUT_DEPENDENCY_COMMANDS],
8995     [AMDEP_TRUE="$AMDEP_TRUE" ac_aux_dir="$ac_aux_dir"])
8996])
8997
8998# Do all the work for Automake.                             -*- Autoconf -*-
8999
9000# Copyright (C) 1996, 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2004,
9001# 2005, 2006, 2008, 2009 Free Software Foundation, Inc.
9002#
9003# This file is free software; the Free Software Foundation
9004# gives unlimited permission to copy and/or distribute it,
9005# with or without modifications, as long as this notice is preserved.
9006
9007# serial 16
9008
9009# This macro actually does too much.  Some checks are only needed if
9010# your package does certain things.  But this isn't really a big deal.
9011
9012# AM_INIT_AUTOMAKE(PACKAGE, VERSION, [NO-DEFINE])
9013# AM_INIT_AUTOMAKE([OPTIONS])
9014# -----------------------------------------------
9015# The call with PACKAGE and VERSION arguments is the old style
9016# call (pre autoconf-2.50), which is being phased out.  PACKAGE
9017# and VERSION should now be passed to AC_INIT and removed from
9018# the call to AM_INIT_AUTOMAKE.
9019# We support both call styles for the transition.  After
9020# the next Automake release, Autoconf can make the AC_INIT
9021# arguments mandatory, and then we can depend on a new Autoconf
9022# release and drop the old call support.
9023AC_DEFUN([AM_INIT_AUTOMAKE],
9024[AC_PREREQ([2.62])dnl
9025dnl Autoconf wants to disallow AM_ names.  We explicitly allow
9026dnl the ones we care about.
9027m4_pattern_allow([^AM_[A-Z]+FLAGS$])dnl
9028AC_REQUIRE([AM_SET_CURRENT_AUTOMAKE_VERSION])dnl
9029AC_REQUIRE([AC_PROG_INSTALL])dnl
9030if test "`cd $srcdir && pwd`" != "`pwd`"; then
9031  # Use -I$(srcdir) only when $(srcdir) != ., so that make's output
9032  # is not polluted with repeated "-I."
9033  AC_SUBST([am__isrc], [' -I$(srcdir)'])_AM_SUBST_NOTMAKE([am__isrc])dnl
9034  # test to see if srcdir already configured
9035  if test -f $srcdir/config.status; then
9036    AC_MSG_ERROR([source directory already configured; run "make distclean" there first])
9037  fi
9038fi
9039
9040# test whether we have cygpath
9041if test -z "$CYGPATH_W"; then
9042  if (cygpath --version) >/dev/null 2>/dev/null; then
9043    CYGPATH_W='cygpath -w'
9044  else
9045    CYGPATH_W=echo
9046  fi
9047fi
9048AC_SUBST([CYGPATH_W])
9049
9050# Define the identity of the package.
9051dnl Distinguish between old-style and new-style calls.
9052m4_ifval([$2],
9053[m4_ifval([$3], [_AM_SET_OPTION([no-define])])dnl
9054 AC_SUBST([PACKAGE], [$1])dnl
9055 AC_SUBST([VERSION], [$2])],
9056[_AM_SET_OPTIONS([$1])dnl
9057dnl Diagnose old-style AC_INIT with new-style AM_AUTOMAKE_INIT.
9058m4_if(m4_ifdef([AC_PACKAGE_NAME], 1)m4_ifdef([AC_PACKAGE_VERSION], 1), 11,,
9059  [m4_fatal([AC_INIT should be called with package and version arguments])])dnl
9060 AC_SUBST([PACKAGE], ['AC_PACKAGE_TARNAME'])dnl
9061 AC_SUBST([VERSION], ['AC_PACKAGE_VERSION'])])dnl
9062
9063_AM_IF_OPTION([no-define],,
9064[AC_DEFINE_UNQUOTED(PACKAGE, "$PACKAGE", [Name of package])
9065 AC_DEFINE_UNQUOTED(VERSION, "$VERSION", [Version number of package])])dnl
9066
9067# Some tools Automake needs.
9068AC_REQUIRE([AM_SANITY_CHECK])dnl
9069AC_REQUIRE([AC_ARG_PROGRAM])dnl
9070AM_MISSING_PROG(ACLOCAL, aclocal-${am__api_version})
9071AM_MISSING_PROG(AUTOCONF, autoconf)
9072AM_MISSING_PROG(AUTOMAKE, automake-${am__api_version})
9073AM_MISSING_PROG(AUTOHEADER, autoheader)
9074AM_MISSING_PROG(MAKEINFO, makeinfo)
9075AC_REQUIRE([AM_PROG_INSTALL_SH])dnl
9076AC_REQUIRE([AM_PROG_INSTALL_STRIP])dnl
9077AC_REQUIRE([AM_PROG_MKDIR_P])dnl
9078# We need awk for the "check" target.  The system "awk" is bad on
9079# some platforms.
9080AC_REQUIRE([AC_PROG_AWK])dnl
9081AC_REQUIRE([AC_PROG_MAKE_SET])dnl
9082AC_REQUIRE([AM_SET_LEADING_DOT])dnl
9083_AM_IF_OPTION([tar-ustar], [_AM_PROG_TAR([ustar])],
9084	      [_AM_IF_OPTION([tar-pax], [_AM_PROG_TAR([pax])],
9085			     [_AM_PROG_TAR([v7])])])
9086_AM_IF_OPTION([no-dependencies],,
9087[AC_PROVIDE_IFELSE([AC_PROG_CC],
9088		  [_AM_DEPENDENCIES(CC)],
9089		  [define([AC_PROG_CC],
9090			  defn([AC_PROG_CC])[_AM_DEPENDENCIES(CC)])])dnl
9091AC_PROVIDE_IFELSE([AC_PROG_CXX],
9092		  [_AM_DEPENDENCIES(CXX)],
9093		  [define([AC_PROG_CXX],
9094			  defn([AC_PROG_CXX])[_AM_DEPENDENCIES(CXX)])])dnl
9095AC_PROVIDE_IFELSE([AC_PROG_OBJC],
9096		  [_AM_DEPENDENCIES(OBJC)],
9097		  [define([AC_PROG_OBJC],
9098			  defn([AC_PROG_OBJC])[_AM_DEPENDENCIES(OBJC)])])dnl
9099])
9100_AM_IF_OPTION([silent-rules], [AC_REQUIRE([AM_SILENT_RULES])])dnl
9101dnl The `parallel-tests' driver may need to know about EXEEXT, so add the
9102dnl `am__EXEEXT' conditional if _AM_COMPILER_EXEEXT was seen.  This macro
9103dnl is hooked onto _AC_COMPILER_EXEEXT early, see below.
9104AC_CONFIG_COMMANDS_PRE(dnl
9105[m4_provide_if([_AM_COMPILER_EXEEXT],
9106  [AM_CONDITIONAL([am__EXEEXT], [test -n "$EXEEXT"])])])dnl
9107])
9108
9109dnl Hook into `_AC_COMPILER_EXEEXT' early to learn its expansion.  Do not
9110dnl add the conditional right here, as _AC_COMPILER_EXEEXT may be further
9111dnl mangled by Autoconf and run in a shell conditional statement.
9112m4_define([_AC_COMPILER_EXEEXT],
9113m4_defn([_AC_COMPILER_EXEEXT])[m4_provide([_AM_COMPILER_EXEEXT])])
9114
9115
9116# When config.status generates a header, we must update the stamp-h file.
9117# This file resides in the same directory as the config header
9118# that is generated.  The stamp files are numbered to have different names.
9119
9120# Autoconf calls _AC_AM_CONFIG_HEADER_HOOK (when defined) in the
9121# loop where config.status creates the headers, so we can generate
9122# our stamp files there.
9123AC_DEFUN([_AC_AM_CONFIG_HEADER_HOOK],
9124[# Compute $1's index in $config_headers.
9125_am_arg=$1
9126_am_stamp_count=1
9127for _am_header in $config_headers :; do
9128  case $_am_header in
9129    $_am_arg | $_am_arg:* )
9130      break ;;
9131    * )
9132      _am_stamp_count=`expr $_am_stamp_count + 1` ;;
9133  esac
9134done
9135echo "timestamp for $_am_arg" >`AS_DIRNAME(["$_am_arg"])`/stamp-h[]$_am_stamp_count])
9136
9137# Copyright (C) 2001, 2003, 2005, 2008  Free Software Foundation, Inc.
9138#
9139# This file is free software; the Free Software Foundation
9140# gives unlimited permission to copy and/or distribute it,
9141# with or without modifications, as long as this notice is preserved.
9142
9143# AM_PROG_INSTALL_SH
9144# ------------------
9145# Define $install_sh.
9146AC_DEFUN([AM_PROG_INSTALL_SH],
9147[AC_REQUIRE([AM_AUX_DIR_EXPAND])dnl
9148if test x"${install_sh}" != xset; then
9149  case $am_aux_dir in
9150  *\ * | *\	*)
9151    install_sh="\${SHELL} '$am_aux_dir/install-sh'" ;;
9152  *)
9153    install_sh="\${SHELL} $am_aux_dir/install-sh"
9154  esac
9155fi
9156AC_SUBST(install_sh)])
9157
9158# Copyright (C) 2003, 2005  Free Software Foundation, Inc.
9159#
9160# This file is free software; the Free Software Foundation
9161# gives unlimited permission to copy and/or distribute it,
9162# with or without modifications, as long as this notice is preserved.
9163
9164# serial 2
9165
9166# Check whether the underlying file-system supports filenames
9167# with a leading dot.  For instance MS-DOS doesn't.
9168AC_DEFUN([AM_SET_LEADING_DOT],
9169[rm -rf .tst 2>/dev/null
9170mkdir .tst 2>/dev/null
9171if test -d .tst; then
9172  am__leading_dot=.
9173else
9174  am__leading_dot=_
9175fi
9176rmdir .tst 2>/dev/null
9177AC_SUBST([am__leading_dot])])
9178
9179# Add --enable-maintainer-mode option to configure.         -*- Autoconf -*-
9180# From Jim Meyering
9181
9182# Copyright (C) 1996, 1998, 2000, 2001, 2002, 2003, 2004, 2005, 2008
9183# Free Software Foundation, Inc.
9184#
9185# This file is free software; the Free Software Foundation
9186# gives unlimited permission to copy and/or distribute it,
9187# with or without modifications, as long as this notice is preserved.
9188
9189# serial 5
9190
9191# AM_MAINTAINER_MODE([DEFAULT-MODE])
9192# ----------------------------------
9193# Control maintainer-specific portions of Makefiles.
9194# Default is to disable them, unless `enable' is passed literally.
9195# For symmetry, `disable' may be passed as well.  Anyway, the user
9196# can override the default with the --enable/--disable switch.
9197AC_DEFUN([AM_MAINTAINER_MODE],
9198[m4_case(m4_default([$1], [disable]),
9199       [enable], [m4_define([am_maintainer_other], [disable])],
9200       [disable], [m4_define([am_maintainer_other], [enable])],
9201       [m4_define([am_maintainer_other], [enable])
9202        m4_warn([syntax], [unexpected argument to AM@&t@_MAINTAINER_MODE: $1])])
9203AC_MSG_CHECKING([whether to am_maintainer_other maintainer-specific portions of Makefiles])
9204  dnl maintainer-mode's default is 'disable' unless 'enable' is passed
9205  AC_ARG_ENABLE([maintainer-mode],
9206[  --][am_maintainer_other][-maintainer-mode  am_maintainer_other make rules and dependencies not useful
9207			  (and sometimes confusing) to the casual installer],
9208      [USE_MAINTAINER_MODE=$enableval],
9209      [USE_MAINTAINER_MODE=]m4_if(am_maintainer_other, [enable], [no], [yes]))
9210  AC_MSG_RESULT([$USE_MAINTAINER_MODE])
9211  AM_CONDITIONAL([MAINTAINER_MODE], [test $USE_MAINTAINER_MODE = yes])
9212  MAINT=$MAINTAINER_MODE_TRUE
9213  AC_SUBST([MAINT])dnl
9214]
9215)
9216
9217AU_DEFUN([jm_MAINTAINER_MODE], [AM_MAINTAINER_MODE])
9218
9219# Check to see how 'make' treats includes.	            -*- Autoconf -*-
9220
9221# Copyright (C) 2001, 2002, 2003, 2005, 2009  Free Software Foundation, Inc.
9222#
9223# This file is free software; the Free Software Foundation
9224# gives unlimited permission to copy and/or distribute it,
9225# with or without modifications, as long as this notice is preserved.
9226
9227# serial 4
9228
9229# AM_MAKE_INCLUDE()
9230# -----------------
9231# Check to see how make treats includes.
9232AC_DEFUN([AM_MAKE_INCLUDE],
9233[am_make=${MAKE-make}
9234cat > confinc << 'END'
9235am__doit:
9236	@echo this is the am__doit target
9237.PHONY: am__doit
9238END
9239# If we don't find an include directive, just comment out the code.
9240AC_MSG_CHECKING([for style of include used by $am_make])
9241am__include="#"
9242am__quote=
9243_am_result=none
9244# First try GNU make style include.
9245echo "include confinc" > confmf
9246# Ignore all kinds of additional output from `make'.
9247case `$am_make -s -f confmf 2> /dev/null` in #(
9248*the\ am__doit\ target*)
9249  am__include=include
9250  am__quote=
9251  _am_result=GNU
9252  ;;
9253esac
9254# Now try BSD make style include.
9255if test "$am__include" = "#"; then
9256   echo '.include "confinc"' > confmf
9257   case `$am_make -s -f confmf 2> /dev/null` in #(
9258   *the\ am__doit\ target*)
9259     am__include=.include
9260     am__quote="\""
9261     _am_result=BSD
9262     ;;
9263   esac
9264fi
9265AC_SUBST([am__include])
9266AC_SUBST([am__quote])
9267AC_MSG_RESULT([$_am_result])
9268rm -f confinc confmf
9269])
9270
9271# Fake the existence of programs that GNU maintainers use.  -*- Autoconf -*-
9272
9273# Copyright (C) 1997, 1999, 2000, 2001, 2003, 2004, 2005, 2008
9274# Free Software Foundation, Inc.
9275#
9276# This file is free software; the Free Software Foundation
9277# gives unlimited permission to copy and/or distribute it,
9278# with or without modifications, as long as this notice is preserved.
9279
9280# serial 6
9281
9282# AM_MISSING_PROG(NAME, PROGRAM)
9283# ------------------------------
9284AC_DEFUN([AM_MISSING_PROG],
9285[AC_REQUIRE([AM_MISSING_HAS_RUN])
9286$1=${$1-"${am_missing_run}$2"}
9287AC_SUBST($1)])
9288
9289
9290# AM_MISSING_HAS_RUN
9291# ------------------
9292# Define MISSING if not defined so far and test if it supports --run.
9293# If it does, set am_missing_run to use it, otherwise, to nothing.
9294AC_DEFUN([AM_MISSING_HAS_RUN],
9295[AC_REQUIRE([AM_AUX_DIR_EXPAND])dnl
9296AC_REQUIRE_AUX_FILE([missing])dnl
9297if test x"${MISSING+set}" != xset; then
9298  case $am_aux_dir in
9299  *\ * | *\	*)
9300    MISSING="\${SHELL} \"$am_aux_dir/missing\"" ;;
9301  *)
9302    MISSING="\${SHELL} $am_aux_dir/missing" ;;
9303  esac
9304fi
9305# Use eval to expand $SHELL
9306if eval "$MISSING --run true"; then
9307  am_missing_run="$MISSING --run "
9308else
9309  am_missing_run=
9310  AC_MSG_WARN([`missing' script is too old or missing])
9311fi
9312])
9313
9314# Copyright (C) 2003, 2004, 2005, 2006  Free Software Foundation, Inc.
9315#
9316# This file is free software; the Free Software Foundation
9317# gives unlimited permission to copy and/or distribute it,
9318# with or without modifications, as long as this notice is preserved.
9319
9320# AM_PROG_MKDIR_P
9321# ---------------
9322# Check for `mkdir -p'.
9323AC_DEFUN([AM_PROG_MKDIR_P],
9324[AC_PREREQ([2.60])dnl
9325AC_REQUIRE([AC_PROG_MKDIR_P])dnl
9326dnl Automake 1.8 to 1.9.6 used to define mkdir_p.  We now use MKDIR_P,
9327dnl while keeping a definition of mkdir_p for backward compatibility.
9328dnl @MKDIR_P@ is magic: AC_OUTPUT adjusts its value for each Makefile.
9329dnl However we cannot define mkdir_p as $(MKDIR_P) for the sake of
9330dnl Makefile.ins that do not define MKDIR_P, so we do our own
9331dnl adjustment using top_builddir (which is defined more often than
9332dnl MKDIR_P).
9333AC_SUBST([mkdir_p], ["$MKDIR_P"])dnl
9334case $mkdir_p in
9335  [[\\/$]]* | ?:[[\\/]]*) ;;
9336  */*) mkdir_p="\$(top_builddir)/$mkdir_p" ;;
9337esac
9338])
9339
9340# Helper functions for option handling.                     -*- Autoconf -*-
9341
9342# Copyright (C) 2001, 2002, 2003, 2005, 2008  Free Software Foundation, Inc.
9343#
9344# This file is free software; the Free Software Foundation
9345# gives unlimited permission to copy and/or distribute it,
9346# with or without modifications, as long as this notice is preserved.
9347
9348# serial 4
9349
9350# _AM_MANGLE_OPTION(NAME)
9351# -----------------------
9352AC_DEFUN([_AM_MANGLE_OPTION],
9353[[_AM_OPTION_]m4_bpatsubst($1, [[^a-zA-Z0-9_]], [_])])
9354
9355# _AM_SET_OPTION(NAME)
9356# ------------------------------
9357# Set option NAME.  Presently that only means defining a flag for this option.
9358AC_DEFUN([_AM_SET_OPTION],
9359[m4_define(_AM_MANGLE_OPTION([$1]), 1)])
9360
9361# _AM_SET_OPTIONS(OPTIONS)
9362# ----------------------------------
9363# OPTIONS is a space-separated list of Automake options.
9364AC_DEFUN([_AM_SET_OPTIONS],
9365[m4_foreach_w([_AM_Option], [$1], [_AM_SET_OPTION(_AM_Option)])])
9366
9367# _AM_IF_OPTION(OPTION, IF-SET, [IF-NOT-SET])
9368# -------------------------------------------
9369# Execute IF-SET if OPTION is set, IF-NOT-SET otherwise.
9370AC_DEFUN([_AM_IF_OPTION],
9371[m4_ifset(_AM_MANGLE_OPTION([$1]), [$2], [$3])])
9372
9373# Check to make sure that the build environment is sane.    -*- Autoconf -*-
9374
9375# Copyright (C) 1996, 1997, 2000, 2001, 2003, 2005, 2008
9376# Free Software Foundation, Inc.
9377#
9378# This file is free software; the Free Software Foundation
9379# gives unlimited permission to copy and/or distribute it,
9380# with or without modifications, as long as this notice is preserved.
9381
9382# serial 5
9383
9384# AM_SANITY_CHECK
9385# ---------------
9386AC_DEFUN([AM_SANITY_CHECK],
9387[AC_MSG_CHECKING([whether build environment is sane])
9388# Just in case
9389sleep 1
9390echo timestamp > conftest.file
9391# Reject unsafe characters in $srcdir or the absolute working directory
9392# name.  Accept space and tab only in the latter.
9393am_lf='
9394'
9395case `pwd` in
9396  *[[\\\"\#\$\&\'\`$am_lf]]*)
9397    AC_MSG_ERROR([unsafe absolute working directory name]);;
9398esac
9399case $srcdir in
9400  *[[\\\"\#\$\&\'\`$am_lf\ \	]]*)
9401    AC_MSG_ERROR([unsafe srcdir value: `$srcdir']);;
9402esac
9403
9404# Do `set' in a subshell so we don't clobber the current shell's
9405# arguments.  Must try -L first in case configure is actually a
9406# symlink; some systems play weird games with the mod time of symlinks
9407# (eg FreeBSD returns the mod time of the symlink's containing
9408# directory).
9409if (
9410   set X `ls -Lt "$srcdir/configure" conftest.file 2> /dev/null`
9411   if test "$[*]" = "X"; then
9412      # -L didn't work.
9413      set X `ls -t "$srcdir/configure" conftest.file`
9414   fi
9415   rm -f conftest.file
9416   if test "$[*]" != "X $srcdir/configure conftest.file" \
9417      && test "$[*]" != "X conftest.file $srcdir/configure"; then
9418
9419      # If neither matched, then we have a broken ls.  This can happen
9420      # if, for instance, CONFIG_SHELL is bash and it inherits a
9421      # broken ls alias from the environment.  This has actually
9422      # happened.  Such a system could not be considered "sane".
9423      AC_MSG_ERROR([ls -t appears to fail.  Make sure there is not a broken
9424alias in your environment])
9425   fi
9426
9427   test "$[2]" = conftest.file
9428   )
9429then
9430   # Ok.
9431   :
9432else
9433   AC_MSG_ERROR([newly created file is older than distributed files!
9434Check your system clock])
9435fi
9436AC_MSG_RESULT(yes)])
9437
9438# Copyright (C) 2009  Free Software Foundation, Inc.
9439#
9440# This file is free software; the Free Software Foundation
9441# gives unlimited permission to copy and/or distribute it,
9442# with or without modifications, as long as this notice is preserved.
9443
9444# serial 1
9445
9446# AM_SILENT_RULES([DEFAULT])
9447# --------------------------
9448# Enable less verbose build rules; with the default set to DEFAULT
9449# (`yes' being less verbose, `no' or empty being verbose).
9450AC_DEFUN([AM_SILENT_RULES],
9451[AC_ARG_ENABLE([silent-rules],
9452[  --enable-silent-rules          less verbose build output (undo: `make V=1')
9453  --disable-silent-rules         verbose build output (undo: `make V=0')])
9454case $enable_silent_rules in
9455yes) AM_DEFAULT_VERBOSITY=0;;
9456no)  AM_DEFAULT_VERBOSITY=1;;
9457*)   AM_DEFAULT_VERBOSITY=m4_if([$1], [yes], [0], [1]);;
9458esac
9459AC_SUBST([AM_DEFAULT_VERBOSITY])dnl
9460AM_BACKSLASH='\'
9461AC_SUBST([AM_BACKSLASH])dnl
9462_AM_SUBST_NOTMAKE([AM_BACKSLASH])dnl
9463])
9464
9465# Copyright (C) 2001, 2003, 2005  Free Software Foundation, Inc.
9466#
9467# This file is free software; the Free Software Foundation
9468# gives unlimited permission to copy and/or distribute it,
9469# with or without modifications, as long as this notice is preserved.
9470
9471# AM_PROG_INSTALL_STRIP
9472# ---------------------
9473# One issue with vendor `install' (even GNU) is that you can't
9474# specify the program used to strip binaries.  This is especially
9475# annoying in cross-compiling environments, where the build's strip
9476# is unlikely to handle the host's binaries.
9477# Fortunately install-sh will honor a STRIPPROG variable, so we
9478# always use install-sh in `make install-strip', and initialize
9479# STRIPPROG with the value of the STRIP variable (set by the user).
9480AC_DEFUN([AM_PROG_INSTALL_STRIP],
9481[AC_REQUIRE([AM_PROG_INSTALL_SH])dnl
9482# Installed binaries are usually stripped using `strip' when the user
9483# run `make install-strip'.  However `strip' might not be the right
9484# tool to use in cross-compilation environments, therefore Automake
9485# will honor the `STRIP' environment variable to overrule this program.
9486dnl Don't test for $cross_compiling = yes, because it might be `maybe'.
9487if test "$cross_compiling" != no; then
9488  AC_CHECK_TOOL([STRIP], [strip], :)
9489fi
9490INSTALL_STRIP_PROGRAM="\$(install_sh) -c -s"
9491AC_SUBST([INSTALL_STRIP_PROGRAM])])
9492
9493# Copyright (C) 2006, 2008  Free Software Foundation, Inc.
9494#
9495# This file is free software; the Free Software Foundation
9496# gives unlimited permission to copy and/or distribute it,
9497# with or without modifications, as long as this notice is preserved.
9498
9499# serial 2
9500
9501# _AM_SUBST_NOTMAKE(VARIABLE)
9502# ---------------------------
9503# Prevent Automake from outputting VARIABLE = @VARIABLE@ in Makefile.in.
9504# This macro is traced by Automake.
9505AC_DEFUN([_AM_SUBST_NOTMAKE])
9506
9507# AM_SUBST_NOTMAKE(VARIABLE)
9508# ---------------------------
9509# Public sister of _AM_SUBST_NOTMAKE.
9510AC_DEFUN([AM_SUBST_NOTMAKE], [_AM_SUBST_NOTMAKE($@)])
9511
9512# Check how to create a tarball.                            -*- Autoconf -*-
9513
9514# Copyright (C) 2004, 2005  Free Software Foundation, Inc.
9515#
9516# This file is free software; the Free Software Foundation
9517# gives unlimited permission to copy and/or distribute it,
9518# with or without modifications, as long as this notice is preserved.
9519
9520# serial 2
9521
9522# _AM_PROG_TAR(FORMAT)
9523# --------------------
9524# Check how to create a tarball in format FORMAT.
9525# FORMAT should be one of `v7', `ustar', or `pax'.
9526#
9527# Substitute a variable $(am__tar) that is a command
9528# writing to stdout a FORMAT-tarball containing the directory
9529# $tardir.
9530#     tardir=directory && $(am__tar) > result.tar
9531#
9532# Substitute a variable $(am__untar) that extract such
9533# a tarball read from stdin.
9534#     $(am__untar) < result.tar
9535AC_DEFUN([_AM_PROG_TAR],
9536[# Always define AMTAR for backward compatibility.
9537AM_MISSING_PROG([AMTAR], [tar])
9538m4_if([$1], [v7],
9539     [am__tar='${AMTAR} chof - "$$tardir"'; am__untar='${AMTAR} xf -'],
9540     [m4_case([$1], [ustar],, [pax],,
9541              [m4_fatal([Unknown tar format])])
9542AC_MSG_CHECKING([how to create a $1 tar archive])
9543# Loop over all known methods to create a tar archive until one works.
9544_am_tools='gnutar m4_if([$1], [ustar], [plaintar]) pax cpio none'
9545_am_tools=${am_cv_prog_tar_$1-$_am_tools}
9546# Do not fold the above two line into one, because Tru64 sh and
9547# Solaris sh will not grok spaces in the rhs of `-'.
9548for _am_tool in $_am_tools
9549do
9550  case $_am_tool in
9551  gnutar)
9552    for _am_tar in tar gnutar gtar;
9553    do
9554      AM_RUN_LOG([$_am_tar --version]) && break
9555    done
9556    am__tar="$_am_tar --format=m4_if([$1], [pax], [posix], [$1]) -chf - "'"$$tardir"'
9557    am__tar_="$_am_tar --format=m4_if([$1], [pax], [posix], [$1]) -chf - "'"$tardir"'
9558    am__untar="$_am_tar -xf -"
9559    ;;
9560  plaintar)
9561    # Must skip GNU tar: if it does not support --format= it doesn't create
9562    # ustar tarball either.
9563    (tar --version) >/dev/null 2>&1 && continue
9564    am__tar='tar chf - "$$tardir"'
9565    am__tar_='tar chf - "$tardir"'
9566    am__untar='tar xf -'
9567    ;;
9568  pax)
9569    am__tar='pax -L -x $1 -w "$$tardir"'
9570    am__tar_='pax -L -x $1 -w "$tardir"'
9571    am__untar='pax -r'
9572    ;;
9573  cpio)
9574    am__tar='find "$$tardir" -print | cpio -o -H $1 -L'
9575    am__tar_='find "$tardir" -print | cpio -o -H $1 -L'
9576    am__untar='cpio -i -H $1 -d'
9577    ;;
9578  none)
9579    am__tar=false
9580    am__tar_=false
9581    am__untar=false
9582    ;;
9583  esac
9584
9585  # If the value was cached, stop now.  We just wanted to have am__tar
9586  # and am__untar set.
9587  test -n "${am_cv_prog_tar_$1}" && break
9588
9589  # tar/untar a dummy directory, and stop if the command works
9590  rm -rf conftest.dir
9591  mkdir conftest.dir
9592  echo GrepMe > conftest.dir/file
9593  AM_RUN_LOG([tardir=conftest.dir && eval $am__tar_ >conftest.tar])
9594  rm -rf conftest.dir
9595  if test -s conftest.tar; then
9596    AM_RUN_LOG([$am__untar <conftest.tar])
9597    grep GrepMe conftest.dir/file >/dev/null 2>&1 && break
9598  fi
9599done
9600rm -rf conftest.dir
9601
9602AC_CACHE_VAL([am_cv_prog_tar_$1], [am_cv_prog_tar_$1=$_am_tool])
9603AC_MSG_RESULT([$am_cv_prog_tar_$1])])
9604AC_SUBST([am__tar])
9605AC_SUBST([am__untar])
9606]) # _AM_PROG_TAR
9607
9608dnl xorg-macros.m4.  Generated from xorg-macros.m4.in xorgversion.m4 by configure.
9609dnl
9610dnl Copyright (c) 2005, 2006, Oracle and/or its affiliates. All rights reserved.
9611dnl 
9612dnl Permission is hereby granted, free of charge, to any person obtaining a
9613dnl copy of this software and associated documentation files (the "Software"),
9614dnl to deal in the Software without restriction, including without limitation
9615dnl the rights to use, copy, modify, merge, publish, distribute, sublicense,
9616dnl and/or sell copies of the Software, and to permit persons to whom the
9617dnl Software is furnished to do so, subject to the following conditions:
9618dnl
9619dnl The above copyright notice and this permission notice (including the next
9620dnl paragraph) shall be included in all copies or substantial portions of the
9621dnl Software.
9622dnl
9623dnl THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
9624dnl IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
9625dnl FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.  IN NO EVENT SHALL
9626dnl THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
9627dnl LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
9628dnl FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER
9629dnl DEALINGS IN THE SOFTWARE.
9630
9631# XORG_MACROS_VERSION(required-version)
9632# -------------------------------------
9633# Minimum version: 1.1.0
9634#
9635# If you're using a macro added in Version 1.1 or newer, include this in
9636# your configure.ac with the minimum required version, such as:
9637# XORG_MACROS_VERSION(1.1)
9638#
9639# To ensure that this macro is defined, also add:
9640# m4_ifndef([XORG_MACROS_VERSION],
9641#     [m4_fatal([must install xorg-macros 1.1 or later before running autoconf/autogen])])
9642#
9643#
9644# See the "minimum version" comment for each macro you use to see what 
9645# version you require.
9646m4_defun([XORG_MACROS_VERSION],[
9647m4_define([vers_have], [1.14.0])
9648m4_define([maj_have], m4_substr(vers_have, 0, m4_index(vers_have, [.])))
9649m4_define([maj_needed], m4_substr([$1], 0, m4_index([$1], [.])))
9650m4_if(m4_cmp(maj_have, maj_needed), 0,,
9651    [m4_fatal([xorg-macros major version ]maj_needed[ is required but ]vers_have[ found])])
9652m4_if(m4_version_compare(vers_have, [$1]), -1,
9653    [m4_fatal([xorg-macros version $1 or higher is required but ]vers_have[ found])])
9654m4_undefine([vers_have])
9655m4_undefine([maj_have])
9656m4_undefine([maj_needed])
9657]) # XORG_MACROS_VERSION
9658
9659# XORG_PROG_RAWCPP()
9660# ------------------
9661# Minimum version: 1.0.0
9662#
9663# Find cpp program and necessary flags for use in pre-processing text files
9664# such as man pages and config files
9665AC_DEFUN([XORG_PROG_RAWCPP],[
9666AC_REQUIRE([AC_PROG_CPP])
9667AC_PATH_PROGS(RAWCPP, [cpp], [${CPP}], 
9668   [$PATH:/bin:/usr/bin:/usr/lib:/usr/libexec:/usr/ccs/lib:/usr/ccs/lbin:/lib])
9669
9670# Check for flag to avoid builtin definitions - assumes unix is predefined,
9671# which is not the best choice for supporting other OS'es, but covers most
9672# of the ones we need for now.
9673AC_MSG_CHECKING([if $RAWCPP requires -undef])
9674AC_LANG_CONFTEST([Does cpp redefine unix ?
9675		  AC_LANG_DEFINES_PROVIDED])
9676if test `${RAWCPP} < conftest.$ac_ext | grep -c 'unix'` -eq 1 ; then
9677	AC_MSG_RESULT([no])
9678else
9679	if test `${RAWCPP} -undef < conftest.$ac_ext | grep -c 'unix'` -eq 1 ; then
9680		RAWCPPFLAGS=-undef
9681		AC_MSG_RESULT([yes])
9682	# under Cygwin unix is still defined even with -undef
9683	elif test `${RAWCPP} -undef -ansi < conftest.$ac_ext | grep -c 'unix'` -eq 1 ; then
9684		RAWCPPFLAGS="-undef -ansi"
9685		AC_MSG_RESULT([yes, with -ansi])
9686	else
9687		AC_MSG_ERROR([${RAWCPP} defines unix with or without -undef.  I don't know what to do.])
9688	fi
9689fi
9690rm -f conftest.$ac_ext
9691
9692AC_MSG_CHECKING([if $RAWCPP requires -traditional])
9693AC_LANG_CONFTEST([Does cpp preserve   "whitespace"?
9694		  AC_LANG_DEFINES_PROVIDED])
9695if test `${RAWCPP} < conftest.$ac_ext | grep -c 'preserve   \"'` -eq 1 ; then
9696	AC_MSG_RESULT([no])
9697else
9698	if test `${RAWCPP} -traditional < conftest.$ac_ext | grep -c 'preserve   \"'` -eq 1 ; then
9699		RAWCPPFLAGS="${RAWCPPFLAGS} -traditional"
9700		AC_MSG_RESULT([yes])
9701	else
9702		AC_MSG_ERROR([${RAWCPP} does not preserve whitespace with or without -traditional.  I don't know what to do.])
9703	fi
9704fi
9705rm -f conftest.$ac_ext
9706AC_SUBST(RAWCPPFLAGS)
9707]) # XORG_PROG_RAWCPP
9708
9709# XORG_MANPAGE_SECTIONS()
9710# -----------------------
9711# Minimum version: 1.0.0
9712#
9713# Determine which sections man pages go in for the different man page types
9714# on this OS - replaces *ManSuffix settings in old Imake *.cf per-os files.
9715# Not sure if there's any better way than just hardcoding by OS name.
9716# Override default settings by setting environment variables
9717# Added MAN_SUBSTS in version 1.8
9718# Added AC_PROG_SED in version 1.8
9719
9720AC_DEFUN([XORG_MANPAGE_SECTIONS],[
9721AC_REQUIRE([AC_CANONICAL_HOST])
9722AC_REQUIRE([AC_PROG_SED])
9723
9724if test x$APP_MAN_SUFFIX = x    ; then
9725    APP_MAN_SUFFIX=1
9726fi
9727if test x$APP_MAN_DIR = x    ; then
9728    APP_MAN_DIR='$(mandir)/man$(APP_MAN_SUFFIX)'
9729fi
9730
9731if test x$LIB_MAN_SUFFIX = x    ; then
9732    LIB_MAN_SUFFIX=3
9733fi
9734if test x$LIB_MAN_DIR = x    ; then
9735    LIB_MAN_DIR='$(mandir)/man$(LIB_MAN_SUFFIX)'
9736fi
9737
9738if test x$FILE_MAN_SUFFIX = x    ; then
9739    case $host_os in
9740	solaris*)	FILE_MAN_SUFFIX=4  ;;
9741	*)		FILE_MAN_SUFFIX=5  ;;
9742    esac
9743fi
9744if test x$FILE_MAN_DIR = x    ; then
9745    FILE_MAN_DIR='$(mandir)/man$(FILE_MAN_SUFFIX)'
9746fi
9747
9748if test x$MISC_MAN_SUFFIX = x    ; then
9749    case $host_os in
9750	solaris*)	MISC_MAN_SUFFIX=5  ;;
9751	*)		MISC_MAN_SUFFIX=7  ;;
9752    esac
9753fi
9754if test x$MISC_MAN_DIR = x    ; then
9755    MISC_MAN_DIR='$(mandir)/man$(MISC_MAN_SUFFIX)'
9756fi
9757
9758if test x$DRIVER_MAN_SUFFIX = x    ; then
9759    case $host_os in
9760	solaris*)	DRIVER_MAN_SUFFIX=7  ;;
9761	*)		DRIVER_MAN_SUFFIX=4  ;;
9762    esac
9763fi
9764if test x$DRIVER_MAN_DIR = x    ; then
9765    DRIVER_MAN_DIR='$(mandir)/man$(DRIVER_MAN_SUFFIX)'
9766fi
9767
9768if test x$ADMIN_MAN_SUFFIX = x    ; then
9769    case $host_os in
9770	solaris*)	ADMIN_MAN_SUFFIX=1m ;;
9771	*)		ADMIN_MAN_SUFFIX=8  ;;
9772    esac
9773fi
9774if test x$ADMIN_MAN_DIR = x    ; then
9775    ADMIN_MAN_DIR='$(mandir)/man$(ADMIN_MAN_SUFFIX)'
9776fi
9777
9778
9779AC_SUBST([APP_MAN_SUFFIX])
9780AC_SUBST([LIB_MAN_SUFFIX])
9781AC_SUBST([FILE_MAN_SUFFIX])
9782AC_SUBST([MISC_MAN_SUFFIX])
9783AC_SUBST([DRIVER_MAN_SUFFIX])
9784AC_SUBST([ADMIN_MAN_SUFFIX])
9785AC_SUBST([APP_MAN_DIR])
9786AC_SUBST([LIB_MAN_DIR])
9787AC_SUBST([FILE_MAN_DIR])
9788AC_SUBST([MISC_MAN_DIR])
9789AC_SUBST([DRIVER_MAN_DIR])
9790AC_SUBST([ADMIN_MAN_DIR])
9791
9792XORG_MAN_PAGE="X Version 11"
9793AC_SUBST([XORG_MAN_PAGE])
9794MAN_SUBSTS="\
9795	-e 's|__vendorversion__|\"\$(PACKAGE_STRING)\" \"\$(XORG_MAN_PAGE)\"|' \
9796	-e 's|__xorgversion__|\"\$(PACKAGE_STRING)\" \"\$(XORG_MAN_PAGE)\"|' \
9797	-e 's|__xservername__|Xorg|g' \
9798	-e 's|__xconfigfile__|xorg.conf|g' \
9799	-e 's|__xorgconfdir__|xorg.conf.d|g' \
9800	-e 's|__projectroot__|\$(prefix)|g' \
9801	-e 's|__apploaddir__|\$(appdefaultdir)|g' \
9802	-e 's|__appmansuffix__|\$(APP_MAN_SUFFIX)|g' \
9803	-e 's|__drivermansuffix__|\$(DRIVER_MAN_SUFFIX)|g' \
9804	-e 's|__adminmansuffix__|\$(ADMIN_MAN_SUFFIX)|g' \
9805	-e 's|__libmansuffix__|\$(LIB_MAN_SUFFIX)|g' \
9806	-e 's|__miscmansuffix__|\$(MISC_MAN_SUFFIX)|g' \
9807	-e 's|__filemansuffix__|\$(FILE_MAN_SUFFIX)|g'"
9808AC_SUBST([MAN_SUBSTS])
9809
9810]) # XORG_MANPAGE_SECTIONS
9811
9812# XORG_CHECK_SGML_DOCTOOLS([MIN-VERSION])
9813# ------------------------
9814# Minimum version: 1.7.0
9815#
9816# Defines the variable XORG_SGML_PATH containing the location of X11/defs.ent
9817# provided by xorg-sgml-doctools, if installed.
9818AC_DEFUN([XORG_CHECK_SGML_DOCTOOLS],[
9819AC_MSG_CHECKING([for X.Org SGML entities m4_ifval([$1],[>= $1])])
9820XORG_SGML_PATH=
9821PKG_CHECK_EXISTS([xorg-sgml-doctools m4_ifval([$1],[>= $1])],
9822    [XORG_SGML_PATH=`$PKG_CONFIG --variable=sgmlrootdir xorg-sgml-doctools`],
9823    [m4_ifval([$1],[:],
9824        [if test x"$cross_compiling" != x"yes" ; then
9825            AC_CHECK_FILE([$prefix/share/sgml/X11/defs.ent],
9826                          [XORG_SGML_PATH=$prefix/share/sgml])
9827         fi])
9828    ])
9829
9830# Define variables STYLESHEET_SRCDIR and XSL_STYLESHEET containing
9831# the path and the name of the doc stylesheet
9832if test "x$XORG_SGML_PATH" != "x" ; then
9833   AC_MSG_RESULT([$XORG_SGML_PATH])
9834   STYLESHEET_SRCDIR=$XORG_SGML_PATH/X11
9835   XSL_STYLESHEET=$STYLESHEET_SRCDIR/xorg.xsl
9836else
9837   AC_MSG_RESULT([no])
9838fi
9839
9840AC_SUBST(XORG_SGML_PATH)
9841AC_SUBST(STYLESHEET_SRCDIR)
9842AC_SUBST(XSL_STYLESHEET)
9843AM_CONDITIONAL([HAVE_STYLESHEETS], [test "x$XSL_STYLESHEET" != "x"])
9844]) # XORG_CHECK_SGML_DOCTOOLS
9845
9846# XORG_CHECK_LINUXDOC
9847# -------------------
9848# Minimum version: 1.0.0
9849#
9850# Defines the variable MAKE_TEXT if the necessary tools and
9851# files are found. $(MAKE_TEXT) blah.sgml will then produce blah.txt.
9852# Whether or not the necessary tools and files are found can be checked
9853# with the AM_CONDITIONAL "BUILD_LINUXDOC"
9854AC_DEFUN([XORG_CHECK_LINUXDOC],[
9855AC_REQUIRE([XORG_CHECK_SGML_DOCTOOLS])
9856AC_REQUIRE([XORG_WITH_PS2PDF])
9857
9858AC_PATH_PROG(LINUXDOC, linuxdoc)
9859
9860AC_MSG_CHECKING([whether to build documentation])
9861
9862if test x$XORG_SGML_PATH != x && test x$LINUXDOC != x ; then
9863   BUILDDOC=yes
9864else
9865   BUILDDOC=no
9866fi
9867
9868AM_CONDITIONAL(BUILD_LINUXDOC, [test x$BUILDDOC = xyes])
9869
9870AC_MSG_RESULT([$BUILDDOC])
9871
9872AC_MSG_CHECKING([whether to build pdf documentation])
9873
9874if test x$have_ps2pdf != xno && test x$BUILD_PDFDOC != xno; then
9875   BUILDPDFDOC=yes
9876else
9877   BUILDPDFDOC=no
9878fi
9879
9880AM_CONDITIONAL(BUILD_PDFDOC, [test x$BUILDPDFDOC = xyes])
9881
9882AC_MSG_RESULT([$BUILDPDFDOC])
9883
9884MAKE_TEXT="SGML_SEARCH_PATH=$XORG_SGML_PATH GROFF_NO_SGR=y $LINUXDOC -B txt -f"
9885MAKE_PS="SGML_SEARCH_PATH=$XORG_SGML_PATH $LINUXDOC -B latex --papersize=letter --output=ps"
9886MAKE_PDF="$PS2PDF"
9887MAKE_HTML="SGML_SEARCH_PATH=$XORG_SGML_PATH $LINUXDOC  -B html --split=0"
9888
9889AC_SUBST(MAKE_TEXT)
9890AC_SUBST(MAKE_PS)
9891AC_SUBST(MAKE_PDF)
9892AC_SUBST(MAKE_HTML)
9893]) # XORG_CHECK_LINUXDOC
9894
9895# XORG_CHECK_DOCBOOK
9896# -------------------
9897# Minimum version: 1.0.0
9898#
9899# Checks for the ability to build output formats from SGML DocBook source.
9900# For XXX in {TXT, PDF, PS, HTML}, the AM_CONDITIONAL "BUILD_XXXDOC"
9901# indicates whether the necessary tools and files are found and, if set,
9902# $(MAKE_XXX) blah.sgml will produce blah.xxx.
9903AC_DEFUN([XORG_CHECK_DOCBOOK],[
9904AC_REQUIRE([XORG_CHECK_SGML_DOCTOOLS])
9905
9906BUILDTXTDOC=no
9907BUILDPDFDOC=no
9908BUILDPSDOC=no
9909BUILDHTMLDOC=no
9910
9911AC_PATH_PROG(DOCBOOKPS, docbook2ps)
9912AC_PATH_PROG(DOCBOOKPDF, docbook2pdf)
9913AC_PATH_PROG(DOCBOOKHTML, docbook2html)
9914AC_PATH_PROG(DOCBOOKTXT, docbook2txt)
9915
9916AC_MSG_CHECKING([whether to build text documentation])
9917if test x$XORG_SGML_PATH != x && test x$DOCBOOKTXT != x &&
9918   test x$BUILD_TXTDOC != xno; then
9919	BUILDTXTDOC=yes
9920fi
9921AM_CONDITIONAL(BUILD_TXTDOC, [test x$BUILDTXTDOC = xyes])
9922AC_MSG_RESULT([$BUILDTXTDOC])
9923
9924AC_MSG_CHECKING([whether to build PDF documentation])
9925if test x$XORG_SGML_PATH != x && test x$DOCBOOKPDF != x &&
9926   test x$BUILD_PDFDOC != xno; then
9927	BUILDPDFDOC=yes
9928fi
9929AM_CONDITIONAL(BUILD_PDFDOC, [test x$BUILDPDFDOC = xyes])
9930AC_MSG_RESULT([$BUILDPDFDOC])
9931
9932AC_MSG_CHECKING([whether to build PostScript documentation])
9933if test x$XORG_SGML_PATH != x && test x$DOCBOOKPS != x &&
9934   test x$BUILD_PSDOC != xno; then
9935	BUILDPSDOC=yes
9936fi
9937AM_CONDITIONAL(BUILD_PSDOC, [test x$BUILDPSDOC = xyes])
9938AC_MSG_RESULT([$BUILDPSDOC])
9939
9940AC_MSG_CHECKING([whether to build HTML documentation])
9941if test x$XORG_SGML_PATH != x && test x$DOCBOOKHTML != x &&
9942   test x$BUILD_HTMLDOC != xno; then
9943	BUILDHTMLDOC=yes
9944fi
9945AM_CONDITIONAL(BUILD_HTMLDOC, [test x$BUILDHTMLDOC = xyes])
9946AC_MSG_RESULT([$BUILDHTMLDOC])
9947
9948MAKE_TEXT="SGML_SEARCH_PATH=$XORG_SGML_PATH $DOCBOOKTXT"
9949MAKE_PS="SGML_SEARCH_PATH=$XORG_SGML_PATH $DOCBOOKPS"
9950MAKE_PDF="SGML_SEARCH_PATH=$XORG_SGML_PATH $DOCBOOKPDF"
9951MAKE_HTML="SGML_SEARCH_PATH=$XORG_SGML_PATH $DOCBOOKHTML"
9952
9953AC_SUBST(MAKE_TEXT)
9954AC_SUBST(MAKE_PS)
9955AC_SUBST(MAKE_PDF)
9956AC_SUBST(MAKE_HTML)
9957]) # XORG_CHECK_DOCBOOK
9958
9959# XORG_WITH_XMLTO([MIN-VERSION], [DEFAULT])
9960# ----------------
9961# Minimum version: 1.5.0
9962# Minimum version for optional DEFAULT argument: 1.11.0
9963#
9964# Documentation tools are not always available on all platforms and sometimes
9965# not at the appropriate level. This macro enables a module to test for the
9966# presence of the tool and obtain it's path in separate variables. Coupled with
9967# the --with-xmlto option, it allows maximum flexibilty in making decisions
9968# as whether or not to use the xmlto package. When DEFAULT is not specified,
9969# --with-xmlto assumes 'auto'.
9970#
9971# Interface to module:
9972# HAVE_XMLTO: 	used in makefiles to conditionally generate documentation
9973# XMLTO:	returns the path of the xmlto program found
9974#		returns the path set by the user in the environment
9975# --with-xmlto:	'yes' user instructs the module to use xmlto
9976#		'no' user instructs the module not to use xmlto
9977#
9978# Added in version 1.10.0
9979# HAVE_XMLTO_TEXT: used in makefiles to conditionally generate text documentation
9980#                  xmlto for text output requires either lynx, links, or w3m browsers
9981#
9982# If the user sets the value of XMLTO, AC_PATH_PROG skips testing the path.
9983#
9984AC_DEFUN([XORG_WITH_XMLTO],[
9985AC_ARG_VAR([XMLTO], [Path to xmlto command])
9986m4_define([_defopt], m4_default([$2], [auto]))
9987AC_ARG_WITH(xmlto,
9988	AS_HELP_STRING([--with-xmlto],
9989	   [Use xmlto to regenerate documentation (default: ]_defopt[)]),
9990	   [use_xmlto=$withval], [use_xmlto=]_defopt)
9991m4_undefine([_defopt])
9992
9993if test "x$use_xmlto" = x"auto"; then
9994   AC_PATH_PROG([XMLTO], [xmlto])
9995   if test "x$XMLTO" = "x"; then
9996        AC_MSG_WARN([xmlto not found - documentation targets will be skipped])
9997	have_xmlto=no
9998   else
9999        have_xmlto=yes
10000   fi
10001elif test "x$use_xmlto" = x"yes" ; then
10002   AC_PATH_PROG([XMLTO], [xmlto])
10003   if test "x$XMLTO" = "x"; then
10004        AC_MSG_ERROR([--with-xmlto=yes specified but xmlto not found in PATH])
10005   fi
10006   have_xmlto=yes
10007elif test "x$use_xmlto" = x"no" ; then
10008   if test "x$XMLTO" != "x"; then
10009      AC_MSG_WARN([ignoring XMLTO environment variable since --with-xmlto=no was specified])
10010   fi
10011   have_xmlto=no
10012else
10013   AC_MSG_ERROR([--with-xmlto expects 'yes' or 'no'])
10014fi
10015
10016# Test for a minimum version of xmlto, if provided.
10017m4_ifval([$1],
10018[if test "$have_xmlto" = yes; then
10019    # scrape the xmlto version
10020    AC_MSG_CHECKING([the xmlto version])
10021    xmlto_version=`$XMLTO --version 2>/dev/null | cut -d' ' -f3`
10022    AC_MSG_RESULT([$xmlto_version])
10023    AS_VERSION_COMPARE([$xmlto_version], [$1],
10024        [if test "x$use_xmlto" = xauto; then
10025            AC_MSG_WARN([xmlto version $xmlto_version found, but $1 needed])
10026            have_xmlto=no
10027        else
10028            AC_MSG_ERROR([xmlto version $xmlto_version found, but $1 needed])
10029        fi])
10030fi])
10031
10032# Test for the ability of xmlto to generate a text target
10033have_xmlto_text=no
10034cat > conftest.xml << "EOF"
10035EOF
10036AS_IF([test "$have_xmlto" = yes],
10037      [AS_IF([$XMLTO --skip-validation txt conftest.xml >/dev/null 2>&1],
10038             [have_xmlto_text=yes],
10039             [AC_MSG_WARN([xmlto cannot generate text format, this format skipped])])])
10040rm -f conftest.xml
10041AM_CONDITIONAL([HAVE_XMLTO_TEXT], [test $have_xmlto_text = yes])
10042AM_CONDITIONAL([HAVE_XMLTO], [test "$have_xmlto" = yes])
10043]) # XORG_WITH_XMLTO
10044
10045# XORG_WITH_XSLTPROC([MIN-VERSION], [DEFAULT])
10046# --------------------------------------------
10047# Minimum version: 1.12.0
10048# Minimum version for optional DEFAULT argument: 1.12.0
10049#
10050# XSLT (Extensible Stylesheet Language Transformations) is a declarative,
10051# XML-based language used for the transformation of XML documents.
10052# The xsltproc command line tool is for applying XSLT stylesheets to XML documents.
10053# It is used under the cover by xmlto to generate html files from DocBook/XML.
10054# The XSLT processor is often used as a standalone tool for transformations.
10055# It should not be assumed that this tool is used only to work with documnetation.
10056# When DEFAULT is not specified, --with-xsltproc assumes 'auto'.
10057#
10058# Interface to module:
10059# HAVE_XSLTPROC: used in makefiles to conditionally generate documentation
10060# XSLTPROC:	 returns the path of the xsltproc program found
10061#		 returns the path set by the user in the environment
10062# --with-xsltproc: 'yes' user instructs the module to use xsltproc
10063#		  'no' user instructs the module not to use xsltproc
10064# have_xsltproc: returns yes if xsltproc found in PATH or no
10065#
10066# If the user sets the value of XSLTPROC, AC_PATH_PROG skips testing the path.
10067#
10068AC_DEFUN([XORG_WITH_XSLTPROC],[
10069AC_ARG_VAR([XSLTPROC], [Path to xsltproc command])
10070m4_define([_defopt], m4_default([$2], [auto]))
10071AC_ARG_WITH(xsltproc,
10072	AS_HELP_STRING([--with-xsltproc],
10073	   [Use xsltproc for the transformation of XML documents (default: ]_defopt[)]),
10074	   [use_xsltproc=$withval], [use_xsltproc=]_defopt)
10075m4_undefine([_defopt])
10076
10077if test "x$use_xsltproc" = x"auto"; then
10078   AC_PATH_PROG([XSLTPROC], [xsltproc])
10079   if test "x$XSLTPROC" = "x"; then
10080        AC_MSG_WARN([xsltproc not found - cannot transform XML documents])
10081	have_xsltproc=no
10082   else
10083        have_xsltproc=yes
10084   fi
10085elif test "x$use_xsltproc" = x"yes" ; then
10086   AC_PATH_PROG([XSLTPROC], [xsltproc])
10087   if test "x$XSLTPROC" = "x"; then
10088        AC_MSG_ERROR([--with-xsltproc=yes specified but xsltproc not found in PATH])
10089   fi
10090   have_xsltproc=yes
10091elif test "x$use_xsltproc" = x"no" ; then
10092   if test "x$XSLTPROC" != "x"; then
10093      AC_MSG_WARN([ignoring XSLTPROC environment variable since --with-xsltproc=no was specified])
10094   fi
10095   have_xsltproc=no
10096else
10097   AC_MSG_ERROR([--with-xsltproc expects 'yes' or 'no'])
10098fi
10099
10100# Checking for minimum version is not implemented
10101# but we want to keep the interface consistent with other commands
10102m4_ifval([$1],[AC_MSG_WARN(Checking for MIN-VERSION is not implemented.)])
10103
10104AM_CONDITIONAL([HAVE_XSLTPROC], [test "$have_xsltproc" = yes])
10105]) # XORG_WITH_XSLTPROC
10106
10107
10108# XORG_WITH_ASCIIDOC([MIN-VERSION], [DEFAULT])
10109# ----------------
10110# Minimum version: 1.5.0
10111# Minimum version for optional DEFAULT argument: 1.11.0
10112#
10113# Documentation tools are not always available on all platforms and sometimes
10114# not at the appropriate level. This macro enables a module to test for the
10115# presence of the tool and obtain it's path in separate variables. Coupled with
10116# the --with-asciidoc option, it allows maximum flexibilty in making decisions
10117# as whether or not to use the asciidoc package. When DEFAULT is not specified,
10118# --with-asciidoc assumes 'auto'.
10119#
10120# Interface to module:
10121# HAVE_ASCIIDOC: used in makefiles to conditionally generate documentation
10122# ASCIIDOC:	 returns the path of the asciidoc program found
10123#		 returns the path set by the user in the environment
10124# --with-asciidoc: 'yes' user instructs the module to use asciidoc
10125#		  'no' user instructs the module not to use asciidoc
10126#
10127# If the user sets the value of ASCIIDOC, AC_PATH_PROG skips testing the path.
10128#
10129AC_DEFUN([XORG_WITH_ASCIIDOC],[
10130AC_ARG_VAR([ASCIIDOC], [Path to asciidoc command])
10131m4_define([_defopt], m4_default([$2], [auto]))
10132AC_ARG_WITH(asciidoc,
10133	AS_HELP_STRING([--with-asciidoc],
10134	   [Use asciidoc to regenerate documentation (default: ]_defopt[)]),
10135	   [use_asciidoc=$withval], [use_asciidoc=]_defopt)
10136m4_undefine([_defopt])
10137
10138if test "x$use_asciidoc" = x"auto"; then
10139   AC_PATH_PROG([ASCIIDOC], [asciidoc])
10140   if test "x$ASCIIDOC" = "x"; then
10141        AC_MSG_WARN([asciidoc not found - documentation targets will be skipped])
10142	have_asciidoc=no
10143   else
10144        have_asciidoc=yes
10145   fi
10146elif test "x$use_asciidoc" = x"yes" ; then
10147   AC_PATH_PROG([ASCIIDOC], [asciidoc])
10148   if test "x$ASCIIDOC" = "x"; then
10149        AC_MSG_ERROR([--with-asciidoc=yes specified but asciidoc not found in PATH])
10150   fi
10151   have_asciidoc=yes
10152elif test "x$use_asciidoc" = x"no" ; then
10153   if test "x$ASCIIDOC" != "x"; then
10154      AC_MSG_WARN([ignoring ASCIIDOC environment variable since --with-asciidoc=no was specified])
10155   fi
10156   have_asciidoc=no
10157else
10158   AC_MSG_ERROR([--with-asciidoc expects 'yes' or 'no'])
10159fi
10160m4_ifval([$1],
10161[if test "$have_asciidoc" = yes; then
10162    # scrape the asciidoc version
10163    AC_MSG_CHECKING([the asciidoc version])
10164    asciidoc_version=`$ASCIIDOC --version 2>/dev/null | cut -d' ' -f2`
10165    AC_MSG_RESULT([$asciidoc_version])
10166    AS_VERSION_COMPARE([$asciidoc_version], [$1],
10167        [if test "x$use_asciidoc" = xauto; then
10168            AC_MSG_WARN([asciidoc version $asciidoc_version found, but $1 needed])
10169            have_asciidoc=no
10170        else
10171            AC_MSG_ERROR([asciidoc version $asciidoc_version found, but $1 needed])
10172        fi])
10173fi])
10174AM_CONDITIONAL([HAVE_ASCIIDOC], [test "$have_asciidoc" = yes])
10175]) # XORG_WITH_ASCIIDOC
10176
10177# XORG_WITH_DOXYGEN([MIN-VERSION], [DEFAULT])
10178# --------------------------------
10179# Minimum version: 1.5.0
10180# Minimum version for optional DEFAULT argument: 1.11.0
10181#
10182# Documentation tools are not always available on all platforms and sometimes
10183# not at the appropriate level. This macro enables a module to test for the
10184# presence of the tool and obtain it's path in separate variables. Coupled with
10185# the --with-doxygen option, it allows maximum flexibilty in making decisions
10186# as whether or not to use the doxygen package. When DEFAULT is not specified,
10187# --with-doxygen assumes 'auto'.
10188#
10189# Interface to module:
10190# HAVE_DOXYGEN: used in makefiles to conditionally generate documentation
10191# DOXYGEN:	 returns the path of the doxygen program found
10192#		 returns the path set by the user in the environment
10193# --with-doxygen: 'yes' user instructs the module to use doxygen
10194#		  'no' user instructs the module not to use doxygen
10195#
10196# If the user sets the value of DOXYGEN, AC_PATH_PROG skips testing the path.
10197#
10198AC_DEFUN([XORG_WITH_DOXYGEN],[
10199AC_ARG_VAR([DOXYGEN], [Path to doxygen command])
10200m4_define([_defopt], m4_default([$2], [auto]))
10201AC_ARG_WITH(doxygen,
10202	AS_HELP_STRING([--with-doxygen],
10203	   [Use doxygen to regenerate documentation (default: ]_defopt[)]),
10204	   [use_doxygen=$withval], [use_doxygen=]_defopt)
10205m4_undefine([_defopt])
10206
10207if test "x$use_doxygen" = x"auto"; then
10208   AC_PATH_PROG([DOXYGEN], [doxygen])
10209   if test "x$DOXYGEN" = "x"; then
10210        AC_MSG_WARN([doxygen not found - documentation targets will be skipped])
10211	have_doxygen=no
10212   else
10213        have_doxygen=yes
10214   fi
10215elif test "x$use_doxygen" = x"yes" ; then
10216   AC_PATH_PROG([DOXYGEN], [doxygen])
10217   if test "x$DOXYGEN" = "x"; then
10218        AC_MSG_ERROR([--with-doxygen=yes specified but doxygen not found in PATH])
10219   fi
10220   have_doxygen=yes
10221elif test "x$use_doxygen" = x"no" ; then
10222   if test "x$DOXYGEN" != "x"; then
10223      AC_MSG_WARN([ignoring DOXYGEN environment variable since --with-doxygen=no was specified])
10224   fi
10225   have_doxygen=no
10226else
10227   AC_MSG_ERROR([--with-doxygen expects 'yes' or 'no'])
10228fi
10229m4_ifval([$1],
10230[if test "$have_doxygen" = yes; then
10231    # scrape the doxygen version
10232    AC_MSG_CHECKING([the doxygen version])
10233    doxygen_version=`$DOXYGEN --version 2>/dev/null`
10234    AC_MSG_RESULT([$doxygen_version])
10235    AS_VERSION_COMPARE([$doxygen_version], [$1],
10236        [if test "x$use_doxygen" = xauto; then
10237            AC_MSG_WARN([doxygen version $doxygen_version found, but $1 needed])
10238            have_doxygen=no
10239        else
10240            AC_MSG_ERROR([doxygen version $doxygen_version found, but $1 needed])
10241        fi])
10242fi])
10243AM_CONDITIONAL([HAVE_DOXYGEN], [test "$have_doxygen" = yes])
10244]) # XORG_WITH_DOXYGEN
10245
10246# XORG_WITH_GROFF([DEFAULT])
10247# ----------------
10248# Minimum version: 1.6.0
10249# Minimum version for optional DEFAULT argument: 1.11.0
10250#
10251# Documentation tools are not always available on all platforms and sometimes
10252# not at the appropriate level. This macro enables a module to test for the
10253# presence of the tool and obtain it's path in separate variables. Coupled with
10254# the --with-groff option, it allows maximum flexibilty in making decisions
10255# as whether or not to use the groff package. When DEFAULT is not specified,
10256# --with-groff assumes 'auto'.
10257#
10258# Interface to module:
10259# HAVE_GROFF:	 used in makefiles to conditionally generate documentation
10260# HAVE_GROFF_MM: the memorandum macros (-mm) package
10261# HAVE_GROFF_MS: the -ms macros package
10262# GROFF:	 returns the path of the groff program found
10263#		 returns the path set by the user in the environment
10264# --with-groff:	 'yes' user instructs the module to use groff
10265#		 'no' user instructs the module not to use groff
10266#
10267# Added in version 1.9.0:
10268# HAVE_GROFF_HTML: groff has dependencies to output HTML format:
10269#		   pnmcut pnmcrop pnmtopng pnmtops from the netpbm package.
10270#		   psselect from the psutils package.
10271#		   the ghostcript package. Refer to the grohtml man pages
10272#
10273# If the user sets the value of GROFF, AC_PATH_PROG skips testing the path.
10274#
10275# OS and distros often splits groff in a basic and full package, the former
10276# having the groff program and the later having devices, fonts and macros
10277# Checking for the groff executable is not enough.
10278#
10279# If macros are missing, we cannot assume that groff is useless, so we don't
10280# unset HAVE_GROFF or GROFF env variables.
10281# HAVE_GROFF_?? can never be true while HAVE_GROFF is false.
10282#
10283AC_DEFUN([XORG_WITH_GROFF],[
10284AC_ARG_VAR([GROFF], [Path to groff command])
10285m4_define([_defopt], m4_default([$1], [auto]))
10286AC_ARG_WITH(groff,
10287	AS_HELP_STRING([--with-groff],
10288	   [Use groff to regenerate documentation (default: ]_defopt[)]),
10289	   [use_groff=$withval], [use_groff=]_defopt)
10290m4_undefine([_defopt])
10291
10292if test "x$use_groff" = x"auto"; then
10293   AC_PATH_PROG([GROFF], [groff])
10294   if test "x$GROFF" = "x"; then
10295        AC_MSG_WARN([groff not found - documentation targets will be skipped])
10296	have_groff=no
10297   else
10298        have_groff=yes
10299   fi
10300elif test "x$use_groff" = x"yes" ; then
10301   AC_PATH_PROG([GROFF], [groff])
10302   if test "x$GROFF" = "x"; then
10303        AC_MSG_ERROR([--with-groff=yes specified but groff not found in PATH])
10304   fi
10305   have_groff=yes
10306elif test "x$use_groff" = x"no" ; then
10307   if test "x$GROFF" != "x"; then
10308      AC_MSG_WARN([ignoring GROFF environment variable since --with-groff=no was specified])
10309   fi
10310   have_groff=no
10311else
10312   AC_MSG_ERROR([--with-groff expects 'yes' or 'no'])
10313fi
10314
10315# We have groff, test for the presence of the macro packages
10316if test "x$have_groff" = x"yes"; then
10317    AC_MSG_CHECKING([for ${GROFF} -ms macros])
10318    if ${GROFF} -ms -I. /dev/null >/dev/null 2>&1 ; then
10319        groff_ms_works=yes
10320    else
10321        groff_ms_works=no
10322    fi
10323    AC_MSG_RESULT([$groff_ms_works])
10324    AC_MSG_CHECKING([for ${GROFF} -mm macros])
10325    if ${GROFF} -mm -I. /dev/null >/dev/null 2>&1 ; then
10326        groff_mm_works=yes
10327    else
10328        groff_mm_works=no
10329    fi
10330    AC_MSG_RESULT([$groff_mm_works])
10331fi
10332
10333# We have groff, test for HTML dependencies, one command per package
10334if test "x$have_groff" = x"yes"; then
10335   AC_PATH_PROGS(GS_PATH, [gs gswin32c])
10336   AC_PATH_PROG(PNMTOPNG_PATH, [pnmtopng])
10337   AC_PATH_PROG(PSSELECT_PATH, [psselect])
10338   if test "x$GS_PATH" != "x" -a "x$PNMTOPNG_PATH" != "x" -a "x$PSSELECT_PATH" != "x"; then
10339      have_groff_html=yes
10340   else
10341      have_groff_html=no
10342      AC_MSG_WARN([grohtml dependencies not found - HTML Documentation skipped. Refer to grohtml man pages])
10343   fi
10344fi
10345
10346# Set Automake conditionals for Makefiles
10347AM_CONDITIONAL([HAVE_GROFF], [test "$have_groff" = yes])
10348AM_CONDITIONAL([HAVE_GROFF_MS], [test "$groff_ms_works" = yes])
10349AM_CONDITIONAL([HAVE_GROFF_MM], [test "$groff_mm_works" = yes])
10350AM_CONDITIONAL([HAVE_GROFF_HTML], [test "$have_groff_html" = yes])
10351]) # XORG_WITH_GROFF
10352
10353# XORG_WITH_FOP([DEFAULT])
10354# ----------------
10355# Minimum version: 1.6.0
10356# Minimum version for optional DEFAULT argument: 1.11.0
10357#
10358# Documentation tools are not always available on all platforms and sometimes
10359# not at the appropriate level. This macro enables a module to test for the
10360# presence of the tool and obtain it's path in separate variables. Coupled with
10361# the --with-fop option, it allows maximum flexibilty in making decisions
10362# as whether or not to use the fop package. When DEFAULT is not specified,
10363# --with-fop assumes 'auto'.
10364#
10365# Interface to module:
10366# HAVE_FOP: 	used in makefiles to conditionally generate documentation
10367# FOP:	 	returns the path of the fop program found
10368#		returns the path set by the user in the environment
10369# --with-fop: 	'yes' user instructs the module to use fop
10370#		'no' user instructs the module not to use fop
10371#
10372# If the user sets the value of FOP, AC_PATH_PROG skips testing the path.
10373#
10374AC_DEFUN([XORG_WITH_FOP],[
10375AC_ARG_VAR([FOP], [Path to fop command])
10376m4_define([_defopt], m4_default([$1], [auto]))
10377AC_ARG_WITH(fop,
10378	AS_HELP_STRING([--with-fop],
10379	   [Use fop to regenerate documentation (default: ]_defopt[)]),
10380	   [use_fop=$withval], [use_fop=]_defopt)
10381m4_undefine([_defopt])
10382
10383if test "x$use_fop" = x"auto"; then
10384   AC_PATH_PROG([FOP], [fop])
10385   if test "x$FOP" = "x"; then
10386        AC_MSG_WARN([fop not found - documentation targets will be skipped])
10387	have_fop=no
10388   else
10389        have_fop=yes
10390   fi
10391elif test "x$use_fop" = x"yes" ; then
10392   AC_PATH_PROG([FOP], [fop])
10393   if test "x$FOP" = "x"; then
10394        AC_MSG_ERROR([--with-fop=yes specified but fop not found in PATH])
10395   fi
10396   have_fop=yes
10397elif test "x$use_fop" = x"no" ; then
10398   if test "x$FOP" != "x"; then
10399      AC_MSG_WARN([ignoring FOP environment variable since --with-fop=no was specified])
10400   fi
10401   have_fop=no
10402else
10403   AC_MSG_ERROR([--with-fop expects 'yes' or 'no'])
10404fi
10405AM_CONDITIONAL([HAVE_FOP], [test "$have_fop" = yes])
10406]) # XORG_WITH_FOP
10407
10408# XORG_WITH_PS2PDF([DEFAULT])
10409# ----------------
10410# Minimum version: 1.6.0
10411# Minimum version for optional DEFAULT argument: 1.11.0
10412#
10413# Documentation tools are not always available on all platforms and sometimes
10414# not at the appropriate level. This macro enables a module to test for the
10415# presence of the tool and obtain it's path in separate variables. Coupled with
10416# the --with-ps2pdf option, it allows maximum flexibilty in making decisions
10417# as whether or not to use the ps2pdf package. When DEFAULT is not specified,
10418# --with-ps2pdf assumes 'auto'.
10419#
10420# Interface to module:
10421# HAVE_PS2PDF: 	used in makefiles to conditionally generate documentation
10422# PS2PDF:	returns the path of the ps2pdf program found
10423#		returns the path set by the user in the environment
10424# --with-ps2pdf: 'yes' user instructs the module to use ps2pdf
10425#		 'no' user instructs the module not to use ps2pdf
10426#
10427# If the user sets the value of PS2PDF, AC_PATH_PROG skips testing the path.
10428#
10429AC_DEFUN([XORG_WITH_PS2PDF],[
10430AC_ARG_VAR([PS2PDF], [Path to ps2pdf command])
10431m4_define([_defopt], m4_default([$1], [auto]))
10432AC_ARG_WITH(ps2pdf,
10433	AS_HELP_STRING([--with-ps2pdf],
10434	   [Use ps2pdf to regenerate documentation (default: ]_defopt[)]),
10435	   [use_ps2pdf=$withval], [use_ps2pdf=]_defopt)
10436m4_undefine([_defopt])
10437
10438if test "x$use_ps2pdf" = x"auto"; then
10439   AC_PATH_PROG([PS2PDF], [ps2pdf])
10440   if test "x$PS2PDF" = "x"; then
10441        AC_MSG_WARN([ps2pdf not found - documentation targets will be skipped])
10442	have_ps2pdf=no
10443   else
10444        have_ps2pdf=yes
10445   fi
10446elif test "x$use_ps2pdf" = x"yes" ; then
10447   AC_PATH_PROG([PS2PDF], [ps2pdf])
10448   if test "x$PS2PDF" = "x"; then
10449        AC_MSG_ERROR([--with-ps2pdf=yes specified but ps2pdf not found in PATH])
10450   fi
10451   have_ps2pdf=yes
10452elif test "x$use_ps2pdf" = x"no" ; then
10453   if test "x$PS2PDF" != "x"; then
10454      AC_MSG_WARN([ignoring PS2PDF environment variable since --with-ps2pdf=no was specified])
10455   fi
10456   have_ps2pdf=no
10457else
10458   AC_MSG_ERROR([--with-ps2pdf expects 'yes' or 'no'])
10459fi
10460AM_CONDITIONAL([HAVE_PS2PDF], [test "$have_ps2pdf" = yes])
10461]) # XORG_WITH_PS2PDF
10462
10463# XORG_ENABLE_DOCS (enable_docs=yes)
10464# ----------------
10465# Minimum version: 1.6.0
10466#
10467# Documentation tools are not always available on all platforms and sometimes
10468# not at the appropriate level. This macro enables a builder to skip all
10469# documentation targets except traditional man pages.
10470# Combined with the specific tool checking macros XORG_WITH_*, it provides
10471# maximum flexibilty in controlling documentation building.
10472# Refer to:
10473# XORG_WITH_XMLTO         --with-xmlto
10474# XORG_WITH_ASCIIDOC      --with-asciidoc
10475# XORG_WITH_DOXYGEN       --with-doxygen
10476# XORG_WITH_FOP           --with-fop
10477# XORG_WITH_GROFF         --with-groff
10478# XORG_WITH_PS2PDF        --with-ps2pdf
10479#
10480# Interface to module:
10481# ENABLE_DOCS: 	  used in makefiles to conditionally generate documentation
10482# --enable-docs: 'yes' user instructs the module to generate docs
10483#		 'no' user instructs the module not to generate docs
10484# parm1:	specify the default value, yes or no.
10485#
10486AC_DEFUN([XORG_ENABLE_DOCS],[
10487m4_define([docs_default], m4_default([$1], [yes]))
10488AC_ARG_ENABLE(docs,
10489	AS_HELP_STRING([--enable-docs],
10490	   [Enable building the documentation (default: ]docs_default[)]),
10491	   [build_docs=$enableval], [build_docs=]docs_default)
10492m4_undefine([docs_default])
10493AM_CONDITIONAL(ENABLE_DOCS, [test x$build_docs = xyes])
10494AC_MSG_CHECKING([whether to build documentation])
10495AC_MSG_RESULT([$build_docs])
10496]) # XORG_ENABLE_DOCS
10497
10498# XORG_ENABLE_DEVEL_DOCS (enable_devel_docs=yes)
10499# ----------------
10500# Minimum version: 1.6.0
10501#
10502# This macro enables a builder to skip all developer documentation.
10503# Combined with the specific tool checking macros XORG_WITH_*, it provides
10504# maximum flexibilty in controlling documentation building.
10505# Refer to:
10506# XORG_WITH_XMLTO         --with-xmlto
10507# XORG_WITH_ASCIIDOC      --with-asciidoc
10508# XORG_WITH_DOXYGEN       --with-doxygen
10509# XORG_WITH_FOP           --with-fop
10510# XORG_WITH_GROFF         --with-groff
10511# XORG_WITH_PS2PDF        --with-ps2pdf
10512#
10513# Interface to module:
10514# ENABLE_DEVEL_DOCS:	used in makefiles to conditionally generate developer docs
10515# --enable-devel-docs:	'yes' user instructs the module to generate developer docs
10516#			'no' user instructs the module not to generate developer docs
10517# parm1:		specify the default value, yes or no.
10518#
10519AC_DEFUN([XORG_ENABLE_DEVEL_DOCS],[
10520m4_define([devel_default], m4_default([$1], [yes]))
10521AC_ARG_ENABLE(devel-docs,
10522	AS_HELP_STRING([--enable-devel-docs],
10523	   [Enable building the developer documentation (default: ]devel_default[)]),
10524	   [build_devel_docs=$enableval], [build_devel_docs=]devel_default)
10525m4_undefine([devel_default])
10526AM_CONDITIONAL(ENABLE_DEVEL_DOCS, [test x$build_devel_docs = xyes])
10527AC_MSG_CHECKING([whether to build developer documentation])
10528AC_MSG_RESULT([$build_devel_docs])
10529]) # XORG_ENABLE_DEVEL_DOCS
10530
10531# XORG_ENABLE_SPECS (enable_specs=yes)
10532# ----------------
10533# Minimum version: 1.6.0
10534#
10535# This macro enables a builder to skip all functional specification targets.
10536# Combined with the specific tool checking macros XORG_WITH_*, it provides
10537# maximum flexibilty in controlling documentation building.
10538# Refer to:
10539# XORG_WITH_XMLTO         --with-xmlto
10540# XORG_WITH_ASCIIDOC      --with-asciidoc
10541# XORG_WITH_DOXYGEN       --with-doxygen
10542# XORG_WITH_FOP           --with-fop
10543# XORG_WITH_GROFF         --with-groff
10544# XORG_WITH_PS2PDF        --with-ps2pdf
10545#
10546# Interface to module:
10547# ENABLE_SPECS:		used in makefiles to conditionally generate specs
10548# --enable-specs:	'yes' user instructs the module to generate specs
10549#			'no' user instructs the module not to generate specs
10550# parm1:		specify the default value, yes or no.
10551#
10552AC_DEFUN([XORG_ENABLE_SPECS],[
10553m4_define([spec_default], m4_default([$1], [yes]))
10554AC_ARG_ENABLE(specs,
10555	AS_HELP_STRING([--enable-specs],
10556	   [Enable building the specs (default: ]spec_default[)]),
10557	   [build_specs=$enableval], [build_specs=]spec_default)
10558m4_undefine([spec_default])
10559AM_CONDITIONAL(ENABLE_SPECS, [test x$build_specs = xyes])
10560AC_MSG_CHECKING([whether to build functional specifications])
10561AC_MSG_RESULT([$build_specs])
10562]) # XORG_ENABLE_SPECS
10563
10564# XORG_ENABLE_UNIT_TESTS (enable_unit_tests=auto)
10565# ----------------------------------------------
10566# Minimum version: 1.13.0
10567#
10568# This macro enables a builder to enable/disable unit testing
10569# It makes no assumption about the test cases implementation
10570# Test cases may or may not use Automake "Support for test suites"
10571# They may or may not use the software utility library GLib
10572#
10573# When used in conjunction with XORG_WITH_GLIB, use both AM_CONDITIONAL
10574# ENABLE_UNIT_TESTS and HAVE_GLIB. Not all unit tests may use glib.
10575# The variable enable_unit_tests is used by other macros in this file.
10576#
10577# Interface to module:
10578# ENABLE_UNIT_TESTS:	used in makefiles to conditionally build tests
10579# enable_unit_tests:    used in configure.ac for additional configuration
10580# --enable-unit-tests:	'yes' user instructs the module to build tests
10581#			'no' user instructs the module not to build tests
10582# parm1:		specify the default value, yes or no.
10583#
10584AC_DEFUN([XORG_ENABLE_UNIT_TESTS],[
10585AC_BEFORE([$0], [XORG_WITH_GLIB])
10586AC_BEFORE([$0], [XORG_LD_WRAP])
10587m4_define([_defopt], m4_default([$1], [auto]))
10588AC_ARG_ENABLE(unit-tests, AS_HELP_STRING([--enable-unit-tests],
10589	[Enable building unit test cases (default: ]_defopt[)]),
10590	[enable_unit_tests=$enableval], [enable_unit_tests=]_defopt)
10591m4_undefine([_defopt])
10592AM_CONDITIONAL(ENABLE_UNIT_TESTS, [test "x$enable_unit_tests" != xno])
10593AC_MSG_CHECKING([whether to build unit test cases])
10594AC_MSG_RESULT([$enable_unit_tests])
10595]) # XORG_ENABLE_UNIT_TESTS
10596
10597# XORG_WITH_GLIB([MIN-VERSION], [DEFAULT])
10598# ----------------------------------------
10599# Minimum version: 1.13.0
10600#
10601# GLib is a library which provides advanced data structures and functions.
10602# This macro enables a module to test for the presence of Glib.
10603#
10604# When used with ENABLE_UNIT_TESTS, it is assumed GLib is used for unit testing.
10605# Otherwise the value of $enable_unit_tests is blank.
10606#
10607# Interface to module:
10608# HAVE_GLIB: used in makefiles to conditionally build targets
10609# with_glib: used in configure.ac to know if GLib has been found
10610# --with-glib:	'yes' user instructs the module to use glib
10611#		'no' user instructs the module not to use glib
10612#
10613AC_DEFUN([XORG_WITH_GLIB],[
10614AC_REQUIRE([PKG_PROG_PKG_CONFIG])
10615m4_define([_defopt], m4_default([$2], [auto]))
10616AC_ARG_WITH(glib, AS_HELP_STRING([--with-glib],
10617	[Use GLib library for unit testing (default: ]_defopt[)]),
10618	[with_glib=$withval], [with_glib=]_defopt)
10619m4_undefine([_defopt])
10620
10621have_glib=no
10622# Do not probe GLib if user explicitly disabled unit testing
10623if test "x$enable_unit_tests" != x"no"; then
10624  # Do not probe GLib if user explicitly disabled it
10625  if test "x$with_glib" != x"no"; then
10626    m4_ifval(
10627      [$1],
10628      [PKG_CHECK_MODULES([GLIB], [glib-2.0 >= $1], [have_glib=yes], [have_glib=no])],
10629      [PKG_CHECK_MODULES([GLIB], [glib-2.0], [have_glib=yes], [have_glib=no])]
10630    )
10631  fi
10632fi
10633
10634# Not having GLib when unit testing has been explicitly requested is an error
10635if test "x$enable_unit_tests" = x"yes"; then
10636  if test "x$have_glib" = x"no"; then
10637    AC_MSG_ERROR([--enable-unit-tests=yes specified but glib-2.0 not found])
10638  fi
10639fi
10640
10641# Having unit testing disabled when GLib has been explicitly requested is an error
10642if test "x$enable_unit_tests" = x"no"; then
10643  if test "x$with_glib" = x"yes"; then
10644    AC_MSG_ERROR([--enable-unit-tests=yes specified but glib-2.0 not found])
10645  fi
10646fi
10647
10648# Not having GLib when it has been explicitly requested is an error
10649if test "x$with_glib" = x"yes"; then
10650  if test "x$have_glib" = x"no"; then
10651    AC_MSG_ERROR([--with-glib=yes specified but glib-2.0 not found])
10652  fi
10653fi
10654
10655AM_CONDITIONAL([HAVE_GLIB], [test "$have_glib" = yes])
10656]) # XORG_WITH_GLIB
10657
10658# XORG_LD_WRAP
10659# ------------
10660# Minimum version: 1.13.0
10661#
10662# Check if linker supports -wrap, passed via compiler flags
10663#
10664# When used with ENABLE_UNIT_TESTS, it is assumed -wrap is used for unit testing.
10665# Otherwise the value of $enable_unit_tests is blank.
10666#
10667AC_DEFUN([XORG_LD_WRAP],[
10668XORG_CHECK_LINKER_FLAGS([-Wl,-wrap,exit],[have_ld_wrap=yes],[have_ld_wrap=no])
10669# Not having ld wrap when unit testing has been explicitly requested is an error
10670if test "x$enable_unit_tests" = x"yes"; then
10671  if test "x$have_ld_wrap" = x"no"; then
10672    AC_MSG_ERROR([--enable-unit-tests=yes specified but ld -wrap support is not available])
10673  fi
10674fi
10675AM_CONDITIONAL([HAVE_LD_WRAP], [test "$have_ld_wrap" = yes])
10676#
10677]) # XORG_LD_WRAP
10678
10679# XORG_CHECK_LINKER_FLAGS
10680# -----------------------
10681# SYNOPSIS
10682#
10683#   XORG_CHECK_LINKER_FLAGS(FLAGS, [ACTION-SUCCESS], [ACTION-FAILURE])
10684#
10685# DESCRIPTION
10686#
10687#   Check whether the given linker FLAGS work with the current language's
10688#   linker, or whether they give an error.
10689#
10690#   ACTION-SUCCESS/ACTION-FAILURE are shell commands to execute on
10691#   success/failure.
10692#
10693#   NOTE: Based on AX_CHECK_COMPILER_FLAGS.
10694#
10695# LICENSE
10696#
10697#   Copyright (c) 2009 Mike Frysinger <vapier@gentoo.org>
10698#   Copyright (c) 2009 Steven G. Johnson <stevenj@alum.mit.edu>
10699#   Copyright (c) 2009 Matteo Frigo
10700#
10701#   This program is free software: you can redistribute it and/or modify it
10702#   under the terms of the GNU General Public License as published by the
10703#   Free Software Foundation, either version 3 of the License, or (at your
10704#   option) any later version.
10705#
10706#   This program is distributed in the hope that it will be useful, but
10707#   WITHOUT ANY WARRANTY; without even the implied warranty of
10708#   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General
10709#   Public License for more details.
10710#
10711#   You should have received a copy of the GNU General Public License along
10712#   with this program. If not, see <http://www.gnu.org/licenses/>.
10713#
10714#   As a special exception, the respective Autoconf Macro's copyright owner
10715#   gives unlimited permission to copy, distribute and modify the configure
10716#   scripts that are the output of Autoconf when processing the Macro. You
10717#   need not follow the terms of the GNU General Public License when using
10718#   or distributing such scripts, even though portions of the text of the
10719#   Macro appear in them. The GNU General Public License (GPL) does govern
10720#   all other use of the material that constitutes the Autoconf Macro.
10721#
10722#   This special exception to the GPL applies to versions of the Autoconf
10723#   Macro released by the Autoconf Archive. When you make and distribute a
10724#   modified version of the Autoconf Macro, you may extend this special
10725#   exception to the GPL to apply to your modified version as well.#
10726AC_DEFUN([XORG_CHECK_LINKER_FLAGS],
10727[AC_MSG_CHECKING([whether the linker accepts $1])
10728dnl Some hackery here since AC_CACHE_VAL can't handle a non-literal varname:
10729AS_LITERAL_IF([$1],
10730  [AC_CACHE_VAL(AS_TR_SH(xorg_cv_linker_flags_[$1]), [
10731      ax_save_FLAGS=$LDFLAGS
10732      LDFLAGS="$1"
10733      AC_LINK_IFELSE([AC_LANG_PROGRAM()],
10734        AS_TR_SH(xorg_cv_linker_flags_[$1])=yes,
10735        AS_TR_SH(xorg_cv_linker_flags_[$1])=no)
10736      LDFLAGS=$ax_save_FLAGS])],
10737  [ax_save_FLAGS=$LDFLAGS
10738   LDFLAGS="$1"
10739   AC_LINK_IFELSE([AC_LANG_PROGRAM()],
10740     eval AS_TR_SH(xorg_cv_linker_flags_[$1])=yes,
10741     eval AS_TR_SH(xorg_cv_linker_flags_[$1])=no)
10742   LDFLAGS=$ax_save_FLAGS])
10743eval xorg_check_linker_flags=$AS_TR_SH(xorg_cv_linker_flags_[$1])
10744AC_MSG_RESULT($xorg_check_linker_flags)
10745if test "x$xorg_check_linker_flags" = xyes; then
10746	m4_default([$2], :)
10747else
10748	m4_default([$3], :)
10749fi
10750]) # XORG_CHECK_LINKER_FLAGS
10751
10752# XORG_CHECK_MALLOC_ZERO
10753# ----------------------
10754# Minimum version: 1.0.0
10755#
10756# Defines {MALLOC,XMALLOC,XTMALLOC}_ZERO_CFLAGS appropriately if
10757# malloc(0) returns NULL.  Packages should add one of these cflags to
10758# their AM_CFLAGS (or other appropriate *_CFLAGS) to use them.
10759AC_DEFUN([XORG_CHECK_MALLOC_ZERO],[
10760AC_ARG_ENABLE(malloc0returnsnull,
10761	AS_HELP_STRING([--enable-malloc0returnsnull],
10762		       [malloc(0) returns NULL (default: auto)]),
10763	[MALLOC_ZERO_RETURNS_NULL=$enableval],
10764	[MALLOC_ZERO_RETURNS_NULL=auto])
10765
10766AC_MSG_CHECKING([whether malloc(0) returns NULL])
10767if test "x$MALLOC_ZERO_RETURNS_NULL" = xauto; then
10768	AC_RUN_IFELSE([AC_LANG_PROGRAM([
10769#include <stdlib.h>
10770],[
10771    char *m0, *r0, *c0, *p;
10772    m0 = malloc(0);
10773    p = malloc(10);
10774    r0 = realloc(p,0);
10775    c0 = calloc(0,10);
10776    exit((m0 == 0 || r0 == 0 || c0 == 0) ? 0 : 1);
10777])],
10778		[MALLOC_ZERO_RETURNS_NULL=yes],
10779		[MALLOC_ZERO_RETURNS_NULL=no],
10780		[MALLOC_ZERO_RETURNS_NULL=yes])
10781fi
10782AC_MSG_RESULT([$MALLOC_ZERO_RETURNS_NULL])
10783
10784if test "x$MALLOC_ZERO_RETURNS_NULL" = xyes; then
10785	MALLOC_ZERO_CFLAGS="-DMALLOC_0_RETURNS_NULL"
10786	XMALLOC_ZERO_CFLAGS=$MALLOC_ZERO_CFLAGS
10787	XTMALLOC_ZERO_CFLAGS="$MALLOC_ZERO_CFLAGS -DXTMALLOC_BC"
10788else
10789	MALLOC_ZERO_CFLAGS=""
10790	XMALLOC_ZERO_CFLAGS=""
10791	XTMALLOC_ZERO_CFLAGS=""
10792fi
10793
10794AC_SUBST([MALLOC_ZERO_CFLAGS])
10795AC_SUBST([XMALLOC_ZERO_CFLAGS])
10796AC_SUBST([XTMALLOC_ZERO_CFLAGS])
10797]) # XORG_CHECK_MALLOC_ZERO
10798
10799# XORG_WITH_LINT()
10800# ----------------
10801# Minimum version: 1.1.0
10802#
10803# This macro enables the use of a tool that flags some suspicious and
10804# non-portable constructs (likely to be bugs) in C language source code.
10805# It will attempt to locate the tool and use appropriate options.
10806# There are various lint type tools on different platforms.
10807#
10808# Interface to module:
10809# LINT:		returns the path to the tool found on the platform
10810#		or the value set to LINT on the configure cmd line
10811#		also an Automake conditional
10812# LINT_FLAGS:	an Automake variable with appropriate flags
10813#
10814# --with-lint:	'yes' user instructs the module to use lint
10815#		'no' user instructs the module not to use lint (default)
10816#
10817# If the user sets the value of LINT, AC_PATH_PROG skips testing the path.
10818# If the user sets the value of LINT_FLAGS, they are used verbatim.
10819#
10820AC_DEFUN([XORG_WITH_LINT],[
10821
10822AC_ARG_VAR([LINT], [Path to a lint-style command])
10823AC_ARG_VAR([LINT_FLAGS], [Flags for the lint-style command])
10824AC_ARG_WITH(lint, [AS_HELP_STRING([--with-lint],
10825		[Use a lint-style source code checker (default: disabled)])],
10826		[use_lint=$withval], [use_lint=no])
10827
10828# Obtain platform specific info like program name and options
10829# The lint program on FreeBSD and NetBSD is different from the one on Solaris
10830case $host_os in
10831  *linux* | *openbsd* | kfreebsd*-gnu | darwin* | cygwin*)
10832	lint_name=splint
10833	lint_options="-badflag"
10834	;;
10835  *freebsd* | *netbsd*)
10836	lint_name=lint
10837	lint_options="-u -b"
10838	;;
10839  *solaris*)
10840	lint_name=lint
10841	lint_options="-u -b -h -erroff=E_INDISTING_FROM_TRUNC2"
10842	;;
10843esac
10844
10845# Test for the presence of the program (either guessed by the code or spelled out by the user)
10846if test "x$use_lint" = x"yes" ; then
10847   AC_PATH_PROG([LINT], [$lint_name])
10848   if test "x$LINT" = "x"; then
10849        AC_MSG_ERROR([--with-lint=yes specified but lint-style tool not found in PATH])
10850   fi
10851elif test "x$use_lint" = x"no" ; then
10852   if test "x$LINT" != "x"; then
10853      AC_MSG_WARN([ignoring LINT environment variable since --with-lint=no was specified])
10854   fi
10855else
10856   AC_MSG_ERROR([--with-lint expects 'yes' or 'no'. Use LINT variable to specify path.])
10857fi
10858
10859# User supplied flags override default flags
10860if test "x$LINT_FLAGS" != "x"; then
10861   lint_options=$LINT_FLAGS
10862fi
10863
10864AC_SUBST([LINT_FLAGS],[$lint_options])
10865AM_CONDITIONAL(LINT, [test "x$LINT" != x])
10866
10867]) # XORG_WITH_LINT
10868
10869# XORG_LINT_LIBRARY(LIBNAME)
10870# --------------------------
10871# Minimum version: 1.1.0
10872#
10873# Sets up flags for building lint libraries for checking programs that call
10874# functions in the library.
10875#
10876# Interface to module:
10877# LINTLIB		- Automake variable with the name of lint library file to make
10878# MAKE_LINT_LIB		- Automake conditional
10879#
10880# --enable-lint-library:  - 'yes' user instructs the module to created a lint library
10881#			  - 'no' user instructs the module not to create a lint library (default)
10882
10883AC_DEFUN([XORG_LINT_LIBRARY],[
10884AC_REQUIRE([XORG_WITH_LINT])
10885AC_ARG_ENABLE(lint-library, [AS_HELP_STRING([--enable-lint-library],
10886	[Create lint library (default: disabled)])],
10887	[make_lint_lib=$enableval], [make_lint_lib=no])
10888
10889if test "x$make_lint_lib" = x"yes" ; then
10890   LINTLIB=llib-l$1.ln
10891   if test "x$LINT" = "x"; then
10892        AC_MSG_ERROR([Cannot make lint library without --with-lint])
10893   fi
10894elif test "x$make_lint_lib" != x"no" ; then
10895   AC_MSG_ERROR([--enable-lint-library expects 'yes' or 'no'.])
10896fi
10897
10898AC_SUBST(LINTLIB)
10899AM_CONDITIONAL(MAKE_LINT_LIB, [test x$make_lint_lib != xno])
10900
10901]) # XORG_LINT_LIBRARY
10902
10903# XORG_COMPILER_BRAND
10904# -------------------
10905# Minimum version: 1.14.0
10906#
10907# Checks for various brands of compilers and sets flags as appropriate:
10908#   GNU gcc - relies on AC_PROG_CC (via AC_PROG_CC_C99) to set GCC to "yes"
10909#   clang compiler - sets CLANGCC to "yes"
10910#   Intel compiler - sets INTELCC to "yes"
10911#   Sun/Oracle Solaris Studio cc - sets SUNCC to "yes"
10912#
10913AC_DEFUN([XORG_COMPILER_BRAND], [
10914AC_REQUIRE([AC_PROG_CC_C99])
10915AC_CHECK_DECL([__clang__], [CLANGCC="yes"], [CLANGCC="no"])
10916AC_CHECK_DECL([__INTEL_COMPILER], [INTELCC="yes"], [INTELCC="no"])
10917AC_CHECK_DECL([__SUNPRO_C], [SUNCC="yes"], [SUNCC="no"])
10918]) # XORG_COMPILER_BRAND
10919
10920# XORG_CWARNFLAGS
10921# ---------------
10922# Minimum version: 1.2.0
10923#
10924# Defines CWARNFLAGS to enable C compiler warnings.
10925#
10926AC_DEFUN([XORG_CWARNFLAGS], [
10927AC_REQUIRE([AC_PROG_CC_C99])
10928AC_REQUIRE([XORG_COMPILER_BRAND])
10929if  test "x$GCC" = xyes ; then
10930    CWARNFLAGS="-Wall -Wpointer-arith -Wstrict-prototypes -Wmissing-prototypes \
10931-Wmissing-declarations -Wnested-externs -fno-strict-aliasing \
10932-Wbad-function-cast -Wformat=2"
10933    case `$CC -dumpversion` in
10934    3.4.* | 4.*)
10935	CWARNFLAGS="$CWARNFLAGS -Wold-style-definition -Wdeclaration-after-statement"
10936	;;
10937    esac
10938else
10939    if test "x$SUNCC" = "xyes"; then
10940	CWARNFLAGS="-v"
10941    fi
10942fi
10943AC_SUBST(CWARNFLAGS)
10944]) # XORG_CWARNFLAGS
10945
10946# XORG_STRICT_OPTION
10947# -----------------------
10948# Minimum version: 1.3.0
10949#
10950# Add configure option to enable strict compilation flags, such as treating
10951# warnings as fatal errors.
10952# If --enable-strict-compilation is passed to configure, adds strict flags to
10953# $CWARNFLAGS.
10954#
10955# Starting in 1.14.0 also exports $STRICT_CFLAGS for use in other tests or
10956# when strict compilation is unconditionally desired.
10957AC_DEFUN([XORG_STRICT_OPTION], [
10958# If the module's configure.ac calls AC_PROG_CC later on, CC gets set to C89
10959AC_REQUIRE([AC_PROG_CC_C99])
10960AC_REQUIRE([XORG_COMPILER_BRAND])
10961AC_REQUIRE([XORG_CWARNFLAGS])
10962
10963AC_ARG_ENABLE(strict-compilation,
10964			  AS_HELP_STRING([--enable-strict-compilation],
10965			  [Enable all warnings from compiler and make them errors (default: disabled)]),
10966			  [STRICT_COMPILE=$enableval], [STRICT_COMPILE=no])
10967if test "x$GCC" = xyes ; then
10968    STRICT_CFLAGS="-pedantic -Werror"
10969    # Add -Werror=attributes if supported (gcc 4.2 & later)
10970    AC_MSG_CHECKING([if $CC supports -Werror=attributes])
10971    save_CFLAGS="$CFLAGS"
10972    CFLAGS="$CFLAGS $STRICT_CFLAGS -Werror=attributes"
10973    AC_COMPILE_IFELSE([AC_LANG_SOURCE([return 0;])],
10974		      [STRICT_CFLAGS="$STRICT_CFLAGS -Werror=attributes"
10975		       AC_MSG_RESULT([yes])],
10976		      [AC_MSG_RESULT([no])])
10977    CFLAGS="$save_CFLAGS"
10978elif test "x$SUNCC" = "xyes"; then
10979    STRICT_CFLAGS="-errwarn"
10980elif test "x$INTELCC" = "xyes"; then
10981    STRICT_CFLAGS="-Werror"
10982fi
10983if test "x$STRICT_COMPILE" = "xyes"; then
10984    CWARNFLAGS="$CWARNFLAGS $STRICT_CFLAGS"
10985fi
10986AC_SUBST([STRICT_CFLAGS])
10987AC_SUBST([CWARNFLAGS])
10988]) # XORG_STRICT_OPTION
10989
10990# XORG_DEFAULT_OPTIONS
10991# --------------------
10992# Minimum version: 1.3.0
10993#
10994# Defines default options for X.Org modules.
10995#
10996AC_DEFUN([XORG_DEFAULT_OPTIONS], [
10997AC_REQUIRE([AC_PROG_INSTALL])
10998XORG_CWARNFLAGS
10999XORG_STRICT_OPTION
11000XORG_RELEASE_VERSION
11001XORG_CHANGELOG
11002XORG_INSTALL
11003XORG_MANPAGE_SECTIONS
11004m4_ifdef([AM_SILENT_RULES], [AM_SILENT_RULES([yes])],
11005    [AC_SUBST([AM_DEFAULT_VERBOSITY], [1])])
11006]) # XORG_DEFAULT_OPTIONS
11007
11008# XORG_INSTALL()
11009# ----------------
11010# Minimum version: 1.4.0
11011#
11012# Defines the variable INSTALL_CMD as the command to copy
11013# INSTALL from $prefix/share/util-macros.
11014#
11015AC_DEFUN([XORG_INSTALL], [
11016AC_REQUIRE([PKG_PROG_PKG_CONFIG])
11017macros_datadir=`$PKG_CONFIG --print-errors --variable=pkgdatadir xorg-macros`
11018INSTALL_CMD="(cp -f "$macros_datadir/INSTALL" \$(top_srcdir)/.INSTALL.tmp && \
11019mv \$(top_srcdir)/.INSTALL.tmp \$(top_srcdir)/INSTALL) \
11020|| (rm -f \$(top_srcdir)/.INSTALL.tmp; touch \$(top_srcdir)/INSTALL; \
11021echo 'util-macros \"pkgdatadir\" from xorg-macros.pc not found: installing possibly empty INSTALL.' >&2)"
11022AC_SUBST([INSTALL_CMD])
11023]) # XORG_INSTALL
11024dnl Copyright 2005 Red Hat, Inc
11025dnl
11026dnl Permission to use, copy, modify, distribute, and sell this software and its
11027dnl documentation for any purpose is hereby granted without fee, provided that
11028dnl the above copyright notice appear in all copies and that both that
11029dnl copyright notice and this permission notice appear in supporting
11030dnl documentation.
11031dnl
11032dnl The above copyright notice and this permission notice shall be included
11033dnl in all copies or substantial portions of the Software.
11034dnl
11035dnl THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS
11036dnl OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
11037dnl MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.
11038dnl IN NO EVENT SHALL THE OPEN GROUP BE LIABLE FOR ANY CLAIM, DAMAGES OR
11039dnl OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE,
11040dnl ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR
11041dnl OTHER DEALINGS IN THE SOFTWARE.
11042dnl
11043dnl Except as contained in this notice, the name of the copyright holders shall
11044dnl not be used in advertising or otherwise to promote the sale, use or
11045dnl other dealings in this Software without prior written authorization
11046dnl from the copyright holders.
11047dnl
11048
11049# XORG_RELEASE_VERSION
11050# --------------------
11051# Defines PACKAGE_VERSION_{MAJOR,MINOR,PATCHLEVEL} for modules to use.
11052 
11053AC_DEFUN([XORG_RELEASE_VERSION],[
11054	AC_DEFINE_UNQUOTED([PACKAGE_VERSION_MAJOR],
11055		[`echo $PACKAGE_VERSION | cut -d . -f 1`],
11056		[Major version of this package])
11057	PVM=`echo $PACKAGE_VERSION | cut -d . -f 2 | cut -d - -f 1`
11058	if test "x$PVM" = "x"; then
11059		PVM="0"
11060	fi
11061	AC_DEFINE_UNQUOTED([PACKAGE_VERSION_MINOR],
11062		[$PVM],
11063		[Minor version of this package])
11064	PVP=`echo $PACKAGE_VERSION | cut -d . -f 3 | cut -d - -f 1`
11065	if test "x$PVP" = "x"; then
11066		PVP="0"
11067	fi
11068	AC_DEFINE_UNQUOTED([PACKAGE_VERSION_PATCHLEVEL],
11069		[$PVP],
11070		[Patch version of this package])
11071])
11072
11073# XORG_CHANGELOG()
11074# ----------------
11075# Minimum version: 1.2.0
11076#
11077# Defines the variable CHANGELOG_CMD as the command to generate
11078# ChangeLog from git.
11079#
11080#
11081AC_DEFUN([XORG_CHANGELOG], [
11082CHANGELOG_CMD="(GIT_DIR=\$(top_srcdir)/.git git log > \$(top_srcdir)/.changelog.tmp && \
11083mv \$(top_srcdir)/.changelog.tmp \$(top_srcdir)/ChangeLog) \
11084|| (rm -f \$(top_srcdir)/.changelog.tmp; touch \$(top_srcdir)/ChangeLog; \
11085echo 'git directory not found: installing possibly empty changelog.' >&2)"
11086AC_SUBST([CHANGELOG_CMD])
11087]) # XORG_CHANGELOG
11088
11089dnl Copyright 2005 Red Hat, Inc
11090dnl 
11091dnl Permission to use, copy, modify, distribute, and sell this software and its
11092dnl documentation for any purpose is hereby granted without fee, provided that
11093dnl the above copyright notice appear in all copies and that both that
11094dnl copyright notice and this permission notice appear in supporting
11095dnl documentation.
11096dnl 
11097dnl The above copyright notice and this permission notice shall be included
11098dnl in all copies or substantial portions of the Software.
11099dnl 
11100dnl THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS
11101dnl OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
11102dnl MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.
11103dnl IN NO EVENT SHALL THE OPEN GROUP BE LIABLE FOR ANY CLAIM, DAMAGES OR
11104dnl OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE,
11105dnl ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR
11106dnl OTHER DEALINGS IN THE SOFTWARE.
11107dnl 
11108dnl Except as contained in this notice, the name of the copyright holders shall
11109dnl not be used in advertising or otherwise to promote the sale, use or
11110dnl other dealings in this Software without prior written authorization
11111dnl from the copyright holders.
11112dnl 
11113
11114# XORG_DRIVER_CHECK_EXT()
11115# --------------------------
11116# Checks for the $1 define in xorg-server.h (from the sdk).  If it
11117# is defined, then add $1 to $REQUIRED_MODULES.
11118
11119AC_DEFUN([XORG_DRIVER_CHECK_EXT],[
11120	AC_REQUIRE([PKG_PROG_PKG_CONFIG])
11121	SAVE_CFLAGS="$CFLAGS"
11122	CFLAGS="$CFLAGS -I`$PKG_CONFIG --variable=sdkdir xorg-server`"
11123	AC_COMPILE_IFELSE([AC_LANG_PROGRAM([[
11124#include "xorg-server.h"
11125#if !defined $1
11126#error $1 not defined
11127#endif
11128		]])],
11129		[_EXT_CHECK=yes],
11130		[_EXT_CHECK=no])
11131	CFLAGS="$SAVE_CFLAGS"
11132	AC_MSG_CHECKING([if $1 is defined])
11133	AC_MSG_RESULT([$_EXT_CHECK])
11134	if test "$_EXT_CHECK" != no; then
11135		REQUIRED_MODULES="$REQUIRED_MODULES $2"
11136	fi
11137])
11138
11139