1# generated automatically by aclocal 1.15 -*- Autoconf -*-
2
3# Copyright (C) 1996-2014 Free Software Foundation, Inc.
4
5# This file is free software; the Free Software Foundation
6# gives unlimited permission to copy and/or distribute it,
7# with or without modifications, as long as this notice is preserved.
8
9# This program is distributed in the hope that it will be useful,
10# but WITHOUT ANY WARRANTY, to the extent permitted by law; without
11# even the implied warranty of MERCHANTABILITY or FITNESS FOR A
12# PARTICULAR PURPOSE.
13
14m4_ifndef([AC_CONFIG_MACRO_DIRS], [m4_defun([_AM_CONFIG_MACRO_DIRS], [])m4_defun([AC_CONFIG_MACRO_DIRS], [_AM_CONFIG_MACRO_DIRS($@)])])
15m4_ifndef([AC_AUTOCONF_VERSION],
16  [m4_copy([m4_PACKAGE_VERSION], [AC_AUTOCONF_VERSION])])dnl
17m4_if(m4_defn([AC_AUTOCONF_VERSION]), [2.69],,
18[m4_warning([this file was generated for autoconf 2.69.
19You have another version of autoconf.  It may work, but is not guaranteed to.
20If you have problems, you may need to regenerate the build system entirely.
21To do so, use the procedure documented by the package, typically 'autoreconf'.])])
22
23# libtool.m4 - Configure libtool for the host system. -*-Autoconf-*-
24#
25#   Copyright (C) 1996-2001, 2003-2015 Free Software Foundation, Inc.
26#   Written by Gordon Matzigkeit, 1996
27#
28# This file is free software; the Free Software Foundation gives
29# unlimited permission to copy and/or distribute it, with or without
30# modifications, as long as this notice is preserved.
31
32m4_define([_LT_COPYING], [dnl
33# Copyright (C) 2014 Free Software Foundation, Inc.
34# This is free software; see the source for copying conditions.  There is NO
35# warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
36
37# GNU Libtool is free software; you can redistribute it and/or modify
38# it under the terms of the GNU General Public License as published by
39# the Free Software Foundation; either version 2 of of the License, or
40# (at your option) any later version.
41#
42# As a special exception to the GNU General Public License, if you
43# distribute this file as part of a program or library that is built
44# using GNU Libtool, you may include this file under the  same
45# distribution terms that you use for the rest of that program.
46#
47# GNU Libtool is distributed in the hope that it will be useful, but
48# WITHOUT ANY WARRANTY; without even the implied warranty of
49# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
50# GNU General Public License for more details.
51#
52# You should have received a copy of the GNU General Public License
53# along with this program.  If not, see <http://www.gnu.org/licenses/>.
54])
55
56# serial 58 LT_INIT
57
58
59# LT_PREREQ(VERSION)
60# ------------------
61# Complain and exit if this libtool version is less that VERSION.
62m4_defun([LT_PREREQ],
63[m4_if(m4_version_compare(m4_defn([LT_PACKAGE_VERSION]), [$1]), -1,
64       [m4_default([$3],
65		   [m4_fatal([Libtool version $1 or higher is required],
66		             63)])],
67       [$2])])
68
69
70# _LT_CHECK_BUILDDIR
71# ------------------
72# Complain if the absolute build directory name contains unusual characters
73m4_defun([_LT_CHECK_BUILDDIR],
74[case `pwd` in
75  *\ * | *\	*)
76    AC_MSG_WARN([Libtool does not cope well with whitespace in `pwd`]) ;;
77esac
78])
79
80
81# LT_INIT([OPTIONS])
82# ------------------
83AC_DEFUN([LT_INIT],
84[AC_PREREQ([2.62])dnl We use AC_PATH_PROGS_FEATURE_CHECK
85AC_REQUIRE([AC_CONFIG_AUX_DIR_DEFAULT])dnl
86AC_BEFORE([$0], [LT_LANG])dnl
87AC_BEFORE([$0], [LT_OUTPUT])dnl
88AC_BEFORE([$0], [LTDL_INIT])dnl
89m4_require([_LT_CHECK_BUILDDIR])dnl
90
91dnl Autoconf doesn't catch unexpanded LT_ macros by default:
92m4_pattern_forbid([^_?LT_[A-Z_]+$])dnl
93m4_pattern_allow([^(_LT_EOF|LT_DLGLOBAL|LT_DLLAZY_OR_NOW|LT_MULTI_MODULE)$])dnl
94dnl aclocal doesn't pull ltoptions.m4, ltsugar.m4, or ltversion.m4
95dnl unless we require an AC_DEFUNed macro:
96AC_REQUIRE([LTOPTIONS_VERSION])dnl
97AC_REQUIRE([LTSUGAR_VERSION])dnl
98AC_REQUIRE([LTVERSION_VERSION])dnl
99AC_REQUIRE([LTOBSOLETE_VERSION])dnl
100m4_require([_LT_PROG_LTMAIN])dnl
101
102_LT_SHELL_INIT([SHELL=${CONFIG_SHELL-/bin/sh}])
103
104dnl Parse OPTIONS
105_LT_SET_OPTIONS([$0], [$1])
106
107# This can be used to rebuild libtool when needed
108LIBTOOL_DEPS=$ltmain
109
110# Always use our own libtool.
111LIBTOOL='$(SHELL) $(top_builddir)/libtool'
112AC_SUBST(LIBTOOL)dnl
113
114_LT_SETUP
115
116# Only expand once:
117m4_define([LT_INIT])
118])# LT_INIT
119
120# Old names:
121AU_ALIAS([AC_PROG_LIBTOOL], [LT_INIT])
122AU_ALIAS([AM_PROG_LIBTOOL], [LT_INIT])
123dnl aclocal-1.4 backwards compatibility:
124dnl AC_DEFUN([AC_PROG_LIBTOOL], [])
125dnl AC_DEFUN([AM_PROG_LIBTOOL], [])
126
127
128# _LT_PREPARE_CC_BASENAME
129# -----------------------
130m4_defun([_LT_PREPARE_CC_BASENAME], [
131# Calculate cc_basename.  Skip known compiler wrappers and cross-prefix.
132func_cc_basename ()
133{
134    for cc_temp in @S|@*""; do
135      case $cc_temp in
136        compile | *[[\\/]]compile | ccache | *[[\\/]]ccache ) ;;
137        distcc | *[[\\/]]distcc | purify | *[[\\/]]purify ) ;;
138        \-*) ;;
139        *) break;;
140      esac
141    done
142    func_cc_basename_result=`$ECHO "$cc_temp" | $SED "s%.*/%%; s%^$host_alias-%%"`
143}
144])# _LT_PREPARE_CC_BASENAME
145
146
147# _LT_CC_BASENAME(CC)
148# -------------------
149# It would be clearer to call AC_REQUIREs from _LT_PREPARE_CC_BASENAME,
150# but that macro is also expanded into generated libtool script, which
151# arranges for $SED and $ECHO to be set by different means.
152m4_defun([_LT_CC_BASENAME],
153[m4_require([_LT_PREPARE_CC_BASENAME])dnl
154AC_REQUIRE([_LT_DECL_SED])dnl
155AC_REQUIRE([_LT_PROG_ECHO_BACKSLASH])dnl
156func_cc_basename $1
157cc_basename=$func_cc_basename_result
158])
159
160
161# _LT_FILEUTILS_DEFAULTS
162# ----------------------
163# It is okay to use these file commands and assume they have been set
164# sensibly after 'm4_require([_LT_FILEUTILS_DEFAULTS])'.
165m4_defun([_LT_FILEUTILS_DEFAULTS],
166[: ${CP="cp -f"}
167: ${MV="mv -f"}
168: ${RM="rm -f"}
169])# _LT_FILEUTILS_DEFAULTS
170
171
172# _LT_SETUP
173# ---------
174m4_defun([_LT_SETUP],
175[AC_REQUIRE([AC_CANONICAL_HOST])dnl
176AC_REQUIRE([AC_CANONICAL_BUILD])dnl
177AC_REQUIRE([_LT_PREPARE_SED_QUOTE_VARS])dnl
178AC_REQUIRE([_LT_PROG_ECHO_BACKSLASH])dnl
179
180_LT_DECL([], [PATH_SEPARATOR], [1], [The PATH separator for the build system])dnl
181dnl
182_LT_DECL([], [host_alias], [0], [The host system])dnl
183_LT_DECL([], [host], [0])dnl
184_LT_DECL([], [host_os], [0])dnl
185dnl
186_LT_DECL([], [build_alias], [0], [The build system])dnl
187_LT_DECL([], [build], [0])dnl
188_LT_DECL([], [build_os], [0])dnl
189dnl
190AC_REQUIRE([AC_PROG_CC])dnl
191AC_REQUIRE([LT_PATH_LD])dnl
192AC_REQUIRE([LT_PATH_NM])dnl
193dnl
194AC_REQUIRE([AC_PROG_LN_S])dnl
195test -z "$LN_S" && LN_S="ln -s"
196_LT_DECL([], [LN_S], [1], [Whether we need soft or hard links])dnl
197dnl
198AC_REQUIRE([LT_CMD_MAX_LEN])dnl
199_LT_DECL([objext], [ac_objext], [0], [Object file suffix (normally "o")])dnl
200_LT_DECL([], [exeext], [0], [Executable file suffix (normally "")])dnl
201dnl
202m4_require([_LT_FILEUTILS_DEFAULTS])dnl
203m4_require([_LT_CHECK_SHELL_FEATURES])dnl
204m4_require([_LT_PATH_CONVERSION_FUNCTIONS])dnl
205m4_require([_LT_CMD_RELOAD])dnl
206m4_require([_LT_CHECK_MAGIC_METHOD])dnl
207m4_require([_LT_CHECK_SHAREDLIB_FROM_LINKLIB])dnl
208m4_require([_LT_CMD_OLD_ARCHIVE])dnl
209m4_require([_LT_CMD_GLOBAL_SYMBOLS])dnl
210m4_require([_LT_WITH_SYSROOT])dnl
211m4_require([_LT_CMD_TRUNCATE])dnl
212
213_LT_CONFIG_LIBTOOL_INIT([
214# See if we are running on zsh, and set the options that allow our
215# commands through without removal of \ escapes INIT.
216if test -n "\${ZSH_VERSION+set}"; then
217   setopt NO_GLOB_SUBST
218fi
219])
220if test -n "${ZSH_VERSION+set}"; then
221   setopt NO_GLOB_SUBST
222fi
223
224_LT_CHECK_OBJDIR
225
226m4_require([_LT_TAG_COMPILER])dnl
227
228case $host_os in
229aix3*)
230  # AIX sometimes has problems with the GCC collect2 program.  For some
231  # reason, if we set the COLLECT_NAMES environment variable, the problems
232  # vanish in a puff of smoke.
233  if test set != "${COLLECT_NAMES+set}"; then
234    COLLECT_NAMES=
235    export COLLECT_NAMES
236  fi
237  ;;
238esac
239
240# Global variables:
241ofile=libtool
242can_build_shared=yes
243
244# All known linkers require a '.a' archive for static linking (except MSVC,
245# which needs '.lib').
246libext=a
247
248with_gnu_ld=$lt_cv_prog_gnu_ld
249
250old_CC=$CC
251old_CFLAGS=$CFLAGS
252
253# Set sane defaults for various variables
254test -z "$CC" && CC=cc
255test -z "$LTCC" && LTCC=$CC
256test -z "$LTCFLAGS" && LTCFLAGS=$CFLAGS
257test -z "$LD" && LD=ld
258test -z "$ac_objext" && ac_objext=o
259
260_LT_CC_BASENAME([$compiler])
261
262# Only perform the check for file, if the check method requires it
263test -z "$MAGIC_CMD" && MAGIC_CMD=file
264case $deplibs_check_method in
265file_magic*)
266  if test "$file_magic_cmd" = '$MAGIC_CMD'; then
267    _LT_PATH_MAGIC
268  fi
269  ;;
270esac
271
272# Use C for the default configuration in the libtool script
273LT_SUPPORTED_TAG([CC])
274_LT_LANG_C_CONFIG
275_LT_LANG_DEFAULT_CONFIG
276_LT_CONFIG_COMMANDS
277])# _LT_SETUP
278
279
280# _LT_PREPARE_SED_QUOTE_VARS
281# --------------------------
282# Define a few sed substitution that help us do robust quoting.
283m4_defun([_LT_PREPARE_SED_QUOTE_VARS],
284[# Backslashify metacharacters that are still active within
285# double-quoted strings.
286sed_quote_subst='s/\([["`$\\]]\)/\\\1/g'
287
288# Same as above, but do not quote variable references.
289double_quote_subst='s/\([["`\\]]\)/\\\1/g'
290
291# Sed substitution to delay expansion of an escaped shell variable in a
292# double_quote_subst'ed string.
293delay_variable_subst='s/\\\\\\\\\\\$/\\\\\\$/g'
294
295# Sed substitution to delay expansion of an escaped single quote.
296delay_single_quote_subst='s/'\''/'\'\\\\\\\'\''/g'
297
298# Sed substitution to avoid accidental globbing in evaled expressions
299no_glob_subst='s/\*/\\\*/g'
300])
301
302# _LT_PROG_LTMAIN
303# ---------------
304# Note that this code is called both from 'configure', and 'config.status'
305# now that we use AC_CONFIG_COMMANDS to generate libtool.  Notably,
306# 'config.status' has no value for ac_aux_dir unless we are using Automake,
307# so we pass a copy along to make sure it has a sensible value anyway.
308m4_defun([_LT_PROG_LTMAIN],
309[m4_ifdef([AC_REQUIRE_AUX_FILE], [AC_REQUIRE_AUX_FILE([ltmain.sh])])dnl
310_LT_CONFIG_LIBTOOL_INIT([ac_aux_dir='$ac_aux_dir'])
311ltmain=$ac_aux_dir/ltmain.sh
312])# _LT_PROG_LTMAIN
313
314
315
316# So that we can recreate a full libtool script including additional
317# tags, we accumulate the chunks of code to send to AC_CONFIG_COMMANDS
318# in macros and then make a single call at the end using the 'libtool'
319# label.
320
321
322# _LT_CONFIG_LIBTOOL_INIT([INIT-COMMANDS])
323# ----------------------------------------
324# Register INIT-COMMANDS to be passed to AC_CONFIG_COMMANDS later.
325m4_define([_LT_CONFIG_LIBTOOL_INIT],
326[m4_ifval([$1],
327          [m4_append([_LT_OUTPUT_LIBTOOL_INIT],
328                     [$1
329])])])
330
331# Initialize.
332m4_define([_LT_OUTPUT_LIBTOOL_INIT])
333
334
335# _LT_CONFIG_LIBTOOL([COMMANDS])
336# ------------------------------
337# Register COMMANDS to be passed to AC_CONFIG_COMMANDS later.
338m4_define([_LT_CONFIG_LIBTOOL],
339[m4_ifval([$1],
340          [m4_append([_LT_OUTPUT_LIBTOOL_COMMANDS],
341                     [$1
342])])])
343
344# Initialize.
345m4_define([_LT_OUTPUT_LIBTOOL_COMMANDS])
346
347
348# _LT_CONFIG_SAVE_COMMANDS([COMMANDS], [INIT_COMMANDS])
349# -----------------------------------------------------
350m4_defun([_LT_CONFIG_SAVE_COMMANDS],
351[_LT_CONFIG_LIBTOOL([$1])
352_LT_CONFIG_LIBTOOL_INIT([$2])
353])
354
355
356# _LT_FORMAT_COMMENT([COMMENT])
357# -----------------------------
358# Add leading comment marks to the start of each line, and a trailing
359# full-stop to the whole comment if one is not present already.
360m4_define([_LT_FORMAT_COMMENT],
361[m4_ifval([$1], [
362m4_bpatsubst([m4_bpatsubst([$1], [^ *], [# ])],
363              [['`$\]], [\\\&])]m4_bmatch([$1], [[!?.]$], [], [.])
364)])
365
366
367
368
369
370# _LT_DECL([CONFIGNAME], VARNAME, VALUE, [DESCRIPTION], [IS-TAGGED?])
371# -------------------------------------------------------------------
372# CONFIGNAME is the name given to the value in the libtool script.
373# VARNAME is the (base) name used in the configure script.
374# VALUE may be 0, 1 or 2 for a computed quote escaped value based on
375# VARNAME.  Any other value will be used directly.
376m4_define([_LT_DECL],
377[lt_if_append_uniq([lt_decl_varnames], [$2], [, ],
378    [lt_dict_add_subkey([lt_decl_dict], [$2], [libtool_name],
379	[m4_ifval([$1], [$1], [$2])])
380    lt_dict_add_subkey([lt_decl_dict], [$2], [value], [$3])
381    m4_ifval([$4],
382	[lt_dict_add_subkey([lt_decl_dict], [$2], [description], [$4])])
383    lt_dict_add_subkey([lt_decl_dict], [$2],
384	[tagged?], [m4_ifval([$5], [yes], [no])])])
385])
386
387
388# _LT_TAGDECL([CONFIGNAME], VARNAME, VALUE, [DESCRIPTION])
389# --------------------------------------------------------
390m4_define([_LT_TAGDECL], [_LT_DECL([$1], [$2], [$3], [$4], [yes])])
391
392
393# lt_decl_tag_varnames([SEPARATOR], [VARNAME1...])
394# ------------------------------------------------
395m4_define([lt_decl_tag_varnames],
396[_lt_decl_filter([tagged?], [yes], $@)])
397
398
399# _lt_decl_filter(SUBKEY, VALUE, [SEPARATOR], [VARNAME1..])
400# ---------------------------------------------------------
401m4_define([_lt_decl_filter],
402[m4_case([$#],
403  [0], [m4_fatal([$0: too few arguments: $#])],
404  [1], [m4_fatal([$0: too few arguments: $#: $1])],
405  [2], [lt_dict_filter([lt_decl_dict], [$1], [$2], [], lt_decl_varnames)],
406  [3], [lt_dict_filter([lt_decl_dict], [$1], [$2], [$3], lt_decl_varnames)],
407  [lt_dict_filter([lt_decl_dict], $@)])[]dnl
408])
409
410
411# lt_decl_quote_varnames([SEPARATOR], [VARNAME1...])
412# --------------------------------------------------
413m4_define([lt_decl_quote_varnames],
414[_lt_decl_filter([value], [1], $@)])
415
416
417# lt_decl_dquote_varnames([SEPARATOR], [VARNAME1...])
418# ---------------------------------------------------
419m4_define([lt_decl_dquote_varnames],
420[_lt_decl_filter([value], [2], $@)])
421
422
423# lt_decl_varnames_tagged([SEPARATOR], [VARNAME1...])
424# ---------------------------------------------------
425m4_define([lt_decl_varnames_tagged],
426[m4_assert([$# <= 2])dnl
427_$0(m4_quote(m4_default([$1], [[, ]])),
428    m4_ifval([$2], [[$2]], [m4_dquote(lt_decl_tag_varnames)]),
429    m4_split(m4_normalize(m4_quote(_LT_TAGS)), [ ]))])
430m4_define([_lt_decl_varnames_tagged],
431[m4_ifval([$3], [lt_combine([$1], [$2], [_], $3)])])
432
433
434# lt_decl_all_varnames([SEPARATOR], [VARNAME1...])
435# ------------------------------------------------
436m4_define([lt_decl_all_varnames],
437[_$0(m4_quote(m4_default([$1], [[, ]])),
438     m4_if([$2], [],
439	   m4_quote(lt_decl_varnames),
440	m4_quote(m4_shift($@))))[]dnl
441])
442m4_define([_lt_decl_all_varnames],
443[lt_join($@, lt_decl_varnames_tagged([$1],
444			lt_decl_tag_varnames([[, ]], m4_shift($@))))dnl
445])
446
447
448# _LT_CONFIG_STATUS_DECLARE([VARNAME])
449# ------------------------------------
450# Quote a variable value, and forward it to 'config.status' so that its
451# declaration there will have the same value as in 'configure'.  VARNAME
452# must have a single quote delimited value for this to work.
453m4_define([_LT_CONFIG_STATUS_DECLARE],
454[$1='`$ECHO "$][$1" | $SED "$delay_single_quote_subst"`'])
455
456
457# _LT_CONFIG_STATUS_DECLARATIONS
458# ------------------------------
459# We delimit libtool config variables with single quotes, so when
460# we write them to config.status, we have to be sure to quote all
461# embedded single quotes properly.  In configure, this macro expands
462# each variable declared with _LT_DECL (and _LT_TAGDECL) into:
463#
464#    <var>='`$ECHO "$<var>" | $SED "$delay_single_quote_subst"`'
465m4_defun([_LT_CONFIG_STATUS_DECLARATIONS],
466[m4_foreach([_lt_var], m4_quote(lt_decl_all_varnames),
467    [m4_n([_LT_CONFIG_STATUS_DECLARE(_lt_var)])])])
468
469
470# _LT_LIBTOOL_TAGS
471# ----------------
472# Output comment and list of tags supported by the script
473m4_defun([_LT_LIBTOOL_TAGS],
474[_LT_FORMAT_COMMENT([The names of the tagged configurations supported by this script])dnl
475available_tags='_LT_TAGS'dnl
476])
477
478
479# _LT_LIBTOOL_DECLARE(VARNAME, [TAG])
480# -----------------------------------
481# Extract the dictionary values for VARNAME (optionally with TAG) and
482# expand to a commented shell variable setting:
483#
484#    # Some comment about what VAR is for.
485#    visible_name=$lt_internal_name
486m4_define([_LT_LIBTOOL_DECLARE],
487[_LT_FORMAT_COMMENT(m4_quote(lt_dict_fetch([lt_decl_dict], [$1],
488					   [description])))[]dnl
489m4_pushdef([_libtool_name],
490    m4_quote(lt_dict_fetch([lt_decl_dict], [$1], [libtool_name])))[]dnl
491m4_case(m4_quote(lt_dict_fetch([lt_decl_dict], [$1], [value])),
492    [0], [_libtool_name=[$]$1],
493    [1], [_libtool_name=$lt_[]$1],
494    [2], [_libtool_name=$lt_[]$1],
495    [_libtool_name=lt_dict_fetch([lt_decl_dict], [$1], [value])])[]dnl
496m4_ifval([$2], [_$2])[]m4_popdef([_libtool_name])[]dnl
497])
498
499
500# _LT_LIBTOOL_CONFIG_VARS
501# -----------------------
502# Produce commented declarations of non-tagged libtool config variables
503# suitable for insertion in the LIBTOOL CONFIG section of the 'libtool'
504# script.  Tagged libtool config variables (even for the LIBTOOL CONFIG
505# section) are produced by _LT_LIBTOOL_TAG_VARS.
506m4_defun([_LT_LIBTOOL_CONFIG_VARS],
507[m4_foreach([_lt_var],
508    m4_quote(_lt_decl_filter([tagged?], [no], [], lt_decl_varnames)),
509    [m4_n([_LT_LIBTOOL_DECLARE(_lt_var)])])])
510
511
512# _LT_LIBTOOL_TAG_VARS(TAG)
513# -------------------------
514m4_define([_LT_LIBTOOL_TAG_VARS],
515[m4_foreach([_lt_var], m4_quote(lt_decl_tag_varnames),
516    [m4_n([_LT_LIBTOOL_DECLARE(_lt_var, [$1])])])])
517
518
519# _LT_TAGVAR(VARNAME, [TAGNAME])
520# ------------------------------
521m4_define([_LT_TAGVAR], [m4_ifval([$2], [$1_$2], [$1])])
522
523
524# _LT_CONFIG_COMMANDS
525# -------------------
526# Send accumulated output to $CONFIG_STATUS.  Thanks to the lists of
527# variables for single and double quote escaping we saved from calls
528# to _LT_DECL, we can put quote escaped variables declarations
529# into 'config.status', and then the shell code to quote escape them in
530# for loops in 'config.status'.  Finally, any additional code accumulated
531# from calls to _LT_CONFIG_LIBTOOL_INIT is expanded.
532m4_defun([_LT_CONFIG_COMMANDS],
533[AC_PROVIDE_IFELSE([LT_OUTPUT],
534	dnl If the libtool generation code has been placed in $CONFIG_LT,
535	dnl instead of duplicating it all over again into config.status,
536	dnl then we will have config.status run $CONFIG_LT later, so it
537	dnl needs to know what name is stored there:
538        [AC_CONFIG_COMMANDS([libtool],
539            [$SHELL $CONFIG_LT || AS_EXIT(1)], [CONFIG_LT='$CONFIG_LT'])],
540    dnl If the libtool generation code is destined for config.status,
541    dnl expand the accumulated commands and init code now:
542    [AC_CONFIG_COMMANDS([libtool],
543        [_LT_OUTPUT_LIBTOOL_COMMANDS], [_LT_OUTPUT_LIBTOOL_COMMANDS_INIT])])
544])#_LT_CONFIG_COMMANDS
545
546
547# Initialize.
548m4_define([_LT_OUTPUT_LIBTOOL_COMMANDS_INIT],
549[
550
551# The HP-UX ksh and POSIX shell print the target directory to stdout
552# if CDPATH is set.
553(unset CDPATH) >/dev/null 2>&1 && unset CDPATH
554
555sed_quote_subst='$sed_quote_subst'
556double_quote_subst='$double_quote_subst'
557delay_variable_subst='$delay_variable_subst'
558_LT_CONFIG_STATUS_DECLARATIONS
559LTCC='$LTCC'
560LTCFLAGS='$LTCFLAGS'
561compiler='$compiler_DEFAULT'
562
563# A function that is used when there is no print builtin or printf.
564func_fallback_echo ()
565{
566  eval 'cat <<_LTECHO_EOF
567\$[]1
568_LTECHO_EOF'
569}
570
571# Quote evaled strings.
572for var in lt_decl_all_varnames([[ \
573]], lt_decl_quote_varnames); do
574    case \`eval \\\\\$ECHO \\\\""\\\\\$\$var"\\\\"\` in
575    *[[\\\\\\\`\\"\\\$]]*)
576      eval "lt_\$var=\\\\\\"\\\`\\\$ECHO \\"\\\$\$var\\" | \\\$SED \\"\\\$sed_quote_subst\\"\\\`\\\\\\"" ## exclude from sc_prohibit_nested_quotes
577      ;;
578    *)
579      eval "lt_\$var=\\\\\\"\\\$\$var\\\\\\""
580      ;;
581    esac
582done
583
584# Double-quote double-evaled strings.
585for var in lt_decl_all_varnames([[ \
586]], lt_decl_dquote_varnames); do
587    case \`eval \\\\\$ECHO \\\\""\\\\\$\$var"\\\\"\` in
588    *[[\\\\\\\`\\"\\\$]]*)
589      eval "lt_\$var=\\\\\\"\\\`\\\$ECHO \\"\\\$\$var\\" | \\\$SED -e \\"\\\$double_quote_subst\\" -e \\"\\\$sed_quote_subst\\" -e \\"\\\$delay_variable_subst\\"\\\`\\\\\\"" ## exclude from sc_prohibit_nested_quotes
590      ;;
591    *)
592      eval "lt_\$var=\\\\\\"\\\$\$var\\\\\\""
593      ;;
594    esac
595done
596
597_LT_OUTPUT_LIBTOOL_INIT
598])
599
600# _LT_GENERATED_FILE_INIT(FILE, [COMMENT])
601# ------------------------------------
602# Generate a child script FILE with all initialization necessary to
603# reuse the environment learned by the parent script, and make the
604# file executable.  If COMMENT is supplied, it is inserted after the
605# '#!' sequence but before initialization text begins.  After this
606# macro, additional text can be appended to FILE to form the body of
607# the child script.  The macro ends with non-zero status if the
608# file could not be fully written (such as if the disk is full).
609m4_ifdef([AS_INIT_GENERATED],
610[m4_defun([_LT_GENERATED_FILE_INIT],[AS_INIT_GENERATED($@)])],
611[m4_defun([_LT_GENERATED_FILE_INIT],
612[m4_require([AS_PREPARE])]dnl
613[m4_pushdef([AS_MESSAGE_LOG_FD])]dnl
614[lt_write_fail=0
615cat >$1 <<_ASEOF || lt_write_fail=1
616#! $SHELL
617# Generated by $as_me.
618$2
619SHELL=\${CONFIG_SHELL-$SHELL}
620export SHELL
621_ASEOF
622cat >>$1 <<\_ASEOF || lt_write_fail=1
623AS_SHELL_SANITIZE
624_AS_PREPARE
625exec AS_MESSAGE_FD>&1
626_ASEOF
627test 0 = "$lt_write_fail" && chmod +x $1[]dnl
628m4_popdef([AS_MESSAGE_LOG_FD])])])# _LT_GENERATED_FILE_INIT
629
630# LT_OUTPUT
631# ---------
632# This macro allows early generation of the libtool script (before
633# AC_OUTPUT is called), incase it is used in configure for compilation
634# tests.
635AC_DEFUN([LT_OUTPUT],
636[: ${CONFIG_LT=./config.lt}
637AC_MSG_NOTICE([creating $CONFIG_LT])
638_LT_GENERATED_FILE_INIT(["$CONFIG_LT"],
639[# Run this file to recreate a libtool stub with the current configuration.])
640
641cat >>"$CONFIG_LT" <<\_LTEOF
642lt_cl_silent=false
643exec AS_MESSAGE_LOG_FD>>config.log
644{
645  echo
646  AS_BOX([Running $as_me.])
647} >&AS_MESSAGE_LOG_FD
648
649lt_cl_help="\
650'$as_me' creates a local libtool stub from the current configuration,
651for use in further configure time tests before the real libtool is
652generated.
653
654Usage: $[0] [[OPTIONS]]
655
656  -h, --help      print this help, then exit
657  -V, --version   print version number, then exit
658  -q, --quiet     do not print progress messages
659  -d, --debug     don't remove temporary files
660
661Report bugs to <bug-libtool@gnu.org>."
662
663lt_cl_version="\
664m4_ifset([AC_PACKAGE_NAME], [AC_PACKAGE_NAME ])config.lt[]dnl
665m4_ifset([AC_PACKAGE_VERSION], [ AC_PACKAGE_VERSION])
666configured by $[0], generated by m4_PACKAGE_STRING.
667
668Copyright (C) 2011 Free Software Foundation, Inc.
669This config.lt script is free software; the Free Software Foundation
670gives unlimited permision to copy, distribute and modify it."
671
672while test 0 != $[#]
673do
674  case $[1] in
675    --version | --v* | -V )
676      echo "$lt_cl_version"; exit 0 ;;
677    --help | --h* | -h )
678      echo "$lt_cl_help"; exit 0 ;;
679    --debug | --d* | -d )
680      debug=: ;;
681    --quiet | --q* | --silent | --s* | -q )
682      lt_cl_silent=: ;;
683
684    -*) AC_MSG_ERROR([unrecognized option: $[1]
685Try '$[0] --help' for more information.]) ;;
686
687    *) AC_MSG_ERROR([unrecognized argument: $[1]
688Try '$[0] --help' for more information.]) ;;
689  esac
690  shift
691done
692
693if $lt_cl_silent; then
694  exec AS_MESSAGE_FD>/dev/null
695fi
696_LTEOF
697
698cat >>"$CONFIG_LT" <<_LTEOF
699_LT_OUTPUT_LIBTOOL_COMMANDS_INIT
700_LTEOF
701
702cat >>"$CONFIG_LT" <<\_LTEOF
703AC_MSG_NOTICE([creating $ofile])
704_LT_OUTPUT_LIBTOOL_COMMANDS
705AS_EXIT(0)
706_LTEOF
707chmod +x "$CONFIG_LT"
708
709# configure is writing to config.log, but config.lt does its own redirection,
710# appending to config.log, which fails on DOS, as config.log is still kept
711# open by configure.  Here we exec the FD to /dev/null, effectively closing
712# config.log, so it can be properly (re)opened and appended to by config.lt.
713lt_cl_success=:
714test yes = "$silent" &&
715  lt_config_lt_args="$lt_config_lt_args --quiet"
716exec AS_MESSAGE_LOG_FD>/dev/null
717$SHELL "$CONFIG_LT" $lt_config_lt_args || lt_cl_success=false
718exec AS_MESSAGE_LOG_FD>>config.log
719$lt_cl_success || AS_EXIT(1)
720])# LT_OUTPUT
721
722
723# _LT_CONFIG(TAG)
724# ---------------
725# If TAG is the built-in tag, create an initial libtool script with a
726# default configuration from the untagged config vars.  Otherwise add code
727# to config.status for appending the configuration named by TAG from the
728# matching tagged config vars.
729m4_defun([_LT_CONFIG],
730[m4_require([_LT_FILEUTILS_DEFAULTS])dnl
731_LT_CONFIG_SAVE_COMMANDS([
732  m4_define([_LT_TAG], m4_if([$1], [], [C], [$1]))dnl
733  m4_if(_LT_TAG, [C], [
734    # See if we are running on zsh, and set the options that allow our
735    # commands through without removal of \ escapes.
736    if test -n "${ZSH_VERSION+set}"; then
737      setopt NO_GLOB_SUBST
738    fi
739
740    cfgfile=${ofile}T
741    trap "$RM \"$cfgfile\"; exit 1" 1 2 15
742    $RM "$cfgfile"
743
744    cat <<_LT_EOF >> "$cfgfile"
745#! $SHELL
746# Generated automatically by $as_me ($PACKAGE) $VERSION
747# Libtool was configured on host `(hostname || uname -n) 2>/dev/null | sed 1q`:
748# NOTE: Changes made to this file will be lost: look at ltmain.sh.
749
750# Provide generalized library-building support services.
751# Written by Gordon Matzigkeit, 1996
752
753_LT_COPYING
754_LT_LIBTOOL_TAGS
755
756# Configured defaults for sys_lib_dlsearch_path munging.
757: \${LT_SYS_LIBRARY_PATH="$configure_time_lt_sys_library_path"}
758
759# ### BEGIN LIBTOOL CONFIG
760_LT_LIBTOOL_CONFIG_VARS
761_LT_LIBTOOL_TAG_VARS
762# ### END LIBTOOL CONFIG
763
764_LT_EOF
765
766    cat <<'_LT_EOF' >> "$cfgfile"
767
768# ### BEGIN FUNCTIONS SHARED WITH CONFIGURE
769
770_LT_PREPARE_MUNGE_PATH_LIST
771_LT_PREPARE_CC_BASENAME
772
773# ### END FUNCTIONS SHARED WITH CONFIGURE
774
775_LT_EOF
776
777  case $host_os in
778  aix3*)
779    cat <<\_LT_EOF >> "$cfgfile"
780# AIX sometimes has problems with the GCC collect2 program.  For some
781# reason, if we set the COLLECT_NAMES environment variable, the problems
782# vanish in a puff of smoke.
783if test set != "${COLLECT_NAMES+set}"; then
784  COLLECT_NAMES=
785  export COLLECT_NAMES
786fi
787_LT_EOF
788    ;;
789  esac
790
791  _LT_PROG_LTMAIN
792
793  # We use sed instead of cat because bash on DJGPP gets confused if
794  # if finds mixed CR/LF and LF-only lines.  Since sed operates in
795  # text mode, it properly converts lines to CR/LF.  This bash problem
796  # is reportedly fixed, but why not run on old versions too?
797  sed '$q' "$ltmain" >> "$cfgfile" \
798     || (rm -f "$cfgfile"; exit 1)
799
800   mv -f "$cfgfile" "$ofile" ||
801    (rm -f "$ofile" && cp "$cfgfile" "$ofile" && rm -f "$cfgfile")
802  chmod +x "$ofile"
803],
804[cat <<_LT_EOF >> "$ofile"
805
806dnl Unfortunately we have to use $1 here, since _LT_TAG is not expanded
807dnl in a comment (ie after a #).
808# ### BEGIN LIBTOOL TAG CONFIG: $1
809_LT_LIBTOOL_TAG_VARS(_LT_TAG)
810# ### END LIBTOOL TAG CONFIG: $1
811_LT_EOF
812])dnl /m4_if
813],
814[m4_if([$1], [], [
815    PACKAGE='$PACKAGE'
816    VERSION='$VERSION'
817    RM='$RM'
818    ofile='$ofile'], [])
819])dnl /_LT_CONFIG_SAVE_COMMANDS
820])# _LT_CONFIG
821
822
823# LT_SUPPORTED_TAG(TAG)
824# ---------------------
825# Trace this macro to discover what tags are supported by the libtool
826# --tag option, using:
827#    autoconf --trace 'LT_SUPPORTED_TAG:$1'
828AC_DEFUN([LT_SUPPORTED_TAG], [])
829
830
831# C support is built-in for now
832m4_define([_LT_LANG_C_enabled], [])
833m4_define([_LT_TAGS], [])
834
835
836# LT_LANG(LANG)
837# -------------
838# Enable libtool support for the given language if not already enabled.
839AC_DEFUN([LT_LANG],
840[AC_BEFORE([$0], [LT_OUTPUT])dnl
841m4_case([$1],
842  [C],			[_LT_LANG(C)],
843  [C++],		[_LT_LANG(CXX)],
844  [Go],			[_LT_LANG(GO)],
845  [Java],		[_LT_LANG(GCJ)],
846  [Fortran 77],		[_LT_LANG(F77)],
847  [Fortran],		[_LT_LANG(FC)],
848  [Windows Resource],	[_LT_LANG(RC)],
849  [m4_ifdef([_LT_LANG_]$1[_CONFIG],
850    [_LT_LANG($1)],
851    [m4_fatal([$0: unsupported language: "$1"])])])dnl
852])# LT_LANG
853
854
855# _LT_LANG(LANGNAME)
856# ------------------
857m4_defun([_LT_LANG],
858[m4_ifdef([_LT_LANG_]$1[_enabled], [],
859  [LT_SUPPORTED_TAG([$1])dnl
860  m4_append([_LT_TAGS], [$1 ])dnl
861  m4_define([_LT_LANG_]$1[_enabled], [])dnl
862  _LT_LANG_$1_CONFIG($1)])dnl
863])# _LT_LANG
864
865
866m4_ifndef([AC_PROG_GO], [
867# NOTE: This macro has been submitted for inclusion into   #
868#  GNU Autoconf as AC_PROG_GO.  When it is available in    #
869#  a released version of Autoconf we should remove this    #
870#  macro and use it instead.                               #
871m4_defun([AC_PROG_GO],
872[AC_LANG_PUSH(Go)dnl
873AC_ARG_VAR([GOC],     [Go compiler command])dnl
874AC_ARG_VAR([GOFLAGS], [Go compiler flags])dnl
875_AC_ARG_VAR_LDFLAGS()dnl
876AC_CHECK_TOOL(GOC, gccgo)
877if test -z "$GOC"; then
878  if test -n "$ac_tool_prefix"; then
879    AC_CHECK_PROG(GOC, [${ac_tool_prefix}gccgo], [${ac_tool_prefix}gccgo])
880  fi
881fi
882if test -z "$GOC"; then
883  AC_CHECK_PROG(GOC, gccgo, gccgo, false)
884fi
885])#m4_defun
886])#m4_ifndef
887
888
889# _LT_LANG_DEFAULT_CONFIG
890# -----------------------
891m4_defun([_LT_LANG_DEFAULT_CONFIG],
892[AC_PROVIDE_IFELSE([AC_PROG_CXX],
893  [LT_LANG(CXX)],
894  [m4_define([AC_PROG_CXX], defn([AC_PROG_CXX])[LT_LANG(CXX)])])
895
896AC_PROVIDE_IFELSE([AC_PROG_F77],
897  [LT_LANG(F77)],
898  [m4_define([AC_PROG_F77], defn([AC_PROG_F77])[LT_LANG(F77)])])
899
900AC_PROVIDE_IFELSE([AC_PROG_FC],
901  [LT_LANG(FC)],
902  [m4_define([AC_PROG_FC], defn([AC_PROG_FC])[LT_LANG(FC)])])
903
904dnl The call to [A][M_PROG_GCJ] is quoted like that to stop aclocal
905dnl pulling things in needlessly.
906AC_PROVIDE_IFELSE([AC_PROG_GCJ],
907  [LT_LANG(GCJ)],
908  [AC_PROVIDE_IFELSE([A][M_PROG_GCJ],
909    [LT_LANG(GCJ)],
910    [AC_PROVIDE_IFELSE([LT_PROG_GCJ],
911      [LT_LANG(GCJ)],
912      [m4_ifdef([AC_PROG_GCJ],
913	[m4_define([AC_PROG_GCJ], defn([AC_PROG_GCJ])[LT_LANG(GCJ)])])
914       m4_ifdef([A][M_PROG_GCJ],
915	[m4_define([A][M_PROG_GCJ], defn([A][M_PROG_GCJ])[LT_LANG(GCJ)])])
916       m4_ifdef([LT_PROG_GCJ],
917	[m4_define([LT_PROG_GCJ], defn([LT_PROG_GCJ])[LT_LANG(GCJ)])])])])])
918
919AC_PROVIDE_IFELSE([AC_PROG_GO],
920  [LT_LANG(GO)],
921  [m4_define([AC_PROG_GO], defn([AC_PROG_GO])[LT_LANG(GO)])])
922
923AC_PROVIDE_IFELSE([LT_PROG_RC],
924  [LT_LANG(RC)],
925  [m4_define([LT_PROG_RC], defn([LT_PROG_RC])[LT_LANG(RC)])])
926])# _LT_LANG_DEFAULT_CONFIG
927
928# Obsolete macros:
929AU_DEFUN([AC_LIBTOOL_CXX], [LT_LANG(C++)])
930AU_DEFUN([AC_LIBTOOL_F77], [LT_LANG(Fortran 77)])
931AU_DEFUN([AC_LIBTOOL_FC], [LT_LANG(Fortran)])
932AU_DEFUN([AC_LIBTOOL_GCJ], [LT_LANG(Java)])
933AU_DEFUN([AC_LIBTOOL_RC], [LT_LANG(Windows Resource)])
934dnl aclocal-1.4 backwards compatibility:
935dnl AC_DEFUN([AC_LIBTOOL_CXX], [])
936dnl AC_DEFUN([AC_LIBTOOL_F77], [])
937dnl AC_DEFUN([AC_LIBTOOL_FC], [])
938dnl AC_DEFUN([AC_LIBTOOL_GCJ], [])
939dnl AC_DEFUN([AC_LIBTOOL_RC], [])
940
941
942# _LT_TAG_COMPILER
943# ----------------
944m4_defun([_LT_TAG_COMPILER],
945[AC_REQUIRE([AC_PROG_CC])dnl
946
947_LT_DECL([LTCC], [CC], [1], [A C compiler])dnl
948_LT_DECL([LTCFLAGS], [CFLAGS], [1], [LTCC compiler flags])dnl
949_LT_TAGDECL([CC], [compiler], [1], [A language specific compiler])dnl
950_LT_TAGDECL([with_gcc], [GCC], [0], [Is the compiler the GNU compiler?])dnl
951
952# If no C compiler was specified, use CC.
953LTCC=${LTCC-"$CC"}
954
955# If no C compiler flags were specified, use CFLAGS.
956LTCFLAGS=${LTCFLAGS-"$CFLAGS"}
957
958# Allow CC to be a program name with arguments.
959compiler=$CC
960])# _LT_TAG_COMPILER
961
962
963# _LT_COMPILER_BOILERPLATE
964# ------------------------
965# Check for compiler boilerplate output or warnings with
966# the simple compiler test code.
967m4_defun([_LT_COMPILER_BOILERPLATE],
968[m4_require([_LT_DECL_SED])dnl
969ac_outfile=conftest.$ac_objext
970echo "$lt_simple_compile_test_code" >conftest.$ac_ext
971eval "$ac_compile" 2>&1 >/dev/null | $SED '/^$/d; /^ *+/d' >conftest.err
972_lt_compiler_boilerplate=`cat conftest.err`
973$RM conftest*
974])# _LT_COMPILER_BOILERPLATE
975
976
977# _LT_LINKER_BOILERPLATE
978# ----------------------
979# Check for linker boilerplate output or warnings with
980# the simple link test code.
981m4_defun([_LT_LINKER_BOILERPLATE],
982[m4_require([_LT_DECL_SED])dnl
983ac_outfile=conftest.$ac_objext
984echo "$lt_simple_link_test_code" >conftest.$ac_ext
985eval "$ac_link" 2>&1 >/dev/null | $SED '/^$/d; /^ *+/d' >conftest.err
986_lt_linker_boilerplate=`cat conftest.err`
987$RM -r conftest*
988])# _LT_LINKER_BOILERPLATE
989
990# _LT_REQUIRED_DARWIN_CHECKS
991# -------------------------
992m4_defun_once([_LT_REQUIRED_DARWIN_CHECKS],[
993  case $host_os in
994    rhapsody* | darwin*)
995    AC_CHECK_TOOL([DSYMUTIL], [dsymutil], [:])
996    AC_CHECK_TOOL([NMEDIT], [nmedit], [:])
997    AC_CHECK_TOOL([LIPO], [lipo], [:])
998    AC_CHECK_TOOL([OTOOL], [otool], [:])
999    AC_CHECK_TOOL([OTOOL64], [otool64], [:])
1000    _LT_DECL([], [DSYMUTIL], [1],
1001      [Tool to manipulate archived DWARF debug symbol files on Mac OS X])
1002    _LT_DECL([], [NMEDIT], [1],
1003      [Tool to change global to local symbols on Mac OS X])
1004    _LT_DECL([], [LIPO], [1],
1005      [Tool to manipulate fat objects and archives on Mac OS X])
1006    _LT_DECL([], [OTOOL], [1],
1007      [ldd/readelf like tool for Mach-O binaries on Mac OS X])
1008    _LT_DECL([], [OTOOL64], [1],
1009      [ldd/readelf like tool for 64 bit Mach-O binaries on Mac OS X 10.4])
1010
1011    AC_CACHE_CHECK([for -single_module linker flag],[lt_cv_apple_cc_single_mod],
1012      [lt_cv_apple_cc_single_mod=no
1013      if test -z "$LT_MULTI_MODULE"; then
1014	# By default we will add the -single_module flag. You can override
1015	# by either setting the environment variable LT_MULTI_MODULE
1016	# non-empty at configure time, or by adding -multi_module to the
1017	# link flags.
1018	rm -rf libconftest.dylib*
1019	echo "int foo(void){return 1;}" > conftest.c
1020	echo "$LTCC $LTCFLAGS $LDFLAGS -o libconftest.dylib \
1021-dynamiclib -Wl,-single_module conftest.c" >&AS_MESSAGE_LOG_FD
1022	$LTCC $LTCFLAGS $LDFLAGS -o libconftest.dylib \
1023	  -dynamiclib -Wl,-single_module conftest.c 2>conftest.err
1024        _lt_result=$?
1025	# If there is a non-empty error log, and "single_module"
1026	# appears in it, assume the flag caused a linker warning
1027        if test -s conftest.err && $GREP single_module conftest.err; then
1028	  cat conftest.err >&AS_MESSAGE_LOG_FD
1029	# Otherwise, if the output was created with a 0 exit code from
1030	# the compiler, it worked.
1031	elif test -f libconftest.dylib && test 0 = "$_lt_result"; then
1032	  lt_cv_apple_cc_single_mod=yes
1033	else
1034	  cat conftest.err >&AS_MESSAGE_LOG_FD
1035	fi
1036	rm -rf libconftest.dylib*
1037	rm -f conftest.*
1038      fi])
1039
1040    AC_CACHE_CHECK([for -exported_symbols_list linker flag],
1041      [lt_cv_ld_exported_symbols_list],
1042      [lt_cv_ld_exported_symbols_list=no
1043      save_LDFLAGS=$LDFLAGS
1044      echo "_main" > conftest.sym
1045      LDFLAGS="$LDFLAGS -Wl,-exported_symbols_list,conftest.sym"
1046      AC_LINK_IFELSE([AC_LANG_PROGRAM([],[])],
1047	[lt_cv_ld_exported_symbols_list=yes],
1048	[lt_cv_ld_exported_symbols_list=no])
1049	LDFLAGS=$save_LDFLAGS
1050    ])
1051
1052    AC_CACHE_CHECK([for -force_load linker flag],[lt_cv_ld_force_load],
1053      [lt_cv_ld_force_load=no
1054      cat > conftest.c << _LT_EOF
1055int forced_loaded() { return 2;}
1056_LT_EOF
1057      echo "$LTCC $LTCFLAGS -c -o conftest.o conftest.c" >&AS_MESSAGE_LOG_FD
1058      $LTCC $LTCFLAGS -c -o conftest.o conftest.c 2>&AS_MESSAGE_LOG_FD
1059      echo "$AR cru libconftest.a conftest.o" >&AS_MESSAGE_LOG_FD
1060      $AR cru libconftest.a conftest.o 2>&AS_MESSAGE_LOG_FD
1061      echo "$RANLIB libconftest.a" >&AS_MESSAGE_LOG_FD
1062      $RANLIB libconftest.a 2>&AS_MESSAGE_LOG_FD
1063      cat > conftest.c << _LT_EOF
1064int main() { return 0;}
1065_LT_EOF
1066      echo "$LTCC $LTCFLAGS $LDFLAGS -o conftest conftest.c -Wl,-force_load,./libconftest.a" >&AS_MESSAGE_LOG_FD
1067      $LTCC $LTCFLAGS $LDFLAGS -o conftest conftest.c -Wl,-force_load,./libconftest.a 2>conftest.err
1068      _lt_result=$?
1069      if test -s conftest.err && $GREP force_load conftest.err; then
1070	cat conftest.err >&AS_MESSAGE_LOG_FD
1071      elif test -f conftest && test 0 = "$_lt_result" && $GREP forced_load conftest >/dev/null 2>&1; then
1072	lt_cv_ld_force_load=yes
1073      else
1074	cat conftest.err >&AS_MESSAGE_LOG_FD
1075      fi
1076        rm -f conftest.err libconftest.a conftest conftest.c
1077        rm -rf conftest.dSYM
1078    ])
1079    case $host_os in
1080    rhapsody* | darwin1.[[012]])
1081      _lt_dar_allow_undefined='$wl-undefined ${wl}suppress' ;;
1082    darwin1.*)
1083      _lt_dar_allow_undefined='$wl-flat_namespace $wl-undefined ${wl}suppress' ;;
1084    darwin*) # darwin 5.x on
1085      # if running on 10.5 or later, the deployment target defaults
1086      # to the OS version, if on x86, and 10.4, the deployment
1087      # target defaults to 10.4. Don't you love it?
1088      case ${MACOSX_DEPLOYMENT_TARGET-10.0},$host in
1089	10.0,*86*-darwin8*|10.0,*-darwin[[91]]*)
1090	  _lt_dar_allow_undefined='$wl-undefined ${wl}dynamic_lookup' ;;
1091	10.[[012]][[,.]]*)
1092	  _lt_dar_allow_undefined='$wl-flat_namespace $wl-undefined ${wl}suppress' ;;
1093	10.*)
1094	  _lt_dar_allow_undefined='$wl-undefined ${wl}dynamic_lookup' ;;
1095      esac
1096    ;;
1097  esac
1098    if test yes = "$lt_cv_apple_cc_single_mod"; then
1099      _lt_dar_single_mod='$single_module'
1100    fi
1101    if test yes = "$lt_cv_ld_exported_symbols_list"; then
1102      _lt_dar_export_syms=' $wl-exported_symbols_list,$output_objdir/$libname-symbols.expsym'
1103    else
1104      _lt_dar_export_syms='~$NMEDIT -s $output_objdir/$libname-symbols.expsym $lib'
1105    fi
1106    if test : != "$DSYMUTIL" && test no = "$lt_cv_ld_force_load"; then
1107      _lt_dsymutil='~$DSYMUTIL $lib || :'
1108    else
1109      _lt_dsymutil=
1110    fi
1111    ;;
1112  esac
1113])
1114
1115
1116# _LT_DARWIN_LINKER_FEATURES([TAG])
1117# ---------------------------------
1118# Checks for linker and compiler features on darwin
1119m4_defun([_LT_DARWIN_LINKER_FEATURES],
1120[
1121  m4_require([_LT_REQUIRED_DARWIN_CHECKS])
1122  _LT_TAGVAR(archive_cmds_need_lc, $1)=no
1123  _LT_TAGVAR(hardcode_direct, $1)=no
1124  _LT_TAGVAR(hardcode_automatic, $1)=yes
1125  _LT_TAGVAR(hardcode_shlibpath_var, $1)=unsupported
1126  if test yes = "$lt_cv_ld_force_load"; then
1127    _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\"`'
1128    m4_case([$1], [F77], [_LT_TAGVAR(compiler_needs_object, $1)=yes],
1129                  [FC],  [_LT_TAGVAR(compiler_needs_object, $1)=yes])
1130  else
1131    _LT_TAGVAR(whole_archive_flag_spec, $1)=''
1132  fi
1133  _LT_TAGVAR(link_all_deplibs, $1)=yes
1134  _LT_TAGVAR(allow_undefined_flag, $1)=$_lt_dar_allow_undefined
1135  case $cc_basename in
1136     ifort*|nagfor*) _lt_dar_can_shared=yes ;;
1137     *) _lt_dar_can_shared=$GCC ;;
1138  esac
1139  if test yes = "$_lt_dar_can_shared"; then
1140    output_verbose_link_cmd=func_echo_all
1141    _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"
1142    _LT_TAGVAR(module_cmds, $1)="\$CC \$allow_undefined_flag -o \$lib -bundle \$libobjs \$deplibs \$compiler_flags$_lt_dsymutil"
1143    _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"
1144    _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"
1145    m4_if([$1], [CXX],
1146[   if test yes != "$lt_cv_apple_cc_single_mod"; then
1147      _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"
1148      _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"
1149    fi
1150],[])
1151  else
1152  _LT_TAGVAR(ld_shlibs, $1)=no
1153  fi
1154])
1155
1156# _LT_SYS_MODULE_PATH_AIX([TAGNAME])
1157# ----------------------------------
1158# Links a minimal program and checks the executable
1159# for the system default hardcoded library path. In most cases,
1160# this is /usr/lib:/lib, but when the MPI compilers are used
1161# the location of the communication and MPI libs are included too.
1162# If we don't find anything, use the default library path according
1163# to the aix ld manual.
1164# Store the results from the different compilers for each TAGNAME.
1165# Allow to override them for all tags through lt_cv_aix_libpath.
1166m4_defun([_LT_SYS_MODULE_PATH_AIX],
1167[m4_require([_LT_DECL_SED])dnl
1168if test set = "${lt_cv_aix_libpath+set}"; then
1169  aix_libpath=$lt_cv_aix_libpath
1170else
1171  AC_CACHE_VAL([_LT_TAGVAR([lt_cv_aix_libpath_], [$1])],
1172  [AC_LINK_IFELSE([AC_LANG_PROGRAM],[
1173  lt_aix_libpath_sed='[
1174      /Import File Strings/,/^$/ {
1175	  /^0/ {
1176	      s/^0  *\([^ ]*\) *$/\1/
1177	      p
1178	  }
1179      }]'
1180  _LT_TAGVAR([lt_cv_aix_libpath_], [$1])=`dump -H conftest$ac_exeext 2>/dev/null | $SED -n -e "$lt_aix_libpath_sed"`
1181  # Check for a 64-bit object if we didn't find anything.
1182  if test -z "$_LT_TAGVAR([lt_cv_aix_libpath_], [$1])"; then
1183    _LT_TAGVAR([lt_cv_aix_libpath_], [$1])=`dump -HX64 conftest$ac_exeext 2>/dev/null | $SED -n -e "$lt_aix_libpath_sed"`
1184  fi],[])
1185  if test -z "$_LT_TAGVAR([lt_cv_aix_libpath_], [$1])"; then
1186    _LT_TAGVAR([lt_cv_aix_libpath_], [$1])=/usr/lib:/lib
1187  fi
1188  ])
1189  aix_libpath=$_LT_TAGVAR([lt_cv_aix_libpath_], [$1])
1190fi
1191])# _LT_SYS_MODULE_PATH_AIX
1192
1193
1194# _LT_SHELL_INIT(ARG)
1195# -------------------
1196m4_define([_LT_SHELL_INIT],
1197[m4_divert_text([M4SH-INIT], [$1
1198])])# _LT_SHELL_INIT
1199
1200
1201
1202# _LT_PROG_ECHO_BACKSLASH
1203# -----------------------
1204# Find how we can fake an echo command that does not interpret backslash.
1205# In particular, with Autoconf 2.60 or later we add some code to the start
1206# of the generated configure script that will find a shell with a builtin
1207# printf (that we can use as an echo command).
1208m4_defun([_LT_PROG_ECHO_BACKSLASH],
1209[ECHO='\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\'
1210ECHO=$ECHO$ECHO$ECHO$ECHO$ECHO
1211ECHO=$ECHO$ECHO$ECHO$ECHO$ECHO$ECHO
1212
1213AC_MSG_CHECKING([how to print strings])
1214# Test print first, because it will be a builtin if present.
1215if test "X`( print -r -- -n ) 2>/dev/null`" = X-n && \
1216   test "X`print -r -- $ECHO 2>/dev/null`" = "X$ECHO"; then
1217  ECHO='print -r --'
1218elif test "X`printf %s $ECHO 2>/dev/null`" = "X$ECHO"; then
1219  ECHO='printf %s\n'
1220else
1221  # Use this function as a fallback that always works.
1222  func_fallback_echo ()
1223  {
1224    eval 'cat <<_LTECHO_EOF
1225$[]1
1226_LTECHO_EOF'
1227  }
1228  ECHO='func_fallback_echo'
1229fi
1230
1231# func_echo_all arg...
1232# Invoke $ECHO with all args, space-separated.
1233func_echo_all ()
1234{
1235    $ECHO "$*"
1236}
1237
1238case $ECHO in
1239  printf*) AC_MSG_RESULT([printf]) ;;
1240  print*) AC_MSG_RESULT([print -r]) ;;
1241  *) AC_MSG_RESULT([cat]) ;;
1242esac
1243
1244m4_ifdef([_AS_DETECT_SUGGESTED],
1245[_AS_DETECT_SUGGESTED([
1246  test -n "${ZSH_VERSION+set}${BASH_VERSION+set}" || (
1247    ECHO='\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\'
1248    ECHO=$ECHO$ECHO$ECHO$ECHO$ECHO
1249    ECHO=$ECHO$ECHO$ECHO$ECHO$ECHO$ECHO
1250    PATH=/empty FPATH=/empty; export PATH FPATH
1251    test "X`printf %s $ECHO`" = "X$ECHO" \
1252      || test "X`print -r -- $ECHO`" = "X$ECHO" )])])
1253
1254_LT_DECL([], [SHELL], [1], [Shell to use when invoking shell scripts])
1255_LT_DECL([], [ECHO], [1], [An echo program that protects backslashes])
1256])# _LT_PROG_ECHO_BACKSLASH
1257
1258
1259# _LT_WITH_SYSROOT
1260# ----------------
1261AC_DEFUN([_LT_WITH_SYSROOT],
1262[AC_MSG_CHECKING([for sysroot])
1263AC_ARG_WITH([sysroot],
1264[AS_HELP_STRING([--with-sysroot@<:@=DIR@:>@],
1265  [Search for dependent libraries within DIR (or the compiler's sysroot
1266   if not specified).])],
1267[], [with_sysroot=no])
1268
1269dnl lt_sysroot will always be passed unquoted.  We quote it here
1270dnl in case the user passed a directory name.
1271lt_sysroot=
1272case $with_sysroot in #(
1273 yes)
1274   if test yes = "$GCC"; then
1275     lt_sysroot=`$CC --print-sysroot 2>/dev/null`
1276   fi
1277   ;; #(
1278 /*)
1279   lt_sysroot=`echo "$with_sysroot" | sed -e "$sed_quote_subst"`
1280   ;; #(
1281 no|'')
1282   ;; #(
1283 *)
1284   AC_MSG_RESULT([$with_sysroot])
1285   AC_MSG_ERROR([The sysroot must be an absolute path.])
1286   ;;
1287esac
1288
1289 AC_MSG_RESULT([${lt_sysroot:-no}])
1290_LT_DECL([], [lt_sysroot], [0], [The root where to search for ]dnl
1291[dependent libraries, and where our libraries should be installed.])])
1292
1293# _LT_ENABLE_LOCK
1294# ---------------
1295m4_defun([_LT_ENABLE_LOCK],
1296[AC_ARG_ENABLE([libtool-lock],
1297  [AS_HELP_STRING([--disable-libtool-lock],
1298    [avoid locking (might break parallel builds)])])
1299test no = "$enable_libtool_lock" || enable_libtool_lock=yes
1300
1301# Some flags need to be propagated to the compiler or linker for good
1302# libtool support.
1303case $host in
1304ia64-*-hpux*)
1305  # Find out what ABI is being produced by ac_compile, and set mode
1306  # options accordingly.
1307  echo 'int i;' > conftest.$ac_ext
1308  if AC_TRY_EVAL(ac_compile); then
1309    case `/usr/bin/file conftest.$ac_objext` in
1310      *ELF-32*)
1311	HPUX_IA64_MODE=32
1312	;;
1313      *ELF-64*)
1314	HPUX_IA64_MODE=64
1315	;;
1316    esac
1317  fi
1318  rm -rf conftest*
1319  ;;
1320*-*-irix6*)
1321  # Find out what ABI is being produced by ac_compile, and set linker
1322  # options accordingly.
1323  echo '[#]line '$LINENO' "configure"' > conftest.$ac_ext
1324  if AC_TRY_EVAL(ac_compile); then
1325    if test yes = "$lt_cv_prog_gnu_ld"; then
1326      case `/usr/bin/file conftest.$ac_objext` in
1327	*32-bit*)
1328	  LD="${LD-ld} -melf32bsmip"
1329	  ;;
1330	*N32*)
1331	  LD="${LD-ld} -melf32bmipn32"
1332	  ;;
1333	*64-bit*)
1334	  LD="${LD-ld} -melf64bmip"
1335	;;
1336      esac
1337    else
1338      case `/usr/bin/file conftest.$ac_objext` in
1339	*32-bit*)
1340	  LD="${LD-ld} -32"
1341	  ;;
1342	*N32*)
1343	  LD="${LD-ld} -n32"
1344	  ;;
1345	*64-bit*)
1346	  LD="${LD-ld} -64"
1347	  ;;
1348      esac
1349    fi
1350  fi
1351  rm -rf conftest*
1352  ;;
1353
1354mips64*-*linux*)
1355  # Find out what ABI is being produced by ac_compile, and set linker
1356  # options accordingly.
1357  echo '[#]line '$LINENO' "configure"' > conftest.$ac_ext
1358  if AC_TRY_EVAL(ac_compile); then
1359    emul=elf
1360    case `/usr/bin/file conftest.$ac_objext` in
1361      *32-bit*)
1362	emul="${emul}32"
1363	;;
1364      *64-bit*)
1365	emul="${emul}64"
1366	;;
1367    esac
1368    case `/usr/bin/file conftest.$ac_objext` in
1369      *MSB*)
1370	emul="${emul}btsmip"
1371	;;
1372      *LSB*)
1373	emul="${emul}ltsmip"
1374	;;
1375    esac
1376    case `/usr/bin/file conftest.$ac_objext` in
1377      *N32*)
1378	emul="${emul}n32"
1379	;;
1380    esac
1381    LD="${LD-ld} -m $emul"
1382  fi
1383  rm -rf conftest*
1384  ;;
1385
1386x86_64-*kfreebsd*-gnu|x86_64-*linux*|powerpc*-*linux*| \
1387s390*-*linux*|s390*-*tpf*|sparc*-*linux*)
1388  # Find out what ABI is being produced by ac_compile, and set linker
1389  # options accordingly.  Note that the listed cases only cover the
1390  # situations where additional linker options are needed (such as when
1391  # doing 32-bit compilation for a host where ld defaults to 64-bit, or
1392  # vice versa); the common cases where no linker options are needed do
1393  # not appear in the list.
1394  echo 'int i;' > conftest.$ac_ext
1395  if AC_TRY_EVAL(ac_compile); then
1396    case `/usr/bin/file conftest.o` in
1397      *32-bit*)
1398	case $host in
1399	  x86_64-*kfreebsd*-gnu)
1400	    LD="${LD-ld} -m elf_i386_fbsd"
1401	    ;;
1402	  x86_64-*linux*)
1403	    case `/usr/bin/file conftest.o` in
1404	      *x86-64*)
1405		LD="${LD-ld} -m elf32_x86_64"
1406		;;
1407	      *)
1408		LD="${LD-ld} -m elf_i386"
1409		;;
1410	    esac
1411	    ;;
1412	  powerpc64le-*linux*)
1413	    LD="${LD-ld} -m elf32lppclinux"
1414	    ;;
1415	  powerpc64-*linux*)
1416	    LD="${LD-ld} -m elf32ppclinux"
1417	    ;;
1418	  s390x-*linux*)
1419	    LD="${LD-ld} -m elf_s390"
1420	    ;;
1421	  sparc64-*linux*)
1422	    LD="${LD-ld} -m elf32_sparc"
1423	    ;;
1424	esac
1425	;;
1426      *64-bit*)
1427	case $host in
1428	  x86_64-*kfreebsd*-gnu)
1429	    LD="${LD-ld} -m elf_x86_64_fbsd"
1430	    ;;
1431	  x86_64-*linux*)
1432	    LD="${LD-ld} -m elf_x86_64"
1433	    ;;
1434	  powerpcle-*linux*)
1435	    LD="${LD-ld} -m elf64lppc"
1436	    ;;
1437	  powerpc-*linux*)
1438	    LD="${LD-ld} -m elf64ppc"
1439	    ;;
1440	  s390*-*linux*|s390*-*tpf*)
1441	    LD="${LD-ld} -m elf64_s390"
1442	    ;;
1443	  sparc*-*linux*)
1444	    LD="${LD-ld} -m elf64_sparc"
1445	    ;;
1446	esac
1447	;;
1448    esac
1449  fi
1450  rm -rf conftest*
1451  ;;
1452
1453*-*-sco3.2v5*)
1454  # On SCO OpenServer 5, we need -belf to get full-featured binaries.
1455  SAVE_CFLAGS=$CFLAGS
1456  CFLAGS="$CFLAGS -belf"
1457  AC_CACHE_CHECK([whether the C compiler needs -belf], lt_cv_cc_needs_belf,
1458    [AC_LANG_PUSH(C)
1459     AC_LINK_IFELSE([AC_LANG_PROGRAM([[]],[[]])],[lt_cv_cc_needs_belf=yes],[lt_cv_cc_needs_belf=no])
1460     AC_LANG_POP])
1461  if test yes != "$lt_cv_cc_needs_belf"; then
1462    # this is probably gcc 2.8.0, egcs 1.0 or newer; no need for -belf
1463    CFLAGS=$SAVE_CFLAGS
1464  fi
1465  ;;
1466*-*solaris*)
1467  # Find out what ABI is being produced by ac_compile, and set linker
1468  # options accordingly.
1469  echo 'int i;' > conftest.$ac_ext
1470  if AC_TRY_EVAL(ac_compile); then
1471    case `/usr/bin/file conftest.o` in
1472    *64-bit*)
1473      case $lt_cv_prog_gnu_ld in
1474      yes*)
1475        case $host in
1476        i?86-*-solaris*|x86_64-*-solaris*)
1477          LD="${LD-ld} -m elf_x86_64"
1478          ;;
1479        sparc*-*-solaris*)
1480          LD="${LD-ld} -m elf64_sparc"
1481          ;;
1482        esac
1483        # GNU ld 2.21 introduced _sol2 emulations.  Use them if available.
1484        if ${LD-ld} -V | grep _sol2 >/dev/null 2>&1; then
1485          LD=${LD-ld}_sol2
1486        fi
1487        ;;
1488      *)
1489	if ${LD-ld} -64 -r -o conftest2.o conftest.o >/dev/null 2>&1; then
1490	  LD="${LD-ld} -64"
1491	fi
1492	;;
1493      esac
1494      ;;
1495    esac
1496  fi
1497  rm -rf conftest*
1498  ;;
1499esac
1500
1501need_locks=$enable_libtool_lock
1502])# _LT_ENABLE_LOCK
1503
1504
1505# _LT_PROG_AR
1506# -----------
1507m4_defun([_LT_PROG_AR],
1508[AC_CHECK_TOOLS(AR, [ar], false)
1509: ${AR=ar}
1510: ${AR_FLAGS=cru}
1511_LT_DECL([], [AR], [1], [The archiver])
1512_LT_DECL([], [AR_FLAGS], [1], [Flags to create an archive])
1513
1514AC_CACHE_CHECK([for archiver @FILE support], [lt_cv_ar_at_file],
1515  [lt_cv_ar_at_file=no
1516   AC_COMPILE_IFELSE([AC_LANG_PROGRAM],
1517     [echo conftest.$ac_objext > conftest.lst
1518      lt_ar_try='$AR $AR_FLAGS libconftest.a @conftest.lst >&AS_MESSAGE_LOG_FD'
1519      AC_TRY_EVAL([lt_ar_try])
1520      if test 0 -eq "$ac_status"; then
1521	# Ensure the archiver fails upon bogus file names.
1522	rm -f conftest.$ac_objext libconftest.a
1523	AC_TRY_EVAL([lt_ar_try])
1524	if test 0 -ne "$ac_status"; then
1525          lt_cv_ar_at_file=@
1526        fi
1527      fi
1528      rm -f conftest.* libconftest.a
1529     ])
1530  ])
1531
1532if test no = "$lt_cv_ar_at_file"; then
1533  archiver_list_spec=
1534else
1535  archiver_list_spec=$lt_cv_ar_at_file
1536fi
1537_LT_DECL([], [archiver_list_spec], [1],
1538  [How to feed a file listing to the archiver])
1539])# _LT_PROG_AR
1540
1541
1542# _LT_CMD_OLD_ARCHIVE
1543# -------------------
1544m4_defun([_LT_CMD_OLD_ARCHIVE],
1545[_LT_PROG_AR
1546
1547AC_CHECK_TOOL(STRIP, strip, :)
1548test -z "$STRIP" && STRIP=:
1549_LT_DECL([], [STRIP], [1], [A symbol stripping program])
1550
1551AC_CHECK_TOOL(RANLIB, ranlib, :)
1552test -z "$RANLIB" && RANLIB=:
1553_LT_DECL([], [RANLIB], [1],
1554    [Commands used to install an old-style archive])
1555
1556# Determine commands to create old-style static archives.
1557old_archive_cmds='$AR $AR_FLAGS $oldlib$oldobjs'
1558old_postinstall_cmds='chmod 644 $oldlib'
1559old_postuninstall_cmds=
1560
1561if test -n "$RANLIB"; then
1562  case $host_os in
1563  bitrig* | openbsd*)
1564    old_postinstall_cmds="$old_postinstall_cmds~\$RANLIB -t \$tool_oldlib"
1565    ;;
1566  *)
1567    old_postinstall_cmds="$old_postinstall_cmds~\$RANLIB \$tool_oldlib"
1568    ;;
1569  esac
1570  old_archive_cmds="$old_archive_cmds~\$RANLIB \$tool_oldlib"
1571fi
1572
1573case $host_os in
1574  darwin*)
1575    lock_old_archive_extraction=yes ;;
1576  *)
1577    lock_old_archive_extraction=no ;;
1578esac
1579_LT_DECL([], [old_postinstall_cmds], [2])
1580_LT_DECL([], [old_postuninstall_cmds], [2])
1581_LT_TAGDECL([], [old_archive_cmds], [2],
1582    [Commands used to build an old-style archive])
1583_LT_DECL([], [lock_old_archive_extraction], [0],
1584    [Whether to use a lock for old archive extraction])
1585])# _LT_CMD_OLD_ARCHIVE
1586
1587
1588# _LT_COMPILER_OPTION(MESSAGE, VARIABLE-NAME, FLAGS,
1589#		[OUTPUT-FILE], [ACTION-SUCCESS], [ACTION-FAILURE])
1590# ----------------------------------------------------------------
1591# Check whether the given compiler option works
1592AC_DEFUN([_LT_COMPILER_OPTION],
1593[m4_require([_LT_FILEUTILS_DEFAULTS])dnl
1594m4_require([_LT_DECL_SED])dnl
1595AC_CACHE_CHECK([$1], [$2],
1596  [$2=no
1597   m4_if([$4], , [ac_outfile=conftest.$ac_objext], [ac_outfile=$4])
1598   echo "$lt_simple_compile_test_code" > conftest.$ac_ext
1599   lt_compiler_flag="$3"  ## exclude from sc_useless_quotes_in_assignment
1600   # Insert the option either (1) after the last *FLAGS variable, or
1601   # (2) before a word containing "conftest.", or (3) at the end.
1602   # Note that $ac_compile itself does not contain backslashes and begins
1603   # with a dollar sign (not a hyphen), so the echo should work correctly.
1604   # The option is referenced via a variable to avoid confusing sed.
1605   lt_compile=`echo "$ac_compile" | $SED \
1606   -e 's:.*FLAGS}\{0,1\} :&$lt_compiler_flag :; t' \
1607   -e 's: [[^ ]]*conftest\.: $lt_compiler_flag&:; t' \
1608   -e 's:$: $lt_compiler_flag:'`
1609   (eval echo "\"\$as_me:$LINENO: $lt_compile\"" >&AS_MESSAGE_LOG_FD)
1610   (eval "$lt_compile" 2>conftest.err)
1611   ac_status=$?
1612   cat conftest.err >&AS_MESSAGE_LOG_FD
1613   echo "$as_me:$LINENO: \$? = $ac_status" >&AS_MESSAGE_LOG_FD
1614   if (exit $ac_status) && test -s "$ac_outfile"; then
1615     # The compiler can only warn and ignore the option if not recognized
1616     # So say no if there are warnings other than the usual output.
1617     $ECHO "$_lt_compiler_boilerplate" | $SED '/^$/d' >conftest.exp
1618     $SED '/^$/d; /^ *+/d' conftest.err >conftest.er2
1619     if test ! -s conftest.er2 || diff conftest.exp conftest.er2 >/dev/null; then
1620       $2=yes
1621     fi
1622   fi
1623   $RM conftest*
1624])
1625
1626if test yes = "[$]$2"; then
1627    m4_if([$5], , :, [$5])
1628else
1629    m4_if([$6], , :, [$6])
1630fi
1631])# _LT_COMPILER_OPTION
1632
1633# Old name:
1634AU_ALIAS([AC_LIBTOOL_COMPILER_OPTION], [_LT_COMPILER_OPTION])
1635dnl aclocal-1.4 backwards compatibility:
1636dnl AC_DEFUN([AC_LIBTOOL_COMPILER_OPTION], [])
1637
1638
1639# _LT_LINKER_OPTION(MESSAGE, VARIABLE-NAME, FLAGS,
1640#                  [ACTION-SUCCESS], [ACTION-FAILURE])
1641# ----------------------------------------------------
1642# Check whether the given linker option works
1643AC_DEFUN([_LT_LINKER_OPTION],
1644[m4_require([_LT_FILEUTILS_DEFAULTS])dnl
1645m4_require([_LT_DECL_SED])dnl
1646AC_CACHE_CHECK([$1], [$2],
1647  [$2=no
1648   save_LDFLAGS=$LDFLAGS
1649   LDFLAGS="$LDFLAGS $3"
1650   echo "$lt_simple_link_test_code" > conftest.$ac_ext
1651   if (eval $ac_link 2>conftest.err) && test -s conftest$ac_exeext; then
1652     # The linker can only warn and ignore the option if not recognized
1653     # So say no if there are warnings
1654     if test -s conftest.err; then
1655       # Append any errors to the config.log.
1656       cat conftest.err 1>&AS_MESSAGE_LOG_FD
1657       $ECHO "$_lt_linker_boilerplate" | $SED '/^$/d' > conftest.exp
1658       $SED '/^$/d; /^ *+/d' conftest.err >conftest.er2
1659       if diff conftest.exp conftest.er2 >/dev/null; then
1660         $2=yes
1661       fi
1662     else
1663       $2=yes
1664     fi
1665   fi
1666   $RM -r conftest*
1667   LDFLAGS=$save_LDFLAGS
1668])
1669
1670if test yes = "[$]$2"; then
1671    m4_if([$4], , :, [$4])
1672else
1673    m4_if([$5], , :, [$5])
1674fi
1675])# _LT_LINKER_OPTION
1676
1677# Old name:
1678AU_ALIAS([AC_LIBTOOL_LINKER_OPTION], [_LT_LINKER_OPTION])
1679dnl aclocal-1.4 backwards compatibility:
1680dnl AC_DEFUN([AC_LIBTOOL_LINKER_OPTION], [])
1681
1682
1683# LT_CMD_MAX_LEN
1684#---------------
1685AC_DEFUN([LT_CMD_MAX_LEN],
1686[AC_REQUIRE([AC_CANONICAL_HOST])dnl
1687# find the maximum length of command line arguments
1688AC_MSG_CHECKING([the maximum length of command line arguments])
1689AC_CACHE_VAL([lt_cv_sys_max_cmd_len], [dnl
1690  i=0
1691  teststring=ABCD
1692
1693  case $build_os in
1694  msdosdjgpp*)
1695    # On DJGPP, this test can blow up pretty badly due to problems in libc
1696    # (any single argument exceeding 2000 bytes causes a buffer overrun
1697    # during glob expansion).  Even if it were fixed, the result of this
1698    # check would be larger than it should be.
1699    lt_cv_sys_max_cmd_len=12288;    # 12K is about right
1700    ;;
1701
1702  gnu*)
1703    # Under GNU Hurd, this test is not required because there is
1704    # no limit to the length of command line arguments.
1705    # Libtool will interpret -1 as no limit whatsoever
1706    lt_cv_sys_max_cmd_len=-1;
1707    ;;
1708
1709  cygwin* | mingw* | cegcc*)
1710    # On Win9x/ME, this test blows up -- it succeeds, but takes
1711    # about 5 minutes as the teststring grows exponentially.
1712    # Worse, since 9x/ME are not pre-emptively multitasking,
1713    # you end up with a "frozen" computer, even though with patience
1714    # the test eventually succeeds (with a max line length of 256k).
1715    # Instead, let's just punt: use the minimum linelength reported by
1716    # all of the supported platforms: 8192 (on NT/2K/XP).
1717    lt_cv_sys_max_cmd_len=8192;
1718    ;;
1719
1720  mint*)
1721    # On MiNT this can take a long time and run out of memory.
1722    lt_cv_sys_max_cmd_len=8192;
1723    ;;
1724
1725  amigaos*)
1726    # On AmigaOS with pdksh, this test takes hours, literally.
1727    # So we just punt and use a minimum line length of 8192.
1728    lt_cv_sys_max_cmd_len=8192;
1729    ;;
1730
1731  bitrig* | darwin* | dragonfly* | freebsd* | netbsd* | openbsd*)
1732    # This has been around since 386BSD, at least.  Likely further.
1733    if test -x /sbin/sysctl; then
1734      lt_cv_sys_max_cmd_len=`/sbin/sysctl -n kern.argmax`
1735    elif test -x /usr/sbin/sysctl; then
1736      lt_cv_sys_max_cmd_len=`/usr/sbin/sysctl -n kern.argmax`
1737    else
1738      lt_cv_sys_max_cmd_len=65536	# usable default for all BSDs
1739    fi
1740    # And add a safety zone
1741    lt_cv_sys_max_cmd_len=`expr $lt_cv_sys_max_cmd_len \/ 4`
1742    lt_cv_sys_max_cmd_len=`expr $lt_cv_sys_max_cmd_len \* 3`
1743    ;;
1744
1745  interix*)
1746    # We know the value 262144 and hardcode it with a safety zone (like BSD)
1747    lt_cv_sys_max_cmd_len=196608
1748    ;;
1749
1750  os2*)
1751    # The test takes a long time on OS/2.
1752    lt_cv_sys_max_cmd_len=8192
1753    ;;
1754
1755  osf*)
1756    # Dr. Hans Ekkehard Plesser reports seeing a kernel panic running configure
1757    # due to this test when exec_disable_arg_limit is 1 on Tru64. It is not
1758    # nice to cause kernel panics so lets avoid the loop below.
1759    # First set a reasonable default.
1760    lt_cv_sys_max_cmd_len=16384
1761    #
1762    if test -x /sbin/sysconfig; then
1763      case `/sbin/sysconfig -q proc exec_disable_arg_limit` in
1764        *1*) lt_cv_sys_max_cmd_len=-1 ;;
1765      esac
1766    fi
1767    ;;
1768  sco3.2v5*)
1769    lt_cv_sys_max_cmd_len=102400
1770    ;;
1771  sysv5* | sco5v6* | sysv4.2uw2*)
1772    kargmax=`grep ARG_MAX /etc/conf/cf.d/stune 2>/dev/null`
1773    if test -n "$kargmax"; then
1774      lt_cv_sys_max_cmd_len=`echo $kargmax | sed 's/.*[[	 ]]//'`
1775    else
1776      lt_cv_sys_max_cmd_len=32768
1777    fi
1778    ;;
1779  *)
1780    lt_cv_sys_max_cmd_len=`(getconf ARG_MAX) 2> /dev/null`
1781    if test -n "$lt_cv_sys_max_cmd_len" && \
1782       test undefined != "$lt_cv_sys_max_cmd_len"; then
1783      lt_cv_sys_max_cmd_len=`expr $lt_cv_sys_max_cmd_len \/ 4`
1784      lt_cv_sys_max_cmd_len=`expr $lt_cv_sys_max_cmd_len \* 3`
1785    else
1786      # Make teststring a little bigger before we do anything with it.
1787      # a 1K string should be a reasonable start.
1788      for i in 1 2 3 4 5 6 7 8; do
1789        teststring=$teststring$teststring
1790      done
1791      SHELL=${SHELL-${CONFIG_SHELL-/bin/sh}}
1792      # If test is not a shell built-in, we'll probably end up computing a
1793      # maximum length that is only half of the actual maximum length, but
1794      # we can't tell.
1795      while { test X`env echo "$teststring$teststring" 2>/dev/null` \
1796	         = "X$teststring$teststring"; } >/dev/null 2>&1 &&
1797	      test 17 != "$i" # 1/2 MB should be enough
1798      do
1799        i=`expr $i + 1`
1800        teststring=$teststring$teststring
1801      done
1802      # Only check the string length outside the loop.
1803      lt_cv_sys_max_cmd_len=`expr "X$teststring" : ".*" 2>&1`
1804      teststring=
1805      # Add a significant safety factor because C++ compilers can tack on
1806      # massive amounts of additional arguments before passing them to the
1807      # linker.  It appears as though 1/2 is a usable value.
1808      lt_cv_sys_max_cmd_len=`expr $lt_cv_sys_max_cmd_len \/ 2`
1809    fi
1810    ;;
1811  esac
1812])
1813if test -n "$lt_cv_sys_max_cmd_len"; then
1814  AC_MSG_RESULT($lt_cv_sys_max_cmd_len)
1815else
1816  AC_MSG_RESULT(none)
1817fi
1818max_cmd_len=$lt_cv_sys_max_cmd_len
1819_LT_DECL([], [max_cmd_len], [0],
1820    [What is the maximum length of a command?])
1821])# LT_CMD_MAX_LEN
1822
1823# Old name:
1824AU_ALIAS([AC_LIBTOOL_SYS_MAX_CMD_LEN], [LT_CMD_MAX_LEN])
1825dnl aclocal-1.4 backwards compatibility:
1826dnl AC_DEFUN([AC_LIBTOOL_SYS_MAX_CMD_LEN], [])
1827
1828
1829# _LT_HEADER_DLFCN
1830# ----------------
1831m4_defun([_LT_HEADER_DLFCN],
1832[AC_CHECK_HEADERS([dlfcn.h], [], [], [AC_INCLUDES_DEFAULT])dnl
1833])# _LT_HEADER_DLFCN
1834
1835
1836# _LT_TRY_DLOPEN_SELF (ACTION-IF-TRUE, ACTION-IF-TRUE-W-USCORE,
1837#                      ACTION-IF-FALSE, ACTION-IF-CROSS-COMPILING)
1838# ----------------------------------------------------------------
1839m4_defun([_LT_TRY_DLOPEN_SELF],
1840[m4_require([_LT_HEADER_DLFCN])dnl
1841if test yes = "$cross_compiling"; then :
1842  [$4]
1843else
1844  lt_dlunknown=0; lt_dlno_uscore=1; lt_dlneed_uscore=2
1845  lt_status=$lt_dlunknown
1846  cat > conftest.$ac_ext <<_LT_EOF
1847[#line $LINENO "configure"
1848#include "confdefs.h"
1849
1850#if HAVE_DLFCN_H
1851#include <dlfcn.h>
1852#endif
1853
1854#include <stdio.h>
1855
1856#ifdef RTLD_GLOBAL
1857#  define LT_DLGLOBAL		RTLD_GLOBAL
1858#else
1859#  ifdef DL_GLOBAL
1860#    define LT_DLGLOBAL		DL_GLOBAL
1861#  else
1862#    define LT_DLGLOBAL		0
1863#  endif
1864#endif
1865
1866/* We may have to define LT_DLLAZY_OR_NOW in the command line if we
1867   find out it does not work in some platform. */
1868#ifndef LT_DLLAZY_OR_NOW
1869#  ifdef RTLD_LAZY
1870#    define LT_DLLAZY_OR_NOW		RTLD_LAZY
1871#  else
1872#    ifdef DL_LAZY
1873#      define LT_DLLAZY_OR_NOW		DL_LAZY
1874#    else
1875#      ifdef RTLD_NOW
1876#        define LT_DLLAZY_OR_NOW	RTLD_NOW
1877#      else
1878#        ifdef DL_NOW
1879#          define LT_DLLAZY_OR_NOW	DL_NOW
1880#        else
1881#          define LT_DLLAZY_OR_NOW	0
1882#        endif
1883#      endif
1884#    endif
1885#  endif
1886#endif
1887
1888/* When -fvisibility=hidden is used, assume the code has been annotated
1889   correspondingly for the symbols needed.  */
1890#if defined __GNUC__ && (((__GNUC__ == 3) && (__GNUC_MINOR__ >= 3)) || (__GNUC__ > 3))
1891int fnord () __attribute__((visibility("default")));
1892#endif
1893
1894int fnord () { return 42; }
1895int main ()
1896{
1897  void *self = dlopen (0, LT_DLGLOBAL|LT_DLLAZY_OR_NOW);
1898  int status = $lt_dlunknown;
1899
1900  if (self)
1901    {
1902      if (dlsym (self,"fnord"))       status = $lt_dlno_uscore;
1903      else
1904        {
1905	  if (dlsym( self,"_fnord"))  status = $lt_dlneed_uscore;
1906          else puts (dlerror ());
1907	}
1908      /* dlclose (self); */
1909    }
1910  else
1911    puts (dlerror ());
1912
1913  return status;
1914}]
1915_LT_EOF
1916  if AC_TRY_EVAL(ac_link) && test -s "conftest$ac_exeext" 2>/dev/null; then
1917    (./conftest; exit; ) >&AS_MESSAGE_LOG_FD 2>/dev/null
1918    lt_status=$?
1919    case x$lt_status in
1920      x$lt_dlno_uscore) $1 ;;
1921      x$lt_dlneed_uscore) $2 ;;
1922      x$lt_dlunknown|x*) $3 ;;
1923    esac
1924  else :
1925    # compilation failed
1926    $3
1927  fi
1928fi
1929rm -fr conftest*
1930])# _LT_TRY_DLOPEN_SELF
1931
1932
1933# LT_SYS_DLOPEN_SELF
1934# ------------------
1935AC_DEFUN([LT_SYS_DLOPEN_SELF],
1936[m4_require([_LT_HEADER_DLFCN])dnl
1937if test yes != "$enable_dlopen"; then
1938  enable_dlopen=unknown
1939  enable_dlopen_self=unknown
1940  enable_dlopen_self_static=unknown
1941else
1942  lt_cv_dlopen=no
1943  lt_cv_dlopen_libs=
1944
1945  case $host_os in
1946  beos*)
1947    lt_cv_dlopen=load_add_on
1948    lt_cv_dlopen_libs=
1949    lt_cv_dlopen_self=yes
1950    ;;
1951
1952  mingw* | pw32* | cegcc*)
1953    lt_cv_dlopen=LoadLibrary
1954    lt_cv_dlopen_libs=
1955    ;;
1956
1957  cygwin*)
1958    lt_cv_dlopen=dlopen
1959    lt_cv_dlopen_libs=
1960    ;;
1961
1962  darwin*)
1963    # if libdl is installed we need to link against it
1964    AC_CHECK_LIB([dl], [dlopen],
1965		[lt_cv_dlopen=dlopen lt_cv_dlopen_libs=-ldl],[
1966    lt_cv_dlopen=dyld
1967    lt_cv_dlopen_libs=
1968    lt_cv_dlopen_self=yes
1969    ])
1970    ;;
1971
1972  tpf*)
1973    # Don't try to run any link tests for TPF.  We know it's impossible
1974    # because TPF is a cross-compiler, and we know how we open DSOs.
1975    lt_cv_dlopen=dlopen
1976    lt_cv_dlopen_libs=
1977    lt_cv_dlopen_self=no
1978    ;;
1979
1980  *)
1981    AC_CHECK_FUNC([shl_load],
1982	  [lt_cv_dlopen=shl_load],
1983      [AC_CHECK_LIB([dld], [shl_load],
1984	    [lt_cv_dlopen=shl_load lt_cv_dlopen_libs=-ldld],
1985	[AC_CHECK_FUNC([dlopen],
1986	      [lt_cv_dlopen=dlopen],
1987	  [AC_CHECK_LIB([dl], [dlopen],
1988		[lt_cv_dlopen=dlopen lt_cv_dlopen_libs=-ldl],
1989	    [AC_CHECK_LIB([svld], [dlopen],
1990		  [lt_cv_dlopen=dlopen lt_cv_dlopen_libs=-lsvld],
1991	      [AC_CHECK_LIB([dld], [dld_link],
1992		    [lt_cv_dlopen=dld_link lt_cv_dlopen_libs=-ldld])
1993	      ])
1994	    ])
1995	  ])
1996	])
1997      ])
1998    ;;
1999  esac
2000
2001  if test no = "$lt_cv_dlopen"; then
2002    enable_dlopen=no
2003  else
2004    enable_dlopen=yes
2005  fi
2006
2007  case $lt_cv_dlopen in
2008  dlopen)
2009    save_CPPFLAGS=$CPPFLAGS
2010    test yes = "$ac_cv_header_dlfcn_h" && CPPFLAGS="$CPPFLAGS -DHAVE_DLFCN_H"
2011
2012    save_LDFLAGS=$LDFLAGS
2013    wl=$lt_prog_compiler_wl eval LDFLAGS=\"\$LDFLAGS $export_dynamic_flag_spec\"
2014
2015    save_LIBS=$LIBS
2016    LIBS="$lt_cv_dlopen_libs $LIBS"
2017
2018    AC_CACHE_CHECK([whether a program can dlopen itself],
2019	  lt_cv_dlopen_self, [dnl
2020	  _LT_TRY_DLOPEN_SELF(
2021	    lt_cv_dlopen_self=yes, lt_cv_dlopen_self=yes,
2022	    lt_cv_dlopen_self=no, lt_cv_dlopen_self=cross)
2023    ])
2024
2025    if test yes = "$lt_cv_dlopen_self"; then
2026      wl=$lt_prog_compiler_wl eval LDFLAGS=\"\$LDFLAGS $lt_prog_compiler_static\"
2027      AC_CACHE_CHECK([whether a statically linked program can dlopen itself],
2028	  lt_cv_dlopen_self_static, [dnl
2029	  _LT_TRY_DLOPEN_SELF(
2030	    lt_cv_dlopen_self_static=yes, lt_cv_dlopen_self_static=yes,
2031	    lt_cv_dlopen_self_static=no,  lt_cv_dlopen_self_static=cross)
2032      ])
2033    fi
2034
2035    CPPFLAGS=$save_CPPFLAGS
2036    LDFLAGS=$save_LDFLAGS
2037    LIBS=$save_LIBS
2038    ;;
2039  esac
2040
2041  case $lt_cv_dlopen_self in
2042  yes|no) enable_dlopen_self=$lt_cv_dlopen_self ;;
2043  *) enable_dlopen_self=unknown ;;
2044  esac
2045
2046  case $lt_cv_dlopen_self_static in
2047  yes|no) enable_dlopen_self_static=$lt_cv_dlopen_self_static ;;
2048  *) enable_dlopen_self_static=unknown ;;
2049  esac
2050fi
2051_LT_DECL([dlopen_support], [enable_dlopen], [0],
2052	 [Whether dlopen is supported])
2053_LT_DECL([dlopen_self], [enable_dlopen_self], [0],
2054	 [Whether dlopen of programs is supported])
2055_LT_DECL([dlopen_self_static], [enable_dlopen_self_static], [0],
2056	 [Whether dlopen of statically linked programs is supported])
2057])# LT_SYS_DLOPEN_SELF
2058
2059# Old name:
2060AU_ALIAS([AC_LIBTOOL_DLOPEN_SELF], [LT_SYS_DLOPEN_SELF])
2061dnl aclocal-1.4 backwards compatibility:
2062dnl AC_DEFUN([AC_LIBTOOL_DLOPEN_SELF], [])
2063
2064
2065# _LT_COMPILER_C_O([TAGNAME])
2066# ---------------------------
2067# Check to see if options -c and -o are simultaneously supported by compiler.
2068# This macro does not hard code the compiler like AC_PROG_CC_C_O.
2069m4_defun([_LT_COMPILER_C_O],
2070[m4_require([_LT_DECL_SED])dnl
2071m4_require([_LT_FILEUTILS_DEFAULTS])dnl
2072m4_require([_LT_TAG_COMPILER])dnl
2073AC_CACHE_CHECK([if $compiler supports -c -o file.$ac_objext],
2074  [_LT_TAGVAR(lt_cv_prog_compiler_c_o, $1)],
2075  [_LT_TAGVAR(lt_cv_prog_compiler_c_o, $1)=no
2076   $RM -r conftest 2>/dev/null
2077   mkdir conftest
2078   cd conftest
2079   mkdir out
2080   echo "$lt_simple_compile_test_code" > conftest.$ac_ext
2081
2082   lt_compiler_flag="-o out/conftest2.$ac_objext"
2083   # Insert the option either (1) after the last *FLAGS variable, or
2084   # (2) before a word containing "conftest.", or (3) at the end.
2085   # Note that $ac_compile itself does not contain backslashes and begins
2086   # with a dollar sign (not a hyphen), so the echo should work correctly.
2087   lt_compile=`echo "$ac_compile" | $SED \
2088   -e 's:.*FLAGS}\{0,1\} :&$lt_compiler_flag :; t' \
2089   -e 's: [[^ ]]*conftest\.: $lt_compiler_flag&:; t' \
2090   -e 's:$: $lt_compiler_flag:'`
2091   (eval echo "\"\$as_me:$LINENO: $lt_compile\"" >&AS_MESSAGE_LOG_FD)
2092   (eval "$lt_compile" 2>out/conftest.err)
2093   ac_status=$?
2094   cat out/conftest.err >&AS_MESSAGE_LOG_FD
2095   echo "$as_me:$LINENO: \$? = $ac_status" >&AS_MESSAGE_LOG_FD
2096   if (exit $ac_status) && test -s out/conftest2.$ac_objext
2097   then
2098     # The compiler can only warn and ignore the option if not recognized
2099     # So say no if there are warnings
2100     $ECHO "$_lt_compiler_boilerplate" | $SED '/^$/d' > out/conftest.exp
2101     $SED '/^$/d; /^ *+/d' out/conftest.err >out/conftest.er2
2102     if test ! -s out/conftest.er2 || diff out/conftest.exp out/conftest.er2 >/dev/null; then
2103       _LT_TAGVAR(lt_cv_prog_compiler_c_o, $1)=yes
2104     fi
2105   fi
2106   chmod u+w . 2>&AS_MESSAGE_LOG_FD
2107   $RM conftest*
2108   # SGI C++ compiler will create directory out/ii_files/ for
2109   # template instantiation
2110   test -d out/ii_files && $RM out/ii_files/* && rmdir out/ii_files
2111   $RM out/* && rmdir out
2112   cd ..
2113   $RM -r conftest
2114   $RM conftest*
2115])
2116_LT_TAGDECL([compiler_c_o], [lt_cv_prog_compiler_c_o], [1],
2117	[Does compiler simultaneously support -c and -o options?])
2118])# _LT_COMPILER_C_O
2119
2120
2121# _LT_COMPILER_FILE_LOCKS([TAGNAME])
2122# ----------------------------------
2123# Check to see if we can do hard links to lock some files if needed
2124m4_defun([_LT_COMPILER_FILE_LOCKS],
2125[m4_require([_LT_ENABLE_LOCK])dnl
2126m4_require([_LT_FILEUTILS_DEFAULTS])dnl
2127_LT_COMPILER_C_O([$1])
2128
2129hard_links=nottested
2130if test no = "$_LT_TAGVAR(lt_cv_prog_compiler_c_o, $1)" && test no != "$need_locks"; then
2131  # do not overwrite the value of need_locks provided by the user
2132  AC_MSG_CHECKING([if we can lock with hard links])
2133  hard_links=yes
2134  $RM conftest*
2135  ln conftest.a conftest.b 2>/dev/null && hard_links=no
2136  touch conftest.a
2137  ln conftest.a conftest.b 2>&5 || hard_links=no
2138  ln conftest.a conftest.b 2>/dev/null && hard_links=no
2139  AC_MSG_RESULT([$hard_links])
2140  if test no = "$hard_links"; then
2141    AC_MSG_WARN(['$CC' does not support '-c -o', so 'make -j' may be unsafe])
2142    need_locks=warn
2143  fi
2144else
2145  need_locks=no
2146fi
2147_LT_DECL([], [need_locks], [1], [Must we lock files when doing compilation?])
2148])# _LT_COMPILER_FILE_LOCKS
2149
2150
2151# _LT_CHECK_OBJDIR
2152# ----------------
2153m4_defun([_LT_CHECK_OBJDIR],
2154[AC_CACHE_CHECK([for objdir], [lt_cv_objdir],
2155[rm -f .libs 2>/dev/null
2156mkdir .libs 2>/dev/null
2157if test -d .libs; then
2158  lt_cv_objdir=.libs
2159else
2160  # MS-DOS does not allow filenames that begin with a dot.
2161  lt_cv_objdir=_libs
2162fi
2163rmdir .libs 2>/dev/null])
2164objdir=$lt_cv_objdir
2165_LT_DECL([], [objdir], [0],
2166         [The name of the directory that contains temporary libtool files])dnl
2167m4_pattern_allow([LT_OBJDIR])dnl
2168AC_DEFINE_UNQUOTED([LT_OBJDIR], "$lt_cv_objdir/",
2169  [Define to the sub-directory where libtool stores uninstalled libraries.])
2170])# _LT_CHECK_OBJDIR
2171
2172
2173# _LT_LINKER_HARDCODE_LIBPATH([TAGNAME])
2174# --------------------------------------
2175# Check hardcoding attributes.
2176m4_defun([_LT_LINKER_HARDCODE_LIBPATH],
2177[AC_MSG_CHECKING([how to hardcode library paths into programs])
2178_LT_TAGVAR(hardcode_action, $1)=
2179if test -n "$_LT_TAGVAR(hardcode_libdir_flag_spec, $1)" ||
2180   test -n "$_LT_TAGVAR(runpath_var, $1)" ||
2181   test yes = "$_LT_TAGVAR(hardcode_automatic, $1)"; then
2182
2183  # We can hardcode non-existent directories.
2184  if test no != "$_LT_TAGVAR(hardcode_direct, $1)" &&
2185     # If the only mechanism to avoid hardcoding is shlibpath_var, we
2186     # have to relink, otherwise we might link with an installed library
2187     # when we should be linking with a yet-to-be-installed one
2188     ## test no != "$_LT_TAGVAR(hardcode_shlibpath_var, $1)" &&
2189     test no != "$_LT_TAGVAR(hardcode_minus_L, $1)"; then
2190    # Linking always hardcodes the temporary library directory.
2191    _LT_TAGVAR(hardcode_action, $1)=relink
2192  else
2193    # We can link without hardcoding, and we can hardcode nonexisting dirs.
2194    _LT_TAGVAR(hardcode_action, $1)=immediate
2195  fi
2196else
2197  # We cannot hardcode anything, or else we can only hardcode existing
2198  # directories.
2199  _LT_TAGVAR(hardcode_action, $1)=unsupported
2200fi
2201AC_MSG_RESULT([$_LT_TAGVAR(hardcode_action, $1)])
2202
2203if test relink = "$_LT_TAGVAR(hardcode_action, $1)" ||
2204   test yes = "$_LT_TAGVAR(inherit_rpath, $1)"; then
2205  # Fast installation is not supported
2206  enable_fast_install=no
2207elif test yes = "$shlibpath_overrides_runpath" ||
2208     test no = "$enable_shared"; then
2209  # Fast installation is not necessary
2210  enable_fast_install=needless
2211fi
2212_LT_TAGDECL([], [hardcode_action], [0],
2213    [How to hardcode a shared library path into an executable])
2214])# _LT_LINKER_HARDCODE_LIBPATH
2215
2216
2217# _LT_CMD_STRIPLIB
2218# ----------------
2219m4_defun([_LT_CMD_STRIPLIB],
2220[m4_require([_LT_DECL_EGREP])
2221striplib=
2222old_striplib=
2223AC_MSG_CHECKING([whether stripping libraries is possible])
2224if test -n "$STRIP" && $STRIP -V 2>&1 | $GREP "GNU strip" >/dev/null; then
2225  test -z "$old_striplib" && old_striplib="$STRIP --strip-debug"
2226  test -z "$striplib" && striplib="$STRIP --strip-unneeded"
2227  AC_MSG_RESULT([yes])
2228else
2229# FIXME - insert some real tests, host_os isn't really good enough
2230  case $host_os in
2231  darwin*)
2232    if test -n "$STRIP"; then
2233      striplib="$STRIP -x"
2234      old_striplib="$STRIP -S"
2235      AC_MSG_RESULT([yes])
2236    else
2237      AC_MSG_RESULT([no])
2238    fi
2239    ;;
2240  *)
2241    AC_MSG_RESULT([no])
2242    ;;
2243  esac
2244fi
2245_LT_DECL([], [old_striplib], [1], [Commands to strip libraries])
2246_LT_DECL([], [striplib], [1])
2247])# _LT_CMD_STRIPLIB
2248
2249
2250# _LT_PREPARE_MUNGE_PATH_LIST
2251# ---------------------------
2252# Make sure func_munge_path_list() is defined correctly.
2253m4_defun([_LT_PREPARE_MUNGE_PATH_LIST],
2254[[# func_munge_path_list VARIABLE PATH
2255# -----------------------------------
2256# VARIABLE is name of variable containing _space_ separated list of
2257# directories to be munged by the contents of PATH, which is string
2258# having a format:
2259# "DIR[:DIR]:"
2260#       string "DIR[ DIR]" will be prepended to VARIABLE
2261# ":DIR[:DIR]"
2262#       string "DIR[ DIR]" will be appended to VARIABLE
2263# "DIRP[:DIRP]::[DIRA:]DIRA"
2264#       string "DIRP[ DIRP]" will be prepended to VARIABLE and string
2265#       "DIRA[ DIRA]" will be appended to VARIABLE
2266# "DIR[:DIR]"
2267#       VARIABLE will be replaced by "DIR[ DIR]"
2268func_munge_path_list ()
2269{
2270    case x@S|@2 in
2271    x)
2272        ;;
2273    *:)
2274        eval @S|@1=\"`$ECHO @S|@2 | $SED 's/:/ /g'` \@S|@@S|@1\"
2275        ;;
2276    x:*)
2277        eval @S|@1=\"\@S|@@S|@1 `$ECHO @S|@2 | $SED 's/:/ /g'`\"
2278        ;;
2279    *::*)
2280        eval @S|@1=\"\@S|@@S|@1\ `$ECHO @S|@2 | $SED -e 's/.*:://' -e 's/:/ /g'`\"
2281        eval @S|@1=\"`$ECHO @S|@2 | $SED -e 's/::.*//' -e 's/:/ /g'`\ \@S|@@S|@1\"
2282        ;;
2283    *)
2284        eval @S|@1=\"`$ECHO @S|@2 | $SED 's/:/ /g'`\"
2285        ;;
2286    esac
2287}
2288]])# _LT_PREPARE_PATH_LIST
2289
2290
2291# _LT_SYS_DYNAMIC_LINKER([TAG])
2292# -----------------------------
2293# PORTME Fill in your ld.so characteristics
2294m4_defun([_LT_SYS_DYNAMIC_LINKER],
2295[AC_REQUIRE([AC_CANONICAL_HOST])dnl
2296m4_require([_LT_DECL_EGREP])dnl
2297m4_require([_LT_FILEUTILS_DEFAULTS])dnl
2298m4_require([_LT_DECL_OBJDUMP])dnl
2299m4_require([_LT_DECL_SED])dnl
2300m4_require([_LT_CHECK_SHELL_FEATURES])dnl
2301m4_require([_LT_PREPARE_MUNGE_PATH_LIST])dnl
2302AC_MSG_CHECKING([dynamic linker characteristics])
2303m4_if([$1],
2304	[], [
2305if test yes = "$GCC"; then
2306  case $host_os in
2307    darwin*) lt_awk_arg='/^libraries:/,/LR/' ;;
2308    *) lt_awk_arg='/^libraries:/' ;;
2309  esac
2310  case $host_os in
2311    mingw* | cegcc*) lt_sed_strip_eq='s|=\([[A-Za-z]]:\)|\1|g' ;;
2312    *) lt_sed_strip_eq='s|=/|/|g' ;;
2313  esac
2314  lt_search_path_spec=`$CC -print-search-dirs | awk $lt_awk_arg | $SED -e "s/^libraries://" -e $lt_sed_strip_eq`
2315  case $lt_search_path_spec in
2316  *\;*)
2317    # if the path contains ";" then we assume it to be the separator
2318    # otherwise default to the standard path separator (i.e. ":") - it is
2319    # assumed that no part of a normal pathname contains ";" but that should
2320    # okay in the real world where ";" in dirpaths is itself problematic.
2321    lt_search_path_spec=`$ECHO "$lt_search_path_spec" | $SED 's/;/ /g'`
2322    ;;
2323  *)
2324    lt_search_path_spec=`$ECHO "$lt_search_path_spec" | $SED "s/$PATH_SEPARATOR/ /g"`
2325    ;;
2326  esac
2327  # Ok, now we have the path, separated by spaces, we can step through it
2328  # and add multilib dir if necessary...
2329  lt_tmp_lt_search_path_spec=
2330  lt_multi_os_dir=/`$CC $CPPFLAGS $CFLAGS $LDFLAGS -print-multi-os-directory 2>/dev/null`
2331  # ...but if some path component already ends with the multilib dir we assume
2332  # that all is fine and trust -print-search-dirs as is (GCC 4.2? or newer).
2333  case "$lt_multi_os_dir; $lt_search_path_spec " in
2334  "/; "* | "/.; "* | "/./; "* | *"$lt_multi_os_dir "* | *"$lt_multi_os_dir/ "*)
2335    lt_multi_os_dir=
2336    ;;
2337  esac
2338  for lt_sys_path in $lt_search_path_spec; do
2339    if test -d "$lt_sys_path$lt_multi_os_dir"; then
2340      lt_tmp_lt_search_path_spec="$lt_tmp_lt_search_path_spec $lt_sys_path$lt_multi_os_dir"
2341    elif test -n "$lt_multi_os_dir"; then
2342      test -d "$lt_sys_path" && \
2343	lt_tmp_lt_search_path_spec="$lt_tmp_lt_search_path_spec $lt_sys_path"
2344    fi
2345  done
2346  lt_search_path_spec=`$ECHO "$lt_tmp_lt_search_path_spec" | awk '
2347BEGIN {RS = " "; FS = "/|\n";} {
2348  lt_foo = "";
2349  lt_count = 0;
2350  for (lt_i = NF; lt_i > 0; lt_i--) {
2351    if ($lt_i != "" && $lt_i != ".") {
2352      if ($lt_i == "..") {
2353        lt_count++;
2354      } else {
2355        if (lt_count == 0) {
2356          lt_foo = "/" $lt_i lt_foo;
2357        } else {
2358          lt_count--;
2359        }
2360      }
2361    }
2362  }
2363  if (lt_foo != "") { lt_freq[[lt_foo]]++; }
2364  if (lt_freq[[lt_foo]] == 1) { print lt_foo; }
2365}'`
2366  # AWK program above erroneously prepends '/' to C:/dos/paths
2367  # for these hosts.
2368  case $host_os in
2369    mingw* | cegcc*) lt_search_path_spec=`$ECHO "$lt_search_path_spec" |\
2370      $SED 's|/\([[A-Za-z]]:\)|\1|g'` ;;
2371  esac
2372  sys_lib_search_path_spec=`$ECHO "$lt_search_path_spec" | $lt_NL2SP`
2373else
2374  sys_lib_search_path_spec="/lib /usr/lib /usr/local/lib"
2375fi])
2376library_names_spec=
2377libname_spec='lib$name'
2378soname_spec=
2379shrext_cmds=.so
2380postinstall_cmds=
2381postuninstall_cmds=
2382finish_cmds=
2383finish_eval=
2384shlibpath_var=
2385shlibpath_overrides_runpath=unknown
2386version_type=none
2387dynamic_linker="$host_os ld.so"
2388sys_lib_dlsearch_path_spec="/lib /usr/lib"
2389need_lib_prefix=unknown
2390hardcode_into_libs=no
2391
2392# when you set need_version to no, make sure it does not cause -set_version
2393# flags to be left without arguments
2394need_version=unknown
2395
2396AC_ARG_VAR([LT_SYS_LIBRARY_PATH],
2397[User-defined run-time library search path.])
2398
2399case $host_os in
2400aix3*)
2401  version_type=linux # correct to gnu/linux during the next big refactor
2402  library_names_spec='$libname$release$shared_ext$versuffix $libname.a'
2403  shlibpath_var=LIBPATH
2404
2405  # AIX 3 has no versioning support, so we append a major version to the name.
2406  soname_spec='$libname$release$shared_ext$major'
2407  ;;
2408
2409aix[[4-9]]*)
2410  version_type=linux # correct to gnu/linux during the next big refactor
2411  need_lib_prefix=no
2412  need_version=no
2413  hardcode_into_libs=yes
2414  if test ia64 = "$host_cpu"; then
2415    # AIX 5 supports IA64
2416    library_names_spec='$libname$release$shared_ext$major $libname$release$shared_ext$versuffix $libname$shared_ext'
2417    shlibpath_var=LD_LIBRARY_PATH
2418  else
2419    # With GCC up to 2.95.x, collect2 would create an import file
2420    # for dependence libraries.  The import file would start with
2421    # the line '#! .'.  This would cause the generated library to
2422    # depend on '.', always an invalid library.  This was fixed in
2423    # development snapshots of GCC prior to 3.0.
2424    case $host_os in
2425      aix4 | aix4.[[01]] | aix4.[[01]].*)
2426      if { echo '#if __GNUC__ > 2 || (__GNUC__ == 2 && __GNUC_MINOR__ >= 97)'
2427	   echo ' yes '
2428	   echo '#endif'; } | $CC -E - | $GREP yes > /dev/null; then
2429	:
2430      else
2431	can_build_shared=no
2432      fi
2433      ;;
2434    esac
2435    # Using Import Files as archive members, it is possible to support
2436    # filename-based versioning of shared library archives on AIX. While
2437    # this would work for both with and without runtime linking, it will
2438    # prevent static linking of such archives. So we do filename-based
2439    # shared library versioning with .so extension only, which is used
2440    # when both runtime linking and shared linking is enabled.
2441    # Unfortunately, runtime linking may impact performance, so we do
2442    # not want this to be the default eventually. Also, we use the
2443    # versioned .so libs for executables only if there is the -brtl
2444    # linker flag in LDFLAGS as well, or --with-aix-soname=svr4 only.
2445    # To allow for filename-based versioning support, we need to create
2446    # libNAME.so.V as an archive file, containing:
2447    # *) an Import File, referring to the versioned filename of the
2448    #    archive as well as the shared archive member, telling the
2449    #    bitwidth (32 or 64) of that shared object, and providing the
2450    #    list of exported symbols of that shared object, eventually
2451    #    decorated with the 'weak' keyword
2452    # *) the shared object with the F_LOADONLY flag set, to really avoid
2453    #    it being seen by the linker.
2454    # At run time we better use the real file rather than another symlink,
2455    # but for link time we create the symlink libNAME.so -> libNAME.so.V
2456
2457    case $with_aix_soname,$aix_use_runtimelinking in
2458    # AIX (on Power*) has no versioning support, so currently we cannot hardcode correct
2459    # soname into executable. Probably we can add versioning support to
2460    # collect2, so additional links can be useful in future.
2461    aix,yes) # traditional libtool
2462      dynamic_linker='AIX unversionable lib.so'
2463      # If using run time linking (on AIX 4.2 or later) use lib<name>.so
2464      # instead of lib<name>.a to let people know that these are not
2465      # typical AIX shared libraries.
2466      library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$shared_ext'
2467      ;;
2468    aix,no) # traditional AIX only
2469      dynamic_linker='AIX lib.a[(]lib.so.V[)]'
2470      # We preserve .a as extension for shared libraries through AIX4.2
2471      # and later when we are not doing run time linking.
2472      library_names_spec='$libname$release.a $libname.a'
2473      soname_spec='$libname$release$shared_ext$major'
2474      ;;
2475    svr4,*) # full svr4 only
2476      dynamic_linker="AIX lib.so.V[(]$shared_archive_member_spec.o[)]"
2477      library_names_spec='$libname$release$shared_ext$major $libname$shared_ext'
2478      # We do not specify a path in Import Files, so LIBPATH fires.
2479      shlibpath_overrides_runpath=yes
2480      ;;
2481    *,yes) # both, prefer svr4
2482      dynamic_linker="AIX lib.so.V[(]$shared_archive_member_spec.o[)], lib.a[(]lib.so.V[)]"
2483      library_names_spec='$libname$release$shared_ext$major $libname$shared_ext'
2484      # unpreferred sharedlib libNAME.a needs extra handling
2485      postinstall_cmds='test -n "$linkname" || linkname="$realname"~func_stripname "" ".so" "$linkname"~$install_shared_prog "$dir/$func_stripname_result.$libext" "$destdir/$func_stripname_result.$libext"~test -z "$tstripme" || test -z "$striplib" || $striplib "$destdir/$func_stripname_result.$libext"'
2486      postuninstall_cmds='for n in $library_names $old_library; do :; done~func_stripname "" ".so" "$n"~test "$func_stripname_result" = "$n" || func_append rmfiles " $odir/$func_stripname_result.$libext"'
2487      # We do not specify a path in Import Files, so LIBPATH fires.
2488      shlibpath_overrides_runpath=yes
2489      ;;
2490    *,no) # both, prefer aix
2491      dynamic_linker="AIX lib.a[(]lib.so.V[)], lib.so.V[(]$shared_archive_member_spec.o[)]"
2492      library_names_spec='$libname$release.a $libname.a'
2493      soname_spec='$libname$release$shared_ext$major'
2494      # unpreferred sharedlib libNAME.so.V and symlink libNAME.so need extra handling
2495      postinstall_cmds='test -z "$dlname" || $install_shared_prog $dir/$dlname $destdir/$dlname~test -z "$tstripme" || test -z "$striplib" || $striplib $destdir/$dlname~test -n "$linkname" || linkname=$realname~func_stripname "" ".a" "$linkname"~(cd "$destdir" && $LN_S -f $dlname $func_stripname_result.so)'
2496      postuninstall_cmds='test -z "$dlname" || func_append rmfiles " $odir/$dlname"~for n in $old_library $library_names; do :; done~func_stripname "" ".a" "$n"~func_append rmfiles " $odir/$func_stripname_result.so"'
2497      ;;
2498    esac
2499    shlibpath_var=LIBPATH
2500  fi
2501  ;;
2502
2503amigaos*)
2504  case $host_cpu in
2505  powerpc)
2506    # Since July 2007 AmigaOS4 officially supports .so libraries.
2507    # When compiling the executable, add -use-dynld -Lsobjs: to the compileline.
2508    library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$shared_ext'
2509    ;;
2510  m68k)
2511    library_names_spec='$libname.ixlibrary $libname.a'
2512    # Create ${libname}_ixlibrary.a entries in /sys/libs.
2513    finish_eval='for lib in `ls $libdir/*.ixlibrary 2>/dev/null`; do libname=`func_echo_all "$lib" | $SED '\''s%^.*/\([[^/]]*\)\.ixlibrary$%\1%'\''`; $RM /sys/libs/${libname}_ixlibrary.a; $show "cd /sys/libs && $LN_S $lib ${libname}_ixlibrary.a"; cd /sys/libs && $LN_S $lib ${libname}_ixlibrary.a || exit 1; done'
2514    ;;
2515  esac
2516  ;;
2517
2518beos*)
2519  library_names_spec='$libname$shared_ext'
2520  dynamic_linker="$host_os ld.so"
2521  shlibpath_var=LIBRARY_PATH
2522  ;;
2523
2524bsdi[[45]]*)
2525  version_type=linux # correct to gnu/linux during the next big refactor
2526  need_version=no
2527  library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$shared_ext'
2528  soname_spec='$libname$release$shared_ext$major'
2529  finish_cmds='PATH="\$PATH:/sbin" ldconfig $libdir'
2530  shlibpath_var=LD_LIBRARY_PATH
2531  sys_lib_search_path_spec="/shlib /usr/lib /usr/X11/lib /usr/contrib/lib /lib /usr/local/lib"
2532  sys_lib_dlsearch_path_spec="/shlib /usr/lib /usr/local/lib"
2533  # the default ld.so.conf also contains /usr/contrib/lib and
2534  # /usr/X11R6/lib (/usr/X11 is a link to /usr/X11R6), but let us allow
2535  # libtool to hard-code these into programs
2536  ;;
2537
2538cygwin* | mingw* | pw32* | cegcc*)
2539  version_type=windows
2540  shrext_cmds=.dll
2541  need_version=no
2542  need_lib_prefix=no
2543
2544  case $GCC,$cc_basename in
2545  yes,*)
2546    # gcc
2547    library_names_spec='$libname.dll.a'
2548    # DLL is installed to $(libdir)/../bin by postinstall_cmds
2549    postinstall_cmds='base_file=`basename \$file`~
2550      dlpath=`$SHELL 2>&1 -c '\''. $dir/'\''\$base_file'\''i; echo \$dlname'\''`~
2551      dldir=$destdir/`dirname \$dlpath`~
2552      test -d \$dldir || mkdir -p \$dldir~
2553      $install_prog $dir/$dlname \$dldir/$dlname~
2554      chmod a+x \$dldir/$dlname~
2555      if test -n '\''$stripme'\'' && test -n '\''$striplib'\''; then
2556        eval '\''$striplib \$dldir/$dlname'\'' || exit \$?;
2557      fi'
2558    postuninstall_cmds='dldll=`$SHELL 2>&1 -c '\''. $file; echo \$dlname'\''`~
2559      dlpath=$dir/\$dldll~
2560       $RM \$dlpath'
2561    shlibpath_overrides_runpath=yes
2562
2563    case $host_os in
2564    cygwin*)
2565      # Cygwin DLLs use 'cyg' prefix rather than 'lib'
2566      soname_spec='`echo $libname | sed -e 's/^lib/cyg/'``echo $release | $SED -e 's/[[.]]/-/g'`$versuffix$shared_ext'
2567m4_if([$1], [],[
2568      sys_lib_search_path_spec="$sys_lib_search_path_spec /usr/lib/w32api"])
2569      ;;
2570    mingw* | cegcc*)
2571      # MinGW DLLs use traditional 'lib' prefix
2572      soname_spec='$libname`echo $release | $SED -e 's/[[.]]/-/g'`$versuffix$shared_ext'
2573      ;;
2574    pw32*)
2575      # pw32 DLLs use 'pw' prefix rather than 'lib'
2576      library_names_spec='`echo $libname | sed -e 's/^lib/pw/'``echo $release | $SED -e 's/[[.]]/-/g'`$versuffix$shared_ext'
2577      ;;
2578    esac
2579    dynamic_linker='Win32 ld.exe'
2580    ;;
2581
2582  *,cl*)
2583    # Native MSVC
2584    libname_spec='$name'
2585    soname_spec='$libname`echo $release | $SED -e 's/[[.]]/-/g'`$versuffix$shared_ext'
2586    library_names_spec='$libname.dll.lib'
2587
2588    case $build_os in
2589    mingw*)
2590      sys_lib_search_path_spec=
2591      lt_save_ifs=$IFS
2592      IFS=';'
2593      for lt_path in $LIB
2594      do
2595        IFS=$lt_save_ifs
2596        # Let DOS variable expansion print the short 8.3 style file name.
2597        lt_path=`cd "$lt_path" 2>/dev/null && cmd //C "for %i in (".") do @echo %~si"`
2598        sys_lib_search_path_spec="$sys_lib_search_path_spec $lt_path"
2599      done
2600      IFS=$lt_save_ifs
2601      # Convert to MSYS style.
2602      sys_lib_search_path_spec=`$ECHO "$sys_lib_search_path_spec" | sed -e 's|\\\\|/|g' -e 's| \\([[a-zA-Z]]\\):| /\\1|g' -e 's|^ ||'`
2603      ;;
2604    cygwin*)
2605      # Convert to unix form, then to dos form, then back to unix form
2606      # but this time dos style (no spaces!) so that the unix form looks
2607      # like /cygdrive/c/PROGRA~1:/cygdr...
2608      sys_lib_search_path_spec=`cygpath --path --unix "$LIB"`
2609      sys_lib_search_path_spec=`cygpath --path --dos "$sys_lib_search_path_spec" 2>/dev/null`
2610      sys_lib_search_path_spec=`cygpath --path --unix "$sys_lib_search_path_spec" | $SED -e "s/$PATH_SEPARATOR/ /g"`
2611      ;;
2612    *)
2613      sys_lib_search_path_spec=$LIB
2614      if $ECHO "$sys_lib_search_path_spec" | [$GREP ';[c-zC-Z]:/' >/dev/null]; then
2615        # It is most probably a Windows format PATH.
2616        sys_lib_search_path_spec=`$ECHO "$sys_lib_search_path_spec" | $SED -e 's/;/ /g'`
2617      else
2618        sys_lib_search_path_spec=`$ECHO "$sys_lib_search_path_spec" | $SED -e "s/$PATH_SEPARATOR/ /g"`
2619      fi
2620      # FIXME: find the short name or the path components, as spaces are
2621      # common. (e.g. "Program Files" -> "PROGRA~1")
2622      ;;
2623    esac
2624
2625    # DLL is installed to $(libdir)/../bin by postinstall_cmds
2626    postinstall_cmds='base_file=`basename \$file`~
2627      dlpath=`$SHELL 2>&1 -c '\''. $dir/'\''\$base_file'\''i; echo \$dlname'\''`~
2628      dldir=$destdir/`dirname \$dlpath`~
2629      test -d \$dldir || mkdir -p \$dldir~
2630      $install_prog $dir/$dlname \$dldir/$dlname'
2631    postuninstall_cmds='dldll=`$SHELL 2>&1 -c '\''. $file; echo \$dlname'\''`~
2632      dlpath=$dir/\$dldll~
2633       $RM \$dlpath'
2634    shlibpath_overrides_runpath=yes
2635    dynamic_linker='Win32 link.exe'
2636    ;;
2637
2638  *)
2639    # Assume MSVC wrapper
2640    library_names_spec='$libname`echo $release | $SED -e 's/[[.]]/-/g'`$versuffix$shared_ext $libname.lib'
2641    dynamic_linker='Win32 ld.exe'
2642    ;;
2643  esac
2644  # FIXME: first we should search . and the directory the executable is in
2645  shlibpath_var=PATH
2646  ;;
2647
2648darwin* | rhapsody*)
2649  dynamic_linker="$host_os dyld"
2650  version_type=darwin
2651  need_lib_prefix=no
2652  need_version=no
2653  library_names_spec='$libname$release$major$shared_ext $libname$shared_ext'
2654  soname_spec='$libname$release$major$shared_ext'
2655  shlibpath_overrides_runpath=yes
2656  shlibpath_var=DYLD_LIBRARY_PATH
2657  shrext_cmds='`test .$module = .yes && echo .so || echo .dylib`'
2658m4_if([$1], [],[
2659  sys_lib_search_path_spec="$sys_lib_search_path_spec /usr/local/lib"])
2660  sys_lib_dlsearch_path_spec='/usr/local/lib /lib /usr/lib'
2661  ;;
2662
2663dgux*)
2664  version_type=linux # correct to gnu/linux during the next big refactor
2665  need_lib_prefix=no
2666  need_version=no
2667  library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$shared_ext'
2668  soname_spec='$libname$release$shared_ext$major'
2669  shlibpath_var=LD_LIBRARY_PATH
2670  ;;
2671
2672freebsd* | dragonfly*)
2673  # DragonFly does not have aout.  When/if they implement a new
2674  # versioning mechanism, adjust this.
2675  if test -x /usr/bin/objformat; then
2676    objformat=`/usr/bin/objformat`
2677  else
2678    case $host_os in
2679    freebsd[[23]].*) objformat=aout ;;
2680    *) objformat=elf ;;
2681    esac
2682  fi
2683  version_type=freebsd-$objformat
2684  case $version_type in
2685    freebsd-elf*)
2686      library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$shared_ext'
2687      soname_spec='$libname$release$shared_ext$major'
2688      need_version=no
2689      need_lib_prefix=no
2690      ;;
2691    freebsd-*)
2692      library_names_spec='$libname$release$shared_ext$versuffix $libname$shared_ext$versuffix'
2693      need_version=yes
2694      ;;
2695  esac
2696  shlibpath_var=LD_LIBRARY_PATH
2697  case $host_os in
2698  freebsd2.*)
2699    shlibpath_overrides_runpath=yes
2700    ;;
2701  freebsd3.[[01]]* | freebsdelf3.[[01]]*)
2702    shlibpath_overrides_runpath=yes
2703    hardcode_into_libs=yes
2704    ;;
2705  freebsd3.[[2-9]]* | freebsdelf3.[[2-9]]* | \
2706  freebsd4.[[0-5]] | freebsdelf4.[[0-5]] | freebsd4.1.1 | freebsdelf4.1.1)
2707    shlibpath_overrides_runpath=no
2708    hardcode_into_libs=yes
2709    ;;
2710  *) # from 4.6 on, and DragonFly
2711    shlibpath_overrides_runpath=yes
2712    hardcode_into_libs=yes
2713    ;;
2714  esac
2715  ;;
2716
2717haiku*)
2718  version_type=linux # correct to gnu/linux during the next big refactor
2719  need_lib_prefix=no
2720  need_version=no
2721  dynamic_linker="$host_os runtime_loader"
2722  library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$shared_ext'
2723  soname_spec='$libname$release$shared_ext$major'
2724  shlibpath_var=LIBRARY_PATH
2725  shlibpath_overrides_runpath=no
2726  sys_lib_dlsearch_path_spec='/boot/home/config/lib /boot/common/lib /boot/system/lib'
2727  hardcode_into_libs=yes
2728  ;;
2729
2730hpux9* | hpux10* | hpux11*)
2731  # Give a soname corresponding to the major version so that dld.sl refuses to
2732  # link against other versions.
2733  version_type=sunos
2734  need_lib_prefix=no
2735  need_version=no
2736  case $host_cpu in
2737  ia64*)
2738    shrext_cmds='.so'
2739    hardcode_into_libs=yes
2740    dynamic_linker="$host_os dld.so"
2741    shlibpath_var=LD_LIBRARY_PATH
2742    shlibpath_overrides_runpath=yes # Unless +noenvvar is specified.
2743    library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$shared_ext'
2744    soname_spec='$libname$release$shared_ext$major'
2745    if test 32 = "$HPUX_IA64_MODE"; then
2746      sys_lib_search_path_spec="/usr/lib/hpux32 /usr/local/lib/hpux32 /usr/local/lib"
2747      sys_lib_dlsearch_path_spec=/usr/lib/hpux32
2748    else
2749      sys_lib_search_path_spec="/usr/lib/hpux64 /usr/local/lib/hpux64"
2750      sys_lib_dlsearch_path_spec=/usr/lib/hpux64
2751    fi
2752    ;;
2753  hppa*64*)
2754    shrext_cmds='.sl'
2755    hardcode_into_libs=yes
2756    dynamic_linker="$host_os dld.sl"
2757    shlibpath_var=LD_LIBRARY_PATH # How should we handle SHLIB_PATH
2758    shlibpath_overrides_runpath=yes # Unless +noenvvar is specified.
2759    library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$shared_ext'
2760    soname_spec='$libname$release$shared_ext$major'
2761    sys_lib_search_path_spec="/usr/lib/pa20_64 /usr/ccs/lib/pa20_64"
2762    sys_lib_dlsearch_path_spec=$sys_lib_search_path_spec
2763    ;;
2764  *)
2765    shrext_cmds='.sl'
2766    dynamic_linker="$host_os dld.sl"
2767    shlibpath_var=SHLIB_PATH
2768    shlibpath_overrides_runpath=no # +s is required to enable SHLIB_PATH
2769    library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$shared_ext'
2770    soname_spec='$libname$release$shared_ext$major'
2771    ;;
2772  esac
2773  # HP-UX runs *really* slowly unless shared libraries are mode 555, ...
2774  postinstall_cmds='chmod 555 $lib'
2775  # or fails outright, so override atomically:
2776  install_override_mode=555
2777  ;;
2778
2779interix[[3-9]]*)
2780  version_type=linux # correct to gnu/linux during the next big refactor
2781  need_lib_prefix=no
2782  need_version=no
2783  library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$shared_ext'
2784  soname_spec='$libname$release$shared_ext$major'
2785  dynamic_linker='Interix 3.x ld.so.1 (PE, like ELF)'
2786  shlibpath_var=LD_LIBRARY_PATH
2787  shlibpath_overrides_runpath=no
2788  hardcode_into_libs=yes
2789  ;;
2790
2791irix5* | irix6* | nonstopux*)
2792  case $host_os in
2793    nonstopux*) version_type=nonstopux ;;
2794    *)
2795	if test yes = "$lt_cv_prog_gnu_ld"; then
2796		version_type=linux # correct to gnu/linux during the next big refactor
2797	else
2798		version_type=irix
2799	fi ;;
2800  esac
2801  need_lib_prefix=no
2802  need_version=no
2803  soname_spec='$libname$release$shared_ext$major'
2804  library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$release$shared_ext $libname$shared_ext'
2805  case $host_os in
2806  irix5* | nonstopux*)
2807    libsuff= shlibsuff=
2808    ;;
2809  *)
2810    case $LD in # libtool.m4 will add one of these switches to LD
2811    *-32|*"-32 "|*-melf32bsmip|*"-melf32bsmip ")
2812      libsuff= shlibsuff= libmagic=32-bit;;
2813    *-n32|*"-n32 "|*-melf32bmipn32|*"-melf32bmipn32 ")
2814      libsuff=32 shlibsuff=N32 libmagic=N32;;
2815    *-64|*"-64 "|*-melf64bmip|*"-melf64bmip ")
2816      libsuff=64 shlibsuff=64 libmagic=64-bit;;
2817    *) libsuff= shlibsuff= libmagic=never-match;;
2818    esac
2819    ;;
2820  esac
2821  shlibpath_var=LD_LIBRARY${shlibsuff}_PATH
2822  shlibpath_overrides_runpath=no
2823  sys_lib_search_path_spec="/usr/lib$libsuff /lib$libsuff /usr/local/lib$libsuff"
2824  sys_lib_dlsearch_path_spec="/usr/lib$libsuff /lib$libsuff"
2825  hardcode_into_libs=yes
2826  ;;
2827
2828# No shared lib support for Linux oldld, aout, or coff.
2829linux*oldld* | linux*aout* | linux*coff*)
2830  dynamic_linker=no
2831  ;;
2832
2833linux*android*)
2834  version_type=none # Android doesn't support versioned libraries.
2835  need_lib_prefix=no
2836  need_version=no
2837  library_names_spec='$libname$release$shared_ext'
2838  soname_spec='$libname$release$shared_ext'
2839  finish_cmds=
2840  shlibpath_var=LD_LIBRARY_PATH
2841  shlibpath_overrides_runpath=yes
2842
2843  # This implies no fast_install, which is unacceptable.
2844  # Some rework will be needed to allow for fast_install
2845  # before this can be enabled.
2846  hardcode_into_libs=yes
2847
2848  dynamic_linker='Android linker'
2849  # Don't embed -rpath directories since the linker doesn't support them.
2850  _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-L$libdir'
2851  ;;
2852
2853# This must be glibc/ELF.
2854linux* | k*bsd*-gnu | kopensolaris*-gnu | gnu*)
2855  version_type=linux # correct to gnu/linux during the next big refactor
2856  need_lib_prefix=no
2857  need_version=no
2858  library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$shared_ext'
2859  soname_spec='$libname$release$shared_ext$major'
2860  finish_cmds='PATH="\$PATH:/sbin" ldconfig -n $libdir'
2861  shlibpath_var=LD_LIBRARY_PATH
2862  shlibpath_overrides_runpath=no
2863
2864  # Some binutils ld are patched to set DT_RUNPATH
2865  AC_CACHE_VAL([lt_cv_shlibpath_overrides_runpath],
2866    [lt_cv_shlibpath_overrides_runpath=no
2867    save_LDFLAGS=$LDFLAGS
2868    save_libdir=$libdir
2869    eval "libdir=/foo; wl=\"$_LT_TAGVAR(lt_prog_compiler_wl, $1)\"; \
2870	 LDFLAGS=\"\$LDFLAGS $_LT_TAGVAR(hardcode_libdir_flag_spec, $1)\""
2871    AC_LINK_IFELSE([AC_LANG_PROGRAM([],[])],
2872      [AS_IF([ ($OBJDUMP -p conftest$ac_exeext) 2>/dev/null | grep "RUNPATH.*$libdir" >/dev/null],
2873	 [lt_cv_shlibpath_overrides_runpath=yes])])
2874    LDFLAGS=$save_LDFLAGS
2875    libdir=$save_libdir
2876    ])
2877  shlibpath_overrides_runpath=$lt_cv_shlibpath_overrides_runpath
2878
2879  # This implies no fast_install, which is unacceptable.
2880  # Some rework will be needed to allow for fast_install
2881  # before this can be enabled.
2882  hardcode_into_libs=yes
2883
2884  # Ideally, we could use ldconfig to report *all* directores which are
2885  # searched for libraries, however this is still not possible.  Aside from not
2886  # being certain /sbin/ldconfig is available, command
2887  # 'ldconfig -N -X -v | grep ^/' on 64bit Fedora does not report /usr/lib64,
2888  # even though it is searched at run-time.  Try to do the best guess by
2889  # appending ld.so.conf contents (and includes) to the search path.
2890  if test -f /etc/ld.so.conf; then
2891    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' ' '`
2892    sys_lib_dlsearch_path_spec="/lib /usr/lib $lt_ld_extra"
2893  fi
2894
2895  # We used to test for /lib/ld.so.1 and disable shared libraries on
2896  # powerpc, because MkLinux only supported shared libraries with the
2897  # GNU dynamic linker.  Since this was broken with cross compilers,
2898  # most powerpc-linux boxes support dynamic linking these days and
2899  # people can always --disable-shared, the test was removed, and we
2900  # assume the GNU/Linux dynamic linker is in use.
2901  dynamic_linker='GNU/Linux ld.so'
2902  ;;
2903
2904netbsdelf*-gnu)
2905  version_type=linux
2906  need_lib_prefix=no
2907  need_version=no
2908  library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major ${libname}${shared_ext}'
2909  soname_spec='${libname}${release}${shared_ext}$major'
2910  shlibpath_var=LD_LIBRARY_PATH
2911  shlibpath_overrides_runpath=no
2912  hardcode_into_libs=yes
2913  dynamic_linker='NetBSD ld.elf_so'
2914  ;;
2915
2916netbsd*)
2917  version_type=sunos
2918  need_lib_prefix=no
2919  need_version=no
2920  if echo __ELF__ | $CC -E - | $GREP __ELF__ >/dev/null; then
2921    library_names_spec='$libname$release$shared_ext$versuffix $libname$shared_ext$versuffix'
2922    finish_cmds='PATH="\$PATH:/sbin" ldconfig -m $libdir'
2923    dynamic_linker='NetBSD (a.out) ld.so'
2924  else
2925    library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$shared_ext'
2926    soname_spec='$libname$release$shared_ext$major'
2927    dynamic_linker='NetBSD ld.elf_so'
2928  fi
2929  shlibpath_var=LD_LIBRARY_PATH
2930  shlibpath_overrides_runpath=yes
2931  hardcode_into_libs=yes
2932  ;;
2933
2934newsos6)
2935  version_type=linux # correct to gnu/linux during the next big refactor
2936  library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$shared_ext'
2937  shlibpath_var=LD_LIBRARY_PATH
2938  shlibpath_overrides_runpath=yes
2939  ;;
2940
2941*nto* | *qnx*)
2942  version_type=qnx
2943  need_lib_prefix=no
2944  need_version=no
2945  library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$shared_ext'
2946  soname_spec='$libname$release$shared_ext$major'
2947  shlibpath_var=LD_LIBRARY_PATH
2948  shlibpath_overrides_runpath=no
2949  hardcode_into_libs=yes
2950  dynamic_linker='ldqnx.so'
2951  ;;
2952
2953openbsd* | bitrig*)
2954  version_type=sunos
2955  sys_lib_dlsearch_path_spec=/usr/lib
2956  need_lib_prefix=no
2957  if test -z "`echo __ELF__ | $CC -E - | $GREP __ELF__`"; then
2958    need_version=no
2959  else
2960    need_version=yes
2961  fi
2962  library_names_spec='$libname$release$shared_ext$versuffix $libname$shared_ext$versuffix'
2963  finish_cmds='PATH="\$PATH:/sbin" ldconfig -m $libdir'
2964  shlibpath_var=LD_LIBRARY_PATH
2965  shlibpath_overrides_runpath=yes
2966  ;;
2967
2968os2*)
2969  libname_spec='$name'
2970  version_type=windows
2971  shrext_cmds=.dll
2972  need_version=no
2973  need_lib_prefix=no
2974  # OS/2 can only load a DLL with a base name of 8 characters or less.
2975  soname_spec='`test -n "$os2dllname" && libname="$os2dllname";
2976    v=$($ECHO $release$versuffix | tr -d .-);
2977    n=$($ECHO $libname | cut -b -$((8 - ${#v})) | tr . _);
2978    $ECHO $n$v`$shared_ext'
2979  library_names_spec='${libname}_dll.$libext'
2980  dynamic_linker='OS/2 ld.exe'
2981  shlibpath_var=BEGINLIBPATH
2982  sys_lib_search_path_spec="/lib /usr/lib /usr/local/lib"
2983  sys_lib_dlsearch_path_spec=$sys_lib_search_path_spec
2984  postinstall_cmds='base_file=`basename \$file`~
2985    dlpath=`$SHELL 2>&1 -c '\''. $dir/'\''\$base_file'\''i; $ECHO \$dlname'\''`~
2986    dldir=$destdir/`dirname \$dlpath`~
2987    test -d \$dldir || mkdir -p \$dldir~
2988    $install_prog $dir/$dlname \$dldir/$dlname~
2989    chmod a+x \$dldir/$dlname~
2990    if test -n '\''$stripme'\'' && test -n '\''$striplib'\''; then
2991      eval '\''$striplib \$dldir/$dlname'\'' || exit \$?;
2992    fi'
2993  postuninstall_cmds='dldll=`$SHELL 2>&1 -c '\''. $file; $ECHO \$dlname'\''`~
2994    dlpath=$dir/\$dldll~
2995    $RM \$dlpath'
2996  ;;
2997
2998osf3* | osf4* | osf5*)
2999  version_type=osf
3000  need_lib_prefix=no
3001  need_version=no
3002  soname_spec='$libname$release$shared_ext$major'
3003  library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$shared_ext'
3004  shlibpath_var=LD_LIBRARY_PATH
3005  sys_lib_search_path_spec="/usr/shlib /usr/ccs/lib /usr/lib/cmplrs/cc /usr/lib /usr/local/lib /var/shlib"
3006  sys_lib_dlsearch_path_spec=$sys_lib_search_path_spec
3007  ;;
3008
3009rdos*)
3010  dynamic_linker=no
3011  ;;
3012
3013solaris*)
3014  version_type=linux # correct to gnu/linux during the next big refactor
3015  need_lib_prefix=no
3016  need_version=no
3017  library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$shared_ext'
3018  soname_spec='$libname$release$shared_ext$major'
3019  shlibpath_var=LD_LIBRARY_PATH
3020  shlibpath_overrides_runpath=yes
3021  hardcode_into_libs=yes
3022  # ldd complains unless libraries are executable
3023  postinstall_cmds='chmod +x $lib'
3024  ;;
3025
3026sunos4*)
3027  version_type=sunos
3028  library_names_spec='$libname$release$shared_ext$versuffix $libname$shared_ext$versuffix'
3029  finish_cmds='PATH="\$PATH:/usr/etc" ldconfig $libdir'
3030  shlibpath_var=LD_LIBRARY_PATH
3031  shlibpath_overrides_runpath=yes
3032  if test yes = "$with_gnu_ld"; then
3033    need_lib_prefix=no
3034  fi
3035  need_version=yes
3036  ;;
3037
3038sysv4 | sysv4.3*)
3039  version_type=linux # correct to gnu/linux during the next big refactor
3040  library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$shared_ext'
3041  soname_spec='$libname$release$shared_ext$major'
3042  shlibpath_var=LD_LIBRARY_PATH
3043  case $host_vendor in
3044    sni)
3045      shlibpath_overrides_runpath=no
3046      need_lib_prefix=no
3047      runpath_var=LD_RUN_PATH
3048      ;;
3049    siemens)
3050      need_lib_prefix=no
3051      ;;
3052    motorola)
3053      need_lib_prefix=no
3054      need_version=no
3055      shlibpath_overrides_runpath=no
3056      sys_lib_search_path_spec='/lib /usr/lib /usr/ccs/lib'
3057      ;;
3058  esac
3059  ;;
3060
3061sysv4*MP*)
3062  if test -d /usr/nec; then
3063    version_type=linux # correct to gnu/linux during the next big refactor
3064    library_names_spec='$libname$shared_ext.$versuffix $libname$shared_ext.$major $libname$shared_ext'
3065    soname_spec='$libname$shared_ext.$major'
3066    shlibpath_var=LD_LIBRARY_PATH
3067  fi
3068  ;;
3069
3070sysv5* | sco3.2v5* | sco5v6* | unixware* | OpenUNIX* | sysv4*uw2*)
3071  version_type=sco
3072  need_lib_prefix=no
3073  need_version=no
3074  library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext $libname$shared_ext'
3075  soname_spec='$libname$release$shared_ext$major'
3076  shlibpath_var=LD_LIBRARY_PATH
3077  shlibpath_overrides_runpath=yes
3078  hardcode_into_libs=yes
3079  if test yes = "$with_gnu_ld"; then
3080    sys_lib_search_path_spec='/usr/local/lib /usr/gnu/lib /usr/ccs/lib /usr/lib /lib'
3081  else
3082    sys_lib_search_path_spec='/usr/ccs/lib /usr/lib'
3083    case $host_os in
3084      sco3.2v5*)
3085        sys_lib_search_path_spec="$sys_lib_search_path_spec /lib"
3086	;;
3087    esac
3088  fi
3089  sys_lib_dlsearch_path_spec='/usr/lib'
3090  ;;
3091
3092tpf*)
3093  # TPF is a cross-target only.  Preferred cross-host = GNU/Linux.
3094  version_type=linux # correct to gnu/linux during the next big refactor
3095  need_lib_prefix=no
3096  need_version=no
3097  library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$shared_ext'
3098  shlibpath_var=LD_LIBRARY_PATH
3099  shlibpath_overrides_runpath=no
3100  hardcode_into_libs=yes
3101  ;;
3102
3103uts4*)
3104  version_type=linux # correct to gnu/linux during the next big refactor
3105  library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$shared_ext'
3106  soname_spec='$libname$release$shared_ext$major'
3107  shlibpath_var=LD_LIBRARY_PATH
3108  ;;
3109
3110*)
3111  dynamic_linker=no
3112  ;;
3113esac
3114AC_MSG_RESULT([$dynamic_linker])
3115test no = "$dynamic_linker" && can_build_shared=no
3116
3117variables_saved_for_relink="PATH $shlibpath_var $runpath_var"
3118if test yes = "$GCC"; then
3119  variables_saved_for_relink="$variables_saved_for_relink GCC_EXEC_PREFIX COMPILER_PATH LIBRARY_PATH"
3120fi
3121
3122if test set = "${lt_cv_sys_lib_search_path_spec+set}"; then
3123  sys_lib_search_path_spec=$lt_cv_sys_lib_search_path_spec
3124fi
3125
3126if test set = "${lt_cv_sys_lib_dlsearch_path_spec+set}"; then
3127  sys_lib_dlsearch_path_spec=$lt_cv_sys_lib_dlsearch_path_spec
3128fi
3129
3130# remember unaugmented sys_lib_dlsearch_path content for libtool script decls...
3131configure_time_dlsearch_path=$sys_lib_dlsearch_path_spec
3132
3133# ... but it needs LT_SYS_LIBRARY_PATH munging for other configure-time code
3134func_munge_path_list sys_lib_dlsearch_path_spec "$LT_SYS_LIBRARY_PATH"
3135
3136# to be used as default LT_SYS_LIBRARY_PATH value in generated libtool
3137configure_time_lt_sys_library_path=$LT_SYS_LIBRARY_PATH
3138
3139_LT_DECL([], [variables_saved_for_relink], [1],
3140    [Variables whose values should be saved in libtool wrapper scripts and
3141    restored at link time])
3142_LT_DECL([], [need_lib_prefix], [0],
3143    [Do we need the "lib" prefix for modules?])
3144_LT_DECL([], [need_version], [0], [Do we need a version for libraries?])
3145_LT_DECL([], [version_type], [0], [Library versioning type])
3146_LT_DECL([], [runpath_var], [0],  [Shared library runtime path variable])
3147_LT_DECL([], [shlibpath_var], [0],[Shared library path variable])
3148_LT_DECL([], [shlibpath_overrides_runpath], [0],
3149    [Is shlibpath searched before the hard-coded library search path?])
3150_LT_DECL([], [libname_spec], [1], [Format of library name prefix])
3151_LT_DECL([], [library_names_spec], [1],
3152    [[List of archive names.  First name is the real one, the rest are links.
3153    The last name is the one that the linker finds with -lNAME]])
3154_LT_DECL([], [soname_spec], [1],
3155    [[The coded name of the library, if different from the real name]])
3156_LT_DECL([], [install_override_mode], [1],
3157    [Permission mode override for installation of shared libraries])
3158_LT_DECL([], [postinstall_cmds], [2],
3159    [Command to use after installation of a shared archive])
3160_LT_DECL([], [postuninstall_cmds], [2],
3161    [Command to use after uninstallation of a shared archive])
3162_LT_DECL([], [finish_cmds], [2],
3163    [Commands used to finish a libtool library installation in a directory])
3164_LT_DECL([], [finish_eval], [1],
3165    [[As "finish_cmds", except a single script fragment to be evaled but
3166    not shown]])
3167_LT_DECL([], [hardcode_into_libs], [0],
3168    [Whether we should hardcode library paths into libraries])
3169_LT_DECL([], [sys_lib_search_path_spec], [2],
3170    [Compile-time system search path for libraries])
3171_LT_DECL([sys_lib_dlsearch_path_spec], [configure_time_dlsearch_path], [2],
3172    [Detected run-time system search path for libraries])
3173_LT_DECL([], [configure_time_lt_sys_library_path], [2],
3174    [Explicit LT_SYS_LIBRARY_PATH set during ./configure time])
3175])# _LT_SYS_DYNAMIC_LINKER
3176
3177
3178# _LT_PATH_TOOL_PREFIX(TOOL)
3179# --------------------------
3180# find a file program that can recognize shared library
3181AC_DEFUN([_LT_PATH_TOOL_PREFIX],
3182[m4_require([_LT_DECL_EGREP])dnl
3183AC_MSG_CHECKING([for $1])
3184AC_CACHE_VAL(lt_cv_path_MAGIC_CMD,
3185[case $MAGIC_CMD in
3186[[\\/*] |  ?:[\\/]*])
3187  lt_cv_path_MAGIC_CMD=$MAGIC_CMD # Let the user override the test with a path.
3188  ;;
3189*)
3190  lt_save_MAGIC_CMD=$MAGIC_CMD
3191  lt_save_ifs=$IFS; IFS=$PATH_SEPARATOR
3192dnl $ac_dummy forces splitting on constant user-supplied paths.
3193dnl POSIX.2 word splitting is done only on the output of word expansions,
3194dnl not every word.  This closes a longstanding sh security hole.
3195  ac_dummy="m4_if([$2], , $PATH, [$2])"
3196  for ac_dir in $ac_dummy; do
3197    IFS=$lt_save_ifs
3198    test -z "$ac_dir" && ac_dir=.
3199    if test -f "$ac_dir/$1"; then
3200      lt_cv_path_MAGIC_CMD=$ac_dir/"$1"
3201      if test -n "$file_magic_test_file"; then
3202	case $deplibs_check_method in
3203	"file_magic "*)
3204	  file_magic_regex=`expr "$deplibs_check_method" : "file_magic \(.*\)"`
3205	  MAGIC_CMD=$lt_cv_path_MAGIC_CMD
3206	  if eval $file_magic_cmd \$file_magic_test_file 2> /dev/null |
3207	    $EGREP "$file_magic_regex" > /dev/null; then
3208	    :
3209	  else
3210	    cat <<_LT_EOF 1>&2
3211
3212*** Warning: the command libtool uses to detect shared libraries,
3213*** $file_magic_cmd, produces output that libtool cannot recognize.
3214*** The result is that libtool may fail to recognize shared libraries
3215*** as such.  This will affect the creation of libtool libraries that
3216*** depend on shared libraries, but programs linked with such libtool
3217*** libraries will work regardless of this problem.  Nevertheless, you
3218*** may want to report the problem to your system manager and/or to
3219*** bug-libtool@gnu.org
3220
3221_LT_EOF
3222	  fi ;;
3223	esac
3224      fi
3225      break
3226    fi
3227  done
3228  IFS=$lt_save_ifs
3229  MAGIC_CMD=$lt_save_MAGIC_CMD
3230  ;;
3231esac])
3232MAGIC_CMD=$lt_cv_path_MAGIC_CMD
3233if test -n "$MAGIC_CMD"; then
3234  AC_MSG_RESULT($MAGIC_CMD)
3235else
3236  AC_MSG_RESULT(no)
3237fi
3238_LT_DECL([], [MAGIC_CMD], [0],
3239	 [Used to examine libraries when file_magic_cmd begins with "file"])dnl
3240])# _LT_PATH_TOOL_PREFIX
3241
3242# Old name:
3243AU_ALIAS([AC_PATH_TOOL_PREFIX], [_LT_PATH_TOOL_PREFIX])
3244dnl aclocal-1.4 backwards compatibility:
3245dnl AC_DEFUN([AC_PATH_TOOL_PREFIX], [])
3246
3247
3248# _LT_PATH_MAGIC
3249# --------------
3250# find a file program that can recognize a shared library
3251m4_defun([_LT_PATH_MAGIC],
3252[_LT_PATH_TOOL_PREFIX(${ac_tool_prefix}file, /usr/bin$PATH_SEPARATOR$PATH)
3253if test -z "$lt_cv_path_MAGIC_CMD"; then
3254  if test -n "$ac_tool_prefix"; then
3255    _LT_PATH_TOOL_PREFIX(file, /usr/bin$PATH_SEPARATOR$PATH)
3256  else
3257    MAGIC_CMD=:
3258  fi
3259fi
3260])# _LT_PATH_MAGIC
3261
3262
3263# LT_PATH_LD
3264# ----------
3265# find the pathname to the GNU or non-GNU linker
3266AC_DEFUN([LT_PATH_LD],
3267[AC_REQUIRE([AC_PROG_CC])dnl
3268AC_REQUIRE([AC_CANONICAL_HOST])dnl
3269AC_REQUIRE([AC_CANONICAL_BUILD])dnl
3270m4_require([_LT_DECL_SED])dnl
3271m4_require([_LT_DECL_EGREP])dnl
3272m4_require([_LT_PROG_ECHO_BACKSLASH])dnl
3273
3274AC_ARG_WITH([gnu-ld],
3275    [AS_HELP_STRING([--with-gnu-ld],
3276	[assume the C compiler uses GNU ld @<:@default=no@:>@])],
3277    [test no = "$withval" || with_gnu_ld=yes],
3278    [with_gnu_ld=no])dnl
3279
3280ac_prog=ld
3281if test yes = "$GCC"; then
3282  # Check if gcc -print-prog-name=ld gives a path.
3283  AC_MSG_CHECKING([for ld used by $CC])
3284  case $host in
3285  *-*-mingw*)
3286    # gcc leaves a trailing carriage return, which upsets mingw
3287    ac_prog=`($CC -print-prog-name=ld) 2>&5 | tr -d '\015'` ;;
3288  *)
3289    ac_prog=`($CC -print-prog-name=ld) 2>&5` ;;
3290  esac
3291  case $ac_prog in
3292    # Accept absolute paths.
3293    [[\\/]]* | ?:[[\\/]]*)
3294      re_direlt='/[[^/]][[^/]]*/\.\./'
3295      # Canonicalize the pathname of ld
3296      ac_prog=`$ECHO "$ac_prog"| $SED 's%\\\\%/%g'`
3297      while $ECHO "$ac_prog" | $GREP "$re_direlt" > /dev/null 2>&1; do
3298	ac_prog=`$ECHO $ac_prog| $SED "s%$re_direlt%/%"`
3299      done
3300      test -z "$LD" && LD=$ac_prog
3301      ;;
3302  "")
3303    # If it fails, then pretend we aren't using GCC.
3304    ac_prog=ld
3305    ;;
3306  *)
3307    # If it is relative, then search for the first ld in PATH.
3308    with_gnu_ld=unknown
3309    ;;
3310  esac
3311elif test yes = "$with_gnu_ld"; then
3312  AC_MSG_CHECKING([for GNU ld])
3313else
3314  AC_MSG_CHECKING([for non-GNU ld])
3315fi
3316AC_CACHE_VAL(lt_cv_path_LD,
3317[if test -z "$LD"; then
3318  lt_save_ifs=$IFS; IFS=$PATH_SEPARATOR
3319  for ac_dir in $PATH; do
3320    IFS=$lt_save_ifs
3321    test -z "$ac_dir" && ac_dir=.
3322    if test -f "$ac_dir/$ac_prog" || test -f "$ac_dir/$ac_prog$ac_exeext"; then
3323      lt_cv_path_LD=$ac_dir/$ac_prog
3324      # Check to see if the program is GNU ld.  I'd rather use --version,
3325      # but apparently some variants of GNU ld only accept -v.
3326      # Break only if it was the GNU/non-GNU ld that we prefer.
3327      case `"$lt_cv_path_LD" -v 2>&1 </dev/null` in
3328      *GNU* | *'with BFD'*)
3329	test no != "$with_gnu_ld" && break
3330	;;
3331      *)
3332	test yes != "$with_gnu_ld" && break
3333	;;
3334      esac
3335    fi
3336  done
3337  IFS=$lt_save_ifs
3338else
3339  lt_cv_path_LD=$LD # Let the user override the test with a path.
3340fi])
3341LD=$lt_cv_path_LD
3342if test -n "$LD"; then
3343  AC_MSG_RESULT($LD)
3344else
3345  AC_MSG_RESULT(no)
3346fi
3347test -z "$LD" && AC_MSG_ERROR([no acceptable ld found in \$PATH])
3348_LT_PATH_LD_GNU
3349AC_SUBST([LD])
3350
3351_LT_TAGDECL([], [LD], [1], [The linker used to build libraries])
3352])# LT_PATH_LD
3353
3354# Old names:
3355AU_ALIAS([AM_PROG_LD], [LT_PATH_LD])
3356AU_ALIAS([AC_PROG_LD], [LT_PATH_LD])
3357dnl aclocal-1.4 backwards compatibility:
3358dnl AC_DEFUN([AM_PROG_LD], [])
3359dnl AC_DEFUN([AC_PROG_LD], [])
3360
3361
3362# _LT_PATH_LD_GNU
3363#- --------------
3364m4_defun([_LT_PATH_LD_GNU],
3365[AC_CACHE_CHECK([if the linker ($LD) is GNU ld], lt_cv_prog_gnu_ld,
3366[# I'd rather use --version here, but apparently some GNU lds only accept -v.
3367case `$LD -v 2>&1 </dev/null` in
3368*GNU* | *'with BFD'*)
3369  lt_cv_prog_gnu_ld=yes
3370  ;;
3371*)
3372  lt_cv_prog_gnu_ld=no
3373  ;;
3374esac])
3375with_gnu_ld=$lt_cv_prog_gnu_ld
3376])# _LT_PATH_LD_GNU
3377
3378
3379# _LT_CMD_RELOAD
3380# --------------
3381# find reload flag for linker
3382#   -- PORTME Some linkers may need a different reload flag.
3383m4_defun([_LT_CMD_RELOAD],
3384[AC_CACHE_CHECK([for $LD option to reload object files],
3385  lt_cv_ld_reload_flag,
3386  [lt_cv_ld_reload_flag='-r'])
3387reload_flag=$lt_cv_ld_reload_flag
3388case $reload_flag in
3389"" | " "*) ;;
3390*) reload_flag=" $reload_flag" ;;
3391esac
3392reload_cmds='$LD$reload_flag -o $output$reload_objs'
3393case $host_os in
3394  cygwin* | mingw* | pw32* | cegcc*)
3395    if test yes != "$GCC"; then
3396      reload_cmds=false
3397    fi
3398    ;;
3399  darwin*)
3400    if test yes = "$GCC"; then
3401      reload_cmds='$LTCC $LTCFLAGS -nostdlib $wl-r -o $output$reload_objs'
3402    else
3403      reload_cmds='$LD$reload_flag -o $output$reload_objs'
3404    fi
3405    ;;
3406esac
3407_LT_TAGDECL([], [reload_flag], [1], [How to create reloadable object files])dnl
3408_LT_TAGDECL([], [reload_cmds], [2])dnl
3409])# _LT_CMD_RELOAD
3410
3411
3412# _LT_PATH_DD
3413# -----------
3414# find a working dd
3415m4_defun([_LT_PATH_DD],
3416[AC_CACHE_CHECK([for a working dd], [ac_cv_path_lt_DD],
3417[printf 0123456789abcdef0123456789abcdef >conftest.i
3418cat conftest.i conftest.i >conftest2.i
3419: ${lt_DD:=$DD}
3420AC_PATH_PROGS_FEATURE_CHECK([lt_DD], [dd],
3421[if "$ac_path_lt_DD" bs=32 count=1 <conftest2.i >conftest.out 2>/dev/null; then
3422  cmp -s conftest.i conftest.out \
3423  && ac_cv_path_lt_DD="$ac_path_lt_DD" ac_path_lt_DD_found=:
3424fi])
3425rm -f conftest.i conftest2.i conftest.out])
3426])# _LT_PATH_DD
3427
3428
3429# _LT_CMD_TRUNCATE
3430# ----------------
3431# find command to truncate a binary pipe
3432m4_defun([_LT_CMD_TRUNCATE],
3433[m4_require([_LT_PATH_DD])
3434AC_CACHE_CHECK([how to truncate binary pipes], [lt_cv_truncate_bin],
3435[printf 0123456789abcdef0123456789abcdef >conftest.i
3436cat conftest.i conftest.i >conftest2.i
3437lt_cv_truncate_bin=
3438if "$ac_cv_path_lt_DD" bs=32 count=1 <conftest2.i >conftest.out 2>/dev/null; then
3439  cmp -s conftest.i conftest.out \
3440  && lt_cv_truncate_bin="$ac_cv_path_lt_DD bs=4096 count=1"
3441fi
3442rm -f conftest.i conftest2.i conftest.out
3443test -z "$lt_cv_truncate_bin" && lt_cv_truncate_bin="$SED -e 4q"])
3444_LT_DECL([lt_truncate_bin], [lt_cv_truncate_bin], [1],
3445  [Command to truncate a binary pipe])
3446])# _LT_CMD_TRUNCATE
3447
3448
3449# _LT_CHECK_MAGIC_METHOD
3450# ----------------------
3451# how to check for library dependencies
3452#  -- PORTME fill in with the dynamic library characteristics
3453m4_defun([_LT_CHECK_MAGIC_METHOD],
3454[m4_require([_LT_DECL_EGREP])
3455m4_require([_LT_DECL_OBJDUMP])
3456AC_CACHE_CHECK([how to recognize dependent libraries],
3457lt_cv_deplibs_check_method,
3458[lt_cv_file_magic_cmd='$MAGIC_CMD'
3459lt_cv_file_magic_test_file=
3460lt_cv_deplibs_check_method='unknown'
3461# Need to set the preceding variable on all platforms that support
3462# interlibrary dependencies.
3463# 'none' -- dependencies not supported.
3464# 'unknown' -- same as none, but documents that we really don't know.
3465# 'pass_all' -- all dependencies passed with no checks.
3466# 'test_compile' -- check by making test program.
3467# 'file_magic [[regex]]' -- check by looking for files in library path
3468# that responds to the $file_magic_cmd with a given extended regex.
3469# If you have 'file' or equivalent on your system and you're not sure
3470# whether 'pass_all' will *always* work, you probably want this one.
3471
3472case $host_os in
3473aix[[4-9]]*)
3474  lt_cv_deplibs_check_method=pass_all
3475  ;;
3476
3477beos*)
3478  lt_cv_deplibs_check_method=pass_all
3479  ;;
3480
3481bsdi[[45]]*)
3482  lt_cv_deplibs_check_method='file_magic ELF [[0-9]][[0-9]]*-bit [[ML]]SB (shared object|dynamic lib)'
3483  lt_cv_file_magic_cmd='/usr/bin/file -L'
3484  lt_cv_file_magic_test_file=/shlib/libc.so
3485  ;;
3486
3487cygwin*)
3488  # func_win32_libid is a shell function defined in ltmain.sh
3489  lt_cv_deplibs_check_method='file_magic ^x86 archive import|^x86 DLL'
3490  lt_cv_file_magic_cmd='func_win32_libid'
3491  ;;
3492
3493mingw* | pw32*)
3494  # Base MSYS/MinGW do not provide the 'file' command needed by
3495  # func_win32_libid shell function, so use a weaker test based on 'objdump',
3496  # unless we find 'file', for example because we are cross-compiling.
3497  if ( file / ) >/dev/null 2>&1; then
3498    lt_cv_deplibs_check_method='file_magic ^x86 archive import|^x86 DLL'
3499    lt_cv_file_magic_cmd='func_win32_libid'
3500  else
3501    # Keep this pattern in sync with the one in func_win32_libid.
3502    lt_cv_deplibs_check_method='file_magic file format (pei*-i386(.*architecture: i386)?|pe-arm-wince|pe-x86-64)'
3503    lt_cv_file_magic_cmd='$OBJDUMP -f'
3504  fi
3505  ;;
3506
3507cegcc*)
3508  # use the weaker test based on 'objdump'. See mingw*.
3509  lt_cv_deplibs_check_method='file_magic file format pe-arm-.*little(.*architecture: arm)?'
3510  lt_cv_file_magic_cmd='$OBJDUMP -f'
3511  ;;
3512
3513darwin* | rhapsody*)
3514  lt_cv_deplibs_check_method=pass_all
3515  ;;
3516
3517freebsd* | dragonfly*)
3518  if echo __ELF__ | $CC -E - | $GREP __ELF__ > /dev/null; then
3519    case $host_cpu in
3520    i*86 )
3521      # Not sure whether the presence of OpenBSD here was a mistake.
3522      # Let's accept both of them until this is cleared up.
3523      lt_cv_deplibs_check_method='file_magic (FreeBSD|OpenBSD|DragonFly)/i[[3-9]]86 (compact )?demand paged shared library'
3524      lt_cv_file_magic_cmd=/usr/bin/file
3525      lt_cv_file_magic_test_file=`echo /usr/lib/libc.so.*`
3526      ;;
3527    esac
3528  else
3529    lt_cv_deplibs_check_method=pass_all
3530  fi
3531  ;;
3532
3533haiku*)
3534  lt_cv_deplibs_check_method=pass_all
3535  ;;
3536
3537hpux10.20* | hpux11*)
3538  lt_cv_file_magic_cmd=/usr/bin/file
3539  case $host_cpu in
3540  ia64*)
3541    lt_cv_deplibs_check_method='file_magic (s[[0-9]][[0-9]][[0-9]]|ELF-[[0-9]][[0-9]]) shared object file - IA64'
3542    lt_cv_file_magic_test_file=/usr/lib/hpux32/libc.so
3543    ;;
3544  hppa*64*)
3545    [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]']
3546    lt_cv_file_magic_test_file=/usr/lib/pa20_64/libc.sl
3547    ;;
3548  *)
3549    lt_cv_deplibs_check_method='file_magic (s[[0-9]][[0-9]][[0-9]]|PA-RISC[[0-9]]\.[[0-9]]) shared library'
3550    lt_cv_file_magic_test_file=/usr/lib/libc.sl
3551    ;;
3552  esac
3553  ;;
3554
3555interix[[3-9]]*)
3556  # PIC code is broken on Interix 3.x, that's why |\.a not |_pic\.a here
3557  lt_cv_deplibs_check_method='match_pattern /lib[[^/]]+(\.so|\.a)$'
3558  ;;
3559
3560irix5* | irix6* | nonstopux*)
3561  case $LD in
3562  *-32|*"-32 ") libmagic=32-bit;;
3563  *-n32|*"-n32 ") libmagic=N32;;
3564  *-64|*"-64 ") libmagic=64-bit;;
3565  *) libmagic=never-match;;
3566  esac
3567  lt_cv_deplibs_check_method=pass_all
3568  ;;
3569
3570# This must be glibc/ELF.
3571linux* | k*bsd*-gnu | kopensolaris*-gnu | gnu*)
3572  lt_cv_deplibs_check_method=pass_all
3573  ;;
3574
3575netbsd* | netbsdelf*-gnu)
3576  if echo __ELF__ | $CC -E - | $GREP __ELF__ > /dev/null; then
3577    lt_cv_deplibs_check_method='match_pattern /lib[[^/]]+(\.so\.[[0-9]]+\.[[0-9]]+|_pic\.a)$'
3578  else
3579    lt_cv_deplibs_check_method='match_pattern /lib[[^/]]+(\.so|_pic\.a)$'
3580  fi
3581  ;;
3582
3583newos6*)
3584  lt_cv_deplibs_check_method='file_magic ELF [[0-9]][[0-9]]*-bit [[ML]]SB (executable|dynamic lib)'
3585  lt_cv_file_magic_cmd=/usr/bin/file
3586  lt_cv_file_magic_test_file=/usr/lib/libnls.so
3587  ;;
3588
3589*nto* | *qnx*)
3590  lt_cv_deplibs_check_method=pass_all
3591  ;;
3592
3593openbsd* | bitrig*)
3594  if test -z "`echo __ELF__ | $CC -E - | $GREP __ELF__`"; then
3595    lt_cv_deplibs_check_method='match_pattern /lib[[^/]]+(\.so\.[[0-9]]+\.[[0-9]]+|\.so|_pic\.a)$'
3596  else
3597    lt_cv_deplibs_check_method='match_pattern /lib[[^/]]+(\.so\.[[0-9]]+\.[[0-9]]+|_pic\.a)$'
3598  fi
3599  ;;
3600
3601osf3* | osf4* | osf5*)
3602  lt_cv_deplibs_check_method=pass_all
3603  ;;
3604
3605rdos*)
3606  lt_cv_deplibs_check_method=pass_all
3607  ;;
3608
3609solaris*)
3610  lt_cv_deplibs_check_method=pass_all
3611  ;;
3612
3613sysv5* | sco3.2v5* | sco5v6* | unixware* | OpenUNIX* | sysv4*uw2*)
3614  lt_cv_deplibs_check_method=pass_all
3615  ;;
3616
3617sysv4 | sysv4.3*)
3618  case $host_vendor in
3619  motorola)
3620    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]]'
3621    lt_cv_file_magic_test_file=`echo /usr/lib/libc.so*`
3622    ;;
3623  ncr)
3624    lt_cv_deplibs_check_method=pass_all
3625    ;;
3626  sequent)
3627    lt_cv_file_magic_cmd='/bin/file'
3628    lt_cv_deplibs_check_method='file_magic ELF [[0-9]][[0-9]]*-bit [[LM]]SB (shared object|dynamic lib )'
3629    ;;
3630  sni)
3631    lt_cv_file_magic_cmd='/bin/file'
3632    lt_cv_deplibs_check_method="file_magic ELF [[0-9]][[0-9]]*-bit [[LM]]SB dynamic lib"
3633    lt_cv_file_magic_test_file=/lib/libc.so
3634    ;;
3635  siemens)
3636    lt_cv_deplibs_check_method=pass_all
3637    ;;
3638  pc)
3639    lt_cv_deplibs_check_method=pass_all
3640    ;;
3641  esac
3642  ;;
3643
3644tpf*)
3645  lt_cv_deplibs_check_method=pass_all
3646  ;;
3647os2*)
3648  lt_cv_deplibs_check_method=pass_all
3649  ;;
3650esac
3651])
3652
3653file_magic_glob=
3654want_nocaseglob=no
3655if test "$build" = "$host"; then
3656  case $host_os in
3657  mingw* | pw32*)
3658    if ( shopt | grep nocaseglob ) >/dev/null 2>&1; then
3659      want_nocaseglob=yes
3660    else
3661      file_magic_glob=`echo aAbBcCdDeEfFgGhHiIjJkKlLmMnNoOpPqQrRsStTuUvVwWxXyYzZ | $SED -e "s/\(..\)/s\/[[\1]]\/[[\1]]\/g;/g"`
3662    fi
3663    ;;
3664  esac
3665fi
3666
3667file_magic_cmd=$lt_cv_file_magic_cmd
3668deplibs_check_method=$lt_cv_deplibs_check_method
3669test -z "$deplibs_check_method" && deplibs_check_method=unknown
3670
3671_LT_DECL([], [deplibs_check_method], [1],
3672    [Method to check whether dependent libraries are shared objects])
3673_LT_DECL([], [file_magic_cmd], [1],
3674    [Command to use when deplibs_check_method = "file_magic"])
3675_LT_DECL([], [file_magic_glob], [1],
3676    [How to find potential files when deplibs_check_method = "file_magic"])
3677_LT_DECL([], [want_nocaseglob], [1],
3678    [Find potential files using nocaseglob when deplibs_check_method = "file_magic"])
3679])# _LT_CHECK_MAGIC_METHOD
3680
3681
3682# LT_PATH_NM
3683# ----------
3684# find the pathname to a BSD- or MS-compatible name lister
3685AC_DEFUN([LT_PATH_NM],
3686[AC_REQUIRE([AC_PROG_CC])dnl
3687AC_CACHE_CHECK([for BSD- or MS-compatible name lister (nm)], lt_cv_path_NM,
3688[if test -n "$NM"; then
3689  # Let the user override the test.
3690  lt_cv_path_NM=$NM
3691else
3692  lt_nm_to_check=${ac_tool_prefix}nm
3693  if test -n "$ac_tool_prefix" && test "$build" = "$host"; then
3694    lt_nm_to_check="$lt_nm_to_check nm"
3695  fi
3696  for lt_tmp_nm in $lt_nm_to_check; do
3697    lt_save_ifs=$IFS; IFS=$PATH_SEPARATOR
3698    for ac_dir in $PATH /usr/ccs/bin/elf /usr/ccs/bin /usr/ucb /bin; do
3699      IFS=$lt_save_ifs
3700      test -z "$ac_dir" && ac_dir=.
3701      tmp_nm=$ac_dir/$lt_tmp_nm
3702      if test -f "$tmp_nm" || test -f "$tmp_nm$ac_exeext"; then
3703	# Check to see if the nm accepts a BSD-compat flag.
3704	# Adding the 'sed 1q' prevents false positives on HP-UX, which says:
3705	#   nm: unknown option "B" ignored
3706	# Tru64's nm complains that /dev/null is an invalid object file
3707	# MSYS converts /dev/null to NUL, MinGW nm treats NUL as empty
3708	case $build_os in
3709	mingw*) lt_bad_file=conftest.nm/nofile ;;
3710	*) lt_bad_file=/dev/null ;;
3711	esac
3712	case `"$tmp_nm" -B $lt_bad_file 2>&1 | sed '1q'` in
3713	*$lt_bad_file* | *'Invalid file or object type'*)
3714	  lt_cv_path_NM="$tmp_nm -B"
3715	  break 2
3716	  ;;
3717	*)
3718	  case `"$tmp_nm" -p /dev/null 2>&1 | sed '1q'` in
3719	  */dev/null*)
3720	    lt_cv_path_NM="$tmp_nm -p"
3721	    break 2
3722	    ;;
3723	  *)
3724	    lt_cv_path_NM=${lt_cv_path_NM="$tmp_nm"} # keep the first match, but
3725	    continue # so that we can try to find one that supports BSD flags
3726	    ;;
3727	  esac
3728	  ;;
3729	esac
3730      fi
3731    done
3732    IFS=$lt_save_ifs
3733  done
3734  : ${lt_cv_path_NM=no}
3735fi])
3736if test no != "$lt_cv_path_NM"; then
3737  NM=$lt_cv_path_NM
3738else
3739  # Didn't find any BSD compatible name lister, look for dumpbin.
3740  if test -n "$DUMPBIN"; then :
3741    # Let the user override the test.
3742  else
3743    AC_CHECK_TOOLS(DUMPBIN, [dumpbin "link -dump"], :)
3744    case `$DUMPBIN -symbols -headers /dev/null 2>&1 | sed '1q'` in
3745    *COFF*)
3746      DUMPBIN="$DUMPBIN -symbols -headers"
3747      ;;
3748    *)
3749      DUMPBIN=:
3750      ;;
3751    esac
3752  fi
3753  AC_SUBST([DUMPBIN])
3754  if test : != "$DUMPBIN"; then
3755    NM=$DUMPBIN
3756  fi
3757fi
3758test -z "$NM" && NM=nm
3759AC_SUBST([NM])
3760_LT_DECL([], [NM], [1], [A BSD- or MS-compatible name lister])dnl
3761
3762AC_CACHE_CHECK([the name lister ($NM) interface], [lt_cv_nm_interface],
3763  [lt_cv_nm_interface="BSD nm"
3764  echo "int some_variable = 0;" > conftest.$ac_ext
3765  (eval echo "\"\$as_me:$LINENO: $ac_compile\"" >&AS_MESSAGE_LOG_FD)
3766  (eval "$ac_compile" 2>conftest.err)
3767  cat conftest.err >&AS_MESSAGE_LOG_FD
3768  (eval echo "\"\$as_me:$LINENO: $NM \\\"conftest.$ac_objext\\\"\"" >&AS_MESSAGE_LOG_FD)
3769  (eval "$NM \"conftest.$ac_objext\"" 2>conftest.err > conftest.out)
3770  cat conftest.err >&AS_MESSAGE_LOG_FD
3771  (eval echo "\"\$as_me:$LINENO: output\"" >&AS_MESSAGE_LOG_FD)
3772  cat conftest.out >&AS_MESSAGE_LOG_FD
3773  if $GREP 'External.*some_variable' conftest.out > /dev/null; then
3774    lt_cv_nm_interface="MS dumpbin"
3775  fi
3776  rm -f conftest*])
3777])# LT_PATH_NM
3778
3779# Old names:
3780AU_ALIAS([AM_PROG_NM], [LT_PATH_NM])
3781AU_ALIAS([AC_PROG_NM], [LT_PATH_NM])
3782dnl aclocal-1.4 backwards compatibility:
3783dnl AC_DEFUN([AM_PROG_NM], [])
3784dnl AC_DEFUN([AC_PROG_NM], [])
3785
3786# _LT_CHECK_SHAREDLIB_FROM_LINKLIB
3787# --------------------------------
3788# how to determine the name of the shared library
3789# associated with a specific link library.
3790#  -- PORTME fill in with the dynamic library characteristics
3791m4_defun([_LT_CHECK_SHAREDLIB_FROM_LINKLIB],
3792[m4_require([_LT_DECL_EGREP])
3793m4_require([_LT_DECL_OBJDUMP])
3794m4_require([_LT_DECL_DLLTOOL])
3795AC_CACHE_CHECK([how to associate runtime and link libraries],
3796lt_cv_sharedlib_from_linklib_cmd,
3797[lt_cv_sharedlib_from_linklib_cmd='unknown'
3798
3799case $host_os in
3800cygwin* | mingw* | pw32* | cegcc*)
3801  # two different shell functions defined in ltmain.sh;
3802  # decide which one to use based on capabilities of $DLLTOOL
3803  case `$DLLTOOL --help 2>&1` in
3804  *--identify-strict*)
3805    lt_cv_sharedlib_from_linklib_cmd=func_cygming_dll_for_implib
3806    ;;
3807  *)
3808    lt_cv_sharedlib_from_linklib_cmd=func_cygming_dll_for_implib_fallback
3809    ;;
3810  esac
3811  ;;
3812*)
3813  # fallback: assume linklib IS sharedlib
3814  lt_cv_sharedlib_from_linklib_cmd=$ECHO
3815  ;;
3816esac
3817])
3818sharedlib_from_linklib_cmd=$lt_cv_sharedlib_from_linklib_cmd
3819test -z "$sharedlib_from_linklib_cmd" && sharedlib_from_linklib_cmd=$ECHO
3820
3821_LT_DECL([], [sharedlib_from_linklib_cmd], [1],
3822    [Command to associate shared and link libraries])
3823])# _LT_CHECK_SHAREDLIB_FROM_LINKLIB
3824
3825
3826# _LT_PATH_MANIFEST_TOOL
3827# ----------------------
3828# locate the manifest tool
3829m4_defun([_LT_PATH_MANIFEST_TOOL],
3830[AC_CHECK_TOOL(MANIFEST_TOOL, mt, :)
3831test -z "$MANIFEST_TOOL" && MANIFEST_TOOL=mt
3832AC_CACHE_CHECK([if $MANIFEST_TOOL is a manifest tool], [lt_cv_path_mainfest_tool],
3833  [lt_cv_path_mainfest_tool=no
3834  echo "$as_me:$LINENO: $MANIFEST_TOOL '-?'" >&AS_MESSAGE_LOG_FD
3835  $MANIFEST_TOOL '-?' 2>conftest.err > conftest.out
3836  cat conftest.err >&AS_MESSAGE_LOG_FD
3837  if $GREP 'Manifest Tool' conftest.out > /dev/null; then
3838    lt_cv_path_mainfest_tool=yes
3839  fi
3840  rm -f conftest*])
3841if test yes != "$lt_cv_path_mainfest_tool"; then
3842  MANIFEST_TOOL=:
3843fi
3844_LT_DECL([], [MANIFEST_TOOL], [1], [Manifest tool])dnl
3845])# _LT_PATH_MANIFEST_TOOL
3846
3847
3848# _LT_DLL_DEF_P([FILE])
3849# ---------------------
3850# True iff FILE is a Windows DLL '.def' file.
3851# Keep in sync with func_dll_def_p in the libtool script
3852AC_DEFUN([_LT_DLL_DEF_P],
3853[dnl
3854  test DEF = "`$SED -n dnl
3855    -e '\''s/^[[	 ]]*//'\'' dnl Strip leading whitespace
3856    -e '\''/^\(;.*\)*$/d'\'' dnl      Delete empty lines and comments
3857    -e '\''s/^\(EXPORTS\|LIBRARY\)\([[	 ]].*\)*$/DEF/p'\'' dnl
3858    -e q dnl                          Only consider the first "real" line
3859    $1`" dnl
3860])# _LT_DLL_DEF_P
3861
3862
3863# LT_LIB_M
3864# --------
3865# check for math library
3866AC_DEFUN([LT_LIB_M],
3867[AC_REQUIRE([AC_CANONICAL_HOST])dnl
3868LIBM=
3869case $host in
3870*-*-beos* | *-*-cegcc* | *-*-cygwin* | *-*-haiku* | *-*-pw32* | *-*-darwin*)
3871  # These system don't have libm, or don't need it
3872  ;;
3873*-ncr-sysv4.3*)
3874  AC_CHECK_LIB(mw, _mwvalidcheckl, LIBM=-lmw)
3875  AC_CHECK_LIB(m, cos, LIBM="$LIBM -lm")
3876  ;;
3877*)
3878  AC_CHECK_LIB(m, cos, LIBM=-lm)
3879  ;;
3880esac
3881AC_SUBST([LIBM])
3882])# LT_LIB_M
3883
3884# Old name:
3885AU_ALIAS([AC_CHECK_LIBM], [LT_LIB_M])
3886dnl aclocal-1.4 backwards compatibility:
3887dnl AC_DEFUN([AC_CHECK_LIBM], [])
3888
3889
3890# _LT_COMPILER_NO_RTTI([TAGNAME])
3891# -------------------------------
3892m4_defun([_LT_COMPILER_NO_RTTI],
3893[m4_require([_LT_TAG_COMPILER])dnl
3894
3895_LT_TAGVAR(lt_prog_compiler_no_builtin_flag, $1)=
3896
3897if test yes = "$GCC"; then
3898  case $cc_basename in
3899  nvcc*)
3900    _LT_TAGVAR(lt_prog_compiler_no_builtin_flag, $1)=' -Xcompiler -fno-builtin' ;;
3901  *)
3902    _LT_TAGVAR(lt_prog_compiler_no_builtin_flag, $1)=' -fno-builtin' ;;
3903  esac
3904
3905  _LT_COMPILER_OPTION([if $compiler supports -fno-rtti -fno-exceptions],
3906    lt_cv_prog_compiler_rtti_exceptions,
3907    [-fno-rtti -fno-exceptions], [],
3908    [_LT_TAGVAR(lt_prog_compiler_no_builtin_flag, $1)="$_LT_TAGVAR(lt_prog_compiler_no_builtin_flag, $1) -fno-rtti -fno-exceptions"])
3909fi
3910_LT_TAGDECL([no_builtin_flag], [lt_prog_compiler_no_builtin_flag], [1],
3911	[Compiler flag to turn off builtin functions])
3912])# _LT_COMPILER_NO_RTTI
3913
3914
3915# _LT_CMD_GLOBAL_SYMBOLS
3916# ----------------------
3917m4_defun([_LT_CMD_GLOBAL_SYMBOLS],
3918[AC_REQUIRE([AC_CANONICAL_HOST])dnl
3919AC_REQUIRE([AC_PROG_CC])dnl
3920AC_REQUIRE([AC_PROG_AWK])dnl
3921AC_REQUIRE([LT_PATH_NM])dnl
3922AC_REQUIRE([LT_PATH_LD])dnl
3923m4_require([_LT_DECL_SED])dnl
3924m4_require([_LT_DECL_EGREP])dnl
3925m4_require([_LT_TAG_COMPILER])dnl
3926
3927# Check for command to grab the raw symbol name followed by C symbol from nm.
3928AC_MSG_CHECKING([command to parse $NM output from $compiler object])
3929AC_CACHE_VAL([lt_cv_sys_global_symbol_pipe],
3930[
3931# These are sane defaults that work on at least a few old systems.
3932# [They come from Ultrix.  What could be older than Ultrix?!! ;)]
3933
3934# Character class describing NM global symbol codes.
3935symcode='[[BCDEGRST]]'
3936
3937# Regexp to match symbols that can be accessed directly from C.
3938sympat='\([[_A-Za-z]][[_A-Za-z0-9]]*\)'
3939
3940# Define system-specific variables.
3941case $host_os in
3942aix*)
3943  symcode='[[BCDT]]'
3944  ;;
3945cygwin* | mingw* | pw32* | cegcc*)
3946  symcode='[[ABCDGISTW]]'
3947  ;;
3948hpux*)
3949  if test ia64 = "$host_cpu"; then
3950    symcode='[[ABCDEGRST]]'
3951  fi
3952  ;;
3953irix* | nonstopux*)
3954  symcode='[[BCDEGRST]]'
3955  ;;
3956osf*)
3957  symcode='[[BCDEGQRST]]'
3958  ;;
3959solaris*)
3960  symcode='[[BDRT]]'
3961  ;;
3962sco3.2v5*)
3963  symcode='[[DT]]'
3964  ;;
3965sysv4.2uw2*)
3966  symcode='[[DT]]'
3967  ;;
3968sysv5* | sco5v6* | unixware* | OpenUNIX*)
3969  symcode='[[ABDT]]'
3970  ;;
3971sysv4)
3972  symcode='[[DFNSTU]]'
3973  ;;
3974esac
3975
3976# If we're using GNU nm, then use its standard symbol codes.
3977case `$NM -V 2>&1` in
3978*GNU* | *'with BFD'*)
3979  symcode='[[ABCDGIRSTW]]' ;;
3980esac
3981
3982if test "$lt_cv_nm_interface" = "MS dumpbin"; then
3983  # Gets list of data symbols to import.
3984  lt_cv_sys_global_symbol_to_import="sed -n -e 's/^I .* \(.*\)$/\1/p'"
3985  # Adjust the below global symbol transforms to fixup imported variables.
3986  lt_cdecl_hook=" -e 's/^I .* \(.*\)$/extern __declspec(dllimport) char \1;/p'"
3987  lt_c_name_hook=" -e 's/^I .* \(.*\)$/  {\"\1\", (void *) 0},/p'"
3988  lt_c_name_lib_hook="\
3989  -e 's/^I .* \(lib.*\)$/  {\"\1\", (void *) 0},/p'\
3990  -e 's/^I .* \(.*\)$/  {\"lib\1\", (void *) 0},/p'"
3991else
3992  # Disable hooks by default.
3993  lt_cv_sys_global_symbol_to_import=
3994  lt_cdecl_hook=
3995  lt_c_name_hook=
3996  lt_c_name_lib_hook=
3997fi
3998
3999# Transform an extracted symbol line into a proper C declaration.
4000# Some systems (esp. on ia64) link data and code symbols differently,
4001# so use this general approach.
4002lt_cv_sys_global_symbol_to_cdecl="sed -n"\
4003$lt_cdecl_hook\
4004" -e 's/^T .* \(.*\)$/extern int \1();/p'"\
4005" -e 's/^$symcode$symcode* .* \(.*\)$/extern char \1;/p'"
4006
4007# Transform an extracted symbol line into symbol name and symbol address
4008lt_cv_sys_global_symbol_to_c_name_address="sed -n"\
4009$lt_c_name_hook\
4010" -e 's/^: \(.*\) .*$/  {\"\1\", (void *) 0},/p'"\
4011" -e 's/^$symcode$symcode* .* \(.*\)$/  {\"\1\", (void *) \&\1},/p'"
4012
4013# Transform an extracted symbol line into symbol name with lib prefix and
4014# symbol address.
4015lt_cv_sys_global_symbol_to_c_name_address_lib_prefix="sed -n"\
4016$lt_c_name_lib_hook\
4017" -e 's/^: \(.*\) .*$/  {\"\1\", (void *) 0},/p'"\
4018" -e 's/^$symcode$symcode* .* \(lib.*\)$/  {\"\1\", (void *) \&\1},/p'"\
4019" -e 's/^$symcode$symcode* .* \(.*\)$/  {\"lib\1\", (void *) \&\1},/p'"
4020
4021# Handle CRLF in mingw tool chain
4022opt_cr=
4023case $build_os in
4024mingw*)
4025  opt_cr=`$ECHO 'x\{0,1\}' | tr x '\015'` # option cr in regexp
4026  ;;
4027esac
4028
4029# Try without a prefix underscore, then with it.
4030for ac_symprfx in "" "_"; do
4031
4032  # Transform symcode, sympat, and symprfx into a raw symbol and a C symbol.
4033  symxfrm="\\1 $ac_symprfx\\2 \\2"
4034
4035  # Write the raw and C identifiers.
4036  if test "$lt_cv_nm_interface" = "MS dumpbin"; then
4037    # Fake it for dumpbin and say T for any non-static function,
4038    # D for any global variable and I for any imported variable.
4039    # Also find C++ and __fastcall symbols from MSVC++,
4040    # which start with @ or ?.
4041    lt_cv_sys_global_symbol_pipe="$AWK ['"\
4042"     {last_section=section; section=\$ 3};"\
4043"     /^COFF SYMBOL TABLE/{for(i in hide) delete hide[i]};"\
4044"     /Section length .*#relocs.*(pick any)/{hide[last_section]=1};"\
4045"     /^ *Symbol name *: /{split(\$ 0,sn,\":\"); si=substr(sn[2],2)};"\
4046"     /^ *Type *: code/{print \"T\",si,substr(si,length(prfx))};"\
4047"     /^ *Type *: data/{print \"I\",si,substr(si,length(prfx))};"\
4048"     \$ 0!~/External *\|/{next};"\
4049"     / 0+ UNDEF /{next}; / UNDEF \([^|]\)*()/{next};"\
4050"     {if(hide[section]) next};"\
4051"     {f=\"D\"}; \$ 0~/\(\).*\|/{f=\"T\"};"\
4052"     {split(\$ 0,a,/\||\r/); split(a[2],s)};"\
4053"     s[1]~/^[@?]/{print f,s[1],s[1]; next};"\
4054"     s[1]~prfx {split(s[1],t,\"@\"); print f,t[1],substr(t[1],length(prfx))}"\
4055"     ' prfx=^$ac_symprfx]"
4056  else
4057    lt_cv_sys_global_symbol_pipe="sed -n -e 's/^.*[[	 ]]\($symcode$symcode*\)[[	 ]][[	 ]]*$ac_symprfx$sympat$opt_cr$/$symxfrm/p'"
4058  fi
4059  lt_cv_sys_global_symbol_pipe="$lt_cv_sys_global_symbol_pipe | sed '/ __gnu_lto/d'"
4060
4061  # Check to see that the pipe works correctly.
4062  pipe_works=no
4063
4064  rm -f conftest*
4065  cat > conftest.$ac_ext <<_LT_EOF
4066#ifdef __cplusplus
4067extern "C" {
4068#endif
4069char nm_test_var;
4070void nm_test_func(void);
4071void nm_test_func(void){}
4072#ifdef __cplusplus
4073}
4074#endif
4075int main(){nm_test_var='a';nm_test_func();return(0);}
4076_LT_EOF
4077
4078  if AC_TRY_EVAL(ac_compile); then
4079    # Now try to grab the symbols.
4080    nlist=conftest.nm
4081    if AC_TRY_EVAL(NM conftest.$ac_objext \| "$lt_cv_sys_global_symbol_pipe" \> $nlist) && test -s "$nlist"; then
4082      # Try sorting and uniquifying the output.
4083      if sort "$nlist" | uniq > "$nlist"T; then
4084	mv -f "$nlist"T "$nlist"
4085      else
4086	rm -f "$nlist"T
4087      fi
4088
4089      # Make sure that we snagged all the symbols we need.
4090      if $GREP ' nm_test_var$' "$nlist" >/dev/null; then
4091	if $GREP ' nm_test_func$' "$nlist" >/dev/null; then
4092	  cat <<_LT_EOF > conftest.$ac_ext
4093/* Keep this code in sync between libtool.m4, ltmain, lt_system.h, and tests.  */
4094#if defined _WIN32 || defined __CYGWIN__ || defined _WIN32_WCE
4095/* DATA imports from DLLs on WIN32 can't be const, because runtime
4096   relocations are performed -- see ld's documentation on pseudo-relocs.  */
4097# define LT@&t@_DLSYM_CONST
4098#elif defined __osf__
4099/* This system does not cope well with relocations in const data.  */
4100# define LT@&t@_DLSYM_CONST
4101#else
4102# define LT@&t@_DLSYM_CONST const
4103#endif
4104
4105#ifdef __cplusplus
4106extern "C" {
4107#endif
4108
4109_LT_EOF
4110	  # Now generate the symbol file.
4111	  eval "$lt_cv_sys_global_symbol_to_cdecl"' < "$nlist" | $GREP -v main >> conftest.$ac_ext'
4112
4113	  cat <<_LT_EOF >> conftest.$ac_ext
4114
4115/* The mapping between symbol names and symbols.  */
4116LT@&t@_DLSYM_CONST struct {
4117  const char *name;
4118  void       *address;
4119}
4120lt__PROGRAM__LTX_preloaded_symbols[[]] =
4121{
4122  { "@PROGRAM@", (void *) 0 },
4123_LT_EOF
4124	  $SED "s/^$symcode$symcode* .* \(.*\)$/  {\"\1\", (void *) \&\1},/" < "$nlist" | $GREP -v main >> conftest.$ac_ext
4125	  cat <<\_LT_EOF >> conftest.$ac_ext
4126  {0, (void *) 0}
4127};
4128
4129/* This works around a problem in FreeBSD linker */
4130#ifdef FREEBSD_WORKAROUND
4131static const void *lt_preloaded_setup() {
4132  return lt__PROGRAM__LTX_preloaded_symbols;
4133}
4134#endif
4135
4136#ifdef __cplusplus
4137}
4138#endif
4139_LT_EOF
4140	  # Now try linking the two files.
4141	  mv conftest.$ac_objext conftstm.$ac_objext
4142	  lt_globsym_save_LIBS=$LIBS
4143	  lt_globsym_save_CFLAGS=$CFLAGS
4144	  LIBS=conftstm.$ac_objext
4145	  CFLAGS="$CFLAGS$_LT_TAGVAR(lt_prog_compiler_no_builtin_flag, $1)"
4146	  if AC_TRY_EVAL(ac_link) && test -s conftest$ac_exeext; then
4147	    pipe_works=yes
4148	  fi
4149	  LIBS=$lt_globsym_save_LIBS
4150	  CFLAGS=$lt_globsym_save_CFLAGS
4151	else
4152	  echo "cannot find nm_test_func in $nlist" >&AS_MESSAGE_LOG_FD
4153	fi
4154      else
4155	echo "cannot find nm_test_var in $nlist" >&AS_MESSAGE_LOG_FD
4156      fi
4157    else
4158      echo "cannot run $lt_cv_sys_global_symbol_pipe" >&AS_MESSAGE_LOG_FD
4159    fi
4160  else
4161    echo "$progname: failed program was:" >&AS_MESSAGE_LOG_FD
4162    cat conftest.$ac_ext >&5
4163  fi
4164  rm -rf conftest* conftst*
4165
4166  # Do not use the global_symbol_pipe unless it works.
4167  if test yes = "$pipe_works"; then
4168    break
4169  else
4170    lt_cv_sys_global_symbol_pipe=
4171  fi
4172done
4173])
4174if test -z "$lt_cv_sys_global_symbol_pipe"; then
4175  lt_cv_sys_global_symbol_to_cdecl=
4176fi
4177if test -z "$lt_cv_sys_global_symbol_pipe$lt_cv_sys_global_symbol_to_cdecl"; then
4178  AC_MSG_RESULT(failed)
4179else
4180  AC_MSG_RESULT(ok)
4181fi
4182
4183# Response file support.
4184if test "$lt_cv_nm_interface" = "MS dumpbin"; then
4185  nm_file_list_spec='@'
4186elif $NM --help 2>/dev/null | grep '[[@]]FILE' >/dev/null; then
4187  nm_file_list_spec='@'
4188fi
4189
4190_LT_DECL([global_symbol_pipe], [lt_cv_sys_global_symbol_pipe], [1],
4191    [Take the output of nm and produce a listing of raw symbols and C names])
4192_LT_DECL([global_symbol_to_cdecl], [lt_cv_sys_global_symbol_to_cdecl], [1],
4193    [Transform the output of nm in a proper C declaration])
4194_LT_DECL([global_symbol_to_import], [lt_cv_sys_global_symbol_to_import], [1],
4195    [Transform the output of nm into a list of symbols to manually relocate])
4196_LT_DECL([global_symbol_to_c_name_address],
4197    [lt_cv_sys_global_symbol_to_c_name_address], [1],
4198    [Transform the output of nm in a C name address pair])
4199_LT_DECL([global_symbol_to_c_name_address_lib_prefix],
4200    [lt_cv_sys_global_symbol_to_c_name_address_lib_prefix], [1],
4201    [Transform the output of nm in a C name address pair when lib prefix is needed])
4202_LT_DECL([nm_interface], [lt_cv_nm_interface], [1],
4203    [The name lister interface])
4204_LT_DECL([], [nm_file_list_spec], [1],
4205    [Specify filename containing input files for $NM])
4206]) # _LT_CMD_GLOBAL_SYMBOLS
4207
4208
4209# _LT_COMPILER_PIC([TAGNAME])
4210# ---------------------------
4211m4_defun([_LT_COMPILER_PIC],
4212[m4_require([_LT_TAG_COMPILER])dnl
4213_LT_TAGVAR(lt_prog_compiler_wl, $1)=
4214_LT_TAGVAR(lt_prog_compiler_pic, $1)=
4215_LT_TAGVAR(lt_prog_compiler_static, $1)=
4216
4217m4_if([$1], [CXX], [
4218  # C++ specific cases for pic, static, wl, etc.
4219  if test yes = "$GXX"; then
4220    _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
4221    _LT_TAGVAR(lt_prog_compiler_static, $1)='-static'
4222
4223    case $host_os in
4224    aix*)
4225      # All AIX code is PIC.
4226      if test ia64 = "$host_cpu"; then
4227	# AIX 5 now supports IA64 processor
4228	_LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic'
4229      fi
4230      _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fPIC'
4231      ;;
4232
4233    amigaos*)
4234      case $host_cpu in
4235      powerpc)
4236            # see comment about AmigaOS4 .so support
4237            _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fPIC'
4238        ;;
4239      m68k)
4240            # FIXME: we need at least 68020 code to build shared libraries, but
4241            # adding the '-m68020' flag to GCC prevents building anything better,
4242            # like '-m68040'.
4243            _LT_TAGVAR(lt_prog_compiler_pic, $1)='-m68020 -resident32 -malways-restore-a4'
4244        ;;
4245      esac
4246      ;;
4247
4248    beos* | irix5* | irix6* | nonstopux* | osf3* | osf4* | osf5*)
4249      # PIC is the default for these OSes.
4250      ;;
4251    mingw* | cygwin* | os2* | pw32* | cegcc*)
4252      # This hack is so that the source file can tell whether it is being
4253      # built for inclusion in a dll (and should export symbols for example).
4254      # Although the cygwin gcc ignores -fPIC, still need this for old-style
4255      # (--disable-auto-import) libraries
4256      m4_if([$1], [GCJ], [],
4257	[_LT_TAGVAR(lt_prog_compiler_pic, $1)='-DDLL_EXPORT'])
4258      case $host_os in
4259      os2*)
4260	_LT_TAGVAR(lt_prog_compiler_static, $1)='$wl-static'
4261	;;
4262      esac
4263      ;;
4264    darwin* | rhapsody*)
4265      # PIC is the default on this platform
4266      # Common symbols not allowed in MH_DYLIB files
4267      _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fno-common'
4268      ;;
4269    *djgpp*)
4270      # DJGPP does not support shared libraries at all
4271      _LT_TAGVAR(lt_prog_compiler_pic, $1)=
4272      ;;
4273    haiku*)
4274      # PIC is the default for Haiku.
4275      # The "-static" flag exists, but is broken.
4276      _LT_TAGVAR(lt_prog_compiler_static, $1)=
4277      ;;
4278    interix[[3-9]]*)
4279      # Interix 3.x gcc -fpic/-fPIC options generate broken code.
4280      # Instead, we relocate shared libraries at runtime.
4281      ;;
4282    sysv4*MP*)
4283      if test -d /usr/nec; then
4284	_LT_TAGVAR(lt_prog_compiler_pic, $1)=-Kconform_pic
4285      fi
4286      ;;
4287    hpux*)
4288      # PIC is the default for 64-bit PA HP-UX, but not for 32-bit
4289      # PA HP-UX.  On IA64 HP-UX, PIC is the default but the pic flag
4290      # sets the default TLS model and affects inlining.
4291      case $host_cpu in
4292      hppa*64*)
4293	;;
4294      *)
4295	_LT_TAGVAR(lt_prog_compiler_pic, $1)='-fPIC'
4296	;;
4297      esac
4298      ;;
4299    *qnx* | *nto*)
4300      # QNX uses GNU C++, but need to define -shared option too, otherwise
4301      # it will coredump.
4302      _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fPIC -shared'
4303      ;;
4304    *)
4305      _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fPIC'
4306      ;;
4307    esac
4308  else
4309    case $host_os in
4310      aix[[4-9]]*)
4311	# All AIX code is PIC.
4312	if test ia64 = "$host_cpu"; then
4313	  # AIX 5 now supports IA64 processor
4314	  _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic'
4315	else
4316	  _LT_TAGVAR(lt_prog_compiler_static, $1)='-bnso -bI:/lib/syscalls.exp'
4317	fi
4318	;;
4319      chorus*)
4320	case $cc_basename in
4321	cxch68*)
4322	  # Green Hills C++ Compiler
4323	  # _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"
4324	  ;;
4325	esac
4326	;;
4327      mingw* | cygwin* | os2* | pw32* | cegcc*)
4328	# This hack is so that the source file can tell whether it is being
4329	# built for inclusion in a dll (and should export symbols for example).
4330	m4_if([$1], [GCJ], [],
4331	  [_LT_TAGVAR(lt_prog_compiler_pic, $1)='-DDLL_EXPORT'])
4332	;;
4333      dgux*)
4334	case $cc_basename in
4335	  ec++*)
4336	    _LT_TAGVAR(lt_prog_compiler_pic, $1)='-KPIC'
4337	    ;;
4338	  ghcx*)
4339	    # Green Hills C++ Compiler
4340	    _LT_TAGVAR(lt_prog_compiler_pic, $1)='-pic'
4341	    ;;
4342	  *)
4343	    ;;
4344	esac
4345	;;
4346      freebsd* | dragonfly*)
4347	# FreeBSD uses GNU C++
4348	;;
4349      hpux9* | hpux10* | hpux11*)
4350	case $cc_basename in
4351	  CC*)
4352	    _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
4353	    _LT_TAGVAR(lt_prog_compiler_static, $1)='$wl-a ${wl}archive'
4354	    if test ia64 != "$host_cpu"; then
4355	      _LT_TAGVAR(lt_prog_compiler_pic, $1)='+Z'
4356	    fi
4357	    ;;
4358	  aCC*)
4359	    _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
4360	    _LT_TAGVAR(lt_prog_compiler_static, $1)='$wl-a ${wl}archive'
4361	    case $host_cpu in
4362	    hppa*64*|ia64*)
4363	      # +Z the default
4364	      ;;
4365	    *)
4366	      _LT_TAGVAR(lt_prog_compiler_pic, $1)='+Z'
4367	      ;;
4368	    esac
4369	    ;;
4370	  *)
4371	    ;;
4372	esac
4373	;;
4374      interix*)
4375	# This is c89, which is MS Visual C++ (no shared libs)
4376	# Anyone wants to do a port?
4377	;;
4378      irix5* | irix6* | nonstopux*)
4379	case $cc_basename in
4380	  CC*)
4381	    _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
4382	    _LT_TAGVAR(lt_prog_compiler_static, $1)='-non_shared'
4383	    # CC pic flag -KPIC is the default.
4384	    ;;
4385	  *)
4386	    ;;
4387	esac
4388	;;
4389      linux* | k*bsd*-gnu | kopensolaris*-gnu | gnu*)
4390	case $cc_basename in
4391	  KCC*)
4392	    # KAI C++ Compiler
4393	    _LT_TAGVAR(lt_prog_compiler_wl, $1)='--backend -Wl,'
4394	    _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fPIC'
4395	    ;;
4396	  ecpc* )
4397	    # old Intel C++ for x86_64, which still supported -KPIC.
4398	    _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
4399	    _LT_TAGVAR(lt_prog_compiler_pic, $1)='-KPIC'
4400	    _LT_TAGVAR(lt_prog_compiler_static, $1)='-static'
4401	    ;;
4402	  icpc* )
4403	    # Intel C++, used to be incompatible with GCC.
4404	    # ICC 10 doesn't accept -KPIC any more.
4405	    _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
4406	    _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fPIC'
4407	    _LT_TAGVAR(lt_prog_compiler_static, $1)='-static'
4408	    ;;
4409	  pgCC* | pgcpp*)
4410	    # Portland Group C++ compiler
4411	    _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
4412	    _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fpic'
4413	    _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic'
4414	    ;;
4415	  cxx*)
4416	    # Compaq C++
4417	    # Make sure the PIC flag is empty.  It appears that all Alpha
4418	    # Linux and Compaq Tru64 Unix objects are PIC.
4419	    _LT_TAGVAR(lt_prog_compiler_pic, $1)=
4420	    _LT_TAGVAR(lt_prog_compiler_static, $1)='-non_shared'
4421	    ;;
4422	  xlc* | xlC* | bgxl[[cC]]* | mpixl[[cC]]*)
4423	    # IBM XL 8.0, 9.0 on PPC and BlueGene
4424	    _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
4425	    _LT_TAGVAR(lt_prog_compiler_pic, $1)='-qpic'
4426	    _LT_TAGVAR(lt_prog_compiler_static, $1)='-qstaticlink'
4427	    ;;
4428	  *)
4429	    case `$CC -V 2>&1 | sed 5q` in
4430	    *Sun\ C*)
4431	      # Sun C++ 5.9
4432	      _LT_TAGVAR(lt_prog_compiler_pic, $1)='-KPIC'
4433	      _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic'
4434	      _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Qoption ld '
4435	      ;;
4436	    esac
4437	    ;;
4438	esac
4439	;;
4440      lynxos*)
4441	;;
4442      m88k*)
4443	;;
4444      mvs*)
4445	case $cc_basename in
4446	  cxx*)
4447	    _LT_TAGVAR(lt_prog_compiler_pic, $1)='-W c,exportall'
4448	    ;;
4449	  *)
4450	    ;;
4451	esac
4452	;;
4453      netbsd* | netbsdelf*-gnu)
4454	;;
4455      *qnx* | *nto*)
4456        # QNX uses GNU C++, but need to define -shared option too, otherwise
4457        # it will coredump.
4458        _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fPIC -shared'
4459        ;;
4460      osf3* | osf4* | osf5*)
4461	case $cc_basename in
4462	  KCC*)
4463	    _LT_TAGVAR(lt_prog_compiler_wl, $1)='--backend -Wl,'
4464	    ;;
4465	  RCC*)
4466	    # Rational C++ 2.4.1
4467	    _LT_TAGVAR(lt_prog_compiler_pic, $1)='-pic'
4468	    ;;
4469	  cxx*)
4470	    # Digital/Compaq C++
4471	    _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
4472	    # Make sure the PIC flag is empty.  It appears that all Alpha
4473	    # Linux and Compaq Tru64 Unix objects are PIC.
4474	    _LT_TAGVAR(lt_prog_compiler_pic, $1)=
4475	    _LT_TAGVAR(lt_prog_compiler_static, $1)='-non_shared'
4476	    ;;
4477	  *)
4478	    ;;
4479	esac
4480	;;
4481      psos*)
4482	;;
4483      solaris*)
4484	case $cc_basename in
4485	  CC* | sunCC*)
4486	    # Sun C++ 4.2, 5.x and Centerline C++
4487	    _LT_TAGVAR(lt_prog_compiler_pic, $1)='-KPIC'
4488	    _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic'
4489	    _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Qoption ld '
4490	    ;;
4491	  gcx*)
4492	    # Green Hills C++ Compiler
4493	    _LT_TAGVAR(lt_prog_compiler_pic, $1)='-PIC'
4494	    ;;
4495	  *)
4496	    ;;
4497	esac
4498	;;
4499      sunos4*)
4500	case $cc_basename in
4501	  CC*)
4502	    # Sun C++ 4.x
4503	    _LT_TAGVAR(lt_prog_compiler_pic, $1)='-pic'
4504	    _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic'
4505	    ;;
4506	  lcc*)
4507	    # Lucid
4508	    _LT_TAGVAR(lt_prog_compiler_pic, $1)='-pic'
4509	    ;;
4510	  *)
4511	    ;;
4512	esac
4513	;;
4514      sysv5* | unixware* | sco3.2v5* | sco5v6* | OpenUNIX*)
4515	case $cc_basename in
4516	  CC*)
4517	    _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
4518	    _LT_TAGVAR(lt_prog_compiler_pic, $1)='-KPIC'
4519	    _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic'
4520	    ;;
4521	esac
4522	;;
4523      tandem*)
4524	case $cc_basename in
4525	  NCC*)
4526	    # NonStop-UX NCC 3.20
4527	    _LT_TAGVAR(lt_prog_compiler_pic, $1)='-KPIC'
4528	    ;;
4529	  *)
4530	    ;;
4531	esac
4532	;;
4533      vxworks*)
4534	;;
4535      *)
4536	_LT_TAGVAR(lt_prog_compiler_can_build_shared, $1)=no
4537	;;
4538    esac
4539  fi
4540],
4541[
4542  if test yes = "$GCC"; then
4543    _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
4544    _LT_TAGVAR(lt_prog_compiler_static, $1)='-static'
4545
4546    case $host_os in
4547      aix*)
4548      # All AIX code is PIC.
4549      if test ia64 = "$host_cpu"; then
4550	# AIX 5 now supports IA64 processor
4551	_LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic'
4552      fi
4553      _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fPIC'
4554      ;;
4555
4556    amigaos*)
4557      case $host_cpu in
4558      powerpc)
4559            # see comment about AmigaOS4 .so support
4560            _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fPIC'
4561        ;;
4562      m68k)
4563            # FIXME: we need at least 68020 code to build shared libraries, but
4564            # adding the '-m68020' flag to GCC prevents building anything better,
4565            # like '-m68040'.
4566            _LT_TAGVAR(lt_prog_compiler_pic, $1)='-m68020 -resident32 -malways-restore-a4'
4567        ;;
4568      esac
4569      ;;
4570
4571    beos* | irix5* | irix6* | nonstopux* | osf3* | osf4* | osf5*)
4572      # PIC is the default for these OSes.
4573      ;;
4574
4575    mingw* | cygwin* | pw32* | os2* | cegcc*)
4576      # This hack is so that the source file can tell whether it is being
4577      # built for inclusion in a dll (and should export symbols for example).
4578      # Although the cygwin gcc ignores -fPIC, still need this for old-style
4579      # (--disable-auto-import) libraries
4580      m4_if([$1], [GCJ], [],
4581	[_LT_TAGVAR(lt_prog_compiler_pic, $1)='-DDLL_EXPORT'])
4582      case $host_os in
4583      os2*)
4584	_LT_TAGVAR(lt_prog_compiler_static, $1)='$wl-static'
4585	;;
4586      esac
4587      ;;
4588
4589    darwin* | rhapsody*)
4590      # PIC is the default on this platform
4591      # Common symbols not allowed in MH_DYLIB files
4592      _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fno-common'
4593      ;;
4594
4595    haiku*)
4596      # PIC is the default for Haiku.
4597      # The "-static" flag exists, but is broken.
4598      _LT_TAGVAR(lt_prog_compiler_static, $1)=
4599      ;;
4600
4601    hpux*)
4602      # PIC is the default for 64-bit PA HP-UX, but not for 32-bit
4603      # PA HP-UX.  On IA64 HP-UX, PIC is the default but the pic flag
4604      # sets the default TLS model and affects inlining.
4605      case $host_cpu in
4606      hppa*64*)
4607	# +Z the default
4608	;;
4609      *)
4610	_LT_TAGVAR(lt_prog_compiler_pic, $1)='-fPIC'
4611	;;
4612      esac
4613      ;;
4614
4615    interix[[3-9]]*)
4616      # Interix 3.x gcc -fpic/-fPIC options generate broken code.
4617      # Instead, we relocate shared libraries at runtime.
4618      ;;
4619
4620    msdosdjgpp*)
4621      # Just because we use GCC doesn't mean we suddenly get shared libraries
4622      # on systems that don't support them.
4623      _LT_TAGVAR(lt_prog_compiler_can_build_shared, $1)=no
4624      enable_shared=no
4625      ;;
4626
4627    *nto* | *qnx*)
4628      # QNX uses GNU C++, but need to define -shared option too, otherwise
4629      # it will coredump.
4630      _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fPIC -shared'
4631      ;;
4632
4633    sysv4*MP*)
4634      if test -d /usr/nec; then
4635	_LT_TAGVAR(lt_prog_compiler_pic, $1)=-Kconform_pic
4636      fi
4637      ;;
4638
4639    *)
4640      _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fPIC'
4641      ;;
4642    esac
4643
4644    case $cc_basename in
4645    nvcc*) # Cuda Compiler Driver 2.2
4646      _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Xlinker '
4647      if test -n "$_LT_TAGVAR(lt_prog_compiler_pic, $1)"; then
4648        _LT_TAGVAR(lt_prog_compiler_pic, $1)="-Xcompiler $_LT_TAGVAR(lt_prog_compiler_pic, $1)"
4649      fi
4650      ;;
4651    esac
4652  else
4653    # PORTME Check for flag to pass linker flags through the system compiler.
4654    case $host_os in
4655    aix*)
4656      _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
4657      if test ia64 = "$host_cpu"; then
4658	# AIX 5 now supports IA64 processor
4659	_LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic'
4660      else
4661	_LT_TAGVAR(lt_prog_compiler_static, $1)='-bnso -bI:/lib/syscalls.exp'
4662      fi
4663      ;;
4664
4665    darwin* | rhapsody*)
4666      # PIC is the default on this platform
4667      # Common symbols not allowed in MH_DYLIB files
4668      _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fno-common'
4669      case $cc_basename in
4670      nagfor*)
4671        # NAG Fortran compiler
4672        _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,-Wl,,'
4673        _LT_TAGVAR(lt_prog_compiler_pic, $1)='-PIC'
4674        _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic'
4675        ;;
4676      esac
4677      ;;
4678
4679    mingw* | cygwin* | pw32* | os2* | cegcc*)
4680      # This hack is so that the source file can tell whether it is being
4681      # built for inclusion in a dll (and should export symbols for example).
4682      m4_if([$1], [GCJ], [],
4683	[_LT_TAGVAR(lt_prog_compiler_pic, $1)='-DDLL_EXPORT'])
4684      case $host_os in
4685      os2*)
4686	_LT_TAGVAR(lt_prog_compiler_static, $1)='$wl-static'
4687	;;
4688      esac
4689      ;;
4690
4691    hpux9* | hpux10* | hpux11*)
4692      _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
4693      # PIC is the default for IA64 HP-UX and 64-bit HP-UX, but
4694      # not for PA HP-UX.
4695      case $host_cpu in
4696      hppa*64*|ia64*)
4697	# +Z the default
4698	;;
4699      *)
4700	_LT_TAGVAR(lt_prog_compiler_pic, $1)='+Z'
4701	;;
4702      esac
4703      # Is there a better lt_prog_compiler_static that works with the bundled CC?
4704      _LT_TAGVAR(lt_prog_compiler_static, $1)='$wl-a ${wl}archive'
4705      ;;
4706
4707    irix5* | irix6* | nonstopux*)
4708      _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
4709      # PIC (with -KPIC) is the default.
4710      _LT_TAGVAR(lt_prog_compiler_static, $1)='-non_shared'
4711      ;;
4712
4713    linux* | k*bsd*-gnu | kopensolaris*-gnu | gnu*)
4714      case $cc_basename in
4715      # old Intel for x86_64, which still supported -KPIC.
4716      ecc*)
4717	_LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
4718	_LT_TAGVAR(lt_prog_compiler_pic, $1)='-KPIC'
4719	_LT_TAGVAR(lt_prog_compiler_static, $1)='-static'
4720        ;;
4721      # icc used to be incompatible with GCC.
4722      # ICC 10 doesn't accept -KPIC any more.
4723      icc* | ifort*)
4724	_LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
4725	_LT_TAGVAR(lt_prog_compiler_pic, $1)='-fPIC'
4726	_LT_TAGVAR(lt_prog_compiler_static, $1)='-static'
4727        ;;
4728      # Lahey Fortran 8.1.
4729      lf95*)
4730	_LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
4731	_LT_TAGVAR(lt_prog_compiler_pic, $1)='--shared'
4732	_LT_TAGVAR(lt_prog_compiler_static, $1)='--static'
4733	;;
4734      nagfor*)
4735	# NAG Fortran compiler
4736	_LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,-Wl,,'
4737	_LT_TAGVAR(lt_prog_compiler_pic, $1)='-PIC'
4738	_LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic'
4739	;;
4740      tcc*)
4741	# Fabrice Bellard et al's Tiny C Compiler
4742	_LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
4743	_LT_TAGVAR(lt_prog_compiler_pic, $1)='-fPIC'
4744	_LT_TAGVAR(lt_prog_compiler_static, $1)='-static'
4745	;;
4746      pgcc* | pgf77* | pgf90* | pgf95* | pgfortran*)
4747        # Portland Group compilers (*not* the Pentium gcc compiler,
4748	# which looks to be a dead project)
4749	_LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
4750	_LT_TAGVAR(lt_prog_compiler_pic, $1)='-fpic'
4751	_LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic'
4752        ;;
4753      ccc*)
4754        _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
4755        # All Alpha code is PIC.
4756        _LT_TAGVAR(lt_prog_compiler_static, $1)='-non_shared'
4757        ;;
4758      xl* | bgxl* | bgf* | mpixl*)
4759	# IBM XL C 8.0/Fortran 10.1, 11.1 on PPC and BlueGene
4760	_LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
4761	_LT_TAGVAR(lt_prog_compiler_pic, $1)='-qpic'
4762	_LT_TAGVAR(lt_prog_compiler_static, $1)='-qstaticlink'
4763	;;
4764      *)
4765	case `$CC -V 2>&1 | sed 5q` in
4766	*Sun\ Ceres\ Fortran* | *Sun*Fortran*\ [[1-7]].* | *Sun*Fortran*\ 8.[[0-3]]*)
4767	  # Sun Fortran 8.3 passes all unrecognized flags to the linker
4768	  _LT_TAGVAR(lt_prog_compiler_pic, $1)='-KPIC'
4769	  _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic'
4770	  _LT_TAGVAR(lt_prog_compiler_wl, $1)=''
4771	  ;;
4772	*Sun\ F* | *Sun*Fortran*)
4773	  _LT_TAGVAR(lt_prog_compiler_pic, $1)='-KPIC'
4774	  _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic'
4775	  _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Qoption ld '
4776	  ;;
4777	*Sun\ C*)
4778	  # Sun C 5.9
4779	  _LT_TAGVAR(lt_prog_compiler_pic, $1)='-KPIC'
4780	  _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic'
4781	  _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
4782	  ;;
4783        *Intel*\ [[CF]]*Compiler*)
4784	  _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
4785	  _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fPIC'
4786	  _LT_TAGVAR(lt_prog_compiler_static, $1)='-static'
4787	  ;;
4788	*Portland\ Group*)
4789	  _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
4790	  _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fpic'
4791	  _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic'
4792	  ;;
4793	esac
4794	;;
4795      esac
4796      ;;
4797
4798    newsos6)
4799      _LT_TAGVAR(lt_prog_compiler_pic, $1)='-KPIC'
4800      _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic'
4801      ;;
4802
4803    *nto* | *qnx*)
4804      # QNX uses GNU C++, but need to define -shared option too, otherwise
4805      # it will coredump.
4806      _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fPIC -shared'
4807      ;;
4808
4809    osf3* | osf4* | osf5*)
4810      _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
4811      # All OSF/1 code is PIC.
4812      _LT_TAGVAR(lt_prog_compiler_static, $1)='-non_shared'
4813      ;;
4814
4815    rdos*)
4816      _LT_TAGVAR(lt_prog_compiler_static, $1)='-non_shared'
4817      ;;
4818
4819    solaris*)
4820      _LT_TAGVAR(lt_prog_compiler_pic, $1)='-KPIC'
4821      _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic'
4822      case $cc_basename in
4823      f77* | f90* | f95* | sunf77* | sunf90* | sunf95*)
4824	_LT_TAGVAR(lt_prog_compiler_wl, $1)='-Qoption ld ';;
4825      *)
4826	_LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,';;
4827      esac
4828      ;;
4829
4830    sunos4*)
4831      _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Qoption ld '
4832      _LT_TAGVAR(lt_prog_compiler_pic, $1)='-PIC'
4833      _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic'
4834      ;;
4835
4836    sysv4 | sysv4.2uw2* | sysv4.3*)
4837      _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
4838      _LT_TAGVAR(lt_prog_compiler_pic, $1)='-KPIC'
4839      _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic'
4840      ;;
4841
4842    sysv4*MP*)
4843      if test -d /usr/nec; then
4844	_LT_TAGVAR(lt_prog_compiler_pic, $1)='-Kconform_pic'
4845	_LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic'
4846      fi
4847      ;;
4848
4849    sysv5* | unixware* | sco3.2v5* | sco5v6* | OpenUNIX*)
4850      _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
4851      _LT_TAGVAR(lt_prog_compiler_pic, $1)='-KPIC'
4852      _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic'
4853      ;;
4854
4855    unicos*)
4856      _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
4857      _LT_TAGVAR(lt_prog_compiler_can_build_shared, $1)=no
4858      ;;
4859
4860    uts4*)
4861      _LT_TAGVAR(lt_prog_compiler_pic, $1)='-pic'
4862      _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic'
4863      ;;
4864
4865    *)
4866      _LT_TAGVAR(lt_prog_compiler_can_build_shared, $1)=no
4867      ;;
4868    esac
4869  fi
4870])
4871case $host_os in
4872  # For platforms that do not support PIC, -DPIC is meaningless:
4873  *djgpp*)
4874    _LT_TAGVAR(lt_prog_compiler_pic, $1)=
4875    ;;
4876  *)
4877    _LT_TAGVAR(lt_prog_compiler_pic, $1)="$_LT_TAGVAR(lt_prog_compiler_pic, $1)@&t@m4_if([$1],[],[ -DPIC],[m4_if([$1],[CXX],[ -DPIC],[])])"
4878    ;;
4879esac
4880
4881AC_CACHE_CHECK([for $compiler option to produce PIC],
4882  [_LT_TAGVAR(lt_cv_prog_compiler_pic, $1)],
4883  [_LT_TAGVAR(lt_cv_prog_compiler_pic, $1)=$_LT_TAGVAR(lt_prog_compiler_pic, $1)])
4884_LT_TAGVAR(lt_prog_compiler_pic, $1)=$_LT_TAGVAR(lt_cv_prog_compiler_pic, $1)
4885
4886#
4887# Check to make sure the PIC flag actually works.
4888#
4889if test -n "$_LT_TAGVAR(lt_prog_compiler_pic, $1)"; then
4890  _LT_COMPILER_OPTION([if $compiler PIC flag $_LT_TAGVAR(lt_prog_compiler_pic, $1) works],
4891    [_LT_TAGVAR(lt_cv_prog_compiler_pic_works, $1)],
4892    [$_LT_TAGVAR(lt_prog_compiler_pic, $1)@&t@m4_if([$1],[],[ -DPIC],[m4_if([$1],[CXX],[ -DPIC],[])])], [],
4893    [case $_LT_TAGVAR(lt_prog_compiler_pic, $1) in
4894     "" | " "*) ;;
4895     *) _LT_TAGVAR(lt_prog_compiler_pic, $1)=" $_LT_TAGVAR(lt_prog_compiler_pic, $1)" ;;
4896     esac],
4897    [_LT_TAGVAR(lt_prog_compiler_pic, $1)=
4898     _LT_TAGVAR(lt_prog_compiler_can_build_shared, $1)=no])
4899fi
4900_LT_TAGDECL([pic_flag], [lt_prog_compiler_pic], [1],
4901	[Additional compiler flags for building library objects])
4902
4903_LT_TAGDECL([wl], [lt_prog_compiler_wl], [1],
4904	[How to pass a linker flag through the compiler])
4905#
4906# Check to make sure the static flag actually works.
4907#
4908wl=$_LT_TAGVAR(lt_prog_compiler_wl, $1) eval lt_tmp_static_flag=\"$_LT_TAGVAR(lt_prog_compiler_static, $1)\"
4909_LT_LINKER_OPTION([if $compiler static flag $lt_tmp_static_flag works],
4910  _LT_TAGVAR(lt_cv_prog_compiler_static_works, $1),
4911  $lt_tmp_static_flag,
4912  [],
4913  [_LT_TAGVAR(lt_prog_compiler_static, $1)=])
4914_LT_TAGDECL([link_static_flag], [lt_prog_compiler_static], [1],
4915	[Compiler flag to prevent dynamic linking])
4916])# _LT_COMPILER_PIC
4917
4918
4919# _LT_LINKER_SHLIBS([TAGNAME])
4920# ----------------------------
4921# See if the linker supports building shared libraries.
4922m4_defun([_LT_LINKER_SHLIBS],
4923[AC_REQUIRE([LT_PATH_LD])dnl
4924AC_REQUIRE([LT_PATH_NM])dnl
4925m4_require([_LT_PATH_MANIFEST_TOOL])dnl
4926m4_require([_LT_FILEUTILS_DEFAULTS])dnl
4927m4_require([_LT_DECL_EGREP])dnl
4928m4_require([_LT_DECL_SED])dnl
4929m4_require([_LT_CMD_GLOBAL_SYMBOLS])dnl
4930m4_require([_LT_TAG_COMPILER])dnl
4931AC_MSG_CHECKING([whether the $compiler linker ($LD) supports shared libraries])
4932m4_if([$1], [CXX], [
4933  _LT_TAGVAR(export_symbols_cmds, $1)='$NM $libobjs $convenience | $global_symbol_pipe | $SED '\''s/.* //'\'' | sort | uniq > $export_symbols'
4934  _LT_TAGVAR(exclude_expsyms, $1)=['_GLOBAL_OFFSET_TABLE_|_GLOBAL__F[ID]_.*']
4935  case $host_os in
4936  aix[[4-9]]*)
4937    # If we're using GNU nm, then we don't want the "-C" option.
4938    # -C means demangle to GNU nm, but means don't demangle to AIX nm.
4939    # Without the "-l" option, or with the "-B" option, AIX nm treats
4940    # weak defined symbols like other global defined symbols, whereas
4941    # GNU nm marks them as "W".
4942    # While the 'weak' keyword is ignored in the Export File, we need
4943    # it in the Import File for the 'aix-soname' feature, so we have
4944    # to replace the "-B" option with "-P" for AIX nm.
4945    if $NM -V 2>&1 | $GREP 'GNU' > /dev/null; then
4946      _LT_TAGVAR(export_symbols_cmds, $1)='$NM -Bpg $libobjs $convenience | awk '\''{ if (((\$ 2 == "T") || (\$ 2 == "D") || (\$ 2 == "B") || (\$ 2 == "W")) && ([substr](\$ 3,1,1) != ".")) { if (\$ 2 == "W") { print \$ 3 " weak" } else { print \$ 3 } } }'\'' | sort -u > $export_symbols'
4947    else
4948      _LT_TAGVAR(export_symbols_cmds, $1)='`func_echo_all $NM | $SED -e '\''s/B\([[^B]]*\)$/P\1/'\''` -PCpgl $libobjs $convenience | awk '\''{ if (((\$ 2 == "T") || (\$ 2 == "D") || (\$ 2 == "B") || (\$ 2 == "W") || (\$ 2 == "V") || (\$ 2 == "Z")) && ([substr](\$ 1,1,1) != ".")) { if ((\$ 2 == "W") || (\$ 2 == "V") || (\$ 2 == "Z")) { print \$ 1 " weak" } else { print \$ 1 } } }'\'' | sort -u > $export_symbols'
4949    fi
4950    ;;
4951  pw32*)
4952    _LT_TAGVAR(export_symbols_cmds, $1)=$ltdll_cmds
4953    ;;
4954  cygwin* | mingw* | cegcc*)
4955    case $cc_basename in
4956    cl*)
4957      _LT_TAGVAR(exclude_expsyms, $1)='_NULL_IMPORT_DESCRIPTOR|_IMPORT_DESCRIPTOR_.*'
4958      ;;
4959    *)
4960      _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'
4961      _LT_TAGVAR(exclude_expsyms, $1)=['[_]+GLOBAL_OFFSET_TABLE_|[_]+GLOBAL__[FID]_.*|[_]+head_[A-Za-z0-9_]+_dll|[A-Za-z0-9_]+_dll_iname']
4962      ;;
4963    esac
4964    ;;
4965  linux* | k*bsd*-gnu | gnu*)
4966    _LT_TAGVAR(link_all_deplibs, $1)=no
4967    ;;
4968  *)
4969    _LT_TAGVAR(export_symbols_cmds, $1)='$NM $libobjs $convenience | $global_symbol_pipe | $SED '\''s/.* //'\'' | sort | uniq > $export_symbols'
4970    ;;
4971  esac
4972], [
4973  runpath_var=
4974  _LT_TAGVAR(allow_undefined_flag, $1)=
4975  _LT_TAGVAR(always_export_symbols, $1)=no
4976  _LT_TAGVAR(archive_cmds, $1)=
4977  _LT_TAGVAR(archive_expsym_cmds, $1)=
4978  _LT_TAGVAR(compiler_needs_object, $1)=no
4979  _LT_TAGVAR(enable_shared_with_static_runtimes, $1)=no
4980  _LT_TAGVAR(export_dynamic_flag_spec, $1)=
4981  _LT_TAGVAR(export_symbols_cmds, $1)='$NM $libobjs $convenience | $global_symbol_pipe | $SED '\''s/.* //'\'' | sort | uniq > $export_symbols'
4982  _LT_TAGVAR(hardcode_automatic, $1)=no
4983  _LT_TAGVAR(hardcode_direct, $1)=no
4984  _LT_TAGVAR(hardcode_direct_absolute, $1)=no
4985  _LT_TAGVAR(hardcode_libdir_flag_spec, $1)=
4986  _LT_TAGVAR(hardcode_libdir_separator, $1)=
4987  _LT_TAGVAR(hardcode_minus_L, $1)=no
4988  _LT_TAGVAR(hardcode_shlibpath_var, $1)=unsupported
4989  _LT_TAGVAR(inherit_rpath, $1)=no
4990  _LT_TAGVAR(link_all_deplibs, $1)=unknown
4991  _LT_TAGVAR(module_cmds, $1)=
4992  _LT_TAGVAR(module_expsym_cmds, $1)=
4993  _LT_TAGVAR(old_archive_from_new_cmds, $1)=
4994  _LT_TAGVAR(old_archive_from_expsyms_cmds, $1)=
4995  _LT_TAGVAR(thread_safe_flag_spec, $1)=
4996  _LT_TAGVAR(whole_archive_flag_spec, $1)=
4997  # include_expsyms should be a list of space-separated symbols to be *always*
4998  # included in the symbol list
4999  _LT_TAGVAR(include_expsyms, $1)=
5000  # exclude_expsyms can be an extended regexp of symbols to exclude
5001  # it will be wrapped by ' (' and ')$', so one must not match beginning or
5002  # end of line.  Example: 'a|bc|.*d.*' will exclude the symbols 'a' and 'bc',
5003  # as well as any symbol that contains 'd'.
5004  _LT_TAGVAR(exclude_expsyms, $1)=['_GLOBAL_OFFSET_TABLE_|_GLOBAL__F[ID]_.*']
5005  # Although _GLOBAL_OFFSET_TABLE_ is a valid symbol C name, most a.out
5006  # platforms (ab)use it in PIC code, but their linkers get confused if
5007  # the symbol is explicitly referenced.  Since portable code cannot
5008  # rely on this symbol name, it's probably fine to never include it in
5009  # preloaded symbol tables.
5010  # Exclude shared library initialization/finalization symbols.
5011dnl Note also adjust exclude_expsyms for C++ above.
5012  extract_expsyms_cmds=
5013
5014  case $host_os in
5015  cygwin* | mingw* | pw32* | cegcc*)
5016    # FIXME: the MSVC++ port hasn't been tested in a loooong time
5017    # When not using gcc, we currently assume that we are using
5018    # Microsoft Visual C++.
5019    if test yes != "$GCC"; then
5020      with_gnu_ld=no
5021    fi
5022    ;;
5023  interix*)
5024    # we just hope/assume this is gcc and not c89 (= MSVC++)
5025    with_gnu_ld=yes
5026    ;;
5027  openbsd* | bitrig*)
5028    with_gnu_ld=no
5029    ;;
5030  linux* | k*bsd*-gnu | gnu*)
5031    _LT_TAGVAR(link_all_deplibs, $1)=no
5032    ;;
5033  esac
5034
5035  _LT_TAGVAR(ld_shlibs, $1)=yes
5036
5037  # On some targets, GNU ld is compatible enough with the native linker
5038  # that we're better off using the native interface for both.
5039  lt_use_gnu_ld_interface=no
5040  if test yes = "$with_gnu_ld"; then
5041    case $host_os in
5042      aix*)
5043	# The AIX port of GNU ld has always aspired to compatibility
5044	# with the native linker.  However, as the warning in the GNU ld
5045	# block says, versions before 2.19.5* couldn't really create working
5046	# shared libraries, regardless of the interface used.
5047	case `$LD -v 2>&1` in
5048	  *\ \(GNU\ Binutils\)\ 2.19.5*) ;;
5049	  *\ \(GNU\ Binutils\)\ 2.[[2-9]]*) ;;
5050	  *\ \(GNU\ Binutils\)\ [[3-9]]*) ;;
5051	  *)
5052	    lt_use_gnu_ld_interface=yes
5053	    ;;
5054	esac
5055	;;
5056      *)
5057	lt_use_gnu_ld_interface=yes
5058	;;
5059    esac
5060  fi
5061
5062  if test yes = "$lt_use_gnu_ld_interface"; then
5063    # If archive_cmds runs LD, not CC, wlarc should be empty
5064    wlarc='$wl'
5065
5066    # Set some defaults for GNU ld with shared library support. These
5067    # are reset later if shared libraries are not supported. Putting them
5068    # here allows them to be overridden if necessary.
5069    runpath_var=LD_RUN_PATH
5070    _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='$wl-rpath $wl$libdir'
5071    _LT_TAGVAR(export_dynamic_flag_spec, $1)='$wl--export-dynamic'
5072    # ancient GNU ld didn't support --whole-archive et. al.
5073    if $LD --help 2>&1 | $GREP 'no-whole-archive' > /dev/null; then
5074      _LT_TAGVAR(whole_archive_flag_spec, $1)=$wlarc'--whole-archive$convenience '$wlarc'--no-whole-archive'
5075    else
5076      _LT_TAGVAR(whole_archive_flag_spec, $1)=
5077    fi
5078    supports_anon_versioning=no
5079    case `$LD -v | $SED -e 's/([^)]\+)\s\+//' 2>&1` in
5080      *GNU\ gold*) supports_anon_versioning=yes ;;
5081      *\ [[01]].* | *\ 2.[[0-9]].* | *\ 2.10.*) ;; # catch versions < 2.11
5082      *\ 2.11.93.0.2\ *) supports_anon_versioning=yes ;; # RH7.3 ...
5083      *\ 2.11.92.0.12\ *) supports_anon_versioning=yes ;; # Mandrake 8.2 ...
5084      *\ 2.11.*) ;; # other 2.11 versions
5085      *) supports_anon_versioning=yes ;;
5086    esac
5087
5088    # See if GNU ld supports shared libraries.
5089    case $host_os in
5090    aix[[3-9]]*)
5091      # On AIX/PPC, the GNU linker is very broken
5092      if test ia64 != "$host_cpu"; then
5093	_LT_TAGVAR(ld_shlibs, $1)=no
5094	cat <<_LT_EOF 1>&2
5095
5096*** Warning: the GNU linker, at least up to release 2.19, is reported
5097*** to be unable to reliably create shared libraries on AIX.
5098*** Therefore, libtool is disabling shared libraries support.  If you
5099*** really care for shared libraries, you may want to install binutils
5100*** 2.20 or above, or modify your PATH so that a non-GNU linker is found.
5101*** You will then need to restart the configuration process.
5102
5103_LT_EOF
5104      fi
5105      ;;
5106
5107    amigaos*)
5108      case $host_cpu in
5109      powerpc)
5110            # see comment about AmigaOS4 .so support
5111            _LT_TAGVAR(archive_cmds, $1)='$CC -shared $libobjs $deplibs $compiler_flags $wl-soname $wl$soname -o $lib'
5112            _LT_TAGVAR(archive_expsym_cmds, $1)=''
5113        ;;
5114      m68k)
5115            _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)'
5116            _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-L$libdir'
5117            _LT_TAGVAR(hardcode_minus_L, $1)=yes
5118        ;;
5119      esac
5120      ;;
5121
5122    beos*)
5123      if $LD --help 2>&1 | $GREP ': supported targets:.* elf' > /dev/null; then
5124	_LT_TAGVAR(allow_undefined_flag, $1)=unsupported
5125	# Joseph Beckenbach <jrb3@best.com> says some releases of gcc
5126	# support --undefined.  This deserves some investigation.  FIXME
5127	_LT_TAGVAR(archive_cmds, $1)='$CC -nostart $libobjs $deplibs $compiler_flags $wl-soname $wl$soname -o $lib'
5128      else
5129	_LT_TAGVAR(ld_shlibs, $1)=no
5130      fi
5131      ;;
5132
5133    cygwin* | mingw* | pw32* | cegcc*)
5134      # _LT_TAGVAR(hardcode_libdir_flag_spec, $1) is actually meaningless,
5135      # as there is no search path for DLLs.
5136      _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-L$libdir'
5137      _LT_TAGVAR(export_dynamic_flag_spec, $1)='$wl--export-all-symbols'
5138      _LT_TAGVAR(allow_undefined_flag, $1)=unsupported
5139      _LT_TAGVAR(always_export_symbols, $1)=no
5140      _LT_TAGVAR(enable_shared_with_static_runtimes, $1)=yes
5141      _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'
5142      _LT_TAGVAR(exclude_expsyms, $1)=['[_]+GLOBAL_OFFSET_TABLE_|[_]+GLOBAL__[FID]_.*|[_]+head_[A-Za-z0-9_]+_dll|[A-Za-z0-9_]+_dll_iname']
5143
5144      if $LD --help 2>&1 | $GREP 'auto-import' > /dev/null; then
5145        _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'
5146	# If the export-symbols file already is a .def file, use it as
5147	# is; otherwise, prepend EXPORTS...
5148	_LT_TAGVAR(archive_expsym_cmds, $1)='if _LT_DLL_DEF_P([$export_symbols]); then
5149          cp $export_symbols $output_objdir/$soname.def;
5150        else
5151          echo EXPORTS > $output_objdir/$soname.def;
5152          cat $export_symbols >> $output_objdir/$soname.def;
5153        fi~
5154        $CC -shared $output_objdir/$soname.def $libobjs $deplibs $compiler_flags -o $output_objdir/$soname $wl--enable-auto-image-base -Xlinker --out-implib -Xlinker $lib'
5155      else
5156	_LT_TAGVAR(ld_shlibs, $1)=no
5157      fi
5158      ;;
5159
5160    haiku*)
5161      _LT_TAGVAR(archive_cmds, $1)='$CC -shared $libobjs $deplibs $compiler_flags $wl-soname $wl$soname -o $lib'
5162      _LT_TAGVAR(link_all_deplibs, $1)=yes
5163      ;;
5164
5165    os2*)
5166      _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-L$libdir'
5167      _LT_TAGVAR(hardcode_minus_L, $1)=yes
5168      _LT_TAGVAR(allow_undefined_flag, $1)=unsupported
5169      shrext_cmds=.dll
5170      _LT_TAGVAR(archive_cmds, $1)='$ECHO "LIBRARY ${soname%$shared_ext} INITINSTANCE TERMINSTANCE" > $output_objdir/$libname.def~
5171	$ECHO "DESCRIPTION \"$libname\"" >> $output_objdir/$libname.def~
5172	$ECHO "DATA MULTIPLE NONSHARED" >> $output_objdir/$libname.def~
5173	$ECHO EXPORTS >> $output_objdir/$libname.def~
5174	emxexp $libobjs | $SED /"_DLL_InitTerm"/d >> $output_objdir/$libname.def~
5175	$CC -Zdll -Zcrtdll -o $output_objdir/$soname $libobjs $deplibs $compiler_flags $output_objdir/$libname.def~
5176	emximp -o $lib $output_objdir/$libname.def'
5177      _LT_TAGVAR(archive_expsym_cmds, $1)='$ECHO "LIBRARY ${soname%$shared_ext} INITINSTANCE TERMINSTANCE" > $output_objdir/$libname.def~
5178	$ECHO "DESCRIPTION \"$libname\"" >> $output_objdir/$libname.def~
5179	$ECHO "DATA MULTIPLE NONSHARED" >> $output_objdir/$libname.def~
5180	$ECHO EXPORTS >> $output_objdir/$libname.def~
5181	prefix_cmds="$SED"~
5182	if test EXPORTS = "`$SED 1q $export_symbols`"; then
5183	  prefix_cmds="$prefix_cmds -e 1d";
5184	fi~
5185	prefix_cmds="$prefix_cmds -e \"s/^\(.*\)$/_\1/g\""~
5186	cat $export_symbols | $prefix_cmds >> $output_objdir/$libname.def~
5187	$CC -Zdll -Zcrtdll -o $output_objdir/$soname $libobjs $deplibs $compiler_flags $output_objdir/$libname.def~
5188	emximp -o $lib $output_objdir/$libname.def'
5189      _LT_TAGVAR(old_archive_From_new_cmds, $1)='emximp -o $output_objdir/${libname}_dll.a $output_objdir/$libname.def'
5190      _LT_TAGVAR(enable_shared_with_static_runtimes, $1)=yes
5191      ;;
5192
5193    interix[[3-9]]*)
5194      _LT_TAGVAR(hardcode_direct, $1)=no
5195      _LT_TAGVAR(hardcode_shlibpath_var, $1)=no
5196      _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='$wl-rpath,$libdir'
5197      _LT_TAGVAR(export_dynamic_flag_spec, $1)='$wl-E'
5198      # Hack: On Interix 3.x, we cannot compile PIC because of a broken gcc.
5199      # Instead, shared libraries are loaded at an image base (0x10000000 by
5200      # default) and relocated if they conflict, which is a slow very memory
5201      # consuming and fragmenting process.  To avoid this, we pick a random,
5202      # 256 KiB-aligned image base between 0x50000000 and 0x6FFC0000 at link
5203      # time.  Moving up from 0x10000000 also allows more sbrk(2) space.
5204      _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'
5205      _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'
5206      ;;
5207
5208    gnu* | linux* | tpf* | k*bsd*-gnu | kopensolaris*-gnu)
5209      tmp_diet=no
5210      if test linux-dietlibc = "$host_os"; then
5211	case $cc_basename in
5212	  diet\ *) tmp_diet=yes;;	# linux-dietlibc with static linking (!diet-dyn)
5213	esac
5214      fi
5215      if $LD --help 2>&1 | $EGREP ': supported targets:.* elf' > /dev/null \
5216	 && test no = "$tmp_diet"
5217      then
5218	tmp_addflag=' $pic_flag'
5219	tmp_sharedflag='-shared'
5220	case $cc_basename,$host_cpu in
5221        pgcc*)				# Portland Group C compiler
5222	  _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'
5223	  tmp_addflag=' $pic_flag'
5224	  ;;
5225	pgf77* | pgf90* | pgf95* | pgfortran*)
5226					# Portland Group f77 and f90 compilers
5227	  _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'
5228	  tmp_addflag=' $pic_flag -Mnomain' ;;
5229	ecc*,ia64* | icc*,ia64*)	# Intel C compiler on ia64
5230	  tmp_addflag=' -i_dynamic' ;;
5231	efc*,ia64* | ifort*,ia64*)	# Intel Fortran compiler on ia64
5232	  tmp_addflag=' -i_dynamic -nofor_main' ;;
5233	ifc* | ifort*)			# Intel Fortran compiler
5234	  tmp_addflag=' -nofor_main' ;;
5235	lf95*)				# Lahey Fortran 8.1
5236	  _LT_TAGVAR(whole_archive_flag_spec, $1)=
5237	  tmp_sharedflag='--shared' ;;
5238        nagfor*)                        # NAGFOR 5.3
5239          tmp_sharedflag='-Wl,-shared' ;;
5240	xl[[cC]]* | bgxl[[cC]]* | mpixl[[cC]]*) # IBM XL C 8.0 on PPC (deal with xlf below)
5241	  tmp_sharedflag='-qmkshrobj'
5242	  tmp_addflag= ;;
5243	nvcc*)	# Cuda Compiler Driver 2.2
5244	  _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'
5245	  _LT_TAGVAR(compiler_needs_object, $1)=yes
5246	  ;;
5247	esac
5248	case `$CC -V 2>&1 | sed 5q` in
5249	*Sun\ C*)			# Sun C 5.9
5250	  _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'
5251	  _LT_TAGVAR(compiler_needs_object, $1)=yes
5252	  tmp_sharedflag='-G' ;;
5253	*Sun\ F*)			# Sun Fortran 8.3
5254	  tmp_sharedflag='-G' ;;
5255	esac
5256	_LT_TAGVAR(archive_cmds, $1)='$CC '"$tmp_sharedflag""$tmp_addflag"' $libobjs $deplibs $compiler_flags $wl-soname $wl$soname -o $lib'
5257
5258        if test yes = "$supports_anon_versioning"; then
5259          _LT_TAGVAR(archive_expsym_cmds, $1)='echo "{ global:" > $output_objdir/$libname.ver~
5260            cat $export_symbols | sed -e "s/\(.*\)/\1;/" >> $output_objdir/$libname.ver~
5261            echo "local: *; };" >> $output_objdir/$libname.ver~
5262            $CC '"$tmp_sharedflag""$tmp_addflag"' $libobjs $deplibs $compiler_flags $wl-soname $wl$soname $wl-version-script $wl$output_objdir/$libname.ver -o $lib'
5263        fi
5264
5265	case $cc_basename in
5266	tcc*)
5267	  _LT_TAGVAR(export_dynamic_flag_spec, $1)='-rdynamic'
5268	  ;;
5269	xlf* | bgf* | bgxlf* | mpixlf*)
5270	  # IBM XL Fortran 10.1 on PPC cannot create shared libs itself
5271	  _LT_TAGVAR(whole_archive_flag_spec, $1)='--whole-archive$convenience --no-whole-archive'
5272	  _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='$wl-rpath $wl$libdir'
5273	  _LT_TAGVAR(archive_cmds, $1)='$LD -shared $libobjs $deplibs $linker_flags -soname $soname -o $lib'
5274	  if test yes = "$supports_anon_versioning"; then
5275	    _LT_TAGVAR(archive_expsym_cmds, $1)='echo "{ global:" > $output_objdir/$libname.ver~
5276              cat $export_symbols | sed -e "s/\(.*\)/\1;/" >> $output_objdir/$libname.ver~
5277              echo "local: *; };" >> $output_objdir/$libname.ver~
5278              $LD -shared $libobjs $deplibs $linker_flags -soname $soname -version-script $output_objdir/$libname.ver -o $lib'
5279	  fi
5280	  ;;
5281	esac
5282      else
5283        _LT_TAGVAR(ld_shlibs, $1)=no
5284      fi
5285      ;;
5286
5287    netbsd* | netbsdelf*-gnu)
5288      if echo __ELF__ | $CC -E - | $GREP __ELF__ >/dev/null; then
5289	_LT_TAGVAR(archive_cmds, $1)='$LD -Bshareable $libobjs $deplibs $linker_flags -o $lib'
5290	wlarc=
5291      else
5292	_LT_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag $libobjs $deplibs $compiler_flags $wl-soname $wl$soname -o $lib'
5293	_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'
5294      fi
5295      ;;
5296
5297    solaris*)
5298      if $LD -v 2>&1 | $GREP 'BFD 2\.8' > /dev/null; then
5299	_LT_TAGVAR(ld_shlibs, $1)=no
5300	cat <<_LT_EOF 1>&2
5301
5302*** Warning: The releases 2.8.* of the GNU linker cannot reliably
5303*** create shared libraries on Solaris systems.  Therefore, libtool
5304*** is disabling shared libraries support.  We urge you to upgrade GNU
5305*** binutils to release 2.9.1 or newer.  Another option is to modify
5306*** your PATH or compiler configuration so that the native linker is
5307*** used, and then restart.
5308
5309_LT_EOF
5310      elif $LD --help 2>&1 | $GREP ': supported targets:.* elf' > /dev/null; then
5311	_LT_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag $libobjs $deplibs $compiler_flags $wl-soname $wl$soname -o $lib'
5312	_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'
5313      else
5314	_LT_TAGVAR(ld_shlibs, $1)=no
5315      fi
5316      ;;
5317
5318    sysv5* | sco3.2v5* | sco5v6* | unixware* | OpenUNIX*)
5319      case `$LD -v 2>&1` in
5320        *\ [[01]].* | *\ 2.[[0-9]].* | *\ 2.1[[0-5]].*)
5321	_LT_TAGVAR(ld_shlibs, $1)=no
5322	cat <<_LT_EOF 1>&2
5323
5324*** Warning: Releases of the GNU linker prior to 2.16.91.0.3 cannot
5325*** reliably create shared libraries on SCO systems.  Therefore, libtool
5326*** is disabling shared libraries support.  We urge you to upgrade GNU
5327*** binutils to release 2.16.91.0.3 or newer.  Another option is to modify
5328*** your PATH or compiler configuration so that the native linker is
5329*** used, and then restart.
5330
5331_LT_EOF
5332	;;
5333	*)
5334	  # For security reasons, it is highly recommended that you always
5335	  # use absolute paths for naming shared libraries, and exclude the
5336	  # DT_RUNPATH tag from executables and libraries.  But doing so
5337	  # requires that you compile everything twice, which is a pain.
5338	  if $LD --help 2>&1 | $GREP ': supported targets:.* elf' > /dev/null; then
5339	    _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='$wl-rpath $wl$libdir'
5340	    _LT_TAGVAR(archive_cmds, $1)='$CC -shared $libobjs $deplibs $compiler_flags $wl-soname $wl$soname -o $lib'
5341	    _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'
5342	  else
5343	    _LT_TAGVAR(ld_shlibs, $1)=no
5344	  fi
5345	;;
5346      esac
5347      ;;
5348
5349    sunos4*)
5350      _LT_TAGVAR(archive_cmds, $1)='$LD -assert pure-text -Bshareable -o $lib $libobjs $deplibs $linker_flags'
5351      wlarc=
5352      _LT_TAGVAR(hardcode_direct, $1)=yes
5353      _LT_TAGVAR(hardcode_shlibpath_var, $1)=no
5354      ;;
5355
5356    *)
5357      if $LD --help 2>&1 | $GREP ': supported targets:.* elf' > /dev/null; then
5358	_LT_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag $libobjs $deplibs $compiler_flags $wl-soname $wl$soname -o $lib'
5359	_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'
5360      else
5361	_LT_TAGVAR(ld_shlibs, $1)=no
5362      fi
5363      ;;
5364    esac
5365
5366    if test no = "$_LT_TAGVAR(ld_shlibs, $1)"; then
5367      runpath_var=
5368      _LT_TAGVAR(hardcode_libdir_flag_spec, $1)=
5369      _LT_TAGVAR(export_dynamic_flag_spec, $1)=
5370      _LT_TAGVAR(whole_archive_flag_spec, $1)=
5371    fi
5372  else
5373    # PORTME fill in a description of your system's linker (not GNU ld)
5374    case $host_os in
5375    aix3*)
5376      _LT_TAGVAR(allow_undefined_flag, $1)=unsupported
5377      _LT_TAGVAR(always_export_symbols, $1)=yes
5378      _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'
5379      # Note: this linker hardcodes the directories in LIBPATH if there
5380      # are no directories specified by -L.
5381      _LT_TAGVAR(hardcode_minus_L, $1)=yes
5382      if test yes = "$GCC" && test -z "$lt_prog_compiler_static"; then
5383	# Neither direct hardcoding nor static linking is supported with a
5384	# broken collect2.
5385	_LT_TAGVAR(hardcode_direct, $1)=unsupported
5386      fi
5387      ;;
5388
5389    aix[[4-9]]*)
5390      if test ia64 = "$host_cpu"; then
5391	# On IA64, the linker does run time linking by default, so we don't
5392	# have to do anything special.
5393	aix_use_runtimelinking=no
5394	exp_sym_flag='-Bexport'
5395	no_entry_flag=
5396      else
5397	# If we're using GNU nm, then we don't want the "-C" option.
5398	# -C means demangle to GNU nm, but means don't demangle to AIX nm.
5399	# Without the "-l" option, or with the "-B" option, AIX nm treats
5400	# weak defined symbols like other global defined symbols, whereas
5401	# GNU nm marks them as "W".
5402	# While the 'weak' keyword is ignored in the Export File, we need
5403	# it in the Import File for the 'aix-soname' feature, so we have
5404	# to replace the "-B" option with "-P" for AIX nm.
5405	if $NM -V 2>&1 | $GREP 'GNU' > /dev/null; then
5406	  _LT_TAGVAR(export_symbols_cmds, $1)='$NM -Bpg $libobjs $convenience | awk '\''{ if (((\$ 2 == "T") || (\$ 2 == "D") || (\$ 2 == "B") || (\$ 2 == "W")) && ([substr](\$ 3,1,1) != ".")) { if (\$ 2 == "W") { print \$ 3 " weak" } else { print \$ 3 } } }'\'' | sort -u > $export_symbols'
5407	else
5408	  _LT_TAGVAR(export_symbols_cmds, $1)='`func_echo_all $NM | $SED -e '\''s/B\([[^B]]*\)$/P\1/'\''` -PCpgl $libobjs $convenience | awk '\''{ if (((\$ 2 == "T") || (\$ 2 == "D") || (\$ 2 == "B") || (\$ 2 == "W") || (\$ 2 == "V") || (\$ 2 == "Z")) && ([substr](\$ 1,1,1) != ".")) { if ((\$ 2 == "W") || (\$ 2 == "V") || (\$ 2 == "Z")) { print \$ 1 " weak" } else { print \$ 1 } } }'\'' | sort -u > $export_symbols'
5409	fi
5410	aix_use_runtimelinking=no
5411
5412	# Test if we are trying to use run time linking or normal
5413	# AIX style linking. If -brtl is somewhere in LDFLAGS, we
5414	# have runtime linking enabled, and use it for executables.
5415	# For shared libraries, we enable/disable runtime linking
5416	# depending on the kind of the shared library created -
5417	# when "with_aix_soname,aix_use_runtimelinking" is:
5418	# "aix,no"   lib.a(lib.so.V) shared, rtl:no,  for executables
5419	# "aix,yes"  lib.so          shared, rtl:yes, for executables
5420	#            lib.a           static archive
5421	# "both,no"  lib.so.V(shr.o) shared, rtl:yes
5422	#            lib.a(lib.so.V) shared, rtl:no,  for executables
5423	# "both,yes" lib.so.V(shr.o) shared, rtl:yes, for executables
5424	#            lib.a(lib.so.V) shared, rtl:no
5425	# "svr4,*"   lib.so.V(shr.o) shared, rtl:yes, for executables
5426	#            lib.a           static archive
5427	case $host_os in aix4.[[23]]|aix4.[[23]].*|aix[[5-9]]*)
5428	  for ld_flag in $LDFLAGS; do
5429	  if (test x-brtl = "x$ld_flag" || test x-Wl,-brtl = "x$ld_flag"); then
5430	    aix_use_runtimelinking=yes
5431	    break
5432	  fi
5433	  done
5434	  if test svr4,no = "$with_aix_soname,$aix_use_runtimelinking"; then
5435	    # With aix-soname=svr4, we create the lib.so.V shared archives only,
5436	    # so we don't have lib.a shared libs to link our executables.
5437	    # We have to force runtime linking in this case.
5438	    aix_use_runtimelinking=yes
5439	    LDFLAGS="$LDFLAGS -Wl,-brtl"
5440	  fi
5441	  ;;
5442	esac
5443
5444	exp_sym_flag='-bexport'
5445	no_entry_flag='-bnoentry'
5446      fi
5447
5448      # When large executables or shared objects are built, AIX ld can
5449      # have problems creating the table of contents.  If linking a library
5450      # or program results in "error TOC overflow" add -mminimal-toc to
5451      # CXXFLAGS/CFLAGS for g++/gcc.  In the cases where that is not
5452      # enough to fix the problem, add -Wl,-bbigtoc to LDFLAGS.
5453
5454      _LT_TAGVAR(archive_cmds, $1)=''
5455      _LT_TAGVAR(hardcode_direct, $1)=yes
5456      _LT_TAGVAR(hardcode_direct_absolute, $1)=yes
5457      _LT_TAGVAR(hardcode_libdir_separator, $1)=':'
5458      _LT_TAGVAR(link_all_deplibs, $1)=yes
5459      _LT_TAGVAR(file_list_spec, $1)='$wl-f,'
5460      case $with_aix_soname,$aix_use_runtimelinking in
5461      aix,*) ;; # traditional, no import file
5462      svr4,* | *,yes) # use import file
5463	# The Import File defines what to hardcode.
5464	_LT_TAGVAR(hardcode_direct, $1)=no
5465	_LT_TAGVAR(hardcode_direct_absolute, $1)=no
5466	;;
5467      esac
5468
5469      if test yes = "$GCC"; then
5470	case $host_os in aix4.[[012]]|aix4.[[012]].*)
5471	# We only want to do this on AIX 4.2 and lower, the check
5472	# below for broken collect2 doesn't work under 4.3+
5473	  collect2name=`$CC -print-prog-name=collect2`
5474	  if test -f "$collect2name" &&
5475	   strings "$collect2name" | $GREP resolve_lib_name >/dev/null
5476	  then
5477	  # We have reworked collect2
5478	  :
5479	  else
5480	  # We have old collect2
5481	  _LT_TAGVAR(hardcode_direct, $1)=unsupported
5482	  # It fails to find uninstalled libraries when the uninstalled
5483	  # path is not listed in the libpath.  Setting hardcode_minus_L
5484	  # to unsupported forces relinking
5485	  _LT_TAGVAR(hardcode_minus_L, $1)=yes
5486	  _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-L$libdir'
5487	  _LT_TAGVAR(hardcode_libdir_separator, $1)=
5488	  fi
5489	  ;;
5490	esac
5491	shared_flag='-shared'
5492	if test yes = "$aix_use_runtimelinking"; then
5493	  shared_flag="$shared_flag "'$wl-G'
5494	fi
5495	# Need to ensure runtime linking is disabled for the traditional
5496	# shared library, or the linker may eventually find shared libraries
5497	# /with/ Import File - we do not want to mix them.
5498	shared_flag_aix='-shared'
5499	shared_flag_svr4='-shared $wl-G'
5500      else
5501	# not using gcc
5502	if test ia64 = "$host_cpu"; then
5503	# VisualAge C++, Version 5.5 for AIX 5L for IA-64, Beta 3 Release
5504	# chokes on -Wl,-G. The following line is correct:
5505	  shared_flag='-G'
5506	else
5507	  if test yes = "$aix_use_runtimelinking"; then
5508	    shared_flag='$wl-G'
5509	  else
5510	    shared_flag='$wl-bM:SRE'
5511	  fi
5512	  shared_flag_aix='$wl-bM:SRE'
5513	  shared_flag_svr4='$wl-G'
5514	fi
5515      fi
5516
5517      _LT_TAGVAR(export_dynamic_flag_spec, $1)='$wl-bexpall'
5518      # It seems that -bexpall does not export symbols beginning with
5519      # underscore (_), so it is better to generate a list of symbols to export.
5520      _LT_TAGVAR(always_export_symbols, $1)=yes
5521      if test aix,yes = "$with_aix_soname,$aix_use_runtimelinking"; then
5522	# Warning - without using the other runtime loading flags (-brtl),
5523	# -berok will link without error, but may produce a broken library.
5524	_LT_TAGVAR(allow_undefined_flag, $1)='-berok'
5525        # Determine the default libpath from the value encoded in an
5526        # empty executable.
5527        _LT_SYS_MODULE_PATH_AIX([$1])
5528        _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='$wl-blibpath:$libdir:'"$aix_libpath"
5529        _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -o $output_objdir/$soname $libobjs $deplibs $wl'$no_entry_flag' $compiler_flags `if test -n "$allow_undefined_flag"; then func_echo_all "$wl$allow_undefined_flag"; else :; fi` $wl'$exp_sym_flag:\$export_symbols' '$shared_flag
5530      else
5531	if test ia64 = "$host_cpu"; then
5532	  _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='$wl-R $libdir:/usr/lib:/lib'
5533	  _LT_TAGVAR(allow_undefined_flag, $1)="-z nodefs"
5534	  _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"
5535	else
5536	 # Determine the default libpath from the value encoded in an
5537	 # empty executable.
5538	 _LT_SYS_MODULE_PATH_AIX([$1])
5539	 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='$wl-blibpath:$libdir:'"$aix_libpath"
5540	  # Warning - without using the other run time loading flags,
5541	  # -berok will link without error, but may produce a broken library.
5542	  _LT_TAGVAR(no_undefined_flag, $1)=' $wl-bernotok'
5543	  _LT_TAGVAR(allow_undefined_flag, $1)=' $wl-berok'
5544	  if test yes = "$with_gnu_ld"; then
5545	    # We only use this code for GNU lds that support --whole-archive.
5546	    _LT_TAGVAR(whole_archive_flag_spec, $1)='$wl--whole-archive$convenience $wl--no-whole-archive'
5547	  else
5548	    # Exported symbols can be pulled into shared objects from archives
5549	    _LT_TAGVAR(whole_archive_flag_spec, $1)='$convenience'
5550	  fi
5551	  _LT_TAGVAR(archive_cmds_need_lc, $1)=yes
5552	  _LT_TAGVAR(archive_expsym_cmds, $1)='$RM -r $output_objdir/$realname.d~$MKDIR $output_objdir/$realname.d'
5553	  # -brtl affects multiple linker settings, -berok does not and is overridden later
5554	  compiler_flags_filtered='`func_echo_all "$compiler_flags " | $SED -e "s%-brtl\\([[, ]]\\)%-berok\\1%g"`'
5555	  if test svr4 != "$with_aix_soname"; then
5556	    # This is similar to how AIX traditionally builds its shared libraries.
5557	    _LT_TAGVAR(archive_expsym_cmds, $1)="$_LT_TAGVAR(archive_expsym_cmds, $1)"'~$CC '$shared_flag_aix' -o $output_objdir/$realname.d/$soname $libobjs $deplibs $wl-bnoentry '$compiler_flags_filtered'$wl-bE:$export_symbols$allow_undefined_flag~$AR $AR_FLAGS $output_objdir/$libname$release.a $output_objdir/$realname.d/$soname'
5558	  fi
5559	  if test aix != "$with_aix_soname"; then
5560	    _LT_TAGVAR(archive_expsym_cmds, $1)="$_LT_TAGVAR(archive_expsym_cmds, $1)"'~$CC '$shared_flag_svr4' -o $output_objdir/$realname.d/$shared_archive_member_spec.o $libobjs $deplibs $wl-bnoentry '$compiler_flags_filtered'$wl-bE:$export_symbols$allow_undefined_flag~$STRIP -e $output_objdir/$realname.d/$shared_archive_member_spec.o~( func_echo_all "#! $soname($shared_archive_member_spec.o)"; if test shr_64 = "$shared_archive_member_spec"; then func_echo_all "# 64"; else func_echo_all "# 32"; fi; cat $export_symbols ) > $output_objdir/$realname.d/$shared_archive_member_spec.imp~$AR $AR_FLAGS $output_objdir/$soname $output_objdir/$realname.d/$shared_archive_member_spec.o $output_objdir/$realname.d/$shared_archive_member_spec.imp'
5561	  else
5562	    # used by -dlpreopen to get the symbols
5563	    _LT_TAGVAR(archive_expsym_cmds, $1)="$_LT_TAGVAR(archive_expsym_cmds, $1)"'~$MV  $output_objdir/$realname.d/$soname $output_objdir'
5564	  fi
5565	  _LT_TAGVAR(archive_expsym_cmds, $1)="$_LT_TAGVAR(archive_expsym_cmds, $1)"'~$RM -r $output_objdir/$realname.d'
5566	fi
5567      fi
5568      ;;
5569
5570    amigaos*)
5571      case $host_cpu in
5572      powerpc)
5573            # see comment about AmigaOS4 .so support
5574            _LT_TAGVAR(archive_cmds, $1)='$CC -shared $libobjs $deplibs $compiler_flags $wl-soname $wl$soname -o $lib'
5575            _LT_TAGVAR(archive_expsym_cmds, $1)=''
5576        ;;
5577      m68k)
5578            _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)'
5579            _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-L$libdir'
5580            _LT_TAGVAR(hardcode_minus_L, $1)=yes
5581        ;;
5582      esac
5583      ;;
5584
5585    bsdi[[45]]*)
5586      _LT_TAGVAR(export_dynamic_flag_spec, $1)=-rdynamic
5587      ;;
5588
5589    cygwin* | mingw* | pw32* | cegcc*)
5590      # When not using gcc, we currently assume that we are using
5591      # Microsoft Visual C++.
5592      # hardcode_libdir_flag_spec is actually meaningless, as there is
5593      # no search path for DLLs.
5594      case $cc_basename in
5595      cl*)
5596	# Native MSVC
5597	_LT_TAGVAR(hardcode_libdir_flag_spec, $1)=' '
5598	_LT_TAGVAR(allow_undefined_flag, $1)=unsupported
5599	_LT_TAGVAR(always_export_symbols, $1)=yes
5600	_LT_TAGVAR(file_list_spec, $1)='@'
5601	# Tell ltmain to make .lib files, not .a files.
5602	libext=lib
5603	# Tell ltmain to make .dll files, not .so files.
5604	shrext_cmds=.dll
5605	# FIXME: Setting linknames here is a bad hack.
5606	_LT_TAGVAR(archive_cmds, $1)='$CC -o $output_objdir/$soname $libobjs $compiler_flags $deplibs -Wl,-DLL,-IMPLIB:"$tool_output_objdir$libname.dll.lib"~linknames='
5607	_LT_TAGVAR(archive_expsym_cmds, $1)='if _LT_DLL_DEF_P([$export_symbols]); then
5608            cp "$export_symbols" "$output_objdir/$soname.def";
5609            echo "$tool_output_objdir$soname.def" > "$output_objdir/$soname.exp";
5610          else
5611            $SED -e '\''s/^/-link -EXPORT:/'\'' < $export_symbols > $output_objdir/$soname.exp;
5612          fi~
5613          $CC -o $tool_output_objdir$soname $libobjs $compiler_flags $deplibs "@$tool_output_objdir$soname.exp" -Wl,-DLL,-IMPLIB:"$tool_output_objdir$libname.dll.lib"~
5614          linknames='
5615	# The linker will not automatically build a static lib if we build a DLL.
5616	# _LT_TAGVAR(old_archive_from_new_cmds, $1)='true'
5617	_LT_TAGVAR(enable_shared_with_static_runtimes, $1)=yes
5618	_LT_TAGVAR(exclude_expsyms, $1)='_NULL_IMPORT_DESCRIPTOR|_IMPORT_DESCRIPTOR_.*'
5619	_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'
5620	# Don't use ranlib
5621	_LT_TAGVAR(old_postinstall_cmds, $1)='chmod 644 $oldlib'
5622	_LT_TAGVAR(postlink_cmds, $1)='lt_outputfile="@OUTPUT@"~
5623          lt_tool_outputfile="@TOOL_OUTPUT@"~
5624          case $lt_outputfile in
5625            *.exe|*.EXE) ;;
5626            *)
5627              lt_outputfile=$lt_outputfile.exe
5628              lt_tool_outputfile=$lt_tool_outputfile.exe
5629              ;;
5630          esac~
5631          if test : != "$MANIFEST_TOOL" && test -f "$lt_outputfile.manifest"; then
5632            $MANIFEST_TOOL -manifest "$lt_tool_outputfile.manifest" -outputresource:"$lt_tool_outputfile" || exit 1;
5633            $RM "$lt_outputfile.manifest";
5634          fi'
5635	;;
5636      *)
5637	# Assume MSVC wrapper
5638	_LT_TAGVAR(hardcode_libdir_flag_spec, $1)=' '
5639	_LT_TAGVAR(allow_undefined_flag, $1)=unsupported
5640	# Tell ltmain to make .lib files, not .a files.
5641	libext=lib
5642	# Tell ltmain to make .dll files, not .so files.
5643	shrext_cmds=.dll
5644	# FIXME: Setting linknames here is a bad hack.
5645	_LT_TAGVAR(archive_cmds, $1)='$CC -o $lib $libobjs $compiler_flags `func_echo_all "$deplibs" | $SED '\''s/ -lc$//'\''` -link -dll~linknames='
5646	# The linker will automatically build a .lib file if we build a DLL.
5647	_LT_TAGVAR(old_archive_from_new_cmds, $1)='true'
5648	# FIXME: Should let the user specify the lib program.
5649	_LT_TAGVAR(old_archive_cmds, $1)='lib -OUT:$oldlib$oldobjs$old_deplibs'
5650	_LT_TAGVAR(enable_shared_with_static_runtimes, $1)=yes
5651	;;
5652      esac
5653      ;;
5654
5655    darwin* | rhapsody*)
5656      _LT_DARWIN_LINKER_FEATURES($1)
5657      ;;
5658
5659    dgux*)
5660      _LT_TAGVAR(archive_cmds, $1)='$LD -G -h $soname -o $lib $libobjs $deplibs $linker_flags'
5661      _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-L$libdir'
5662      _LT_TAGVAR(hardcode_shlibpath_var, $1)=no
5663      ;;
5664
5665    # FreeBSD 2.2.[012] allows us to include c++rt0.o to get C++ constructor
5666    # support.  Future versions do this automatically, but an explicit c++rt0.o
5667    # does not break anything, and helps significantly (at the cost of a little
5668    # extra space).
5669    freebsd2.2*)
5670      _LT_TAGVAR(archive_cmds, $1)='$LD -Bshareable -o $lib $libobjs $deplibs $linker_flags /usr/lib/c++rt0.o'
5671      _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-R$libdir'
5672      _LT_TAGVAR(hardcode_direct, $1)=yes
5673      _LT_TAGVAR(hardcode_shlibpath_var, $1)=no
5674      ;;
5675
5676    # Unfortunately, older versions of FreeBSD 2 do not have this feature.
5677    freebsd2.*)
5678      _LT_TAGVAR(archive_cmds, $1)='$LD -Bshareable -o $lib $libobjs $deplibs $linker_flags'
5679      _LT_TAGVAR(hardcode_direct, $1)=yes
5680      _LT_TAGVAR(hardcode_minus_L, $1)=yes
5681      _LT_TAGVAR(hardcode_shlibpath_var, $1)=no
5682      ;;
5683
5684    # FreeBSD 3 and greater uses gcc -shared to do shared libraries.
5685    freebsd* | dragonfly*)
5686      _LT_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag -o $lib $libobjs $deplibs $compiler_flags'
5687      _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-R$libdir'
5688      _LT_TAGVAR(hardcode_direct, $1)=yes
5689      _LT_TAGVAR(hardcode_shlibpath_var, $1)=no
5690      ;;
5691
5692    hpux9*)
5693      if test yes = "$GCC"; then
5694	_LT_TAGVAR(archive_cmds, $1)='$RM $output_objdir/$soname~$CC -shared $pic_flag $wl+b $wl$install_libdir -o $output_objdir/$soname $libobjs $deplibs $compiler_flags~test "x$output_objdir/$soname" = "x$lib" || mv $output_objdir/$soname $lib'
5695      else
5696	_LT_TAGVAR(archive_cmds, $1)='$RM $output_objdir/$soname~$LD -b +b $install_libdir -o $output_objdir/$soname $libobjs $deplibs $linker_flags~test "x$output_objdir/$soname" = "x$lib" || mv $output_objdir/$soname $lib'
5697      fi
5698      _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='$wl+b $wl$libdir'
5699      _LT_TAGVAR(hardcode_libdir_separator, $1)=:
5700      _LT_TAGVAR(hardcode_direct, $1)=yes
5701
5702      # hardcode_minus_L: Not really in the search PATH,
5703      # but as the default location of the library.
5704      _LT_TAGVAR(hardcode_minus_L, $1)=yes
5705      _LT_TAGVAR(export_dynamic_flag_spec, $1)='$wl-E'
5706      ;;
5707
5708    hpux10*)
5709      if test yes,no = "$GCC,$with_gnu_ld"; then
5710	_LT_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag $wl+h $wl$soname $wl+b $wl$install_libdir -o $lib $libobjs $deplibs $compiler_flags'
5711      else
5712	_LT_TAGVAR(archive_cmds, $1)='$LD -b +h $soname +b $install_libdir -o $lib $libobjs $deplibs $linker_flags'
5713      fi
5714      if test no = "$with_gnu_ld"; then
5715	_LT_TAGVAR(hardcode_libdir_flag_spec, $1)='$wl+b $wl$libdir'
5716	_LT_TAGVAR(hardcode_libdir_separator, $1)=:
5717	_LT_TAGVAR(hardcode_direct, $1)=yes
5718	_LT_TAGVAR(hardcode_direct_absolute, $1)=yes
5719	_LT_TAGVAR(export_dynamic_flag_spec, $1)='$wl-E'
5720	# hardcode_minus_L: Not really in the search PATH,
5721	# but as the default location of the library.
5722	_LT_TAGVAR(hardcode_minus_L, $1)=yes
5723      fi
5724      ;;
5725
5726    hpux11*)
5727      if test yes,no = "$GCC,$with_gnu_ld"; then
5728	case $host_cpu in
5729	hppa*64*)
5730	  _LT_TAGVAR(archive_cmds, $1)='$CC -shared $wl+h $wl$soname -o $lib $libobjs $deplibs $compiler_flags'
5731	  ;;
5732	ia64*)
5733	  _LT_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag $wl+h $wl$soname $wl+nodefaultrpath -o $lib $libobjs $deplibs $compiler_flags'
5734	  ;;
5735	*)
5736	  _LT_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag $wl+h $wl$soname $wl+b $wl$install_libdir -o $lib $libobjs $deplibs $compiler_flags'
5737	  ;;
5738	esac
5739      else
5740	case $host_cpu in
5741	hppa*64*)
5742	  _LT_TAGVAR(archive_cmds, $1)='$CC -b $wl+h $wl$soname -o $lib $libobjs $deplibs $compiler_flags'
5743	  ;;
5744	ia64*)
5745	  _LT_TAGVAR(archive_cmds, $1)='$CC -b $wl+h $wl$soname $wl+nodefaultrpath -o $lib $libobjs $deplibs $compiler_flags'
5746	  ;;
5747	*)
5748	m4_if($1, [], [
5749	  # Older versions of the 11.00 compiler do not understand -b yet
5750	  # (HP92453-01 A.11.01.20 doesn't, HP92453-01 B.11.X.35175-35176.GP does)
5751	  _LT_LINKER_OPTION([if $CC understands -b],
5752	    _LT_TAGVAR(lt_cv_prog_compiler__b, $1), [-b],
5753	    [_LT_TAGVAR(archive_cmds, $1)='$CC -b $wl+h $wl$soname $wl+b $wl$install_libdir -o $lib $libobjs $deplibs $compiler_flags'],
5754	    [_LT_TAGVAR(archive_cmds, $1)='$LD -b +h $soname +b $install_libdir -o $lib $libobjs $deplibs $linker_flags'])],
5755	  [_LT_TAGVAR(archive_cmds, $1)='$CC -b $wl+h $wl$soname $wl+b $wl$install_libdir -o $lib $libobjs $deplibs $compiler_flags'])
5756	  ;;
5757	esac
5758      fi
5759      if test no = "$with_gnu_ld"; then
5760	_LT_TAGVAR(hardcode_libdir_flag_spec, $1)='$wl+b $wl$libdir'
5761	_LT_TAGVAR(hardcode_libdir_separator, $1)=:
5762
5763	case $host_cpu in
5764	hppa*64*|ia64*)
5765	  _LT_TAGVAR(hardcode_direct, $1)=no
5766	  _LT_TAGVAR(hardcode_shlibpath_var, $1)=no
5767	  ;;
5768	*)
5769	  _LT_TAGVAR(hardcode_direct, $1)=yes
5770	  _LT_TAGVAR(hardcode_direct_absolute, $1)=yes
5771	  _LT_TAGVAR(export_dynamic_flag_spec, $1)='$wl-E'
5772
5773	  # hardcode_minus_L: Not really in the search PATH,
5774	  # but as the default location of the library.
5775	  _LT_TAGVAR(hardcode_minus_L, $1)=yes
5776	  ;;
5777	esac
5778      fi
5779      ;;
5780
5781    irix5* | irix6* | nonstopux*)
5782      if test yes = "$GCC"; then
5783	_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'
5784	# Try to use the -exported_symbol ld option, if it does not
5785	# work, assume that -exports_file does not work either and
5786	# implicitly export all symbols.
5787	# This should be the same for all languages, so no per-tag cache variable.
5788	AC_CACHE_CHECK([whether the $host_os linker accepts -exported_symbol],
5789	  [lt_cv_irix_exported_symbol],
5790	  [save_LDFLAGS=$LDFLAGS
5791	   LDFLAGS="$LDFLAGS -shared $wl-exported_symbol ${wl}foo $wl-update_registry $wl/dev/null"
5792	   AC_LINK_IFELSE(
5793	     [AC_LANG_SOURCE(
5794	        [AC_LANG_CASE([C], [[int foo (void) { return 0; }]],
5795			      [C++], [[int foo (void) { return 0; }]],
5796			      [Fortran 77], [[
5797      subroutine foo
5798      end]],
5799			      [Fortran], [[
5800      subroutine foo
5801      end]])])],
5802	      [lt_cv_irix_exported_symbol=yes],
5803	      [lt_cv_irix_exported_symbol=no])
5804           LDFLAGS=$save_LDFLAGS])
5805	if test yes = "$lt_cv_irix_exported_symbol"; then
5806          _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'
5807	fi
5808	_LT_TAGVAR(link_all_deplibs, $1)=no
5809      else
5810	_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'
5811	_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'
5812      fi
5813      _LT_TAGVAR(archive_cmds_need_lc, $1)='no'
5814      _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='$wl-rpath $wl$libdir'
5815      _LT_TAGVAR(hardcode_libdir_separator, $1)=:
5816      _LT_TAGVAR(inherit_rpath, $1)=yes
5817      _LT_TAGVAR(link_all_deplibs, $1)=yes
5818      ;;
5819
5820    linux*)
5821      case $cc_basename in
5822      tcc*)
5823	# Fabrice Bellard et al's Tiny C Compiler
5824	_LT_TAGVAR(ld_shlibs, $1)=yes
5825	_LT_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag -o $lib $libobjs $deplibs $compiler_flags'
5826	;;
5827      esac
5828      ;;
5829
5830    netbsd* | netbsdelf*-gnu)
5831      if echo __ELF__ | $CC -E - | $GREP __ELF__ >/dev/null; then
5832	_LT_TAGVAR(archive_cmds, $1)='$LD -Bshareable -o $lib $libobjs $deplibs $linker_flags'  # a.out
5833      else
5834	_LT_TAGVAR(archive_cmds, $1)='$LD -shared -o $lib $libobjs $deplibs $linker_flags'      # ELF
5835      fi
5836      _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-R$libdir'
5837      _LT_TAGVAR(hardcode_direct, $1)=yes
5838      _LT_TAGVAR(hardcode_shlibpath_var, $1)=no
5839      ;;
5840
5841    newsos6)
5842      _LT_TAGVAR(archive_cmds, $1)='$LD -G -h $soname -o $lib $libobjs $deplibs $linker_flags'
5843      _LT_TAGVAR(hardcode_direct, $1)=yes
5844      _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='$wl-rpath $wl$libdir'
5845      _LT_TAGVAR(hardcode_libdir_separator, $1)=:
5846      _LT_TAGVAR(hardcode_shlibpath_var, $1)=no
5847      ;;
5848
5849    *nto* | *qnx*)
5850      ;;
5851
5852    openbsd* | bitrig*)
5853      if test -f /usr/libexec/ld.so; then
5854	_LT_TAGVAR(hardcode_direct, $1)=yes
5855	_LT_TAGVAR(hardcode_shlibpath_var, $1)=no
5856	_LT_TAGVAR(hardcode_direct_absolute, $1)=yes
5857	if test -z "`echo __ELF__ | $CC -E - | $GREP __ELF__`"; then
5858	  _LT_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag -o $lib $libobjs $deplibs $compiler_flags'
5859	  _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -shared $pic_flag -o $lib $libobjs $deplibs $compiler_flags $wl-retain-symbols-file,$export_symbols'
5860	  _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='$wl-rpath,$libdir'
5861	  _LT_TAGVAR(export_dynamic_flag_spec, $1)='$wl-E'
5862	else
5863	  _LT_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag -o $lib $libobjs $deplibs $compiler_flags'
5864	  _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='$wl-rpath,$libdir'
5865	fi
5866      else
5867	_LT_TAGVAR(ld_shlibs, $1)=no
5868      fi
5869      ;;
5870
5871    os2*)
5872      _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-L$libdir'
5873      _LT_TAGVAR(hardcode_minus_L, $1)=yes
5874      _LT_TAGVAR(allow_undefined_flag, $1)=unsupported
5875      shrext_cmds=.dll
5876      _LT_TAGVAR(archive_cmds, $1)='$ECHO "LIBRARY ${soname%$shared_ext} INITINSTANCE TERMINSTANCE" > $output_objdir/$libname.def~
5877	$ECHO "DESCRIPTION \"$libname\"" >> $output_objdir/$libname.def~
5878	$ECHO "DATA MULTIPLE NONSHARED" >> $output_objdir/$libname.def~
5879	$ECHO EXPORTS >> $output_objdir/$libname.def~
5880	emxexp $libobjs | $SED /"_DLL_InitTerm"/d >> $output_objdir/$libname.def~
5881	$CC -Zdll -Zcrtdll -o $output_objdir/$soname $libobjs $deplibs $compiler_flags $output_objdir/$libname.def~
5882	emximp -o $lib $output_objdir/$libname.def'
5883      _LT_TAGVAR(archive_expsym_cmds, $1)='$ECHO "LIBRARY ${soname%$shared_ext} INITINSTANCE TERMINSTANCE" > $output_objdir/$libname.def~
5884	$ECHO "DESCRIPTION \"$libname\"" >> $output_objdir/$libname.def~
5885	$ECHO "DATA MULTIPLE NONSHARED" >> $output_objdir/$libname.def~
5886	$ECHO EXPORTS >> $output_objdir/$libname.def~
5887	prefix_cmds="$SED"~
5888	if test EXPORTS = "`$SED 1q $export_symbols`"; then
5889	  prefix_cmds="$prefix_cmds -e 1d";
5890	fi~
5891	prefix_cmds="$prefix_cmds -e \"s/^\(.*\)$/_\1/g\""~
5892	cat $export_symbols | $prefix_cmds >> $output_objdir/$libname.def~
5893	$CC -Zdll -Zcrtdll -o $output_objdir/$soname $libobjs $deplibs $compiler_flags $output_objdir/$libname.def~
5894	emximp -o $lib $output_objdir/$libname.def'
5895      _LT_TAGVAR(old_archive_From_new_cmds, $1)='emximp -o $output_objdir/${libname}_dll.a $output_objdir/$libname.def'
5896      _LT_TAGVAR(enable_shared_with_static_runtimes, $1)=yes
5897      ;;
5898
5899    osf3*)
5900      if test yes = "$GCC"; then
5901	_LT_TAGVAR(allow_undefined_flag, $1)=' $wl-expect_unresolved $wl\*'
5902	_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'
5903      else
5904	_LT_TAGVAR(allow_undefined_flag, $1)=' -expect_unresolved \*'
5905	_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'
5906      fi
5907      _LT_TAGVAR(archive_cmds_need_lc, $1)='no'
5908      _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='$wl-rpath $wl$libdir'
5909      _LT_TAGVAR(hardcode_libdir_separator, $1)=:
5910      ;;
5911
5912    osf4* | osf5*)	# as osf3* with the addition of -msym flag
5913      if test yes = "$GCC"; then
5914	_LT_TAGVAR(allow_undefined_flag, $1)=' $wl-expect_unresolved $wl\*'
5915	_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'
5916	_LT_TAGVAR(hardcode_libdir_flag_spec, $1)='$wl-rpath $wl$libdir'
5917      else
5918	_LT_TAGVAR(allow_undefined_flag, $1)=' -expect_unresolved \*'
5919	_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'
5920	_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~
5921          $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'
5922
5923	# Both c and cxx compiler support -rpath directly
5924	_LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-rpath $libdir'
5925      fi
5926      _LT_TAGVAR(archive_cmds_need_lc, $1)='no'
5927      _LT_TAGVAR(hardcode_libdir_separator, $1)=:
5928      ;;
5929
5930    solaris*)
5931      _LT_TAGVAR(no_undefined_flag, $1)=' -z defs'
5932      if test yes = "$GCC"; then
5933	wlarc='$wl'
5934	_LT_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag $wl-z ${wl}text $wl-h $wl$soname -o $lib $libobjs $deplibs $compiler_flags'
5935	_LT_TAGVAR(archive_expsym_cmds, $1)='echo "{ global:" > $lib.exp~cat $export_symbols | $SED -e "s/\(.*\)/\1;/" >> $lib.exp~echo "local: *; };" >> $lib.exp~
5936          $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'
5937      else
5938	case `$CC -V 2>&1` in
5939	*"Compilers 5.0"*)
5940	  wlarc=''
5941	  _LT_TAGVAR(archive_cmds, $1)='$LD -G$allow_undefined_flag -h $soname -o $lib $libobjs $deplibs $linker_flags'
5942	  _LT_TAGVAR(archive_expsym_cmds, $1)='echo "{ global:" > $lib.exp~cat $export_symbols | $SED -e "s/\(.*\)/\1;/" >> $lib.exp~echo "local: *; };" >> $lib.exp~
5943            $LD -G$allow_undefined_flag -M $lib.exp -h $soname -o $lib $libobjs $deplibs $linker_flags~$RM $lib.exp'
5944	  ;;
5945	*)
5946	  wlarc='$wl'
5947	  _LT_TAGVAR(archive_cmds, $1)='$CC -G$allow_undefined_flag -h $soname -o $lib $libobjs $deplibs $compiler_flags'
5948	  _LT_TAGVAR(archive_expsym_cmds, $1)='echo "{ global:" > $lib.exp~cat $export_symbols | $SED -e "s/\(.*\)/\1;/" >> $lib.exp~echo "local: *; };" >> $lib.exp~
5949            $CC -G$allow_undefined_flag -M $lib.exp -h $soname -o $lib $libobjs $deplibs $compiler_flags~$RM $lib.exp'
5950	  ;;
5951	esac
5952      fi
5953      _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-R$libdir'
5954      _LT_TAGVAR(hardcode_shlibpath_var, $1)=no
5955      case $host_os in
5956      solaris2.[[0-5]] | solaris2.[[0-5]].*) ;;
5957      *)
5958	# The compiler driver will combine and reorder linker options,
5959	# but understands '-z linker_flag'.  GCC discards it without '$wl',
5960	# but is careful enough not to reorder.
5961	# Supported since Solaris 2.6 (maybe 2.5.1?)
5962	if test yes = "$GCC"; then
5963	  _LT_TAGVAR(whole_archive_flag_spec, $1)='$wl-z ${wl}allextract$convenience $wl-z ${wl}defaultextract'
5964	else
5965	  _LT_TAGVAR(whole_archive_flag_spec, $1)='-z allextract$convenience -z defaultextract'
5966	fi
5967	;;
5968      esac
5969      _LT_TAGVAR(link_all_deplibs, $1)=yes
5970      ;;
5971
5972    sunos4*)
5973      if test sequent = "$host_vendor"; then
5974	# Use $CC to link under sequent, because it throws in some extra .o
5975	# files that make .init and .fini sections work.
5976	_LT_TAGVAR(archive_cmds, $1)='$CC -G $wl-h $soname -o $lib $libobjs $deplibs $compiler_flags'
5977      else
5978	_LT_TAGVAR(archive_cmds, $1)='$LD -assert pure-text -Bstatic -o $lib $libobjs $deplibs $linker_flags'
5979      fi
5980      _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-L$libdir'
5981      _LT_TAGVAR(hardcode_direct, $1)=yes
5982      _LT_TAGVAR(hardcode_minus_L, $1)=yes
5983      _LT_TAGVAR(hardcode_shlibpath_var, $1)=no
5984      ;;
5985
5986    sysv4)
5987      case $host_vendor in
5988	sni)
5989	  _LT_TAGVAR(archive_cmds, $1)='$LD -G -h $soname -o $lib $libobjs $deplibs $linker_flags'
5990	  _LT_TAGVAR(hardcode_direct, $1)=yes # is this really true???
5991	;;
5992	siemens)
5993	  ## LD is ld it makes a PLAMLIB
5994	  ## CC just makes a GrossModule.
5995	  _LT_TAGVAR(archive_cmds, $1)='$LD -G -o $lib $libobjs $deplibs $linker_flags'
5996	  _LT_TAGVAR(reload_cmds, $1)='$CC -r -o $output$reload_objs'
5997	  _LT_TAGVAR(hardcode_direct, $1)=no
5998        ;;
5999	motorola)
6000	  _LT_TAGVAR(archive_cmds, $1)='$LD -G -h $soname -o $lib $libobjs $deplibs $linker_flags'
6001	  _LT_TAGVAR(hardcode_direct, $1)=no #Motorola manual says yes, but my tests say they lie
6002	;;
6003      esac
6004      runpath_var='LD_RUN_PATH'
6005      _LT_TAGVAR(hardcode_shlibpath_var, $1)=no
6006      ;;
6007
6008    sysv4.3*)
6009      _LT_TAGVAR(archive_cmds, $1)='$LD -G -h $soname -o $lib $libobjs $deplibs $linker_flags'
6010      _LT_TAGVAR(hardcode_shlibpath_var, $1)=no
6011      _LT_TAGVAR(export_dynamic_flag_spec, $1)='-Bexport'
6012      ;;
6013
6014    sysv4*MP*)
6015      if test -d /usr/nec; then
6016	_LT_TAGVAR(archive_cmds, $1)='$LD -G -h $soname -o $lib $libobjs $deplibs $linker_flags'
6017	_LT_TAGVAR(hardcode_shlibpath_var, $1)=no
6018	runpath_var=LD_RUN_PATH
6019	hardcode_runpath_var=yes
6020	_LT_TAGVAR(ld_shlibs, $1)=yes
6021      fi
6022      ;;
6023
6024    sysv4*uw2* | sysv5OpenUNIX* | sysv5UnixWare7.[[01]].[[10]]* | unixware7* | sco3.2v5.0.[[024]]*)
6025      _LT_TAGVAR(no_undefined_flag, $1)='$wl-z,text'
6026      _LT_TAGVAR(archive_cmds_need_lc, $1)=no
6027      _LT_TAGVAR(hardcode_shlibpath_var, $1)=no
6028      runpath_var='LD_RUN_PATH'
6029
6030      if test yes = "$GCC"; then
6031	_LT_TAGVAR(archive_cmds, $1)='$CC -shared $wl-h,$soname -o $lib $libobjs $deplibs $compiler_flags'
6032	_LT_TAGVAR(archive_expsym_cmds, $1)='$CC -shared $wl-Bexport:$export_symbols $wl-h,$soname -o $lib $libobjs $deplibs $compiler_flags'
6033      else
6034	_LT_TAGVAR(archive_cmds, $1)='$CC -G $wl-h,$soname -o $lib $libobjs $deplibs $compiler_flags'
6035	_LT_TAGVAR(archive_expsym_cmds, $1)='$CC -G $wl-Bexport:$export_symbols $wl-h,$soname -o $lib $libobjs $deplibs $compiler_flags'
6036      fi
6037      ;;
6038
6039    sysv5* | sco3.2v5* | sco5v6*)
6040      # Note: We CANNOT use -z defs as we might desire, because we do not
6041      # link with -lc, and that would cause any symbols used from libc to
6042      # always be unresolved, which means just about no library would
6043      # ever link correctly.  If we're not using GNU ld we use -z text
6044      # though, which does catch some bad symbols but isn't as heavy-handed
6045      # as -z defs.
6046      _LT_TAGVAR(no_undefined_flag, $1)='$wl-z,text'
6047      _LT_TAGVAR(allow_undefined_flag, $1)='$wl-z,nodefs'
6048      _LT_TAGVAR(archive_cmds_need_lc, $1)=no
6049      _LT_TAGVAR(hardcode_shlibpath_var, $1)=no
6050      _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='$wl-R,$libdir'
6051      _LT_TAGVAR(hardcode_libdir_separator, $1)=':'
6052      _LT_TAGVAR(link_all_deplibs, $1)=yes
6053      _LT_TAGVAR(export_dynamic_flag_spec, $1)='$wl-Bexport'
6054      runpath_var='LD_RUN_PATH'
6055
6056      if test yes = "$GCC"; then
6057	_LT_TAGVAR(archive_cmds, $1)='$CC -shared $wl-h,$soname -o $lib $libobjs $deplibs $compiler_flags'
6058	_LT_TAGVAR(archive_expsym_cmds, $1)='$CC -shared $wl-Bexport:$export_symbols $wl-h,$soname -o $lib $libobjs $deplibs $compiler_flags'
6059      else
6060	_LT_TAGVAR(archive_cmds, $1)='$CC -G $wl-h,$soname -o $lib $libobjs $deplibs $compiler_flags'
6061	_LT_TAGVAR(archive_expsym_cmds, $1)='$CC -G $wl-Bexport:$export_symbols $wl-h,$soname -o $lib $libobjs $deplibs $compiler_flags'
6062      fi
6063      ;;
6064
6065    uts4*)
6066      _LT_TAGVAR(archive_cmds, $1)='$LD -G -h $soname -o $lib $libobjs $deplibs $linker_flags'
6067      _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-L$libdir'
6068      _LT_TAGVAR(hardcode_shlibpath_var, $1)=no
6069      ;;
6070
6071    *)
6072      _LT_TAGVAR(ld_shlibs, $1)=no
6073      ;;
6074    esac
6075
6076    if test sni = "$host_vendor"; then
6077      case $host in
6078      sysv4 | sysv4.2uw2* | sysv4.3* | sysv5*)
6079	_LT_TAGVAR(export_dynamic_flag_spec, $1)='$wl-Blargedynsym'
6080	;;
6081      esac
6082    fi
6083  fi
6084])
6085AC_MSG_RESULT([$_LT_TAGVAR(ld_shlibs, $1)])
6086test no = "$_LT_TAGVAR(ld_shlibs, $1)" && can_build_shared=no
6087
6088_LT_TAGVAR(with_gnu_ld, $1)=$with_gnu_ld
6089
6090_LT_DECL([], [libext], [0], [Old archive suffix (normally "a")])dnl
6091_LT_DECL([], [shrext_cmds], [1], [Shared library suffix (normally ".so")])dnl
6092_LT_DECL([], [extract_expsyms_cmds], [2],
6093    [The commands to extract the exported symbol list from a shared archive])
6094
6095#
6096# Do we need to explicitly link libc?
6097#
6098case "x$_LT_TAGVAR(archive_cmds_need_lc, $1)" in
6099x|xyes)
6100  # Assume -lc should be added
6101  _LT_TAGVAR(archive_cmds_need_lc, $1)=yes
6102
6103  if test yes,yes = "$GCC,$enable_shared"; then
6104    case $_LT_TAGVAR(archive_cmds, $1) in
6105    *'~'*)
6106      # FIXME: we may have to deal with multi-command sequences.
6107      ;;
6108    '$CC '*)
6109      # Test whether the compiler implicitly links with -lc since on some
6110      # systems, -lgcc has to come before -lc. If gcc already passes -lc
6111      # to ld, don't add -lc before -lgcc.
6112      AC_CACHE_CHECK([whether -lc should be explicitly linked in],
6113	[lt_cv_]_LT_TAGVAR(archive_cmds_need_lc, $1),
6114	[$RM conftest*
6115	echo "$lt_simple_compile_test_code" > conftest.$ac_ext
6116
6117	if AC_TRY_EVAL(ac_compile) 2>conftest.err; then
6118	  soname=conftest
6119	  lib=conftest
6120	  libobjs=conftest.$ac_objext
6121	  deplibs=
6122	  wl=$_LT_TAGVAR(lt_prog_compiler_wl, $1)
6123	  pic_flag=$_LT_TAGVAR(lt_prog_compiler_pic, $1)
6124	  compiler_flags=-v
6125	  linker_flags=-v
6126	  verstring=
6127	  output_objdir=.
6128	  libname=conftest
6129	  lt_save_allow_undefined_flag=$_LT_TAGVAR(allow_undefined_flag, $1)
6130	  _LT_TAGVAR(allow_undefined_flag, $1)=
6131	  if AC_TRY_EVAL(_LT_TAGVAR(archive_cmds, $1) 2\>\&1 \| $GREP \" -lc \" \>/dev/null 2\>\&1)
6132	  then
6133	    lt_cv_[]_LT_TAGVAR(archive_cmds_need_lc, $1)=no
6134	  else
6135	    lt_cv_[]_LT_TAGVAR(archive_cmds_need_lc, $1)=yes
6136	  fi
6137	  _LT_TAGVAR(allow_undefined_flag, $1)=$lt_save_allow_undefined_flag
6138	else
6139	  cat conftest.err 1>&5
6140	fi
6141	$RM conftest*
6142	])
6143      _LT_TAGVAR(archive_cmds_need_lc, $1)=$lt_cv_[]_LT_TAGVAR(archive_cmds_need_lc, $1)
6144      ;;
6145    esac
6146  fi
6147  ;;
6148esac
6149
6150_LT_TAGDECL([build_libtool_need_lc], [archive_cmds_need_lc], [0],
6151    [Whether or not to add -lc for building shared libraries])
6152_LT_TAGDECL([allow_libtool_libs_with_static_runtimes],
6153    [enable_shared_with_static_runtimes], [0],
6154    [Whether or not to disallow shared libs when runtime libs are static])
6155_LT_TAGDECL([], [export_dynamic_flag_spec], [1],
6156    [Compiler flag to allow reflexive dlopens])
6157_LT_TAGDECL([], [whole_archive_flag_spec], [1],
6158    [Compiler flag to generate shared objects directly from archives])
6159_LT_TAGDECL([], [compiler_needs_object], [1],
6160    [Whether the compiler copes with passing no objects directly])
6161_LT_TAGDECL([], [old_archive_from_new_cmds], [2],
6162    [Create an old-style archive from a shared archive])
6163_LT_TAGDECL([], [old_archive_from_expsyms_cmds], [2],
6164    [Create a temporary old-style archive to link instead of a shared archive])
6165_LT_TAGDECL([], [archive_cmds], [2], [Commands used to build a shared archive])
6166_LT_TAGDECL([], [archive_expsym_cmds], [2])
6167_LT_TAGDECL([], [module_cmds], [2],
6168    [Commands used to build a loadable module if different from building
6169    a shared archive.])
6170_LT_TAGDECL([], [module_expsym_cmds], [2])
6171_LT_TAGDECL([], [with_gnu_ld], [1],
6172    [Whether we are building with GNU ld or not])
6173_LT_TAGDECL([], [allow_undefined_flag], [1],
6174    [Flag that allows shared libraries with undefined symbols to be built])
6175_LT_TAGDECL([], [no_undefined_flag], [1],
6176    [Flag that enforces no undefined symbols])
6177_LT_TAGDECL([], [hardcode_libdir_flag_spec], [1],
6178    [Flag to hardcode $libdir into a binary during linking.
6179    This must work even if $libdir does not exist])
6180_LT_TAGDECL([], [hardcode_libdir_separator], [1],
6181    [Whether we need a single "-rpath" flag with a separated argument])
6182_LT_TAGDECL([], [hardcode_direct], [0],
6183    [Set to "yes" if using DIR/libNAME$shared_ext during linking hardcodes
6184    DIR into the resulting binary])
6185_LT_TAGDECL([], [hardcode_direct_absolute], [0],
6186    [Set to "yes" if using DIR/libNAME$shared_ext during linking hardcodes
6187    DIR into the resulting binary and the resulting library dependency is
6188    "absolute", i.e impossible to change by setting $shlibpath_var if the
6189    library is relocated])
6190_LT_TAGDECL([], [hardcode_minus_L], [0],
6191    [Set to "yes" if using the -LDIR flag during linking hardcodes DIR
6192    into the resulting binary])
6193_LT_TAGDECL([], [hardcode_shlibpath_var], [0],
6194    [Set to "yes" if using SHLIBPATH_VAR=DIR during linking hardcodes DIR
6195    into the resulting binary])
6196_LT_TAGDECL([], [hardcode_automatic], [0],
6197    [Set to "yes" if building a shared library automatically hardcodes DIR
6198    into the library and all subsequent libraries and executables linked
6199    against it])
6200_LT_TAGDECL([], [inherit_rpath], [0],
6201    [Set to yes if linker adds runtime paths of dependent libraries
6202    to runtime path list])
6203_LT_TAGDECL([], [link_all_deplibs], [0],
6204    [Whether libtool must link a program against all its dependency libraries])
6205_LT_TAGDECL([], [always_export_symbols], [0],
6206    [Set to "yes" if exported symbols are required])
6207_LT_TAGDECL([], [export_symbols_cmds], [2],
6208    [The commands to list exported symbols])
6209_LT_TAGDECL([], [exclude_expsyms], [1],
6210    [Symbols that should not be listed in the preloaded symbols])
6211_LT_TAGDECL([], [include_expsyms], [1],
6212    [Symbols that must always be exported])
6213_LT_TAGDECL([], [prelink_cmds], [2],
6214    [Commands necessary for linking programs (against libraries) with templates])
6215_LT_TAGDECL([], [postlink_cmds], [2],
6216    [Commands necessary for finishing linking programs])
6217_LT_TAGDECL([], [file_list_spec], [1],
6218    [Specify filename containing input files])
6219dnl FIXME: Not yet implemented
6220dnl _LT_TAGDECL([], [thread_safe_flag_spec], [1],
6221dnl    [Compiler flag to generate thread safe objects])
6222])# _LT_LINKER_SHLIBS
6223
6224
6225# _LT_LANG_C_CONFIG([TAG])
6226# ------------------------
6227# Ensure that the configuration variables for a C compiler are suitably
6228# defined.  These variables are subsequently used by _LT_CONFIG to write
6229# the compiler configuration to 'libtool'.
6230m4_defun([_LT_LANG_C_CONFIG],
6231[m4_require([_LT_DECL_EGREP])dnl
6232lt_save_CC=$CC
6233AC_LANG_PUSH(C)
6234
6235# Source file extension for C test sources.
6236ac_ext=c
6237
6238# Object file extension for compiled C test sources.
6239objext=o
6240_LT_TAGVAR(objext, $1)=$objext
6241
6242# Code to be used in simple compile tests
6243lt_simple_compile_test_code="int some_variable = 0;"
6244
6245# Code to be used in simple link tests
6246lt_simple_link_test_code='int main(){return(0);}'
6247
6248_LT_TAG_COMPILER
6249# Save the default compiler, since it gets overwritten when the other
6250# tags are being tested, and _LT_TAGVAR(compiler, []) is a NOP.
6251compiler_DEFAULT=$CC
6252
6253# save warnings/boilerplate of simple test code
6254_LT_COMPILER_BOILERPLATE
6255_LT_LINKER_BOILERPLATE
6256
6257if test -n "$compiler"; then
6258  _LT_COMPILER_NO_RTTI($1)
6259  _LT_COMPILER_PIC($1)
6260  _LT_COMPILER_C_O($1)
6261  _LT_COMPILER_FILE_LOCKS($1)
6262  _LT_LINKER_SHLIBS($1)
6263  _LT_SYS_DYNAMIC_LINKER($1)
6264  _LT_LINKER_HARDCODE_LIBPATH($1)
6265  LT_SYS_DLOPEN_SELF
6266  _LT_CMD_STRIPLIB
6267
6268  # Report what library types will actually be built
6269  AC_MSG_CHECKING([if libtool supports shared libraries])
6270  AC_MSG_RESULT([$can_build_shared])
6271
6272  AC_MSG_CHECKING([whether to build shared libraries])
6273  test no = "$can_build_shared" && enable_shared=no
6274
6275  # On AIX, shared libraries and static libraries use the same namespace, and
6276  # are all built from PIC.
6277  case $host_os in
6278  aix3*)
6279    test yes = "$enable_shared" && enable_static=no
6280    if test -n "$RANLIB"; then
6281      archive_cmds="$archive_cmds~\$RANLIB \$lib"
6282      postinstall_cmds='$RANLIB $lib'
6283    fi
6284    ;;
6285
6286  aix[[4-9]]*)
6287    if test ia64 != "$host_cpu"; then
6288      case $enable_shared,$with_aix_soname,$aix_use_runtimelinking in
6289      yes,aix,yes) ;;			# shared object as lib.so file only
6290      yes,svr4,*) ;;			# shared object as lib.so archive member only
6291      yes,*) enable_static=no ;;	# shared object in lib.a archive as well
6292      esac
6293    fi
6294    ;;
6295  esac
6296  AC_MSG_RESULT([$enable_shared])
6297
6298  AC_MSG_CHECKING([whether to build static libraries])
6299  # Make sure either enable_shared or enable_static is yes.
6300  test yes = "$enable_shared" || enable_static=yes
6301  AC_MSG_RESULT([$enable_static])
6302
6303  _LT_CONFIG($1)
6304fi
6305AC_LANG_POP
6306CC=$lt_save_CC
6307])# _LT_LANG_C_CONFIG
6308
6309
6310# _LT_LANG_CXX_CONFIG([TAG])
6311# --------------------------
6312# Ensure that the configuration variables for a C++ compiler are suitably
6313# defined.  These variables are subsequently used by _LT_CONFIG to write
6314# the compiler configuration to 'libtool'.
6315m4_defun([_LT_LANG_CXX_CONFIG],
6316[m4_require([_LT_FILEUTILS_DEFAULTS])dnl
6317m4_require([_LT_DECL_EGREP])dnl
6318m4_require([_LT_PATH_MANIFEST_TOOL])dnl
6319if test -n "$CXX" && ( test no != "$CXX" &&
6320    ( (test g++ = "$CXX" && `g++ -v >/dev/null 2>&1` ) ||
6321    (test g++ != "$CXX"))); then
6322  AC_PROG_CXXCPP
6323else
6324  _lt_caught_CXX_error=yes
6325fi
6326
6327AC_LANG_PUSH(C++)
6328_LT_TAGVAR(archive_cmds_need_lc, $1)=no
6329_LT_TAGVAR(allow_undefined_flag, $1)=
6330_LT_TAGVAR(always_export_symbols, $1)=no
6331_LT_TAGVAR(archive_expsym_cmds, $1)=
6332_LT_TAGVAR(compiler_needs_object, $1)=no
6333_LT_TAGVAR(export_dynamic_flag_spec, $1)=
6334_LT_TAGVAR(hardcode_direct, $1)=no
6335_LT_TAGVAR(hardcode_direct_absolute, $1)=no
6336_LT_TAGVAR(hardcode_libdir_flag_spec, $1)=
6337_LT_TAGVAR(hardcode_libdir_separator, $1)=
6338_LT_TAGVAR(hardcode_minus_L, $1)=no
6339_LT_TAGVAR(hardcode_shlibpath_var, $1)=unsupported
6340_LT_TAGVAR(hardcode_automatic, $1)=no
6341_LT_TAGVAR(inherit_rpath, $1)=no
6342_LT_TAGVAR(module_cmds, $1)=
6343_LT_TAGVAR(module_expsym_cmds, $1)=
6344_LT_TAGVAR(link_all_deplibs, $1)=unknown
6345_LT_TAGVAR(old_archive_cmds, $1)=$old_archive_cmds
6346_LT_TAGVAR(reload_flag, $1)=$reload_flag
6347_LT_TAGVAR(reload_cmds, $1)=$reload_cmds
6348_LT_TAGVAR(no_undefined_flag, $1)=
6349_LT_TAGVAR(whole_archive_flag_spec, $1)=
6350_LT_TAGVAR(enable_shared_with_static_runtimes, $1)=no
6351
6352# Source file extension for C++ test sources.
6353ac_ext=cpp
6354
6355# Object file extension for compiled C++ test sources.
6356objext=o
6357_LT_TAGVAR(objext, $1)=$objext
6358
6359# No sense in running all these tests if we already determined that
6360# the CXX compiler isn't working.  Some variables (like enable_shared)
6361# are currently assumed to apply to all compilers on this platform,
6362# and will be corrupted by setting them based on a non-working compiler.
6363if test yes != "$_lt_caught_CXX_error"; then
6364  # Code to be used in simple compile tests
6365  lt_simple_compile_test_code="int some_variable = 0;"
6366
6367  # Code to be used in simple link tests
6368  lt_simple_link_test_code='int main(int, char *[[]]) { return(0); }'
6369
6370  # ltmain only uses $CC for tagged configurations so make sure $CC is set.
6371  _LT_TAG_COMPILER
6372
6373  # save warnings/boilerplate of simple test code
6374  _LT_COMPILER_BOILERPLATE
6375  _LT_LINKER_BOILERPLATE
6376
6377  # Allow CC to be a program name with arguments.
6378  lt_save_CC=$CC
6379  lt_save_CFLAGS=$CFLAGS
6380  lt_save_LD=$LD
6381  lt_save_GCC=$GCC
6382  GCC=$GXX
6383  lt_save_with_gnu_ld=$with_gnu_ld
6384  lt_save_path_LD=$lt_cv_path_LD
6385  if test -n "${lt_cv_prog_gnu_ldcxx+set}"; then
6386    lt_cv_prog_gnu_ld=$lt_cv_prog_gnu_ldcxx
6387  else
6388    $as_unset lt_cv_prog_gnu_ld
6389  fi
6390  if test -n "${lt_cv_path_LDCXX+set}"; then
6391    lt_cv_path_LD=$lt_cv_path_LDCXX
6392  else
6393    $as_unset lt_cv_path_LD
6394  fi
6395  test -z "${LDCXX+set}" || LD=$LDCXX
6396  CC=${CXX-"c++"}
6397  CFLAGS=$CXXFLAGS
6398  compiler=$CC
6399  _LT_TAGVAR(compiler, $1)=$CC
6400  _LT_CC_BASENAME([$compiler])
6401
6402  if test -n "$compiler"; then
6403    # We don't want -fno-exception when compiling C++ code, so set the
6404    # no_builtin_flag separately
6405    if test yes = "$GXX"; then
6406      _LT_TAGVAR(lt_prog_compiler_no_builtin_flag, $1)=' -fno-builtin'
6407    else
6408      _LT_TAGVAR(lt_prog_compiler_no_builtin_flag, $1)=
6409    fi
6410
6411    if test yes = "$GXX"; then
6412      # Set up default GNU C++ configuration
6413
6414      LT_PATH_LD
6415
6416      # Check if GNU C++ uses GNU ld as the underlying linker, since the
6417      # archiving commands below assume that GNU ld is being used.
6418      if test yes = "$with_gnu_ld"; then
6419        _LT_TAGVAR(archive_cmds, $1)='$CC $pic_flag -shared -nostdlib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags $wl-soname $wl$soname -o $lib'
6420        _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'
6421
6422        _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='$wl-rpath $wl$libdir'
6423        _LT_TAGVAR(export_dynamic_flag_spec, $1)='$wl--export-dynamic'
6424
6425        # If archive_cmds runs LD, not CC, wlarc should be empty
6426        # XXX I think wlarc can be eliminated in ltcf-cxx, but I need to
6427        #     investigate it a little bit more. (MM)
6428        wlarc='$wl'
6429
6430        # ancient GNU ld didn't support --whole-archive et. al.
6431        if eval "`$CC -print-prog-name=ld` --help 2>&1" |
6432	  $GREP 'no-whole-archive' > /dev/null; then
6433          _LT_TAGVAR(whole_archive_flag_spec, $1)=$wlarc'--whole-archive$convenience '$wlarc'--no-whole-archive'
6434        else
6435          _LT_TAGVAR(whole_archive_flag_spec, $1)=
6436        fi
6437      else
6438        with_gnu_ld=no
6439        wlarc=
6440
6441        # A generic and very simple default shared library creation
6442        # command for GNU C++ for the case where it uses the native
6443        # linker, instead of GNU ld.  If possible, this setting should
6444        # overridden to take advantage of the native linker features on
6445        # the platform it is being used on.
6446        _LT_TAGVAR(archive_cmds, $1)='$CC -shared -nostdlib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags -o $lib'
6447      fi
6448
6449      # Commands to make compiler produce verbose output that lists
6450      # what "hidden" libraries, object files and flags are used when
6451      # linking a shared library.
6452      output_verbose_link_cmd='$CC -shared $CFLAGS -v conftest.$objext 2>&1 | $GREP -v "^Configured with:" | $GREP "\-L"'
6453
6454    else
6455      GXX=no
6456      with_gnu_ld=no
6457      wlarc=
6458    fi
6459
6460    # PORTME: fill in a description of your system's C++ link characteristics
6461    AC_MSG_CHECKING([whether the $compiler linker ($LD) supports shared libraries])
6462    _LT_TAGVAR(ld_shlibs, $1)=yes
6463    case $host_os in
6464      aix3*)
6465        # FIXME: insert proper C++ library support
6466        _LT_TAGVAR(ld_shlibs, $1)=no
6467        ;;
6468      aix[[4-9]]*)
6469        if test ia64 = "$host_cpu"; then
6470          # On IA64, the linker does run time linking by default, so we don't
6471          # have to do anything special.
6472          aix_use_runtimelinking=no
6473          exp_sym_flag='-Bexport'
6474          no_entry_flag=
6475        else
6476          aix_use_runtimelinking=no
6477
6478          # Test if we are trying to use run time linking or normal
6479          # AIX style linking. If -brtl is somewhere in LDFLAGS, we
6480          # have runtime linking enabled, and use it for executables.
6481          # For shared libraries, we enable/disable runtime linking
6482          # depending on the kind of the shared library created -
6483          # when "with_aix_soname,aix_use_runtimelinking" is:
6484          # "aix,no"   lib.a(lib.so.V) shared, rtl:no,  for executables
6485          # "aix,yes"  lib.so          shared, rtl:yes, for executables
6486          #            lib.a           static archive
6487          # "both,no"  lib.so.V(shr.o) shared, rtl:yes
6488          #            lib.a(lib.so.V) shared, rtl:no,  for executables
6489          # "both,yes" lib.so.V(shr.o) shared, rtl:yes, for executables
6490          #            lib.a(lib.so.V) shared, rtl:no
6491          # "svr4,*"   lib.so.V(shr.o) shared, rtl:yes, for executables
6492          #            lib.a           static archive
6493          case $host_os in aix4.[[23]]|aix4.[[23]].*|aix[[5-9]]*)
6494	    for ld_flag in $LDFLAGS; do
6495	      case $ld_flag in
6496	      *-brtl*)
6497	        aix_use_runtimelinking=yes
6498	        break
6499	        ;;
6500	      esac
6501	    done
6502	    if test svr4,no = "$with_aix_soname,$aix_use_runtimelinking"; then
6503	      # With aix-soname=svr4, we create the lib.so.V shared archives only,
6504	      # so we don't have lib.a shared libs to link our executables.
6505	      # We have to force runtime linking in this case.
6506	      aix_use_runtimelinking=yes
6507	      LDFLAGS="$LDFLAGS -Wl,-brtl"
6508	    fi
6509	    ;;
6510          esac
6511
6512          exp_sym_flag='-bexport'
6513          no_entry_flag='-bnoentry'
6514        fi
6515
6516        # When large executables or shared objects are built, AIX ld can
6517        # have problems creating the table of contents.  If linking a library
6518        # or program results in "error TOC overflow" add -mminimal-toc to
6519        # CXXFLAGS/CFLAGS for g++/gcc.  In the cases where that is not
6520        # enough to fix the problem, add -Wl,-bbigtoc to LDFLAGS.
6521
6522        _LT_TAGVAR(archive_cmds, $1)=''
6523        _LT_TAGVAR(hardcode_direct, $1)=yes
6524        _LT_TAGVAR(hardcode_direct_absolute, $1)=yes
6525        _LT_TAGVAR(hardcode_libdir_separator, $1)=':'
6526        _LT_TAGVAR(link_all_deplibs, $1)=yes
6527        _LT_TAGVAR(file_list_spec, $1)='$wl-f,'
6528        case $with_aix_soname,$aix_use_runtimelinking in
6529        aix,*) ;;	# no import file
6530        svr4,* | *,yes) # use import file
6531          # The Import File defines what to hardcode.
6532          _LT_TAGVAR(hardcode_direct, $1)=no
6533          _LT_TAGVAR(hardcode_direct_absolute, $1)=no
6534          ;;
6535        esac
6536
6537        if test yes = "$GXX"; then
6538          case $host_os in aix4.[[012]]|aix4.[[012]].*)
6539          # We only want to do this on AIX 4.2 and lower, the check
6540          # below for broken collect2 doesn't work under 4.3+
6541	  collect2name=`$CC -print-prog-name=collect2`
6542	  if test -f "$collect2name" &&
6543	     strings "$collect2name" | $GREP resolve_lib_name >/dev/null
6544	  then
6545	    # We have reworked collect2
6546	    :
6547	  else
6548	    # We have old collect2
6549	    _LT_TAGVAR(hardcode_direct, $1)=unsupported
6550	    # It fails to find uninstalled libraries when the uninstalled
6551	    # path is not listed in the libpath.  Setting hardcode_minus_L
6552	    # to unsupported forces relinking
6553	    _LT_TAGVAR(hardcode_minus_L, $1)=yes
6554	    _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-L$libdir'
6555	    _LT_TAGVAR(hardcode_libdir_separator, $1)=
6556	  fi
6557          esac
6558          shared_flag='-shared'
6559	  if test yes = "$aix_use_runtimelinking"; then
6560	    shared_flag=$shared_flag' $wl-G'
6561	  fi
6562	  # Need to ensure runtime linking is disabled for the traditional
6563	  # shared library, or the linker may eventually find shared libraries
6564	  # /with/ Import File - we do not want to mix them.
6565	  shared_flag_aix='-shared'
6566	  shared_flag_svr4='-shared $wl-G'
6567        else
6568          # not using gcc
6569          if test ia64 = "$host_cpu"; then
6570	  # VisualAge C++, Version 5.5 for AIX 5L for IA-64, Beta 3 Release
6571	  # chokes on -Wl,-G. The following line is correct:
6572	  shared_flag='-G'
6573          else
6574	    if test yes = "$aix_use_runtimelinking"; then
6575	      shared_flag='$wl-G'
6576	    else
6577	      shared_flag='$wl-bM:SRE'
6578	    fi
6579	    shared_flag_aix='$wl-bM:SRE'
6580	    shared_flag_svr4='$wl-G'
6581          fi
6582        fi
6583
6584        _LT_TAGVAR(export_dynamic_flag_spec, $1)='$wl-bexpall'
6585        # It seems that -bexpall does not export symbols beginning with
6586        # underscore (_), so it is better to generate a list of symbols to
6587	# export.
6588        _LT_TAGVAR(always_export_symbols, $1)=yes
6589	if test aix,yes = "$with_aix_soname,$aix_use_runtimelinking"; then
6590          # Warning - without using the other runtime loading flags (-brtl),
6591          # -berok will link without error, but may produce a broken library.
6592          # The "-G" linker flag allows undefined symbols.
6593          _LT_TAGVAR(no_undefined_flag, $1)='-bernotok'
6594          # Determine the default libpath from the value encoded in an empty
6595          # executable.
6596          _LT_SYS_MODULE_PATH_AIX([$1])
6597          _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='$wl-blibpath:$libdir:'"$aix_libpath"
6598
6599          _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -o $output_objdir/$soname $libobjs $deplibs $wl'$no_entry_flag' $compiler_flags `if test -n "$allow_undefined_flag"; then func_echo_all "$wl$allow_undefined_flag"; else :; fi` $wl'$exp_sym_flag:\$export_symbols' '$shared_flag
6600        else
6601          if test ia64 = "$host_cpu"; then
6602	    _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='$wl-R $libdir:/usr/lib:/lib'
6603	    _LT_TAGVAR(allow_undefined_flag, $1)="-z nodefs"
6604	    _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"
6605          else
6606	    # Determine the default libpath from the value encoded in an
6607	    # empty executable.
6608	    _LT_SYS_MODULE_PATH_AIX([$1])
6609	    _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='$wl-blibpath:$libdir:'"$aix_libpath"
6610	    # Warning - without using the other run time loading flags,
6611	    # -berok will link without error, but may produce a broken library.
6612	    _LT_TAGVAR(no_undefined_flag, $1)=' $wl-bernotok'
6613	    _LT_TAGVAR(allow_undefined_flag, $1)=' $wl-berok'
6614	    if test yes = "$with_gnu_ld"; then
6615	      # We only use this code for GNU lds that support --whole-archive.
6616	      _LT_TAGVAR(whole_archive_flag_spec, $1)='$wl--whole-archive$convenience $wl--no-whole-archive'
6617	    else
6618	      # Exported symbols can be pulled into shared objects from archives
6619	      _LT_TAGVAR(whole_archive_flag_spec, $1)='$convenience'
6620	    fi
6621	    _LT_TAGVAR(archive_cmds_need_lc, $1)=yes
6622	    _LT_TAGVAR(archive_expsym_cmds, $1)='$RM -r $output_objdir/$realname.d~$MKDIR $output_objdir/$realname.d'
6623	    # -brtl affects multiple linker settings, -berok does not and is overridden later
6624	    compiler_flags_filtered='`func_echo_all "$compiler_flags " | $SED -e "s%-brtl\\([[, ]]\\)%-berok\\1%g"`'
6625	    if test svr4 != "$with_aix_soname"; then
6626	      # This is similar to how AIX traditionally builds its shared
6627	      # libraries. Need -bnortl late, we may have -brtl in LDFLAGS.
6628	      _LT_TAGVAR(archive_expsym_cmds, $1)="$_LT_TAGVAR(archive_expsym_cmds, $1)"'~$CC '$shared_flag_aix' -o $output_objdir/$realname.d/$soname $libobjs $deplibs $wl-bnoentry '$compiler_flags_filtered'$wl-bE:$export_symbols$allow_undefined_flag~$AR $AR_FLAGS $output_objdir/$libname$release.a $output_objdir/$realname.d/$soname'
6629	    fi
6630	    if test aix != "$with_aix_soname"; then
6631	      _LT_TAGVAR(archive_expsym_cmds, $1)="$_LT_TAGVAR(archive_expsym_cmds, $1)"'~$CC '$shared_flag_svr4' -o $output_objdir/$realname.d/$shared_archive_member_spec.o $libobjs $deplibs $wl-bnoentry '$compiler_flags_filtered'$wl-bE:$export_symbols$allow_undefined_flag~$STRIP -e $output_objdir/$realname.d/$shared_archive_member_spec.o~( func_echo_all "#! $soname($shared_archive_member_spec.o)"; if test shr_64 = "$shared_archive_member_spec"; then func_echo_all "# 64"; else func_echo_all "# 32"; fi; cat $export_symbols ) > $output_objdir/$realname.d/$shared_archive_member_spec.imp~$AR $AR_FLAGS $output_objdir/$soname $output_objdir/$realname.d/$shared_archive_member_spec.o $output_objdir/$realname.d/$shared_archive_member_spec.imp'
6632	    else
6633	      # used by -dlpreopen to get the symbols
6634	      _LT_TAGVAR(archive_expsym_cmds, $1)="$_LT_TAGVAR(archive_expsym_cmds, $1)"'~$MV  $output_objdir/$realname.d/$soname $output_objdir'
6635	    fi
6636	    _LT_TAGVAR(archive_expsym_cmds, $1)="$_LT_TAGVAR(archive_expsym_cmds, $1)"'~$RM -r $output_objdir/$realname.d'
6637          fi
6638        fi
6639        ;;
6640
6641      beos*)
6642	if $LD --help 2>&1 | $GREP ': supported targets:.* elf' > /dev/null; then
6643	  _LT_TAGVAR(allow_undefined_flag, $1)=unsupported
6644	  # Joseph Beckenbach <jrb3@best.com> says some releases of gcc
6645	  # support --undefined.  This deserves some investigation.  FIXME
6646	  _LT_TAGVAR(archive_cmds, $1)='$CC -nostart $libobjs $deplibs $compiler_flags $wl-soname $wl$soname -o $lib'
6647	else
6648	  _LT_TAGVAR(ld_shlibs, $1)=no
6649	fi
6650	;;
6651
6652      chorus*)
6653        case $cc_basename in
6654          *)
6655	  # FIXME: insert proper C++ library support
6656	  _LT_TAGVAR(ld_shlibs, $1)=no
6657	  ;;
6658        esac
6659        ;;
6660
6661      cygwin* | mingw* | pw32* | cegcc*)
6662	case $GXX,$cc_basename in
6663	,cl* | no,cl*)
6664	  # Native MSVC
6665	  # hardcode_libdir_flag_spec is actually meaningless, as there is
6666	  # no search path for DLLs.
6667	  _LT_TAGVAR(hardcode_libdir_flag_spec, $1)=' '
6668	  _LT_TAGVAR(allow_undefined_flag, $1)=unsupported
6669	  _LT_TAGVAR(always_export_symbols, $1)=yes
6670	  _LT_TAGVAR(file_list_spec, $1)='@'
6671	  # Tell ltmain to make .lib files, not .a files.
6672	  libext=lib
6673	  # Tell ltmain to make .dll files, not .so files.
6674	  shrext_cmds=.dll
6675	  # FIXME: Setting linknames here is a bad hack.
6676	  _LT_TAGVAR(archive_cmds, $1)='$CC -o $output_objdir/$soname $libobjs $compiler_flags $deplibs -Wl,-DLL,-IMPLIB:"$tool_output_objdir$libname.dll.lib"~linknames='
6677	  _LT_TAGVAR(archive_expsym_cmds, $1)='if _LT_DLL_DEF_P([$export_symbols]); then
6678              cp "$export_symbols" "$output_objdir/$soname.def";
6679              echo "$tool_output_objdir$soname.def" > "$output_objdir/$soname.exp";
6680            else
6681              $SED -e '\''s/^/-link -EXPORT:/'\'' < $export_symbols > $output_objdir/$soname.exp;
6682            fi~
6683            $CC -o $tool_output_objdir$soname $libobjs $compiler_flags $deplibs "@$tool_output_objdir$soname.exp" -Wl,-DLL,-IMPLIB:"$tool_output_objdir$libname.dll.lib"~
6684            linknames='
6685	  # The linker will not automatically build a static lib if we build a DLL.
6686	  # _LT_TAGVAR(old_archive_from_new_cmds, $1)='true'
6687	  _LT_TAGVAR(enable_shared_with_static_runtimes, $1)=yes
6688	  # Don't use ranlib
6689	  _LT_TAGVAR(old_postinstall_cmds, $1)='chmod 644 $oldlib'
6690	  _LT_TAGVAR(postlink_cmds, $1)='lt_outputfile="@OUTPUT@"~
6691            lt_tool_outputfile="@TOOL_OUTPUT@"~
6692            case $lt_outputfile in
6693              *.exe|*.EXE) ;;
6694              *)
6695                lt_outputfile=$lt_outputfile.exe
6696                lt_tool_outputfile=$lt_tool_outputfile.exe
6697                ;;
6698            esac~
6699            func_to_tool_file "$lt_outputfile"~
6700            if test : != "$MANIFEST_TOOL" && test -f "$lt_outputfile.manifest"; then
6701              $MANIFEST_TOOL -manifest "$lt_tool_outputfile.manifest" -outputresource:"$lt_tool_outputfile" || exit 1;
6702              $RM "$lt_outputfile.manifest";
6703            fi'
6704	  ;;
6705	*)
6706	  # g++
6707	  # _LT_TAGVAR(hardcode_libdir_flag_spec, $1) is actually meaningless,
6708	  # as there is no search path for DLLs.
6709	  _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-L$libdir'
6710	  _LT_TAGVAR(export_dynamic_flag_spec, $1)='$wl--export-all-symbols'
6711	  _LT_TAGVAR(allow_undefined_flag, $1)=unsupported
6712	  _LT_TAGVAR(always_export_symbols, $1)=no
6713	  _LT_TAGVAR(enable_shared_with_static_runtimes, $1)=yes
6714
6715	  if $LD --help 2>&1 | $GREP 'auto-import' > /dev/null; then
6716	    _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'
6717	    # If the export-symbols file already is a .def file, use it as
6718	    # is; otherwise, prepend EXPORTS...
6719	    _LT_TAGVAR(archive_expsym_cmds, $1)='if _LT_DLL_DEF_P([$export_symbols]); then
6720              cp $export_symbols $output_objdir/$soname.def;
6721            else
6722              echo EXPORTS > $output_objdir/$soname.def;
6723              cat $export_symbols >> $output_objdir/$soname.def;
6724            fi~
6725            $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'
6726	  else
6727	    _LT_TAGVAR(ld_shlibs, $1)=no
6728	  fi
6729	  ;;
6730	esac
6731	;;
6732      darwin* | rhapsody*)
6733        _LT_DARWIN_LINKER_FEATURES($1)
6734	;;
6735
6736      os2*)
6737	_LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-L$libdir'
6738	_LT_TAGVAR(hardcode_minus_L, $1)=yes
6739	_LT_TAGVAR(allow_undefined_flag, $1)=unsupported
6740	shrext_cmds=.dll
6741	_LT_TAGVAR(archive_cmds, $1)='$ECHO "LIBRARY ${soname%$shared_ext} INITINSTANCE TERMINSTANCE" > $output_objdir/$libname.def~
6742	  $ECHO "DESCRIPTION \"$libname\"" >> $output_objdir/$libname.def~
6743	  $ECHO "DATA MULTIPLE NONSHARED" >> $output_objdir/$libname.def~
6744	  $ECHO EXPORTS >> $output_objdir/$libname.def~
6745	  emxexp $libobjs | $SED /"_DLL_InitTerm"/d >> $output_objdir/$libname.def~
6746	  $CC -Zdll -Zcrtdll -o $output_objdir/$soname $libobjs $deplibs $compiler_flags $output_objdir/$libname.def~
6747	  emximp -o $lib $output_objdir/$libname.def'
6748	_LT_TAGVAR(archive_expsym_cmds, $1)='$ECHO "LIBRARY ${soname%$shared_ext} INITINSTANCE TERMINSTANCE" > $output_objdir/$libname.def~
6749	  $ECHO "DESCRIPTION \"$libname\"" >> $output_objdir/$libname.def~
6750	  $ECHO "DATA MULTIPLE NONSHARED" >> $output_objdir/$libname.def~
6751	  $ECHO EXPORTS >> $output_objdir/$libname.def~
6752	  prefix_cmds="$SED"~
6753	  if test EXPORTS = "`$SED 1q $export_symbols`"; then
6754	    prefix_cmds="$prefix_cmds -e 1d";
6755	  fi~
6756	  prefix_cmds="$prefix_cmds -e \"s/^\(.*\)$/_\1/g\""~
6757	  cat $export_symbols | $prefix_cmds >> $output_objdir/$libname.def~
6758	  $CC -Zdll -Zcrtdll -o $output_objdir/$soname $libobjs $deplibs $compiler_flags $output_objdir/$libname.def~
6759	  emximp -o $lib $output_objdir/$libname.def'
6760	_LT_TAGVAR(old_archive_From_new_cmds, $1)='emximp -o $output_objdir/${libname}_dll.a $output_objdir/$libname.def'
6761	_LT_TAGVAR(enable_shared_with_static_runtimes, $1)=yes
6762	;;
6763
6764      dgux*)
6765        case $cc_basename in
6766          ec++*)
6767	    # FIXME: insert proper C++ library support
6768	    _LT_TAGVAR(ld_shlibs, $1)=no
6769	    ;;
6770          ghcx*)
6771	    # Green Hills C++ Compiler
6772	    # FIXME: insert proper C++ library support
6773	    _LT_TAGVAR(ld_shlibs, $1)=no
6774	    ;;
6775          *)
6776	    # FIXME: insert proper C++ library support
6777	    _LT_TAGVAR(ld_shlibs, $1)=no
6778	    ;;
6779        esac
6780        ;;
6781
6782      freebsd2.*)
6783        # C++ shared libraries reported to be fairly broken before
6784	# switch to ELF
6785        _LT_TAGVAR(ld_shlibs, $1)=no
6786        ;;
6787
6788      freebsd-elf*)
6789        _LT_TAGVAR(archive_cmds_need_lc, $1)=no
6790        ;;
6791
6792      freebsd* | dragonfly*)
6793        # FreeBSD 3 and later use GNU C++ and GNU ld with standard ELF
6794        # conventions
6795        _LT_TAGVAR(ld_shlibs, $1)=yes
6796        ;;
6797
6798      haiku*)
6799        _LT_TAGVAR(archive_cmds, $1)='$CC -shared $libobjs $deplibs $compiler_flags $wl-soname $wl$soname -o $lib'
6800        _LT_TAGVAR(link_all_deplibs, $1)=yes
6801        ;;
6802
6803      hpux9*)
6804        _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='$wl+b $wl$libdir'
6805        _LT_TAGVAR(hardcode_libdir_separator, $1)=:
6806        _LT_TAGVAR(export_dynamic_flag_spec, $1)='$wl-E'
6807        _LT_TAGVAR(hardcode_direct, $1)=yes
6808        _LT_TAGVAR(hardcode_minus_L, $1)=yes # Not in the search PATH,
6809				             # but as the default
6810				             # location of the library.
6811
6812        case $cc_basename in
6813          CC*)
6814            # FIXME: insert proper C++ library support
6815            _LT_TAGVAR(ld_shlibs, $1)=no
6816            ;;
6817          aCC*)
6818            _LT_TAGVAR(archive_cmds, $1)='$RM $output_objdir/$soname~$CC -b $wl+b $wl$install_libdir -o $output_objdir/$soname $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags~test "x$output_objdir/$soname" = "x$lib" || mv $output_objdir/$soname $lib'
6819            # Commands to make compiler produce verbose output that lists
6820            # what "hidden" libraries, object files and flags are used when
6821            # linking a shared library.
6822            #
6823            # There doesn't appear to be a way to prevent this compiler from
6824            # explicitly linking system object files so we need to strip them
6825            # from the output so that they don't get included in the library
6826            # dependencies.
6827            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"'
6828            ;;
6829          *)
6830            if test yes = "$GXX"; then
6831              _LT_TAGVAR(archive_cmds, $1)='$RM $output_objdir/$soname~$CC -shared -nostdlib $pic_flag $wl+b $wl$install_libdir -o $output_objdir/$soname $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags~test "x$output_objdir/$soname" = "x$lib" || mv $output_objdir/$soname $lib'
6832            else
6833              # FIXME: insert proper C++ library support
6834              _LT_TAGVAR(ld_shlibs, $1)=no
6835            fi
6836            ;;
6837        esac
6838        ;;
6839
6840      hpux10*|hpux11*)
6841        if test no = "$with_gnu_ld"; then
6842	  _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='$wl+b $wl$libdir'
6843	  _LT_TAGVAR(hardcode_libdir_separator, $1)=:
6844
6845          case $host_cpu in
6846            hppa*64*|ia64*)
6847              ;;
6848            *)
6849	      _LT_TAGVAR(export_dynamic_flag_spec, $1)='$wl-E'
6850              ;;
6851          esac
6852        fi
6853        case $host_cpu in
6854          hppa*64*|ia64*)
6855            _LT_TAGVAR(hardcode_direct, $1)=no
6856            _LT_TAGVAR(hardcode_shlibpath_var, $1)=no
6857            ;;
6858          *)
6859            _LT_TAGVAR(hardcode_direct, $1)=yes
6860            _LT_TAGVAR(hardcode_direct_absolute, $1)=yes
6861            _LT_TAGVAR(hardcode_minus_L, $1)=yes # Not in the search PATH,
6862					         # but as the default
6863					         # location of the library.
6864            ;;
6865        esac
6866
6867        case $cc_basename in
6868          CC*)
6869	    # FIXME: insert proper C++ library support
6870	    _LT_TAGVAR(ld_shlibs, $1)=no
6871	    ;;
6872          aCC*)
6873	    case $host_cpu in
6874	      hppa*64*)
6875	        _LT_TAGVAR(archive_cmds, $1)='$CC -b $wl+h $wl$soname -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags'
6876	        ;;
6877	      ia64*)
6878	        _LT_TAGVAR(archive_cmds, $1)='$CC -b $wl+h $wl$soname $wl+nodefaultrpath -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags'
6879	        ;;
6880	      *)
6881	        _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'
6882	        ;;
6883	    esac
6884	    # Commands to make compiler produce verbose output that lists
6885	    # what "hidden" libraries, object files and flags are used when
6886	    # linking a shared library.
6887	    #
6888	    # There doesn't appear to be a way to prevent this compiler from
6889	    # explicitly linking system object files so we need to strip them
6890	    # from the output so that they don't get included in the library
6891	    # dependencies.
6892	    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"'
6893	    ;;
6894          *)
6895	    if test yes = "$GXX"; then
6896	      if test no = "$with_gnu_ld"; then
6897	        case $host_cpu in
6898	          hppa*64*)
6899	            _LT_TAGVAR(archive_cmds, $1)='$CC -shared -nostdlib -fPIC $wl+h $wl$soname -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags'
6900	            ;;
6901	          ia64*)
6902	            _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'
6903	            ;;
6904	          *)
6905	            _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'
6906	            ;;
6907	        esac
6908	      fi
6909	    else
6910	      # FIXME: insert proper C++ library support
6911	      _LT_TAGVAR(ld_shlibs, $1)=no
6912	    fi
6913	    ;;
6914        esac
6915        ;;
6916
6917      interix[[3-9]]*)
6918	_LT_TAGVAR(hardcode_direct, $1)=no
6919	_LT_TAGVAR(hardcode_shlibpath_var, $1)=no
6920	_LT_TAGVAR(hardcode_libdir_flag_spec, $1)='$wl-rpath,$libdir'
6921	_LT_TAGVAR(export_dynamic_flag_spec, $1)='$wl-E'
6922	# Hack: On Interix 3.x, we cannot compile PIC because of a broken gcc.
6923	# Instead, shared libraries are loaded at an image base (0x10000000 by
6924	# default) and relocated if they conflict, which is a slow very memory
6925	# consuming and fragmenting process.  To avoid this, we pick a random,
6926	# 256 KiB-aligned image base between 0x50000000 and 0x6FFC0000 at link
6927	# time.  Moving up from 0x10000000 also allows more sbrk(2) space.
6928	_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'
6929	_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'
6930	;;
6931      irix5* | irix6*)
6932        case $cc_basename in
6933          CC*)
6934	    # SGI C++
6935	    _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'
6936
6937	    # Archives containing C++ object files must be created using
6938	    # "CC -ar", where "CC" is the IRIX C++ compiler.  This is
6939	    # necessary to make sure instantiated templates are included
6940	    # in the archive.
6941	    _LT_TAGVAR(old_archive_cmds, $1)='$CC -ar -WR,-u -o $oldlib $oldobjs'
6942	    ;;
6943          *)
6944	    if test yes = "$GXX"; then
6945	      if test no = "$with_gnu_ld"; then
6946	        _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'
6947	      else
6948	        _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'
6949	      fi
6950	    fi
6951	    _LT_TAGVAR(link_all_deplibs, $1)=yes
6952	    ;;
6953        esac
6954        _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='$wl-rpath $wl$libdir'
6955        _LT_TAGVAR(hardcode_libdir_separator, $1)=:
6956        _LT_TAGVAR(inherit_rpath, $1)=yes
6957        ;;
6958
6959      linux* | k*bsd*-gnu | kopensolaris*-gnu | gnu*)
6960        case $cc_basename in
6961          KCC*)
6962	    # Kuck and Associates, Inc. (KAI) C++ Compiler
6963
6964	    # KCC will only create a shared library if the output file
6965	    # ends with ".so" (or ".sl" for HP-UX), so rename the library
6966	    # to its proper name (with version) after linking.
6967	    _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'
6968	    _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'
6969	    # Commands to make compiler produce verbose output that lists
6970	    # what "hidden" libraries, object files and flags are used when
6971	    # linking a shared library.
6972	    #
6973	    # There doesn't appear to be a way to prevent this compiler from
6974	    # explicitly linking system object files so we need to strip them
6975	    # from the output so that they don't get included in the library
6976	    # dependencies.
6977	    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"'
6978
6979	    _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='$wl-rpath,$libdir'
6980	    _LT_TAGVAR(export_dynamic_flag_spec, $1)='$wl--export-dynamic'
6981
6982	    # Archives containing C++ object files must be created using
6983	    # "CC -Bstatic", where "CC" is the KAI C++ compiler.
6984	    _LT_TAGVAR(old_archive_cmds, $1)='$CC -Bstatic -o $oldlib $oldobjs'
6985	    ;;
6986	  icpc* | ecpc* )
6987	    # Intel C++
6988	    with_gnu_ld=yes
6989	    # version 8.0 and above of icpc choke on multiply defined symbols
6990	    # if we add $predep_objects and $postdep_objects, however 7.1 and
6991	    # earlier do not add the objects themselves.
6992	    case `$CC -V 2>&1` in
6993	      *"Version 7."*)
6994	        _LT_TAGVAR(archive_cmds, $1)='$CC -shared $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags $wl-soname $wl$soname -o $lib'
6995		_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'
6996		;;
6997	      *)  # Version 8.0 or newer
6998	        tmp_idyn=
6999	        case $host_cpu in
7000		  ia64*) tmp_idyn=' -i_dynamic';;
7001		esac
7002	        _LT_TAGVAR(archive_cmds, $1)='$CC -shared'"$tmp_idyn"' $libobjs $deplibs $compiler_flags $wl-soname $wl$soname -o $lib'
7003		_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'
7004		;;
7005	    esac
7006	    _LT_TAGVAR(archive_cmds_need_lc, $1)=no
7007	    _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='$wl-rpath,$libdir'
7008	    _LT_TAGVAR(export_dynamic_flag_spec, $1)='$wl--export-dynamic'
7009	    _LT_TAGVAR(whole_archive_flag_spec, $1)='$wl--whole-archive$convenience $wl--no-whole-archive'
7010	    ;;
7011          pgCC* | pgcpp*)
7012            # Portland Group C++ compiler
7013	    case `$CC -V` in
7014	    *pgCC\ [[1-5]].* | *pgcpp\ [[1-5]].*)
7015	      _LT_TAGVAR(prelink_cmds, $1)='tpldir=Template.dir~
7016               rm -rf $tpldir~
7017               $CC --prelink_objects --instantiation_dir $tpldir $objs $libobjs $compile_deplibs~
7018               compile_command="$compile_command `find $tpldir -name \*.o | sort | $NL2SP`"'
7019	      _LT_TAGVAR(old_archive_cmds, $1)='tpldir=Template.dir~
7020                rm -rf $tpldir~
7021                $CC --prelink_objects --instantiation_dir $tpldir $oldobjs$old_deplibs~
7022                $AR $AR_FLAGS $oldlib$oldobjs$old_deplibs `find $tpldir -name \*.o | sort | $NL2SP`~
7023                $RANLIB $oldlib'
7024	      _LT_TAGVAR(archive_cmds, $1)='tpldir=Template.dir~
7025                rm -rf $tpldir~
7026                $CC --prelink_objects --instantiation_dir $tpldir $predep_objects $libobjs $deplibs $convenience $postdep_objects~
7027                $CC -shared $pic_flag $predep_objects $libobjs $deplibs `find $tpldir -name \*.o | sort | $NL2SP` $postdep_objects $compiler_flags $wl-soname $wl$soname -o $lib'
7028	      _LT_TAGVAR(archive_expsym_cmds, $1)='tpldir=Template.dir~
7029                rm -rf $tpldir~
7030                $CC --prelink_objects --instantiation_dir $tpldir $predep_objects $libobjs $deplibs $convenience $postdep_objects~
7031                $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'
7032	      ;;
7033	    *) # Version 6 and above use weak symbols
7034	      _LT_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags $wl-soname $wl$soname -o $lib'
7035	      _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'
7036	      ;;
7037	    esac
7038
7039	    _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='$wl--rpath $wl$libdir'
7040	    _LT_TAGVAR(export_dynamic_flag_spec, $1)='$wl--export-dynamic'
7041	    _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'
7042            ;;
7043	  cxx*)
7044	    # Compaq C++
7045	    _LT_TAGVAR(archive_cmds, $1)='$CC -shared $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags $wl-soname $wl$soname -o $lib'
7046	    _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'
7047
7048	    runpath_var=LD_RUN_PATH
7049	    _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-rpath $libdir'
7050	    _LT_TAGVAR(hardcode_libdir_separator, $1)=:
7051
7052	    # Commands to make compiler produce verbose output that lists
7053	    # what "hidden" libraries, object files and flags are used when
7054	    # linking a shared library.
7055	    #
7056	    # There doesn't appear to be a way to prevent this compiler from
7057	    # explicitly linking system object files so we need to strip them
7058	    # from the output so that they don't get included in the library
7059	    # dependencies.
7060	    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'
7061	    ;;
7062	  xl* | mpixl* | bgxl*)
7063	    # IBM XL 8.0 on PPC, with GNU ld
7064	    _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='$wl-rpath $wl$libdir'
7065	    _LT_TAGVAR(export_dynamic_flag_spec, $1)='$wl--export-dynamic'
7066	    _LT_TAGVAR(archive_cmds, $1)='$CC -qmkshrobj $libobjs $deplibs $compiler_flags $wl-soname $wl$soname -o $lib'
7067	    if test yes = "$supports_anon_versioning"; then
7068	      _LT_TAGVAR(archive_expsym_cmds, $1)='echo "{ global:" > $output_objdir/$libname.ver~
7069                cat $export_symbols | sed -e "s/\(.*\)/\1;/" >> $output_objdir/$libname.ver~
7070                echo "local: *; };" >> $output_objdir/$libname.ver~
7071                $CC -qmkshrobj $libobjs $deplibs $compiler_flags $wl-soname $wl$soname $wl-version-script $wl$output_objdir/$libname.ver -o $lib'
7072	    fi
7073	    ;;
7074	  *)
7075	    case `$CC -V 2>&1 | sed 5q` in
7076	    *Sun\ C*)
7077	      # Sun C++ 5.9
7078	      _LT_TAGVAR(no_undefined_flag, $1)=' -zdefs'
7079	      _LT_TAGVAR(archive_cmds, $1)='$CC -G$allow_undefined_flag -h$soname -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags'
7080	      _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'
7081	      _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-R$libdir'
7082	      _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'
7083	      _LT_TAGVAR(compiler_needs_object, $1)=yes
7084
7085	      # Not sure whether something based on
7086	      # $CC $CFLAGS -v conftest.$objext -o libconftest$shared_ext 2>&1
7087	      # would be better.
7088	      output_verbose_link_cmd='func_echo_all'
7089
7090	      # Archives containing C++ object files must be created using
7091	      # "CC -xar", where "CC" is the Sun C++ compiler.  This is
7092	      # necessary to make sure instantiated templates are included
7093	      # in the archive.
7094	      _LT_TAGVAR(old_archive_cmds, $1)='$CC -xar -o $oldlib $oldobjs'
7095	      ;;
7096	    esac
7097	    ;;
7098	esac
7099	;;
7100
7101      lynxos*)
7102        # FIXME: insert proper C++ library support
7103	_LT_TAGVAR(ld_shlibs, $1)=no
7104	;;
7105
7106      m88k*)
7107        # FIXME: insert proper C++ library support
7108        _LT_TAGVAR(ld_shlibs, $1)=no
7109	;;
7110
7111      mvs*)
7112        case $cc_basename in
7113          cxx*)
7114	    # FIXME: insert proper C++ library support
7115	    _LT_TAGVAR(ld_shlibs, $1)=no
7116	    ;;
7117	  *)
7118	    # FIXME: insert proper C++ library support
7119	    _LT_TAGVAR(ld_shlibs, $1)=no
7120	    ;;
7121	esac
7122	;;
7123
7124      netbsd*)
7125        if echo __ELF__ | $CC -E - | $GREP __ELF__ >/dev/null; then
7126	  _LT_TAGVAR(archive_cmds, $1)='$LD -Bshareable  -o $lib $predep_objects $libobjs $deplibs $postdep_objects $linker_flags'
7127	  wlarc=
7128	  _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-R$libdir'
7129	  _LT_TAGVAR(hardcode_direct, $1)=yes
7130	  _LT_TAGVAR(hardcode_shlibpath_var, $1)=no
7131	fi
7132	# Workaround some broken pre-1.5 toolchains
7133	output_verbose_link_cmd='$CC -shared $CFLAGS -v conftest.$objext 2>&1 | $GREP conftest.$objext | $SED -e "s:-lgcc -lc -lgcc::"'
7134	;;
7135
7136      *nto* | *qnx*)
7137        _LT_TAGVAR(ld_shlibs, $1)=yes
7138	;;
7139
7140      openbsd* | bitrig*)
7141	if test -f /usr/libexec/ld.so; then
7142	  _LT_TAGVAR(hardcode_direct, $1)=yes
7143	  _LT_TAGVAR(hardcode_shlibpath_var, $1)=no
7144	  _LT_TAGVAR(hardcode_direct_absolute, $1)=yes
7145	  _LT_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags -o $lib'
7146	  _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='$wl-rpath,$libdir'
7147	  if test -z "`echo __ELF__ | $CC -E - | grep __ELF__`"; then
7148	    _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'
7149	    _LT_TAGVAR(export_dynamic_flag_spec, $1)='$wl-E'
7150	    _LT_TAGVAR(whole_archive_flag_spec, $1)=$wlarc'--whole-archive$convenience '$wlarc'--no-whole-archive'
7151	  fi
7152	  output_verbose_link_cmd=func_echo_all
7153	else
7154	  _LT_TAGVAR(ld_shlibs, $1)=no
7155	fi
7156	;;
7157
7158      osf3* | osf4* | osf5*)
7159        case $cc_basename in
7160          KCC*)
7161	    # Kuck and Associates, Inc. (KAI) C++ Compiler
7162
7163	    # KCC will only create a shared library if the output file
7164	    # ends with ".so" (or ".sl" for HP-UX), so rename the library
7165	    # to its proper name (with version) after linking.
7166	    _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'
7167
7168	    _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='$wl-rpath,$libdir'
7169	    _LT_TAGVAR(hardcode_libdir_separator, $1)=:
7170
7171	    # Archives containing C++ object files must be created using
7172	    # the KAI C++ compiler.
7173	    case $host in
7174	      osf3*) _LT_TAGVAR(old_archive_cmds, $1)='$CC -Bstatic -o $oldlib $oldobjs' ;;
7175	      *) _LT_TAGVAR(old_archive_cmds, $1)='$CC -o $oldlib $oldobjs' ;;
7176	    esac
7177	    ;;
7178          RCC*)
7179	    # Rational C++ 2.4.1
7180	    # FIXME: insert proper C++ library support
7181	    _LT_TAGVAR(ld_shlibs, $1)=no
7182	    ;;
7183          cxx*)
7184	    case $host in
7185	      osf3*)
7186	        _LT_TAGVAR(allow_undefined_flag, $1)=' $wl-expect_unresolved $wl\*'
7187	        _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'
7188	        _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='$wl-rpath $wl$libdir'
7189		;;
7190	      *)
7191	        _LT_TAGVAR(allow_undefined_flag, $1)=' -expect_unresolved \*'
7192	        _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'
7193	        _LT_TAGVAR(archive_expsym_cmds, $1)='for i in `cat $export_symbols`; do printf "%s %s\\n" -exported_symbol "\$i" >> $lib.exp; done~
7194                  echo "-hidden">> $lib.exp~
7195                  $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~
7196                  $RM $lib.exp'
7197	        _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-rpath $libdir'
7198		;;
7199	    esac
7200
7201	    _LT_TAGVAR(hardcode_libdir_separator, $1)=:
7202
7203	    # Commands to make compiler produce verbose output that lists
7204	    # what "hidden" libraries, object files and flags are used when
7205	    # linking a shared library.
7206	    #
7207	    # There doesn't appear to be a way to prevent this compiler from
7208	    # explicitly linking system object files so we need to strip them
7209	    # from the output so that they don't get included in the library
7210	    # dependencies.
7211	    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"'
7212	    ;;
7213	  *)
7214	    if test yes,no = "$GXX,$with_gnu_ld"; then
7215	      _LT_TAGVAR(allow_undefined_flag, $1)=' $wl-expect_unresolved $wl\*'
7216	      case $host in
7217	        osf3*)
7218	          _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'
7219		  ;;
7220	        *)
7221	          _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'
7222		  ;;
7223	      esac
7224
7225	      _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='$wl-rpath $wl$libdir'
7226	      _LT_TAGVAR(hardcode_libdir_separator, $1)=:
7227
7228	      # Commands to make compiler produce verbose output that lists
7229	      # what "hidden" libraries, object files and flags are used when
7230	      # linking a shared library.
7231	      output_verbose_link_cmd='$CC -shared $CFLAGS -v conftest.$objext 2>&1 | $GREP -v "^Configured with:" | $GREP "\-L"'
7232
7233	    else
7234	      # FIXME: insert proper C++ library support
7235	      _LT_TAGVAR(ld_shlibs, $1)=no
7236	    fi
7237	    ;;
7238        esac
7239        ;;
7240
7241      psos*)
7242        # FIXME: insert proper C++ library support
7243        _LT_TAGVAR(ld_shlibs, $1)=no
7244        ;;
7245
7246      sunos4*)
7247        case $cc_basename in
7248          CC*)
7249	    # Sun C++ 4.x
7250	    # FIXME: insert proper C++ library support
7251	    _LT_TAGVAR(ld_shlibs, $1)=no
7252	    ;;
7253          lcc*)
7254	    # Lucid
7255	    # FIXME: insert proper C++ library support
7256	    _LT_TAGVAR(ld_shlibs, $1)=no
7257	    ;;
7258          *)
7259	    # FIXME: insert proper C++ library support
7260	    _LT_TAGVAR(ld_shlibs, $1)=no
7261	    ;;
7262        esac
7263        ;;
7264
7265      solaris*)
7266        case $cc_basename in
7267          CC* | sunCC*)
7268	    # Sun C++ 4.2, 5.x and Centerline C++
7269            _LT_TAGVAR(archive_cmds_need_lc,$1)=yes
7270	    _LT_TAGVAR(no_undefined_flag, $1)=' -zdefs'
7271	    _LT_TAGVAR(archive_cmds, $1)='$CC -G$allow_undefined_flag -h$soname -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags'
7272	    _LT_TAGVAR(archive_expsym_cmds, $1)='echo "{ global:" > $lib.exp~cat $export_symbols | $SED -e "s/\(.*\)/\1;/" >> $lib.exp~echo "local: *; };" >> $lib.exp~
7273              $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'
7274
7275	    _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-R$libdir'
7276	    _LT_TAGVAR(hardcode_shlibpath_var, $1)=no
7277	    case $host_os in
7278	      solaris2.[[0-5]] | solaris2.[[0-5]].*) ;;
7279	      *)
7280		# The compiler driver will combine and reorder linker options,
7281		# but understands '-z linker_flag'.
7282	        # Supported since Solaris 2.6 (maybe 2.5.1?)
7283		_LT_TAGVAR(whole_archive_flag_spec, $1)='-z allextract$convenience -z defaultextract'
7284	        ;;
7285	    esac
7286	    _LT_TAGVAR(link_all_deplibs, $1)=yes
7287
7288	    output_verbose_link_cmd='func_echo_all'
7289
7290	    # Archives containing C++ object files must be created using
7291	    # "CC -xar", where "CC" is the Sun C++ compiler.  This is
7292	    # necessary to make sure instantiated templates are included
7293	    # in the archive.
7294	    _LT_TAGVAR(old_archive_cmds, $1)='$CC -xar -o $oldlib $oldobjs'
7295	    ;;
7296          gcx*)
7297	    # Green Hills C++ Compiler
7298	    _LT_TAGVAR(archive_cmds, $1)='$CC -shared $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags $wl-h $wl$soname -o $lib'
7299
7300	    # The C++ compiler must be used to create the archive.
7301	    _LT_TAGVAR(old_archive_cmds, $1)='$CC $LDFLAGS -archive -o $oldlib $oldobjs'
7302	    ;;
7303          *)
7304	    # GNU C++ compiler with Solaris linker
7305	    if test yes,no = "$GXX,$with_gnu_ld"; then
7306	      _LT_TAGVAR(no_undefined_flag, $1)=' $wl-z ${wl}defs'
7307	      if $CC --version | $GREP -v '^2\.7' > /dev/null; then
7308	        _LT_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag -nostdlib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags $wl-h $wl$soname -o $lib'
7309	        _LT_TAGVAR(archive_expsym_cmds, $1)='echo "{ global:" > $lib.exp~cat $export_symbols | $SED -e "s/\(.*\)/\1;/" >> $lib.exp~echo "local: *; };" >> $lib.exp~
7310                  $CC -shared $pic_flag -nostdlib $wl-M $wl$lib.exp $wl-h $wl$soname -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags~$RM $lib.exp'
7311
7312	        # Commands to make compiler produce verbose output that lists
7313	        # what "hidden" libraries, object files and flags are used when
7314	        # linking a shared library.
7315	        output_verbose_link_cmd='$CC -shared $CFLAGS -v conftest.$objext 2>&1 | $GREP -v "^Configured with:" | $GREP "\-L"'
7316	      else
7317	        # g++ 2.7 appears to require '-G' NOT '-shared' on this
7318	        # platform.
7319	        _LT_TAGVAR(archive_cmds, $1)='$CC -G -nostdlib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags $wl-h $wl$soname -o $lib'
7320	        _LT_TAGVAR(archive_expsym_cmds, $1)='echo "{ global:" > $lib.exp~cat $export_symbols | $SED -e "s/\(.*\)/\1;/" >> $lib.exp~echo "local: *; };" >> $lib.exp~
7321                  $CC -G -nostdlib $wl-M $wl$lib.exp $wl-h $wl$soname -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags~$RM $lib.exp'
7322
7323	        # Commands to make compiler produce verbose output that lists
7324	        # what "hidden" libraries, object files and flags are used when
7325	        # linking a shared library.
7326	        output_verbose_link_cmd='$CC -G $CFLAGS -v conftest.$objext 2>&1 | $GREP -v "^Configured with:" | $GREP "\-L"'
7327	      fi
7328
7329	      _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='$wl-R $wl$libdir'
7330	      case $host_os in
7331		solaris2.[[0-5]] | solaris2.[[0-5]].*) ;;
7332		*)
7333		  _LT_TAGVAR(whole_archive_flag_spec, $1)='$wl-z ${wl}allextract$convenience $wl-z ${wl}defaultextract'
7334		  ;;
7335	      esac
7336	    fi
7337	    ;;
7338        esac
7339        ;;
7340
7341    sysv4*uw2* | sysv5OpenUNIX* | sysv5UnixWare7.[[01]].[[10]]* | unixware7* | sco3.2v5.0.[[024]]*)
7342      _LT_TAGVAR(no_undefined_flag, $1)='$wl-z,text'
7343      _LT_TAGVAR(archive_cmds_need_lc, $1)=no
7344      _LT_TAGVAR(hardcode_shlibpath_var, $1)=no
7345      runpath_var='LD_RUN_PATH'
7346
7347      case $cc_basename in
7348        CC*)
7349	  _LT_TAGVAR(archive_cmds, $1)='$CC -G $wl-h,$soname -o $lib $libobjs $deplibs $compiler_flags'
7350	  _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -G $wl-Bexport:$export_symbols $wl-h,$soname -o $lib $libobjs $deplibs $compiler_flags'
7351	  ;;
7352	*)
7353	  _LT_TAGVAR(archive_cmds, $1)='$CC -shared $wl-h,$soname -o $lib $libobjs $deplibs $compiler_flags'
7354	  _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -shared $wl-Bexport:$export_symbols $wl-h,$soname -o $lib $libobjs $deplibs $compiler_flags'
7355	  ;;
7356      esac
7357      ;;
7358
7359      sysv5* | sco3.2v5* | sco5v6*)
7360	# Note: We CANNOT use -z defs as we might desire, because we do not
7361	# link with -lc, and that would cause any symbols used from libc to
7362	# always be unresolved, which means just about no library would
7363	# ever link correctly.  If we're not using GNU ld we use -z text
7364	# though, which does catch some bad symbols but isn't as heavy-handed
7365	# as -z defs.
7366	_LT_TAGVAR(no_undefined_flag, $1)='$wl-z,text'
7367	_LT_TAGVAR(allow_undefined_flag, $1)='$wl-z,nodefs'
7368	_LT_TAGVAR(archive_cmds_need_lc, $1)=no
7369	_LT_TAGVAR(hardcode_shlibpath_var, $1)=no
7370	_LT_TAGVAR(hardcode_libdir_flag_spec, $1)='$wl-R,$libdir'
7371	_LT_TAGVAR(hardcode_libdir_separator, $1)=':'
7372	_LT_TAGVAR(link_all_deplibs, $1)=yes
7373	_LT_TAGVAR(export_dynamic_flag_spec, $1)='$wl-Bexport'
7374	runpath_var='LD_RUN_PATH'
7375
7376	case $cc_basename in
7377          CC*)
7378	    _LT_TAGVAR(archive_cmds, $1)='$CC -G $wl-h,$soname -o $lib $libobjs $deplibs $compiler_flags'
7379	    _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -G $wl-Bexport:$export_symbols $wl-h,$soname -o $lib $libobjs $deplibs $compiler_flags'
7380	    _LT_TAGVAR(old_archive_cmds, $1)='$CC -Tprelink_objects $oldobjs~
7381              '"$_LT_TAGVAR(old_archive_cmds, $1)"
7382	    _LT_TAGVAR(reload_cmds, $1)='$CC -Tprelink_objects $reload_objs~
7383              '"$_LT_TAGVAR(reload_cmds, $1)"
7384	    ;;
7385	  *)
7386	    _LT_TAGVAR(archive_cmds, $1)='$CC -shared $wl-h,$soname -o $lib $libobjs $deplibs $compiler_flags'
7387	    _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -shared $wl-Bexport:$export_symbols $wl-h,$soname -o $lib $libobjs $deplibs $compiler_flags'
7388	    ;;
7389	esac
7390      ;;
7391
7392      tandem*)
7393        case $cc_basename in
7394          NCC*)
7395	    # NonStop-UX NCC 3.20
7396	    # FIXME: insert proper C++ library support
7397	    _LT_TAGVAR(ld_shlibs, $1)=no
7398	    ;;
7399          *)
7400	    # FIXME: insert proper C++ library support
7401	    _LT_TAGVAR(ld_shlibs, $1)=no
7402	    ;;
7403        esac
7404        ;;
7405
7406      vxworks*)
7407        # FIXME: insert proper C++ library support
7408        _LT_TAGVAR(ld_shlibs, $1)=no
7409        ;;
7410
7411      *)
7412        # FIXME: insert proper C++ library support
7413        _LT_TAGVAR(ld_shlibs, $1)=no
7414        ;;
7415    esac
7416
7417    AC_MSG_RESULT([$_LT_TAGVAR(ld_shlibs, $1)])
7418    test no = "$_LT_TAGVAR(ld_shlibs, $1)" && can_build_shared=no
7419
7420    _LT_TAGVAR(GCC, $1)=$GXX
7421    _LT_TAGVAR(LD, $1)=$LD
7422
7423    ## CAVEAT EMPTOR:
7424    ## There is no encapsulation within the following macros, do not change
7425    ## the running order or otherwise move them around unless you know exactly
7426    ## what you are doing...
7427    _LT_SYS_HIDDEN_LIBDEPS($1)
7428    _LT_COMPILER_PIC($1)
7429    _LT_COMPILER_C_O($1)
7430    _LT_COMPILER_FILE_LOCKS($1)
7431    _LT_LINKER_SHLIBS($1)
7432    _LT_SYS_DYNAMIC_LINKER($1)
7433    _LT_LINKER_HARDCODE_LIBPATH($1)
7434
7435    _LT_CONFIG($1)
7436  fi # test -n "$compiler"
7437
7438  CC=$lt_save_CC
7439  CFLAGS=$lt_save_CFLAGS
7440  LDCXX=$LD
7441  LD=$lt_save_LD
7442  GCC=$lt_save_GCC
7443  with_gnu_ld=$lt_save_with_gnu_ld
7444  lt_cv_path_LDCXX=$lt_cv_path_LD
7445  lt_cv_path_LD=$lt_save_path_LD
7446  lt_cv_prog_gnu_ldcxx=$lt_cv_prog_gnu_ld
7447  lt_cv_prog_gnu_ld=$lt_save_with_gnu_ld
7448fi # test yes != "$_lt_caught_CXX_error"
7449
7450AC_LANG_POP
7451])# _LT_LANG_CXX_CONFIG
7452
7453
7454# _LT_FUNC_STRIPNAME_CNF
7455# ----------------------
7456# func_stripname_cnf prefix suffix name
7457# strip PREFIX and SUFFIX off of NAME.
7458# PREFIX and SUFFIX must not contain globbing or regex special
7459# characters, hashes, percent signs, but SUFFIX may contain a leading
7460# dot (in which case that matches only a dot).
7461#
7462# This function is identical to the (non-XSI) version of func_stripname,
7463# except this one can be used by m4 code that may be executed by configure,
7464# rather than the libtool script.
7465m4_defun([_LT_FUNC_STRIPNAME_CNF],[dnl
7466AC_REQUIRE([_LT_DECL_SED])
7467AC_REQUIRE([_LT_PROG_ECHO_BACKSLASH])
7468func_stripname_cnf ()
7469{
7470  case @S|@2 in
7471  .*) func_stripname_result=`$ECHO "@S|@3" | $SED "s%^@S|@1%%; s%\\\\@S|@2\$%%"`;;
7472  *)  func_stripname_result=`$ECHO "@S|@3" | $SED "s%^@S|@1%%; s%@S|@2\$%%"`;;
7473  esac
7474} # func_stripname_cnf
7475])# _LT_FUNC_STRIPNAME_CNF
7476
7477
7478# _LT_SYS_HIDDEN_LIBDEPS([TAGNAME])
7479# ---------------------------------
7480# Figure out "hidden" library dependencies from verbose
7481# compiler output when linking a shared library.
7482# Parse the compiler output and extract the necessary
7483# objects, libraries and library flags.
7484m4_defun([_LT_SYS_HIDDEN_LIBDEPS],
7485[m4_require([_LT_FILEUTILS_DEFAULTS])dnl
7486AC_REQUIRE([_LT_FUNC_STRIPNAME_CNF])dnl
7487# Dependencies to place before and after the object being linked:
7488_LT_TAGVAR(predep_objects, $1)=
7489_LT_TAGVAR(postdep_objects, $1)=
7490_LT_TAGVAR(predeps, $1)=
7491_LT_TAGVAR(postdeps, $1)=
7492_LT_TAGVAR(compiler_lib_search_path, $1)=
7493
7494dnl we can't use the lt_simple_compile_test_code here,
7495dnl because it contains code intended for an executable,
7496dnl not a library.  It's possible we should let each
7497dnl tag define a new lt_????_link_test_code variable,
7498dnl but it's only used here...
7499m4_if([$1], [], [cat > conftest.$ac_ext <<_LT_EOF
7500int a;
7501void foo (void) { a = 0; }
7502_LT_EOF
7503], [$1], [CXX], [cat > conftest.$ac_ext <<_LT_EOF
7504class Foo
7505{
7506public:
7507  Foo (void) { a = 0; }
7508private:
7509  int a;
7510};
7511_LT_EOF
7512], [$1], [F77], [cat > conftest.$ac_ext <<_LT_EOF
7513      subroutine foo
7514      implicit none
7515      integer*4 a
7516      a=0
7517      return
7518      end
7519_LT_EOF
7520], [$1], [FC], [cat > conftest.$ac_ext <<_LT_EOF
7521      subroutine foo
7522      implicit none
7523      integer a
7524      a=0
7525      return
7526      end
7527_LT_EOF
7528], [$1], [GCJ], [cat > conftest.$ac_ext <<_LT_EOF
7529public class foo {
7530  private int a;
7531  public void bar (void) {
7532    a = 0;
7533  }
7534};
7535_LT_EOF
7536], [$1], [GO], [cat > conftest.$ac_ext <<_LT_EOF
7537package foo
7538func foo() {
7539}
7540_LT_EOF
7541])
7542
7543_lt_libdeps_save_CFLAGS=$CFLAGS
7544case "$CC $CFLAGS " in #(
7545*\ -flto*\ *) CFLAGS="$CFLAGS -fno-lto" ;;
7546*\ -fwhopr*\ *) CFLAGS="$CFLAGS -fno-whopr" ;;
7547*\ -fuse-linker-plugin*\ *) CFLAGS="$CFLAGS -fno-use-linker-plugin" ;;
7548esac
7549
7550dnl Parse the compiler output and extract the necessary
7551dnl objects, libraries and library flags.
7552if AC_TRY_EVAL(ac_compile); then
7553  # Parse the compiler output and extract the necessary
7554  # objects, libraries and library flags.
7555
7556  # Sentinel used to keep track of whether or not we are before
7557  # the conftest object file.
7558  pre_test_object_deps_done=no
7559
7560  for p in `eval "$output_verbose_link_cmd"`; do
7561    case $prev$p in
7562
7563    -L* | -R* | -l*)
7564       # Some compilers place space between "-{L,R}" and the path.
7565       # Remove the space.
7566       if test x-L = "$p" ||
7567          test x-R = "$p"; then
7568	 prev=$p
7569	 continue
7570       fi
7571
7572       # Expand the sysroot to ease extracting the directories later.
7573       if test -z "$prev"; then
7574         case $p in
7575         -L*) func_stripname_cnf '-L' '' "$p"; prev=-L; p=$func_stripname_result ;;
7576         -R*) func_stripname_cnf '-R' '' "$p"; prev=-R; p=$func_stripname_result ;;
7577         -l*) func_stripname_cnf '-l' '' "$p"; prev=-l; p=$func_stripname_result ;;
7578         esac
7579       fi
7580       case $p in
7581       =*) func_stripname_cnf '=' '' "$p"; p=$lt_sysroot$func_stripname_result ;;
7582       esac
7583       if test no = "$pre_test_object_deps_done"; then
7584	 case $prev in
7585	 -L | -R)
7586	   # Internal compiler library paths should come after those
7587	   # provided the user.  The postdeps already come after the
7588	   # user supplied libs so there is no need to process them.
7589	   if test -z "$_LT_TAGVAR(compiler_lib_search_path, $1)"; then
7590	     _LT_TAGVAR(compiler_lib_search_path, $1)=$prev$p
7591	   else
7592	     _LT_TAGVAR(compiler_lib_search_path, $1)="${_LT_TAGVAR(compiler_lib_search_path, $1)} $prev$p"
7593	   fi
7594	   ;;
7595	 # The "-l" case would never come before the object being
7596	 # linked, so don't bother handling this case.
7597	 esac
7598       else
7599	 if test -z "$_LT_TAGVAR(postdeps, $1)"; then
7600	   _LT_TAGVAR(postdeps, $1)=$prev$p
7601	 else
7602	   _LT_TAGVAR(postdeps, $1)="${_LT_TAGVAR(postdeps, $1)} $prev$p"
7603	 fi
7604       fi
7605       prev=
7606       ;;
7607
7608    *.lto.$objext) ;; # Ignore GCC LTO objects
7609    *.$objext)
7610       # This assumes that the test object file only shows up
7611       # once in the compiler output.
7612       if test "$p" = "conftest.$objext"; then
7613	 pre_test_object_deps_done=yes
7614	 continue
7615       fi
7616
7617       if test no = "$pre_test_object_deps_done"; then
7618	 if test -z "$_LT_TAGVAR(predep_objects, $1)"; then
7619	   _LT_TAGVAR(predep_objects, $1)=$p
7620	 else
7621	   _LT_TAGVAR(predep_objects, $1)="$_LT_TAGVAR(predep_objects, $1) $p"
7622	 fi
7623       else
7624	 if test -z "$_LT_TAGVAR(postdep_objects, $1)"; then
7625	   _LT_TAGVAR(postdep_objects, $1)=$p
7626	 else
7627	   _LT_TAGVAR(postdep_objects, $1)="$_LT_TAGVAR(postdep_objects, $1) $p"
7628	 fi
7629       fi
7630       ;;
7631
7632    *) ;; # Ignore the rest.
7633
7634    esac
7635  done
7636
7637  # Clean up.
7638  rm -f a.out a.exe
7639else
7640  echo "libtool.m4: error: problem compiling $1 test program"
7641fi
7642
7643$RM -f confest.$objext
7644CFLAGS=$_lt_libdeps_save_CFLAGS
7645
7646# PORTME: override above test on systems where it is broken
7647m4_if([$1], [CXX],
7648[case $host_os in
7649interix[[3-9]]*)
7650  # Interix 3.5 installs completely hosed .la files for C++, so rather than
7651  # hack all around it, let's just trust "g++" to DTRT.
7652  _LT_TAGVAR(predep_objects,$1)=
7653  _LT_TAGVAR(postdep_objects,$1)=
7654  _LT_TAGVAR(postdeps,$1)=
7655  ;;
7656esac
7657])
7658
7659case " $_LT_TAGVAR(postdeps, $1) " in
7660*" -lc "*) _LT_TAGVAR(archive_cmds_need_lc, $1)=no ;;
7661esac
7662 _LT_TAGVAR(compiler_lib_search_dirs, $1)=
7663if test -n "${_LT_TAGVAR(compiler_lib_search_path, $1)}"; then
7664 _LT_TAGVAR(compiler_lib_search_dirs, $1)=`echo " ${_LT_TAGVAR(compiler_lib_search_path, $1)}" | $SED -e 's! -L! !g' -e 's!^ !!'`
7665fi
7666_LT_TAGDECL([], [compiler_lib_search_dirs], [1],
7667    [The directories searched by this compiler when creating a shared library])
7668_LT_TAGDECL([], [predep_objects], [1],
7669    [Dependencies to place before and after the objects being linked to
7670    create a shared library])
7671_LT_TAGDECL([], [postdep_objects], [1])
7672_LT_TAGDECL([], [predeps], [1])
7673_LT_TAGDECL([], [postdeps], [1])
7674_LT_TAGDECL([], [compiler_lib_search_path], [1],
7675    [The library search path used internally by the compiler when linking
7676    a shared library])
7677])# _LT_SYS_HIDDEN_LIBDEPS
7678
7679
7680# _LT_LANG_F77_CONFIG([TAG])
7681# --------------------------
7682# Ensure that the configuration variables for a Fortran 77 compiler are
7683# suitably defined.  These variables are subsequently used by _LT_CONFIG
7684# to write the compiler configuration to 'libtool'.
7685m4_defun([_LT_LANG_F77_CONFIG],
7686[AC_LANG_PUSH(Fortran 77)
7687if test -z "$F77" || test no = "$F77"; then
7688  _lt_disable_F77=yes
7689fi
7690
7691_LT_TAGVAR(archive_cmds_need_lc, $1)=no
7692_LT_TAGVAR(allow_undefined_flag, $1)=
7693_LT_TAGVAR(always_export_symbols, $1)=no
7694_LT_TAGVAR(archive_expsym_cmds, $1)=
7695_LT_TAGVAR(export_dynamic_flag_spec, $1)=
7696_LT_TAGVAR(hardcode_direct, $1)=no
7697_LT_TAGVAR(hardcode_direct_absolute, $1)=no
7698_LT_TAGVAR(hardcode_libdir_flag_spec, $1)=
7699_LT_TAGVAR(hardcode_libdir_separator, $1)=
7700_LT_TAGVAR(hardcode_minus_L, $1)=no
7701_LT_TAGVAR(hardcode_automatic, $1)=no
7702_LT_TAGVAR(inherit_rpath, $1)=no
7703_LT_TAGVAR(module_cmds, $1)=
7704_LT_TAGVAR(module_expsym_cmds, $1)=
7705_LT_TAGVAR(link_all_deplibs, $1)=unknown
7706_LT_TAGVAR(old_archive_cmds, $1)=$old_archive_cmds
7707_LT_TAGVAR(reload_flag, $1)=$reload_flag
7708_LT_TAGVAR(reload_cmds, $1)=$reload_cmds
7709_LT_TAGVAR(no_undefined_flag, $1)=
7710_LT_TAGVAR(whole_archive_flag_spec, $1)=
7711_LT_TAGVAR(enable_shared_with_static_runtimes, $1)=no
7712
7713# Source file extension for f77 test sources.
7714ac_ext=f
7715
7716# Object file extension for compiled f77 test sources.
7717objext=o
7718_LT_TAGVAR(objext, $1)=$objext
7719
7720# No sense in running all these tests if we already determined that
7721# the F77 compiler isn't working.  Some variables (like enable_shared)
7722# are currently assumed to apply to all compilers on this platform,
7723# and will be corrupted by setting them based on a non-working compiler.
7724if test yes != "$_lt_disable_F77"; then
7725  # Code to be used in simple compile tests
7726  lt_simple_compile_test_code="\
7727      subroutine t
7728      return
7729      end
7730"
7731
7732  # Code to be used in simple link tests
7733  lt_simple_link_test_code="\
7734      program t
7735      end
7736"
7737
7738  # ltmain only uses $CC for tagged configurations so make sure $CC is set.
7739  _LT_TAG_COMPILER
7740
7741  # save warnings/boilerplate of simple test code
7742  _LT_COMPILER_BOILERPLATE
7743  _LT_LINKER_BOILERPLATE
7744
7745  # Allow CC to be a program name with arguments.
7746  lt_save_CC=$CC
7747  lt_save_GCC=$GCC
7748  lt_save_CFLAGS=$CFLAGS
7749  CC=${F77-"f77"}
7750  CFLAGS=$FFLAGS
7751  compiler=$CC
7752  _LT_TAGVAR(compiler, $1)=$CC
7753  _LT_CC_BASENAME([$compiler])
7754  GCC=$G77
7755  if test -n "$compiler"; then
7756    AC_MSG_CHECKING([if libtool supports shared libraries])
7757    AC_MSG_RESULT([$can_build_shared])
7758
7759    AC_MSG_CHECKING([whether to build shared libraries])
7760    test no = "$can_build_shared" && enable_shared=no
7761
7762    # On AIX, shared libraries and static libraries use the same namespace, and
7763    # are all built from PIC.
7764    case $host_os in
7765      aix3*)
7766        test yes = "$enable_shared" && enable_static=no
7767        if test -n "$RANLIB"; then
7768          archive_cmds="$archive_cmds~\$RANLIB \$lib"
7769          postinstall_cmds='$RANLIB $lib'
7770        fi
7771        ;;
7772      aix[[4-9]]*)
7773	if test ia64 != "$host_cpu"; then
7774	  case $enable_shared,$with_aix_soname,$aix_use_runtimelinking in
7775	  yes,aix,yes) ;;		# shared object as lib.so file only
7776	  yes,svr4,*) ;;		# shared object as lib.so archive member only
7777	  yes,*) enable_static=no ;;	# shared object in lib.a archive as well
7778	  esac
7779	fi
7780        ;;
7781    esac
7782    AC_MSG_RESULT([$enable_shared])
7783
7784    AC_MSG_CHECKING([whether to build static libraries])
7785    # Make sure either enable_shared or enable_static is yes.
7786    test yes = "$enable_shared" || enable_static=yes
7787    AC_MSG_RESULT([$enable_static])
7788
7789    _LT_TAGVAR(GCC, $1)=$G77
7790    _LT_TAGVAR(LD, $1)=$LD
7791
7792    ## CAVEAT EMPTOR:
7793    ## There is no encapsulation within the following macros, do not change
7794    ## the running order or otherwise move them around unless you know exactly
7795    ## what you are doing...
7796    _LT_COMPILER_PIC($1)
7797    _LT_COMPILER_C_O($1)
7798    _LT_COMPILER_FILE_LOCKS($1)
7799    _LT_LINKER_SHLIBS($1)
7800    _LT_SYS_DYNAMIC_LINKER($1)
7801    _LT_LINKER_HARDCODE_LIBPATH($1)
7802
7803    _LT_CONFIG($1)
7804  fi # test -n "$compiler"
7805
7806  GCC=$lt_save_GCC
7807  CC=$lt_save_CC
7808  CFLAGS=$lt_save_CFLAGS
7809fi # test yes != "$_lt_disable_F77"
7810
7811AC_LANG_POP
7812])# _LT_LANG_F77_CONFIG
7813
7814
7815# _LT_LANG_FC_CONFIG([TAG])
7816# -------------------------
7817# Ensure that the configuration variables for a Fortran compiler are
7818# suitably defined.  These variables are subsequently used by _LT_CONFIG
7819# to write the compiler configuration to 'libtool'.
7820m4_defun([_LT_LANG_FC_CONFIG],
7821[AC_LANG_PUSH(Fortran)
7822
7823if test -z "$FC" || test no = "$FC"; then
7824  _lt_disable_FC=yes
7825fi
7826
7827_LT_TAGVAR(archive_cmds_need_lc, $1)=no
7828_LT_TAGVAR(allow_undefined_flag, $1)=
7829_LT_TAGVAR(always_export_symbols, $1)=no
7830_LT_TAGVAR(archive_expsym_cmds, $1)=
7831_LT_TAGVAR(export_dynamic_flag_spec, $1)=
7832_LT_TAGVAR(hardcode_direct, $1)=no
7833_LT_TAGVAR(hardcode_direct_absolute, $1)=no
7834_LT_TAGVAR(hardcode_libdir_flag_spec, $1)=
7835_LT_TAGVAR(hardcode_libdir_separator, $1)=
7836_LT_TAGVAR(hardcode_minus_L, $1)=no
7837_LT_TAGVAR(hardcode_automatic, $1)=no
7838_LT_TAGVAR(inherit_rpath, $1)=no
7839_LT_TAGVAR(module_cmds, $1)=
7840_LT_TAGVAR(module_expsym_cmds, $1)=
7841_LT_TAGVAR(link_all_deplibs, $1)=unknown
7842_LT_TAGVAR(old_archive_cmds, $1)=$old_archive_cmds
7843_LT_TAGVAR(reload_flag, $1)=$reload_flag
7844_LT_TAGVAR(reload_cmds, $1)=$reload_cmds
7845_LT_TAGVAR(no_undefined_flag, $1)=
7846_LT_TAGVAR(whole_archive_flag_spec, $1)=
7847_LT_TAGVAR(enable_shared_with_static_runtimes, $1)=no
7848
7849# Source file extension for fc test sources.
7850ac_ext=${ac_fc_srcext-f}
7851
7852# Object file extension for compiled fc test sources.
7853objext=o
7854_LT_TAGVAR(objext, $1)=$objext
7855
7856# No sense in running all these tests if we already determined that
7857# the FC compiler isn't working.  Some variables (like enable_shared)
7858# are currently assumed to apply to all compilers on this platform,
7859# and will be corrupted by setting them based on a non-working compiler.
7860if test yes != "$_lt_disable_FC"; then
7861  # Code to be used in simple compile tests
7862  lt_simple_compile_test_code="\
7863      subroutine t
7864      return
7865      end
7866"
7867
7868  # Code to be used in simple link tests
7869  lt_simple_link_test_code="\
7870      program t
7871      end
7872"
7873
7874  # ltmain only uses $CC for tagged configurations so make sure $CC is set.
7875  _LT_TAG_COMPILER
7876
7877  # save warnings/boilerplate of simple test code
7878  _LT_COMPILER_BOILERPLATE
7879  _LT_LINKER_BOILERPLATE
7880
7881  # Allow CC to be a program name with arguments.
7882  lt_save_CC=$CC
7883  lt_save_GCC=$GCC
7884  lt_save_CFLAGS=$CFLAGS
7885  CC=${FC-"f95"}
7886  CFLAGS=$FCFLAGS
7887  compiler=$CC
7888  GCC=$ac_cv_fc_compiler_gnu
7889
7890  _LT_TAGVAR(compiler, $1)=$CC
7891  _LT_CC_BASENAME([$compiler])
7892
7893  if test -n "$compiler"; then
7894    AC_MSG_CHECKING([if libtool supports shared libraries])
7895    AC_MSG_RESULT([$can_build_shared])
7896
7897    AC_MSG_CHECKING([whether to build shared libraries])
7898    test no = "$can_build_shared" && enable_shared=no
7899
7900    # On AIX, shared libraries and static libraries use the same namespace, and
7901    # are all built from PIC.
7902    case $host_os in
7903      aix3*)
7904        test yes = "$enable_shared" && enable_static=no
7905        if test -n "$RANLIB"; then
7906          archive_cmds="$archive_cmds~\$RANLIB \$lib"
7907          postinstall_cmds='$RANLIB $lib'
7908        fi
7909        ;;
7910      aix[[4-9]]*)
7911	if test ia64 != "$host_cpu"; then
7912	  case $enable_shared,$with_aix_soname,$aix_use_runtimelinking in
7913	  yes,aix,yes) ;;		# shared object as lib.so file only
7914	  yes,svr4,*) ;;		# shared object as lib.so archive member only
7915	  yes,*) enable_static=no ;;	# shared object in lib.a archive as well
7916	  esac
7917	fi
7918        ;;
7919    esac
7920    AC_MSG_RESULT([$enable_shared])
7921
7922    AC_MSG_CHECKING([whether to build static libraries])
7923    # Make sure either enable_shared or enable_static is yes.
7924    test yes = "$enable_shared" || enable_static=yes
7925    AC_MSG_RESULT([$enable_static])
7926
7927    _LT_TAGVAR(GCC, $1)=$ac_cv_fc_compiler_gnu
7928    _LT_TAGVAR(LD, $1)=$LD
7929
7930    ## CAVEAT EMPTOR:
7931    ## There is no encapsulation within the following macros, do not change
7932    ## the running order or otherwise move them around unless you know exactly
7933    ## what you are doing...
7934    _LT_SYS_HIDDEN_LIBDEPS($1)
7935    _LT_COMPILER_PIC($1)
7936    _LT_COMPILER_C_O($1)
7937    _LT_COMPILER_FILE_LOCKS($1)
7938    _LT_LINKER_SHLIBS($1)
7939    _LT_SYS_DYNAMIC_LINKER($1)
7940    _LT_LINKER_HARDCODE_LIBPATH($1)
7941
7942    _LT_CONFIG($1)
7943  fi # test -n "$compiler"
7944
7945  GCC=$lt_save_GCC
7946  CC=$lt_save_CC
7947  CFLAGS=$lt_save_CFLAGS
7948fi # test yes != "$_lt_disable_FC"
7949
7950AC_LANG_POP
7951])# _LT_LANG_FC_CONFIG
7952
7953
7954# _LT_LANG_GCJ_CONFIG([TAG])
7955# --------------------------
7956# Ensure that the configuration variables for the GNU Java Compiler compiler
7957# are suitably defined.  These variables are subsequently used by _LT_CONFIG
7958# to write the compiler configuration to 'libtool'.
7959m4_defun([_LT_LANG_GCJ_CONFIG],
7960[AC_REQUIRE([LT_PROG_GCJ])dnl
7961AC_LANG_SAVE
7962
7963# Source file extension for Java test sources.
7964ac_ext=java
7965
7966# Object file extension for compiled Java test sources.
7967objext=o
7968_LT_TAGVAR(objext, $1)=$objext
7969
7970# Code to be used in simple compile tests
7971lt_simple_compile_test_code="class foo {}"
7972
7973# Code to be used in simple link tests
7974lt_simple_link_test_code='public class conftest { public static void main(String[[]] argv) {}; }'
7975
7976# ltmain only uses $CC for tagged configurations so make sure $CC is set.
7977_LT_TAG_COMPILER
7978
7979# save warnings/boilerplate of simple test code
7980_LT_COMPILER_BOILERPLATE
7981_LT_LINKER_BOILERPLATE
7982
7983# Allow CC to be a program name with arguments.
7984lt_save_CC=$CC
7985lt_save_CFLAGS=$CFLAGS
7986lt_save_GCC=$GCC
7987GCC=yes
7988CC=${GCJ-"gcj"}
7989CFLAGS=$GCJFLAGS
7990compiler=$CC
7991_LT_TAGVAR(compiler, $1)=$CC
7992_LT_TAGVAR(LD, $1)=$LD
7993_LT_CC_BASENAME([$compiler])
7994
7995# GCJ did not exist at the time GCC didn't implicitly link libc in.
7996_LT_TAGVAR(archive_cmds_need_lc, $1)=no
7997
7998_LT_TAGVAR(old_archive_cmds, $1)=$old_archive_cmds
7999_LT_TAGVAR(reload_flag, $1)=$reload_flag
8000_LT_TAGVAR(reload_cmds, $1)=$reload_cmds
8001
8002if test -n "$compiler"; then
8003  _LT_COMPILER_NO_RTTI($1)
8004  _LT_COMPILER_PIC($1)
8005  _LT_COMPILER_C_O($1)
8006  _LT_COMPILER_FILE_LOCKS($1)
8007  _LT_LINKER_SHLIBS($1)
8008  _LT_LINKER_HARDCODE_LIBPATH($1)
8009
8010  _LT_CONFIG($1)
8011fi
8012
8013AC_LANG_RESTORE
8014
8015GCC=$lt_save_GCC
8016CC=$lt_save_CC
8017CFLAGS=$lt_save_CFLAGS
8018])# _LT_LANG_GCJ_CONFIG
8019
8020
8021# _LT_LANG_GO_CONFIG([TAG])
8022# --------------------------
8023# Ensure that the configuration variables for the GNU Go compiler
8024# are suitably defined.  These variables are subsequently used by _LT_CONFIG
8025# to write the compiler configuration to 'libtool'.
8026m4_defun([_LT_LANG_GO_CONFIG],
8027[AC_REQUIRE([LT_PROG_GO])dnl
8028AC_LANG_SAVE
8029
8030# Source file extension for Go test sources.
8031ac_ext=go
8032
8033# Object file extension for compiled Go test sources.
8034objext=o
8035_LT_TAGVAR(objext, $1)=$objext
8036
8037# Code to be used in simple compile tests
8038lt_simple_compile_test_code="package main; func main() { }"
8039
8040# Code to be used in simple link tests
8041lt_simple_link_test_code='package main; func main() { }'
8042
8043# ltmain only uses $CC for tagged configurations so make sure $CC is set.
8044_LT_TAG_COMPILER
8045
8046# save warnings/boilerplate of simple test code
8047_LT_COMPILER_BOILERPLATE
8048_LT_LINKER_BOILERPLATE
8049
8050# Allow CC to be a program name with arguments.
8051lt_save_CC=$CC
8052lt_save_CFLAGS=$CFLAGS
8053lt_save_GCC=$GCC
8054GCC=yes
8055CC=${GOC-"gccgo"}
8056CFLAGS=$GOFLAGS
8057compiler=$CC
8058_LT_TAGVAR(compiler, $1)=$CC
8059_LT_TAGVAR(LD, $1)=$LD
8060_LT_CC_BASENAME([$compiler])
8061
8062# Go did not exist at the time GCC didn't implicitly link libc in.
8063_LT_TAGVAR(archive_cmds_need_lc, $1)=no
8064
8065_LT_TAGVAR(old_archive_cmds, $1)=$old_archive_cmds
8066_LT_TAGVAR(reload_flag, $1)=$reload_flag
8067_LT_TAGVAR(reload_cmds, $1)=$reload_cmds
8068
8069if test -n "$compiler"; then
8070  _LT_COMPILER_NO_RTTI($1)
8071  _LT_COMPILER_PIC($1)
8072  _LT_COMPILER_C_O($1)
8073  _LT_COMPILER_FILE_LOCKS($1)
8074  _LT_LINKER_SHLIBS($1)
8075  _LT_LINKER_HARDCODE_LIBPATH($1)
8076
8077  _LT_CONFIG($1)
8078fi
8079
8080AC_LANG_RESTORE
8081
8082GCC=$lt_save_GCC
8083CC=$lt_save_CC
8084CFLAGS=$lt_save_CFLAGS
8085])# _LT_LANG_GO_CONFIG
8086
8087
8088# _LT_LANG_RC_CONFIG([TAG])
8089# -------------------------
8090# Ensure that the configuration variables for the Windows resource compiler
8091# are suitably defined.  These variables are subsequently used by _LT_CONFIG
8092# to write the compiler configuration to 'libtool'.
8093m4_defun([_LT_LANG_RC_CONFIG],
8094[AC_REQUIRE([LT_PROG_RC])dnl
8095AC_LANG_SAVE
8096
8097# Source file extension for RC test sources.
8098ac_ext=rc
8099
8100# Object file extension for compiled RC test sources.
8101objext=o
8102_LT_TAGVAR(objext, $1)=$objext
8103
8104# Code to be used in simple compile tests
8105lt_simple_compile_test_code='sample MENU { MENUITEM "&Soup", 100, CHECKED }'
8106
8107# Code to be used in simple link tests
8108lt_simple_link_test_code=$lt_simple_compile_test_code
8109
8110# ltmain only uses $CC for tagged configurations so make sure $CC is set.
8111_LT_TAG_COMPILER
8112
8113# save warnings/boilerplate of simple test code
8114_LT_COMPILER_BOILERPLATE
8115_LT_LINKER_BOILERPLATE
8116
8117# Allow CC to be a program name with arguments.
8118lt_save_CC=$CC
8119lt_save_CFLAGS=$CFLAGS
8120lt_save_GCC=$GCC
8121GCC=
8122CC=${RC-"windres"}
8123CFLAGS=
8124compiler=$CC
8125_LT_TAGVAR(compiler, $1)=$CC
8126_LT_CC_BASENAME([$compiler])
8127_LT_TAGVAR(lt_cv_prog_compiler_c_o, $1)=yes
8128
8129if test -n "$compiler"; then
8130  :
8131  _LT_CONFIG($1)
8132fi
8133
8134GCC=$lt_save_GCC
8135AC_LANG_RESTORE
8136CC=$lt_save_CC
8137CFLAGS=$lt_save_CFLAGS
8138])# _LT_LANG_RC_CONFIG
8139
8140
8141# LT_PROG_GCJ
8142# -----------
8143AC_DEFUN([LT_PROG_GCJ],
8144[m4_ifdef([AC_PROG_GCJ], [AC_PROG_GCJ],
8145  [m4_ifdef([A][M_PROG_GCJ], [A][M_PROG_GCJ],
8146    [AC_CHECK_TOOL(GCJ, gcj,)
8147      test set = "${GCJFLAGS+set}" || GCJFLAGS="-g -O2"
8148      AC_SUBST(GCJFLAGS)])])[]dnl
8149])
8150
8151# Old name:
8152AU_ALIAS([LT_AC_PROG_GCJ], [LT_PROG_GCJ])
8153dnl aclocal-1.4 backwards compatibility:
8154dnl AC_DEFUN([LT_AC_PROG_GCJ], [])
8155
8156
8157# LT_PROG_GO
8158# ----------
8159AC_DEFUN([LT_PROG_GO],
8160[AC_CHECK_TOOL(GOC, gccgo,)
8161])
8162
8163
8164# LT_PROG_RC
8165# ----------
8166AC_DEFUN([LT_PROG_RC],
8167[AC_CHECK_TOOL(RC, windres,)
8168])
8169
8170# Old name:
8171AU_ALIAS([LT_AC_PROG_RC], [LT_PROG_RC])
8172dnl aclocal-1.4 backwards compatibility:
8173dnl AC_DEFUN([LT_AC_PROG_RC], [])
8174
8175
8176# _LT_DECL_EGREP
8177# --------------
8178# If we don't have a new enough Autoconf to choose the best grep
8179# available, choose the one first in the user's PATH.
8180m4_defun([_LT_DECL_EGREP],
8181[AC_REQUIRE([AC_PROG_EGREP])dnl
8182AC_REQUIRE([AC_PROG_FGREP])dnl
8183test -z "$GREP" && GREP=grep
8184_LT_DECL([], [GREP], [1], [A grep program that handles long lines])
8185_LT_DECL([], [EGREP], [1], [An ERE matcher])
8186_LT_DECL([], [FGREP], [1], [A literal string matcher])
8187dnl Non-bleeding-edge autoconf doesn't subst GREP, so do it here too
8188AC_SUBST([GREP])
8189])
8190
8191
8192# _LT_DECL_OBJDUMP
8193# --------------
8194# If we don't have a new enough Autoconf to choose the best objdump
8195# available, choose the one first in the user's PATH.
8196m4_defun([_LT_DECL_OBJDUMP],
8197[AC_CHECK_TOOL(OBJDUMP, objdump, false)
8198test -z "$OBJDUMP" && OBJDUMP=objdump
8199_LT_DECL([], [OBJDUMP], [1], [An object symbol dumper])
8200AC_SUBST([OBJDUMP])
8201])
8202
8203# _LT_DECL_DLLTOOL
8204# ----------------
8205# Ensure DLLTOOL variable is set.
8206m4_defun([_LT_DECL_DLLTOOL],
8207[AC_CHECK_TOOL(DLLTOOL, dlltool, false)
8208test -z "$DLLTOOL" && DLLTOOL=dlltool
8209_LT_DECL([], [DLLTOOL], [1], [DLL creation program])
8210AC_SUBST([DLLTOOL])
8211])
8212
8213# _LT_DECL_SED
8214# ------------
8215# Check for a fully-functional sed program, that truncates
8216# as few characters as possible.  Prefer GNU sed if found.
8217m4_defun([_LT_DECL_SED],
8218[AC_PROG_SED
8219test -z "$SED" && SED=sed
8220Xsed="$SED -e 1s/^X//"
8221_LT_DECL([], [SED], [1], [A sed program that does not truncate output])
8222_LT_DECL([], [Xsed], ["\$SED -e 1s/^X//"],
8223    [Sed that helps us avoid accidentally triggering echo(1) options like -n])
8224])# _LT_DECL_SED
8225
8226m4_ifndef([AC_PROG_SED], [
8227# NOTE: This macro has been submitted for inclusion into   #
8228#  GNU Autoconf as AC_PROG_SED.  When it is available in   #
8229#  a released version of Autoconf we should remove this    #
8230#  macro and use it instead.                               #
8231
8232m4_defun([AC_PROG_SED],
8233[AC_MSG_CHECKING([for a sed that does not truncate output])
8234AC_CACHE_VAL(lt_cv_path_SED,
8235[# Loop through the user's path and test for sed and gsed.
8236# Then use that list of sed's as ones to test for truncation.
8237as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
8238for as_dir in $PATH
8239do
8240  IFS=$as_save_IFS
8241  test -z "$as_dir" && as_dir=.
8242  for lt_ac_prog in sed gsed; do
8243    for ac_exec_ext in '' $ac_executable_extensions; do
8244      if $as_executable_p "$as_dir/$lt_ac_prog$ac_exec_ext"; then
8245        lt_ac_sed_list="$lt_ac_sed_list $as_dir/$lt_ac_prog$ac_exec_ext"
8246      fi
8247    done
8248  done
8249done
8250IFS=$as_save_IFS
8251lt_ac_max=0
8252lt_ac_count=0
8253# Add /usr/xpg4/bin/sed as it is typically found on Solaris
8254# along with /bin/sed that truncates output.
8255for lt_ac_sed in $lt_ac_sed_list /usr/xpg4/bin/sed; do
8256  test ! -f "$lt_ac_sed" && continue
8257  cat /dev/null > conftest.in
8258  lt_ac_count=0
8259  echo $ECHO_N "0123456789$ECHO_C" >conftest.in
8260  # Check for GNU sed and select it if it is found.
8261  if "$lt_ac_sed" --version 2>&1 < /dev/null | grep 'GNU' > /dev/null; then
8262    lt_cv_path_SED=$lt_ac_sed
8263    break
8264  fi
8265  while true; do
8266    cat conftest.in conftest.in >conftest.tmp
8267    mv conftest.tmp conftest.in
8268    cp conftest.in conftest.nl
8269    echo >>conftest.nl
8270    $lt_ac_sed -e 's/a$//' < conftest.nl >conftest.out || break
8271    cmp -s conftest.out conftest.nl || break
8272    # 10000 chars as input seems more than enough
8273    test 10 -lt "$lt_ac_count" && break
8274    lt_ac_count=`expr $lt_ac_count + 1`
8275    if test "$lt_ac_count" -gt "$lt_ac_max"; then
8276      lt_ac_max=$lt_ac_count
8277      lt_cv_path_SED=$lt_ac_sed
8278    fi
8279  done
8280done
8281])
8282SED=$lt_cv_path_SED
8283AC_SUBST([SED])
8284AC_MSG_RESULT([$SED])
8285])#AC_PROG_SED
8286])#m4_ifndef
8287
8288# Old name:
8289AU_ALIAS([LT_AC_PROG_SED], [AC_PROG_SED])
8290dnl aclocal-1.4 backwards compatibility:
8291dnl AC_DEFUN([LT_AC_PROG_SED], [])
8292
8293
8294# _LT_CHECK_SHELL_FEATURES
8295# ------------------------
8296# Find out whether the shell is Bourne or XSI compatible,
8297# or has some other useful features.
8298m4_defun([_LT_CHECK_SHELL_FEATURES],
8299[if ( (MAIL=60; unset MAIL) || exit) >/dev/null 2>&1; then
8300  lt_unset=unset
8301else
8302  lt_unset=false
8303fi
8304_LT_DECL([], [lt_unset], [0], [whether the shell understands "unset"])dnl
8305
8306# test EBCDIC or ASCII
8307case `echo X|tr X '\101'` in
8308 A) # ASCII based system
8309    # \n is not interpreted correctly by Solaris 8 /usr/ucb/tr
8310  lt_SP2NL='tr \040 \012'
8311  lt_NL2SP='tr \015\012 \040\040'
8312  ;;
8313 *) # EBCDIC based system
8314  lt_SP2NL='tr \100 \n'
8315  lt_NL2SP='tr \r\n \100\100'
8316  ;;
8317esac
8318_LT_DECL([SP2NL], [lt_SP2NL], [1], [turn spaces into newlines])dnl
8319_LT_DECL([NL2SP], [lt_NL2SP], [1], [turn newlines into spaces])dnl
8320])# _LT_CHECK_SHELL_FEATURES
8321
8322
8323# _LT_PATH_CONVERSION_FUNCTIONS
8324# -----------------------------
8325# Determine what file name conversion functions should be used by
8326# func_to_host_file (and, implicitly, by func_to_host_path).  These are needed
8327# for certain cross-compile configurations and native mingw.
8328m4_defun([_LT_PATH_CONVERSION_FUNCTIONS],
8329[AC_REQUIRE([AC_CANONICAL_HOST])dnl
8330AC_REQUIRE([AC_CANONICAL_BUILD])dnl
8331AC_MSG_CHECKING([how to convert $build file names to $host format])
8332AC_CACHE_VAL(lt_cv_to_host_file_cmd,
8333[case $host in
8334  *-*-mingw* )
8335    case $build in
8336      *-*-mingw* ) # actually msys
8337        lt_cv_to_host_file_cmd=func_convert_file_msys_to_w32
8338        ;;
8339      *-*-cygwin* )
8340        lt_cv_to_host_file_cmd=func_convert_file_cygwin_to_w32
8341        ;;
8342      * ) # otherwise, assume *nix
8343        lt_cv_to_host_file_cmd=func_convert_file_nix_to_w32
8344        ;;
8345    esac
8346    ;;
8347  *-*-cygwin* )
8348    case $build in
8349      *-*-mingw* ) # actually msys
8350        lt_cv_to_host_file_cmd=func_convert_file_msys_to_cygwin
8351        ;;
8352      *-*-cygwin* )
8353        lt_cv_to_host_file_cmd=func_convert_file_noop
8354        ;;
8355      * ) # otherwise, assume *nix
8356        lt_cv_to_host_file_cmd=func_convert_file_nix_to_cygwin
8357        ;;
8358    esac
8359    ;;
8360  * ) # unhandled hosts (and "normal" native builds)
8361    lt_cv_to_host_file_cmd=func_convert_file_noop
8362    ;;
8363esac
8364])
8365to_host_file_cmd=$lt_cv_to_host_file_cmd
8366AC_MSG_RESULT([$lt_cv_to_host_file_cmd])
8367_LT_DECL([to_host_file_cmd], [lt_cv_to_host_file_cmd],
8368         [0], [convert $build file names to $host format])dnl
8369
8370AC_MSG_CHECKING([how to convert $build file names to toolchain format])
8371AC_CACHE_VAL(lt_cv_to_tool_file_cmd,
8372[#assume ordinary cross tools, or native build.
8373lt_cv_to_tool_file_cmd=func_convert_file_noop
8374case $host in
8375  *-*-mingw* )
8376    case $build in
8377      *-*-mingw* ) # actually msys
8378        lt_cv_to_tool_file_cmd=func_convert_file_msys_to_w32
8379        ;;
8380    esac
8381    ;;
8382esac
8383])
8384to_tool_file_cmd=$lt_cv_to_tool_file_cmd
8385AC_MSG_RESULT([$lt_cv_to_tool_file_cmd])
8386_LT_DECL([to_tool_file_cmd], [lt_cv_to_tool_file_cmd],
8387         [0], [convert $build files to toolchain format])dnl
8388])# _LT_PATH_CONVERSION_FUNCTIONS
8389
8390# Helper functions for option handling.                    -*- Autoconf -*-
8391#
8392#   Copyright (C) 2004-2005, 2007-2009, 2011-2015 Free Software
8393#   Foundation, Inc.
8394#   Written by Gary V. Vaughan, 2004
8395#
8396# This file is free software; the Free Software Foundation gives
8397# unlimited permission to copy and/or distribute it, with or without
8398# modifications, as long as this notice is preserved.
8399
8400# serial 8 ltoptions.m4
8401
8402# This is to help aclocal find these macros, as it can't see m4_define.
8403AC_DEFUN([LTOPTIONS_VERSION], [m4_if([1])])
8404
8405
8406# _LT_MANGLE_OPTION(MACRO-NAME, OPTION-NAME)
8407# ------------------------------------------
8408m4_define([_LT_MANGLE_OPTION],
8409[[_LT_OPTION_]m4_bpatsubst($1__$2, [[^a-zA-Z0-9_]], [_])])
8410
8411
8412# _LT_SET_OPTION(MACRO-NAME, OPTION-NAME)
8413# ---------------------------------------
8414# Set option OPTION-NAME for macro MACRO-NAME, and if there is a
8415# matching handler defined, dispatch to it.  Other OPTION-NAMEs are
8416# saved as a flag.
8417m4_define([_LT_SET_OPTION],
8418[m4_define(_LT_MANGLE_OPTION([$1], [$2]))dnl
8419m4_ifdef(_LT_MANGLE_DEFUN([$1], [$2]),
8420        _LT_MANGLE_DEFUN([$1], [$2]),
8421    [m4_warning([Unknown $1 option '$2'])])[]dnl
8422])
8423
8424
8425# _LT_IF_OPTION(MACRO-NAME, OPTION-NAME, IF-SET, [IF-NOT-SET])
8426# ------------------------------------------------------------
8427# Execute IF-SET if OPTION is set, IF-NOT-SET otherwise.
8428m4_define([_LT_IF_OPTION],
8429[m4_ifdef(_LT_MANGLE_OPTION([$1], [$2]), [$3], [$4])])
8430
8431
8432# _LT_UNLESS_OPTIONS(MACRO-NAME, OPTION-LIST, IF-NOT-SET)
8433# -------------------------------------------------------
8434# Execute IF-NOT-SET unless all options in OPTION-LIST for MACRO-NAME
8435# are set.
8436m4_define([_LT_UNLESS_OPTIONS],
8437[m4_foreach([_LT_Option], m4_split(m4_normalize([$2])),
8438	    [m4_ifdef(_LT_MANGLE_OPTION([$1], _LT_Option),
8439		      [m4_define([$0_found])])])[]dnl
8440m4_ifdef([$0_found], [m4_undefine([$0_found])], [$3
8441])[]dnl
8442])
8443
8444
8445# _LT_SET_OPTIONS(MACRO-NAME, OPTION-LIST)
8446# ----------------------------------------
8447# OPTION-LIST is a space-separated list of Libtool options associated
8448# with MACRO-NAME.  If any OPTION has a matching handler declared with
8449# LT_OPTION_DEFINE, dispatch to that macro; otherwise complain about
8450# the unknown option and exit.
8451m4_defun([_LT_SET_OPTIONS],
8452[# Set options
8453m4_foreach([_LT_Option], m4_split(m4_normalize([$2])),
8454    [_LT_SET_OPTION([$1], _LT_Option)])
8455
8456m4_if([$1],[LT_INIT],[
8457  dnl
8458  dnl Simply set some default values (i.e off) if boolean options were not
8459  dnl specified:
8460  _LT_UNLESS_OPTIONS([LT_INIT], [dlopen], [enable_dlopen=no
8461  ])
8462  _LT_UNLESS_OPTIONS([LT_INIT], [win32-dll], [enable_win32_dll=no
8463  ])
8464  dnl
8465  dnl If no reference was made to various pairs of opposing options, then
8466  dnl we run the default mode handler for the pair.  For example, if neither
8467  dnl 'shared' nor 'disable-shared' was passed, we enable building of shared
8468  dnl archives by default:
8469  _LT_UNLESS_OPTIONS([LT_INIT], [shared disable-shared], [_LT_ENABLE_SHARED])
8470  _LT_UNLESS_OPTIONS([LT_INIT], [static disable-static], [_LT_ENABLE_STATIC])
8471  _LT_UNLESS_OPTIONS([LT_INIT], [pic-only no-pic], [_LT_WITH_PIC])
8472  _LT_UNLESS_OPTIONS([LT_INIT], [fast-install disable-fast-install],
8473		   [_LT_ENABLE_FAST_INSTALL])
8474  _LT_UNLESS_OPTIONS([LT_INIT], [aix-soname=aix aix-soname=both aix-soname=svr4],
8475		   [_LT_WITH_AIX_SONAME([aix])])
8476  ])
8477])# _LT_SET_OPTIONS
8478
8479
8480
8481# _LT_MANGLE_DEFUN(MACRO-NAME, OPTION-NAME)
8482# -----------------------------------------
8483m4_define([_LT_MANGLE_DEFUN],
8484[[_LT_OPTION_DEFUN_]m4_bpatsubst(m4_toupper([$1__$2]), [[^A-Z0-9_]], [_])])
8485
8486
8487# LT_OPTION_DEFINE(MACRO-NAME, OPTION-NAME, CODE)
8488# -----------------------------------------------
8489m4_define([LT_OPTION_DEFINE],
8490[m4_define(_LT_MANGLE_DEFUN([$1], [$2]), [$3])[]dnl
8491])# LT_OPTION_DEFINE
8492
8493
8494# dlopen
8495# ------
8496LT_OPTION_DEFINE([LT_INIT], [dlopen], [enable_dlopen=yes
8497])
8498
8499AU_DEFUN([AC_LIBTOOL_DLOPEN],
8500[_LT_SET_OPTION([LT_INIT], [dlopen])
8501AC_DIAGNOSE([obsolete],
8502[$0: Remove this warning and the call to _LT_SET_OPTION when you
8503put the 'dlopen' option into LT_INIT's first parameter.])
8504])
8505
8506dnl aclocal-1.4 backwards compatibility:
8507dnl AC_DEFUN([AC_LIBTOOL_DLOPEN], [])
8508
8509
8510# win32-dll
8511# ---------
8512# Declare package support for building win32 dll's.
8513LT_OPTION_DEFINE([LT_INIT], [win32-dll],
8514[enable_win32_dll=yes
8515
8516case $host in
8517*-*-cygwin* | *-*-mingw* | *-*-pw32* | *-*-cegcc*)
8518  AC_CHECK_TOOL(AS, as, false)
8519  AC_CHECK_TOOL(DLLTOOL, dlltool, false)
8520  AC_CHECK_TOOL(OBJDUMP, objdump, false)
8521  ;;
8522esac
8523
8524test -z "$AS" && AS=as
8525_LT_DECL([], [AS],      [1], [Assembler program])dnl
8526
8527test -z "$DLLTOOL" && DLLTOOL=dlltool
8528_LT_DECL([], [DLLTOOL], [1], [DLL creation program])dnl
8529
8530test -z "$OBJDUMP" && OBJDUMP=objdump
8531_LT_DECL([], [OBJDUMP], [1], [Object dumper program])dnl
8532])# win32-dll
8533
8534AU_DEFUN([AC_LIBTOOL_WIN32_DLL],
8535[AC_REQUIRE([AC_CANONICAL_HOST])dnl
8536_LT_SET_OPTION([LT_INIT], [win32-dll])
8537AC_DIAGNOSE([obsolete],
8538[$0: Remove this warning and the call to _LT_SET_OPTION when you
8539put the 'win32-dll' option into LT_INIT's first parameter.])
8540])
8541
8542dnl aclocal-1.4 backwards compatibility:
8543dnl AC_DEFUN([AC_LIBTOOL_WIN32_DLL], [])
8544
8545
8546# _LT_ENABLE_SHARED([DEFAULT])
8547# ----------------------------
8548# implement the --enable-shared flag, and supports the 'shared' and
8549# 'disable-shared' LT_INIT options.
8550# DEFAULT is either 'yes' or 'no'.  If omitted, it defaults to 'yes'.
8551m4_define([_LT_ENABLE_SHARED],
8552[m4_define([_LT_ENABLE_SHARED_DEFAULT], [m4_if($1, no, no, yes)])dnl
8553AC_ARG_ENABLE([shared],
8554    [AS_HELP_STRING([--enable-shared@<:@=PKGS@:>@],
8555	[build shared libraries @<:@default=]_LT_ENABLE_SHARED_DEFAULT[@:>@])],
8556    [p=${PACKAGE-default}
8557    case $enableval in
8558    yes) enable_shared=yes ;;
8559    no) enable_shared=no ;;
8560    *)
8561      enable_shared=no
8562      # Look at the argument we got.  We use all the common list separators.
8563      lt_save_ifs=$IFS; IFS=$IFS$PATH_SEPARATOR,
8564      for pkg in $enableval; do
8565	IFS=$lt_save_ifs
8566	if test "X$pkg" = "X$p"; then
8567	  enable_shared=yes
8568	fi
8569      done
8570      IFS=$lt_save_ifs
8571      ;;
8572    esac],
8573    [enable_shared=]_LT_ENABLE_SHARED_DEFAULT)
8574
8575    _LT_DECL([build_libtool_libs], [enable_shared], [0],
8576	[Whether or not to build shared libraries])
8577])# _LT_ENABLE_SHARED
8578
8579LT_OPTION_DEFINE([LT_INIT], [shared], [_LT_ENABLE_SHARED([yes])])
8580LT_OPTION_DEFINE([LT_INIT], [disable-shared], [_LT_ENABLE_SHARED([no])])
8581
8582# Old names:
8583AC_DEFUN([AC_ENABLE_SHARED],
8584[_LT_SET_OPTION([LT_INIT], m4_if([$1], [no], [disable-])[shared])
8585])
8586
8587AC_DEFUN([AC_DISABLE_SHARED],
8588[_LT_SET_OPTION([LT_INIT], [disable-shared])
8589])
8590
8591AU_DEFUN([AM_ENABLE_SHARED], [AC_ENABLE_SHARED($@)])
8592AU_DEFUN([AM_DISABLE_SHARED], [AC_DISABLE_SHARED($@)])
8593
8594dnl aclocal-1.4 backwards compatibility:
8595dnl AC_DEFUN([AM_ENABLE_SHARED], [])
8596dnl AC_DEFUN([AM_DISABLE_SHARED], [])
8597
8598
8599
8600# _LT_ENABLE_STATIC([DEFAULT])
8601# ----------------------------
8602# implement the --enable-static flag, and support the 'static' and
8603# 'disable-static' LT_INIT options.
8604# DEFAULT is either 'yes' or 'no'.  If omitted, it defaults to 'yes'.
8605m4_define([_LT_ENABLE_STATIC],
8606[m4_define([_LT_ENABLE_STATIC_DEFAULT], [m4_if($1, no, no, yes)])dnl
8607AC_ARG_ENABLE([static],
8608    [AS_HELP_STRING([--enable-static@<:@=PKGS@:>@],
8609	[build static libraries @<:@default=]_LT_ENABLE_STATIC_DEFAULT[@:>@])],
8610    [p=${PACKAGE-default}
8611    case $enableval in
8612    yes) enable_static=yes ;;
8613    no) enable_static=no ;;
8614    *)
8615     enable_static=no
8616      # Look at the argument we got.  We use all the common list separators.
8617      lt_save_ifs=$IFS; IFS=$IFS$PATH_SEPARATOR,
8618      for pkg in $enableval; do
8619	IFS=$lt_save_ifs
8620	if test "X$pkg" = "X$p"; then
8621	  enable_static=yes
8622	fi
8623      done
8624      IFS=$lt_save_ifs
8625      ;;
8626    esac],
8627    [enable_static=]_LT_ENABLE_STATIC_DEFAULT)
8628
8629    _LT_DECL([build_old_libs], [enable_static], [0],
8630	[Whether or not to build static libraries])
8631])# _LT_ENABLE_STATIC
8632
8633LT_OPTION_DEFINE([LT_INIT], [static], [_LT_ENABLE_STATIC([yes])])
8634LT_OPTION_DEFINE([LT_INIT], [disable-static], [_LT_ENABLE_STATIC([no])])
8635
8636# Old names:
8637AC_DEFUN([AC_ENABLE_STATIC],
8638[_LT_SET_OPTION([LT_INIT], m4_if([$1], [no], [disable-])[static])
8639])
8640
8641AC_DEFUN([AC_DISABLE_STATIC],
8642[_LT_SET_OPTION([LT_INIT], [disable-static])
8643])
8644
8645AU_DEFUN([AM_ENABLE_STATIC], [AC_ENABLE_STATIC($@)])
8646AU_DEFUN([AM_DISABLE_STATIC], [AC_DISABLE_STATIC($@)])
8647
8648dnl aclocal-1.4 backwards compatibility:
8649dnl AC_DEFUN([AM_ENABLE_STATIC], [])
8650dnl AC_DEFUN([AM_DISABLE_STATIC], [])
8651
8652
8653
8654# _LT_ENABLE_FAST_INSTALL([DEFAULT])
8655# ----------------------------------
8656# implement the --enable-fast-install flag, and support the 'fast-install'
8657# and 'disable-fast-install' LT_INIT options.
8658# DEFAULT is either 'yes' or 'no'.  If omitted, it defaults to 'yes'.
8659m4_define([_LT_ENABLE_FAST_INSTALL],
8660[m4_define([_LT_ENABLE_FAST_INSTALL_DEFAULT], [m4_if($1, no, no, yes)])dnl
8661AC_ARG_ENABLE([fast-install],
8662    [AS_HELP_STRING([--enable-fast-install@<:@=PKGS@:>@],
8663    [optimize for fast installation @<:@default=]_LT_ENABLE_FAST_INSTALL_DEFAULT[@:>@])],
8664    [p=${PACKAGE-default}
8665    case $enableval in
8666    yes) enable_fast_install=yes ;;
8667    no) enable_fast_install=no ;;
8668    *)
8669      enable_fast_install=no
8670      # Look at the argument we got.  We use all the common list separators.
8671      lt_save_ifs=$IFS; IFS=$IFS$PATH_SEPARATOR,
8672      for pkg in $enableval; do
8673	IFS=$lt_save_ifs
8674	if test "X$pkg" = "X$p"; then
8675	  enable_fast_install=yes
8676	fi
8677      done
8678      IFS=$lt_save_ifs
8679      ;;
8680    esac],
8681    [enable_fast_install=]_LT_ENABLE_FAST_INSTALL_DEFAULT)
8682
8683_LT_DECL([fast_install], [enable_fast_install], [0],
8684	 [Whether or not to optimize for fast installation])dnl
8685])# _LT_ENABLE_FAST_INSTALL
8686
8687LT_OPTION_DEFINE([LT_INIT], [fast-install], [_LT_ENABLE_FAST_INSTALL([yes])])
8688LT_OPTION_DEFINE([LT_INIT], [disable-fast-install], [_LT_ENABLE_FAST_INSTALL([no])])
8689
8690# Old names:
8691AU_DEFUN([AC_ENABLE_FAST_INSTALL],
8692[_LT_SET_OPTION([LT_INIT], m4_if([$1], [no], [disable-])[fast-install])
8693AC_DIAGNOSE([obsolete],
8694[$0: Remove this warning and the call to _LT_SET_OPTION when you put
8695the 'fast-install' option into LT_INIT's first parameter.])
8696])
8697
8698AU_DEFUN([AC_DISABLE_FAST_INSTALL],
8699[_LT_SET_OPTION([LT_INIT], [disable-fast-install])
8700AC_DIAGNOSE([obsolete],
8701[$0: Remove this warning and the call to _LT_SET_OPTION when you put
8702the 'disable-fast-install' option into LT_INIT's first parameter.])
8703])
8704
8705dnl aclocal-1.4 backwards compatibility:
8706dnl AC_DEFUN([AC_ENABLE_FAST_INSTALL], [])
8707dnl AC_DEFUN([AM_DISABLE_FAST_INSTALL], [])
8708
8709
8710# _LT_WITH_AIX_SONAME([DEFAULT])
8711# ----------------------------------
8712# implement the --with-aix-soname flag, and support the `aix-soname=aix'
8713# and `aix-soname=both' and `aix-soname=svr4' LT_INIT options. DEFAULT
8714# is either `aix', `both' or `svr4'.  If omitted, it defaults to `aix'.
8715m4_define([_LT_WITH_AIX_SONAME],
8716[m4_define([_LT_WITH_AIX_SONAME_DEFAULT], [m4_if($1, svr4, svr4, m4_if($1, both, both, aix))])dnl
8717shared_archive_member_spec=
8718case $host,$enable_shared in
8719power*-*-aix[[5-9]]*,yes)
8720  AC_MSG_CHECKING([which variant of shared library versioning to provide])
8721  AC_ARG_WITH([aix-soname],
8722    [AS_HELP_STRING([--with-aix-soname=aix|svr4|both],
8723      [shared library versioning (aka "SONAME") variant to provide on AIX, @<:@default=]_LT_WITH_AIX_SONAME_DEFAULT[@:>@.])],
8724    [case $withval in
8725    aix|svr4|both)
8726      ;;
8727    *)
8728      AC_MSG_ERROR([Unknown argument to --with-aix-soname])
8729      ;;
8730    esac
8731    lt_cv_with_aix_soname=$with_aix_soname],
8732    [AC_CACHE_VAL([lt_cv_with_aix_soname],
8733      [lt_cv_with_aix_soname=]_LT_WITH_AIX_SONAME_DEFAULT)
8734    with_aix_soname=$lt_cv_with_aix_soname])
8735  AC_MSG_RESULT([$with_aix_soname])
8736  if test aix != "$with_aix_soname"; then
8737    # For the AIX way of multilib, we name the shared archive member
8738    # based on the bitwidth used, traditionally 'shr.o' or 'shr_64.o',
8739    # and 'shr.imp' or 'shr_64.imp', respectively, for the Import File.
8740    # Even when GNU compilers ignore OBJECT_MODE but need '-maix64' flag,
8741    # the AIX toolchain works better with OBJECT_MODE set (default 32).
8742    if test 64 = "${OBJECT_MODE-32}"; then
8743      shared_archive_member_spec=shr_64
8744    else
8745      shared_archive_member_spec=shr
8746    fi
8747  fi
8748  ;;
8749*)
8750  with_aix_soname=aix
8751  ;;
8752esac
8753
8754_LT_DECL([], [shared_archive_member_spec], [0],
8755    [Shared archive member basename, for filename based shared library versioning on AIX])dnl
8756])# _LT_WITH_AIX_SONAME
8757
8758LT_OPTION_DEFINE([LT_INIT], [aix-soname=aix], [_LT_WITH_AIX_SONAME([aix])])
8759LT_OPTION_DEFINE([LT_INIT], [aix-soname=both], [_LT_WITH_AIX_SONAME([both])])
8760LT_OPTION_DEFINE([LT_INIT], [aix-soname=svr4], [_LT_WITH_AIX_SONAME([svr4])])
8761
8762
8763# _LT_WITH_PIC([MODE])
8764# --------------------
8765# implement the --with-pic flag, and support the 'pic-only' and 'no-pic'
8766# LT_INIT options.
8767# MODE is either 'yes' or 'no'.  If omitted, it defaults to 'both'.
8768m4_define([_LT_WITH_PIC],
8769[AC_ARG_WITH([pic],
8770    [AS_HELP_STRING([--with-pic@<:@=PKGS@:>@],
8771	[try to use only PIC/non-PIC objects @<:@default=use both@:>@])],
8772    [lt_p=${PACKAGE-default}
8773    case $withval in
8774    yes|no) pic_mode=$withval ;;
8775    *)
8776      pic_mode=default
8777      # Look at the argument we got.  We use all the common list separators.
8778      lt_save_ifs=$IFS; IFS=$IFS$PATH_SEPARATOR,
8779      for lt_pkg in $withval; do
8780	IFS=$lt_save_ifs
8781	if test "X$lt_pkg" = "X$lt_p"; then
8782	  pic_mode=yes
8783	fi
8784      done
8785      IFS=$lt_save_ifs
8786      ;;
8787    esac],
8788    [pic_mode=m4_default([$1], [default])])
8789
8790_LT_DECL([], [pic_mode], [0], [What type of objects to build])dnl
8791])# _LT_WITH_PIC
8792
8793LT_OPTION_DEFINE([LT_INIT], [pic-only], [_LT_WITH_PIC([yes])])
8794LT_OPTION_DEFINE([LT_INIT], [no-pic], [_LT_WITH_PIC([no])])
8795
8796# Old name:
8797AU_DEFUN([AC_LIBTOOL_PICMODE],
8798[_LT_SET_OPTION([LT_INIT], [pic-only])
8799AC_DIAGNOSE([obsolete],
8800[$0: Remove this warning and the call to _LT_SET_OPTION when you
8801put the 'pic-only' option into LT_INIT's first parameter.])
8802])
8803
8804dnl aclocal-1.4 backwards compatibility:
8805dnl AC_DEFUN([AC_LIBTOOL_PICMODE], [])
8806
8807
8808m4_define([_LTDL_MODE], [])
8809LT_OPTION_DEFINE([LTDL_INIT], [nonrecursive],
8810		 [m4_define([_LTDL_MODE], [nonrecursive])])
8811LT_OPTION_DEFINE([LTDL_INIT], [recursive],
8812		 [m4_define([_LTDL_MODE], [recursive])])
8813LT_OPTION_DEFINE([LTDL_INIT], [subproject],
8814		 [m4_define([_LTDL_MODE], [subproject])])
8815
8816m4_define([_LTDL_TYPE], [])
8817LT_OPTION_DEFINE([LTDL_INIT], [installable],
8818		 [m4_define([_LTDL_TYPE], [installable])])
8819LT_OPTION_DEFINE([LTDL_INIT], [convenience],
8820		 [m4_define([_LTDL_TYPE], [convenience])])
8821
8822# ltsugar.m4 -- libtool m4 base layer.                         -*-Autoconf-*-
8823#
8824# Copyright (C) 2004-2005, 2007-2008, 2011-2015 Free Software
8825# Foundation, Inc.
8826# Written by Gary V. Vaughan, 2004
8827#
8828# This file is free software; the Free Software Foundation gives
8829# unlimited permission to copy and/or distribute it, with or without
8830# modifications, as long as this notice is preserved.
8831
8832# serial 6 ltsugar.m4
8833
8834# This is to help aclocal find these macros, as it can't see m4_define.
8835AC_DEFUN([LTSUGAR_VERSION], [m4_if([0.1])])
8836
8837
8838# lt_join(SEP, ARG1, [ARG2...])
8839# -----------------------------
8840# Produce ARG1SEPARG2...SEPARGn, omitting [] arguments and their
8841# associated separator.
8842# Needed until we can rely on m4_join from Autoconf 2.62, since all earlier
8843# versions in m4sugar had bugs.
8844m4_define([lt_join],
8845[m4_if([$#], [1], [],
8846       [$#], [2], [[$2]],
8847       [m4_if([$2], [], [], [[$2]_])$0([$1], m4_shift(m4_shift($@)))])])
8848m4_define([_lt_join],
8849[m4_if([$#$2], [2], [],
8850       [m4_if([$2], [], [], [[$1$2]])$0([$1], m4_shift(m4_shift($@)))])])
8851
8852
8853# lt_car(LIST)
8854# lt_cdr(LIST)
8855# ------------
8856# Manipulate m4 lists.
8857# These macros are necessary as long as will still need to support
8858# Autoconf-2.59, which quotes differently.
8859m4_define([lt_car], [[$1]])
8860m4_define([lt_cdr],
8861[m4_if([$#], 0, [m4_fatal([$0: cannot be called without arguments])],
8862       [$#], 1, [],
8863       [m4_dquote(m4_shift($@))])])
8864m4_define([lt_unquote], $1)
8865
8866
8867# lt_append(MACRO-NAME, STRING, [SEPARATOR])
8868# ------------------------------------------
8869# Redefine MACRO-NAME to hold its former content plus 'SEPARATOR''STRING'.
8870# Note that neither SEPARATOR nor STRING are expanded; they are appended
8871# to MACRO-NAME as is (leaving the expansion for when MACRO-NAME is invoked).
8872# No SEPARATOR is output if MACRO-NAME was previously undefined (different
8873# than defined and empty).
8874#
8875# This macro is needed until we can rely on Autoconf 2.62, since earlier
8876# versions of m4sugar mistakenly expanded SEPARATOR but not STRING.
8877m4_define([lt_append],
8878[m4_define([$1],
8879	   m4_ifdef([$1], [m4_defn([$1])[$3]])[$2])])
8880
8881
8882
8883# lt_combine(SEP, PREFIX-LIST, INFIX, SUFFIX1, [SUFFIX2...])
8884# ----------------------------------------------------------
8885# Produce a SEP delimited list of all paired combinations of elements of
8886# PREFIX-LIST with SUFFIX1 through SUFFIXn.  Each element of the list
8887# has the form PREFIXmINFIXSUFFIXn.
8888# Needed until we can rely on m4_combine added in Autoconf 2.62.
8889m4_define([lt_combine],
8890[m4_if(m4_eval([$# > 3]), [1],
8891       [m4_pushdef([_Lt_sep], [m4_define([_Lt_sep], m4_defn([lt_car]))])]]dnl
8892[[m4_foreach([_Lt_prefix], [$2],
8893	     [m4_foreach([_Lt_suffix],
8894		]m4_dquote(m4_dquote(m4_shift(m4_shift(m4_shift($@)))))[,
8895	[_Lt_sep([$1])[]m4_defn([_Lt_prefix])[$3]m4_defn([_Lt_suffix])])])])])
8896
8897
8898# lt_if_append_uniq(MACRO-NAME, VARNAME, [SEPARATOR], [UNIQ], [NOT-UNIQ])
8899# -----------------------------------------------------------------------
8900# Iff MACRO-NAME does not yet contain VARNAME, then append it (delimited
8901# by SEPARATOR if supplied) and expand UNIQ, else NOT-UNIQ.
8902m4_define([lt_if_append_uniq],
8903[m4_ifdef([$1],
8904	  [m4_if(m4_index([$3]m4_defn([$1])[$3], [$3$2$3]), [-1],
8905		 [lt_append([$1], [$2], [$3])$4],
8906		 [$5])],
8907	  [lt_append([$1], [$2], [$3])$4])])
8908
8909
8910# lt_dict_add(DICT, KEY, VALUE)
8911# -----------------------------
8912m4_define([lt_dict_add],
8913[m4_define([$1($2)], [$3])])
8914
8915
8916# lt_dict_add_subkey(DICT, KEY, SUBKEY, VALUE)
8917# --------------------------------------------
8918m4_define([lt_dict_add_subkey],
8919[m4_define([$1($2:$3)], [$4])])
8920
8921
8922# lt_dict_fetch(DICT, KEY, [SUBKEY])
8923# ----------------------------------
8924m4_define([lt_dict_fetch],
8925[m4_ifval([$3],
8926	m4_ifdef([$1($2:$3)], [m4_defn([$1($2:$3)])]),
8927    m4_ifdef([$1($2)], [m4_defn([$1($2)])]))])
8928
8929
8930# lt_if_dict_fetch(DICT, KEY, [SUBKEY], VALUE, IF-TRUE, [IF-FALSE])
8931# -----------------------------------------------------------------
8932m4_define([lt_if_dict_fetch],
8933[m4_if(lt_dict_fetch([$1], [$2], [$3]), [$4],
8934	[$5],
8935    [$6])])
8936
8937
8938# lt_dict_filter(DICT, [SUBKEY], VALUE, [SEPARATOR], KEY, [...])
8939# --------------------------------------------------------------
8940m4_define([lt_dict_filter],
8941[m4_if([$5], [], [],
8942  [lt_join(m4_quote(m4_default([$4], [[, ]])),
8943           lt_unquote(m4_split(m4_normalize(m4_foreach(_Lt_key, lt_car([m4_shiftn(4, $@)]),
8944		      [lt_if_dict_fetch([$1], _Lt_key, [$2], [$3], [_Lt_key ])])))))])[]dnl
8945])
8946
8947# ltversion.m4 -- version numbers			-*- Autoconf -*-
8948#
8949#   Copyright (C) 2004, 2011-2015 Free Software Foundation, Inc.
8950#   Written by Scott James Remnant, 2004
8951#
8952# This file is free software; the Free Software Foundation gives
8953# unlimited permission to copy and/or distribute it, with or without
8954# modifications, as long as this notice is preserved.
8955
8956# @configure_input@
8957
8958# serial 4179 ltversion.m4
8959# This file is part of GNU Libtool
8960
8961m4_define([LT_PACKAGE_VERSION], [2.4.6])
8962m4_define([LT_PACKAGE_REVISION], [2.4.6])
8963
8964AC_DEFUN([LTVERSION_VERSION],
8965[macro_version='2.4.6'
8966macro_revision='2.4.6'
8967_LT_DECL(, macro_version, 0, [Which release of libtool.m4 was used?])
8968_LT_DECL(, macro_revision, 0)
8969])
8970
8971# lt~obsolete.m4 -- aclocal satisfying obsolete definitions.    -*-Autoconf-*-
8972#
8973#   Copyright (C) 2004-2005, 2007, 2009, 2011-2015 Free Software
8974#   Foundation, Inc.
8975#   Written by Scott James Remnant, 2004.
8976#
8977# This file is free software; the Free Software Foundation gives
8978# unlimited permission to copy and/or distribute it, with or without
8979# modifications, as long as this notice is preserved.
8980
8981# serial 5 lt~obsolete.m4
8982
8983# These exist entirely to fool aclocal when bootstrapping libtool.
8984#
8985# In the past libtool.m4 has provided macros via AC_DEFUN (or AU_DEFUN),
8986# which have later been changed to m4_define as they aren't part of the
8987# exported API, or moved to Autoconf or Automake where they belong.
8988#
8989# The trouble is, aclocal is a bit thick.  It'll see the old AC_DEFUN
8990# in /usr/share/aclocal/libtool.m4 and remember it, then when it sees us
8991# using a macro with the same name in our local m4/libtool.m4 it'll
8992# pull the old libtool.m4 in (it doesn't see our shiny new m4_define
8993# and doesn't know about Autoconf macros at all.)
8994#
8995# So we provide this file, which has a silly filename so it's always
8996# included after everything else.  This provides aclocal with the
8997# AC_DEFUNs it wants, but when m4 processes it, it doesn't do anything
8998# because those macros already exist, or will be overwritten later.
8999# We use AC_DEFUN over AU_DEFUN for compatibility with aclocal-1.6.
9000#
9001# Anytime we withdraw an AC_DEFUN or AU_DEFUN, remember to add it here.
9002# Yes, that means every name once taken will need to remain here until
9003# we give up compatibility with versions before 1.7, at which point
9004# we need to keep only those names which we still refer to.
9005
9006# This is to help aclocal find these macros, as it can't see m4_define.
9007AC_DEFUN([LTOBSOLETE_VERSION], [m4_if([1])])
9008
9009m4_ifndef([AC_LIBTOOL_LINKER_OPTION],	[AC_DEFUN([AC_LIBTOOL_LINKER_OPTION])])
9010m4_ifndef([AC_PROG_EGREP],		[AC_DEFUN([AC_PROG_EGREP])])
9011m4_ifndef([_LT_AC_PROG_ECHO_BACKSLASH],	[AC_DEFUN([_LT_AC_PROG_ECHO_BACKSLASH])])
9012m4_ifndef([_LT_AC_SHELL_INIT],		[AC_DEFUN([_LT_AC_SHELL_INIT])])
9013m4_ifndef([_LT_AC_SYS_LIBPATH_AIX],	[AC_DEFUN([_LT_AC_SYS_LIBPATH_AIX])])
9014m4_ifndef([_LT_PROG_LTMAIN],		[AC_DEFUN([_LT_PROG_LTMAIN])])
9015m4_ifndef([_LT_AC_TAGVAR],		[AC_DEFUN([_LT_AC_TAGVAR])])
9016m4_ifndef([AC_LTDL_ENABLE_INSTALL],	[AC_DEFUN([AC_LTDL_ENABLE_INSTALL])])
9017m4_ifndef([AC_LTDL_PREOPEN],		[AC_DEFUN([AC_LTDL_PREOPEN])])
9018m4_ifndef([_LT_AC_SYS_COMPILER],	[AC_DEFUN([_LT_AC_SYS_COMPILER])])
9019m4_ifndef([_LT_AC_LOCK],		[AC_DEFUN([_LT_AC_LOCK])])
9020m4_ifndef([AC_LIBTOOL_SYS_OLD_ARCHIVE],	[AC_DEFUN([AC_LIBTOOL_SYS_OLD_ARCHIVE])])
9021m4_ifndef([_LT_AC_TRY_DLOPEN_SELF],	[AC_DEFUN([_LT_AC_TRY_DLOPEN_SELF])])
9022m4_ifndef([AC_LIBTOOL_PROG_CC_C_O],	[AC_DEFUN([AC_LIBTOOL_PROG_CC_C_O])])
9023m4_ifndef([AC_LIBTOOL_SYS_HARD_LINK_LOCKS], [AC_DEFUN([AC_LIBTOOL_SYS_HARD_LINK_LOCKS])])
9024m4_ifndef([AC_LIBTOOL_OBJDIR],		[AC_DEFUN([AC_LIBTOOL_OBJDIR])])
9025m4_ifndef([AC_LTDL_OBJDIR],		[AC_DEFUN([AC_LTDL_OBJDIR])])
9026m4_ifndef([AC_LIBTOOL_PROG_LD_HARDCODE_LIBPATH], [AC_DEFUN([AC_LIBTOOL_PROG_LD_HARDCODE_LIBPATH])])
9027m4_ifndef([AC_LIBTOOL_SYS_LIB_STRIP],	[AC_DEFUN([AC_LIBTOOL_SYS_LIB_STRIP])])
9028m4_ifndef([AC_PATH_MAGIC],		[AC_DEFUN([AC_PATH_MAGIC])])
9029m4_ifndef([AC_PROG_LD_GNU],		[AC_DEFUN([AC_PROG_LD_GNU])])
9030m4_ifndef([AC_PROG_LD_RELOAD_FLAG],	[AC_DEFUN([AC_PROG_LD_RELOAD_FLAG])])
9031m4_ifndef([AC_DEPLIBS_CHECK_METHOD],	[AC_DEFUN([AC_DEPLIBS_CHECK_METHOD])])
9032m4_ifndef([AC_LIBTOOL_PROG_COMPILER_NO_RTTI], [AC_DEFUN([AC_LIBTOOL_PROG_COMPILER_NO_RTTI])])
9033m4_ifndef([AC_LIBTOOL_SYS_GLOBAL_SYMBOL_PIPE], [AC_DEFUN([AC_LIBTOOL_SYS_GLOBAL_SYMBOL_PIPE])])
9034m4_ifndef([AC_LIBTOOL_PROG_COMPILER_PIC], [AC_DEFUN([AC_LIBTOOL_PROG_COMPILER_PIC])])
9035m4_ifndef([AC_LIBTOOL_PROG_LD_SHLIBS],	[AC_DEFUN([AC_LIBTOOL_PROG_LD_SHLIBS])])
9036m4_ifndef([AC_LIBTOOL_POSTDEP_PREDEP],	[AC_DEFUN([AC_LIBTOOL_POSTDEP_PREDEP])])
9037m4_ifndef([LT_AC_PROG_EGREP],		[AC_DEFUN([LT_AC_PROG_EGREP])])
9038m4_ifndef([LT_AC_PROG_SED],		[AC_DEFUN([LT_AC_PROG_SED])])
9039m4_ifndef([_LT_CC_BASENAME],		[AC_DEFUN([_LT_CC_BASENAME])])
9040m4_ifndef([_LT_COMPILER_BOILERPLATE],	[AC_DEFUN([_LT_COMPILER_BOILERPLATE])])
9041m4_ifndef([_LT_LINKER_BOILERPLATE],	[AC_DEFUN([_LT_LINKER_BOILERPLATE])])
9042m4_ifndef([_AC_PROG_LIBTOOL],		[AC_DEFUN([_AC_PROG_LIBTOOL])])
9043m4_ifndef([AC_LIBTOOL_SETUP],		[AC_DEFUN([AC_LIBTOOL_SETUP])])
9044m4_ifndef([_LT_AC_CHECK_DLFCN],		[AC_DEFUN([_LT_AC_CHECK_DLFCN])])
9045m4_ifndef([AC_LIBTOOL_SYS_DYNAMIC_LINKER],	[AC_DEFUN([AC_LIBTOOL_SYS_DYNAMIC_LINKER])])
9046m4_ifndef([_LT_AC_TAGCONFIG],		[AC_DEFUN([_LT_AC_TAGCONFIG])])
9047m4_ifndef([AC_DISABLE_FAST_INSTALL],	[AC_DEFUN([AC_DISABLE_FAST_INSTALL])])
9048m4_ifndef([_LT_AC_LANG_CXX],		[AC_DEFUN([_LT_AC_LANG_CXX])])
9049m4_ifndef([_LT_AC_LANG_F77],		[AC_DEFUN([_LT_AC_LANG_F77])])
9050m4_ifndef([_LT_AC_LANG_GCJ],		[AC_DEFUN([_LT_AC_LANG_GCJ])])
9051m4_ifndef([AC_LIBTOOL_LANG_C_CONFIG],	[AC_DEFUN([AC_LIBTOOL_LANG_C_CONFIG])])
9052m4_ifndef([_LT_AC_LANG_C_CONFIG],	[AC_DEFUN([_LT_AC_LANG_C_CONFIG])])
9053m4_ifndef([AC_LIBTOOL_LANG_CXX_CONFIG],	[AC_DEFUN([AC_LIBTOOL_LANG_CXX_CONFIG])])
9054m4_ifndef([_LT_AC_LANG_CXX_CONFIG],	[AC_DEFUN([_LT_AC_LANG_CXX_CONFIG])])
9055m4_ifndef([AC_LIBTOOL_LANG_F77_CONFIG],	[AC_DEFUN([AC_LIBTOOL_LANG_F77_CONFIG])])
9056m4_ifndef([_LT_AC_LANG_F77_CONFIG],	[AC_DEFUN([_LT_AC_LANG_F77_CONFIG])])
9057m4_ifndef([AC_LIBTOOL_LANG_GCJ_CONFIG],	[AC_DEFUN([AC_LIBTOOL_LANG_GCJ_CONFIG])])
9058m4_ifndef([_LT_AC_LANG_GCJ_CONFIG],	[AC_DEFUN([_LT_AC_LANG_GCJ_CONFIG])])
9059m4_ifndef([AC_LIBTOOL_LANG_RC_CONFIG],	[AC_DEFUN([AC_LIBTOOL_LANG_RC_CONFIG])])
9060m4_ifndef([_LT_AC_LANG_RC_CONFIG],	[AC_DEFUN([_LT_AC_LANG_RC_CONFIG])])
9061m4_ifndef([AC_LIBTOOL_CONFIG],		[AC_DEFUN([AC_LIBTOOL_CONFIG])])
9062m4_ifndef([_LT_AC_FILE_LTDLL_C],	[AC_DEFUN([_LT_AC_FILE_LTDLL_C])])
9063m4_ifndef([_LT_REQUIRED_DARWIN_CHECKS],	[AC_DEFUN([_LT_REQUIRED_DARWIN_CHECKS])])
9064m4_ifndef([_LT_AC_PROG_CXXCPP],		[AC_DEFUN([_LT_AC_PROG_CXXCPP])])
9065m4_ifndef([_LT_PREPARE_SED_QUOTE_VARS],	[AC_DEFUN([_LT_PREPARE_SED_QUOTE_VARS])])
9066m4_ifndef([_LT_PROG_ECHO_BACKSLASH],	[AC_DEFUN([_LT_PROG_ECHO_BACKSLASH])])
9067m4_ifndef([_LT_PROG_F77],		[AC_DEFUN([_LT_PROG_F77])])
9068m4_ifndef([_LT_PROG_FC],		[AC_DEFUN([_LT_PROG_FC])])
9069m4_ifndef([_LT_PROG_CXX],		[AC_DEFUN([_LT_PROG_CXX])])
9070
9071dnl pkg.m4 - Macros to locate and utilise pkg-config.   -*- Autoconf -*-
9072dnl serial 11 (pkg-config-0.29.1)
9073dnl
9074dnl Copyright © 2004 Scott James Remnant <scott@netsplit.com>.
9075dnl Copyright © 2012-2015 Dan Nicholson <dbn.lists@gmail.com>
9076dnl
9077dnl This program is free software; you can redistribute it and/or modify
9078dnl it under the terms of the GNU General Public License as published by
9079dnl the Free Software Foundation; either version 2 of the License, or
9080dnl (at your option) any later version.
9081dnl
9082dnl This program is distributed in the hope that it will be useful, but
9083dnl WITHOUT ANY WARRANTY; without even the implied warranty of
9084dnl MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
9085dnl General Public License for more details.
9086dnl
9087dnl You should have received a copy of the GNU General Public License
9088dnl along with this program; if not, write to the Free Software
9089dnl Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA
9090dnl 02111-1307, USA.
9091dnl
9092dnl As a special exception to the GNU General Public License, if you
9093dnl distribute this file as part of a program that contains a
9094dnl configuration script generated by Autoconf, you may include it under
9095dnl the same distribution terms that you use for the rest of that
9096dnl program.
9097
9098dnl PKG_PREREQ(MIN-VERSION)
9099dnl -----------------------
9100dnl Since: 0.29
9101dnl
9102dnl Verify that the version of the pkg-config macros are at least
9103dnl MIN-VERSION. Unlike PKG_PROG_PKG_CONFIG, which checks the user's
9104dnl installed version of pkg-config, this checks the developer's version
9105dnl of pkg.m4 when generating configure.
9106dnl
9107dnl To ensure that this macro is defined, also add:
9108dnl m4_ifndef([PKG_PREREQ],
9109dnl     [m4_fatal([must install pkg-config 0.29 or later before running autoconf/autogen])])
9110dnl
9111dnl See the "Since" comment for each macro you use to see what version
9112dnl of the macros you require.
9113m4_defun([PKG_PREREQ],
9114[m4_define([PKG_MACROS_VERSION], [0.29.1])
9115m4_if(m4_version_compare(PKG_MACROS_VERSION, [$1]), -1,
9116    [m4_fatal([pkg.m4 version $1 or higher is required but ]PKG_MACROS_VERSION[ found])])
9117])dnl PKG_PREREQ
9118
9119dnl PKG_PROG_PKG_CONFIG([MIN-VERSION])
9120dnl ----------------------------------
9121dnl Since: 0.16
9122dnl
9123dnl Search for the pkg-config tool and set the PKG_CONFIG variable to
9124dnl first found in the path. Checks that the version of pkg-config found
9125dnl is at least MIN-VERSION. If MIN-VERSION is not specified, 0.9.0 is
9126dnl used since that's the first version where most current features of
9127dnl pkg-config existed.
9128AC_DEFUN([PKG_PROG_PKG_CONFIG],
9129[m4_pattern_forbid([^_?PKG_[A-Z_]+$])
9130m4_pattern_allow([^PKG_CONFIG(_(PATH|LIBDIR|SYSROOT_DIR|ALLOW_SYSTEM_(CFLAGS|LIBS)))?$])
9131m4_pattern_allow([^PKG_CONFIG_(DISABLE_UNINSTALLED|TOP_BUILD_DIR|DEBUG_SPEW)$])
9132AC_ARG_VAR([PKG_CONFIG], [path to pkg-config utility])
9133AC_ARG_VAR([PKG_CONFIG_PATH], [directories to add to pkg-config's search path])
9134AC_ARG_VAR([PKG_CONFIG_LIBDIR], [path overriding pkg-config's built-in search path])
9135
9136if test "x$ac_cv_env_PKG_CONFIG_set" != "xset"; then
9137	AC_PATH_TOOL([PKG_CONFIG], [pkg-config])
9138fi
9139if test -n "$PKG_CONFIG"; then
9140	_pkg_min_version=m4_default([$1], [0.9.0])
9141	AC_MSG_CHECKING([pkg-config is at least version $_pkg_min_version])
9142	if $PKG_CONFIG --atleast-pkgconfig-version $_pkg_min_version; then
9143		AC_MSG_RESULT([yes])
9144	else
9145		AC_MSG_RESULT([no])
9146		PKG_CONFIG=""
9147	fi
9148fi[]dnl
9149])dnl PKG_PROG_PKG_CONFIG
9150
9151dnl PKG_CHECK_EXISTS(MODULES, [ACTION-IF-FOUND], [ACTION-IF-NOT-FOUND])
9152dnl -------------------------------------------------------------------
9153dnl Since: 0.18
9154dnl
9155dnl Check to see whether a particular set of modules exists. Similar to
9156dnl PKG_CHECK_MODULES(), but does not set variables or print errors.
9157dnl
9158dnl Please remember that m4 expands AC_REQUIRE([PKG_PROG_PKG_CONFIG])
9159dnl only at the first occurence in configure.ac, so if the first place
9160dnl it's called might be skipped (such as if it is within an "if", you
9161dnl have to call PKG_CHECK_EXISTS manually
9162AC_DEFUN([PKG_CHECK_EXISTS],
9163[AC_REQUIRE([PKG_PROG_PKG_CONFIG])dnl
9164if test -n "$PKG_CONFIG" && \
9165    AC_RUN_LOG([$PKG_CONFIG --exists --print-errors "$1"]); then
9166  m4_default([$2], [:])
9167m4_ifvaln([$3], [else
9168  $3])dnl
9169fi])
9170
9171dnl _PKG_CONFIG([VARIABLE], [COMMAND], [MODULES])
9172dnl ---------------------------------------------
9173dnl Internal wrapper calling pkg-config via PKG_CONFIG and setting
9174dnl pkg_failed based on the result.
9175m4_define([_PKG_CONFIG],
9176[if test -n "$$1"; then
9177    pkg_cv_[]$1="$$1"
9178 elif test -n "$PKG_CONFIG"; then
9179    PKG_CHECK_EXISTS([$3],
9180                     [pkg_cv_[]$1=`$PKG_CONFIG --[]$2 "$3" 2>/dev/null`
9181		      test "x$?" != "x0" && pkg_failed=yes ],
9182		     [pkg_failed=yes])
9183 else
9184    pkg_failed=untried
9185fi[]dnl
9186])dnl _PKG_CONFIG
9187
9188dnl _PKG_SHORT_ERRORS_SUPPORTED
9189dnl ---------------------------
9190dnl Internal check to see if pkg-config supports short errors.
9191AC_DEFUN([_PKG_SHORT_ERRORS_SUPPORTED],
9192[AC_REQUIRE([PKG_PROG_PKG_CONFIG])
9193if $PKG_CONFIG --atleast-pkgconfig-version 0.20; then
9194        _pkg_short_errors_supported=yes
9195else
9196        _pkg_short_errors_supported=no
9197fi[]dnl
9198])dnl _PKG_SHORT_ERRORS_SUPPORTED
9199
9200
9201dnl PKG_CHECK_MODULES(VARIABLE-PREFIX, MODULES, [ACTION-IF-FOUND],
9202dnl   [ACTION-IF-NOT-FOUND])
9203dnl --------------------------------------------------------------
9204dnl Since: 0.4.0
9205dnl
9206dnl Note that if there is a possibility the first call to
9207dnl PKG_CHECK_MODULES might not happen, you should be sure to include an
9208dnl explicit call to PKG_PROG_PKG_CONFIG in your configure.ac
9209AC_DEFUN([PKG_CHECK_MODULES],
9210[AC_REQUIRE([PKG_PROG_PKG_CONFIG])dnl
9211AC_ARG_VAR([$1][_CFLAGS], [C compiler flags for $1, overriding pkg-config])dnl
9212AC_ARG_VAR([$1][_LIBS], [linker flags for $1, overriding pkg-config])dnl
9213
9214pkg_failed=no
9215AC_MSG_CHECKING([for $1])
9216
9217_PKG_CONFIG([$1][_CFLAGS], [cflags], [$2])
9218_PKG_CONFIG([$1][_LIBS], [libs], [$2])
9219
9220m4_define([_PKG_TEXT], [Alternatively, you may set the environment variables $1[]_CFLAGS
9221and $1[]_LIBS to avoid the need to call pkg-config.
9222See the pkg-config man page for more details.])
9223
9224if test $pkg_failed = yes; then
9225   	AC_MSG_RESULT([no])
9226        _PKG_SHORT_ERRORS_SUPPORTED
9227        if test $_pkg_short_errors_supported = yes; then
9228	        $1[]_PKG_ERRORS=`$PKG_CONFIG --short-errors --print-errors --cflags --libs "$2" 2>&1`
9229        else
9230	        $1[]_PKG_ERRORS=`$PKG_CONFIG --print-errors --cflags --libs "$2" 2>&1`
9231        fi
9232	# Put the nasty error message in config.log where it belongs
9233	echo "$$1[]_PKG_ERRORS" >&AS_MESSAGE_LOG_FD
9234
9235	m4_default([$4], [AC_MSG_ERROR(
9236[Package requirements ($2) were not met:
9237
9238$$1_PKG_ERRORS
9239
9240Consider adjusting the PKG_CONFIG_PATH environment variable if you
9241installed software in a non-standard prefix.
9242
9243_PKG_TEXT])[]dnl
9244        ])
9245elif test $pkg_failed = untried; then
9246     	AC_MSG_RESULT([no])
9247	m4_default([$4], [AC_MSG_FAILURE(
9248[The pkg-config script could not be found or is too old.  Make sure it
9249is in your PATH or set the PKG_CONFIG environment variable to the full
9250path to pkg-config.
9251
9252_PKG_TEXT
9253
9254To get pkg-config, see <http://pkg-config.freedesktop.org/>.])[]dnl
9255        ])
9256else
9257	$1[]_CFLAGS=$pkg_cv_[]$1[]_CFLAGS
9258	$1[]_LIBS=$pkg_cv_[]$1[]_LIBS
9259        AC_MSG_RESULT([yes])
9260	$3
9261fi[]dnl
9262])dnl PKG_CHECK_MODULES
9263
9264
9265dnl PKG_CHECK_MODULES_STATIC(VARIABLE-PREFIX, MODULES, [ACTION-IF-FOUND],
9266dnl   [ACTION-IF-NOT-FOUND])
9267dnl ---------------------------------------------------------------------
9268dnl Since: 0.29
9269dnl
9270dnl Checks for existence of MODULES and gathers its build flags with
9271dnl static libraries enabled. Sets VARIABLE-PREFIX_CFLAGS from --cflags
9272dnl and VARIABLE-PREFIX_LIBS from --libs.
9273dnl
9274dnl Note that if there is a possibility the first call to
9275dnl PKG_CHECK_MODULES_STATIC might not happen, you should be sure to
9276dnl include an explicit call to PKG_PROG_PKG_CONFIG in your
9277dnl configure.ac.
9278AC_DEFUN([PKG_CHECK_MODULES_STATIC],
9279[AC_REQUIRE([PKG_PROG_PKG_CONFIG])dnl
9280_save_PKG_CONFIG=$PKG_CONFIG
9281PKG_CONFIG="$PKG_CONFIG --static"
9282PKG_CHECK_MODULES($@)
9283PKG_CONFIG=$_save_PKG_CONFIG[]dnl
9284])dnl PKG_CHECK_MODULES_STATIC
9285
9286
9287dnl PKG_INSTALLDIR([DIRECTORY])
9288dnl -------------------------
9289dnl Since: 0.27
9290dnl
9291dnl Substitutes the variable pkgconfigdir as the location where a module
9292dnl should install pkg-config .pc files. By default the directory is
9293dnl $libdir/pkgconfig, but the default can be changed by passing
9294dnl DIRECTORY. The user can override through the --with-pkgconfigdir
9295dnl parameter.
9296AC_DEFUN([PKG_INSTALLDIR],
9297[m4_pushdef([pkg_default], [m4_default([$1], ['${libdir}/pkgconfig'])])
9298m4_pushdef([pkg_description],
9299    [pkg-config installation directory @<:@]pkg_default[@:>@])
9300AC_ARG_WITH([pkgconfigdir],
9301    [AS_HELP_STRING([--with-pkgconfigdir], pkg_description)],,
9302    [with_pkgconfigdir=]pkg_default)
9303AC_SUBST([pkgconfigdir], [$with_pkgconfigdir])
9304m4_popdef([pkg_default])
9305m4_popdef([pkg_description])
9306])dnl PKG_INSTALLDIR
9307
9308
9309dnl PKG_NOARCH_INSTALLDIR([DIRECTORY])
9310dnl --------------------------------
9311dnl Since: 0.27
9312dnl
9313dnl Substitutes the variable noarch_pkgconfigdir as the location where a
9314dnl module should install arch-independent pkg-config .pc files. By
9315dnl default the directory is $datadir/pkgconfig, but the default can be
9316dnl changed by passing DIRECTORY. The user can override through the
9317dnl --with-noarch-pkgconfigdir parameter.
9318AC_DEFUN([PKG_NOARCH_INSTALLDIR],
9319[m4_pushdef([pkg_default], [m4_default([$1], ['${datadir}/pkgconfig'])])
9320m4_pushdef([pkg_description],
9321    [pkg-config arch-independent installation directory @<:@]pkg_default[@:>@])
9322AC_ARG_WITH([noarch-pkgconfigdir],
9323    [AS_HELP_STRING([--with-noarch-pkgconfigdir], pkg_description)],,
9324    [with_noarch_pkgconfigdir=]pkg_default)
9325AC_SUBST([noarch_pkgconfigdir], [$with_noarch_pkgconfigdir])
9326m4_popdef([pkg_default])
9327m4_popdef([pkg_description])
9328])dnl PKG_NOARCH_INSTALLDIR
9329
9330
9331dnl PKG_CHECK_VAR(VARIABLE, MODULE, CONFIG-VARIABLE,
9332dnl [ACTION-IF-FOUND], [ACTION-IF-NOT-FOUND])
9333dnl -------------------------------------------
9334dnl Since: 0.28
9335dnl
9336dnl Retrieves the value of the pkg-config variable for the given module.
9337AC_DEFUN([PKG_CHECK_VAR],
9338[AC_REQUIRE([PKG_PROG_PKG_CONFIG])dnl
9339AC_ARG_VAR([$1], [value of $3 for $2, overriding pkg-config])dnl
9340
9341_PKG_CONFIG([$1], [variable="][$3]["], [$2])
9342AS_VAR_COPY([$1], [pkg_cv_][$1])
9343
9344AS_VAR_IF([$1], [""], [$5], [$4])dnl
9345])dnl PKG_CHECK_VAR
9346
9347dnl xorg-macros.m4.  Generated from xorg-macros.m4.in xorgversion.m4 by configure.
9348dnl
9349dnl Copyright (c) 2005, 2006, Oracle and/or its affiliates. All rights reserved.
9350dnl
9351dnl Permission is hereby granted, free of charge, to any person obtaining a
9352dnl copy of this software and associated documentation files (the "Software"),
9353dnl to deal in the Software without restriction, including without limitation
9354dnl the rights to use, copy, modify, merge, publish, distribute, sublicense,
9355dnl and/or sell copies of the Software, and to permit persons to whom the
9356dnl Software is furnished to do so, subject to the following conditions:
9357dnl
9358dnl The above copyright notice and this permission notice (including the next
9359dnl paragraph) shall be included in all copies or substantial portions of the
9360dnl Software.
9361dnl
9362dnl THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
9363dnl IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
9364dnl FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.  IN NO EVENT SHALL
9365dnl THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
9366dnl LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
9367dnl FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER
9368dnl DEALINGS IN THE SOFTWARE.
9369
9370# XORG_MACROS_VERSION(required-version)
9371# -------------------------------------
9372# Minimum version: 1.1.0
9373#
9374# If you're using a macro added in Version 1.1 or newer, include this in
9375# your configure.ac with the minimum required version, such as:
9376# XORG_MACROS_VERSION(1.1)
9377#
9378# To ensure that this macro is defined, also add:
9379# m4_ifndef([XORG_MACROS_VERSION],
9380#     [m4_fatal([must install xorg-macros 1.1 or later before running autoconf/autogen])])
9381#
9382#
9383# See the "minimum version" comment for each macro you use to see what
9384# version you require.
9385m4_defun([XORG_MACROS_VERSION],[
9386m4_define([vers_have], [1.19.0])
9387m4_define([maj_have], m4_substr(vers_have, 0, m4_index(vers_have, [.])))
9388m4_define([maj_needed], m4_substr([$1], 0, m4_index([$1], [.])))
9389m4_if(m4_cmp(maj_have, maj_needed), 0,,
9390    [m4_fatal([xorg-macros major version ]maj_needed[ is required but ]vers_have[ found])])
9391m4_if(m4_version_compare(vers_have, [$1]), -1,
9392    [m4_fatal([xorg-macros version $1 or higher is required but ]vers_have[ found])])
9393m4_undefine([vers_have])
9394m4_undefine([maj_have])
9395m4_undefine([maj_needed])
9396]) # XORG_MACROS_VERSION
9397
9398# XORG_PROG_RAWCPP()
9399# ------------------
9400# Minimum version: 1.0.0
9401#
9402# Find cpp program and necessary flags for use in pre-processing text files
9403# such as man pages and config files
9404AC_DEFUN([XORG_PROG_RAWCPP],[
9405AC_REQUIRE([AC_PROG_CPP])
9406AC_PATH_PROGS(RAWCPP, [cpp], [${CPP}],
9407   [$PATH:/bin:/usr/bin:/usr/lib:/usr/libexec:/usr/ccs/lib:/usr/ccs/lbin:/lib])
9408
9409# Check for flag to avoid builtin definitions - assumes unix is predefined,
9410# which is not the best choice for supporting other OS'es, but covers most
9411# of the ones we need for now.
9412AC_MSG_CHECKING([if $RAWCPP requires -undef])
9413AC_LANG_CONFTEST([AC_LANG_SOURCE([[Does cpp redefine unix ?]])])
9414if test `${RAWCPP} < conftest.$ac_ext | grep -c 'unix'` -eq 1 ; then
9415	AC_MSG_RESULT([no])
9416else
9417	if test `${RAWCPP} -undef < conftest.$ac_ext | grep -c 'unix'` -eq 1 ; then
9418		RAWCPPFLAGS=-undef
9419		AC_MSG_RESULT([yes])
9420	# under Cygwin unix is still defined even with -undef
9421	elif test `${RAWCPP} -undef -ansi < conftest.$ac_ext | grep -c 'unix'` -eq 1 ; then
9422		RAWCPPFLAGS="-undef -ansi"
9423		AC_MSG_RESULT([yes, with -ansi])
9424	else
9425		AC_MSG_ERROR([${RAWCPP} defines unix with or without -undef.  I don't know what to do.])
9426	fi
9427fi
9428rm -f conftest.$ac_ext
9429
9430AC_MSG_CHECKING([if $RAWCPP requires -traditional])
9431AC_LANG_CONFTEST([AC_LANG_SOURCE([[Does cpp preserve   "whitespace"?]])])
9432if test `${RAWCPP} < conftest.$ac_ext | grep -c 'preserve   \"'` -eq 1 ; then
9433	AC_MSG_RESULT([no])
9434else
9435	if test `${RAWCPP} -traditional < conftest.$ac_ext | grep -c 'preserve   \"'` -eq 1 ; then
9436		TRADITIONALCPPFLAGS="-traditional"
9437		RAWCPPFLAGS="${RAWCPPFLAGS} -traditional"
9438		AC_MSG_RESULT([yes])
9439	else
9440		AC_MSG_ERROR([${RAWCPP} does not preserve whitespace with or without -traditional.  I don't know what to do.])
9441	fi
9442fi
9443rm -f conftest.$ac_ext
9444AC_SUBST(RAWCPPFLAGS)
9445AC_SUBST(TRADITIONALCPPFLAGS)
9446]) # XORG_PROG_RAWCPP
9447
9448# XORG_MANPAGE_SECTIONS()
9449# -----------------------
9450# Minimum version: 1.0.0
9451#
9452# Determine which sections man pages go in for the different man page types
9453# on this OS - replaces *ManSuffix settings in old Imake *.cf per-os files.
9454# Not sure if there's any better way than just hardcoding by OS name.
9455# Override default settings by setting environment variables
9456# Added MAN_SUBSTS in version 1.8
9457# Added AC_PROG_SED in version 1.8
9458
9459AC_DEFUN([XORG_MANPAGE_SECTIONS],[
9460AC_REQUIRE([AC_CANONICAL_HOST])
9461AC_REQUIRE([AC_PROG_SED])
9462
9463if test x$APP_MAN_SUFFIX = x    ; then
9464    APP_MAN_SUFFIX=1
9465fi
9466if test x$APP_MAN_DIR = x    ; then
9467    APP_MAN_DIR='$(mandir)/man$(APP_MAN_SUFFIX)'
9468fi
9469
9470if test x$LIB_MAN_SUFFIX = x    ; then
9471    LIB_MAN_SUFFIX=3
9472fi
9473if test x$LIB_MAN_DIR = x    ; then
9474    LIB_MAN_DIR='$(mandir)/man$(LIB_MAN_SUFFIX)'
9475fi
9476
9477if test x$FILE_MAN_SUFFIX = x    ; then
9478    case $host_os in
9479	solaris*)	FILE_MAN_SUFFIX=4  ;;
9480	*)		FILE_MAN_SUFFIX=5  ;;
9481    esac
9482fi
9483if test x$FILE_MAN_DIR = x    ; then
9484    FILE_MAN_DIR='$(mandir)/man$(FILE_MAN_SUFFIX)'
9485fi
9486
9487if test x$MISC_MAN_SUFFIX = x    ; then
9488    case $host_os in
9489	solaris*)	MISC_MAN_SUFFIX=5  ;;
9490	*)		MISC_MAN_SUFFIX=7  ;;
9491    esac
9492fi
9493if test x$MISC_MAN_DIR = x    ; then
9494    MISC_MAN_DIR='$(mandir)/man$(MISC_MAN_SUFFIX)'
9495fi
9496
9497if test x$DRIVER_MAN_SUFFIX = x    ; then
9498    case $host_os in
9499	solaris*)	DRIVER_MAN_SUFFIX=7  ;;
9500	*)		DRIVER_MAN_SUFFIX=4  ;;
9501    esac
9502fi
9503if test x$DRIVER_MAN_DIR = x    ; then
9504    DRIVER_MAN_DIR='$(mandir)/man$(DRIVER_MAN_SUFFIX)'
9505fi
9506
9507if test x$ADMIN_MAN_SUFFIX = x    ; then
9508    case $host_os in
9509	solaris*)	ADMIN_MAN_SUFFIX=1m ;;
9510	*)		ADMIN_MAN_SUFFIX=8  ;;
9511    esac
9512fi
9513if test x$ADMIN_MAN_DIR = x    ; then
9514    ADMIN_MAN_DIR='$(mandir)/man$(ADMIN_MAN_SUFFIX)'
9515fi
9516
9517
9518AC_SUBST([APP_MAN_SUFFIX])
9519AC_SUBST([LIB_MAN_SUFFIX])
9520AC_SUBST([FILE_MAN_SUFFIX])
9521AC_SUBST([MISC_MAN_SUFFIX])
9522AC_SUBST([DRIVER_MAN_SUFFIX])
9523AC_SUBST([ADMIN_MAN_SUFFIX])
9524AC_SUBST([APP_MAN_DIR])
9525AC_SUBST([LIB_MAN_DIR])
9526AC_SUBST([FILE_MAN_DIR])
9527AC_SUBST([MISC_MAN_DIR])
9528AC_SUBST([DRIVER_MAN_DIR])
9529AC_SUBST([ADMIN_MAN_DIR])
9530
9531XORG_MAN_PAGE="X Version 11"
9532AC_SUBST([XORG_MAN_PAGE])
9533MAN_SUBSTS="\
9534	-e 's|__vendorversion__|\"\$(PACKAGE_STRING)\" \"\$(XORG_MAN_PAGE)\"|' \
9535	-e 's|__xorgversion__|\"\$(PACKAGE_STRING)\" \"\$(XORG_MAN_PAGE)\"|' \
9536	-e 's|__xservername__|Xorg|g' \
9537	-e 's|__xconfigfile__|xorg.conf|g' \
9538	-e 's|__projectroot__|\$(prefix)|g' \
9539	-e 's|__apploaddir__|\$(appdefaultdir)|g' \
9540	-e 's|__appmansuffix__|\$(APP_MAN_SUFFIX)|g' \
9541	-e 's|__drivermansuffix__|\$(DRIVER_MAN_SUFFIX)|g' \
9542	-e 's|__adminmansuffix__|\$(ADMIN_MAN_SUFFIX)|g' \
9543	-e 's|__libmansuffix__|\$(LIB_MAN_SUFFIX)|g' \
9544	-e 's|__miscmansuffix__|\$(MISC_MAN_SUFFIX)|g' \
9545	-e 's|__filemansuffix__|\$(FILE_MAN_SUFFIX)|g'"
9546AC_SUBST([MAN_SUBSTS])
9547
9548]) # XORG_MANPAGE_SECTIONS
9549
9550# XORG_CHECK_SGML_DOCTOOLS([MIN-VERSION])
9551# ------------------------
9552# Minimum version: 1.7.0
9553#
9554# Defines the variable XORG_SGML_PATH containing the location of X11/defs.ent
9555# provided by xorg-sgml-doctools, if installed.
9556AC_DEFUN([XORG_CHECK_SGML_DOCTOOLS],[
9557AC_MSG_CHECKING([for X.Org SGML entities m4_ifval([$1],[>= $1])])
9558XORG_SGML_PATH=
9559PKG_CHECK_EXISTS([xorg-sgml-doctools m4_ifval([$1],[>= $1])],
9560    [XORG_SGML_PATH=`$PKG_CONFIG --variable=sgmlrootdir xorg-sgml-doctools`],
9561    [m4_ifval([$1],[:],
9562        [if test x"$cross_compiling" != x"yes" ; then
9563            AC_CHECK_FILE([$prefix/share/sgml/X11/defs.ent],
9564                          [XORG_SGML_PATH=$prefix/share/sgml])
9565         fi])
9566    ])
9567
9568# Define variables STYLESHEET_SRCDIR and XSL_STYLESHEET containing
9569# the path and the name of the doc stylesheet
9570if test "x$XORG_SGML_PATH" != "x" ; then
9571   AC_MSG_RESULT([$XORG_SGML_PATH])
9572   STYLESHEET_SRCDIR=$XORG_SGML_PATH/X11
9573   XSL_STYLESHEET=$STYLESHEET_SRCDIR/xorg.xsl
9574else
9575   AC_MSG_RESULT([no])
9576fi
9577
9578AC_SUBST(XORG_SGML_PATH)
9579AC_SUBST(STYLESHEET_SRCDIR)
9580AC_SUBST(XSL_STYLESHEET)
9581AM_CONDITIONAL([HAVE_STYLESHEETS], [test "x$XSL_STYLESHEET" != "x"])
9582]) # XORG_CHECK_SGML_DOCTOOLS
9583
9584# XORG_CHECK_LINUXDOC
9585# -------------------
9586# Minimum version: 1.0.0
9587#
9588# Defines the variable MAKE_TEXT if the necessary tools and
9589# files are found. $(MAKE_TEXT) blah.sgml will then produce blah.txt.
9590# Whether or not the necessary tools and files are found can be checked
9591# with the AM_CONDITIONAL "BUILD_LINUXDOC"
9592AC_DEFUN([XORG_CHECK_LINUXDOC],[
9593AC_REQUIRE([XORG_CHECK_SGML_DOCTOOLS])
9594AC_REQUIRE([XORG_WITH_PS2PDF])
9595
9596AC_PATH_PROG(LINUXDOC, linuxdoc)
9597
9598AC_MSG_CHECKING([whether to build documentation])
9599
9600if test x$XORG_SGML_PATH != x && test x$LINUXDOC != x ; then
9601   BUILDDOC=yes
9602else
9603   BUILDDOC=no
9604fi
9605
9606AM_CONDITIONAL(BUILD_LINUXDOC, [test x$BUILDDOC = xyes])
9607
9608AC_MSG_RESULT([$BUILDDOC])
9609
9610AC_MSG_CHECKING([whether to build pdf documentation])
9611
9612if test x$have_ps2pdf != xno && test x$BUILD_PDFDOC != xno; then
9613   BUILDPDFDOC=yes
9614else
9615   BUILDPDFDOC=no
9616fi
9617
9618AM_CONDITIONAL(BUILD_PDFDOC, [test x$BUILDPDFDOC = xyes])
9619
9620AC_MSG_RESULT([$BUILDPDFDOC])
9621
9622MAKE_TEXT="SGML_SEARCH_PATH=$XORG_SGML_PATH GROFF_NO_SGR=y $LINUXDOC -B txt -f"
9623MAKE_PS="SGML_SEARCH_PATH=$XORG_SGML_PATH $LINUXDOC -B latex --papersize=letter --output=ps"
9624MAKE_PDF="$PS2PDF"
9625MAKE_HTML="SGML_SEARCH_PATH=$XORG_SGML_PATH $LINUXDOC  -B html --split=0"
9626
9627AC_SUBST(MAKE_TEXT)
9628AC_SUBST(MAKE_PS)
9629AC_SUBST(MAKE_PDF)
9630AC_SUBST(MAKE_HTML)
9631]) # XORG_CHECK_LINUXDOC
9632
9633# XORG_CHECK_DOCBOOK
9634# -------------------
9635# Minimum version: 1.0.0
9636#
9637# Checks for the ability to build output formats from SGML DocBook source.
9638# For XXX in {TXT, PDF, PS, HTML}, the AM_CONDITIONAL "BUILD_XXXDOC"
9639# indicates whether the necessary tools and files are found and, if set,
9640# $(MAKE_XXX) blah.sgml will produce blah.xxx.
9641AC_DEFUN([XORG_CHECK_DOCBOOK],[
9642AC_REQUIRE([XORG_CHECK_SGML_DOCTOOLS])
9643
9644BUILDTXTDOC=no
9645BUILDPDFDOC=no
9646BUILDPSDOC=no
9647BUILDHTMLDOC=no
9648
9649AC_PATH_PROG(DOCBOOKPS, docbook2ps)
9650AC_PATH_PROG(DOCBOOKPDF, docbook2pdf)
9651AC_PATH_PROG(DOCBOOKHTML, docbook2html)
9652AC_PATH_PROG(DOCBOOKTXT, docbook2txt)
9653
9654AC_MSG_CHECKING([whether to build text documentation])
9655if test x$XORG_SGML_PATH != x && test x$DOCBOOKTXT != x &&
9656   test x$BUILD_TXTDOC != xno; then
9657	BUILDTXTDOC=yes
9658fi
9659AM_CONDITIONAL(BUILD_TXTDOC, [test x$BUILDTXTDOC = xyes])
9660AC_MSG_RESULT([$BUILDTXTDOC])
9661
9662AC_MSG_CHECKING([whether to build PDF documentation])
9663if test x$XORG_SGML_PATH != x && test x$DOCBOOKPDF != x &&
9664   test x$BUILD_PDFDOC != xno; then
9665	BUILDPDFDOC=yes
9666fi
9667AM_CONDITIONAL(BUILD_PDFDOC, [test x$BUILDPDFDOC = xyes])
9668AC_MSG_RESULT([$BUILDPDFDOC])
9669
9670AC_MSG_CHECKING([whether to build PostScript documentation])
9671if test x$XORG_SGML_PATH != x && test x$DOCBOOKPS != x &&
9672   test x$BUILD_PSDOC != xno; then
9673	BUILDPSDOC=yes
9674fi
9675AM_CONDITIONAL(BUILD_PSDOC, [test x$BUILDPSDOC = xyes])
9676AC_MSG_RESULT([$BUILDPSDOC])
9677
9678AC_MSG_CHECKING([whether to build HTML documentation])
9679if test x$XORG_SGML_PATH != x && test x$DOCBOOKHTML != x &&
9680   test x$BUILD_HTMLDOC != xno; then
9681	BUILDHTMLDOC=yes
9682fi
9683AM_CONDITIONAL(BUILD_HTMLDOC, [test x$BUILDHTMLDOC = xyes])
9684AC_MSG_RESULT([$BUILDHTMLDOC])
9685
9686MAKE_TEXT="SGML_SEARCH_PATH=$XORG_SGML_PATH $DOCBOOKTXT"
9687MAKE_PS="SGML_SEARCH_PATH=$XORG_SGML_PATH $DOCBOOKPS"
9688MAKE_PDF="SGML_SEARCH_PATH=$XORG_SGML_PATH $DOCBOOKPDF"
9689MAKE_HTML="SGML_SEARCH_PATH=$XORG_SGML_PATH $DOCBOOKHTML"
9690
9691AC_SUBST(MAKE_TEXT)
9692AC_SUBST(MAKE_PS)
9693AC_SUBST(MAKE_PDF)
9694AC_SUBST(MAKE_HTML)
9695]) # XORG_CHECK_DOCBOOK
9696
9697# XORG_WITH_XMLTO([MIN-VERSION], [DEFAULT])
9698# ----------------
9699# Minimum version: 1.5.0
9700# Minimum version for optional DEFAULT argument: 1.11.0
9701#
9702# Documentation tools are not always available on all platforms and sometimes
9703# not at the appropriate level. This macro enables a module to test for the
9704# presence of the tool and obtain it's path in separate variables. Coupled with
9705# the --with-xmlto option, it allows maximum flexibilty in making decisions
9706# as whether or not to use the xmlto package. When DEFAULT is not specified,
9707# --with-xmlto assumes 'auto'.
9708#
9709# Interface to module:
9710# HAVE_XMLTO: 	used in makefiles to conditionally generate documentation
9711# XMLTO:	returns the path of the xmlto program found
9712#		returns the path set by the user in the environment
9713# --with-xmlto:	'yes' user instructs the module to use xmlto
9714#		'no' user instructs the module not to use xmlto
9715#
9716# Added in version 1.10.0
9717# HAVE_XMLTO_TEXT: used in makefiles to conditionally generate text documentation
9718#                  xmlto for text output requires either lynx, links, or w3m browsers
9719#
9720# If the user sets the value of XMLTO, AC_PATH_PROG skips testing the path.
9721#
9722AC_DEFUN([XORG_WITH_XMLTO],[
9723AC_ARG_VAR([XMLTO], [Path to xmlto command])
9724m4_define([_defopt], m4_default([$2], [auto]))
9725AC_ARG_WITH(xmlto,
9726	AS_HELP_STRING([--with-xmlto],
9727	   [Use xmlto to regenerate documentation (default: ]_defopt[)]),
9728	   [use_xmlto=$withval], [use_xmlto=]_defopt)
9729m4_undefine([_defopt])
9730
9731if test "x$use_xmlto" = x"auto"; then
9732   AC_PATH_PROG([XMLTO], [xmlto])
9733   if test "x$XMLTO" = "x"; then
9734        AC_MSG_WARN([xmlto not found - documentation targets will be skipped])
9735	have_xmlto=no
9736   else
9737        have_xmlto=yes
9738   fi
9739elif test "x$use_xmlto" = x"yes" ; then
9740   AC_PATH_PROG([XMLTO], [xmlto])
9741   if test "x$XMLTO" = "x"; then
9742        AC_MSG_ERROR([--with-xmlto=yes specified but xmlto not found in PATH])
9743   fi
9744   have_xmlto=yes
9745elif test "x$use_xmlto" = x"no" ; then
9746   if test "x$XMLTO" != "x"; then
9747      AC_MSG_WARN([ignoring XMLTO environment variable since --with-xmlto=no was specified])
9748   fi
9749   have_xmlto=no
9750else
9751   AC_MSG_ERROR([--with-xmlto expects 'yes' or 'no'])
9752fi
9753
9754# Test for a minimum version of xmlto, if provided.
9755m4_ifval([$1],
9756[if test "$have_xmlto" = yes; then
9757    # scrape the xmlto version
9758    AC_MSG_CHECKING([the xmlto version])
9759    xmlto_version=`$XMLTO --version 2>/dev/null | cut -d' ' -f3`
9760    AC_MSG_RESULT([$xmlto_version])
9761    AS_VERSION_COMPARE([$xmlto_version], [$1],
9762        [if test "x$use_xmlto" = xauto; then
9763            AC_MSG_WARN([xmlto version $xmlto_version found, but $1 needed])
9764            have_xmlto=no
9765        else
9766            AC_MSG_ERROR([xmlto version $xmlto_version found, but $1 needed])
9767        fi])
9768fi])
9769
9770# Test for the ability of xmlto to generate a text target
9771have_xmlto_text=no
9772cat > conftest.xml << "EOF"
9773<!DOCTYPE book PUBLIC "-//OASIS//DTD DocBook XML V4.3//EN"
9774                   "http://www.oasis-open.org/docbook/xml/4.3/docbookx.dtd">
9775<book id="saver">
9776</book>
9777EOF
9778AS_IF([test "$have_xmlto" = yes],
9779      [AS_IF([$XMLTO --skip-validation txt conftest.xml >/dev/null 2>&1],
9780             [have_xmlto_text=yes],
9781             [AC_MSG_WARN([xmlto cannot generate text format, this format skipped])])])
9782rm -f conftest.xml
9783AM_CONDITIONAL([HAVE_XMLTO_TEXT], [test $have_xmlto_text = yes])
9784AM_CONDITIONAL([HAVE_XMLTO], [test "$have_xmlto" = yes])
9785]) # XORG_WITH_XMLTO
9786
9787# XORG_WITH_XSLTPROC([MIN-VERSION], [DEFAULT])
9788# --------------------------------------------
9789# Minimum version: 1.12.0
9790# Minimum version for optional DEFAULT argument: 1.12.0
9791#
9792# XSLT (Extensible Stylesheet Language Transformations) is a declarative,
9793# XML-based language used for the transformation of XML documents.
9794# The xsltproc command line tool is for applying XSLT stylesheets to XML documents.
9795# It is used under the cover by xmlto to generate html files from DocBook/XML.
9796# The XSLT processor is often used as a standalone tool for transformations.
9797# It should not be assumed that this tool is used only to work with documnetation.
9798# When DEFAULT is not specified, --with-xsltproc assumes 'auto'.
9799#
9800# Interface to module:
9801# HAVE_XSLTPROC: used in makefiles to conditionally generate documentation
9802# XSLTPROC:	 returns the path of the xsltproc program found
9803#		 returns the path set by the user in the environment
9804# --with-xsltproc: 'yes' user instructs the module to use xsltproc
9805#		  'no' user instructs the module not to use xsltproc
9806# have_xsltproc: returns yes if xsltproc found in PATH or no
9807#
9808# If the user sets the value of XSLTPROC, AC_PATH_PROG skips testing the path.
9809#
9810AC_DEFUN([XORG_WITH_XSLTPROC],[
9811AC_ARG_VAR([XSLTPROC], [Path to xsltproc command])
9812# Preserves the interface, should it be implemented later
9813m4_ifval([$1], [m4_warn([syntax], [Checking for xsltproc MIN-VERSION is not implemented])])
9814m4_define([_defopt], m4_default([$2], [auto]))
9815AC_ARG_WITH(xsltproc,
9816	AS_HELP_STRING([--with-xsltproc],
9817	   [Use xsltproc for the transformation of XML documents (default: ]_defopt[)]),
9818	   [use_xsltproc=$withval], [use_xsltproc=]_defopt)
9819m4_undefine([_defopt])
9820
9821if test "x$use_xsltproc" = x"auto"; then
9822   AC_PATH_PROG([XSLTPROC], [xsltproc])
9823   if test "x$XSLTPROC" = "x"; then
9824        AC_MSG_WARN([xsltproc not found - cannot transform XML documents])
9825	have_xsltproc=no
9826   else
9827        have_xsltproc=yes
9828   fi
9829elif test "x$use_xsltproc" = x"yes" ; then
9830   AC_PATH_PROG([XSLTPROC], [xsltproc])
9831   if test "x$XSLTPROC" = "x"; then
9832        AC_MSG_ERROR([--with-xsltproc=yes specified but xsltproc not found in PATH])
9833   fi
9834   have_xsltproc=yes
9835elif test "x$use_xsltproc" = x"no" ; then
9836   if test "x$XSLTPROC" != "x"; then
9837      AC_MSG_WARN([ignoring XSLTPROC environment variable since --with-xsltproc=no was specified])
9838   fi
9839   have_xsltproc=no
9840else
9841   AC_MSG_ERROR([--with-xsltproc expects 'yes' or 'no'])
9842fi
9843
9844AM_CONDITIONAL([HAVE_XSLTPROC], [test "$have_xsltproc" = yes])
9845]) # XORG_WITH_XSLTPROC
9846
9847# XORG_WITH_PERL([MIN-VERSION], [DEFAULT])
9848# ----------------------------------------
9849# Minimum version: 1.15.0
9850#
9851# PERL (Practical Extraction and Report Language) is a language optimized for
9852# scanning arbitrary text files, extracting information from those text files,
9853# and printing reports based on that information.
9854#
9855# When DEFAULT is not specified, --with-perl assumes 'auto'.
9856#
9857# Interface to module:
9858# HAVE_PERL: used in makefiles to conditionally scan text files
9859# PERL:	     returns the path of the perl program found
9860#	     returns the path set by the user in the environment
9861# --with-perl: 'yes' user instructs the module to use perl
9862#	       'no' user instructs the module not to use perl
9863# have_perl: returns yes if perl found in PATH or no
9864#
9865# If the user sets the value of PERL, AC_PATH_PROG skips testing the path.
9866#
9867AC_DEFUN([XORG_WITH_PERL],[
9868AC_ARG_VAR([PERL], [Path to perl command])
9869# Preserves the interface, should it be implemented later
9870m4_ifval([$1], [m4_warn([syntax], [Checking for perl MIN-VERSION is not implemented])])
9871m4_define([_defopt], m4_default([$2], [auto]))
9872AC_ARG_WITH(perl,
9873	AS_HELP_STRING([--with-perl],
9874	   [Use perl for extracting information from files (default: ]_defopt[)]),
9875	   [use_perl=$withval], [use_perl=]_defopt)
9876m4_undefine([_defopt])
9877
9878if test "x$use_perl" = x"auto"; then
9879   AC_PATH_PROG([PERL], [perl])
9880   if test "x$PERL" = "x"; then
9881        AC_MSG_WARN([perl not found - cannot extract information and report])
9882	have_perl=no
9883   else
9884        have_perl=yes
9885   fi
9886elif test "x$use_perl" = x"yes" ; then
9887   AC_PATH_PROG([PERL], [perl])
9888   if test "x$PERL" = "x"; then
9889        AC_MSG_ERROR([--with-perl=yes specified but perl not found in PATH])
9890   fi
9891   have_perl=yes
9892elif test "x$use_perl" = x"no" ; then
9893   if test "x$PERL" != "x"; then
9894      AC_MSG_WARN([ignoring PERL environment variable since --with-perl=no was specified])
9895   fi
9896   have_perl=no
9897else
9898   AC_MSG_ERROR([--with-perl expects 'yes' or 'no'])
9899fi
9900
9901AM_CONDITIONAL([HAVE_PERL], [test "$have_perl" = yes])
9902]) # XORG_WITH_PERL
9903
9904# XORG_WITH_ASCIIDOC([MIN-VERSION], [DEFAULT])
9905# ----------------
9906# Minimum version: 1.5.0
9907# Minimum version for optional DEFAULT argument: 1.11.0
9908#
9909# Documentation tools are not always available on all platforms and sometimes
9910# not at the appropriate level. This macro enables a module to test for the
9911# presence of the tool and obtain it's path in separate variables. Coupled with
9912# the --with-asciidoc option, it allows maximum flexibilty in making decisions
9913# as whether or not to use the asciidoc package. When DEFAULT is not specified,
9914# --with-asciidoc assumes 'auto'.
9915#
9916# Interface to module:
9917# HAVE_ASCIIDOC: used in makefiles to conditionally generate documentation
9918# ASCIIDOC:	 returns the path of the asciidoc program found
9919#		 returns the path set by the user in the environment
9920# --with-asciidoc: 'yes' user instructs the module to use asciidoc
9921#		  'no' user instructs the module not to use asciidoc
9922#
9923# If the user sets the value of ASCIIDOC, AC_PATH_PROG skips testing the path.
9924#
9925AC_DEFUN([XORG_WITH_ASCIIDOC],[
9926AC_ARG_VAR([ASCIIDOC], [Path to asciidoc command])
9927m4_define([_defopt], m4_default([$2], [auto]))
9928AC_ARG_WITH(asciidoc,
9929	AS_HELP_STRING([--with-asciidoc],
9930	   [Use asciidoc to regenerate documentation (default: ]_defopt[)]),
9931	   [use_asciidoc=$withval], [use_asciidoc=]_defopt)
9932m4_undefine([_defopt])
9933
9934if test "x$use_asciidoc" = x"auto"; then
9935   AC_PATH_PROG([ASCIIDOC], [asciidoc])
9936   if test "x$ASCIIDOC" = "x"; then
9937        AC_MSG_WARN([asciidoc not found - documentation targets will be skipped])
9938	have_asciidoc=no
9939   else
9940        have_asciidoc=yes
9941   fi
9942elif test "x$use_asciidoc" = x"yes" ; then
9943   AC_PATH_PROG([ASCIIDOC], [asciidoc])
9944   if test "x$ASCIIDOC" = "x"; then
9945        AC_MSG_ERROR([--with-asciidoc=yes specified but asciidoc not found in PATH])
9946   fi
9947   have_asciidoc=yes
9948elif test "x$use_asciidoc" = x"no" ; then
9949   if test "x$ASCIIDOC" != "x"; then
9950      AC_MSG_WARN([ignoring ASCIIDOC environment variable since --with-asciidoc=no was specified])
9951   fi
9952   have_asciidoc=no
9953else
9954   AC_MSG_ERROR([--with-asciidoc expects 'yes' or 'no'])
9955fi
9956m4_ifval([$1],
9957[if test "$have_asciidoc" = yes; then
9958    # scrape the asciidoc version
9959    AC_MSG_CHECKING([the asciidoc version])
9960    asciidoc_version=`$ASCIIDOC --version 2>/dev/null | cut -d' ' -f2`
9961    AC_MSG_RESULT([$asciidoc_version])
9962    AS_VERSION_COMPARE([$asciidoc_version], [$1],
9963        [if test "x$use_asciidoc" = xauto; then
9964            AC_MSG_WARN([asciidoc version $asciidoc_version found, but $1 needed])
9965            have_asciidoc=no
9966        else
9967            AC_MSG_ERROR([asciidoc version $asciidoc_version found, but $1 needed])
9968        fi])
9969fi])
9970AM_CONDITIONAL([HAVE_ASCIIDOC], [test "$have_asciidoc" = yes])
9971]) # XORG_WITH_ASCIIDOC
9972
9973# XORG_WITH_DOXYGEN([MIN-VERSION], [DEFAULT])
9974# -------------------------------------------
9975# Minimum version: 1.5.0
9976# Minimum version for optional DEFAULT argument: 1.11.0
9977# Minimum version for optional DOT checking: 1.18.0
9978#
9979# Documentation tools are not always available on all platforms and sometimes
9980# not at the appropriate level. This macro enables a module to test for the
9981# presence of the tool and obtain it's path in separate variables. Coupled with
9982# the --with-doxygen option, it allows maximum flexibilty in making decisions
9983# as whether or not to use the doxygen package. When DEFAULT is not specified,
9984# --with-doxygen assumes 'auto'.
9985#
9986# Interface to module:
9987# HAVE_DOXYGEN: used in makefiles to conditionally generate documentation
9988# DOXYGEN:	 returns the path of the doxygen program found
9989#		 returns the path set by the user in the environment
9990# --with-doxygen: 'yes' user instructs the module to use doxygen
9991#		  'no' user instructs the module not to use doxygen
9992#
9993# If the user sets the value of DOXYGEN, AC_PATH_PROG skips testing the path.
9994#
9995AC_DEFUN([XORG_WITH_DOXYGEN],[
9996AC_ARG_VAR([DOXYGEN], [Path to doxygen command])
9997AC_ARG_VAR([DOT], [Path to the dot graphics utility])
9998m4_define([_defopt], m4_default([$2], [auto]))
9999AC_ARG_WITH(doxygen,
10000	AS_HELP_STRING([--with-doxygen],
10001	   [Use doxygen to regenerate documentation (default: ]_defopt[)]),
10002	   [use_doxygen=$withval], [use_doxygen=]_defopt)
10003m4_undefine([_defopt])
10004
10005if test "x$use_doxygen" = x"auto"; then
10006   AC_PATH_PROG([DOXYGEN], [doxygen])
10007   if test "x$DOXYGEN" = "x"; then
10008        AC_MSG_WARN([doxygen not found - documentation targets will be skipped])
10009	have_doxygen=no
10010   else
10011        have_doxygen=yes
10012   fi
10013elif test "x$use_doxygen" = x"yes" ; then
10014   AC_PATH_PROG([DOXYGEN], [doxygen])
10015   if test "x$DOXYGEN" = "x"; then
10016        AC_MSG_ERROR([--with-doxygen=yes specified but doxygen not found in PATH])
10017   fi
10018   have_doxygen=yes
10019elif test "x$use_doxygen" = x"no" ; then
10020   if test "x$DOXYGEN" != "x"; then
10021      AC_MSG_WARN([ignoring DOXYGEN environment variable since --with-doxygen=no was specified])
10022   fi
10023   have_doxygen=no
10024else
10025   AC_MSG_ERROR([--with-doxygen expects 'yes' or 'no'])
10026fi
10027m4_ifval([$1],
10028[if test "$have_doxygen" = yes; then
10029    # scrape the doxygen version
10030    AC_MSG_CHECKING([the doxygen version])
10031    doxygen_version=`$DOXYGEN --version 2>/dev/null`
10032    AC_MSG_RESULT([$doxygen_version])
10033    AS_VERSION_COMPARE([$doxygen_version], [$1],
10034        [if test "x$use_doxygen" = xauto; then
10035            AC_MSG_WARN([doxygen version $doxygen_version found, but $1 needed])
10036            have_doxygen=no
10037        else
10038            AC_MSG_ERROR([doxygen version $doxygen_version found, but $1 needed])
10039        fi])
10040fi])
10041
10042dnl Check for DOT if we have doxygen. The caller decides if it is mandatory
10043dnl HAVE_DOT is a variable that can be used in your doxygen.in config file:
10044dnl 	HAVE_DOT = @HAVE_DOT@
10045HAVE_DOT=no
10046if test "x$have_doxygen" = "xyes"; then
10047  AC_PATH_PROG([DOT], [dot])
10048    if test "x$DOT" != "x"; then
10049      HAVE_DOT=yes
10050    fi
10051fi
10052
10053AC_SUBST([HAVE_DOT])
10054AM_CONDITIONAL([HAVE_DOT], [test "$HAVE_DOT" = "yes"])
10055AM_CONDITIONAL([HAVE_DOXYGEN], [test "$have_doxygen" = yes])
10056]) # XORG_WITH_DOXYGEN
10057
10058# XORG_WITH_GROFF([DEFAULT])
10059# ----------------
10060# Minimum version: 1.6.0
10061# Minimum version for optional DEFAULT argument: 1.11.0
10062#
10063# Documentation tools are not always available on all platforms and sometimes
10064# not at the appropriate level. This macro enables a module to test for the
10065# presence of the tool and obtain it's path in separate variables. Coupled with
10066# the --with-groff option, it allows maximum flexibilty in making decisions
10067# as whether or not to use the groff package. When DEFAULT is not specified,
10068# --with-groff assumes 'auto'.
10069#
10070# Interface to module:
10071# HAVE_GROFF:	 used in makefiles to conditionally generate documentation
10072# HAVE_GROFF_MM: the memorandum macros (-mm) package
10073# HAVE_GROFF_MS: the -ms macros package
10074# GROFF:	 returns the path of the groff program found
10075#		 returns the path set by the user in the environment
10076# --with-groff:	 'yes' user instructs the module to use groff
10077#		 'no' user instructs the module not to use groff
10078#
10079# Added in version 1.9.0:
10080# HAVE_GROFF_HTML: groff has dependencies to output HTML format:
10081#		   pnmcut pnmcrop pnmtopng pnmtops from the netpbm package.
10082#		   psselect from the psutils package.
10083#		   the ghostcript package. Refer to the grohtml man pages
10084#
10085# If the user sets the value of GROFF, AC_PATH_PROG skips testing the path.
10086#
10087# OS and distros often splits groff in a basic and full package, the former
10088# having the groff program and the later having devices, fonts and macros
10089# Checking for the groff executable is not enough.
10090#
10091# If macros are missing, we cannot assume that groff is useless, so we don't
10092# unset HAVE_GROFF or GROFF env variables.
10093# HAVE_GROFF_?? can never be true while HAVE_GROFF is false.
10094#
10095AC_DEFUN([XORG_WITH_GROFF],[
10096AC_ARG_VAR([GROFF], [Path to groff command])
10097m4_define([_defopt], m4_default([$1], [auto]))
10098AC_ARG_WITH(groff,
10099	AS_HELP_STRING([--with-groff],
10100	   [Use groff to regenerate documentation (default: ]_defopt[)]),
10101	   [use_groff=$withval], [use_groff=]_defopt)
10102m4_undefine([_defopt])
10103
10104if test "x$use_groff" = x"auto"; then
10105   AC_PATH_PROG([GROFF], [groff])
10106   if test "x$GROFF" = "x"; then
10107        AC_MSG_WARN([groff not found - documentation targets will be skipped])
10108	have_groff=no
10109   else
10110        have_groff=yes
10111   fi
10112elif test "x$use_groff" = x"yes" ; then
10113   AC_PATH_PROG([GROFF], [groff])
10114   if test "x$GROFF" = "x"; then
10115        AC_MSG_ERROR([--with-groff=yes specified but groff not found in PATH])
10116   fi
10117   have_groff=yes
10118elif test "x$use_groff" = x"no" ; then
10119   if test "x$GROFF" != "x"; then
10120      AC_MSG_WARN([ignoring GROFF environment variable since --with-groff=no was specified])
10121   fi
10122   have_groff=no
10123else
10124   AC_MSG_ERROR([--with-groff expects 'yes' or 'no'])
10125fi
10126
10127# We have groff, test for the presence of the macro packages
10128if test "x$have_groff" = x"yes"; then
10129    AC_MSG_CHECKING([for ${GROFF} -ms macros])
10130    if ${GROFF} -ms -I. /dev/null >/dev/null 2>&1 ; then
10131        groff_ms_works=yes
10132    else
10133        groff_ms_works=no
10134    fi
10135    AC_MSG_RESULT([$groff_ms_works])
10136    AC_MSG_CHECKING([for ${GROFF} -mm macros])
10137    if ${GROFF} -mm -I. /dev/null >/dev/null 2>&1 ; then
10138        groff_mm_works=yes
10139    else
10140        groff_mm_works=no
10141    fi
10142    AC_MSG_RESULT([$groff_mm_works])
10143fi
10144
10145# We have groff, test for HTML dependencies, one command per package
10146if test "x$have_groff" = x"yes"; then
10147   AC_PATH_PROGS(GS_PATH, [gs gswin32c])
10148   AC_PATH_PROG(PNMTOPNG_PATH, [pnmtopng])
10149   AC_PATH_PROG(PSSELECT_PATH, [psselect])
10150   if test "x$GS_PATH" != "x" -a "x$PNMTOPNG_PATH" != "x" -a "x$PSSELECT_PATH" != "x"; then
10151      have_groff_html=yes
10152   else
10153      have_groff_html=no
10154      AC_MSG_WARN([grohtml dependencies not found - HTML Documentation skipped. Refer to grohtml man pages])
10155   fi
10156fi
10157
10158# Set Automake conditionals for Makefiles
10159AM_CONDITIONAL([HAVE_GROFF], [test "$have_groff" = yes])
10160AM_CONDITIONAL([HAVE_GROFF_MS], [test "$groff_ms_works" = yes])
10161AM_CONDITIONAL([HAVE_GROFF_MM], [test "$groff_mm_works" = yes])
10162AM_CONDITIONAL([HAVE_GROFF_HTML], [test "$have_groff_html" = yes])
10163]) # XORG_WITH_GROFF
10164
10165# XORG_WITH_FOP([MIN-VERSION], [DEFAULT])
10166# ---------------------------------------
10167# Minimum version: 1.6.0
10168# Minimum version for optional DEFAULT argument: 1.11.0
10169# Minimum version for optional MIN-VERSION argument: 1.15.0
10170#
10171# Documentation tools are not always available on all platforms and sometimes
10172# not at the appropriate level. This macro enables a module to test for the
10173# presence of the tool and obtain it's path in separate variables. Coupled with
10174# the --with-fop option, it allows maximum flexibilty in making decisions
10175# as whether or not to use the fop package. When DEFAULT is not specified,
10176# --with-fop assumes 'auto'.
10177#
10178# Interface to module:
10179# HAVE_FOP: 	used in makefiles to conditionally generate documentation
10180# FOP:	 	returns the path of the fop program found
10181#		returns the path set by the user in the environment
10182# --with-fop: 	'yes' user instructs the module to use fop
10183#		'no' user instructs the module not to use fop
10184#
10185# If the user sets the value of FOP, AC_PATH_PROG skips testing the path.
10186#
10187AC_DEFUN([XORG_WITH_FOP],[
10188AC_ARG_VAR([FOP], [Path to fop command])
10189m4_define([_defopt], m4_default([$2], [auto]))
10190AC_ARG_WITH(fop,
10191	AS_HELP_STRING([--with-fop],
10192	   [Use fop to regenerate documentation (default: ]_defopt[)]),
10193	   [use_fop=$withval], [use_fop=]_defopt)
10194m4_undefine([_defopt])
10195
10196if test "x$use_fop" = x"auto"; then
10197   AC_PATH_PROG([FOP], [fop])
10198   if test "x$FOP" = "x"; then
10199        AC_MSG_WARN([fop not found - documentation targets will be skipped])
10200	have_fop=no
10201   else
10202        have_fop=yes
10203   fi
10204elif test "x$use_fop" = x"yes" ; then
10205   AC_PATH_PROG([FOP], [fop])
10206   if test "x$FOP" = "x"; then
10207        AC_MSG_ERROR([--with-fop=yes specified but fop not found in PATH])
10208   fi
10209   have_fop=yes
10210elif test "x$use_fop" = x"no" ; then
10211   if test "x$FOP" != "x"; then
10212      AC_MSG_WARN([ignoring FOP environment variable since --with-fop=no was specified])
10213   fi
10214   have_fop=no
10215else
10216   AC_MSG_ERROR([--with-fop expects 'yes' or 'no'])
10217fi
10218
10219# Test for a minimum version of fop, if provided.
10220m4_ifval([$1],
10221[if test "$have_fop" = yes; then
10222    # scrape the fop version
10223    AC_MSG_CHECKING([for fop minimum version])
10224    fop_version=`$FOP -version 2>/dev/null | cut -d' ' -f3`
10225    AC_MSG_RESULT([$fop_version])
10226    AS_VERSION_COMPARE([$fop_version], [$1],
10227        [if test "x$use_fop" = xauto; then
10228            AC_MSG_WARN([fop version $fop_version found, but $1 needed])
10229            have_fop=no
10230        else
10231            AC_MSG_ERROR([fop version $fop_version found, but $1 needed])
10232        fi])
10233fi])
10234AM_CONDITIONAL([HAVE_FOP], [test "$have_fop" = yes])
10235]) # XORG_WITH_FOP
10236
10237# XORG_WITH_M4([MIN-VERSION])
10238# ---------------------------
10239# Minimum version: 1.19.0
10240#
10241# This macro attempts to locate an m4 macro processor which supports
10242# -I option and is only useful for modules relying on M4 in order to
10243# expand macros in source code files.
10244#
10245# Interface to module:
10246# M4:	 	returns the path of the m4 program found
10247#		returns the path set by the user in the environment
10248#
10249AC_DEFUN([XORG_WITH_M4], [
10250AC_CACHE_CHECK([for m4 that supports -I option], [ac_cv_path_M4],
10251   [AC_PATH_PROGS_FEATURE_CHECK([M4], [m4 gm4],
10252       [[$ac_path_M4 -I. /dev/null > /dev/null 2>&1 && \
10253         ac_cv_path_M4=$ac_path_M4 ac_path_M4_found=:]],
10254   [AC_MSG_ERROR([could not find m4 that supports -I option])],
10255   [$PATH:/usr/gnu/bin])])
10256
10257AC_SUBST([M4], [$ac_cv_path_M4])
10258]) # XORG_WITH_M4
10259
10260# XORG_WITH_PS2PDF([DEFAULT])
10261# ----------------
10262# Minimum version: 1.6.0
10263# Minimum version for optional DEFAULT argument: 1.11.0
10264#
10265# Documentation tools are not always available on all platforms and sometimes
10266# not at the appropriate level. This macro enables a module to test for the
10267# presence of the tool and obtain it's path in separate variables. Coupled with
10268# the --with-ps2pdf option, it allows maximum flexibilty in making decisions
10269# as whether or not to use the ps2pdf package. When DEFAULT is not specified,
10270# --with-ps2pdf assumes 'auto'.
10271#
10272# Interface to module:
10273# HAVE_PS2PDF: 	used in makefiles to conditionally generate documentation
10274# PS2PDF:	returns the path of the ps2pdf program found
10275#		returns the path set by the user in the environment
10276# --with-ps2pdf: 'yes' user instructs the module to use ps2pdf
10277#		 'no' user instructs the module not to use ps2pdf
10278#
10279# If the user sets the value of PS2PDF, AC_PATH_PROG skips testing the path.
10280#
10281AC_DEFUN([XORG_WITH_PS2PDF],[
10282AC_ARG_VAR([PS2PDF], [Path to ps2pdf command])
10283m4_define([_defopt], m4_default([$1], [auto]))
10284AC_ARG_WITH(ps2pdf,
10285	AS_HELP_STRING([--with-ps2pdf],
10286	   [Use ps2pdf to regenerate documentation (default: ]_defopt[)]),
10287	   [use_ps2pdf=$withval], [use_ps2pdf=]_defopt)
10288m4_undefine([_defopt])
10289
10290if test "x$use_ps2pdf" = x"auto"; then
10291   AC_PATH_PROG([PS2PDF], [ps2pdf])
10292   if test "x$PS2PDF" = "x"; then
10293        AC_MSG_WARN([ps2pdf not found - documentation targets will be skipped])
10294	have_ps2pdf=no
10295   else
10296        have_ps2pdf=yes
10297   fi
10298elif test "x$use_ps2pdf" = x"yes" ; then
10299   AC_PATH_PROG([PS2PDF], [ps2pdf])
10300   if test "x$PS2PDF" = "x"; then
10301        AC_MSG_ERROR([--with-ps2pdf=yes specified but ps2pdf not found in PATH])
10302   fi
10303   have_ps2pdf=yes
10304elif test "x$use_ps2pdf" = x"no" ; then
10305   if test "x$PS2PDF" != "x"; then
10306      AC_MSG_WARN([ignoring PS2PDF environment variable since --with-ps2pdf=no was specified])
10307   fi
10308   have_ps2pdf=no
10309else
10310   AC_MSG_ERROR([--with-ps2pdf expects 'yes' or 'no'])
10311fi
10312AM_CONDITIONAL([HAVE_PS2PDF], [test "$have_ps2pdf" = yes])
10313]) # XORG_WITH_PS2PDF
10314
10315# XORG_ENABLE_DOCS (enable_docs=yes)
10316# ----------------
10317# Minimum version: 1.6.0
10318#
10319# Documentation tools are not always available on all platforms and sometimes
10320# not at the appropriate level. This macro enables a builder to skip all
10321# documentation targets except traditional man pages.
10322# Combined with the specific tool checking macros XORG_WITH_*, it provides
10323# maximum flexibilty in controlling documentation building.
10324# Refer to:
10325# XORG_WITH_XMLTO         --with-xmlto
10326# XORG_WITH_ASCIIDOC      --with-asciidoc
10327# XORG_WITH_DOXYGEN       --with-doxygen
10328# XORG_WITH_FOP           --with-fop
10329# XORG_WITH_GROFF         --with-groff
10330# XORG_WITH_PS2PDF        --with-ps2pdf
10331#
10332# Interface to module:
10333# ENABLE_DOCS: 	  used in makefiles to conditionally generate documentation
10334# --enable-docs: 'yes' user instructs the module to generate docs
10335#		 'no' user instructs the module not to generate docs
10336# parm1:	specify the default value, yes or no.
10337#
10338AC_DEFUN([XORG_ENABLE_DOCS],[
10339m4_define([docs_default], m4_default([$1], [yes]))
10340AC_ARG_ENABLE(docs,
10341	AS_HELP_STRING([--enable-docs],
10342	   [Enable building the documentation (default: ]docs_default[)]),
10343	   [build_docs=$enableval], [build_docs=]docs_default)
10344m4_undefine([docs_default])
10345AM_CONDITIONAL(ENABLE_DOCS, [test x$build_docs = xyes])
10346AC_MSG_CHECKING([whether to build documentation])
10347AC_MSG_RESULT([$build_docs])
10348]) # XORG_ENABLE_DOCS
10349
10350# XORG_ENABLE_DEVEL_DOCS (enable_devel_docs=yes)
10351# ----------------
10352# Minimum version: 1.6.0
10353#
10354# This macro enables a builder to skip all developer documentation.
10355# Combined with the specific tool checking macros XORG_WITH_*, it provides
10356# maximum flexibilty in controlling documentation building.
10357# Refer to:
10358# XORG_WITH_XMLTO         --with-xmlto
10359# XORG_WITH_ASCIIDOC      --with-asciidoc
10360# XORG_WITH_DOXYGEN       --with-doxygen
10361# XORG_WITH_FOP           --with-fop
10362# XORG_WITH_GROFF         --with-groff
10363# XORG_WITH_PS2PDF        --with-ps2pdf
10364#
10365# Interface to module:
10366# ENABLE_DEVEL_DOCS:	used in makefiles to conditionally generate developer docs
10367# --enable-devel-docs:	'yes' user instructs the module to generate developer docs
10368#			'no' user instructs the module not to generate developer docs
10369# parm1:		specify the default value, yes or no.
10370#
10371AC_DEFUN([XORG_ENABLE_DEVEL_DOCS],[
10372m4_define([devel_default], m4_default([$1], [yes]))
10373AC_ARG_ENABLE(devel-docs,
10374	AS_HELP_STRING([--enable-devel-docs],
10375	   [Enable building the developer documentation (default: ]devel_default[)]),
10376	   [build_devel_docs=$enableval], [build_devel_docs=]devel_default)
10377m4_undefine([devel_default])
10378AM_CONDITIONAL(ENABLE_DEVEL_DOCS, [test x$build_devel_docs = xyes])
10379AC_MSG_CHECKING([whether to build developer documentation])
10380AC_MSG_RESULT([$build_devel_docs])
10381]) # XORG_ENABLE_DEVEL_DOCS
10382
10383# XORG_ENABLE_SPECS (enable_specs=yes)
10384# ----------------
10385# Minimum version: 1.6.0
10386#
10387# This macro enables a builder to skip all functional specification targets.
10388# Combined with the specific tool checking macros XORG_WITH_*, it provides
10389# maximum flexibilty in controlling documentation building.
10390# Refer to:
10391# XORG_WITH_XMLTO         --with-xmlto
10392# XORG_WITH_ASCIIDOC      --with-asciidoc
10393# XORG_WITH_DOXYGEN       --with-doxygen
10394# XORG_WITH_FOP           --with-fop
10395# XORG_WITH_GROFF         --with-groff
10396# XORG_WITH_PS2PDF        --with-ps2pdf
10397#
10398# Interface to module:
10399# ENABLE_SPECS:		used in makefiles to conditionally generate specs
10400# --enable-specs:	'yes' user instructs the module to generate specs
10401#			'no' user instructs the module not to generate specs
10402# parm1:		specify the default value, yes or no.
10403#
10404AC_DEFUN([XORG_ENABLE_SPECS],[
10405m4_define([spec_default], m4_default([$1], [yes]))
10406AC_ARG_ENABLE(specs,
10407	AS_HELP_STRING([--enable-specs],
10408	   [Enable building the specs (default: ]spec_default[)]),
10409	   [build_specs=$enableval], [build_specs=]spec_default)
10410m4_undefine([spec_default])
10411AM_CONDITIONAL(ENABLE_SPECS, [test x$build_specs = xyes])
10412AC_MSG_CHECKING([whether to build functional specifications])
10413AC_MSG_RESULT([$build_specs])
10414]) # XORG_ENABLE_SPECS
10415
10416# XORG_ENABLE_UNIT_TESTS (enable_unit_tests=auto)
10417# ----------------------------------------------
10418# Minimum version: 1.13.0
10419#
10420# This macro enables a builder to enable/disable unit testing
10421# It makes no assumption about the test cases implementation
10422# Test cases may or may not use Automake "Support for test suites"
10423# They may or may not use the software utility library GLib
10424#
10425# When used in conjunction with XORG_WITH_GLIB, use both AM_CONDITIONAL
10426# ENABLE_UNIT_TESTS and HAVE_GLIB. Not all unit tests may use glib.
10427# The variable enable_unit_tests is used by other macros in this file.
10428#
10429# Interface to module:
10430# ENABLE_UNIT_TESTS:	used in makefiles to conditionally build tests
10431# enable_unit_tests:    used in configure.ac for additional configuration
10432# --enable-unit-tests:	'yes' user instructs the module to build tests
10433#			'no' user instructs the module not to build tests
10434# parm1:		specify the default value, yes or no.
10435#
10436AC_DEFUN([XORG_ENABLE_UNIT_TESTS],[
10437AC_BEFORE([$0], [XORG_WITH_GLIB])
10438AC_BEFORE([$0], [XORG_LD_WRAP])
10439AC_REQUIRE([XORG_MEMORY_CHECK_FLAGS])
10440m4_define([_defopt], m4_default([$1], [auto]))
10441AC_ARG_ENABLE(unit-tests, AS_HELP_STRING([--enable-unit-tests],
10442	[Enable building unit test cases (default: ]_defopt[)]),
10443	[enable_unit_tests=$enableval], [enable_unit_tests=]_defopt)
10444m4_undefine([_defopt])
10445AM_CONDITIONAL(ENABLE_UNIT_TESTS, [test "x$enable_unit_tests" != xno])
10446AC_MSG_CHECKING([whether to build unit test cases])
10447AC_MSG_RESULT([$enable_unit_tests])
10448]) # XORG_ENABLE_UNIT_TESTS
10449
10450# XORG_ENABLE_INTEGRATION_TESTS (enable_unit_tests=auto)
10451# ------------------------------------------------------
10452# Minimum version: 1.17.0
10453#
10454# This macro enables a builder to enable/disable integration testing
10455# It makes no assumption about the test cases' implementation
10456# Test cases may or may not use Automake "Support for test suites"
10457#
10458# Please see XORG_ENABLE_UNIT_TESTS for unit test support. Unit test support
10459# usually requires less dependencies and may be built and run under less
10460# stringent environments than integration tests.
10461#
10462# Interface to module:
10463# ENABLE_INTEGRATION_TESTS:   used in makefiles to conditionally build tests
10464# enable_integration_tests:   used in configure.ac for additional configuration
10465# --enable-integration-tests: 'yes' user instructs the module to build tests
10466#                             'no' user instructs the module not to build tests
10467# parm1:                      specify the default value, yes or no.
10468#
10469AC_DEFUN([XORG_ENABLE_INTEGRATION_TESTS],[
10470AC_REQUIRE([XORG_MEMORY_CHECK_FLAGS])
10471m4_define([_defopt], m4_default([$1], [auto]))
10472AC_ARG_ENABLE(integration-tests, AS_HELP_STRING([--enable-integration-tests],
10473	[Enable building integration test cases (default: ]_defopt[)]),
10474	[enable_integration_tests=$enableval],
10475	[enable_integration_tests=]_defopt)
10476m4_undefine([_defopt])
10477AM_CONDITIONAL([ENABLE_INTEGRATION_TESTS],
10478	[test "x$enable_integration_tests" != xno])
10479AC_MSG_CHECKING([whether to build unit test cases])
10480AC_MSG_RESULT([$enable_integration_tests])
10481]) # XORG_ENABLE_INTEGRATION_TESTS
10482
10483# XORG_WITH_GLIB([MIN-VERSION], [DEFAULT])
10484# ----------------------------------------
10485# Minimum version: 1.13.0
10486#
10487# GLib is a library which provides advanced data structures and functions.
10488# This macro enables a module to test for the presence of Glib.
10489#
10490# When used with ENABLE_UNIT_TESTS, it is assumed GLib is used for unit testing.
10491# Otherwise the value of $enable_unit_tests is blank.
10492#
10493# Please see XORG_ENABLE_INTEGRATION_TESTS for integration test support. Unit
10494# test support usually requires less dependencies and may be built and run under
10495# less stringent environments than integration tests.
10496#
10497# Interface to module:
10498# HAVE_GLIB: used in makefiles to conditionally build targets
10499# with_glib: used in configure.ac to know if GLib has been found
10500# --with-glib:	'yes' user instructs the module to use glib
10501#		'no' user instructs the module not to use glib
10502#
10503AC_DEFUN([XORG_WITH_GLIB],[
10504AC_REQUIRE([PKG_PROG_PKG_CONFIG])
10505m4_define([_defopt], m4_default([$2], [auto]))
10506AC_ARG_WITH(glib, AS_HELP_STRING([--with-glib],
10507	[Use GLib library for unit testing (default: ]_defopt[)]),
10508	[with_glib=$withval], [with_glib=]_defopt)
10509m4_undefine([_defopt])
10510
10511have_glib=no
10512# Do not probe GLib if user explicitly disabled unit testing
10513if test "x$enable_unit_tests" != x"no"; then
10514  # Do not probe GLib if user explicitly disabled it
10515  if test "x$with_glib" != x"no"; then
10516    m4_ifval(
10517      [$1],
10518      [PKG_CHECK_MODULES([GLIB], [glib-2.0 >= $1], [have_glib=yes], [have_glib=no])],
10519      [PKG_CHECK_MODULES([GLIB], [glib-2.0], [have_glib=yes], [have_glib=no])]
10520    )
10521  fi
10522fi
10523
10524# Not having GLib when unit testing has been explicitly requested is an error
10525if test "x$enable_unit_tests" = x"yes"; then
10526  if test "x$have_glib" = x"no"; then
10527    AC_MSG_ERROR([--enable-unit-tests=yes specified but glib-2.0 not found])
10528  fi
10529fi
10530
10531# Having unit testing disabled when GLib has been explicitly requested is an error
10532if test "x$enable_unit_tests" = x"no"; then
10533  if test "x$with_glib" = x"yes"; then
10534    AC_MSG_ERROR([--enable-unit-tests=yes specified but glib-2.0 not found])
10535  fi
10536fi
10537
10538# Not having GLib when it has been explicitly requested is an error
10539if test "x$with_glib" = x"yes"; then
10540  if test "x$have_glib" = x"no"; then
10541    AC_MSG_ERROR([--with-glib=yes specified but glib-2.0 not found])
10542  fi
10543fi
10544
10545AM_CONDITIONAL([HAVE_GLIB], [test "$have_glib" = yes])
10546]) # XORG_WITH_GLIB
10547
10548# XORG_LD_WRAP([required|optional])
10549# ---------------------------------
10550# Minimum version: 1.13.0
10551#
10552# Check if linker supports -wrap, passed via compiler flags
10553#
10554# When used with ENABLE_UNIT_TESTS, it is assumed -wrap is used for unit testing.
10555# Otherwise the value of $enable_unit_tests is blank.
10556#
10557# Argument added in 1.16.0 - default is "required", to match existing behavior
10558# of returning an error if enable_unit_tests is yes, and ld -wrap is not
10559# available, an argument of "optional" allows use when some unit tests require
10560# ld -wrap and others do not.
10561#
10562AC_DEFUN([XORG_LD_WRAP],[
10563XORG_CHECK_LINKER_FLAGS([-Wl,-wrap,exit],[have_ld_wrap=yes],[have_ld_wrap=no],
10564    [AC_LANG_PROGRAM([#include <stdlib.h>
10565                      void __wrap_exit(int status) { return; }],
10566                     [exit(0);])])
10567# Not having ld wrap when unit testing has been explicitly requested is an error
10568if test "x$enable_unit_tests" = x"yes" -a "x$1" != "xoptional"; then
10569  if test "x$have_ld_wrap" = x"no"; then
10570    AC_MSG_ERROR([--enable-unit-tests=yes specified but ld -wrap support is not available])
10571  fi
10572fi
10573AM_CONDITIONAL([HAVE_LD_WRAP], [test "$have_ld_wrap" = yes])
10574#
10575]) # XORG_LD_WRAP
10576
10577# XORG_CHECK_LINKER_FLAGS
10578# -----------------------
10579# SYNOPSIS
10580#
10581#   XORG_CHECK_LINKER_FLAGS(FLAGS, [ACTION-SUCCESS], [ACTION-FAILURE], [PROGRAM-SOURCE])
10582#
10583# DESCRIPTION
10584#
10585#   Check whether the given linker FLAGS work with the current language's
10586#   linker, or whether they give an error.
10587#
10588#   ACTION-SUCCESS/ACTION-FAILURE are shell commands to execute on
10589#   success/failure.
10590#
10591#   PROGRAM-SOURCE is the program source to link with, if needed
10592#
10593#   NOTE: Based on AX_CHECK_COMPILER_FLAGS.
10594#
10595# LICENSE
10596#
10597#   Copyright (c) 2009 Mike Frysinger <vapier@gentoo.org>
10598#   Copyright (c) 2009 Steven G. Johnson <stevenj@alum.mit.edu>
10599#   Copyright (c) 2009 Matteo Frigo
10600#
10601#   This program is free software: you can redistribute it and/or modify it
10602#   under the terms of the GNU General Public License as published by the
10603#   Free Software Foundation, either version 3 of the License, or (at your
10604#   option) any later version.
10605#
10606#   This program is distributed in the hope that it will be useful, but
10607#   WITHOUT ANY WARRANTY; without even the implied warranty of
10608#   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General
10609#   Public License for more details.
10610#
10611#   You should have received a copy of the GNU General Public License along
10612#   with this program. If not, see <http://www.gnu.org/licenses/>.
10613#
10614#   As a special exception, the respective Autoconf Macro's copyright owner
10615#   gives unlimited permission to copy, distribute and modify the configure
10616#   scripts that are the output of Autoconf when processing the Macro. You
10617#   need not follow the terms of the GNU General Public License when using
10618#   or distributing such scripts, even though portions of the text of the
10619#   Macro appear in them. The GNU General Public License (GPL) does govern
10620#   all other use of the material that constitutes the Autoconf Macro.
10621#
10622#   This special exception to the GPL applies to versions of the Autoconf
10623#   Macro released by the Autoconf Archive. When you make and distribute a
10624#   modified version of the Autoconf Macro, you may extend this special
10625#   exception to the GPL to apply to your modified version as well.#
10626AC_DEFUN([XORG_CHECK_LINKER_FLAGS],
10627[AC_MSG_CHECKING([whether the linker accepts $1])
10628dnl Some hackery here since AC_CACHE_VAL can't handle a non-literal varname:
10629AS_LITERAL_IF([$1],
10630  [AC_CACHE_VAL(AS_TR_SH(xorg_cv_linker_flags_[$1]), [
10631      ax_save_FLAGS=$LDFLAGS
10632      LDFLAGS="$1"
10633      AC_LINK_IFELSE([m4_default([$4],[AC_LANG_PROGRAM()])],
10634        AS_TR_SH(xorg_cv_linker_flags_[$1])=yes,
10635        AS_TR_SH(xorg_cv_linker_flags_[$1])=no)
10636      LDFLAGS=$ax_save_FLAGS])],
10637  [ax_save_FLAGS=$LDFLAGS
10638   LDFLAGS="$1"
10639   AC_LINK_IFELSE([AC_LANG_PROGRAM()],
10640     eval AS_TR_SH(xorg_cv_linker_flags_[$1])=yes,
10641     eval AS_TR_SH(xorg_cv_linker_flags_[$1])=no)
10642   LDFLAGS=$ax_save_FLAGS])
10643eval xorg_check_linker_flags=$AS_TR_SH(xorg_cv_linker_flags_[$1])
10644AC_MSG_RESULT($xorg_check_linker_flags)
10645if test "x$xorg_check_linker_flags" = xyes; then
10646	m4_default([$2], :)
10647else
10648	m4_default([$3], :)
10649fi
10650]) # XORG_CHECK_LINKER_FLAGS
10651
10652# XORG_MEMORY_CHECK_FLAGS
10653# -----------------------
10654# Minimum version: 1.16.0
10655#
10656# This macro attempts to find appropriate memory checking functionality
10657# for various platforms which unit testing code may use to catch various
10658# forms of memory allocation and access errors in testing.
10659#
10660# Interface to module:
10661# XORG_MALLOC_DEBUG_ENV - environment variables to set to enable debugging
10662#                         Usually added to TESTS_ENVIRONMENT in Makefile.am
10663#
10664# If the user sets the value of XORG_MALLOC_DEBUG_ENV, it is used verbatim.
10665#
10666AC_DEFUN([XORG_MEMORY_CHECK_FLAGS],[
10667
10668AC_REQUIRE([AC_CANONICAL_HOST])
10669AC_ARG_VAR([XORG_MALLOC_DEBUG_ENV],
10670           [Environment variables to enable memory checking in tests])
10671
10672# Check for different types of support on different platforms
10673case $host_os in
10674    solaris*)
10675        AC_CHECK_LIB([umem], [umem_alloc],
10676            [malloc_debug_env='LD_PRELOAD=libumem.so UMEM_DEBUG=default'])
10677        ;;
10678    *-gnu*) # GNU libc - Value is used as a single byte bit pattern,
10679        # both directly and inverted, so should not be 0 or 255.
10680        malloc_debug_env='MALLOC_PERTURB_=15'
10681        ;;
10682    darwin*)
10683        malloc_debug_env='MallocPreScribble=1 MallocScribble=1 DYLD_INSERT_LIBRARIES=/usr/lib/libgmalloc.dylib'
10684        ;;
10685    *bsd*)
10686        malloc_debug_env='MallocPreScribble=1 MallocScribble=1'
10687        ;;
10688esac
10689
10690# User supplied flags override default flags
10691if test "x$XORG_MALLOC_DEBUG_ENV" != "x"; then
10692    malloc_debug_env="$XORG_MALLOC_DEBUG_ENV"
10693fi
10694
10695AC_SUBST([XORG_MALLOC_DEBUG_ENV],[$malloc_debug_env])
10696]) # XORG_WITH_LINT
10697
10698# XORG_CHECK_MALLOC_ZERO
10699# ----------------------
10700# Minimum version: 1.0.0
10701#
10702# Defines {MALLOC,XMALLOC,XTMALLOC}_ZERO_CFLAGS appropriately if
10703# malloc(0) returns NULL.  Packages should add one of these cflags to
10704# their AM_CFLAGS (or other appropriate *_CFLAGS) to use them.
10705AC_DEFUN([XORG_CHECK_MALLOC_ZERO],[
10706AC_ARG_ENABLE(malloc0returnsnull,
10707	AS_HELP_STRING([--enable-malloc0returnsnull],
10708		       [malloc(0) returns NULL (default: auto)]),
10709	[MALLOC_ZERO_RETURNS_NULL=$enableval],
10710	[MALLOC_ZERO_RETURNS_NULL=auto])
10711
10712AC_MSG_CHECKING([whether malloc(0) returns NULL])
10713if test "x$MALLOC_ZERO_RETURNS_NULL" = xauto; then
10714AC_CACHE_VAL([xorg_cv_malloc0_returns_null],
10715	[AC_RUN_IFELSE([AC_LANG_PROGRAM([
10716#include <stdlib.h>
10717],[
10718    char *m0, *r0, *c0, *p;
10719    m0 = malloc(0);
10720    p = malloc(10);
10721    r0 = realloc(p,0);
10722    c0 = calloc(0,10);
10723    exit((m0 == 0 || r0 == 0 || c0 == 0) ? 0 : 1);
10724])],
10725		[xorg_cv_malloc0_returns_null=yes],
10726		[xorg_cv_malloc0_returns_null=no])])
10727MALLOC_ZERO_RETURNS_NULL=$xorg_cv_malloc0_returns_null
10728fi
10729AC_MSG_RESULT([$MALLOC_ZERO_RETURNS_NULL])
10730
10731if test "x$MALLOC_ZERO_RETURNS_NULL" = xyes; then
10732	MALLOC_ZERO_CFLAGS="-DMALLOC_0_RETURNS_NULL"
10733	XMALLOC_ZERO_CFLAGS=$MALLOC_ZERO_CFLAGS
10734	XTMALLOC_ZERO_CFLAGS="$MALLOC_ZERO_CFLAGS -DXTMALLOC_BC"
10735else
10736	MALLOC_ZERO_CFLAGS=""
10737	XMALLOC_ZERO_CFLAGS=""
10738	XTMALLOC_ZERO_CFLAGS=""
10739fi
10740
10741AC_SUBST([MALLOC_ZERO_CFLAGS])
10742AC_SUBST([XMALLOC_ZERO_CFLAGS])
10743AC_SUBST([XTMALLOC_ZERO_CFLAGS])
10744]) # XORG_CHECK_MALLOC_ZERO
10745
10746# XORG_WITH_LINT()
10747# ----------------
10748# Minimum version: 1.1.0
10749#
10750# This macro enables the use of a tool that flags some suspicious and
10751# non-portable constructs (likely to be bugs) in C language source code.
10752# It will attempt to locate the tool and use appropriate options.
10753# There are various lint type tools on different platforms.
10754#
10755# Interface to module:
10756# LINT:		returns the path to the tool found on the platform
10757#		or the value set to LINT on the configure cmd line
10758#		also an Automake conditional
10759# LINT_FLAGS:	an Automake variable with appropriate flags
10760#
10761# --with-lint:	'yes' user instructs the module to use lint
10762#		'no' user instructs the module not to use lint (default)
10763#
10764# If the user sets the value of LINT, AC_PATH_PROG skips testing the path.
10765# If the user sets the value of LINT_FLAGS, they are used verbatim.
10766#
10767AC_DEFUN([XORG_WITH_LINT],[
10768
10769AC_ARG_VAR([LINT], [Path to a lint-style command])
10770AC_ARG_VAR([LINT_FLAGS], [Flags for the lint-style command])
10771AC_ARG_WITH(lint, [AS_HELP_STRING([--with-lint],
10772		[Use a lint-style source code checker (default: disabled)])],
10773		[use_lint=$withval], [use_lint=no])
10774
10775# Obtain platform specific info like program name and options
10776# The lint program on FreeBSD and NetBSD is different from the one on Solaris
10777case $host_os in
10778  *linux* | *openbsd* | kfreebsd*-gnu | darwin* | cygwin*)
10779	lint_name=splint
10780	lint_options="-badflag"
10781	;;
10782  *freebsd* | *netbsd*)
10783	lint_name=lint
10784	lint_options="-u -b"
10785	;;
10786  *solaris*)
10787	lint_name=lint
10788	lint_options="-u -b -h -erroff=E_INDISTING_FROM_TRUNC2"
10789	;;
10790esac
10791
10792# Test for the presence of the program (either guessed by the code or spelled out by the user)
10793if test "x$use_lint" = x"yes" ; then
10794   AC_PATH_PROG([LINT], [$lint_name])
10795   if test "x$LINT" = "x"; then
10796        AC_MSG_ERROR([--with-lint=yes specified but lint-style tool not found in PATH])
10797   fi
10798elif test "x$use_lint" = x"no" ; then
10799   if test "x$LINT" != "x"; then
10800      AC_MSG_WARN([ignoring LINT environment variable since --with-lint=no was specified])
10801   fi
10802else
10803   AC_MSG_ERROR([--with-lint expects 'yes' or 'no'. Use LINT variable to specify path.])
10804fi
10805
10806# User supplied flags override default flags
10807if test "x$LINT_FLAGS" != "x"; then
10808   lint_options=$LINT_FLAGS
10809fi
10810
10811AC_SUBST([LINT_FLAGS],[$lint_options])
10812AM_CONDITIONAL(LINT, [test "x$LINT" != x])
10813
10814]) # XORG_WITH_LINT
10815
10816# XORG_LINT_LIBRARY(LIBNAME)
10817# --------------------------
10818# Minimum version: 1.1.0
10819#
10820# Sets up flags for building lint libraries for checking programs that call
10821# functions in the library.
10822#
10823# Interface to module:
10824# LINTLIB		- Automake variable with the name of lint library file to make
10825# MAKE_LINT_LIB		- Automake conditional
10826#
10827# --enable-lint-library:  - 'yes' user instructs the module to created a lint library
10828#			  - 'no' user instructs the module not to create a lint library (default)
10829
10830AC_DEFUN([XORG_LINT_LIBRARY],[
10831AC_REQUIRE([XORG_WITH_LINT])
10832AC_ARG_ENABLE(lint-library, [AS_HELP_STRING([--enable-lint-library],
10833	[Create lint library (default: disabled)])],
10834	[make_lint_lib=$enableval], [make_lint_lib=no])
10835
10836if test "x$make_lint_lib" = x"yes" ; then
10837   LINTLIB=llib-l$1.ln
10838   if test "x$LINT" = "x"; then
10839        AC_MSG_ERROR([Cannot make lint library without --with-lint])
10840   fi
10841elif test "x$make_lint_lib" != x"no" ; then
10842   AC_MSG_ERROR([--enable-lint-library expects 'yes' or 'no'.])
10843fi
10844
10845AC_SUBST(LINTLIB)
10846AM_CONDITIONAL(MAKE_LINT_LIB, [test x$make_lint_lib != xno])
10847
10848]) # XORG_LINT_LIBRARY
10849
10850# XORG_COMPILER_BRAND
10851# -------------------
10852# Minimum version: 1.14.0
10853#
10854# Checks for various brands of compilers and sets flags as appropriate:
10855#   GNU gcc - relies on AC_PROG_CC (via AC_PROG_CC_C99) to set GCC to "yes"
10856#   GNU g++ - relies on AC_PROG_CXX to set GXX to "yes"
10857#   clang compiler - sets CLANGCC to "yes"
10858#   Intel compiler - sets INTELCC to "yes"
10859#   Sun/Oracle Solaris Studio cc - sets SUNCC to "yes"
10860#
10861AC_DEFUN([XORG_COMPILER_BRAND], [
10862AC_LANG_CASE(
10863	[C], [
10864		AC_REQUIRE([AC_PROG_CC_C99])
10865	],
10866	[C++], [
10867		AC_REQUIRE([AC_PROG_CXX])
10868	]
10869)
10870AC_CHECK_DECL([__clang__], [CLANGCC="yes"], [CLANGCC="no"])
10871AC_CHECK_DECL([__INTEL_COMPILER], [INTELCC="yes"], [INTELCC="no"])
10872AC_CHECK_DECL([__SUNPRO_C], [SUNCC="yes"], [SUNCC="no"])
10873]) # XORG_COMPILER_BRAND
10874
10875# XORG_TESTSET_CFLAG(<variable>, <flag>, [<alternative flag>, ...])
10876# ---------------
10877# Minimum version: 1.16.0
10878#
10879# Test if the compiler works when passed the given flag as a command line argument.
10880# If it succeeds, the flag is appeneded to the given variable.  If not, it tries the
10881# next flag in the list until there are no more options.
10882#
10883# Note that this does not guarantee that the compiler supports the flag as some
10884# compilers will simply ignore arguments that they do not understand, but we do
10885# attempt to weed out false positives by using -Werror=unknown-warning-option and
10886# -Werror=unused-command-line-argument
10887#
10888AC_DEFUN([XORG_TESTSET_CFLAG], [
10889m4_if([$#], 0, [m4_fatal([XORG_TESTSET_CFLAG was given with an unsupported number of arguments])])
10890m4_if([$#], 1, [m4_fatal([XORG_TESTSET_CFLAG was given with an unsupported number of arguments])])
10891
10892AC_LANG_COMPILER_REQUIRE
10893
10894AC_LANG_CASE(
10895	[C], [
10896		AC_REQUIRE([AC_PROG_CC_C99])
10897		define([PREFIX], [C])
10898		define([CACHE_PREFIX], [cc])
10899		define([COMPILER], [$CC])
10900	],
10901	[C++], [
10902		define([PREFIX], [CXX])
10903		define([CACHE_PREFIX], [cxx])
10904		define([COMPILER], [$CXX])
10905	]
10906)
10907
10908[xorg_testset_save_]PREFIX[FLAGS]="$PREFIX[FLAGS]"
10909
10910if test "x$[xorg_testset_]CACHE_PREFIX[_unknown_warning_option]" = "x" ; then
10911	PREFIX[FLAGS]="$PREFIX[FLAGS] -Werror=unknown-warning-option"
10912	AC_CACHE_CHECK([if ]COMPILER[ supports -Werror=unknown-warning-option],
10913			[xorg_cv_]CACHE_PREFIX[_flag_unknown_warning_option],
10914			AC_COMPILE_IFELSE([AC_LANG_SOURCE([int i;])],
10915					  [xorg_cv_]CACHE_PREFIX[_flag_unknown_warning_option=yes],
10916					  [xorg_cv_]CACHE_PREFIX[_flag_unknown_warning_option=no]))
10917	[xorg_testset_]CACHE_PREFIX[_unknown_warning_option]=$[xorg_cv_]CACHE_PREFIX[_flag_unknown_warning_option]
10918	PREFIX[FLAGS]="$[xorg_testset_save_]PREFIX[FLAGS]"
10919fi
10920
10921if test "x$[xorg_testset_]CACHE_PREFIX[_unused_command_line_argument]" = "x" ; then
10922	if test "x$[xorg_testset_]CACHE_PREFIX[_unknown_warning_option]" = "xyes" ; then
10923		PREFIX[FLAGS]="$PREFIX[FLAGS] -Werror=unknown-warning-option"
10924	fi
10925	PREFIX[FLAGS]="$PREFIX[FLAGS] -Werror=unused-command-line-argument"
10926	AC_CACHE_CHECK([if ]COMPILER[ supports -Werror=unused-command-line-argument],
10927			[xorg_cv_]CACHE_PREFIX[_flag_unused_command_line_argument],
10928			AC_COMPILE_IFELSE([AC_LANG_SOURCE([int i;])],
10929					  [xorg_cv_]CACHE_PREFIX[_flag_unused_command_line_argument=yes],
10930					  [xorg_cv_]CACHE_PREFIX[_flag_unused_command_line_argument=no]))
10931	[xorg_testset_]CACHE_PREFIX[_unused_command_line_argument]=$[xorg_cv_]CACHE_PREFIX[_flag_unused_command_line_argument]
10932	PREFIX[FLAGS]="$[xorg_testset_save_]PREFIX[FLAGS]"
10933fi
10934
10935found="no"
10936m4_foreach([flag], m4_cdr($@), [
10937	if test $found = "no" ; then
10938		if test "x$xorg_testset_]CACHE_PREFIX[_unknown_warning_option" = "xyes" ; then
10939			PREFIX[FLAGS]="$PREFIX[FLAGS] -Werror=unknown-warning-option"
10940		fi
10941
10942		if test "x$xorg_testset_]CACHE_PREFIX[_unused_command_line_argument" = "xyes" ; then
10943			PREFIX[FLAGS]="$PREFIX[FLAGS] -Werror=unused-command-line-argument"
10944		fi
10945
10946		PREFIX[FLAGS]="$PREFIX[FLAGS] ]flag["
10947
10948dnl Some hackery here since AC_CACHE_VAL can't handle a non-literal varname
10949		AC_MSG_CHECKING([if ]COMPILER[ supports ]flag[])
10950		cacheid=AS_TR_SH([xorg_cv_]CACHE_PREFIX[_flag_]flag[])
10951		AC_CACHE_VAL($cacheid,
10952			     [AC_LINK_IFELSE([AC_LANG_PROGRAM([int i;])],
10953					     [eval $cacheid=yes],
10954					     [eval $cacheid=no])])
10955
10956		PREFIX[FLAGS]="$[xorg_testset_save_]PREFIX[FLAGS]"
10957
10958		eval supported=\$$cacheid
10959		AC_MSG_RESULT([$supported])
10960		if test "$supported" = "yes" ; then
10961			$1="$$1 ]flag["
10962			found="yes"
10963		fi
10964	fi
10965])
10966]) # XORG_TESTSET_CFLAG
10967
10968# XORG_COMPILER_FLAGS
10969# ---------------
10970# Minimum version: 1.16.0
10971#
10972# Defines BASE_CFLAGS or BASE_CXXFLAGS to contain a set of command line
10973# arguments supported by the selected compiler which do NOT alter the generated
10974# code.  These arguments will cause the compiler to print various warnings
10975# during compilation AND turn a conservative set of warnings into errors.
10976#
10977# The set of flags supported by BASE_CFLAGS and BASE_CXXFLAGS will grow in
10978# future versions of util-macros as options are added to new compilers.
10979#
10980AC_DEFUN([XORG_COMPILER_FLAGS], [
10981AC_REQUIRE([XORG_COMPILER_BRAND])
10982
10983AC_ARG_ENABLE(selective-werror,
10984              AS_HELP_STRING([--disable-selective-werror],
10985                             [Turn off selective compiler errors. (default: enabled)]),
10986              [SELECTIVE_WERROR=$enableval],
10987              [SELECTIVE_WERROR=yes])
10988
10989AC_LANG_CASE(
10990        [C], [
10991                define([PREFIX], [C])
10992        ],
10993        [C++], [
10994                define([PREFIX], [CXX])
10995        ]
10996)
10997# -v is too short to test reliably with XORG_TESTSET_CFLAG
10998if test "x$SUNCC" = "xyes"; then
10999    [BASE_]PREFIX[FLAGS]="-v"
11000else
11001    [BASE_]PREFIX[FLAGS]=""
11002fi
11003
11004# This chunk of warnings were those that existed in the legacy CWARNFLAGS
11005XORG_TESTSET_CFLAG([[BASE_]PREFIX[FLAGS]], [-Wall])
11006XORG_TESTSET_CFLAG([[BASE_]PREFIX[FLAGS]], [-Wpointer-arith])
11007XORG_TESTSET_CFLAG([[BASE_]PREFIX[FLAGS]], [-Wmissing-declarations])
11008XORG_TESTSET_CFLAG([[BASE_]PREFIX[FLAGS]], [-Wformat=2], [-Wformat])
11009
11010AC_LANG_CASE(
11011	[C], [
11012		XORG_TESTSET_CFLAG([[BASE_]PREFIX[FLAGS]], [-Wstrict-prototypes])
11013		XORG_TESTSET_CFLAG([[BASE_]PREFIX[FLAGS]], [-Wmissing-prototypes])
11014		XORG_TESTSET_CFLAG([[BASE_]PREFIX[FLAGS]], [-Wnested-externs])
11015		XORG_TESTSET_CFLAG([[BASE_]PREFIX[FLAGS]], [-Wbad-function-cast])
11016		XORG_TESTSET_CFLAG([[BASE_]PREFIX[FLAGS]], [-Wold-style-definition], [-fd])
11017		XORG_TESTSET_CFLAG([[BASE_]PREFIX[FLAGS]], [-Wdeclaration-after-statement])
11018	]
11019)
11020
11021# This chunk adds additional warnings that could catch undesired effects.
11022XORG_TESTSET_CFLAG([[BASE_]PREFIX[FLAGS]], [-Wunused])
11023XORG_TESTSET_CFLAG([[BASE_]PREFIX[FLAGS]], [-Wuninitialized])
11024XORG_TESTSET_CFLAG([[BASE_]PREFIX[FLAGS]], [-Wshadow])
11025XORG_TESTSET_CFLAG([[BASE_]PREFIX[FLAGS]], [-Wmissing-noreturn])
11026XORG_TESTSET_CFLAG([[BASE_]PREFIX[FLAGS]], [-Wmissing-format-attribute])
11027XORG_TESTSET_CFLAG([[BASE_]PREFIX[FLAGS]], [-Wredundant-decls])
11028XORG_TESTSET_CFLAG([[BASE_]PREFIX[FLAGS]], [-Wlogical-op])
11029
11030# These are currently disabled because they are noisy.  They will be enabled
11031# in the future once the codebase is sufficiently modernized to silence
11032# them.  For now, I don't want them to drown out the other warnings.
11033# XORG_TESTSET_CFLAG([[BASE_]PREFIX[FLAGS]], [-Wparentheses])
11034# XORG_TESTSET_CFLAG([[BASE_]PREFIX[FLAGS]], [-Wcast-align])
11035# XORG_TESTSET_CFLAG([[BASE_]PREFIX[FLAGS]], [-Wcast-qual])
11036
11037# Turn some warnings into errors, so we don't accidently get successful builds
11038# when there are problems that should be fixed.
11039
11040if test "x$SELECTIVE_WERROR" = "xyes" ; then
11041XORG_TESTSET_CFLAG([[BASE_]PREFIX[FLAGS]], [-Werror=implicit], [-errwarn=E_NO_EXPLICIT_TYPE_GIVEN -errwarn=E_NO_IMPLICIT_DECL_ALLOWED])
11042XORG_TESTSET_CFLAG([[BASE_]PREFIX[FLAGS]], [-Werror=nonnull])
11043XORG_TESTSET_CFLAG([[BASE_]PREFIX[FLAGS]], [-Werror=init-self])
11044XORG_TESTSET_CFLAG([[BASE_]PREFIX[FLAGS]], [-Werror=main])
11045XORG_TESTSET_CFLAG([[BASE_]PREFIX[FLAGS]], [-Werror=missing-braces])
11046XORG_TESTSET_CFLAG([[BASE_]PREFIX[FLAGS]], [-Werror=sequence-point])
11047XORG_TESTSET_CFLAG([[BASE_]PREFIX[FLAGS]], [-Werror=return-type], [-errwarn=E_FUNC_HAS_NO_RETURN_STMT])
11048XORG_TESTSET_CFLAG([[BASE_]PREFIX[FLAGS]], [-Werror=trigraphs])
11049XORG_TESTSET_CFLAG([[BASE_]PREFIX[FLAGS]], [-Werror=array-bounds])
11050XORG_TESTSET_CFLAG([[BASE_]PREFIX[FLAGS]], [-Werror=write-strings])
11051XORG_TESTSET_CFLAG([[BASE_]PREFIX[FLAGS]], [-Werror=address])
11052XORG_TESTSET_CFLAG([[BASE_]PREFIX[FLAGS]], [-Werror=int-to-pointer-cast], [-errwarn=E_BAD_PTR_INT_COMBINATION])
11053XORG_TESTSET_CFLAG([[BASE_]PREFIX[FLAGS]], [-Werror=pointer-to-int-cast]) # Also -errwarn=E_BAD_PTR_INT_COMBINATION
11054else
11055AC_MSG_WARN([You have chosen not to turn some select compiler warnings into errors.  This should not be necessary.  Please report why you needed to do so in a bug report at $PACKAGE_BUGREPORT])
11056XORG_TESTSET_CFLAG([[BASE_]PREFIX[FLAGS]], [-Wimplicit])
11057XORG_TESTSET_CFLAG([[BASE_]PREFIX[FLAGS]], [-Wnonnull])
11058XORG_TESTSET_CFLAG([[BASE_]PREFIX[FLAGS]], [-Winit-self])
11059XORG_TESTSET_CFLAG([[BASE_]PREFIX[FLAGS]], [-Wmain])
11060XORG_TESTSET_CFLAG([[BASE_]PREFIX[FLAGS]], [-Wmissing-braces])
11061XORG_TESTSET_CFLAG([[BASE_]PREFIX[FLAGS]], [-Wsequence-point])
11062XORG_TESTSET_CFLAG([[BASE_]PREFIX[FLAGS]], [-Wreturn-type])
11063XORG_TESTSET_CFLAG([[BASE_]PREFIX[FLAGS]], [-Wtrigraphs])
11064XORG_TESTSET_CFLAG([[BASE_]PREFIX[FLAGS]], [-Warray-bounds])
11065XORG_TESTSET_CFLAG([[BASE_]PREFIX[FLAGS]], [-Wwrite-strings])
11066XORG_TESTSET_CFLAG([[BASE_]PREFIX[FLAGS]], [-Waddress])
11067XORG_TESTSET_CFLAG([[BASE_]PREFIX[FLAGS]], [-Wint-to-pointer-cast])
11068XORG_TESTSET_CFLAG([[BASE_]PREFIX[FLAGS]], [-Wpointer-to-int-cast])
11069fi
11070
11071AC_SUBST([BASE_]PREFIX[FLAGS])
11072]) # XORG_COMPILER_FLAGS
11073
11074# XORG_CWARNFLAGS
11075# ---------------
11076# Minimum version: 1.2.0
11077# Deprecated since: 1.16.0 (Use XORG_COMPILER_FLAGS instead)
11078#
11079# Defines CWARNFLAGS to enable C compiler warnings.
11080#
11081# This function is deprecated because it defines -fno-strict-aliasing
11082# which alters the code generated by the compiler.  If -fno-strict-aliasing
11083# is needed, then it should be added explicitly in the module when
11084# it is updated to use BASE_CFLAGS.
11085#
11086AC_DEFUN([XORG_CWARNFLAGS], [
11087AC_REQUIRE([XORG_COMPILER_FLAGS])
11088AC_REQUIRE([XORG_COMPILER_BRAND])
11089AC_LANG_CASE(
11090	[C], [
11091		CWARNFLAGS="$BASE_CFLAGS"
11092		if  test "x$GCC" = xyes ; then
11093		    CWARNFLAGS="$CWARNFLAGS -fno-strict-aliasing"
11094		fi
11095		AC_SUBST(CWARNFLAGS)
11096	]
11097)
11098]) # XORG_CWARNFLAGS
11099
11100# XORG_STRICT_OPTION
11101# -----------------------
11102# Minimum version: 1.3.0
11103#
11104# Add configure option to enable strict compilation flags, such as treating
11105# warnings as fatal errors.
11106# If --enable-strict-compilation is passed to configure, adds strict flags to
11107# $BASE_CFLAGS or $BASE_CXXFLAGS and the deprecated $CWARNFLAGS.
11108#
11109# Starting in 1.14.0 also exports $STRICT_CFLAGS for use in other tests or
11110# when strict compilation is unconditionally desired.
11111AC_DEFUN([XORG_STRICT_OPTION], [
11112AC_REQUIRE([XORG_CWARNFLAGS])
11113AC_REQUIRE([XORG_COMPILER_FLAGS])
11114
11115AC_ARG_ENABLE(strict-compilation,
11116			  AS_HELP_STRING([--enable-strict-compilation],
11117			  [Enable all warnings from compiler and make them errors (default: disabled)]),
11118			  [STRICT_COMPILE=$enableval], [STRICT_COMPILE=no])
11119
11120AC_LANG_CASE(
11121        [C], [
11122                define([PREFIX], [C])
11123        ],
11124        [C++], [
11125                define([PREFIX], [CXX])
11126        ]
11127)
11128
11129[STRICT_]PREFIX[FLAGS]=""
11130XORG_TESTSET_CFLAG([[STRICT_]PREFIX[FLAGS]], [-pedantic])
11131XORG_TESTSET_CFLAG([[STRICT_]PREFIX[FLAGS]], [-Werror], [-errwarn])
11132
11133# Earlier versions of gcc (eg: 4.2) support -Werror=attributes, but do not
11134# activate it with -Werror, so we add it here explicitly.
11135XORG_TESTSET_CFLAG([[STRICT_]PREFIX[FLAGS]], [-Werror=attributes])
11136
11137if test "x$STRICT_COMPILE" = "xyes"; then
11138    [BASE_]PREFIX[FLAGS]="$[BASE_]PREFIX[FLAGS] $[STRICT_]PREFIX[FLAGS]"
11139    AC_LANG_CASE([C], [CWARNFLAGS="$CWARNFLAGS $STRICT_CFLAGS"])
11140fi
11141AC_SUBST([STRICT_]PREFIX[FLAGS])
11142AC_SUBST([BASE_]PREFIX[FLAGS])
11143AC_LANG_CASE([C], AC_SUBST([CWARNFLAGS]))
11144]) # XORG_STRICT_OPTION
11145
11146# XORG_DEFAULT_OPTIONS
11147# --------------------
11148# Minimum version: 1.3.0
11149#
11150# Defines default options for X.Org modules.
11151#
11152AC_DEFUN([XORG_DEFAULT_OPTIONS], [
11153AC_REQUIRE([AC_PROG_INSTALL])
11154XORG_COMPILER_FLAGS
11155XORG_CWARNFLAGS
11156XORG_STRICT_OPTION
11157XORG_RELEASE_VERSION
11158XORG_CHANGELOG
11159XORG_INSTALL
11160XORG_MANPAGE_SECTIONS
11161m4_ifdef([AM_SILENT_RULES], [AM_SILENT_RULES([yes])],
11162    [AC_SUBST([AM_DEFAULT_VERBOSITY], [1])])
11163]) # XORG_DEFAULT_OPTIONS
11164
11165# XORG_INSTALL()
11166# ----------------
11167# Minimum version: 1.4.0
11168#
11169# Defines the variable INSTALL_CMD as the command to copy
11170# INSTALL from $prefix/share/util-macros.
11171#
11172AC_DEFUN([XORG_INSTALL], [
11173AC_REQUIRE([PKG_PROG_PKG_CONFIG])
11174macros_datadir=`$PKG_CONFIG --print-errors --variable=pkgdatadir xorg-macros`
11175INSTALL_CMD="(cp -f "$macros_datadir/INSTALL" \$(top_srcdir)/.INSTALL.tmp && \
11176mv \$(top_srcdir)/.INSTALL.tmp \$(top_srcdir)/INSTALL) \
11177|| (rm -f \$(top_srcdir)/.INSTALL.tmp; touch \$(top_srcdir)/INSTALL; \
11178echo 'util-macros \"pkgdatadir\" from xorg-macros.pc not found: installing possibly empty INSTALL.' >&2)"
11179AC_SUBST([INSTALL_CMD])
11180]) # XORG_INSTALL
11181dnl Copyright 2005 Red Hat, Inc
11182dnl
11183dnl Permission to use, copy, modify, distribute, and sell this software and its
11184dnl documentation for any purpose is hereby granted without fee, provided that
11185dnl the above copyright notice appear in all copies and that both that
11186dnl copyright notice and this permission notice appear in supporting
11187dnl documentation.
11188dnl
11189dnl The above copyright notice and this permission notice shall be included
11190dnl in all copies or substantial portions of the Software.
11191dnl
11192dnl THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS
11193dnl OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
11194dnl MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.
11195dnl IN NO EVENT SHALL THE OPEN GROUP BE LIABLE FOR ANY CLAIM, DAMAGES OR
11196dnl OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE,
11197dnl ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR
11198dnl OTHER DEALINGS IN THE SOFTWARE.
11199dnl
11200dnl Except as contained in this notice, the name of the copyright holders shall
11201dnl not be used in advertising or otherwise to promote the sale, use or
11202dnl other dealings in this Software without prior written authorization
11203dnl from the copyright holders.
11204dnl
11205
11206# XORG_RELEASE_VERSION
11207# --------------------
11208# Defines PACKAGE_VERSION_{MAJOR,MINOR,PATCHLEVEL} for modules to use.
11209
11210AC_DEFUN([XORG_RELEASE_VERSION],[
11211	AC_DEFINE_UNQUOTED([PACKAGE_VERSION_MAJOR],
11212		[`echo $PACKAGE_VERSION | cut -d . -f 1`],
11213		[Major version of this package])
11214	PVM=`echo $PACKAGE_VERSION | cut -d . -f 2 | cut -d - -f 1`
11215	if test "x$PVM" = "x"; then
11216		PVM="0"
11217	fi
11218	AC_DEFINE_UNQUOTED([PACKAGE_VERSION_MINOR],
11219		[$PVM],
11220		[Minor version of this package])
11221	PVP=`echo $PACKAGE_VERSION | cut -d . -f 3 | cut -d - -f 1`
11222	if test "x$PVP" = "x"; then
11223		PVP="0"
11224	fi
11225	AC_DEFINE_UNQUOTED([PACKAGE_VERSION_PATCHLEVEL],
11226		[$PVP],
11227		[Patch version of this package])
11228])
11229
11230# XORG_CHANGELOG()
11231# ----------------
11232# Minimum version: 1.2.0
11233#
11234# Defines the variable CHANGELOG_CMD as the command to generate
11235# ChangeLog from git.
11236#
11237#
11238AC_DEFUN([XORG_CHANGELOG], [
11239CHANGELOG_CMD="(GIT_DIR=\$(top_srcdir)/.git git log > \$(top_srcdir)/.changelog.tmp && \
11240mv \$(top_srcdir)/.changelog.tmp \$(top_srcdir)/ChangeLog) \
11241|| (rm -f \$(top_srcdir)/.changelog.tmp; touch \$(top_srcdir)/ChangeLog; \
11242echo 'git directory not found: installing possibly empty changelog.' >&2)"
11243AC_SUBST([CHANGELOG_CMD])
11244]) # XORG_CHANGELOG
11245
11246dnl Copyright 2005 Red Hat, Inc
11247dnl
11248dnl Permission to use, copy, modify, distribute, and sell this software and its
11249dnl documentation for any purpose is hereby granted without fee, provided that
11250dnl the above copyright notice appear in all copies and that both that
11251dnl copyright notice and this permission notice appear in supporting
11252dnl documentation.
11253dnl
11254dnl The above copyright notice and this permission notice shall be included
11255dnl in all copies or substantial portions of the Software.
11256dnl
11257dnl THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS
11258dnl OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
11259dnl MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.
11260dnl IN NO EVENT SHALL THE OPEN GROUP BE LIABLE FOR ANY CLAIM, DAMAGES OR
11261dnl OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE,
11262dnl ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR
11263dnl OTHER DEALINGS IN THE SOFTWARE.
11264dnl
11265dnl Except as contained in this notice, the name of the copyright holders shall
11266dnl not be used in advertising or otherwise to promote the sale, use or
11267dnl other dealings in this Software without prior written authorization
11268dnl from the copyright holders.
11269dnl
11270
11271# XORG_DRIVER_CHECK_EXT(MACRO, PROTO)
11272# --------------------------
11273# Checks for the MACRO define in xorg-server.h (from the sdk).  If it
11274# is defined, then add the given PROTO to $REQUIRED_MODULES.
11275
11276AC_DEFUN([XORG_DRIVER_CHECK_EXT],[
11277	AC_REQUIRE([PKG_PROG_PKG_CONFIG])
11278	SAVE_CFLAGS="$CFLAGS"
11279	CFLAGS="$CFLAGS -I`$PKG_CONFIG --variable=sdkdir xorg-server`"
11280	AC_COMPILE_IFELSE([AC_LANG_PROGRAM([[
11281#include "xorg-server.h"
11282#if !defined $1
11283#error $1 not defined
11284#endif
11285		]])],
11286		[_EXT_CHECK=yes],
11287		[_EXT_CHECK=no])
11288	CFLAGS="$SAVE_CFLAGS"
11289	AC_MSG_CHECKING([if $1 is defined])
11290	AC_MSG_RESULT([$_EXT_CHECK])
11291	if test "$_EXT_CHECK" != no; then
11292		REQUIRED_MODULES="$REQUIRED_MODULES $2"
11293	fi
11294])
11295
11296# Copyright (C) 2002-2014 Free Software Foundation, Inc.
11297#
11298# This file is free software; the Free Software Foundation
11299# gives unlimited permission to copy and/or distribute it,
11300# with or without modifications, as long as this notice is preserved.
11301
11302# AM_AUTOMAKE_VERSION(VERSION)
11303# ----------------------------
11304# Automake X.Y traces this macro to ensure aclocal.m4 has been
11305# generated from the m4 files accompanying Automake X.Y.
11306# (This private macro should not be called outside this file.)
11307AC_DEFUN([AM_AUTOMAKE_VERSION],
11308[am__api_version='1.15'
11309dnl Some users find AM_AUTOMAKE_VERSION and mistake it for a way to
11310dnl require some minimum version.  Point them to the right macro.
11311m4_if([$1], [1.15], [],
11312      [AC_FATAL([Do not call $0, use AM_INIT_AUTOMAKE([$1]).])])dnl
11313])
11314
11315# _AM_AUTOCONF_VERSION(VERSION)
11316# -----------------------------
11317# aclocal traces this macro to find the Autoconf version.
11318# This is a private macro too.  Using m4_define simplifies
11319# the logic in aclocal, which can simply ignore this definition.
11320m4_define([_AM_AUTOCONF_VERSION], [])
11321
11322# AM_SET_CURRENT_AUTOMAKE_VERSION
11323# -------------------------------
11324# Call AM_AUTOMAKE_VERSION and AM_AUTOMAKE_VERSION so they can be traced.
11325# This function is AC_REQUIREd by AM_INIT_AUTOMAKE.
11326AC_DEFUN([AM_SET_CURRENT_AUTOMAKE_VERSION],
11327[AM_AUTOMAKE_VERSION([1.15])dnl
11328m4_ifndef([AC_AUTOCONF_VERSION],
11329  [m4_copy([m4_PACKAGE_VERSION], [AC_AUTOCONF_VERSION])])dnl
11330_AM_AUTOCONF_VERSION(m4_defn([AC_AUTOCONF_VERSION]))])
11331
11332# AM_AUX_DIR_EXPAND                                         -*- Autoconf -*-
11333
11334# Copyright (C) 2001-2014 Free Software Foundation, Inc.
11335#
11336# This file is free software; the Free Software Foundation
11337# gives unlimited permission to copy and/or distribute it,
11338# with or without modifications, as long as this notice is preserved.
11339
11340# For projects using AC_CONFIG_AUX_DIR([foo]), Autoconf sets
11341# $ac_aux_dir to '$srcdir/foo'.  In other projects, it is set to
11342# '$srcdir', '$srcdir/..', or '$srcdir/../..'.
11343#
11344# Of course, Automake must honor this variable whenever it calls a
11345# tool from the auxiliary directory.  The problem is that $srcdir (and
11346# therefore $ac_aux_dir as well) can be either absolute or relative,
11347# depending on how configure is run.  This is pretty annoying, since
11348# it makes $ac_aux_dir quite unusable in subdirectories: in the top
11349# source directory, any form will work fine, but in subdirectories a
11350# relative path needs to be adjusted first.
11351#
11352# $ac_aux_dir/missing
11353#    fails when called from a subdirectory if $ac_aux_dir is relative
11354# $top_srcdir/$ac_aux_dir/missing
11355#    fails if $ac_aux_dir is absolute,
11356#    fails when called from a subdirectory in a VPATH build with
11357#          a relative $ac_aux_dir
11358#
11359# The reason of the latter failure is that $top_srcdir and $ac_aux_dir
11360# are both prefixed by $srcdir.  In an in-source build this is usually
11361# harmless because $srcdir is '.', but things will broke when you
11362# start a VPATH build or use an absolute $srcdir.
11363#
11364# So we could use something similar to $top_srcdir/$ac_aux_dir/missing,
11365# iff we strip the leading $srcdir from $ac_aux_dir.  That would be:
11366#   am_aux_dir='\$(top_srcdir)/'`expr "$ac_aux_dir" : "$srcdir//*\(.*\)"`
11367# and then we would define $MISSING as
11368#   MISSING="\${SHELL} $am_aux_dir/missing"
11369# This will work as long as MISSING is not called from configure, because
11370# unfortunately $(top_srcdir) has no meaning in configure.
11371# However there are other variables, like CC, which are often used in
11372# configure, and could therefore not use this "fixed" $ac_aux_dir.
11373#
11374# Another solution, used here, is to always expand $ac_aux_dir to an
11375# absolute PATH.  The drawback is that using absolute paths prevent a
11376# configured tree to be moved without reconfiguration.
11377
11378AC_DEFUN([AM_AUX_DIR_EXPAND],
11379[AC_REQUIRE([AC_CONFIG_AUX_DIR_DEFAULT])dnl
11380# Expand $ac_aux_dir to an absolute path.
11381am_aux_dir=`cd "$ac_aux_dir" && pwd`
11382])
11383
11384# AM_CONDITIONAL                                            -*- Autoconf -*-
11385
11386# Copyright (C) 1997-2014 Free Software Foundation, Inc.
11387#
11388# This file is free software; the Free Software Foundation
11389# gives unlimited permission to copy and/or distribute it,
11390# with or without modifications, as long as this notice is preserved.
11391
11392# AM_CONDITIONAL(NAME, SHELL-CONDITION)
11393# -------------------------------------
11394# Define a conditional.
11395AC_DEFUN([AM_CONDITIONAL],
11396[AC_PREREQ([2.52])dnl
11397 m4_if([$1], [TRUE],  [AC_FATAL([$0: invalid condition: $1])],
11398       [$1], [FALSE], [AC_FATAL([$0: invalid condition: $1])])dnl
11399AC_SUBST([$1_TRUE])dnl
11400AC_SUBST([$1_FALSE])dnl
11401_AM_SUBST_NOTMAKE([$1_TRUE])dnl
11402_AM_SUBST_NOTMAKE([$1_FALSE])dnl
11403m4_define([_AM_COND_VALUE_$1], [$2])dnl
11404if $2; then
11405  $1_TRUE=
11406  $1_FALSE='#'
11407else
11408  $1_TRUE='#'
11409  $1_FALSE=
11410fi
11411AC_CONFIG_COMMANDS_PRE(
11412[if test -z "${$1_TRUE}" && test -z "${$1_FALSE}"; then
11413  AC_MSG_ERROR([[conditional "$1" was never defined.
11414Usually this means the macro was only invoked conditionally.]])
11415fi])])
11416
11417# Copyright (C) 1999-2014 Free Software Foundation, Inc.
11418#
11419# This file is free software; the Free Software Foundation
11420# gives unlimited permission to copy and/or distribute it,
11421# with or without modifications, as long as this notice is preserved.
11422
11423
11424# There are a few dirty hacks below to avoid letting 'AC_PROG_CC' be
11425# written in clear, in which case automake, when reading aclocal.m4,
11426# will think it sees a *use*, and therefore will trigger all it's
11427# C support machinery.  Also note that it means that autoscan, seeing
11428# CC etc. in the Makefile, will ask for an AC_PROG_CC use...
11429
11430
11431# _AM_DEPENDENCIES(NAME)
11432# ----------------------
11433# See how the compiler implements dependency checking.
11434# NAME is "CC", "CXX", "OBJC", "OBJCXX", "UPC", or "GJC".
11435# We try a few techniques and use that to set a single cache variable.
11436#
11437# We don't AC_REQUIRE the corresponding AC_PROG_CC since the latter was
11438# modified to invoke _AM_DEPENDENCIES(CC); we would have a circular
11439# dependency, and given that the user is not expected to run this macro,
11440# just rely on AC_PROG_CC.
11441AC_DEFUN([_AM_DEPENDENCIES],
11442[AC_REQUIRE([AM_SET_DEPDIR])dnl
11443AC_REQUIRE([AM_OUTPUT_DEPENDENCY_COMMANDS])dnl
11444AC_REQUIRE([AM_MAKE_INCLUDE])dnl
11445AC_REQUIRE([AM_DEP_TRACK])dnl
11446
11447m4_if([$1], [CC],   [depcc="$CC"   am_compiler_list=],
11448      [$1], [CXX],  [depcc="$CXX"  am_compiler_list=],
11449      [$1], [OBJC], [depcc="$OBJC" am_compiler_list='gcc3 gcc'],
11450      [$1], [OBJCXX], [depcc="$OBJCXX" am_compiler_list='gcc3 gcc'],
11451      [$1], [UPC],  [depcc="$UPC"  am_compiler_list=],
11452      [$1], [GCJ],  [depcc="$GCJ"  am_compiler_list='gcc3 gcc'],
11453                    [depcc="$$1"   am_compiler_list=])
11454
11455AC_CACHE_CHECK([dependency style of $depcc],
11456               [am_cv_$1_dependencies_compiler_type],
11457[if test -z "$AMDEP_TRUE" && test -f "$am_depcomp"; then
11458  # We make a subdir and do the tests there.  Otherwise we can end up
11459  # making bogus files that we don't know about and never remove.  For
11460  # instance it was reported that on HP-UX the gcc test will end up
11461  # making a dummy file named 'D' -- because '-MD' means "put the output
11462  # in D".
11463  rm -rf conftest.dir
11464  mkdir conftest.dir
11465  # Copy depcomp to subdir because otherwise we won't find it if we're
11466  # using a relative directory.
11467  cp "$am_depcomp" conftest.dir
11468  cd conftest.dir
11469  # We will build objects and dependencies in a subdirectory because
11470  # it helps to detect inapplicable dependency modes.  For instance
11471  # both Tru64's cc and ICC support -MD to output dependencies as a
11472  # side effect of compilation, but ICC will put the dependencies in
11473  # the current directory while Tru64 will put them in the object
11474  # directory.
11475  mkdir sub
11476
11477  am_cv_$1_dependencies_compiler_type=none
11478  if test "$am_compiler_list" = ""; then
11479     am_compiler_list=`sed -n ['s/^#*\([a-zA-Z0-9]*\))$/\1/p'] < ./depcomp`
11480  fi
11481  am__universal=false
11482  m4_case([$1], [CC],
11483    [case " $depcc " in #(
11484     *\ -arch\ *\ -arch\ *) am__universal=true ;;
11485     esac],
11486    [CXX],
11487    [case " $depcc " in #(
11488     *\ -arch\ *\ -arch\ *) am__universal=true ;;
11489     esac])
11490
11491  for depmode in $am_compiler_list; do
11492    # Setup a source with many dependencies, because some compilers
11493    # like to wrap large dependency lists on column 80 (with \), and
11494    # we should not choose a depcomp mode which is confused by this.
11495    #
11496    # We need to recreate these files for each test, as the compiler may
11497    # overwrite some of them when testing with obscure command lines.
11498    # This happens at least with the AIX C compiler.
11499    : > sub/conftest.c
11500    for i in 1 2 3 4 5 6; do
11501      echo '#include "conftst'$i'.h"' >> sub/conftest.c
11502      # Using ": > sub/conftst$i.h" creates only sub/conftst1.h with
11503      # Solaris 10 /bin/sh.
11504      echo '/* dummy */' > sub/conftst$i.h
11505    done
11506    echo "${am__include} ${am__quote}sub/conftest.Po${am__quote}" > confmf
11507
11508    # We check with '-c' and '-o' for the sake of the "dashmstdout"
11509    # mode.  It turns out that the SunPro C++ compiler does not properly
11510    # handle '-M -o', and we need to detect this.  Also, some Intel
11511    # versions had trouble with output in subdirs.
11512    am__obj=sub/conftest.${OBJEXT-o}
11513    am__minus_obj="-o $am__obj"
11514    case $depmode in
11515    gcc)
11516      # This depmode causes a compiler race in universal mode.
11517      test "$am__universal" = false || continue
11518      ;;
11519    nosideeffect)
11520      # After this tag, mechanisms are not by side-effect, so they'll
11521      # only be used when explicitly requested.
11522      if test "x$enable_dependency_tracking" = xyes; then
11523	continue
11524      else
11525	break
11526      fi
11527      ;;
11528    msvc7 | msvc7msys | msvisualcpp | msvcmsys)
11529      # This compiler won't grok '-c -o', but also, the minuso test has
11530      # not run yet.  These depmodes are late enough in the game, and
11531      # so weak that their functioning should not be impacted.
11532      am__obj=conftest.${OBJEXT-o}
11533      am__minus_obj=
11534      ;;
11535    none) break ;;
11536    esac
11537    if depmode=$depmode \
11538       source=sub/conftest.c object=$am__obj \
11539       depfile=sub/conftest.Po tmpdepfile=sub/conftest.TPo \
11540       $SHELL ./depcomp $depcc -c $am__minus_obj sub/conftest.c \
11541         >/dev/null 2>conftest.err &&
11542       grep sub/conftst1.h sub/conftest.Po > /dev/null 2>&1 &&
11543       grep sub/conftst6.h sub/conftest.Po > /dev/null 2>&1 &&
11544       grep $am__obj sub/conftest.Po > /dev/null 2>&1 &&
11545       ${MAKE-make} -s -f confmf > /dev/null 2>&1; then
11546      # icc doesn't choke on unknown options, it will just issue warnings
11547      # or remarks (even with -Werror).  So we grep stderr for any message
11548      # that says an option was ignored or not supported.
11549      # When given -MP, icc 7.0 and 7.1 complain thusly:
11550      #   icc: Command line warning: ignoring option '-M'; no argument required
11551      # The diagnosis changed in icc 8.0:
11552      #   icc: Command line remark: option '-MP' not supported
11553      if (grep 'ignoring option' conftest.err ||
11554          grep 'not supported' conftest.err) >/dev/null 2>&1; then :; else
11555        am_cv_$1_dependencies_compiler_type=$depmode
11556        break
11557      fi
11558    fi
11559  done
11560
11561  cd ..
11562  rm -rf conftest.dir
11563else
11564  am_cv_$1_dependencies_compiler_type=none
11565fi
11566])
11567AC_SUBST([$1DEPMODE], [depmode=$am_cv_$1_dependencies_compiler_type])
11568AM_CONDITIONAL([am__fastdep$1], [
11569  test "x$enable_dependency_tracking" != xno \
11570  && test "$am_cv_$1_dependencies_compiler_type" = gcc3])
11571])
11572
11573
11574# AM_SET_DEPDIR
11575# -------------
11576# Choose a directory name for dependency files.
11577# This macro is AC_REQUIREd in _AM_DEPENDENCIES.
11578AC_DEFUN([AM_SET_DEPDIR],
11579[AC_REQUIRE([AM_SET_LEADING_DOT])dnl
11580AC_SUBST([DEPDIR], ["${am__leading_dot}deps"])dnl
11581])
11582
11583
11584# AM_DEP_TRACK
11585# ------------
11586AC_DEFUN([AM_DEP_TRACK],
11587[AC_ARG_ENABLE([dependency-tracking], [dnl
11588AS_HELP_STRING(
11589  [--enable-dependency-tracking],
11590  [do not reject slow dependency extractors])
11591AS_HELP_STRING(
11592  [--disable-dependency-tracking],
11593  [speeds up one-time build])])
11594if test "x$enable_dependency_tracking" != xno; then
11595  am_depcomp="$ac_aux_dir/depcomp"
11596  AMDEPBACKSLASH='\'
11597  am__nodep='_no'
11598fi
11599AM_CONDITIONAL([AMDEP], [test "x$enable_dependency_tracking" != xno])
11600AC_SUBST([AMDEPBACKSLASH])dnl
11601_AM_SUBST_NOTMAKE([AMDEPBACKSLASH])dnl
11602AC_SUBST([am__nodep])dnl
11603_AM_SUBST_NOTMAKE([am__nodep])dnl
11604])
11605
11606# Generate code to set up dependency tracking.              -*- Autoconf -*-
11607
11608# Copyright (C) 1999-2014 Free Software Foundation, Inc.
11609#
11610# This file is free software; the Free Software Foundation
11611# gives unlimited permission to copy and/or distribute it,
11612# with or without modifications, as long as this notice is preserved.
11613
11614
11615# _AM_OUTPUT_DEPENDENCY_COMMANDS
11616# ------------------------------
11617AC_DEFUN([_AM_OUTPUT_DEPENDENCY_COMMANDS],
11618[{
11619  # Older Autoconf quotes --file arguments for eval, but not when files
11620  # are listed without --file.  Let's play safe and only enable the eval
11621  # if we detect the quoting.
11622  case $CONFIG_FILES in
11623  *\'*) eval set x "$CONFIG_FILES" ;;
11624  *)   set x $CONFIG_FILES ;;
11625  esac
11626  shift
11627  for mf
11628  do
11629    # Strip MF so we end up with the name of the file.
11630    mf=`echo "$mf" | sed -e 's/:.*$//'`
11631    # Check whether this is an Automake generated Makefile or not.
11632    # We used to match only the files named 'Makefile.in', but
11633    # some people rename them; so instead we look at the file content.
11634    # Grep'ing the first line is not enough: some people post-process
11635    # each Makefile.in and add a new line on top of each file to say so.
11636    # Grep'ing the whole file is not good either: AIX grep has a line
11637    # limit of 2048, but all sed's we know have understand at least 4000.
11638    if sed -n 's,^#.*generated by automake.*,X,p' "$mf" | grep X >/dev/null 2>&1; then
11639      dirpart=`AS_DIRNAME("$mf")`
11640    else
11641      continue
11642    fi
11643    # Extract the definition of DEPDIR, am__include, and am__quote
11644    # from the Makefile without running 'make'.
11645    DEPDIR=`sed -n 's/^DEPDIR = //p' < "$mf"`
11646    test -z "$DEPDIR" && continue
11647    am__include=`sed -n 's/^am__include = //p' < "$mf"`
11648    test -z "$am__include" && continue
11649    am__quote=`sed -n 's/^am__quote = //p' < "$mf"`
11650    # Find all dependency output files, they are included files with
11651    # $(DEPDIR) in their names.  We invoke sed twice because it is the
11652    # simplest approach to changing $(DEPDIR) to its actual value in the
11653    # expansion.
11654    for file in `sed -n "
11655      s/^$am__include $am__quote\(.*(DEPDIR).*\)$am__quote"'$/\1/p' <"$mf" | \
11656	 sed -e 's/\$(DEPDIR)/'"$DEPDIR"'/g'`; do
11657      # Make sure the directory exists.
11658      test -f "$dirpart/$file" && continue
11659      fdir=`AS_DIRNAME(["$file"])`
11660      AS_MKDIR_P([$dirpart/$fdir])
11661      # echo "creating $dirpart/$file"
11662      echo '# dummy' > "$dirpart/$file"
11663    done
11664  done
11665}
11666])# _AM_OUTPUT_DEPENDENCY_COMMANDS
11667
11668
11669# AM_OUTPUT_DEPENDENCY_COMMANDS
11670# -----------------------------
11671# This macro should only be invoked once -- use via AC_REQUIRE.
11672#
11673# This code is only required when automatic dependency tracking
11674# is enabled.  FIXME.  This creates each '.P' file that we will
11675# need in order to bootstrap the dependency handling code.
11676AC_DEFUN([AM_OUTPUT_DEPENDENCY_COMMANDS],
11677[AC_CONFIG_COMMANDS([depfiles],
11678     [test x"$AMDEP_TRUE" != x"" || _AM_OUTPUT_DEPENDENCY_COMMANDS],
11679     [AMDEP_TRUE="$AMDEP_TRUE" ac_aux_dir="$ac_aux_dir"])
11680])
11681
11682# Do all the work for Automake.                             -*- Autoconf -*-
11683
11684# Copyright (C) 1996-2014 Free Software Foundation, Inc.
11685#
11686# This file is free software; the Free Software Foundation
11687# gives unlimited permission to copy and/or distribute it,
11688# with or without modifications, as long as this notice is preserved.
11689
11690# This macro actually does too much.  Some checks are only needed if
11691# your package does certain things.  But this isn't really a big deal.
11692
11693dnl Redefine AC_PROG_CC to automatically invoke _AM_PROG_CC_C_O.
11694m4_define([AC_PROG_CC],
11695m4_defn([AC_PROG_CC])
11696[_AM_PROG_CC_C_O
11697])
11698
11699# AM_INIT_AUTOMAKE(PACKAGE, VERSION, [NO-DEFINE])
11700# AM_INIT_AUTOMAKE([OPTIONS])
11701# -----------------------------------------------
11702# The call with PACKAGE and VERSION arguments is the old style
11703# call (pre autoconf-2.50), which is being phased out.  PACKAGE
11704# and VERSION should now be passed to AC_INIT and removed from
11705# the call to AM_INIT_AUTOMAKE.
11706# We support both call styles for the transition.  After
11707# the next Automake release, Autoconf can make the AC_INIT
11708# arguments mandatory, and then we can depend on a new Autoconf
11709# release and drop the old call support.
11710AC_DEFUN([AM_INIT_AUTOMAKE],
11711[AC_PREREQ([2.65])dnl
11712dnl Autoconf wants to disallow AM_ names.  We explicitly allow
11713dnl the ones we care about.
11714m4_pattern_allow([^AM_[A-Z]+FLAGS$])dnl
11715AC_REQUIRE([AM_SET_CURRENT_AUTOMAKE_VERSION])dnl
11716AC_REQUIRE([AC_PROG_INSTALL])dnl
11717if test "`cd $srcdir && pwd`" != "`pwd`"; then
11718  # Use -I$(srcdir) only when $(srcdir) != ., so that make's output
11719  # is not polluted with repeated "-I."
11720  AC_SUBST([am__isrc], [' -I$(srcdir)'])_AM_SUBST_NOTMAKE([am__isrc])dnl
11721  # test to see if srcdir already configured
11722  if test -f $srcdir/config.status; then
11723    AC_MSG_ERROR([source directory already configured; run "make distclean" there first])
11724  fi
11725fi
11726
11727# test whether we have cygpath
11728if test -z "$CYGPATH_W"; then
11729  if (cygpath --version) >/dev/null 2>/dev/null; then
11730    CYGPATH_W='cygpath -w'
11731  else
11732    CYGPATH_W=echo
11733  fi
11734fi
11735AC_SUBST([CYGPATH_W])
11736
11737# Define the identity of the package.
11738dnl Distinguish between old-style and new-style calls.
11739m4_ifval([$2],
11740[AC_DIAGNOSE([obsolete],
11741             [$0: two- and three-arguments forms are deprecated.])
11742m4_ifval([$3], [_AM_SET_OPTION([no-define])])dnl
11743 AC_SUBST([PACKAGE], [$1])dnl
11744 AC_SUBST([VERSION], [$2])],
11745[_AM_SET_OPTIONS([$1])dnl
11746dnl Diagnose old-style AC_INIT with new-style AM_AUTOMAKE_INIT.
11747m4_if(
11748  m4_ifdef([AC_PACKAGE_NAME], [ok]):m4_ifdef([AC_PACKAGE_VERSION], [ok]),
11749  [ok:ok],,
11750  [m4_fatal([AC_INIT should be called with package and version arguments])])dnl
11751 AC_SUBST([PACKAGE], ['AC_PACKAGE_TARNAME'])dnl
11752 AC_SUBST([VERSION], ['AC_PACKAGE_VERSION'])])dnl
11753
11754_AM_IF_OPTION([no-define],,
11755[AC_DEFINE_UNQUOTED([PACKAGE], ["$PACKAGE"], [Name of package])
11756 AC_DEFINE_UNQUOTED([VERSION], ["$VERSION"], [Version number of package])])dnl
11757
11758# Some tools Automake needs.
11759AC_REQUIRE([AM_SANITY_CHECK])dnl
11760AC_REQUIRE([AC_ARG_PROGRAM])dnl
11761AM_MISSING_PROG([ACLOCAL], [aclocal-${am__api_version}])
11762AM_MISSING_PROG([AUTOCONF], [autoconf])
11763AM_MISSING_PROG([AUTOMAKE], [automake-${am__api_version}])
11764AM_MISSING_PROG([AUTOHEADER], [autoheader])
11765AM_MISSING_PROG([MAKEINFO], [makeinfo])
11766AC_REQUIRE([AM_PROG_INSTALL_SH])dnl
11767AC_REQUIRE([AM_PROG_INSTALL_STRIP])dnl
11768AC_REQUIRE([AC_PROG_MKDIR_P])dnl
11769# For better backward compatibility.  To be removed once Automake 1.9.x
11770# dies out for good.  For more background, see:
11771# <http://lists.gnu.org/archive/html/automake/2012-07/msg00001.html>
11772# <http://lists.gnu.org/archive/html/automake/2012-07/msg00014.html>
11773AC_SUBST([mkdir_p], ['$(MKDIR_P)'])
11774# We need awk for the "check" target (and possibly the TAP driver).  The
11775# system "awk" is bad on some platforms.
11776AC_REQUIRE([AC_PROG_AWK])dnl
11777AC_REQUIRE([AC_PROG_MAKE_SET])dnl
11778AC_REQUIRE([AM_SET_LEADING_DOT])dnl
11779_AM_IF_OPTION([tar-ustar], [_AM_PROG_TAR([ustar])],
11780	      [_AM_IF_OPTION([tar-pax], [_AM_PROG_TAR([pax])],
11781			     [_AM_PROG_TAR([v7])])])
11782_AM_IF_OPTION([no-dependencies],,
11783[AC_PROVIDE_IFELSE([AC_PROG_CC],
11784		  [_AM_DEPENDENCIES([CC])],
11785		  [m4_define([AC_PROG_CC],
11786			     m4_defn([AC_PROG_CC])[_AM_DEPENDENCIES([CC])])])dnl
11787AC_PROVIDE_IFELSE([AC_PROG_CXX],
11788		  [_AM_DEPENDENCIES([CXX])],
11789		  [m4_define([AC_PROG_CXX],
11790			     m4_defn([AC_PROG_CXX])[_AM_DEPENDENCIES([CXX])])])dnl
11791AC_PROVIDE_IFELSE([AC_PROG_OBJC],
11792		  [_AM_DEPENDENCIES([OBJC])],
11793		  [m4_define([AC_PROG_OBJC],
11794			     m4_defn([AC_PROG_OBJC])[_AM_DEPENDENCIES([OBJC])])])dnl
11795AC_PROVIDE_IFELSE([AC_PROG_OBJCXX],
11796		  [_AM_DEPENDENCIES([OBJCXX])],
11797		  [m4_define([AC_PROG_OBJCXX],
11798			     m4_defn([AC_PROG_OBJCXX])[_AM_DEPENDENCIES([OBJCXX])])])dnl
11799])
11800AC_REQUIRE([AM_SILENT_RULES])dnl
11801dnl The testsuite driver may need to know about EXEEXT, so add the
11802dnl 'am__EXEEXT' conditional if _AM_COMPILER_EXEEXT was seen.  This
11803dnl macro is hooked onto _AC_COMPILER_EXEEXT early, see below.
11804AC_CONFIG_COMMANDS_PRE(dnl
11805[m4_provide_if([_AM_COMPILER_EXEEXT],
11806  [AM_CONDITIONAL([am__EXEEXT], [test -n "$EXEEXT"])])])dnl
11807
11808# POSIX will say in a future version that running "rm -f" with no argument
11809# is OK; and we want to be able to make that assumption in our Makefile
11810# recipes.  So use an aggressive probe to check that the usage we want is
11811# actually supported "in the wild" to an acceptable degree.
11812# See automake bug#10828.
11813# To make any issue more visible, cause the running configure to be aborted
11814# by default if the 'rm' program in use doesn't match our expectations; the
11815# user can still override this though.
11816if rm -f && rm -fr && rm -rf; then : OK; else
11817  cat >&2 <<'END'
11818Oops!
11819
11820Your 'rm' program seems unable to run without file operands specified
11821on the command line, even when the '-f' option is present.  This is contrary
11822to the behaviour of most rm programs out there, and not conforming with
11823the upcoming POSIX standard: <http://austingroupbugs.net/view.php?id=542>
11824
11825Please tell bug-automake@gnu.org about your system, including the value
11826of your $PATH and any error possibly output before this message.  This
11827can help us improve future automake versions.
11828
11829END
11830  if test x"$ACCEPT_INFERIOR_RM_PROGRAM" = x"yes"; then
11831    echo 'Configuration will proceed anyway, since you have set the' >&2
11832    echo 'ACCEPT_INFERIOR_RM_PROGRAM variable to "yes"' >&2
11833    echo >&2
11834  else
11835    cat >&2 <<'END'
11836Aborting the configuration process, to ensure you take notice of the issue.
11837
11838You can download and install GNU coreutils to get an 'rm' implementation
11839that behaves properly: <http://www.gnu.org/software/coreutils/>.
11840
11841If you want to complete the configuration process using your problematic
11842'rm' anyway, export the environment variable ACCEPT_INFERIOR_RM_PROGRAM
11843to "yes", and re-run configure.
11844
11845END
11846    AC_MSG_ERROR([Your 'rm' program is bad, sorry.])
11847  fi
11848fi
11849dnl The trailing newline in this macro's definition is deliberate, for
11850dnl backward compatibility and to allow trailing 'dnl'-style comments
11851dnl after the AM_INIT_AUTOMAKE invocation. See automake bug#16841.
11852])
11853
11854dnl Hook into '_AC_COMPILER_EXEEXT' early to learn its expansion.  Do not
11855dnl add the conditional right here, as _AC_COMPILER_EXEEXT may be further
11856dnl mangled by Autoconf and run in a shell conditional statement.
11857m4_define([_AC_COMPILER_EXEEXT],
11858m4_defn([_AC_COMPILER_EXEEXT])[m4_provide([_AM_COMPILER_EXEEXT])])
11859
11860# When config.status generates a header, we must update the stamp-h file.
11861# This file resides in the same directory as the config header
11862# that is generated.  The stamp files are numbered to have different names.
11863
11864# Autoconf calls _AC_AM_CONFIG_HEADER_HOOK (when defined) in the
11865# loop where config.status creates the headers, so we can generate
11866# our stamp files there.
11867AC_DEFUN([_AC_AM_CONFIG_HEADER_HOOK],
11868[# Compute $1's index in $config_headers.
11869_am_arg=$1
11870_am_stamp_count=1
11871for _am_header in $config_headers :; do
11872  case $_am_header in
11873    $_am_arg | $_am_arg:* )
11874      break ;;
11875    * )
11876      _am_stamp_count=`expr $_am_stamp_count + 1` ;;
11877  esac
11878done
11879echo "timestamp for $_am_arg" >`AS_DIRNAME(["$_am_arg"])`/stamp-h[]$_am_stamp_count])
11880
11881# Copyright (C) 2001-2014 Free Software Foundation, Inc.
11882#
11883# This file is free software; the Free Software Foundation
11884# gives unlimited permission to copy and/or distribute it,
11885# with or without modifications, as long as this notice is preserved.
11886
11887# AM_PROG_INSTALL_SH
11888# ------------------
11889# Define $install_sh.
11890AC_DEFUN([AM_PROG_INSTALL_SH],
11891[AC_REQUIRE([AM_AUX_DIR_EXPAND])dnl
11892if test x"${install_sh+set}" != xset; then
11893  case $am_aux_dir in
11894  *\ * | *\	*)
11895    install_sh="\${SHELL} '$am_aux_dir/install-sh'" ;;
11896  *)
11897    install_sh="\${SHELL} $am_aux_dir/install-sh"
11898  esac
11899fi
11900AC_SUBST([install_sh])])
11901
11902# Copyright (C) 2003-2014 Free Software Foundation, Inc.
11903#
11904# This file is free software; the Free Software Foundation
11905# gives unlimited permission to copy and/or distribute it,
11906# with or without modifications, as long as this notice is preserved.
11907
11908# Check whether the underlying file-system supports filenames
11909# with a leading dot.  For instance MS-DOS doesn't.
11910AC_DEFUN([AM_SET_LEADING_DOT],
11911[rm -rf .tst 2>/dev/null
11912mkdir .tst 2>/dev/null
11913if test -d .tst; then
11914  am__leading_dot=.
11915else
11916  am__leading_dot=_
11917fi
11918rmdir .tst 2>/dev/null
11919AC_SUBST([am__leading_dot])])
11920
11921# Add --enable-maintainer-mode option to configure.         -*- Autoconf -*-
11922# From Jim Meyering
11923
11924# Copyright (C) 1996-2014 Free Software Foundation, Inc.
11925#
11926# This file is free software; the Free Software Foundation
11927# gives unlimited permission to copy and/or distribute it,
11928# with or without modifications, as long as this notice is preserved.
11929
11930# AM_MAINTAINER_MODE([DEFAULT-MODE])
11931# ----------------------------------
11932# Control maintainer-specific portions of Makefiles.
11933# Default is to disable them, unless 'enable' is passed literally.
11934# For symmetry, 'disable' may be passed as well.  Anyway, the user
11935# can override the default with the --enable/--disable switch.
11936AC_DEFUN([AM_MAINTAINER_MODE],
11937[m4_case(m4_default([$1], [disable]),
11938       [enable], [m4_define([am_maintainer_other], [disable])],
11939       [disable], [m4_define([am_maintainer_other], [enable])],
11940       [m4_define([am_maintainer_other], [enable])
11941        m4_warn([syntax], [unexpected argument to AM@&t@_MAINTAINER_MODE: $1])])
11942AC_MSG_CHECKING([whether to enable maintainer-specific portions of Makefiles])
11943  dnl maintainer-mode's default is 'disable' unless 'enable' is passed
11944  AC_ARG_ENABLE([maintainer-mode],
11945    [AS_HELP_STRING([--]am_maintainer_other[-maintainer-mode],
11946      am_maintainer_other[ make rules and dependencies not useful
11947      (and sometimes confusing) to the casual installer])],
11948    [USE_MAINTAINER_MODE=$enableval],
11949    [USE_MAINTAINER_MODE=]m4_if(am_maintainer_other, [enable], [no], [yes]))
11950  AC_MSG_RESULT([$USE_MAINTAINER_MODE])
11951  AM_CONDITIONAL([MAINTAINER_MODE], [test $USE_MAINTAINER_MODE = yes])
11952  MAINT=$MAINTAINER_MODE_TRUE
11953  AC_SUBST([MAINT])dnl
11954]
11955)
11956
11957# Check to see how 'make' treats includes.	            -*- Autoconf -*-
11958
11959# Copyright (C) 2001-2014 Free Software Foundation, Inc.
11960#
11961# This file is free software; the Free Software Foundation
11962# gives unlimited permission to copy and/or distribute it,
11963# with or without modifications, as long as this notice is preserved.
11964
11965# AM_MAKE_INCLUDE()
11966# -----------------
11967# Check to see how make treats includes.
11968AC_DEFUN([AM_MAKE_INCLUDE],
11969[am_make=${MAKE-make}
11970cat > confinc << 'END'
11971am__doit:
11972	@echo this is the am__doit target
11973.PHONY: am__doit
11974END
11975# If we don't find an include directive, just comment out the code.
11976AC_MSG_CHECKING([for style of include used by $am_make])
11977am__include="#"
11978am__quote=
11979_am_result=none
11980# First try GNU make style include.
11981echo "include confinc" > confmf
11982# Ignore all kinds of additional output from 'make'.
11983case `$am_make -s -f confmf 2> /dev/null` in #(
11984*the\ am__doit\ target*)
11985  am__include=include
11986  am__quote=
11987  _am_result=GNU
11988  ;;
11989esac
11990# Now try BSD make style include.
11991if test "$am__include" = "#"; then
11992   echo '.include "confinc"' > confmf
11993   case `$am_make -s -f confmf 2> /dev/null` in #(
11994   *the\ am__doit\ target*)
11995     am__include=.include
11996     am__quote="\""
11997     _am_result=BSD
11998     ;;
11999   esac
12000fi
12001AC_SUBST([am__include])
12002AC_SUBST([am__quote])
12003AC_MSG_RESULT([$_am_result])
12004rm -f confinc confmf
12005])
12006
12007# Fake the existence of programs that GNU maintainers use.  -*- Autoconf -*-
12008
12009# Copyright (C) 1997-2014 Free Software Foundation, Inc.
12010#
12011# This file is free software; the Free Software Foundation
12012# gives unlimited permission to copy and/or distribute it,
12013# with or without modifications, as long as this notice is preserved.
12014
12015# AM_MISSING_PROG(NAME, PROGRAM)
12016# ------------------------------
12017AC_DEFUN([AM_MISSING_PROG],
12018[AC_REQUIRE([AM_MISSING_HAS_RUN])
12019$1=${$1-"${am_missing_run}$2"}
12020AC_SUBST($1)])
12021
12022# AM_MISSING_HAS_RUN
12023# ------------------
12024# Define MISSING if not defined so far and test if it is modern enough.
12025# If it is, set am_missing_run to use it, otherwise, to nothing.
12026AC_DEFUN([AM_MISSING_HAS_RUN],
12027[AC_REQUIRE([AM_AUX_DIR_EXPAND])dnl
12028AC_REQUIRE_AUX_FILE([missing])dnl
12029if test x"${MISSING+set}" != xset; then
12030  case $am_aux_dir in
12031  *\ * | *\	*)
12032    MISSING="\${SHELL} \"$am_aux_dir/missing\"" ;;
12033  *)
12034    MISSING="\${SHELL} $am_aux_dir/missing" ;;
12035  esac
12036fi
12037# Use eval to expand $SHELL
12038if eval "$MISSING --is-lightweight"; then
12039  am_missing_run="$MISSING "
12040else
12041  am_missing_run=
12042  AC_MSG_WARN(['missing' script is too old or missing])
12043fi
12044])
12045
12046# Helper functions for option handling.                     -*- Autoconf -*-
12047
12048# Copyright (C) 2001-2014 Free Software Foundation, Inc.
12049#
12050# This file is free software; the Free Software Foundation
12051# gives unlimited permission to copy and/or distribute it,
12052# with or without modifications, as long as this notice is preserved.
12053
12054# _AM_MANGLE_OPTION(NAME)
12055# -----------------------
12056AC_DEFUN([_AM_MANGLE_OPTION],
12057[[_AM_OPTION_]m4_bpatsubst($1, [[^a-zA-Z0-9_]], [_])])
12058
12059# _AM_SET_OPTION(NAME)
12060# --------------------
12061# Set option NAME.  Presently that only means defining a flag for this option.
12062AC_DEFUN([_AM_SET_OPTION],
12063[m4_define(_AM_MANGLE_OPTION([$1]), [1])])
12064
12065# _AM_SET_OPTIONS(OPTIONS)
12066# ------------------------
12067# OPTIONS is a space-separated list of Automake options.
12068AC_DEFUN([_AM_SET_OPTIONS],
12069[m4_foreach_w([_AM_Option], [$1], [_AM_SET_OPTION(_AM_Option)])])
12070
12071# _AM_IF_OPTION(OPTION, IF-SET, [IF-NOT-SET])
12072# -------------------------------------------
12073# Execute IF-SET if OPTION is set, IF-NOT-SET otherwise.
12074AC_DEFUN([_AM_IF_OPTION],
12075[m4_ifset(_AM_MANGLE_OPTION([$1]), [$2], [$3])])
12076
12077# Copyright (C) 1999-2014 Free Software Foundation, Inc.
12078#
12079# This file is free software; the Free Software Foundation
12080# gives unlimited permission to copy and/or distribute it,
12081# with or without modifications, as long as this notice is preserved.
12082
12083# _AM_PROG_CC_C_O
12084# ---------------
12085# Like AC_PROG_CC_C_O, but changed for automake.  We rewrite AC_PROG_CC
12086# to automatically call this.
12087AC_DEFUN([_AM_PROG_CC_C_O],
12088[AC_REQUIRE([AM_AUX_DIR_EXPAND])dnl
12089AC_REQUIRE_AUX_FILE([compile])dnl
12090AC_LANG_PUSH([C])dnl
12091AC_CACHE_CHECK(
12092  [whether $CC understands -c and -o together],
12093  [am_cv_prog_cc_c_o],
12094  [AC_LANG_CONFTEST([AC_LANG_PROGRAM([])])
12095  # Make sure it works both with $CC and with simple cc.
12096  # Following AC_PROG_CC_C_O, we do the test twice because some
12097  # compilers refuse to overwrite an existing .o file with -o,
12098  # though they will create one.
12099  am_cv_prog_cc_c_o=yes
12100  for am_i in 1 2; do
12101    if AM_RUN_LOG([$CC -c conftest.$ac_ext -o conftest2.$ac_objext]) \
12102         && test -f conftest2.$ac_objext; then
12103      : OK
12104    else
12105      am_cv_prog_cc_c_o=no
12106      break
12107    fi
12108  done
12109  rm -f core conftest*
12110  unset am_i])
12111if test "$am_cv_prog_cc_c_o" != yes; then
12112   # Losing compiler, so override with the script.
12113   # FIXME: It is wrong to rewrite CC.
12114   # But if we don't then we get into trouble of one sort or another.
12115   # A longer-term fix would be to have automake use am__CC in this case,
12116   # and then we could set am__CC="\$(top_srcdir)/compile \$(CC)"
12117   CC="$am_aux_dir/compile $CC"
12118fi
12119AC_LANG_POP([C])])
12120
12121# For backward compatibility.
12122AC_DEFUN_ONCE([AM_PROG_CC_C_O], [AC_REQUIRE([AC_PROG_CC])])
12123
12124# Copyright (C) 2001-2014 Free Software Foundation, Inc.
12125#
12126# This file is free software; the Free Software Foundation
12127# gives unlimited permission to copy and/or distribute it,
12128# with or without modifications, as long as this notice is preserved.
12129
12130# AM_RUN_LOG(COMMAND)
12131# -------------------
12132# Run COMMAND, save the exit status in ac_status, and log it.
12133# (This has been adapted from Autoconf's _AC_RUN_LOG macro.)
12134AC_DEFUN([AM_RUN_LOG],
12135[{ echo "$as_me:$LINENO: $1" >&AS_MESSAGE_LOG_FD
12136   ($1) >&AS_MESSAGE_LOG_FD 2>&AS_MESSAGE_LOG_FD
12137   ac_status=$?
12138   echo "$as_me:$LINENO: \$? = $ac_status" >&AS_MESSAGE_LOG_FD
12139   (exit $ac_status); }])
12140
12141# Check to make sure that the build environment is sane.    -*- Autoconf -*-
12142
12143# Copyright (C) 1996-2014 Free Software Foundation, Inc.
12144#
12145# This file is free software; the Free Software Foundation
12146# gives unlimited permission to copy and/or distribute it,
12147# with or without modifications, as long as this notice is preserved.
12148
12149# AM_SANITY_CHECK
12150# ---------------
12151AC_DEFUN([AM_SANITY_CHECK],
12152[AC_MSG_CHECKING([whether build environment is sane])
12153# Reject unsafe characters in $srcdir or the absolute working directory
12154# name.  Accept space and tab only in the latter.
12155am_lf='
12156'
12157case `pwd` in
12158  *[[\\\"\#\$\&\'\`$am_lf]]*)
12159    AC_MSG_ERROR([unsafe absolute working directory name]);;
12160esac
12161case $srcdir in
12162  *[[\\\"\#\$\&\'\`$am_lf\ \	]]*)
12163    AC_MSG_ERROR([unsafe srcdir value: '$srcdir']);;
12164esac
12165
12166# Do 'set' in a subshell so we don't clobber the current shell's
12167# arguments.  Must try -L first in case configure is actually a
12168# symlink; some systems play weird games with the mod time of symlinks
12169# (eg FreeBSD returns the mod time of the symlink's containing
12170# directory).
12171if (
12172   am_has_slept=no
12173   for am_try in 1 2; do
12174     echo "timestamp, slept: $am_has_slept" > conftest.file
12175     set X `ls -Lt "$srcdir/configure" conftest.file 2> /dev/null`
12176     if test "$[*]" = "X"; then
12177	# -L didn't work.
12178	set X `ls -t "$srcdir/configure" conftest.file`
12179     fi
12180     if test "$[*]" != "X $srcdir/configure conftest.file" \
12181	&& test "$[*]" != "X conftest.file $srcdir/configure"; then
12182
12183	# If neither matched, then we have a broken ls.  This can happen
12184	# if, for instance, CONFIG_SHELL is bash and it inherits a
12185	# broken ls alias from the environment.  This has actually
12186	# happened.  Such a system could not be considered "sane".
12187	AC_MSG_ERROR([ls -t appears to fail.  Make sure there is not a broken
12188  alias in your environment])
12189     fi
12190     if test "$[2]" = conftest.file || test $am_try -eq 2; then
12191       break
12192     fi
12193     # Just in case.
12194     sleep 1
12195     am_has_slept=yes
12196   done
12197   test "$[2]" = conftest.file
12198   )
12199then
12200   # Ok.
12201   :
12202else
12203   AC_MSG_ERROR([newly created file is older than distributed files!
12204Check your system clock])
12205fi
12206AC_MSG_RESULT([yes])
12207# If we didn't sleep, we still need to ensure time stamps of config.status and
12208# generated files are strictly newer.
12209am_sleep_pid=
12210if grep 'slept: no' conftest.file >/dev/null 2>&1; then
12211  ( sleep 1 ) &
12212  am_sleep_pid=$!
12213fi
12214AC_CONFIG_COMMANDS_PRE(
12215  [AC_MSG_CHECKING([that generated files are newer than configure])
12216   if test -n "$am_sleep_pid"; then
12217     # Hide warnings about reused PIDs.
12218     wait $am_sleep_pid 2>/dev/null
12219   fi
12220   AC_MSG_RESULT([done])])
12221rm -f conftest.file
12222])
12223
12224# Copyright (C) 2009-2014 Free Software Foundation, Inc.
12225#
12226# This file is free software; the Free Software Foundation
12227# gives unlimited permission to copy and/or distribute it,
12228# with or without modifications, as long as this notice is preserved.
12229
12230# AM_SILENT_RULES([DEFAULT])
12231# --------------------------
12232# Enable less verbose build rules; with the default set to DEFAULT
12233# ("yes" being less verbose, "no" or empty being verbose).
12234AC_DEFUN([AM_SILENT_RULES],
12235[AC_ARG_ENABLE([silent-rules], [dnl
12236AS_HELP_STRING(
12237  [--enable-silent-rules],
12238  [less verbose build output (undo: "make V=1")])
12239AS_HELP_STRING(
12240  [--disable-silent-rules],
12241  [verbose build output (undo: "make V=0")])dnl
12242])
12243case $enable_silent_rules in @%:@ (((
12244  yes) AM_DEFAULT_VERBOSITY=0;;
12245   no) AM_DEFAULT_VERBOSITY=1;;
12246    *) AM_DEFAULT_VERBOSITY=m4_if([$1], [yes], [0], [1]);;
12247esac
12248dnl
12249dnl A few 'make' implementations (e.g., NonStop OS and NextStep)
12250dnl do not support nested variable expansions.
12251dnl See automake bug#9928 and bug#10237.
12252am_make=${MAKE-make}
12253AC_CACHE_CHECK([whether $am_make supports nested variables],
12254   [am_cv_make_support_nested_variables],
12255   [if AS_ECHO([['TRUE=$(BAR$(V))
12256BAR0=false
12257BAR1=true
12258V=1
12259am__doit:
12260	@$(TRUE)
12261.PHONY: am__doit']]) | $am_make -f - >/dev/null 2>&1; then
12262  am_cv_make_support_nested_variables=yes
12263else
12264  am_cv_make_support_nested_variables=no
12265fi])
12266if test $am_cv_make_support_nested_variables = yes; then
12267  dnl Using '$V' instead of '$(V)' breaks IRIX make.
12268  AM_V='$(V)'
12269  AM_DEFAULT_V='$(AM_DEFAULT_VERBOSITY)'
12270else
12271  AM_V=$AM_DEFAULT_VERBOSITY
12272  AM_DEFAULT_V=$AM_DEFAULT_VERBOSITY
12273fi
12274AC_SUBST([AM_V])dnl
12275AM_SUBST_NOTMAKE([AM_V])dnl
12276AC_SUBST([AM_DEFAULT_V])dnl
12277AM_SUBST_NOTMAKE([AM_DEFAULT_V])dnl
12278AC_SUBST([AM_DEFAULT_VERBOSITY])dnl
12279AM_BACKSLASH='\'
12280AC_SUBST([AM_BACKSLASH])dnl
12281_AM_SUBST_NOTMAKE([AM_BACKSLASH])dnl
12282])
12283
12284# Copyright (C) 2001-2014 Free Software Foundation, Inc.
12285#
12286# This file is free software; the Free Software Foundation
12287# gives unlimited permission to copy and/or distribute it,
12288# with or without modifications, as long as this notice is preserved.
12289
12290# AM_PROG_INSTALL_STRIP
12291# ---------------------
12292# One issue with vendor 'install' (even GNU) is that you can't
12293# specify the program used to strip binaries.  This is especially
12294# annoying in cross-compiling environments, where the build's strip
12295# is unlikely to handle the host's binaries.
12296# Fortunately install-sh will honor a STRIPPROG variable, so we
12297# always use install-sh in "make install-strip", and initialize
12298# STRIPPROG with the value of the STRIP variable (set by the user).
12299AC_DEFUN([AM_PROG_INSTALL_STRIP],
12300[AC_REQUIRE([AM_PROG_INSTALL_SH])dnl
12301# Installed binaries are usually stripped using 'strip' when the user
12302# run "make install-strip".  However 'strip' might not be the right
12303# tool to use in cross-compilation environments, therefore Automake
12304# will honor the 'STRIP' environment variable to overrule this program.
12305dnl Don't test for $cross_compiling = yes, because it might be 'maybe'.
12306if test "$cross_compiling" != no; then
12307  AC_CHECK_TOOL([STRIP], [strip], :)
12308fi
12309INSTALL_STRIP_PROGRAM="\$(install_sh) -c -s"
12310AC_SUBST([INSTALL_STRIP_PROGRAM])])
12311
12312# Copyright (C) 2006-2014 Free Software Foundation, Inc.
12313#
12314# This file is free software; the Free Software Foundation
12315# gives unlimited permission to copy and/or distribute it,
12316# with or without modifications, as long as this notice is preserved.
12317
12318# _AM_SUBST_NOTMAKE(VARIABLE)
12319# ---------------------------
12320# Prevent Automake from outputting VARIABLE = @VARIABLE@ in Makefile.in.
12321# This macro is traced by Automake.
12322AC_DEFUN([_AM_SUBST_NOTMAKE])
12323
12324# AM_SUBST_NOTMAKE(VARIABLE)
12325# --------------------------
12326# Public sister of _AM_SUBST_NOTMAKE.
12327AC_DEFUN([AM_SUBST_NOTMAKE], [_AM_SUBST_NOTMAKE($@)])
12328
12329# Check how to create a tarball.                            -*- Autoconf -*-
12330
12331# Copyright (C) 2004-2014 Free Software Foundation, Inc.
12332#
12333# This file is free software; the Free Software Foundation
12334# gives unlimited permission to copy and/or distribute it,
12335# with or without modifications, as long as this notice is preserved.
12336
12337# _AM_PROG_TAR(FORMAT)
12338# --------------------
12339# Check how to create a tarball in format FORMAT.
12340# FORMAT should be one of 'v7', 'ustar', or 'pax'.
12341#
12342# Substitute a variable $(am__tar) that is a command
12343# writing to stdout a FORMAT-tarball containing the directory
12344# $tardir.
12345#     tardir=directory && $(am__tar) > result.tar
12346#
12347# Substitute a variable $(am__untar) that extract such
12348# a tarball read from stdin.
12349#     $(am__untar) < result.tar
12350#
12351AC_DEFUN([_AM_PROG_TAR],
12352[# Always define AMTAR for backward compatibility.  Yes, it's still used
12353# in the wild :-(  We should find a proper way to deprecate it ...
12354AC_SUBST([AMTAR], ['$${TAR-tar}'])
12355
12356# We'll loop over all known methods to create a tar archive until one works.
12357_am_tools='gnutar m4_if([$1], [ustar], [plaintar]) pax cpio none'
12358
12359m4_if([$1], [v7],
12360  [am__tar='$${TAR-tar} chof - "$$tardir"' am__untar='$${TAR-tar} xf -'],
12361
12362  [m4_case([$1],
12363    [ustar],
12364     [# The POSIX 1988 'ustar' format is defined with fixed-size fields.
12365      # There is notably a 21 bits limit for the UID and the GID.  In fact,
12366      # the 'pax' utility can hang on bigger UID/GID (see automake bug#8343
12367      # and bug#13588).
12368      am_max_uid=2097151 # 2^21 - 1
12369      am_max_gid=$am_max_uid
12370      # The $UID and $GID variables are not portable, so we need to resort
12371      # to the POSIX-mandated id(1) utility.  Errors in the 'id' calls
12372      # below are definitely unexpected, so allow the users to see them
12373      # (that is, avoid stderr redirection).
12374      am_uid=`id -u || echo unknown`
12375      am_gid=`id -g || echo unknown`
12376      AC_MSG_CHECKING([whether UID '$am_uid' is supported by ustar format])
12377      if test $am_uid -le $am_max_uid; then
12378         AC_MSG_RESULT([yes])
12379      else
12380         AC_MSG_RESULT([no])
12381         _am_tools=none
12382      fi
12383      AC_MSG_CHECKING([whether GID '$am_gid' is supported by ustar format])
12384      if test $am_gid -le $am_max_gid; then
12385         AC_MSG_RESULT([yes])
12386      else
12387        AC_MSG_RESULT([no])
12388        _am_tools=none
12389      fi],
12390
12391  [pax],
12392    [],
12393
12394  [m4_fatal([Unknown tar format])])
12395
12396  AC_MSG_CHECKING([how to create a $1 tar archive])
12397
12398  # Go ahead even if we have the value already cached.  We do so because we
12399  # need to set the values for the 'am__tar' and 'am__untar' variables.
12400  _am_tools=${am_cv_prog_tar_$1-$_am_tools}
12401
12402  for _am_tool in $_am_tools; do
12403    case $_am_tool in
12404    gnutar)
12405      for _am_tar in tar gnutar gtar; do
12406        AM_RUN_LOG([$_am_tar --version]) && break
12407      done
12408      am__tar="$_am_tar --format=m4_if([$1], [pax], [posix], [$1]) -chf - "'"$$tardir"'
12409      am__tar_="$_am_tar --format=m4_if([$1], [pax], [posix], [$1]) -chf - "'"$tardir"'
12410      am__untar="$_am_tar -xf -"
12411      ;;
12412    plaintar)
12413      # Must skip GNU tar: if it does not support --format= it doesn't create
12414      # ustar tarball either.
12415      (tar --version) >/dev/null 2>&1 && continue
12416      am__tar='tar chf - "$$tardir"'
12417      am__tar_='tar chf - "$tardir"'
12418      am__untar='tar xf -'
12419      ;;
12420    pax)
12421      am__tar='pax -L -x $1 -w "$$tardir"'
12422      am__tar_='pax -L -x $1 -w "$tardir"'
12423      am__untar='pax -r'
12424      ;;
12425    cpio)
12426      am__tar='find "$$tardir" -print | cpio -o -H $1 -L'
12427      am__tar_='find "$tardir" -print | cpio -o -H $1 -L'
12428      am__untar='cpio -i -H $1 -d'
12429      ;;
12430    none)
12431      am__tar=false
12432      am__tar_=false
12433      am__untar=false
12434      ;;
12435    esac
12436
12437    # If the value was cached, stop now.  We just wanted to have am__tar
12438    # and am__untar set.
12439    test -n "${am_cv_prog_tar_$1}" && break
12440
12441    # tar/untar a dummy directory, and stop if the command works.
12442    rm -rf conftest.dir
12443    mkdir conftest.dir
12444    echo GrepMe > conftest.dir/file
12445    AM_RUN_LOG([tardir=conftest.dir && eval $am__tar_ >conftest.tar])
12446    rm -rf conftest.dir
12447    if test -s conftest.tar; then
12448      AM_RUN_LOG([$am__untar <conftest.tar])
12449      AM_RUN_LOG([cat conftest.dir/file])
12450      grep GrepMe conftest.dir/file >/dev/null 2>&1 && break
12451    fi
12452  done
12453  rm -rf conftest.dir
12454
12455  AC_CACHE_VAL([am_cv_prog_tar_$1], [am_cv_prog_tar_$1=$_am_tool])
12456  AC_MSG_RESULT([$am_cv_prog_tar_$1])])
12457
12458AC_SUBST([am__tar])
12459AC_SUBST([am__untar])
12460]) # _AM_PROG_TAR
12461
12462