aclocal.m4 revision 74fcc364
1# generated automatically by aclocal 1.15.1 -*- Autoconf -*-
2
3# Copyright (C) 1996-2017 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# NOTE: Changes made to this file will be lost: look at ltmain.sh.
748
749# Provide generalized library-building support services.
750# Written by Gordon Matzigkeit, 1996
751
752_LT_COPYING
753_LT_LIBTOOL_TAGS
754
755# Configured defaults for sys_lib_dlsearch_path munging.
756: \${LT_SYS_LIBRARY_PATH="$configure_time_lt_sys_library_path"}
757
758# ### BEGIN LIBTOOL CONFIG
759_LT_LIBTOOL_CONFIG_VARS
760_LT_LIBTOOL_TAG_VARS
761# ### END LIBTOOL CONFIG
762
763_LT_EOF
764
765    cat <<'_LT_EOF' >> "$cfgfile"
766
767# ### BEGIN FUNCTIONS SHARED WITH CONFIGURE
768
769_LT_PREPARE_MUNGE_PATH_LIST
770_LT_PREPARE_CC_BASENAME
771
772# ### END FUNCTIONS SHARED WITH CONFIGURE
773
774_LT_EOF
775
776  case $host_os in
777  aix3*)
778    cat <<\_LT_EOF >> "$cfgfile"
779# AIX sometimes has problems with the GCC collect2 program.  For some
780# reason, if we set the COLLECT_NAMES environment variable, the problems
781# vanish in a puff of smoke.
782if test set != "${COLLECT_NAMES+set}"; then
783  COLLECT_NAMES=
784  export COLLECT_NAMES
785fi
786_LT_EOF
787    ;;
788  esac
789
790  _LT_PROG_LTMAIN
791
792  # We use sed instead of cat because bash on DJGPP gets confused if
793  # if finds mixed CR/LF and LF-only lines.  Since sed operates in
794  # text mode, it properly converts lines to CR/LF.  This bash problem
795  # is reportedly fixed, but why not run on old versions too?
796  sed '$q' "$ltmain" >> "$cfgfile" \
797     || (rm -f "$cfgfile"; exit 1)
798
799   mv -f "$cfgfile" "$ofile" ||
800    (rm -f "$ofile" && cp "$cfgfile" "$ofile" && rm -f "$cfgfile")
801  chmod +x "$ofile"
802],
803[cat <<_LT_EOF >> "$ofile"
804
805dnl Unfortunately we have to use $1 here, since _LT_TAG is not expanded
806dnl in a comment (ie after a #).
807# ### BEGIN LIBTOOL TAG CONFIG: $1
808_LT_LIBTOOL_TAG_VARS(_LT_TAG)
809# ### END LIBTOOL TAG CONFIG: $1
810_LT_EOF
811])dnl /m4_if
812],
813[m4_if([$1], [], [
814    PACKAGE='$PACKAGE'
815    VERSION='$VERSION'
816    RM='$RM'
817    ofile='$ofile'], [])
818])dnl /_LT_CONFIG_SAVE_COMMANDS
819])# _LT_CONFIG
820
821
822# LT_SUPPORTED_TAG(TAG)
823# ---------------------
824# Trace this macro to discover what tags are supported by the libtool
825# --tag option, using:
826#    autoconf --trace 'LT_SUPPORTED_TAG:$1'
827AC_DEFUN([LT_SUPPORTED_TAG], [])
828
829
830# C support is built-in for now
831m4_define([_LT_LANG_C_enabled], [])
832m4_define([_LT_TAGS], [])
833
834
835# LT_LANG(LANG)
836# -------------
837# Enable libtool support for the given language if not already enabled.
838AC_DEFUN([LT_LANG],
839[AC_BEFORE([$0], [LT_OUTPUT])dnl
840m4_case([$1],
841  [C],			[_LT_LANG(C)],
842  [C++],		[_LT_LANG(CXX)],
843  [Go],			[_LT_LANG(GO)],
844  [Java],		[_LT_LANG(GCJ)],
845  [Fortran 77],		[_LT_LANG(F77)],
846  [Fortran],		[_LT_LANG(FC)],
847  [Windows Resource],	[_LT_LANG(RC)],
848  [m4_ifdef([_LT_LANG_]$1[_CONFIG],
849    [_LT_LANG($1)],
850    [m4_fatal([$0: unsupported language: "$1"])])])dnl
851])# LT_LANG
852
853
854# _LT_LANG(LANGNAME)
855# ------------------
856m4_defun([_LT_LANG],
857[m4_ifdef([_LT_LANG_]$1[_enabled], [],
858  [LT_SUPPORTED_TAG([$1])dnl
859  m4_append([_LT_TAGS], [$1 ])dnl
860  m4_define([_LT_LANG_]$1[_enabled], [])dnl
861  _LT_LANG_$1_CONFIG($1)])dnl
862])# _LT_LANG
863
864
865m4_ifndef([AC_PROG_GO], [
866# NOTE: This macro has been submitted for inclusion into   #
867#  GNU Autoconf as AC_PROG_GO.  When it is available in    #
868#  a released version of Autoconf we should remove this    #
869#  macro and use it instead.                               #
870m4_defun([AC_PROG_GO],
871[AC_LANG_PUSH(Go)dnl
872AC_ARG_VAR([GOC],     [Go compiler command])dnl
873AC_ARG_VAR([GOFLAGS], [Go compiler flags])dnl
874_AC_ARG_VAR_LDFLAGS()dnl
875AC_CHECK_TOOL(GOC, gccgo)
876if test -z "$GOC"; then
877  if test -n "$ac_tool_prefix"; then
878    AC_CHECK_PROG(GOC, [${ac_tool_prefix}gccgo], [${ac_tool_prefix}gccgo])
879  fi
880fi
881if test -z "$GOC"; then
882  AC_CHECK_PROG(GOC, gccgo, gccgo, false)
883fi
884])#m4_defun
885])#m4_ifndef
886
887
888# _LT_LANG_DEFAULT_CONFIG
889# -----------------------
890m4_defun([_LT_LANG_DEFAULT_CONFIG],
891[AC_PROVIDE_IFELSE([AC_PROG_CXX],
892  [LT_LANG(CXX)],
893  [m4_define([AC_PROG_CXX], defn([AC_PROG_CXX])[LT_LANG(CXX)])])
894
895AC_PROVIDE_IFELSE([AC_PROG_F77],
896  [LT_LANG(F77)],
897  [m4_define([AC_PROG_F77], defn([AC_PROG_F77])[LT_LANG(F77)])])
898
899AC_PROVIDE_IFELSE([AC_PROG_FC],
900  [LT_LANG(FC)],
901  [m4_define([AC_PROG_FC], defn([AC_PROG_FC])[LT_LANG(FC)])])
902
903dnl The call to [A][M_PROG_GCJ] is quoted like that to stop aclocal
904dnl pulling things in needlessly.
905AC_PROVIDE_IFELSE([AC_PROG_GCJ],
906  [LT_LANG(GCJ)],
907  [AC_PROVIDE_IFELSE([A][M_PROG_GCJ],
908    [LT_LANG(GCJ)],
909    [AC_PROVIDE_IFELSE([LT_PROG_GCJ],
910      [LT_LANG(GCJ)],
911      [m4_ifdef([AC_PROG_GCJ],
912	[m4_define([AC_PROG_GCJ], defn([AC_PROG_GCJ])[LT_LANG(GCJ)])])
913       m4_ifdef([A][M_PROG_GCJ],
914	[m4_define([A][M_PROG_GCJ], defn([A][M_PROG_GCJ])[LT_LANG(GCJ)])])
915       m4_ifdef([LT_PROG_GCJ],
916	[m4_define([LT_PROG_GCJ], defn([LT_PROG_GCJ])[LT_LANG(GCJ)])])])])])
917
918AC_PROVIDE_IFELSE([AC_PROG_GO],
919  [LT_LANG(GO)],
920  [m4_define([AC_PROG_GO], defn([AC_PROG_GO])[LT_LANG(GO)])])
921
922AC_PROVIDE_IFELSE([LT_PROG_RC],
923  [LT_LANG(RC)],
924  [m4_define([LT_PROG_RC], defn([LT_PROG_RC])[LT_LANG(RC)])])
925])# _LT_LANG_DEFAULT_CONFIG
926
927# Obsolete macros:
928AU_DEFUN([AC_LIBTOOL_CXX], [LT_LANG(C++)])
929AU_DEFUN([AC_LIBTOOL_F77], [LT_LANG(Fortran 77)])
930AU_DEFUN([AC_LIBTOOL_FC], [LT_LANG(Fortran)])
931AU_DEFUN([AC_LIBTOOL_GCJ], [LT_LANG(Java)])
932AU_DEFUN([AC_LIBTOOL_RC], [LT_LANG(Windows Resource)])
933dnl aclocal-1.4 backwards compatibility:
934dnl AC_DEFUN([AC_LIBTOOL_CXX], [])
935dnl AC_DEFUN([AC_LIBTOOL_F77], [])
936dnl AC_DEFUN([AC_LIBTOOL_FC], [])
937dnl AC_DEFUN([AC_LIBTOOL_GCJ], [])
938dnl AC_DEFUN([AC_LIBTOOL_RC], [])
939
940
941# _LT_TAG_COMPILER
942# ----------------
943m4_defun([_LT_TAG_COMPILER],
944[AC_REQUIRE([AC_PROG_CC])dnl
945
946_LT_DECL([LTCC], [CC], [1], [A C compiler])dnl
947_LT_DECL([LTCFLAGS], [CFLAGS], [1], [LTCC compiler flags])dnl
948_LT_TAGDECL([CC], [compiler], [1], [A language specific compiler])dnl
949_LT_TAGDECL([with_gcc], [GCC], [0], [Is the compiler the GNU compiler?])dnl
950
951# If no C compiler was specified, use CC.
952LTCC=${LTCC-"$CC"}
953
954# If no C compiler flags were specified, use CFLAGS.
955LTCFLAGS=${LTCFLAGS-"$CFLAGS"}
956
957# Allow CC to be a program name with arguments.
958compiler=$CC
959])# _LT_TAG_COMPILER
960
961
962# _LT_COMPILER_BOILERPLATE
963# ------------------------
964# Check for compiler boilerplate output or warnings with
965# the simple compiler test code.
966m4_defun([_LT_COMPILER_BOILERPLATE],
967[m4_require([_LT_DECL_SED])dnl
968ac_outfile=conftest.$ac_objext
969echo "$lt_simple_compile_test_code" >conftest.$ac_ext
970eval "$ac_compile" 2>&1 >/dev/null | $SED '/^$/d; /^ *+/d' >conftest.err
971_lt_compiler_boilerplate=`cat conftest.err`
972$RM conftest*
973])# _LT_COMPILER_BOILERPLATE
974
975
976# _LT_LINKER_BOILERPLATE
977# ----------------------
978# Check for linker boilerplate output or warnings with
979# the simple link test code.
980m4_defun([_LT_LINKER_BOILERPLATE],
981[m4_require([_LT_DECL_SED])dnl
982ac_outfile=conftest.$ac_objext
983echo "$lt_simple_link_test_code" >conftest.$ac_ext
984eval "$ac_link" 2>&1 >/dev/null | $SED '/^$/d; /^ *+/d' >conftest.err
985_lt_linker_boilerplate=`cat conftest.err`
986$RM -r conftest*
987])# _LT_LINKER_BOILERPLATE
988
989# _LT_REQUIRED_DARWIN_CHECKS
990# -------------------------
991m4_defun_once([_LT_REQUIRED_DARWIN_CHECKS],[
992  case $host_os in
993    rhapsody* | darwin*)
994    AC_CHECK_TOOL([DSYMUTIL], [dsymutil], [:])
995    AC_CHECK_TOOL([NMEDIT], [nmedit], [:])
996    AC_CHECK_TOOL([LIPO], [lipo], [:])
997    AC_CHECK_TOOL([OTOOL], [otool], [:])
998    AC_CHECK_TOOL([OTOOL64], [otool64], [:])
999    _LT_DECL([], [DSYMUTIL], [1],
1000      [Tool to manipulate archived DWARF debug symbol files on Mac OS X])
1001    _LT_DECL([], [NMEDIT], [1],
1002      [Tool to change global to local symbols on Mac OS X])
1003    _LT_DECL([], [LIPO], [1],
1004      [Tool to manipulate fat objects and archives on Mac OS X])
1005    _LT_DECL([], [OTOOL], [1],
1006      [ldd/readelf like tool for Mach-O binaries on Mac OS X])
1007    _LT_DECL([], [OTOOL64], [1],
1008      [ldd/readelf like tool for 64 bit Mach-O binaries on Mac OS X 10.4])
1009
1010    AC_CACHE_CHECK([for -single_module linker flag],[lt_cv_apple_cc_single_mod],
1011      [lt_cv_apple_cc_single_mod=no
1012      if test -z "$LT_MULTI_MODULE"; then
1013	# By default we will add the -single_module flag. You can override
1014	# by either setting the environment variable LT_MULTI_MODULE
1015	# non-empty at configure time, or by adding -multi_module to the
1016	# link flags.
1017	rm -rf libconftest.dylib*
1018	echo "int foo(void){return 1;}" > conftest.c
1019	echo "$LTCC $LTCFLAGS $LDFLAGS -o libconftest.dylib \
1020-dynamiclib -Wl,-single_module conftest.c" >&AS_MESSAGE_LOG_FD
1021	$LTCC $LTCFLAGS $LDFLAGS -o libconftest.dylib \
1022	  -dynamiclib -Wl,-single_module conftest.c 2>conftest.err
1023        _lt_result=$?
1024	# If there is a non-empty error log, and "single_module"
1025	# appears in it, assume the flag caused a linker warning
1026        if test -s conftest.err && $GREP single_module conftest.err; then
1027	  cat conftest.err >&AS_MESSAGE_LOG_FD
1028	# Otherwise, if the output was created with a 0 exit code from
1029	# the compiler, it worked.
1030	elif test -f libconftest.dylib && test 0 = "$_lt_result"; then
1031	  lt_cv_apple_cc_single_mod=yes
1032	else
1033	  cat conftest.err >&AS_MESSAGE_LOG_FD
1034	fi
1035	rm -rf libconftest.dylib*
1036	rm -f conftest.*
1037      fi])
1038
1039    AC_CACHE_CHECK([for -exported_symbols_list linker flag],
1040      [lt_cv_ld_exported_symbols_list],
1041      [lt_cv_ld_exported_symbols_list=no
1042      save_LDFLAGS=$LDFLAGS
1043      echo "_main" > conftest.sym
1044      LDFLAGS="$LDFLAGS -Wl,-exported_symbols_list,conftest.sym"
1045      AC_LINK_IFELSE([AC_LANG_PROGRAM([],[])],
1046	[lt_cv_ld_exported_symbols_list=yes],
1047	[lt_cv_ld_exported_symbols_list=no])
1048	LDFLAGS=$save_LDFLAGS
1049    ])
1050
1051    AC_CACHE_CHECK([for -force_load linker flag],[lt_cv_ld_force_load],
1052      [lt_cv_ld_force_load=no
1053      cat > conftest.c << _LT_EOF
1054int forced_loaded() { return 2;}
1055_LT_EOF
1056      echo "$LTCC $LTCFLAGS -c -o conftest.o conftest.c" >&AS_MESSAGE_LOG_FD
1057      $LTCC $LTCFLAGS -c -o conftest.o conftest.c 2>&AS_MESSAGE_LOG_FD
1058      echo "$AR cru libconftest.a conftest.o" >&AS_MESSAGE_LOG_FD
1059      $AR cru libconftest.a conftest.o 2>&AS_MESSAGE_LOG_FD
1060      echo "$RANLIB libconftest.a" >&AS_MESSAGE_LOG_FD
1061      $RANLIB libconftest.a 2>&AS_MESSAGE_LOG_FD
1062      cat > conftest.c << _LT_EOF
1063int main() { return 0;}
1064_LT_EOF
1065      echo "$LTCC $LTCFLAGS $LDFLAGS -o conftest conftest.c -Wl,-force_load,./libconftest.a" >&AS_MESSAGE_LOG_FD
1066      $LTCC $LTCFLAGS $LDFLAGS -o conftest conftest.c -Wl,-force_load,./libconftest.a 2>conftest.err
1067      _lt_result=$?
1068      if test -s conftest.err && $GREP force_load conftest.err; then
1069	cat conftest.err >&AS_MESSAGE_LOG_FD
1070      elif test -f conftest && test 0 = "$_lt_result" && $GREP forced_load conftest >/dev/null 2>&1; then
1071	lt_cv_ld_force_load=yes
1072      else
1073	cat conftest.err >&AS_MESSAGE_LOG_FD
1074      fi
1075        rm -f conftest.err libconftest.a conftest conftest.c
1076        rm -rf conftest.dSYM
1077    ])
1078    case $host_os in
1079    rhapsody* | darwin1.[[012]])
1080      _lt_dar_allow_undefined='$wl-undefined ${wl}suppress' ;;
1081    darwin1.*)
1082      _lt_dar_allow_undefined='$wl-flat_namespace $wl-undefined ${wl}suppress' ;;
1083    darwin*) # darwin 5.x on
1084      # if running on 10.5 or later, the deployment target defaults
1085      # to the OS version, if on x86, and 10.4, the deployment
1086      # target defaults to 10.4. Don't you love it?
1087      case ${MACOSX_DEPLOYMENT_TARGET-10.0},$host in
1088	10.0,*86*-darwin8*|10.0,*-darwin[[91]]*)
1089	  _lt_dar_allow_undefined='$wl-undefined ${wl}dynamic_lookup' ;;
1090	10.[[012]][[,.]]*)
1091	  _lt_dar_allow_undefined='$wl-flat_namespace $wl-undefined ${wl}suppress' ;;
1092	10.*)
1093	  _lt_dar_allow_undefined='$wl-undefined ${wl}dynamic_lookup' ;;
1094      esac
1095    ;;
1096  esac
1097    if test yes = "$lt_cv_apple_cc_single_mod"; then
1098      _lt_dar_single_mod='$single_module'
1099    fi
1100    if test yes = "$lt_cv_ld_exported_symbols_list"; then
1101      _lt_dar_export_syms=' $wl-exported_symbols_list,$output_objdir/$libname-symbols.expsym'
1102    else
1103      _lt_dar_export_syms='~$NMEDIT -s $output_objdir/$libname-symbols.expsym $lib'
1104    fi
1105    if test : != "$DSYMUTIL" && test no = "$lt_cv_ld_force_load"; then
1106      _lt_dsymutil='~$DSYMUTIL $lib || :'
1107    else
1108      _lt_dsymutil=
1109    fi
1110    ;;
1111  esac
1112])
1113
1114
1115# _LT_DARWIN_LINKER_FEATURES([TAG])
1116# ---------------------------------
1117# Checks for linker and compiler features on darwin
1118m4_defun([_LT_DARWIN_LINKER_FEATURES],
1119[
1120  m4_require([_LT_REQUIRED_DARWIN_CHECKS])
1121  _LT_TAGVAR(archive_cmds_need_lc, $1)=no
1122  _LT_TAGVAR(hardcode_direct, $1)=no
1123  _LT_TAGVAR(hardcode_automatic, $1)=yes
1124  _LT_TAGVAR(hardcode_shlibpath_var, $1)=unsupported
1125  if test yes = "$lt_cv_ld_force_load"; then
1126    _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\"`'
1127    m4_case([$1], [F77], [_LT_TAGVAR(compiler_needs_object, $1)=yes],
1128                  [FC],  [_LT_TAGVAR(compiler_needs_object, $1)=yes])
1129  else
1130    _LT_TAGVAR(whole_archive_flag_spec, $1)=''
1131  fi
1132  _LT_TAGVAR(link_all_deplibs, $1)=yes
1133  _LT_TAGVAR(allow_undefined_flag, $1)=$_lt_dar_allow_undefined
1134  case $cc_basename in
1135     ifort*|nagfor*) _lt_dar_can_shared=yes ;;
1136     *) _lt_dar_can_shared=$GCC ;;
1137  esac
1138  if test yes = "$_lt_dar_can_shared"; then
1139    output_verbose_link_cmd=func_echo_all
1140    _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"
1141    _LT_TAGVAR(module_cmds, $1)="\$CC \$allow_undefined_flag -o \$lib -bundle \$libobjs \$deplibs \$compiler_flags$_lt_dsymutil"
1142    _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"
1143    _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"
1144    m4_if([$1], [CXX],
1145[   if test yes != "$lt_cv_apple_cc_single_mod"; then
1146      _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"
1147      _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"
1148    fi
1149],[])
1150  else
1151  _LT_TAGVAR(ld_shlibs, $1)=no
1152  fi
1153])
1154
1155# _LT_SYS_MODULE_PATH_AIX([TAGNAME])
1156# ----------------------------------
1157# Links a minimal program and checks the executable
1158# for the system default hardcoded library path. In most cases,
1159# this is /usr/lib:/lib, but when the MPI compilers are used
1160# the location of the communication and MPI libs are included too.
1161# If we don't find anything, use the default library path according
1162# to the aix ld manual.
1163# Store the results from the different compilers for each TAGNAME.
1164# Allow to override them for all tags through lt_cv_aix_libpath.
1165m4_defun([_LT_SYS_MODULE_PATH_AIX],
1166[m4_require([_LT_DECL_SED])dnl
1167if test set = "${lt_cv_aix_libpath+set}"; then
1168  aix_libpath=$lt_cv_aix_libpath
1169else
1170  AC_CACHE_VAL([_LT_TAGVAR([lt_cv_aix_libpath_], [$1])],
1171  [AC_LINK_IFELSE([AC_LANG_PROGRAM],[
1172  lt_aix_libpath_sed='[
1173      /Import File Strings/,/^$/ {
1174	  /^0/ {
1175	      s/^0  *\([^ ]*\) *$/\1/
1176	      p
1177	  }
1178      }]'
1179  _LT_TAGVAR([lt_cv_aix_libpath_], [$1])=`dump -H conftest$ac_exeext 2>/dev/null | $SED -n -e "$lt_aix_libpath_sed"`
1180  # Check for a 64-bit object if we didn't find anything.
1181  if test -z "$_LT_TAGVAR([lt_cv_aix_libpath_], [$1])"; then
1182    _LT_TAGVAR([lt_cv_aix_libpath_], [$1])=`dump -HX64 conftest$ac_exeext 2>/dev/null | $SED -n -e "$lt_aix_libpath_sed"`
1183  fi],[])
1184  if test -z "$_LT_TAGVAR([lt_cv_aix_libpath_], [$1])"; then
1185    _LT_TAGVAR([lt_cv_aix_libpath_], [$1])=/usr/lib:/lib
1186  fi
1187  ])
1188  aix_libpath=$_LT_TAGVAR([lt_cv_aix_libpath_], [$1])
1189fi
1190])# _LT_SYS_MODULE_PATH_AIX
1191
1192
1193# _LT_SHELL_INIT(ARG)
1194# -------------------
1195m4_define([_LT_SHELL_INIT],
1196[m4_divert_text([M4SH-INIT], [$1
1197])])# _LT_SHELL_INIT
1198
1199
1200
1201# _LT_PROG_ECHO_BACKSLASH
1202# -----------------------
1203# Find how we can fake an echo command that does not interpret backslash.
1204# In particular, with Autoconf 2.60 or later we add some code to the start
1205# of the generated configure script that will find a shell with a builtin
1206# printf (that we can use as an echo command).
1207m4_defun([_LT_PROG_ECHO_BACKSLASH],
1208[ECHO='\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\'
1209ECHO=$ECHO$ECHO$ECHO$ECHO$ECHO
1210ECHO=$ECHO$ECHO$ECHO$ECHO$ECHO$ECHO
1211
1212AC_MSG_CHECKING([how to print strings])
1213# Test print first, because it will be a builtin if present.
1214if test "X`( print -r -- -n ) 2>/dev/null`" = X-n && \
1215   test "X`print -r -- $ECHO 2>/dev/null`" = "X$ECHO"; then
1216  ECHO='print -r --'
1217elif test "X`printf %s $ECHO 2>/dev/null`" = "X$ECHO"; then
1218  ECHO='printf %s\n'
1219else
1220  # Use this function as a fallback that always works.
1221  func_fallback_echo ()
1222  {
1223    eval 'cat <<_LTECHO_EOF
1224$[]1
1225_LTECHO_EOF'
1226  }
1227  ECHO='func_fallback_echo'
1228fi
1229
1230# func_echo_all arg...
1231# Invoke $ECHO with all args, space-separated.
1232func_echo_all ()
1233{
1234    $ECHO "$*"
1235}
1236
1237case $ECHO in
1238  printf*) AC_MSG_RESULT([printf]) ;;
1239  print*) AC_MSG_RESULT([print -r]) ;;
1240  *) AC_MSG_RESULT([cat]) ;;
1241esac
1242
1243m4_ifdef([_AS_DETECT_SUGGESTED],
1244[_AS_DETECT_SUGGESTED([
1245  test -n "${ZSH_VERSION+set}${BASH_VERSION+set}" || (
1246    ECHO='\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\'
1247    ECHO=$ECHO$ECHO$ECHO$ECHO$ECHO
1248    ECHO=$ECHO$ECHO$ECHO$ECHO$ECHO$ECHO
1249    PATH=/empty FPATH=/empty; export PATH FPATH
1250    test "X`printf %s $ECHO`" = "X$ECHO" \
1251      || test "X`print -r -- $ECHO`" = "X$ECHO" )])])
1252
1253_LT_DECL([], [SHELL], [1], [Shell to use when invoking shell scripts])
1254_LT_DECL([], [ECHO], [1], [An echo program that protects backslashes])
1255])# _LT_PROG_ECHO_BACKSLASH
1256
1257
1258# _LT_WITH_SYSROOT
1259# ----------------
1260AC_DEFUN([_LT_WITH_SYSROOT],
1261[AC_MSG_CHECKING([for sysroot])
1262AC_ARG_WITH([sysroot],
1263[AS_HELP_STRING([--with-sysroot@<:@=DIR@:>@],
1264  [Search for dependent libraries within DIR (or the compiler's sysroot
1265   if not specified).])],
1266[], [with_sysroot=no])
1267
1268dnl lt_sysroot will always be passed unquoted.  We quote it here
1269dnl in case the user passed a directory name.
1270lt_sysroot=
1271case $with_sysroot in #(
1272 yes)
1273   if test yes = "$GCC"; then
1274     lt_sysroot=`$CC --print-sysroot 2>/dev/null`
1275   fi
1276   ;; #(
1277 /*)
1278   lt_sysroot=`echo "$with_sysroot" | sed -e "$sed_quote_subst"`
1279   ;; #(
1280 no|'')
1281   ;; #(
1282 *)
1283   AC_MSG_RESULT([$with_sysroot])
1284   AC_MSG_ERROR([The sysroot must be an absolute path.])
1285   ;;
1286esac
1287
1288 AC_MSG_RESULT([${lt_sysroot:-no}])
1289_LT_DECL([], [lt_sysroot], [0], [The root where to search for ]dnl
1290[dependent libraries, and where our libraries should be installed.])])
1291
1292# _LT_ENABLE_LOCK
1293# ---------------
1294m4_defun([_LT_ENABLE_LOCK],
1295[AC_ARG_ENABLE([libtool-lock],
1296  [AS_HELP_STRING([--disable-libtool-lock],
1297    [avoid locking (might break parallel builds)])])
1298test no = "$enable_libtool_lock" || enable_libtool_lock=yes
1299
1300# Some flags need to be propagated to the compiler or linker for good
1301# libtool support.
1302case $host in
1303ia64-*-hpux*)
1304  # Find out what ABI is being produced by ac_compile, and set mode
1305  # options accordingly.
1306  echo 'int i;' > conftest.$ac_ext
1307  if AC_TRY_EVAL(ac_compile); then
1308    case `/usr/bin/file conftest.$ac_objext` in
1309      *ELF-32*)
1310	HPUX_IA64_MODE=32
1311	;;
1312      *ELF-64*)
1313	HPUX_IA64_MODE=64
1314	;;
1315    esac
1316  fi
1317  rm -rf conftest*
1318  ;;
1319*-*-irix6*)
1320  # Find out what ABI is being produced by ac_compile, and set linker
1321  # options accordingly.
1322  echo '[#]line '$LINENO' "configure"' > conftest.$ac_ext
1323  if AC_TRY_EVAL(ac_compile); then
1324    if test yes = "$lt_cv_prog_gnu_ld"; then
1325      case `/usr/bin/file conftest.$ac_objext` in
1326	*32-bit*)
1327	  LD="${LD-ld} -melf32bsmip"
1328	  ;;
1329	*N32*)
1330	  LD="${LD-ld} -melf32bmipn32"
1331	  ;;
1332	*64-bit*)
1333	  LD="${LD-ld} -melf64bmip"
1334	;;
1335      esac
1336    else
1337      case `/usr/bin/file conftest.$ac_objext` in
1338	*32-bit*)
1339	  LD="${LD-ld} -32"
1340	  ;;
1341	*N32*)
1342	  LD="${LD-ld} -n32"
1343	  ;;
1344	*64-bit*)
1345	  LD="${LD-ld} -64"
1346	  ;;
1347      esac
1348    fi
1349  fi
1350  rm -rf conftest*
1351  ;;
1352
1353mips64*-*linux*)
1354  # Find out what ABI is being produced by ac_compile, and set linker
1355  # options accordingly.
1356  echo '[#]line '$LINENO' "configure"' > conftest.$ac_ext
1357  if AC_TRY_EVAL(ac_compile); then
1358    emul=elf
1359    case `/usr/bin/file conftest.$ac_objext` in
1360      *32-bit*)
1361	emul="${emul}32"
1362	;;
1363      *64-bit*)
1364	emul="${emul}64"
1365	;;
1366    esac
1367    case `/usr/bin/file conftest.$ac_objext` in
1368      *MSB*)
1369	emul="${emul}btsmip"
1370	;;
1371      *LSB*)
1372	emul="${emul}ltsmip"
1373	;;
1374    esac
1375    case `/usr/bin/file conftest.$ac_objext` in
1376      *N32*)
1377	emul="${emul}n32"
1378	;;
1379    esac
1380    LD="${LD-ld} -m $emul"
1381  fi
1382  rm -rf conftest*
1383  ;;
1384
1385x86_64-*kfreebsd*-gnu|x86_64-*linux*|powerpc*-*linux*| \
1386s390*-*linux*|s390*-*tpf*|sparc*-*linux*)
1387  # Find out what ABI is being produced by ac_compile, and set linker
1388  # options accordingly.  Note that the listed cases only cover the
1389  # situations where additional linker options are needed (such as when
1390  # doing 32-bit compilation for a host where ld defaults to 64-bit, or
1391  # vice versa); the common cases where no linker options are needed do
1392  # not appear in the list.
1393  echo 'int i;' > conftest.$ac_ext
1394  if AC_TRY_EVAL(ac_compile); then
1395    case `/usr/bin/file conftest.o` in
1396      *32-bit*)
1397	case $host in
1398	  x86_64-*kfreebsd*-gnu)
1399	    LD="${LD-ld} -m elf_i386_fbsd"
1400	    ;;
1401	  x86_64-*linux*)
1402	    case `/usr/bin/file conftest.o` in
1403	      *x86-64*)
1404		LD="${LD-ld} -m elf32_x86_64"
1405		;;
1406	      *)
1407		LD="${LD-ld} -m elf_i386"
1408		;;
1409	    esac
1410	    ;;
1411	  powerpc64le-*linux*)
1412	    LD="${LD-ld} -m elf32lppclinux"
1413	    ;;
1414	  powerpc64-*linux*)
1415	    LD="${LD-ld} -m elf32ppclinux"
1416	    ;;
1417	  s390x-*linux*)
1418	    LD="${LD-ld} -m elf_s390"
1419	    ;;
1420	  sparc64-*linux*)
1421	    LD="${LD-ld} -m elf32_sparc"
1422	    ;;
1423	esac
1424	;;
1425      *64-bit*)
1426	case $host in
1427	  x86_64-*kfreebsd*-gnu)
1428	    LD="${LD-ld} -m elf_x86_64_fbsd"
1429	    ;;
1430	  x86_64-*linux*)
1431	    LD="${LD-ld} -m elf_x86_64"
1432	    ;;
1433	  powerpcle-*linux*)
1434	    LD="${LD-ld} -m elf64lppc"
1435	    ;;
1436	  powerpc-*linux*)
1437	    LD="${LD-ld} -m elf64ppc"
1438	    ;;
1439	  s390*-*linux*|s390*-*tpf*)
1440	    LD="${LD-ld} -m elf64_s390"
1441	    ;;
1442	  sparc*-*linux*)
1443	    LD="${LD-ld} -m elf64_sparc"
1444	    ;;
1445	esac
1446	;;
1447    esac
1448  fi
1449  rm -rf conftest*
1450  ;;
1451
1452*-*-sco3.2v5*)
1453  # On SCO OpenServer 5, we need -belf to get full-featured binaries.
1454  SAVE_CFLAGS=$CFLAGS
1455  CFLAGS="$CFLAGS -belf"
1456  AC_CACHE_CHECK([whether the C compiler needs -belf], lt_cv_cc_needs_belf,
1457    [AC_LANG_PUSH(C)
1458     AC_LINK_IFELSE([AC_LANG_PROGRAM([[]],[[]])],[lt_cv_cc_needs_belf=yes],[lt_cv_cc_needs_belf=no])
1459     AC_LANG_POP])
1460  if test yes != "$lt_cv_cc_needs_belf"; then
1461    # this is probably gcc 2.8.0, egcs 1.0 or newer; no need for -belf
1462    CFLAGS=$SAVE_CFLAGS
1463  fi
1464  ;;
1465*-*solaris*)
1466  # Find out what ABI is being produced by ac_compile, and set linker
1467  # options accordingly.
1468  echo 'int i;' > conftest.$ac_ext
1469  if AC_TRY_EVAL(ac_compile); then
1470    case `/usr/bin/file conftest.o` in
1471    *64-bit*)
1472      case $lt_cv_prog_gnu_ld in
1473      yes*)
1474        case $host in
1475        i?86-*-solaris*|x86_64-*-solaris*)
1476          LD="${LD-ld} -m elf_x86_64"
1477          ;;
1478        sparc*-*-solaris*)
1479          LD="${LD-ld} -m elf64_sparc"
1480          ;;
1481        esac
1482        # GNU ld 2.21 introduced _sol2 emulations.  Use them if available.
1483        if ${LD-ld} -V | grep _sol2 >/dev/null 2>&1; then
1484          LD=${LD-ld}_sol2
1485        fi
1486        ;;
1487      *)
1488	if ${LD-ld} -64 -r -o conftest2.o conftest.o >/dev/null 2>&1; then
1489	  LD="${LD-ld} -64"
1490	fi
1491	;;
1492      esac
1493      ;;
1494    esac
1495  fi
1496  rm -rf conftest*
1497  ;;
1498esac
1499
1500need_locks=$enable_libtool_lock
1501])# _LT_ENABLE_LOCK
1502
1503
1504# _LT_PROG_AR
1505# -----------
1506m4_defun([_LT_PROG_AR],
1507[AC_CHECK_TOOLS(AR, [ar], false)
1508: ${AR=ar}
1509: ${AR_FLAGS=cru}
1510_LT_DECL([], [AR], [1], [The archiver])
1511_LT_DECL([], [AR_FLAGS], [1], [Flags to create an archive])
1512
1513AC_CACHE_CHECK([for archiver @FILE support], [lt_cv_ar_at_file],
1514  [lt_cv_ar_at_file=no
1515   AC_COMPILE_IFELSE([AC_LANG_PROGRAM],
1516     [echo conftest.$ac_objext > conftest.lst
1517      lt_ar_try='$AR $AR_FLAGS libconftest.a @conftest.lst >&AS_MESSAGE_LOG_FD'
1518      AC_TRY_EVAL([lt_ar_try])
1519      if test 0 -eq "$ac_status"; then
1520	# Ensure the archiver fails upon bogus file names.
1521	rm -f conftest.$ac_objext libconftest.a
1522	AC_TRY_EVAL([lt_ar_try])
1523	if test 0 -ne "$ac_status"; then
1524          lt_cv_ar_at_file=@
1525        fi
1526      fi
1527      rm -f conftest.* libconftest.a
1528     ])
1529  ])
1530
1531if test no = "$lt_cv_ar_at_file"; then
1532  archiver_list_spec=
1533else
1534  archiver_list_spec=$lt_cv_ar_at_file
1535fi
1536_LT_DECL([], [archiver_list_spec], [1],
1537  [How to feed a file listing to the archiver])
1538])# _LT_PROG_AR
1539
1540
1541# _LT_CMD_OLD_ARCHIVE
1542# -------------------
1543m4_defun([_LT_CMD_OLD_ARCHIVE],
1544[_LT_PROG_AR
1545
1546AC_CHECK_TOOL(STRIP, strip, :)
1547test -z "$STRIP" && STRIP=:
1548_LT_DECL([], [STRIP], [1], [A symbol stripping program])
1549
1550AC_CHECK_TOOL(RANLIB, ranlib, :)
1551test -z "$RANLIB" && RANLIB=:
1552_LT_DECL([], [RANLIB], [1],
1553    [Commands used to install an old-style archive])
1554
1555# Determine commands to create old-style static archives.
1556old_archive_cmds='$AR $AR_FLAGS $oldlib$oldobjs'
1557old_postinstall_cmds='chmod 644 $oldlib'
1558old_postuninstall_cmds=
1559
1560if test -n "$RANLIB"; then
1561  case $host_os in
1562  bitrig* | openbsd*)
1563    old_postinstall_cmds="$old_postinstall_cmds~\$RANLIB -t \$tool_oldlib"
1564    ;;
1565  *)
1566    old_postinstall_cmds="$old_postinstall_cmds~\$RANLIB \$tool_oldlib"
1567    ;;
1568  esac
1569  old_archive_cmds="$old_archive_cmds~\$RANLIB \$tool_oldlib"
1570fi
1571
1572case $host_os in
1573  darwin*)
1574    lock_old_archive_extraction=yes ;;
1575  *)
1576    lock_old_archive_extraction=no ;;
1577esac
1578_LT_DECL([], [old_postinstall_cmds], [2])
1579_LT_DECL([], [old_postuninstall_cmds], [2])
1580_LT_TAGDECL([], [old_archive_cmds], [2],
1581    [Commands used to build an old-style archive])
1582_LT_DECL([], [lock_old_archive_extraction], [0],
1583    [Whether to use a lock for old archive extraction])
1584])# _LT_CMD_OLD_ARCHIVE
1585
1586
1587# _LT_COMPILER_OPTION(MESSAGE, VARIABLE-NAME, FLAGS,
1588#		[OUTPUT-FILE], [ACTION-SUCCESS], [ACTION-FAILURE])
1589# ----------------------------------------------------------------
1590# Check whether the given compiler option works
1591AC_DEFUN([_LT_COMPILER_OPTION],
1592[m4_require([_LT_FILEUTILS_DEFAULTS])dnl
1593m4_require([_LT_DECL_SED])dnl
1594AC_CACHE_CHECK([$1], [$2],
1595  [$2=no
1596   m4_if([$4], , [ac_outfile=conftest.$ac_objext], [ac_outfile=$4])
1597   echo "$lt_simple_compile_test_code" > conftest.$ac_ext
1598   lt_compiler_flag="$3"  ## exclude from sc_useless_quotes_in_assignment
1599   # Insert the option either (1) after the last *FLAGS variable, or
1600   # (2) before a word containing "conftest.", or (3) at the end.
1601   # Note that $ac_compile itself does not contain backslashes and begins
1602   # with a dollar sign (not a hyphen), so the echo should work correctly.
1603   # The option is referenced via a variable to avoid confusing sed.
1604   lt_compile=`echo "$ac_compile" | $SED \
1605   -e 's:.*FLAGS}\{0,1\} :&$lt_compiler_flag :; t' \
1606   -e 's: [[^ ]]*conftest\.: $lt_compiler_flag&:; t' \
1607   -e 's:$: $lt_compiler_flag:'`
1608   (eval echo "\"\$as_me:$LINENO: $lt_compile\"" >&AS_MESSAGE_LOG_FD)
1609   (eval "$lt_compile" 2>conftest.err)
1610   ac_status=$?
1611   cat conftest.err >&AS_MESSAGE_LOG_FD
1612   echo "$as_me:$LINENO: \$? = $ac_status" >&AS_MESSAGE_LOG_FD
1613   if (exit $ac_status) && test -s "$ac_outfile"; then
1614     # The compiler can only warn and ignore the option if not recognized
1615     # So say no if there are warnings other than the usual output.
1616     $ECHO "$_lt_compiler_boilerplate" | $SED '/^$/d' >conftest.exp
1617     $SED '/^$/d; /^ *+/d' conftest.err >conftest.er2
1618     if test ! -s conftest.er2 || diff conftest.exp conftest.er2 >/dev/null; then
1619       $2=yes
1620     fi
1621   fi
1622   $RM conftest*
1623])
1624
1625if test yes = "[$]$2"; then
1626    m4_if([$5], , :, [$5])
1627else
1628    m4_if([$6], , :, [$6])
1629fi
1630])# _LT_COMPILER_OPTION
1631
1632# Old name:
1633AU_ALIAS([AC_LIBTOOL_COMPILER_OPTION], [_LT_COMPILER_OPTION])
1634dnl aclocal-1.4 backwards compatibility:
1635dnl AC_DEFUN([AC_LIBTOOL_COMPILER_OPTION], [])
1636
1637
1638# _LT_LINKER_OPTION(MESSAGE, VARIABLE-NAME, FLAGS,
1639#                  [ACTION-SUCCESS], [ACTION-FAILURE])
1640# ----------------------------------------------------
1641# Check whether the given linker option works
1642AC_DEFUN([_LT_LINKER_OPTION],
1643[m4_require([_LT_FILEUTILS_DEFAULTS])dnl
1644m4_require([_LT_DECL_SED])dnl
1645AC_CACHE_CHECK([$1], [$2],
1646  [$2=no
1647   save_LDFLAGS=$LDFLAGS
1648   LDFLAGS="$LDFLAGS $3"
1649   echo "$lt_simple_link_test_code" > conftest.$ac_ext
1650   if (eval $ac_link 2>conftest.err) && test -s conftest$ac_exeext; then
1651     # The linker can only warn and ignore the option if not recognized
1652     # So say no if there are warnings
1653     if test -s conftest.err; then
1654       # Append any errors to the config.log.
1655       cat conftest.err 1>&AS_MESSAGE_LOG_FD
1656       $ECHO "$_lt_linker_boilerplate" | $SED '/^$/d' > conftest.exp
1657       $SED '/^$/d; /^ *+/d' conftest.err >conftest.er2
1658       if diff conftest.exp conftest.er2 >/dev/null; then
1659         $2=yes
1660       fi
1661     else
1662       $2=yes
1663     fi
1664   fi
1665   $RM -r conftest*
1666   LDFLAGS=$save_LDFLAGS
1667])
1668
1669if test yes = "[$]$2"; then
1670    m4_if([$4], , :, [$4])
1671else
1672    m4_if([$5], , :, [$5])
1673fi
1674])# _LT_LINKER_OPTION
1675
1676# Old name:
1677AU_ALIAS([AC_LIBTOOL_LINKER_OPTION], [_LT_LINKER_OPTION])
1678dnl aclocal-1.4 backwards compatibility:
1679dnl AC_DEFUN([AC_LIBTOOL_LINKER_OPTION], [])
1680
1681
1682# LT_CMD_MAX_LEN
1683#---------------
1684AC_DEFUN([LT_CMD_MAX_LEN],
1685[AC_REQUIRE([AC_CANONICAL_HOST])dnl
1686# find the maximum length of command line arguments
1687AC_MSG_CHECKING([the maximum length of command line arguments])
1688AC_CACHE_VAL([lt_cv_sys_max_cmd_len], [dnl
1689  i=0
1690  teststring=ABCD
1691
1692  case $build_os in
1693  msdosdjgpp*)
1694    # On DJGPP, this test can blow up pretty badly due to problems in libc
1695    # (any single argument exceeding 2000 bytes causes a buffer overrun
1696    # during glob expansion).  Even if it were fixed, the result of this
1697    # check would be larger than it should be.
1698    lt_cv_sys_max_cmd_len=12288;    # 12K is about right
1699    ;;
1700
1701  gnu*)
1702    # Under GNU Hurd, this test is not required because there is
1703    # no limit to the length of command line arguments.
1704    # Libtool will interpret -1 as no limit whatsoever
1705    lt_cv_sys_max_cmd_len=-1;
1706    ;;
1707
1708  cygwin* | mingw* | cegcc*)
1709    # On Win9x/ME, this test blows up -- it succeeds, but takes
1710    # about 5 minutes as the teststring grows exponentially.
1711    # Worse, since 9x/ME are not pre-emptively multitasking,
1712    # you end up with a "frozen" computer, even though with patience
1713    # the test eventually succeeds (with a max line length of 256k).
1714    # Instead, let's just punt: use the minimum linelength reported by
1715    # all of the supported platforms: 8192 (on NT/2K/XP).
1716    lt_cv_sys_max_cmd_len=8192;
1717    ;;
1718
1719  mint*)
1720    # On MiNT this can take a long time and run out of memory.
1721    lt_cv_sys_max_cmd_len=8192;
1722    ;;
1723
1724  amigaos*)
1725    # On AmigaOS with pdksh, this test takes hours, literally.
1726    # So we just punt and use a minimum line length of 8192.
1727    lt_cv_sys_max_cmd_len=8192;
1728    ;;
1729
1730  bitrig* | darwin* | dragonfly* | freebsd* | netbsd* | openbsd*)
1731    # This has been around since 386BSD, at least.  Likely further.
1732    if test -x /sbin/sysctl; then
1733      lt_cv_sys_max_cmd_len=`/sbin/sysctl -n kern.argmax`
1734    elif test -x /usr/sbin/sysctl; then
1735      lt_cv_sys_max_cmd_len=`/usr/sbin/sysctl -n kern.argmax`
1736    else
1737      lt_cv_sys_max_cmd_len=65536	# usable default for all BSDs
1738    fi
1739    # And add a safety zone
1740    lt_cv_sys_max_cmd_len=`expr $lt_cv_sys_max_cmd_len \/ 4`
1741    lt_cv_sys_max_cmd_len=`expr $lt_cv_sys_max_cmd_len \* 3`
1742    ;;
1743
1744  interix*)
1745    # We know the value 262144 and hardcode it with a safety zone (like BSD)
1746    lt_cv_sys_max_cmd_len=196608
1747    ;;
1748
1749  os2*)
1750    # The test takes a long time on OS/2.
1751    lt_cv_sys_max_cmd_len=8192
1752    ;;
1753
1754  osf*)
1755    # Dr. Hans Ekkehard Plesser reports seeing a kernel panic running configure
1756    # due to this test when exec_disable_arg_limit is 1 on Tru64. It is not
1757    # nice to cause kernel panics so lets avoid the loop below.
1758    # First set a reasonable default.
1759    lt_cv_sys_max_cmd_len=16384
1760    #
1761    if test -x /sbin/sysconfig; then
1762      case `/sbin/sysconfig -q proc exec_disable_arg_limit` in
1763        *1*) lt_cv_sys_max_cmd_len=-1 ;;
1764      esac
1765    fi
1766    ;;
1767  sco3.2v5*)
1768    lt_cv_sys_max_cmd_len=102400
1769    ;;
1770  sysv5* | sco5v6* | sysv4.2uw2*)
1771    kargmax=`grep ARG_MAX /etc/conf/cf.d/stune 2>/dev/null`
1772    if test -n "$kargmax"; then
1773      lt_cv_sys_max_cmd_len=`echo $kargmax | sed 's/.*[[	 ]]//'`
1774    else
1775      lt_cv_sys_max_cmd_len=32768
1776    fi
1777    ;;
1778  *)
1779    lt_cv_sys_max_cmd_len=`(getconf ARG_MAX) 2> /dev/null`
1780    if test -n "$lt_cv_sys_max_cmd_len" && \
1781       test undefined != "$lt_cv_sys_max_cmd_len"; then
1782      lt_cv_sys_max_cmd_len=`expr $lt_cv_sys_max_cmd_len \/ 4`
1783      lt_cv_sys_max_cmd_len=`expr $lt_cv_sys_max_cmd_len \* 3`
1784    else
1785      # Make teststring a little bigger before we do anything with it.
1786      # a 1K string should be a reasonable start.
1787      for i in 1 2 3 4 5 6 7 8; do
1788        teststring=$teststring$teststring
1789      done
1790      SHELL=${SHELL-${CONFIG_SHELL-/bin/sh}}
1791      # If test is not a shell built-in, we'll probably end up computing a
1792      # maximum length that is only half of the actual maximum length, but
1793      # we can't tell.
1794      while { test X`env echo "$teststring$teststring" 2>/dev/null` \
1795	         = "X$teststring$teststring"; } >/dev/null 2>&1 &&
1796	      test 17 != "$i" # 1/2 MB should be enough
1797      do
1798        i=`expr $i + 1`
1799        teststring=$teststring$teststring
1800      done
1801      # Only check the string length outside the loop.
1802      lt_cv_sys_max_cmd_len=`expr "X$teststring" : ".*" 2>&1`
1803      teststring=
1804      # Add a significant safety factor because C++ compilers can tack on
1805      # massive amounts of additional arguments before passing them to the
1806      # linker.  It appears as though 1/2 is a usable value.
1807      lt_cv_sys_max_cmd_len=`expr $lt_cv_sys_max_cmd_len \/ 2`
1808    fi
1809    ;;
1810  esac
1811])
1812if test -n "$lt_cv_sys_max_cmd_len"; then
1813  AC_MSG_RESULT($lt_cv_sys_max_cmd_len)
1814else
1815  AC_MSG_RESULT(none)
1816fi
1817max_cmd_len=$lt_cv_sys_max_cmd_len
1818_LT_DECL([], [max_cmd_len], [0],
1819    [What is the maximum length of a command?])
1820])# LT_CMD_MAX_LEN
1821
1822# Old name:
1823AU_ALIAS([AC_LIBTOOL_SYS_MAX_CMD_LEN], [LT_CMD_MAX_LEN])
1824dnl aclocal-1.4 backwards compatibility:
1825dnl AC_DEFUN([AC_LIBTOOL_SYS_MAX_CMD_LEN], [])
1826
1827
1828# _LT_HEADER_DLFCN
1829# ----------------
1830m4_defun([_LT_HEADER_DLFCN],
1831[AC_CHECK_HEADERS([dlfcn.h], [], [], [AC_INCLUDES_DEFAULT])dnl
1832])# _LT_HEADER_DLFCN
1833
1834
1835# _LT_TRY_DLOPEN_SELF (ACTION-IF-TRUE, ACTION-IF-TRUE-W-USCORE,
1836#                      ACTION-IF-FALSE, ACTION-IF-CROSS-COMPILING)
1837# ----------------------------------------------------------------
1838m4_defun([_LT_TRY_DLOPEN_SELF],
1839[m4_require([_LT_HEADER_DLFCN])dnl
1840if test yes = "$cross_compiling"; then :
1841  [$4]
1842else
1843  lt_dlunknown=0; lt_dlno_uscore=1; lt_dlneed_uscore=2
1844  lt_status=$lt_dlunknown
1845  cat > conftest.$ac_ext <<_LT_EOF
1846[#line $LINENO "configure"
1847#include "confdefs.h"
1848
1849#if HAVE_DLFCN_H
1850#include <dlfcn.h>
1851#endif
1852
1853#include <stdio.h>
1854
1855#ifdef RTLD_GLOBAL
1856#  define LT_DLGLOBAL		RTLD_GLOBAL
1857#else
1858#  ifdef DL_GLOBAL
1859#    define LT_DLGLOBAL		DL_GLOBAL
1860#  else
1861#    define LT_DLGLOBAL		0
1862#  endif
1863#endif
1864
1865/* We may have to define LT_DLLAZY_OR_NOW in the command line if we
1866   find out it does not work in some platform. */
1867#ifndef LT_DLLAZY_OR_NOW
1868#  ifdef RTLD_LAZY
1869#    define LT_DLLAZY_OR_NOW		RTLD_LAZY
1870#  else
1871#    ifdef DL_LAZY
1872#      define LT_DLLAZY_OR_NOW		DL_LAZY
1873#    else
1874#      ifdef RTLD_NOW
1875#        define LT_DLLAZY_OR_NOW	RTLD_NOW
1876#      else
1877#        ifdef DL_NOW
1878#          define LT_DLLAZY_OR_NOW	DL_NOW
1879#        else
1880#          define LT_DLLAZY_OR_NOW	0
1881#        endif
1882#      endif
1883#    endif
1884#  endif
1885#endif
1886
1887/* When -fvisibility=hidden is used, assume the code has been annotated
1888   correspondingly for the symbols needed.  */
1889#if defined __GNUC__ && (((__GNUC__ == 3) && (__GNUC_MINOR__ >= 3)) || (__GNUC__ > 3))
1890int fnord () __attribute__((visibility("default")));
1891#endif
1892
1893int fnord () { return 42; }
1894int main ()
1895{
1896  void *self = dlopen (0, LT_DLGLOBAL|LT_DLLAZY_OR_NOW);
1897  int status = $lt_dlunknown;
1898
1899  if (self)
1900    {
1901      if (dlsym (self,"fnord"))       status = $lt_dlno_uscore;
1902      else
1903        {
1904	  if (dlsym( self,"_fnord"))  status = $lt_dlneed_uscore;
1905          else puts (dlerror ());
1906	}
1907      /* dlclose (self); */
1908    }
1909  else
1910    puts (dlerror ());
1911
1912  return status;
1913}]
1914_LT_EOF
1915  if AC_TRY_EVAL(ac_link) && test -s "conftest$ac_exeext" 2>/dev/null; then
1916    (./conftest; exit; ) >&AS_MESSAGE_LOG_FD 2>/dev/null
1917    lt_status=$?
1918    case x$lt_status in
1919      x$lt_dlno_uscore) $1 ;;
1920      x$lt_dlneed_uscore) $2 ;;
1921      x$lt_dlunknown|x*) $3 ;;
1922    esac
1923  else :
1924    # compilation failed
1925    $3
1926  fi
1927fi
1928rm -fr conftest*
1929])# _LT_TRY_DLOPEN_SELF
1930
1931
1932# LT_SYS_DLOPEN_SELF
1933# ------------------
1934AC_DEFUN([LT_SYS_DLOPEN_SELF],
1935[m4_require([_LT_HEADER_DLFCN])dnl
1936if test yes != "$enable_dlopen"; then
1937  enable_dlopen=unknown
1938  enable_dlopen_self=unknown
1939  enable_dlopen_self_static=unknown
1940else
1941  lt_cv_dlopen=no
1942  lt_cv_dlopen_libs=
1943
1944  case $host_os in
1945  beos*)
1946    lt_cv_dlopen=load_add_on
1947    lt_cv_dlopen_libs=
1948    lt_cv_dlopen_self=yes
1949    ;;
1950
1951  mingw* | pw32* | cegcc*)
1952    lt_cv_dlopen=LoadLibrary
1953    lt_cv_dlopen_libs=
1954    ;;
1955
1956  cygwin*)
1957    lt_cv_dlopen=dlopen
1958    lt_cv_dlopen_libs=
1959    ;;
1960
1961  darwin*)
1962    # if libdl is installed we need to link against it
1963    AC_CHECK_LIB([dl], [dlopen],
1964		[lt_cv_dlopen=dlopen lt_cv_dlopen_libs=-ldl],[
1965    lt_cv_dlopen=dyld
1966    lt_cv_dlopen_libs=
1967    lt_cv_dlopen_self=yes
1968    ])
1969    ;;
1970
1971  tpf*)
1972    # Don't try to run any link tests for TPF.  We know it's impossible
1973    # because TPF is a cross-compiler, and we know how we open DSOs.
1974    lt_cv_dlopen=dlopen
1975    lt_cv_dlopen_libs=
1976    lt_cv_dlopen_self=no
1977    ;;
1978
1979  *)
1980    AC_CHECK_FUNC([shl_load],
1981	  [lt_cv_dlopen=shl_load],
1982      [AC_CHECK_LIB([dld], [shl_load],
1983	    [lt_cv_dlopen=shl_load lt_cv_dlopen_libs=-ldld],
1984	[AC_CHECK_FUNC([dlopen],
1985	      [lt_cv_dlopen=dlopen],
1986	  [AC_CHECK_LIB([dl], [dlopen],
1987		[lt_cv_dlopen=dlopen lt_cv_dlopen_libs=-ldl],
1988	    [AC_CHECK_LIB([svld], [dlopen],
1989		  [lt_cv_dlopen=dlopen lt_cv_dlopen_libs=-lsvld],
1990	      [AC_CHECK_LIB([dld], [dld_link],
1991		    [lt_cv_dlopen=dld_link lt_cv_dlopen_libs=-ldld])
1992	      ])
1993	    ])
1994	  ])
1995	])
1996      ])
1997    ;;
1998  esac
1999
2000  if test no = "$lt_cv_dlopen"; then
2001    enable_dlopen=no
2002  else
2003    enable_dlopen=yes
2004  fi
2005
2006  case $lt_cv_dlopen in
2007  dlopen)
2008    save_CPPFLAGS=$CPPFLAGS
2009    test yes = "$ac_cv_header_dlfcn_h" && CPPFLAGS="$CPPFLAGS -DHAVE_DLFCN_H"
2010
2011    save_LDFLAGS=$LDFLAGS
2012    wl=$lt_prog_compiler_wl eval LDFLAGS=\"\$LDFLAGS $export_dynamic_flag_spec\"
2013
2014    save_LIBS=$LIBS
2015    LIBS="$lt_cv_dlopen_libs $LIBS"
2016
2017    AC_CACHE_CHECK([whether a program can dlopen itself],
2018	  lt_cv_dlopen_self, [dnl
2019	  _LT_TRY_DLOPEN_SELF(
2020	    lt_cv_dlopen_self=yes, lt_cv_dlopen_self=yes,
2021	    lt_cv_dlopen_self=no, lt_cv_dlopen_self=cross)
2022    ])
2023
2024    if test yes = "$lt_cv_dlopen_self"; then
2025      wl=$lt_prog_compiler_wl eval LDFLAGS=\"\$LDFLAGS $lt_prog_compiler_static\"
2026      AC_CACHE_CHECK([whether a statically linked program can dlopen itself],
2027	  lt_cv_dlopen_self_static, [dnl
2028	  _LT_TRY_DLOPEN_SELF(
2029	    lt_cv_dlopen_self_static=yes, lt_cv_dlopen_self_static=yes,
2030	    lt_cv_dlopen_self_static=no,  lt_cv_dlopen_self_static=cross)
2031      ])
2032    fi
2033
2034    CPPFLAGS=$save_CPPFLAGS
2035    LDFLAGS=$save_LDFLAGS
2036    LIBS=$save_LIBS
2037    ;;
2038  esac
2039
2040  case $lt_cv_dlopen_self in
2041  yes|no) enable_dlopen_self=$lt_cv_dlopen_self ;;
2042  *) enable_dlopen_self=unknown ;;
2043  esac
2044
2045  case $lt_cv_dlopen_self_static in
2046  yes|no) enable_dlopen_self_static=$lt_cv_dlopen_self_static ;;
2047  *) enable_dlopen_self_static=unknown ;;
2048  esac
2049fi
2050_LT_DECL([dlopen_support], [enable_dlopen], [0],
2051	 [Whether dlopen is supported])
2052_LT_DECL([dlopen_self], [enable_dlopen_self], [0],
2053	 [Whether dlopen of programs is supported])
2054_LT_DECL([dlopen_self_static], [enable_dlopen_self_static], [0],
2055	 [Whether dlopen of statically linked programs is supported])
2056])# LT_SYS_DLOPEN_SELF
2057
2058# Old name:
2059AU_ALIAS([AC_LIBTOOL_DLOPEN_SELF], [LT_SYS_DLOPEN_SELF])
2060dnl aclocal-1.4 backwards compatibility:
2061dnl AC_DEFUN([AC_LIBTOOL_DLOPEN_SELF], [])
2062
2063
2064# _LT_COMPILER_C_O([TAGNAME])
2065# ---------------------------
2066# Check to see if options -c and -o are simultaneously supported by compiler.
2067# This macro does not hard code the compiler like AC_PROG_CC_C_O.
2068m4_defun([_LT_COMPILER_C_O],
2069[m4_require([_LT_DECL_SED])dnl
2070m4_require([_LT_FILEUTILS_DEFAULTS])dnl
2071m4_require([_LT_TAG_COMPILER])dnl
2072AC_CACHE_CHECK([if $compiler supports -c -o file.$ac_objext],
2073  [_LT_TAGVAR(lt_cv_prog_compiler_c_o, $1)],
2074  [_LT_TAGVAR(lt_cv_prog_compiler_c_o, $1)=no
2075   $RM -r conftest 2>/dev/null
2076   mkdir conftest
2077   cd conftest
2078   mkdir out
2079   echo "$lt_simple_compile_test_code" > conftest.$ac_ext
2080
2081   lt_compiler_flag="-o out/conftest2.$ac_objext"
2082   # Insert the option either (1) after the last *FLAGS variable, or
2083   # (2) before a word containing "conftest.", or (3) at the end.
2084   # Note that $ac_compile itself does not contain backslashes and begins
2085   # with a dollar sign (not a hyphen), so the echo should work correctly.
2086   lt_compile=`echo "$ac_compile" | $SED \
2087   -e 's:.*FLAGS}\{0,1\} :&$lt_compiler_flag :; t' \
2088   -e 's: [[^ ]]*conftest\.: $lt_compiler_flag&:; t' \
2089   -e 's:$: $lt_compiler_flag:'`
2090   (eval echo "\"\$as_me:$LINENO: $lt_compile\"" >&AS_MESSAGE_LOG_FD)
2091   (eval "$lt_compile" 2>out/conftest.err)
2092   ac_status=$?
2093   cat out/conftest.err >&AS_MESSAGE_LOG_FD
2094   echo "$as_me:$LINENO: \$? = $ac_status" >&AS_MESSAGE_LOG_FD
2095   if (exit $ac_status) && test -s out/conftest2.$ac_objext
2096   then
2097     # The compiler can only warn and ignore the option if not recognized
2098     # So say no if there are warnings
2099     $ECHO "$_lt_compiler_boilerplate" | $SED '/^$/d' > out/conftest.exp
2100     $SED '/^$/d; /^ *+/d' out/conftest.err >out/conftest.er2
2101     if test ! -s out/conftest.er2 || diff out/conftest.exp out/conftest.er2 >/dev/null; then
2102       _LT_TAGVAR(lt_cv_prog_compiler_c_o, $1)=yes
2103     fi
2104   fi
2105   chmod u+w . 2>&AS_MESSAGE_LOG_FD
2106   $RM conftest*
2107   # SGI C++ compiler will create directory out/ii_files/ for
2108   # template instantiation
2109   test -d out/ii_files && $RM out/ii_files/* && rmdir out/ii_files
2110   $RM out/* && rmdir out
2111   cd ..
2112   $RM -r conftest
2113   $RM conftest*
2114])
2115_LT_TAGDECL([compiler_c_o], [lt_cv_prog_compiler_c_o], [1],
2116	[Does compiler simultaneously support -c and -o options?])
2117])# _LT_COMPILER_C_O
2118
2119
2120# _LT_COMPILER_FILE_LOCKS([TAGNAME])
2121# ----------------------------------
2122# Check to see if we can do hard links to lock some files if needed
2123m4_defun([_LT_COMPILER_FILE_LOCKS],
2124[m4_require([_LT_ENABLE_LOCK])dnl
2125m4_require([_LT_FILEUTILS_DEFAULTS])dnl
2126_LT_COMPILER_C_O([$1])
2127
2128hard_links=nottested
2129if test no = "$_LT_TAGVAR(lt_cv_prog_compiler_c_o, $1)" && test no != "$need_locks"; then
2130  # do not overwrite the value of need_locks provided by the user
2131  AC_MSG_CHECKING([if we can lock with hard links])
2132  hard_links=yes
2133  $RM conftest*
2134  ln conftest.a conftest.b 2>/dev/null && hard_links=no
2135  touch conftest.a
2136  ln conftest.a conftest.b 2>&5 || hard_links=no
2137  ln conftest.a conftest.b 2>/dev/null && hard_links=no
2138  AC_MSG_RESULT([$hard_links])
2139  if test no = "$hard_links"; then
2140    AC_MSG_WARN(['$CC' does not support '-c -o', so 'make -j' may be unsafe])
2141    need_locks=warn
2142  fi
2143else
2144  need_locks=no
2145fi
2146_LT_DECL([], [need_locks], [1], [Must we lock files when doing compilation?])
2147])# _LT_COMPILER_FILE_LOCKS
2148
2149
2150# _LT_CHECK_OBJDIR
2151# ----------------
2152m4_defun([_LT_CHECK_OBJDIR],
2153[AC_CACHE_CHECK([for objdir], [lt_cv_objdir],
2154[rm -f .libs 2>/dev/null
2155mkdir .libs 2>/dev/null
2156if test -d .libs; then
2157  lt_cv_objdir=.libs
2158else
2159  # MS-DOS does not allow filenames that begin with a dot.
2160  lt_cv_objdir=_libs
2161fi
2162rmdir .libs 2>/dev/null])
2163objdir=$lt_cv_objdir
2164_LT_DECL([], [objdir], [0],
2165         [The name of the directory that contains temporary libtool files])dnl
2166m4_pattern_allow([LT_OBJDIR])dnl
2167AC_DEFINE_UNQUOTED([LT_OBJDIR], "$lt_cv_objdir/",
2168  [Define to the sub-directory where libtool stores uninstalled libraries.])
2169])# _LT_CHECK_OBJDIR
2170
2171
2172# _LT_LINKER_HARDCODE_LIBPATH([TAGNAME])
2173# --------------------------------------
2174# Check hardcoding attributes.
2175m4_defun([_LT_LINKER_HARDCODE_LIBPATH],
2176[AC_MSG_CHECKING([how to hardcode library paths into programs])
2177_LT_TAGVAR(hardcode_action, $1)=
2178if test -n "$_LT_TAGVAR(hardcode_libdir_flag_spec, $1)" ||
2179   test -n "$_LT_TAGVAR(runpath_var, $1)" ||
2180   test yes = "$_LT_TAGVAR(hardcode_automatic, $1)"; then
2181
2182  # We can hardcode non-existent directories.
2183  if test no != "$_LT_TAGVAR(hardcode_direct, $1)" &&
2184     # If the only mechanism to avoid hardcoding is shlibpath_var, we
2185     # have to relink, otherwise we might link with an installed library
2186     # when we should be linking with a yet-to-be-installed one
2187     ## test no != "$_LT_TAGVAR(hardcode_shlibpath_var, $1)" &&
2188     test no != "$_LT_TAGVAR(hardcode_minus_L, $1)"; then
2189    # Linking always hardcodes the temporary library directory.
2190    _LT_TAGVAR(hardcode_action, $1)=relink
2191  else
2192    # We can link without hardcoding, and we can hardcode nonexisting dirs.
2193    _LT_TAGVAR(hardcode_action, $1)=immediate
2194  fi
2195else
2196  # We cannot hardcode anything, or else we can only hardcode existing
2197  # directories.
2198  _LT_TAGVAR(hardcode_action, $1)=unsupported
2199fi
2200AC_MSG_RESULT([$_LT_TAGVAR(hardcode_action, $1)])
2201
2202if test relink = "$_LT_TAGVAR(hardcode_action, $1)" ||
2203   test yes = "$_LT_TAGVAR(inherit_rpath, $1)"; then
2204  # Fast installation is not supported
2205  enable_fast_install=no
2206elif test yes = "$shlibpath_overrides_runpath" ||
2207     test no = "$enable_shared"; then
2208  # Fast installation is not necessary
2209  enable_fast_install=needless
2210fi
2211_LT_TAGDECL([], [hardcode_action], [0],
2212    [How to hardcode a shared library path into an executable])
2213])# _LT_LINKER_HARDCODE_LIBPATH
2214
2215
2216# _LT_CMD_STRIPLIB
2217# ----------------
2218m4_defun([_LT_CMD_STRIPLIB],
2219[m4_require([_LT_DECL_EGREP])
2220striplib=
2221old_striplib=
2222AC_MSG_CHECKING([whether stripping libraries is possible])
2223if test -n "$STRIP" && $STRIP -V 2>&1 | $GREP "GNU strip" >/dev/null; then
2224  test -z "$old_striplib" && old_striplib="$STRIP --strip-debug"
2225  test -z "$striplib" && striplib="$STRIP --strip-unneeded"
2226  AC_MSG_RESULT([yes])
2227else
2228# FIXME - insert some real tests, host_os isn't really good enough
2229  case $host_os in
2230  darwin*)
2231    if test -n "$STRIP"; then
2232      striplib="$STRIP -x"
2233      old_striplib="$STRIP -S"
2234      AC_MSG_RESULT([yes])
2235    else
2236      AC_MSG_RESULT([no])
2237    fi
2238    ;;
2239  *)
2240    AC_MSG_RESULT([no])
2241    ;;
2242  esac
2243fi
2244_LT_DECL([], [old_striplib], [1], [Commands to strip libraries])
2245_LT_DECL([], [striplib], [1])
2246])# _LT_CMD_STRIPLIB
2247
2248
2249# _LT_PREPARE_MUNGE_PATH_LIST
2250# ---------------------------
2251# Make sure func_munge_path_list() is defined correctly.
2252m4_defun([_LT_PREPARE_MUNGE_PATH_LIST],
2253[[# func_munge_path_list VARIABLE PATH
2254# -----------------------------------
2255# VARIABLE is name of variable containing _space_ separated list of
2256# directories to be munged by the contents of PATH, which is string
2257# having a format:
2258# "DIR[:DIR]:"
2259#       string "DIR[ DIR]" will be prepended to VARIABLE
2260# ":DIR[:DIR]"
2261#       string "DIR[ DIR]" will be appended to VARIABLE
2262# "DIRP[:DIRP]::[DIRA:]DIRA"
2263#       string "DIRP[ DIRP]" will be prepended to VARIABLE and string
2264#       "DIRA[ DIRA]" will be appended to VARIABLE
2265# "DIR[:DIR]"
2266#       VARIABLE will be replaced by "DIR[ DIR]"
2267func_munge_path_list ()
2268{
2269    case x@S|@2 in
2270    x)
2271        ;;
2272    *:)
2273        eval @S|@1=\"`$ECHO @S|@2 | $SED 's/:/ /g'` \@S|@@S|@1\"
2274        ;;
2275    x:*)
2276        eval @S|@1=\"\@S|@@S|@1 `$ECHO @S|@2 | $SED 's/:/ /g'`\"
2277        ;;
2278    *::*)
2279        eval @S|@1=\"\@S|@@S|@1\ `$ECHO @S|@2 | $SED -e 's/.*:://' -e 's/:/ /g'`\"
2280        eval @S|@1=\"`$ECHO @S|@2 | $SED -e 's/::.*//' -e 's/:/ /g'`\ \@S|@@S|@1\"
2281        ;;
2282    *)
2283        eval @S|@1=\"`$ECHO @S|@2 | $SED 's/:/ /g'`\"
2284        ;;
2285    esac
2286}
2287]])# _LT_PREPARE_PATH_LIST
2288
2289
2290# _LT_SYS_DYNAMIC_LINKER([TAG])
2291# -----------------------------
2292# PORTME Fill in your ld.so characteristics
2293m4_defun([_LT_SYS_DYNAMIC_LINKER],
2294[AC_REQUIRE([AC_CANONICAL_HOST])dnl
2295m4_require([_LT_DECL_EGREP])dnl
2296m4_require([_LT_FILEUTILS_DEFAULTS])dnl
2297m4_require([_LT_DECL_OBJDUMP])dnl
2298m4_require([_LT_DECL_SED])dnl
2299m4_require([_LT_CHECK_SHELL_FEATURES])dnl
2300m4_require([_LT_PREPARE_MUNGE_PATH_LIST])dnl
2301AC_MSG_CHECKING([dynamic linker characteristics])
2302m4_if([$1],
2303	[], [
2304if test yes = "$GCC"; then
2305  case $host_os in
2306    darwin*) lt_awk_arg='/^libraries:/,/LR/' ;;
2307    *) lt_awk_arg='/^libraries:/' ;;
2308  esac
2309  case $host_os in
2310    mingw* | cegcc*) lt_sed_strip_eq='s|=\([[A-Za-z]]:\)|\1|g' ;;
2311    *) lt_sed_strip_eq='s|=/|/|g' ;;
2312  esac
2313  lt_search_path_spec=`$CC -print-search-dirs | awk $lt_awk_arg | $SED -e "s/^libraries://" -e $lt_sed_strip_eq`
2314  case $lt_search_path_spec in
2315  *\;*)
2316    # if the path contains ";" then we assume it to be the separator
2317    # otherwise default to the standard path separator (i.e. ":") - it is
2318    # assumed that no part of a normal pathname contains ";" but that should
2319    # okay in the real world where ";" in dirpaths is itself problematic.
2320    lt_search_path_spec=`$ECHO "$lt_search_path_spec" | $SED 's/;/ /g'`
2321    ;;
2322  *)
2323    lt_search_path_spec=`$ECHO "$lt_search_path_spec" | $SED "s/$PATH_SEPARATOR/ /g"`
2324    ;;
2325  esac
2326  # Ok, now we have the path, separated by spaces, we can step through it
2327  # and add multilib dir if necessary...
2328  lt_tmp_lt_search_path_spec=
2329  lt_multi_os_dir=/`$CC $CPPFLAGS $CFLAGS $LDFLAGS -print-multi-os-directory 2>/dev/null`
2330  # ...but if some path component already ends with the multilib dir we assume
2331  # that all is fine and trust -print-search-dirs as is (GCC 4.2? or newer).
2332  case "$lt_multi_os_dir; $lt_search_path_spec " in
2333  "/; "* | "/.; "* | "/./; "* | *"$lt_multi_os_dir "* | *"$lt_multi_os_dir/ "*)
2334    lt_multi_os_dir=
2335    ;;
2336  esac
2337  for lt_sys_path in $lt_search_path_spec; do
2338    if test -d "$lt_sys_path$lt_multi_os_dir"; then
2339      lt_tmp_lt_search_path_spec="$lt_tmp_lt_search_path_spec $lt_sys_path$lt_multi_os_dir"
2340    elif test -n "$lt_multi_os_dir"; then
2341      test -d "$lt_sys_path" && \
2342	lt_tmp_lt_search_path_spec="$lt_tmp_lt_search_path_spec $lt_sys_path"
2343    fi
2344  done
2345  lt_search_path_spec=`$ECHO "$lt_tmp_lt_search_path_spec" | awk '
2346BEGIN {RS = " "; FS = "/|\n";} {
2347  lt_foo = "";
2348  lt_count = 0;
2349  for (lt_i = NF; lt_i > 0; lt_i--) {
2350    if ($lt_i != "" && $lt_i != ".") {
2351      if ($lt_i == "..") {
2352        lt_count++;
2353      } else {
2354        if (lt_count == 0) {
2355          lt_foo = "/" $lt_i lt_foo;
2356        } else {
2357          lt_count--;
2358        }
2359      }
2360    }
2361  }
2362  if (lt_foo != "") { lt_freq[[lt_foo]]++; }
2363  if (lt_freq[[lt_foo]] == 1) { print lt_foo; }
2364}'`
2365  # AWK program above erroneously prepends '/' to C:/dos/paths
2366  # for these hosts.
2367  case $host_os in
2368    mingw* | cegcc*) lt_search_path_spec=`$ECHO "$lt_search_path_spec" |\
2369      $SED 's|/\([[A-Za-z]]:\)|\1|g'` ;;
2370  esac
2371  sys_lib_search_path_spec=`$ECHO "$lt_search_path_spec" | $lt_NL2SP`
2372else
2373  sys_lib_search_path_spec="/lib /usr/lib /usr/local/lib"
2374fi])
2375library_names_spec=
2376libname_spec='lib$name'
2377soname_spec=
2378shrext_cmds=.so
2379postinstall_cmds=
2380postuninstall_cmds=
2381finish_cmds=
2382finish_eval=
2383shlibpath_var=
2384shlibpath_overrides_runpath=unknown
2385version_type=none
2386dynamic_linker="$host_os ld.so"
2387sys_lib_dlsearch_path_spec="/lib /usr/lib"
2388need_lib_prefix=unknown
2389hardcode_into_libs=no
2390
2391# when you set need_version to no, make sure it does not cause -set_version
2392# flags to be left without arguments
2393need_version=unknown
2394
2395AC_ARG_VAR([LT_SYS_LIBRARY_PATH],
2396[User-defined run-time library search path.])
2397
2398case $host_os in
2399aix3*)
2400  version_type=linux # correct to gnu/linux during the next big refactor
2401  library_names_spec='$libname$release$shared_ext$versuffix $libname.a'
2402  shlibpath_var=LIBPATH
2403
2404  # AIX 3 has no versioning support, so we append a major version to the name.
2405  soname_spec='$libname$release$shared_ext$major'
2406  ;;
2407
2408aix[[4-9]]*)
2409  version_type=linux # correct to gnu/linux during the next big refactor
2410  need_lib_prefix=no
2411  need_version=no
2412  hardcode_into_libs=yes
2413  if test ia64 = "$host_cpu"; then
2414    # AIX 5 supports IA64
2415    library_names_spec='$libname$release$shared_ext$major $libname$release$shared_ext$versuffix $libname$shared_ext'
2416    shlibpath_var=LD_LIBRARY_PATH
2417  else
2418    # With GCC up to 2.95.x, collect2 would create an import file
2419    # for dependence libraries.  The import file would start with
2420    # the line '#! .'.  This would cause the generated library to
2421    # depend on '.', always an invalid library.  This was fixed in
2422    # development snapshots of GCC prior to 3.0.
2423    case $host_os in
2424      aix4 | aix4.[[01]] | aix4.[[01]].*)
2425      if { echo '#if __GNUC__ > 2 || (__GNUC__ == 2 && __GNUC_MINOR__ >= 97)'
2426	   echo ' yes '
2427	   echo '#endif'; } | $CC -E - | $GREP yes > /dev/null; then
2428	:
2429      else
2430	can_build_shared=no
2431      fi
2432      ;;
2433    esac
2434    # Using Import Files as archive members, it is possible to support
2435    # filename-based versioning of shared library archives on AIX. While
2436    # this would work for both with and without runtime linking, it will
2437    # prevent static linking of such archives. So we do filename-based
2438    # shared library versioning with .so extension only, which is used
2439    # when both runtime linking and shared linking is enabled.
2440    # Unfortunately, runtime linking may impact performance, so we do
2441    # not want this to be the default eventually. Also, we use the
2442    # versioned .so libs for executables only if there is the -brtl
2443    # linker flag in LDFLAGS as well, or --with-aix-soname=svr4 only.
2444    # To allow for filename-based versioning support, we need to create
2445    # libNAME.so.V as an archive file, containing:
2446    # *) an Import File, referring to the versioned filename of the
2447    #    archive as well as the shared archive member, telling the
2448    #    bitwidth (32 or 64) of that shared object, and providing the
2449    #    list of exported symbols of that shared object, eventually
2450    #    decorated with the 'weak' keyword
2451    # *) the shared object with the F_LOADONLY flag set, to really avoid
2452    #    it being seen by the linker.
2453    # At run time we better use the real file rather than another symlink,
2454    # but for link time we create the symlink libNAME.so -> libNAME.so.V
2455
2456    case $with_aix_soname,$aix_use_runtimelinking in
2457    # AIX (on Power*) has no versioning support, so currently we cannot hardcode correct
2458    # soname into executable. Probably we can add versioning support to
2459    # collect2, so additional links can be useful in future.
2460    aix,yes) # traditional libtool
2461      dynamic_linker='AIX unversionable lib.so'
2462      # If using run time linking (on AIX 4.2 or later) use lib<name>.so
2463      # instead of lib<name>.a to let people know that these are not
2464      # typical AIX shared libraries.
2465      library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$shared_ext'
2466      ;;
2467    aix,no) # traditional AIX only
2468      dynamic_linker='AIX lib.a[(]lib.so.V[)]'
2469      # We preserve .a as extension for shared libraries through AIX4.2
2470      # and later when we are not doing run time linking.
2471      library_names_spec='$libname$release.a $libname.a'
2472      soname_spec='$libname$release$shared_ext$major'
2473      ;;
2474    svr4,*) # full svr4 only
2475      dynamic_linker="AIX lib.so.V[(]$shared_archive_member_spec.o[)]"
2476      library_names_spec='$libname$release$shared_ext$major $libname$shared_ext'
2477      # We do not specify a path in Import Files, so LIBPATH fires.
2478      shlibpath_overrides_runpath=yes
2479      ;;
2480    *,yes) # both, prefer svr4
2481      dynamic_linker="AIX lib.so.V[(]$shared_archive_member_spec.o[)], lib.a[(]lib.so.V[)]"
2482      library_names_spec='$libname$release$shared_ext$major $libname$shared_ext'
2483      # unpreferred sharedlib libNAME.a needs extra handling
2484      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"'
2485      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"'
2486      # We do not specify a path in Import Files, so LIBPATH fires.
2487      shlibpath_overrides_runpath=yes
2488      ;;
2489    *,no) # both, prefer aix
2490      dynamic_linker="AIX lib.a[(]lib.so.V[)], lib.so.V[(]$shared_archive_member_spec.o[)]"
2491      library_names_spec='$libname$release.a $libname.a'
2492      soname_spec='$libname$release$shared_ext$major'
2493      # unpreferred sharedlib libNAME.so.V and symlink libNAME.so need extra handling
2494      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)'
2495      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"'
2496      ;;
2497    esac
2498    shlibpath_var=LIBPATH
2499  fi
2500  ;;
2501
2502amigaos*)
2503  case $host_cpu in
2504  powerpc)
2505    # Since July 2007 AmigaOS4 officially supports .so libraries.
2506    # When compiling the executable, add -use-dynld -Lsobjs: to the compileline.
2507    library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$shared_ext'
2508    ;;
2509  m68k)
2510    library_names_spec='$libname.ixlibrary $libname.a'
2511    # Create ${libname}_ixlibrary.a entries in /sys/libs.
2512    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'
2513    ;;
2514  esac
2515  ;;
2516
2517beos*)
2518  library_names_spec='$libname$shared_ext'
2519  dynamic_linker="$host_os ld.so"
2520  shlibpath_var=LIBRARY_PATH
2521  ;;
2522
2523bsdi[[45]]*)
2524  version_type=linux # correct to gnu/linux during the next big refactor
2525  need_version=no
2526  library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$shared_ext'
2527  soname_spec='$libname$release$shared_ext$major'
2528  finish_cmds='PATH="\$PATH:/sbin" ldconfig $libdir'
2529  shlibpath_var=LD_LIBRARY_PATH
2530  sys_lib_search_path_spec="/shlib /usr/lib /usr/X11/lib /usr/contrib/lib /lib /usr/local/lib"
2531  sys_lib_dlsearch_path_spec="/shlib /usr/lib /usr/local/lib"
2532  # the default ld.so.conf also contains /usr/contrib/lib and
2533  # /usr/X11R6/lib (/usr/X11 is a link to /usr/X11R6), but let us allow
2534  # libtool to hard-code these into programs
2535  ;;
2536
2537cygwin* | mingw* | pw32* | cegcc*)
2538  version_type=windows
2539  shrext_cmds=.dll
2540  need_version=no
2541  need_lib_prefix=no
2542
2543  case $GCC,$cc_basename in
2544  yes,*)
2545    # gcc
2546    library_names_spec='$libname.dll.a'
2547    # DLL is installed to $(libdir)/../bin by postinstall_cmds
2548    postinstall_cmds='base_file=`basename \$file`~
2549      dlpath=`$SHELL 2>&1 -c '\''. $dir/'\''\$base_file'\''i; echo \$dlname'\''`~
2550      dldir=$destdir/`dirname \$dlpath`~
2551      test -d \$dldir || mkdir -p \$dldir~
2552      $install_prog $dir/$dlname \$dldir/$dlname~
2553      chmod a+x \$dldir/$dlname~
2554      if test -n '\''$stripme'\'' && test -n '\''$striplib'\''; then
2555        eval '\''$striplib \$dldir/$dlname'\'' || exit \$?;
2556      fi'
2557    postuninstall_cmds='dldll=`$SHELL 2>&1 -c '\''. $file; echo \$dlname'\''`~
2558      dlpath=$dir/\$dldll~
2559       $RM \$dlpath'
2560    shlibpath_overrides_runpath=yes
2561
2562    case $host_os in
2563    cygwin*)
2564      # Cygwin DLLs use 'cyg' prefix rather than 'lib'
2565      soname_spec='`echo $libname | sed -e 's/^lib/cyg/'``echo $release | $SED -e 's/[[.]]/-/g'`$versuffix$shared_ext'
2566m4_if([$1], [],[
2567      sys_lib_search_path_spec="$sys_lib_search_path_spec /usr/lib/w32api"])
2568      ;;
2569    mingw* | cegcc*)
2570      # MinGW DLLs use traditional 'lib' prefix
2571      soname_spec='$libname`echo $release | $SED -e 's/[[.]]/-/g'`$versuffix$shared_ext'
2572      ;;
2573    pw32*)
2574      # pw32 DLLs use 'pw' prefix rather than 'lib'
2575      library_names_spec='`echo $libname | sed -e 's/^lib/pw/'``echo $release | $SED -e 's/[[.]]/-/g'`$versuffix$shared_ext'
2576      ;;
2577    esac
2578    dynamic_linker='Win32 ld.exe'
2579    ;;
2580
2581  *,cl*)
2582    # Native MSVC
2583    libname_spec='$name'
2584    soname_spec='$libname`echo $release | $SED -e 's/[[.]]/-/g'`$versuffix$shared_ext'
2585    library_names_spec='$libname.dll.lib'
2586
2587    case $build_os in
2588    mingw*)
2589      sys_lib_search_path_spec=
2590      lt_save_ifs=$IFS
2591      IFS=';'
2592      for lt_path in $LIB
2593      do
2594        IFS=$lt_save_ifs
2595        # Let DOS variable expansion print the short 8.3 style file name.
2596        lt_path=`cd "$lt_path" 2>/dev/null && cmd //C "for %i in (".") do @echo %~si"`
2597        sys_lib_search_path_spec="$sys_lib_search_path_spec $lt_path"
2598      done
2599      IFS=$lt_save_ifs
2600      # Convert to MSYS style.
2601      sys_lib_search_path_spec=`$ECHO "$sys_lib_search_path_spec" | sed -e 's|\\\\|/|g' -e 's| \\([[a-zA-Z]]\\):| /\\1|g' -e 's|^ ||'`
2602      ;;
2603    cygwin*)
2604      # Convert to unix form, then to dos form, then back to unix form
2605      # but this time dos style (no spaces!) so that the unix form looks
2606      # like /cygdrive/c/PROGRA~1:/cygdr...
2607      sys_lib_search_path_spec=`cygpath --path --unix "$LIB"`
2608      sys_lib_search_path_spec=`cygpath --path --dos "$sys_lib_search_path_spec" 2>/dev/null`
2609      sys_lib_search_path_spec=`cygpath --path --unix "$sys_lib_search_path_spec" | $SED -e "s/$PATH_SEPARATOR/ /g"`
2610      ;;
2611    *)
2612      sys_lib_search_path_spec=$LIB
2613      if $ECHO "$sys_lib_search_path_spec" | [$GREP ';[c-zC-Z]:/' >/dev/null]; then
2614        # It is most probably a Windows format PATH.
2615        sys_lib_search_path_spec=`$ECHO "$sys_lib_search_path_spec" | $SED -e 's/;/ /g'`
2616      else
2617        sys_lib_search_path_spec=`$ECHO "$sys_lib_search_path_spec" | $SED -e "s/$PATH_SEPARATOR/ /g"`
2618      fi
2619      # FIXME: find the short name or the path components, as spaces are
2620      # common. (e.g. "Program Files" -> "PROGRA~1")
2621      ;;
2622    esac
2623
2624    # DLL is installed to $(libdir)/../bin by postinstall_cmds
2625    postinstall_cmds='base_file=`basename \$file`~
2626      dlpath=`$SHELL 2>&1 -c '\''. $dir/'\''\$base_file'\''i; echo \$dlname'\''`~
2627      dldir=$destdir/`dirname \$dlpath`~
2628      test -d \$dldir || mkdir -p \$dldir~
2629      $install_prog $dir/$dlname \$dldir/$dlname'
2630    postuninstall_cmds='dldll=`$SHELL 2>&1 -c '\''. $file; echo \$dlname'\''`~
2631      dlpath=$dir/\$dldll~
2632       $RM \$dlpath'
2633    shlibpath_overrides_runpath=yes
2634    dynamic_linker='Win32 link.exe'
2635    ;;
2636
2637  *)
2638    # Assume MSVC wrapper
2639    library_names_spec='$libname`echo $release | $SED -e 's/[[.]]/-/g'`$versuffix$shared_ext $libname.lib'
2640    dynamic_linker='Win32 ld.exe'
2641    ;;
2642  esac
2643  # FIXME: first we should search . and the directory the executable is in
2644  shlibpath_var=PATH
2645  ;;
2646
2647darwin* | rhapsody*)
2648  dynamic_linker="$host_os dyld"
2649  version_type=darwin
2650  need_lib_prefix=no
2651  need_version=no
2652  library_names_spec='$libname$release$major$shared_ext $libname$shared_ext'
2653  soname_spec='$libname$release$major$shared_ext'
2654  shlibpath_overrides_runpath=yes
2655  shlibpath_var=DYLD_LIBRARY_PATH
2656  shrext_cmds='`test .$module = .yes && echo .so || echo .dylib`'
2657m4_if([$1], [],[
2658  sys_lib_search_path_spec="$sys_lib_search_path_spec /usr/local/lib"])
2659  sys_lib_dlsearch_path_spec='/usr/local/lib /lib /usr/lib'
2660  ;;
2661
2662dgux*)
2663  version_type=linux # correct to gnu/linux during the next big refactor
2664  need_lib_prefix=no
2665  need_version=no
2666  library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$shared_ext'
2667  soname_spec='$libname$release$shared_ext$major'
2668  shlibpath_var=LD_LIBRARY_PATH
2669  ;;
2670
2671freebsd* | dragonfly*)
2672  # DragonFly does not have aout.  When/if they implement a new
2673  # versioning mechanism, adjust this.
2674  if test -x /usr/bin/objformat; then
2675    objformat=`/usr/bin/objformat`
2676  else
2677    case $host_os in
2678    freebsd[[23]].*) objformat=aout ;;
2679    *) objformat=elf ;;
2680    esac
2681  fi
2682  version_type=freebsd-$objformat
2683  case $version_type in
2684    freebsd-elf*)
2685      library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$shared_ext'
2686      soname_spec='$libname$release$shared_ext$major'
2687      need_version=no
2688      need_lib_prefix=no
2689      ;;
2690    freebsd-*)
2691      library_names_spec='$libname$release$shared_ext$versuffix $libname$shared_ext$versuffix'
2692      need_version=yes
2693      ;;
2694  esac
2695  shlibpath_var=LD_LIBRARY_PATH
2696  case $host_os in
2697  freebsd2.*)
2698    shlibpath_overrides_runpath=yes
2699    ;;
2700  freebsd3.[[01]]* | freebsdelf3.[[01]]*)
2701    shlibpath_overrides_runpath=yes
2702    hardcode_into_libs=yes
2703    ;;
2704  freebsd3.[[2-9]]* | freebsdelf3.[[2-9]]* | \
2705  freebsd4.[[0-5]] | freebsdelf4.[[0-5]] | freebsd4.1.1 | freebsdelf4.1.1)
2706    shlibpath_overrides_runpath=no
2707    hardcode_into_libs=yes
2708    ;;
2709  *) # from 4.6 on, and DragonFly
2710    shlibpath_overrides_runpath=yes
2711    hardcode_into_libs=yes
2712    ;;
2713  esac
2714  ;;
2715
2716haiku*)
2717  version_type=linux # correct to gnu/linux during the next big refactor
2718  need_lib_prefix=no
2719  need_version=no
2720  dynamic_linker="$host_os runtime_loader"
2721  library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$shared_ext'
2722  soname_spec='$libname$release$shared_ext$major'
2723  shlibpath_var=LIBRARY_PATH
2724  shlibpath_overrides_runpath=no
2725  sys_lib_dlsearch_path_spec='/boot/home/config/lib /boot/common/lib /boot/system/lib'
2726  hardcode_into_libs=yes
2727  ;;
2728
2729hpux9* | hpux10* | hpux11*)
2730  # Give a soname corresponding to the major version so that dld.sl refuses to
2731  # link against other versions.
2732  version_type=sunos
2733  need_lib_prefix=no
2734  need_version=no
2735  case $host_cpu in
2736  ia64*)
2737    shrext_cmds='.so'
2738    hardcode_into_libs=yes
2739    dynamic_linker="$host_os dld.so"
2740    shlibpath_var=LD_LIBRARY_PATH
2741    shlibpath_overrides_runpath=yes # Unless +noenvvar is specified.
2742    library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$shared_ext'
2743    soname_spec='$libname$release$shared_ext$major'
2744    if test 32 = "$HPUX_IA64_MODE"; then
2745      sys_lib_search_path_spec="/usr/lib/hpux32 /usr/local/lib/hpux32 /usr/local/lib"
2746      sys_lib_dlsearch_path_spec=/usr/lib/hpux32
2747    else
2748      sys_lib_search_path_spec="/usr/lib/hpux64 /usr/local/lib/hpux64"
2749      sys_lib_dlsearch_path_spec=/usr/lib/hpux64
2750    fi
2751    ;;
2752  hppa*64*)
2753    shrext_cmds='.sl'
2754    hardcode_into_libs=yes
2755    dynamic_linker="$host_os dld.sl"
2756    shlibpath_var=LD_LIBRARY_PATH # How should we handle SHLIB_PATH
2757    shlibpath_overrides_runpath=yes # Unless +noenvvar is specified.
2758    library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$shared_ext'
2759    soname_spec='$libname$release$shared_ext$major'
2760    sys_lib_search_path_spec="/usr/lib/pa20_64 /usr/ccs/lib/pa20_64"
2761    sys_lib_dlsearch_path_spec=$sys_lib_search_path_spec
2762    ;;
2763  *)
2764    shrext_cmds='.sl'
2765    dynamic_linker="$host_os dld.sl"
2766    shlibpath_var=SHLIB_PATH
2767    shlibpath_overrides_runpath=no # +s is required to enable SHLIB_PATH
2768    library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$shared_ext'
2769    soname_spec='$libname$release$shared_ext$major'
2770    ;;
2771  esac
2772  # HP-UX runs *really* slowly unless shared libraries are mode 555, ...
2773  postinstall_cmds='chmod 555 $lib'
2774  # or fails outright, so override atomically:
2775  install_override_mode=555
2776  ;;
2777
2778interix[[3-9]]*)
2779  version_type=linux # correct to gnu/linux during the next big refactor
2780  need_lib_prefix=no
2781  need_version=no
2782  library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$shared_ext'
2783  soname_spec='$libname$release$shared_ext$major'
2784  dynamic_linker='Interix 3.x ld.so.1 (PE, like ELF)'
2785  shlibpath_var=LD_LIBRARY_PATH
2786  shlibpath_overrides_runpath=no
2787  hardcode_into_libs=yes
2788  ;;
2789
2790irix5* | irix6* | nonstopux*)
2791  case $host_os in
2792    nonstopux*) version_type=nonstopux ;;
2793    *)
2794	if test yes = "$lt_cv_prog_gnu_ld"; then
2795		version_type=linux # correct to gnu/linux during the next big refactor
2796	else
2797		version_type=irix
2798	fi ;;
2799  esac
2800  need_lib_prefix=no
2801  need_version=no
2802  soname_spec='$libname$release$shared_ext$major'
2803  library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$release$shared_ext $libname$shared_ext'
2804  case $host_os in
2805  irix5* | nonstopux*)
2806    libsuff= shlibsuff=
2807    ;;
2808  *)
2809    case $LD in # libtool.m4 will add one of these switches to LD
2810    *-32|*"-32 "|*-melf32bsmip|*"-melf32bsmip ")
2811      libsuff= shlibsuff= libmagic=32-bit;;
2812    *-n32|*"-n32 "|*-melf32bmipn32|*"-melf32bmipn32 ")
2813      libsuff=32 shlibsuff=N32 libmagic=N32;;
2814    *-64|*"-64 "|*-melf64bmip|*"-melf64bmip ")
2815      libsuff=64 shlibsuff=64 libmagic=64-bit;;
2816    *) libsuff= shlibsuff= libmagic=never-match;;
2817    esac
2818    ;;
2819  esac
2820  shlibpath_var=LD_LIBRARY${shlibsuff}_PATH
2821  shlibpath_overrides_runpath=no
2822  sys_lib_search_path_spec="/usr/lib$libsuff /lib$libsuff /usr/local/lib$libsuff"
2823  sys_lib_dlsearch_path_spec="/usr/lib$libsuff /lib$libsuff"
2824  hardcode_into_libs=yes
2825  ;;
2826
2827# No shared lib support for Linux oldld, aout, or coff.
2828linux*oldld* | linux*aout* | linux*coff*)
2829  dynamic_linker=no
2830  ;;
2831
2832linux*android*)
2833  version_type=none # Android doesn't support versioned libraries.
2834  need_lib_prefix=no
2835  need_version=no
2836  library_names_spec='$libname$release$shared_ext'
2837  soname_spec='$libname$release$shared_ext'
2838  finish_cmds=
2839  shlibpath_var=LD_LIBRARY_PATH
2840  shlibpath_overrides_runpath=yes
2841
2842  # This implies no fast_install, which is unacceptable.
2843  # Some rework will be needed to allow for fast_install
2844  # before this can be enabled.
2845  hardcode_into_libs=yes
2846
2847  dynamic_linker='Android linker'
2848  # Don't embed -rpath directories since the linker doesn't support them.
2849  _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-L$libdir'
2850  ;;
2851
2852# This must be glibc/ELF.
2853linux* | k*bsd*-gnu | kopensolaris*-gnu | gnu*)
2854  version_type=linux # correct to gnu/linux during the next big refactor
2855  need_lib_prefix=no
2856  need_version=no
2857  library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$shared_ext'
2858  soname_spec='$libname$release$shared_ext$major'
2859  finish_cmds='PATH="\$PATH:/sbin" ldconfig -n $libdir'
2860  shlibpath_var=LD_LIBRARY_PATH
2861  shlibpath_overrides_runpath=no
2862
2863  # Some binutils ld are patched to set DT_RUNPATH
2864  AC_CACHE_VAL([lt_cv_shlibpath_overrides_runpath],
2865    [lt_cv_shlibpath_overrides_runpath=no
2866    save_LDFLAGS=$LDFLAGS
2867    save_libdir=$libdir
2868    eval "libdir=/foo; wl=\"$_LT_TAGVAR(lt_prog_compiler_wl, $1)\"; \
2869	 LDFLAGS=\"\$LDFLAGS $_LT_TAGVAR(hardcode_libdir_flag_spec, $1)\""
2870    AC_LINK_IFELSE([AC_LANG_PROGRAM([],[])],
2871      [AS_IF([ ($OBJDUMP -p conftest$ac_exeext) 2>/dev/null | grep "RUNPATH.*$libdir" >/dev/null],
2872	 [lt_cv_shlibpath_overrides_runpath=yes])])
2873    LDFLAGS=$save_LDFLAGS
2874    libdir=$save_libdir
2875    ])
2876  shlibpath_overrides_runpath=$lt_cv_shlibpath_overrides_runpath
2877
2878  # This implies no fast_install, which is unacceptable.
2879  # Some rework will be needed to allow for fast_install
2880  # before this can be enabled.
2881  hardcode_into_libs=yes
2882
2883  # Ideally, we could use ldconfig to report *all* directores which are
2884  # searched for libraries, however this is still not possible.  Aside from not
2885  # being certain /sbin/ldconfig is available, command
2886  # 'ldconfig -N -X -v | grep ^/' on 64bit Fedora does not report /usr/lib64,
2887  # even though it is searched at run-time.  Try to do the best guess by
2888  # appending ld.so.conf contents (and includes) to the search path.
2889  if test -f /etc/ld.so.conf; then
2890    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' ' '`
2891    sys_lib_dlsearch_path_spec="/lib /usr/lib $lt_ld_extra"
2892  fi
2893
2894  # We used to test for /lib/ld.so.1 and disable shared libraries on
2895  # powerpc, because MkLinux only supported shared libraries with the
2896  # GNU dynamic linker.  Since this was broken with cross compilers,
2897  # most powerpc-linux boxes support dynamic linking these days and
2898  # people can always --disable-shared, the test was removed, and we
2899  # assume the GNU/Linux dynamic linker is in use.
2900  dynamic_linker='GNU/Linux ld.so'
2901  ;;
2902
2903netbsdelf*-gnu)
2904  version_type=linux
2905  need_lib_prefix=no
2906  need_version=no
2907  library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major ${libname}${shared_ext}'
2908  soname_spec='${libname}${release}${shared_ext}$major'
2909  shlibpath_var=LD_LIBRARY_PATH
2910  shlibpath_overrides_runpath=no
2911  hardcode_into_libs=yes
2912  dynamic_linker='NetBSD ld.elf_so'
2913  ;;
2914
2915netbsd*)
2916  version_type=sunos
2917  need_lib_prefix=no
2918  need_version=no
2919  if echo __ELF__ | $CC -E - | $GREP __ELF__ >/dev/null; then
2920    library_names_spec='$libname$release$shared_ext$versuffix $libname$shared_ext$versuffix'
2921    finish_cmds='PATH="\$PATH:/sbin" ldconfig -m $libdir'
2922    dynamic_linker='NetBSD (a.out) ld.so'
2923  else
2924    library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$shared_ext'
2925    soname_spec='$libname$release$shared_ext$major'
2926    dynamic_linker='NetBSD ld.elf_so'
2927  fi
2928  shlibpath_var=LD_LIBRARY_PATH
2929  shlibpath_overrides_runpath=yes
2930  hardcode_into_libs=yes
2931  ;;
2932
2933newsos6)
2934  version_type=linux # correct to gnu/linux during the next big refactor
2935  library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$shared_ext'
2936  shlibpath_var=LD_LIBRARY_PATH
2937  shlibpath_overrides_runpath=yes
2938  ;;
2939
2940*nto* | *qnx*)
2941  version_type=qnx
2942  need_lib_prefix=no
2943  need_version=no
2944  library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$shared_ext'
2945  soname_spec='$libname$release$shared_ext$major'
2946  shlibpath_var=LD_LIBRARY_PATH
2947  shlibpath_overrides_runpath=no
2948  hardcode_into_libs=yes
2949  dynamic_linker='ldqnx.so'
2950  ;;
2951
2952openbsd* | bitrig*)
2953  version_type=sunos
2954  sys_lib_dlsearch_path_spec=/usr/lib
2955  need_lib_prefix=no
2956  if test -z "`echo __ELF__ | $CC -E - | $GREP __ELF__`"; then
2957    need_version=no
2958  else
2959    need_version=yes
2960  fi
2961  library_names_spec='$libname$release$shared_ext$versuffix $libname$shared_ext$versuffix'
2962  finish_cmds='PATH="\$PATH:/sbin" ldconfig -m $libdir'
2963  shlibpath_var=LD_LIBRARY_PATH
2964  shlibpath_overrides_runpath=yes
2965  ;;
2966
2967os2*)
2968  libname_spec='$name'
2969  version_type=windows
2970  shrext_cmds=.dll
2971  need_version=no
2972  need_lib_prefix=no
2973  # OS/2 can only load a DLL with a base name of 8 characters or less.
2974  soname_spec='`test -n "$os2dllname" && libname="$os2dllname";
2975    v=$($ECHO $release$versuffix | tr -d .-);
2976    n=$($ECHO $libname | cut -b -$((8 - ${#v})) | tr . _);
2977    $ECHO $n$v`$shared_ext'
2978  library_names_spec='${libname}_dll.$libext'
2979  dynamic_linker='OS/2 ld.exe'
2980  shlibpath_var=BEGINLIBPATH
2981  sys_lib_search_path_spec="/lib /usr/lib /usr/local/lib"
2982  sys_lib_dlsearch_path_spec=$sys_lib_search_path_spec
2983  postinstall_cmds='base_file=`basename \$file`~
2984    dlpath=`$SHELL 2>&1 -c '\''. $dir/'\''\$base_file'\''i; $ECHO \$dlname'\''`~
2985    dldir=$destdir/`dirname \$dlpath`~
2986    test -d \$dldir || mkdir -p \$dldir~
2987    $install_prog $dir/$dlname \$dldir/$dlname~
2988    chmod a+x \$dldir/$dlname~
2989    if test -n '\''$stripme'\'' && test -n '\''$striplib'\''; then
2990      eval '\''$striplib \$dldir/$dlname'\'' || exit \$?;
2991    fi'
2992  postuninstall_cmds='dldll=`$SHELL 2>&1 -c '\''. $file; $ECHO \$dlname'\''`~
2993    dlpath=$dir/\$dldll~
2994    $RM \$dlpath'
2995  ;;
2996
2997osf3* | osf4* | osf5*)
2998  version_type=osf
2999  need_lib_prefix=no
3000  need_version=no
3001  soname_spec='$libname$release$shared_ext$major'
3002  library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$shared_ext'
3003  shlibpath_var=LD_LIBRARY_PATH
3004  sys_lib_search_path_spec="/usr/shlib /usr/ccs/lib /usr/lib/cmplrs/cc /usr/lib /usr/local/lib /var/shlib"
3005  sys_lib_dlsearch_path_spec=$sys_lib_search_path_spec
3006  ;;
3007
3008rdos*)
3009  dynamic_linker=no
3010  ;;
3011
3012solaris*)
3013  version_type=linux # correct to gnu/linux during the next big refactor
3014  need_lib_prefix=no
3015  need_version=no
3016  library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$shared_ext'
3017  soname_spec='$libname$release$shared_ext$major'
3018  shlibpath_var=LD_LIBRARY_PATH
3019  shlibpath_overrides_runpath=yes
3020  hardcode_into_libs=yes
3021  # ldd complains unless libraries are executable
3022  postinstall_cmds='chmod +x $lib'
3023  ;;
3024
3025sunos4*)
3026  version_type=sunos
3027  library_names_spec='$libname$release$shared_ext$versuffix $libname$shared_ext$versuffix'
3028  finish_cmds='PATH="\$PATH:/usr/etc" ldconfig $libdir'
3029  shlibpath_var=LD_LIBRARY_PATH
3030  shlibpath_overrides_runpath=yes
3031  if test yes = "$with_gnu_ld"; then
3032    need_lib_prefix=no
3033  fi
3034  need_version=yes
3035  ;;
3036
3037sysv4 | sysv4.3*)
3038  version_type=linux # correct to gnu/linux during the next big refactor
3039  library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$shared_ext'
3040  soname_spec='$libname$release$shared_ext$major'
3041  shlibpath_var=LD_LIBRARY_PATH
3042  case $host_vendor in
3043    sni)
3044      shlibpath_overrides_runpath=no
3045      need_lib_prefix=no
3046      runpath_var=LD_RUN_PATH
3047      ;;
3048    siemens)
3049      need_lib_prefix=no
3050      ;;
3051    motorola)
3052      need_lib_prefix=no
3053      need_version=no
3054      shlibpath_overrides_runpath=no
3055      sys_lib_search_path_spec='/lib /usr/lib /usr/ccs/lib'
3056      ;;
3057  esac
3058  ;;
3059
3060sysv4*MP*)
3061  if test -d /usr/nec; then
3062    version_type=linux # correct to gnu/linux during the next big refactor
3063    library_names_spec='$libname$shared_ext.$versuffix $libname$shared_ext.$major $libname$shared_ext'
3064    soname_spec='$libname$shared_ext.$major'
3065    shlibpath_var=LD_LIBRARY_PATH
3066  fi
3067  ;;
3068
3069sysv5* | sco3.2v5* | sco5v6* | unixware* | OpenUNIX* | sysv4*uw2*)
3070  version_type=sco
3071  need_lib_prefix=no
3072  need_version=no
3073  library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext $libname$shared_ext'
3074  soname_spec='$libname$release$shared_ext$major'
3075  shlibpath_var=LD_LIBRARY_PATH
3076  shlibpath_overrides_runpath=yes
3077  hardcode_into_libs=yes
3078  if test yes = "$with_gnu_ld"; then
3079    sys_lib_search_path_spec='/usr/local/lib /usr/gnu/lib /usr/ccs/lib /usr/lib /lib'
3080  else
3081    sys_lib_search_path_spec='/usr/ccs/lib /usr/lib'
3082    case $host_os in
3083      sco3.2v5*)
3084        sys_lib_search_path_spec="$sys_lib_search_path_spec /lib"
3085	;;
3086    esac
3087  fi
3088  sys_lib_dlsearch_path_spec='/usr/lib'
3089  ;;
3090
3091tpf*)
3092  # TPF is a cross-target only.  Preferred cross-host = GNU/Linux.
3093  version_type=linux # correct to gnu/linux during the next big refactor
3094  need_lib_prefix=no
3095  need_version=no
3096  library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$shared_ext'
3097  shlibpath_var=LD_LIBRARY_PATH
3098  shlibpath_overrides_runpath=no
3099  hardcode_into_libs=yes
3100  ;;
3101
3102uts4*)
3103  version_type=linux # correct to gnu/linux during the next big refactor
3104  library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$shared_ext'
3105  soname_spec='$libname$release$shared_ext$major'
3106  shlibpath_var=LD_LIBRARY_PATH
3107  ;;
3108
3109*)
3110  dynamic_linker=no
3111  ;;
3112esac
3113AC_MSG_RESULT([$dynamic_linker])
3114test no = "$dynamic_linker" && can_build_shared=no
3115
3116variables_saved_for_relink="PATH $shlibpath_var $runpath_var"
3117if test yes = "$GCC"; then
3118  variables_saved_for_relink="$variables_saved_for_relink GCC_EXEC_PREFIX COMPILER_PATH LIBRARY_PATH"
3119fi
3120
3121if test set = "${lt_cv_sys_lib_search_path_spec+set}"; then
3122  sys_lib_search_path_spec=$lt_cv_sys_lib_search_path_spec
3123fi
3124
3125if test set = "${lt_cv_sys_lib_dlsearch_path_spec+set}"; then
3126  sys_lib_dlsearch_path_spec=$lt_cv_sys_lib_dlsearch_path_spec
3127fi
3128
3129# remember unaugmented sys_lib_dlsearch_path content for libtool script decls...
3130configure_time_dlsearch_path=$sys_lib_dlsearch_path_spec
3131
3132# ... but it needs LT_SYS_LIBRARY_PATH munging for other configure-time code
3133func_munge_path_list sys_lib_dlsearch_path_spec "$LT_SYS_LIBRARY_PATH"
3134
3135# to be used as default LT_SYS_LIBRARY_PATH value in generated libtool
3136configure_time_lt_sys_library_path=$LT_SYS_LIBRARY_PATH
3137
3138_LT_DECL([], [variables_saved_for_relink], [1],
3139    [Variables whose values should be saved in libtool wrapper scripts and
3140    restored at link time])
3141_LT_DECL([], [need_lib_prefix], [0],
3142    [Do we need the "lib" prefix for modules?])
3143_LT_DECL([], [need_version], [0], [Do we need a version for libraries?])
3144_LT_DECL([], [version_type], [0], [Library versioning type])
3145_LT_DECL([], [runpath_var], [0],  [Shared library runtime path variable])
3146_LT_DECL([], [shlibpath_var], [0],[Shared library path variable])
3147_LT_DECL([], [shlibpath_overrides_runpath], [0],
3148    [Is shlibpath searched before the hard-coded library search path?])
3149_LT_DECL([], [libname_spec], [1], [Format of library name prefix])
3150_LT_DECL([], [library_names_spec], [1],
3151    [[List of archive names.  First name is the real one, the rest are links.
3152    The last name is the one that the linker finds with -lNAME]])
3153_LT_DECL([], [soname_spec], [1],
3154    [[The coded name of the library, if different from the real name]])
3155_LT_DECL([], [install_override_mode], [1],
3156    [Permission mode override for installation of shared libraries])
3157_LT_DECL([], [postinstall_cmds], [2],
3158    [Command to use after installation of a shared archive])
3159_LT_DECL([], [postuninstall_cmds], [2],
3160    [Command to use after uninstallation of a shared archive])
3161_LT_DECL([], [finish_cmds], [2],
3162    [Commands used to finish a libtool library installation in a directory])
3163_LT_DECL([], [finish_eval], [1],
3164    [[As "finish_cmds", except a single script fragment to be evaled but
3165    not shown]])
3166_LT_DECL([], [hardcode_into_libs], [0],
3167    [Whether we should hardcode library paths into libraries])
3168_LT_DECL([], [sys_lib_search_path_spec], [2],
3169    [Compile-time system search path for libraries])
3170_LT_DECL([sys_lib_dlsearch_path_spec], [configure_time_dlsearch_path], [2],
3171    [Detected run-time system search path for libraries])
3172_LT_DECL([], [configure_time_lt_sys_library_path], [2],
3173    [Explicit LT_SYS_LIBRARY_PATH set during ./configure time])
3174])# _LT_SYS_DYNAMIC_LINKER
3175
3176
3177# _LT_PATH_TOOL_PREFIX(TOOL)
3178# --------------------------
3179# find a file program that can recognize shared library
3180AC_DEFUN([_LT_PATH_TOOL_PREFIX],
3181[m4_require([_LT_DECL_EGREP])dnl
3182AC_MSG_CHECKING([for $1])
3183AC_CACHE_VAL(lt_cv_path_MAGIC_CMD,
3184[case $MAGIC_CMD in
3185[[\\/*] |  ?:[\\/]*])
3186  lt_cv_path_MAGIC_CMD=$MAGIC_CMD # Let the user override the test with a path.
3187  ;;
3188*)
3189  lt_save_MAGIC_CMD=$MAGIC_CMD
3190  lt_save_ifs=$IFS; IFS=$PATH_SEPARATOR
3191dnl $ac_dummy forces splitting on constant user-supplied paths.
3192dnl POSIX.2 word splitting is done only on the output of word expansions,
3193dnl not every word.  This closes a longstanding sh security hole.
3194  ac_dummy="m4_if([$2], , $PATH, [$2])"
3195  for ac_dir in $ac_dummy; do
3196    IFS=$lt_save_ifs
3197    test -z "$ac_dir" && ac_dir=.
3198    if test -f "$ac_dir/$1"; then
3199      lt_cv_path_MAGIC_CMD=$ac_dir/"$1"
3200      if test -n "$file_magic_test_file"; then
3201	case $deplibs_check_method in
3202	"file_magic "*)
3203	  file_magic_regex=`expr "$deplibs_check_method" : "file_magic \(.*\)"`
3204	  MAGIC_CMD=$lt_cv_path_MAGIC_CMD
3205	  if eval $file_magic_cmd \$file_magic_test_file 2> /dev/null |
3206	    $EGREP "$file_magic_regex" > /dev/null; then
3207	    :
3208	  else
3209	    cat <<_LT_EOF 1>&2
3210
3211*** Warning: the command libtool uses to detect shared libraries,
3212*** $file_magic_cmd, produces output that libtool cannot recognize.
3213*** The result is that libtool may fail to recognize shared libraries
3214*** as such.  This will affect the creation of libtool libraries that
3215*** depend on shared libraries, but programs linked with such libtool
3216*** libraries will work regardless of this problem.  Nevertheless, you
3217*** may want to report the problem to your system manager and/or to
3218*** bug-libtool@gnu.org
3219
3220_LT_EOF
3221	  fi ;;
3222	esac
3223      fi
3224      break
3225    fi
3226  done
3227  IFS=$lt_save_ifs
3228  MAGIC_CMD=$lt_save_MAGIC_CMD
3229  ;;
3230esac])
3231MAGIC_CMD=$lt_cv_path_MAGIC_CMD
3232if test -n "$MAGIC_CMD"; then
3233  AC_MSG_RESULT($MAGIC_CMD)
3234else
3235  AC_MSG_RESULT(no)
3236fi
3237_LT_DECL([], [MAGIC_CMD], [0],
3238	 [Used to examine libraries when file_magic_cmd begins with "file"])dnl
3239])# _LT_PATH_TOOL_PREFIX
3240
3241# Old name:
3242AU_ALIAS([AC_PATH_TOOL_PREFIX], [_LT_PATH_TOOL_PREFIX])
3243dnl aclocal-1.4 backwards compatibility:
3244dnl AC_DEFUN([AC_PATH_TOOL_PREFIX], [])
3245
3246
3247# _LT_PATH_MAGIC
3248# --------------
3249# find a file program that can recognize a shared library
3250m4_defun([_LT_PATH_MAGIC],
3251[_LT_PATH_TOOL_PREFIX(${ac_tool_prefix}file, /usr/bin$PATH_SEPARATOR$PATH)
3252if test -z "$lt_cv_path_MAGIC_CMD"; then
3253  if test -n "$ac_tool_prefix"; then
3254    _LT_PATH_TOOL_PREFIX(file, /usr/bin$PATH_SEPARATOR$PATH)
3255  else
3256    MAGIC_CMD=:
3257  fi
3258fi
3259])# _LT_PATH_MAGIC
3260
3261
3262# LT_PATH_LD
3263# ----------
3264# find the pathname to the GNU or non-GNU linker
3265AC_DEFUN([LT_PATH_LD],
3266[AC_REQUIRE([AC_PROG_CC])dnl
3267AC_REQUIRE([AC_CANONICAL_HOST])dnl
3268AC_REQUIRE([AC_CANONICAL_BUILD])dnl
3269m4_require([_LT_DECL_SED])dnl
3270m4_require([_LT_DECL_EGREP])dnl
3271m4_require([_LT_PROG_ECHO_BACKSLASH])dnl
3272
3273AC_ARG_WITH([gnu-ld],
3274    [AS_HELP_STRING([--with-gnu-ld],
3275	[assume the C compiler uses GNU ld @<:@default=no@:>@])],
3276    [test no = "$withval" || with_gnu_ld=yes],
3277    [with_gnu_ld=no])dnl
3278
3279ac_prog=ld
3280if test yes = "$GCC"; then
3281  # Check if gcc -print-prog-name=ld gives a path.
3282  AC_MSG_CHECKING([for ld used by $CC])
3283  case $host in
3284  *-*-mingw*)
3285    # gcc leaves a trailing carriage return, which upsets mingw
3286    ac_prog=`($CC -print-prog-name=ld) 2>&5 | tr -d '\015'` ;;
3287  *)
3288    ac_prog=`($CC -print-prog-name=ld) 2>&5` ;;
3289  esac
3290  case $ac_prog in
3291    # Accept absolute paths.
3292    [[\\/]]* | ?:[[\\/]]*)
3293      re_direlt='/[[^/]][[^/]]*/\.\./'
3294      # Canonicalize the pathname of ld
3295      ac_prog=`$ECHO "$ac_prog"| $SED 's%\\\\%/%g'`
3296      while $ECHO "$ac_prog" | $GREP "$re_direlt" > /dev/null 2>&1; do
3297	ac_prog=`$ECHO $ac_prog| $SED "s%$re_direlt%/%"`
3298      done
3299      test -z "$LD" && LD=$ac_prog
3300      ;;
3301  "")
3302    # If it fails, then pretend we aren't using GCC.
3303    ac_prog=ld
3304    ;;
3305  *)
3306    # If it is relative, then search for the first ld in PATH.
3307    with_gnu_ld=unknown
3308    ;;
3309  esac
3310elif test yes = "$with_gnu_ld"; then
3311  AC_MSG_CHECKING([for GNU ld])
3312else
3313  AC_MSG_CHECKING([for non-GNU ld])
3314fi
3315AC_CACHE_VAL(lt_cv_path_LD,
3316[if test -z "$LD"; then
3317  lt_save_ifs=$IFS; IFS=$PATH_SEPARATOR
3318  for ac_dir in $PATH; do
3319    IFS=$lt_save_ifs
3320    test -z "$ac_dir" && ac_dir=.
3321    if test -f "$ac_dir/$ac_prog" || test -f "$ac_dir/$ac_prog$ac_exeext"; then
3322      lt_cv_path_LD=$ac_dir/$ac_prog
3323      # Check to see if the program is GNU ld.  I'd rather use --version,
3324      # but apparently some variants of GNU ld only accept -v.
3325      # Break only if it was the GNU/non-GNU ld that we prefer.
3326      case `"$lt_cv_path_LD" -v 2>&1 </dev/null` in
3327      *GNU* | *'with BFD'*)
3328	test no != "$with_gnu_ld" && break
3329	;;
3330      *)
3331	test yes != "$with_gnu_ld" && break
3332	;;
3333      esac
3334    fi
3335  done
3336  IFS=$lt_save_ifs
3337else
3338  lt_cv_path_LD=$LD # Let the user override the test with a path.
3339fi])
3340LD=$lt_cv_path_LD
3341if test -n "$LD"; then
3342  AC_MSG_RESULT($LD)
3343else
3344  AC_MSG_RESULT(no)
3345fi
3346test -z "$LD" && AC_MSG_ERROR([no acceptable ld found in \$PATH])
3347_LT_PATH_LD_GNU
3348AC_SUBST([LD])
3349
3350_LT_TAGDECL([], [LD], [1], [The linker used to build libraries])
3351])# LT_PATH_LD
3352
3353# Old names:
3354AU_ALIAS([AM_PROG_LD], [LT_PATH_LD])
3355AU_ALIAS([AC_PROG_LD], [LT_PATH_LD])
3356dnl aclocal-1.4 backwards compatibility:
3357dnl AC_DEFUN([AM_PROG_LD], [])
3358dnl AC_DEFUN([AC_PROG_LD], [])
3359
3360
3361# _LT_PATH_LD_GNU
3362#- --------------
3363m4_defun([_LT_PATH_LD_GNU],
3364[AC_CACHE_CHECK([if the linker ($LD) is GNU ld], lt_cv_prog_gnu_ld,
3365[# I'd rather use --version here, but apparently some GNU lds only accept -v.
3366case `$LD -v 2>&1 </dev/null` in
3367*GNU* | *'with BFD'*)
3368  lt_cv_prog_gnu_ld=yes
3369  ;;
3370*)
3371  lt_cv_prog_gnu_ld=no
3372  ;;
3373esac])
3374with_gnu_ld=$lt_cv_prog_gnu_ld
3375])# _LT_PATH_LD_GNU
3376
3377
3378# _LT_CMD_RELOAD
3379# --------------
3380# find reload flag for linker
3381#   -- PORTME Some linkers may need a different reload flag.
3382m4_defun([_LT_CMD_RELOAD],
3383[AC_CACHE_CHECK([for $LD option to reload object files],
3384  lt_cv_ld_reload_flag,
3385  [lt_cv_ld_reload_flag='-r'])
3386reload_flag=$lt_cv_ld_reload_flag
3387case $reload_flag in
3388"" | " "*) ;;
3389*) reload_flag=" $reload_flag" ;;
3390esac
3391reload_cmds='$LD$reload_flag -o $output$reload_objs'
3392case $host_os in
3393  cygwin* | mingw* | pw32* | cegcc*)
3394    if test yes != "$GCC"; then
3395      reload_cmds=false
3396    fi
3397    ;;
3398  darwin*)
3399    if test yes = "$GCC"; then
3400      reload_cmds='$LTCC $LTCFLAGS -nostdlib $wl-r -o $output$reload_objs'
3401    else
3402      reload_cmds='$LD$reload_flag -o $output$reload_objs'
3403    fi
3404    ;;
3405esac
3406_LT_TAGDECL([], [reload_flag], [1], [How to create reloadable object files])dnl
3407_LT_TAGDECL([], [reload_cmds], [2])dnl
3408])# _LT_CMD_RELOAD
3409
3410
3411# _LT_PATH_DD
3412# -----------
3413# find a working dd
3414m4_defun([_LT_PATH_DD],
3415[AC_CACHE_CHECK([for a working dd], [ac_cv_path_lt_DD],
3416[printf 0123456789abcdef0123456789abcdef >conftest.i
3417cat conftest.i conftest.i >conftest2.i
3418: ${lt_DD:=$DD}
3419AC_PATH_PROGS_FEATURE_CHECK([lt_DD], [dd],
3420[if "$ac_path_lt_DD" bs=32 count=1 <conftest2.i >conftest.out 2>/dev/null; then
3421  cmp -s conftest.i conftest.out \
3422  && ac_cv_path_lt_DD="$ac_path_lt_DD" ac_path_lt_DD_found=:
3423fi])
3424rm -f conftest.i conftest2.i conftest.out])
3425])# _LT_PATH_DD
3426
3427
3428# _LT_CMD_TRUNCATE
3429# ----------------
3430# find command to truncate a binary pipe
3431m4_defun([_LT_CMD_TRUNCATE],
3432[m4_require([_LT_PATH_DD])
3433AC_CACHE_CHECK([how to truncate binary pipes], [lt_cv_truncate_bin],
3434[printf 0123456789abcdef0123456789abcdef >conftest.i
3435cat conftest.i conftest.i >conftest2.i
3436lt_cv_truncate_bin=
3437if "$ac_cv_path_lt_DD" bs=32 count=1 <conftest2.i >conftest.out 2>/dev/null; then
3438  cmp -s conftest.i conftest.out \
3439  && lt_cv_truncate_bin="$ac_cv_path_lt_DD bs=4096 count=1"
3440fi
3441rm -f conftest.i conftest2.i conftest.out
3442test -z "$lt_cv_truncate_bin" && lt_cv_truncate_bin="$SED -e 4q"])
3443_LT_DECL([lt_truncate_bin], [lt_cv_truncate_bin], [1],
3444  [Command to truncate a binary pipe])
3445])# _LT_CMD_TRUNCATE
3446
3447
3448# _LT_CHECK_MAGIC_METHOD
3449# ----------------------
3450# how to check for library dependencies
3451#  -- PORTME fill in with the dynamic library characteristics
3452m4_defun([_LT_CHECK_MAGIC_METHOD],
3453[m4_require([_LT_DECL_EGREP])
3454m4_require([_LT_DECL_OBJDUMP])
3455AC_CACHE_CHECK([how to recognize dependent libraries],
3456lt_cv_deplibs_check_method,
3457[lt_cv_file_magic_cmd='$MAGIC_CMD'
3458lt_cv_file_magic_test_file=
3459lt_cv_deplibs_check_method='unknown'
3460# Need to set the preceding variable on all platforms that support
3461# interlibrary dependencies.
3462# 'none' -- dependencies not supported.
3463# 'unknown' -- same as none, but documents that we really don't know.
3464# 'pass_all' -- all dependencies passed with no checks.
3465# 'test_compile' -- check by making test program.
3466# 'file_magic [[regex]]' -- check by looking for files in library path
3467# that responds to the $file_magic_cmd with a given extended regex.
3468# If you have 'file' or equivalent on your system and you're not sure
3469# whether 'pass_all' will *always* work, you probably want this one.
3470
3471case $host_os in
3472aix[[4-9]]*)
3473  lt_cv_deplibs_check_method=pass_all
3474  ;;
3475
3476beos*)
3477  lt_cv_deplibs_check_method=pass_all
3478  ;;
3479
3480bsdi[[45]]*)
3481  lt_cv_deplibs_check_method='file_magic ELF [[0-9]][[0-9]]*-bit [[ML]]SB (shared object|dynamic lib)'
3482  lt_cv_file_magic_cmd='/usr/bin/file -L'
3483  lt_cv_file_magic_test_file=/shlib/libc.so
3484  ;;
3485
3486cygwin*)
3487  # func_win32_libid is a shell function defined in ltmain.sh
3488  lt_cv_deplibs_check_method='file_magic ^x86 archive import|^x86 DLL'
3489  lt_cv_file_magic_cmd='func_win32_libid'
3490  ;;
3491
3492mingw* | pw32*)
3493  # Base MSYS/MinGW do not provide the 'file' command needed by
3494  # func_win32_libid shell function, so use a weaker test based on 'objdump',
3495  # unless we find 'file', for example because we are cross-compiling.
3496  if ( file / ) >/dev/null 2>&1; then
3497    lt_cv_deplibs_check_method='file_magic ^x86 archive import|^x86 DLL'
3498    lt_cv_file_magic_cmd='func_win32_libid'
3499  else
3500    # Keep this pattern in sync with the one in func_win32_libid.
3501    lt_cv_deplibs_check_method='file_magic file format (pei*-i386(.*architecture: i386)?|pe-arm-wince|pe-x86-64)'
3502    lt_cv_file_magic_cmd='$OBJDUMP -f'
3503  fi
3504  ;;
3505
3506cegcc*)
3507  # use the weaker test based on 'objdump'. See mingw*.
3508  lt_cv_deplibs_check_method='file_magic file format pe-arm-.*little(.*architecture: arm)?'
3509  lt_cv_file_magic_cmd='$OBJDUMP -f'
3510  ;;
3511
3512darwin* | rhapsody*)
3513  lt_cv_deplibs_check_method=pass_all
3514  ;;
3515
3516freebsd* | dragonfly*)
3517  if echo __ELF__ | $CC -E - | $GREP __ELF__ > /dev/null; then
3518    case $host_cpu in
3519    i*86 )
3520      # Not sure whether the presence of OpenBSD here was a mistake.
3521      # Let's accept both of them until this is cleared up.
3522      lt_cv_deplibs_check_method='file_magic (FreeBSD|OpenBSD|DragonFly)/i[[3-9]]86 (compact )?demand paged shared library'
3523      lt_cv_file_magic_cmd=/usr/bin/file
3524      lt_cv_file_magic_test_file=`echo /usr/lib/libc.so.*`
3525      ;;
3526    esac
3527  else
3528    lt_cv_deplibs_check_method=pass_all
3529  fi
3530  ;;
3531
3532haiku*)
3533  lt_cv_deplibs_check_method=pass_all
3534  ;;
3535
3536hpux10.20* | hpux11*)
3537  lt_cv_file_magic_cmd=/usr/bin/file
3538  case $host_cpu in
3539  ia64*)
3540    lt_cv_deplibs_check_method='file_magic (s[[0-9]][[0-9]][[0-9]]|ELF-[[0-9]][[0-9]]) shared object file - IA64'
3541    lt_cv_file_magic_test_file=/usr/lib/hpux32/libc.so
3542    ;;
3543  hppa*64*)
3544    [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]']
3545    lt_cv_file_magic_test_file=/usr/lib/pa20_64/libc.sl
3546    ;;
3547  *)
3548    lt_cv_deplibs_check_method='file_magic (s[[0-9]][[0-9]][[0-9]]|PA-RISC[[0-9]]\.[[0-9]]) shared library'
3549    lt_cv_file_magic_test_file=/usr/lib/libc.sl
3550    ;;
3551  esac
3552  ;;
3553
3554interix[[3-9]]*)
3555  # PIC code is broken on Interix 3.x, that's why |\.a not |_pic\.a here
3556  lt_cv_deplibs_check_method='match_pattern /lib[[^/]]+(\.so|\.a)$'
3557  ;;
3558
3559irix5* | irix6* | nonstopux*)
3560  case $LD in
3561  *-32|*"-32 ") libmagic=32-bit;;
3562  *-n32|*"-n32 ") libmagic=N32;;
3563  *-64|*"-64 ") libmagic=64-bit;;
3564  *) libmagic=never-match;;
3565  esac
3566  lt_cv_deplibs_check_method=pass_all
3567  ;;
3568
3569# This must be glibc/ELF.
3570linux* | k*bsd*-gnu | kopensolaris*-gnu | gnu*)
3571  lt_cv_deplibs_check_method=pass_all
3572  ;;
3573
3574netbsd* | netbsdelf*-gnu)
3575  if echo __ELF__ | $CC -E - | $GREP __ELF__ > /dev/null; then
3576    lt_cv_deplibs_check_method='match_pattern /lib[[^/]]+(\.so\.[[0-9]]+\.[[0-9]]+|_pic\.a)$'
3577  else
3578    lt_cv_deplibs_check_method='match_pattern /lib[[^/]]+(\.so|_pic\.a)$'
3579  fi
3580  ;;
3581
3582newos6*)
3583  lt_cv_deplibs_check_method='file_magic ELF [[0-9]][[0-9]]*-bit [[ML]]SB (executable|dynamic lib)'
3584  lt_cv_file_magic_cmd=/usr/bin/file
3585  lt_cv_file_magic_test_file=/usr/lib/libnls.so
3586  ;;
3587
3588*nto* | *qnx*)
3589  lt_cv_deplibs_check_method=pass_all
3590  ;;
3591
3592openbsd* | bitrig*)
3593  if test -z "`echo __ELF__ | $CC -E - | $GREP __ELF__`"; then
3594    lt_cv_deplibs_check_method='match_pattern /lib[[^/]]+(\.so\.[[0-9]]+\.[[0-9]]+|\.so|_pic\.a)$'
3595  else
3596    lt_cv_deplibs_check_method='match_pattern /lib[[^/]]+(\.so\.[[0-9]]+\.[[0-9]]+|_pic\.a)$'
3597  fi
3598  ;;
3599
3600osf3* | osf4* | osf5*)
3601  lt_cv_deplibs_check_method=pass_all
3602  ;;
3603
3604rdos*)
3605  lt_cv_deplibs_check_method=pass_all
3606  ;;
3607
3608solaris*)
3609  lt_cv_deplibs_check_method=pass_all
3610  ;;
3611
3612sysv5* | sco3.2v5* | sco5v6* | unixware* | OpenUNIX* | sysv4*uw2*)
3613  lt_cv_deplibs_check_method=pass_all
3614  ;;
3615
3616sysv4 | sysv4.3*)
3617  case $host_vendor in
3618  motorola)
3619    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]]'
3620    lt_cv_file_magic_test_file=`echo /usr/lib/libc.so*`
3621    ;;
3622  ncr)
3623    lt_cv_deplibs_check_method=pass_all
3624    ;;
3625  sequent)
3626    lt_cv_file_magic_cmd='/bin/file'
3627    lt_cv_deplibs_check_method='file_magic ELF [[0-9]][[0-9]]*-bit [[LM]]SB (shared object|dynamic lib )'
3628    ;;
3629  sni)
3630    lt_cv_file_magic_cmd='/bin/file'
3631    lt_cv_deplibs_check_method="file_magic ELF [[0-9]][[0-9]]*-bit [[LM]]SB dynamic lib"
3632    lt_cv_file_magic_test_file=/lib/libc.so
3633    ;;
3634  siemens)
3635    lt_cv_deplibs_check_method=pass_all
3636    ;;
3637  pc)
3638    lt_cv_deplibs_check_method=pass_all
3639    ;;
3640  esac
3641  ;;
3642
3643tpf*)
3644  lt_cv_deplibs_check_method=pass_all
3645  ;;
3646os2*)
3647  lt_cv_deplibs_check_method=pass_all
3648  ;;
3649esac
3650])
3651
3652file_magic_glob=
3653want_nocaseglob=no
3654if test "$build" = "$host"; then
3655  case $host_os in
3656  mingw* | pw32*)
3657    if ( shopt | grep nocaseglob ) >/dev/null 2>&1; then
3658      want_nocaseglob=yes
3659    else
3660      file_magic_glob=`echo aAbBcCdDeEfFgGhHiIjJkKlLmMnNoOpPqQrRsStTuUvVwWxXyYzZ | $SED -e "s/\(..\)/s\/[[\1]]\/[[\1]]\/g;/g"`
3661    fi
3662    ;;
3663  esac
3664fi
3665
3666file_magic_cmd=$lt_cv_file_magic_cmd
3667deplibs_check_method=$lt_cv_deplibs_check_method
3668test -z "$deplibs_check_method" && deplibs_check_method=unknown
3669
3670_LT_DECL([], [deplibs_check_method], [1],
3671    [Method to check whether dependent libraries are shared objects])
3672_LT_DECL([], [file_magic_cmd], [1],
3673    [Command to use when deplibs_check_method = "file_magic"])
3674_LT_DECL([], [file_magic_glob], [1],
3675    [How to find potential files when deplibs_check_method = "file_magic"])
3676_LT_DECL([], [want_nocaseglob], [1],
3677    [Find potential files using nocaseglob when deplibs_check_method = "file_magic"])
3678])# _LT_CHECK_MAGIC_METHOD
3679
3680
3681# LT_PATH_NM
3682# ----------
3683# find the pathname to a BSD- or MS-compatible name lister
3684AC_DEFUN([LT_PATH_NM],
3685[AC_REQUIRE([AC_PROG_CC])dnl
3686AC_CACHE_CHECK([for BSD- or MS-compatible name lister (nm)], lt_cv_path_NM,
3687[if test -n "$NM"; then
3688  # Let the user override the test.
3689  lt_cv_path_NM=$NM
3690else
3691  lt_nm_to_check=${ac_tool_prefix}nm
3692  if test -n "$ac_tool_prefix" && test "$build" = "$host"; then
3693    lt_nm_to_check="$lt_nm_to_check nm"
3694  fi
3695  for lt_tmp_nm in $lt_nm_to_check; do
3696    lt_save_ifs=$IFS; IFS=$PATH_SEPARATOR
3697    for ac_dir in $PATH /usr/ccs/bin/elf /usr/ccs/bin /usr/ucb /bin; do
3698      IFS=$lt_save_ifs
3699      test -z "$ac_dir" && ac_dir=.
3700      tmp_nm=$ac_dir/$lt_tmp_nm
3701      if test -f "$tmp_nm" || test -f "$tmp_nm$ac_exeext"; then
3702	# Check to see if the nm accepts a BSD-compat flag.
3703	# Adding the 'sed 1q' prevents false positives on HP-UX, which says:
3704	#   nm: unknown option "B" ignored
3705	# Tru64's nm complains that /dev/null is an invalid object file
3706	# MSYS converts /dev/null to NUL, MinGW nm treats NUL as empty
3707	case $build_os in
3708	mingw*) lt_bad_file=conftest.nm/nofile ;;
3709	*) lt_bad_file=/dev/null ;;
3710	esac
3711	case `"$tmp_nm" -B $lt_bad_file 2>&1 | sed '1q'` in
3712	*$lt_bad_file* | *'Invalid file or object type'*)
3713	  lt_cv_path_NM="$tmp_nm -B"
3714	  break 2
3715	  ;;
3716	*)
3717	  case `"$tmp_nm" -p /dev/null 2>&1 | sed '1q'` in
3718	  */dev/null*)
3719	    lt_cv_path_NM="$tmp_nm -p"
3720	    break 2
3721	    ;;
3722	  *)
3723	    lt_cv_path_NM=${lt_cv_path_NM="$tmp_nm"} # keep the first match, but
3724	    continue # so that we can try to find one that supports BSD flags
3725	    ;;
3726	  esac
3727	  ;;
3728	esac
3729      fi
3730    done
3731    IFS=$lt_save_ifs
3732  done
3733  : ${lt_cv_path_NM=no}
3734fi])
3735if test no != "$lt_cv_path_NM"; then
3736  NM=$lt_cv_path_NM
3737else
3738  # Didn't find any BSD compatible name lister, look for dumpbin.
3739  if test -n "$DUMPBIN"; then :
3740    # Let the user override the test.
3741  else
3742    AC_CHECK_TOOLS(DUMPBIN, [dumpbin "link -dump"], :)
3743    case `$DUMPBIN -symbols -headers /dev/null 2>&1 | sed '1q'` in
3744    *COFF*)
3745      DUMPBIN="$DUMPBIN -symbols -headers"
3746      ;;
3747    *)
3748      DUMPBIN=:
3749      ;;
3750    esac
3751  fi
3752  AC_SUBST([DUMPBIN])
3753  if test : != "$DUMPBIN"; then
3754    NM=$DUMPBIN
3755  fi
3756fi
3757test -z "$NM" && NM=nm
3758AC_SUBST([NM])
3759_LT_DECL([], [NM], [1], [A BSD- or MS-compatible name lister])dnl
3760
3761AC_CACHE_CHECK([the name lister ($NM) interface], [lt_cv_nm_interface],
3762  [lt_cv_nm_interface="BSD nm"
3763  echo "int some_variable = 0;" > conftest.$ac_ext
3764  (eval echo "\"\$as_me:$LINENO: $ac_compile\"" >&AS_MESSAGE_LOG_FD)
3765  (eval "$ac_compile" 2>conftest.err)
3766  cat conftest.err >&AS_MESSAGE_LOG_FD
3767  (eval echo "\"\$as_me:$LINENO: $NM \\\"conftest.$ac_objext\\\"\"" >&AS_MESSAGE_LOG_FD)
3768  (eval "$NM \"conftest.$ac_objext\"" 2>conftest.err > conftest.out)
3769  cat conftest.err >&AS_MESSAGE_LOG_FD
3770  (eval echo "\"\$as_me:$LINENO: output\"" >&AS_MESSAGE_LOG_FD)
3771  cat conftest.out >&AS_MESSAGE_LOG_FD
3772  if $GREP 'External.*some_variable' conftest.out > /dev/null; then
3773    lt_cv_nm_interface="MS dumpbin"
3774  fi
3775  rm -f conftest*])
3776])# LT_PATH_NM
3777
3778# Old names:
3779AU_ALIAS([AM_PROG_NM], [LT_PATH_NM])
3780AU_ALIAS([AC_PROG_NM], [LT_PATH_NM])
3781dnl aclocal-1.4 backwards compatibility:
3782dnl AC_DEFUN([AM_PROG_NM], [])
3783dnl AC_DEFUN([AC_PROG_NM], [])
3784
3785# _LT_CHECK_SHAREDLIB_FROM_LINKLIB
3786# --------------------------------
3787# how to determine the name of the shared library
3788# associated with a specific link library.
3789#  -- PORTME fill in with the dynamic library characteristics
3790m4_defun([_LT_CHECK_SHAREDLIB_FROM_LINKLIB],
3791[m4_require([_LT_DECL_EGREP])
3792m4_require([_LT_DECL_OBJDUMP])
3793m4_require([_LT_DECL_DLLTOOL])
3794AC_CACHE_CHECK([how to associate runtime and link libraries],
3795lt_cv_sharedlib_from_linklib_cmd,
3796[lt_cv_sharedlib_from_linklib_cmd='unknown'
3797
3798case $host_os in
3799cygwin* | mingw* | pw32* | cegcc*)
3800  # two different shell functions defined in ltmain.sh;
3801  # decide which one to use based on capabilities of $DLLTOOL
3802  case `$DLLTOOL --help 2>&1` in
3803  *--identify-strict*)
3804    lt_cv_sharedlib_from_linklib_cmd=func_cygming_dll_for_implib
3805    ;;
3806  *)
3807    lt_cv_sharedlib_from_linklib_cmd=func_cygming_dll_for_implib_fallback
3808    ;;
3809  esac
3810  ;;
3811*)
3812  # fallback: assume linklib IS sharedlib
3813  lt_cv_sharedlib_from_linklib_cmd=$ECHO
3814  ;;
3815esac
3816])
3817sharedlib_from_linklib_cmd=$lt_cv_sharedlib_from_linklib_cmd
3818test -z "$sharedlib_from_linklib_cmd" && sharedlib_from_linklib_cmd=$ECHO
3819
3820_LT_DECL([], [sharedlib_from_linklib_cmd], [1],
3821    [Command to associate shared and link libraries])
3822])# _LT_CHECK_SHAREDLIB_FROM_LINKLIB
3823
3824
3825# _LT_PATH_MANIFEST_TOOL
3826# ----------------------
3827# locate the manifest tool
3828m4_defun([_LT_PATH_MANIFEST_TOOL],
3829[AC_CHECK_TOOL(MANIFEST_TOOL, mt, :)
3830test -z "$MANIFEST_TOOL" && MANIFEST_TOOL=mt
3831AC_CACHE_CHECK([if $MANIFEST_TOOL is a manifest tool], [lt_cv_path_mainfest_tool],
3832  [lt_cv_path_mainfest_tool=no
3833  echo "$as_me:$LINENO: $MANIFEST_TOOL '-?'" >&AS_MESSAGE_LOG_FD
3834  $MANIFEST_TOOL '-?' 2>conftest.err > conftest.out
3835  cat conftest.err >&AS_MESSAGE_LOG_FD
3836  if $GREP 'Manifest Tool' conftest.out > /dev/null; then
3837    lt_cv_path_mainfest_tool=yes
3838  fi
3839  rm -f conftest*])
3840if test yes != "$lt_cv_path_mainfest_tool"; then
3841  MANIFEST_TOOL=:
3842fi
3843_LT_DECL([], [MANIFEST_TOOL], [1], [Manifest tool])dnl
3844])# _LT_PATH_MANIFEST_TOOL
3845
3846
3847# _LT_DLL_DEF_P([FILE])
3848# ---------------------
3849# True iff FILE is a Windows DLL '.def' file.
3850# Keep in sync with func_dll_def_p in the libtool script
3851AC_DEFUN([_LT_DLL_DEF_P],
3852[dnl
3853  test DEF = "`$SED -n dnl
3854    -e '\''s/^[[	 ]]*//'\'' dnl Strip leading whitespace
3855    -e '\''/^\(;.*\)*$/d'\'' dnl      Delete empty lines and comments
3856    -e '\''s/^\(EXPORTS\|LIBRARY\)\([[	 ]].*\)*$/DEF/p'\'' dnl
3857    -e q dnl                          Only consider the first "real" line
3858    $1`" dnl
3859])# _LT_DLL_DEF_P
3860
3861
3862# LT_LIB_M
3863# --------
3864# check for math library
3865AC_DEFUN([LT_LIB_M],
3866[AC_REQUIRE([AC_CANONICAL_HOST])dnl
3867LIBM=
3868case $host in
3869*-*-beos* | *-*-cegcc* | *-*-cygwin* | *-*-haiku* | *-*-pw32* | *-*-darwin*)
3870  # These system don't have libm, or don't need it
3871  ;;
3872*-ncr-sysv4.3*)
3873  AC_CHECK_LIB(mw, _mwvalidcheckl, LIBM=-lmw)
3874  AC_CHECK_LIB(m, cos, LIBM="$LIBM -lm")
3875  ;;
3876*)
3877  AC_CHECK_LIB(m, cos, LIBM=-lm)
3878  ;;
3879esac
3880AC_SUBST([LIBM])
3881])# LT_LIB_M
3882
3883# Old name:
3884AU_ALIAS([AC_CHECK_LIBM], [LT_LIB_M])
3885dnl aclocal-1.4 backwards compatibility:
3886dnl AC_DEFUN([AC_CHECK_LIBM], [])
3887
3888
3889# _LT_COMPILER_NO_RTTI([TAGNAME])
3890# -------------------------------
3891m4_defun([_LT_COMPILER_NO_RTTI],
3892[m4_require([_LT_TAG_COMPILER])dnl
3893
3894_LT_TAGVAR(lt_prog_compiler_no_builtin_flag, $1)=
3895
3896if test yes = "$GCC"; then
3897  case $cc_basename in
3898  nvcc*)
3899    _LT_TAGVAR(lt_prog_compiler_no_builtin_flag, $1)=' -Xcompiler -fno-builtin' ;;
3900  *)
3901    _LT_TAGVAR(lt_prog_compiler_no_builtin_flag, $1)=' -fno-builtin' ;;
3902  esac
3903
3904  _LT_COMPILER_OPTION([if $compiler supports -fno-rtti -fno-exceptions],
3905    lt_cv_prog_compiler_rtti_exceptions,
3906    [-fno-rtti -fno-exceptions], [],
3907    [_LT_TAGVAR(lt_prog_compiler_no_builtin_flag, $1)="$_LT_TAGVAR(lt_prog_compiler_no_builtin_flag, $1) -fno-rtti -fno-exceptions"])
3908fi
3909_LT_TAGDECL([no_builtin_flag], [lt_prog_compiler_no_builtin_flag], [1],
3910	[Compiler flag to turn off builtin functions])
3911])# _LT_COMPILER_NO_RTTI
3912
3913
3914# _LT_CMD_GLOBAL_SYMBOLS
3915# ----------------------
3916m4_defun([_LT_CMD_GLOBAL_SYMBOLS],
3917[AC_REQUIRE([AC_CANONICAL_HOST])dnl
3918AC_REQUIRE([AC_PROG_CC])dnl
3919AC_REQUIRE([AC_PROG_AWK])dnl
3920AC_REQUIRE([LT_PATH_NM])dnl
3921AC_REQUIRE([LT_PATH_LD])dnl
3922m4_require([_LT_DECL_SED])dnl
3923m4_require([_LT_DECL_EGREP])dnl
3924m4_require([_LT_TAG_COMPILER])dnl
3925
3926# Check for command to grab the raw symbol name followed by C symbol from nm.
3927AC_MSG_CHECKING([command to parse $NM output from $compiler object])
3928AC_CACHE_VAL([lt_cv_sys_global_symbol_pipe],
3929[
3930# These are sane defaults that work on at least a few old systems.
3931# [They come from Ultrix.  What could be older than Ultrix?!! ;)]
3932
3933# Character class describing NM global symbol codes.
3934symcode='[[BCDEGRST]]'
3935
3936# Regexp to match symbols that can be accessed directly from C.
3937sympat='\([[_A-Za-z]][[_A-Za-z0-9]]*\)'
3938
3939# Define system-specific variables.
3940case $host_os in
3941aix*)
3942  symcode='[[BCDT]]'
3943  ;;
3944cygwin* | mingw* | pw32* | cegcc*)
3945  symcode='[[ABCDGISTW]]'
3946  ;;
3947hpux*)
3948  if test ia64 = "$host_cpu"; then
3949    symcode='[[ABCDEGRST]]'
3950  fi
3951  ;;
3952irix* | nonstopux*)
3953  symcode='[[BCDEGRST]]'
3954  ;;
3955osf*)
3956  symcode='[[BCDEGQRST]]'
3957  ;;
3958solaris*)
3959  symcode='[[BDRT]]'
3960  ;;
3961sco3.2v5*)
3962  symcode='[[DT]]'
3963  ;;
3964sysv4.2uw2*)
3965  symcode='[[DT]]'
3966  ;;
3967sysv5* | sco5v6* | unixware* | OpenUNIX*)
3968  symcode='[[ABDT]]'
3969  ;;
3970sysv4)
3971  symcode='[[DFNSTU]]'
3972  ;;
3973esac
3974
3975# If we're using GNU nm, then use its standard symbol codes.
3976case `$NM -V 2>&1` in
3977*GNU* | *'with BFD'*)
3978  symcode='[[ABCDGIRSTW]]' ;;
3979esac
3980
3981if test "$lt_cv_nm_interface" = "MS dumpbin"; then
3982  # Gets list of data symbols to import.
3983  lt_cv_sys_global_symbol_to_import="sed -n -e 's/^I .* \(.*\)$/\1/p'"
3984  # Adjust the below global symbol transforms to fixup imported variables.
3985  lt_cdecl_hook=" -e 's/^I .* \(.*\)$/extern __declspec(dllimport) char \1;/p'"
3986  lt_c_name_hook=" -e 's/^I .* \(.*\)$/  {\"\1\", (void *) 0},/p'"
3987  lt_c_name_lib_hook="\
3988  -e 's/^I .* \(lib.*\)$/  {\"\1\", (void *) 0},/p'\
3989  -e 's/^I .* \(.*\)$/  {\"lib\1\", (void *) 0},/p'"
3990else
3991  # Disable hooks by default.
3992  lt_cv_sys_global_symbol_to_import=
3993  lt_cdecl_hook=
3994  lt_c_name_hook=
3995  lt_c_name_lib_hook=
3996fi
3997
3998# Transform an extracted symbol line into a proper C declaration.
3999# Some systems (esp. on ia64) link data and code symbols differently,
4000# so use this general approach.
4001lt_cv_sys_global_symbol_to_cdecl="sed -n"\
4002$lt_cdecl_hook\
4003" -e 's/^T .* \(.*\)$/extern int \1();/p'"\
4004" -e 's/^$symcode$symcode* .* \(.*\)$/extern char \1;/p'"
4005
4006# Transform an extracted symbol line into symbol name and symbol address
4007lt_cv_sys_global_symbol_to_c_name_address="sed -n"\
4008$lt_c_name_hook\
4009" -e 's/^: \(.*\) .*$/  {\"\1\", (void *) 0},/p'"\
4010" -e 's/^$symcode$symcode* .* \(.*\)$/  {\"\1\", (void *) \&\1},/p'"
4011
4012# Transform an extracted symbol line into symbol name with lib prefix and
4013# symbol address.
4014lt_cv_sys_global_symbol_to_c_name_address_lib_prefix="sed -n"\
4015$lt_c_name_lib_hook\
4016" -e 's/^: \(.*\) .*$/  {\"\1\", (void *) 0},/p'"\
4017" -e 's/^$symcode$symcode* .* \(lib.*\)$/  {\"\1\", (void *) \&\1},/p'"\
4018" -e 's/^$symcode$symcode* .* \(.*\)$/  {\"lib\1\", (void *) \&\1},/p'"
4019
4020# Handle CRLF in mingw tool chain
4021opt_cr=
4022case $build_os in
4023mingw*)
4024  opt_cr=`$ECHO 'x\{0,1\}' | tr x '\015'` # option cr in regexp
4025  ;;
4026esac
4027
4028# Try without a prefix underscore, then with it.
4029for ac_symprfx in "" "_"; do
4030
4031  # Transform symcode, sympat, and symprfx into a raw symbol and a C symbol.
4032  symxfrm="\\1 $ac_symprfx\\2 \\2"
4033
4034  # Write the raw and C identifiers.
4035  if test "$lt_cv_nm_interface" = "MS dumpbin"; then
4036    # Fake it for dumpbin and say T for any non-static function,
4037    # D for any global variable and I for any imported variable.
4038    # Also find C++ and __fastcall symbols from MSVC++,
4039    # which start with @ or ?.
4040    lt_cv_sys_global_symbol_pipe="$AWK ['"\
4041"     {last_section=section; section=\$ 3};"\
4042"     /^COFF SYMBOL TABLE/{for(i in hide) delete hide[i]};"\
4043"     /Section length .*#relocs.*(pick any)/{hide[last_section]=1};"\
4044"     /^ *Symbol name *: /{split(\$ 0,sn,\":\"); si=substr(sn[2],2)};"\
4045"     /^ *Type *: code/{print \"T\",si,substr(si,length(prfx))};"\
4046"     /^ *Type *: data/{print \"I\",si,substr(si,length(prfx))};"\
4047"     \$ 0!~/External *\|/{next};"\
4048"     / 0+ UNDEF /{next}; / UNDEF \([^|]\)*()/{next};"\
4049"     {if(hide[section]) next};"\
4050"     {f=\"D\"}; \$ 0~/\(\).*\|/{f=\"T\"};"\
4051"     {split(\$ 0,a,/\||\r/); split(a[2],s)};"\
4052"     s[1]~/^[@?]/{print f,s[1],s[1]; next};"\
4053"     s[1]~prfx {split(s[1],t,\"@\"); print f,t[1],substr(t[1],length(prfx))}"\
4054"     ' prfx=^$ac_symprfx]"
4055  else
4056    lt_cv_sys_global_symbol_pipe="sed -n -e 's/^.*[[	 ]]\($symcode$symcode*\)[[	 ]][[	 ]]*$ac_symprfx$sympat$opt_cr$/$symxfrm/p'"
4057  fi
4058  lt_cv_sys_global_symbol_pipe="$lt_cv_sys_global_symbol_pipe | sed '/ __gnu_lto/d'"
4059
4060  # Check to see that the pipe works correctly.
4061  pipe_works=no
4062
4063  rm -f conftest*
4064  cat > conftest.$ac_ext <<_LT_EOF
4065#ifdef __cplusplus
4066extern "C" {
4067#endif
4068char nm_test_var;
4069void nm_test_func(void);
4070void nm_test_func(void){}
4071#ifdef __cplusplus
4072}
4073#endif
4074int main(){nm_test_var='a';nm_test_func();return(0);}
4075_LT_EOF
4076
4077  if AC_TRY_EVAL(ac_compile); then
4078    # Now try to grab the symbols.
4079    nlist=conftest.nm
4080    if AC_TRY_EVAL(NM conftest.$ac_objext \| "$lt_cv_sys_global_symbol_pipe" \> $nlist) && test -s "$nlist"; then
4081      # Try sorting and uniquifying the output.
4082      if sort "$nlist" | uniq > "$nlist"T; then
4083	mv -f "$nlist"T "$nlist"
4084      else
4085	rm -f "$nlist"T
4086      fi
4087
4088      # Make sure that we snagged all the symbols we need.
4089      if $GREP ' nm_test_var$' "$nlist" >/dev/null; then
4090	if $GREP ' nm_test_func$' "$nlist" >/dev/null; then
4091	  cat <<_LT_EOF > conftest.$ac_ext
4092/* Keep this code in sync between libtool.m4, ltmain, lt_system.h, and tests.  */
4093#if defined _WIN32 || defined __CYGWIN__ || defined _WIN32_WCE
4094/* DATA imports from DLLs on WIN32 can't be const, because runtime
4095   relocations are performed -- see ld's documentation on pseudo-relocs.  */
4096# define LT@&t@_DLSYM_CONST
4097#elif defined __osf__
4098/* This system does not cope well with relocations in const data.  */
4099# define LT@&t@_DLSYM_CONST
4100#else
4101# define LT@&t@_DLSYM_CONST const
4102#endif
4103
4104#ifdef __cplusplus
4105extern "C" {
4106#endif
4107
4108_LT_EOF
4109	  # Now generate the symbol file.
4110	  eval "$lt_cv_sys_global_symbol_to_cdecl"' < "$nlist" | $GREP -v main >> conftest.$ac_ext'
4111
4112	  cat <<_LT_EOF >> conftest.$ac_ext
4113
4114/* The mapping between symbol names and symbols.  */
4115LT@&t@_DLSYM_CONST struct {
4116  const char *name;
4117  void       *address;
4118}
4119lt__PROGRAM__LTX_preloaded_symbols[[]] =
4120{
4121  { "@PROGRAM@", (void *) 0 },
4122_LT_EOF
4123	  $SED "s/^$symcode$symcode* .* \(.*\)$/  {\"\1\", (void *) \&\1},/" < "$nlist" | $GREP -v main >> conftest.$ac_ext
4124	  cat <<\_LT_EOF >> conftest.$ac_ext
4125  {0, (void *) 0}
4126};
4127
4128/* This works around a problem in FreeBSD linker */
4129#ifdef FREEBSD_WORKAROUND
4130static const void *lt_preloaded_setup() {
4131  return lt__PROGRAM__LTX_preloaded_symbols;
4132}
4133#endif
4134
4135#ifdef __cplusplus
4136}
4137#endif
4138_LT_EOF
4139	  # Now try linking the two files.
4140	  mv conftest.$ac_objext conftstm.$ac_objext
4141	  lt_globsym_save_LIBS=$LIBS
4142	  lt_globsym_save_CFLAGS=$CFLAGS
4143	  LIBS=conftstm.$ac_objext
4144	  CFLAGS="$CFLAGS$_LT_TAGVAR(lt_prog_compiler_no_builtin_flag, $1)"
4145	  if AC_TRY_EVAL(ac_link) && test -s conftest$ac_exeext; then
4146	    pipe_works=yes
4147	  fi
4148	  LIBS=$lt_globsym_save_LIBS
4149	  CFLAGS=$lt_globsym_save_CFLAGS
4150	else
4151	  echo "cannot find nm_test_func in $nlist" >&AS_MESSAGE_LOG_FD
4152	fi
4153      else
4154	echo "cannot find nm_test_var in $nlist" >&AS_MESSAGE_LOG_FD
4155      fi
4156    else
4157      echo "cannot run $lt_cv_sys_global_symbol_pipe" >&AS_MESSAGE_LOG_FD
4158    fi
4159  else
4160    echo "$progname: failed program was:" >&AS_MESSAGE_LOG_FD
4161    cat conftest.$ac_ext >&5
4162  fi
4163  rm -rf conftest* conftst*
4164
4165  # Do not use the global_symbol_pipe unless it works.
4166  if test yes = "$pipe_works"; then
4167    break
4168  else
4169    lt_cv_sys_global_symbol_pipe=
4170  fi
4171done
4172])
4173if test -z "$lt_cv_sys_global_symbol_pipe"; then
4174  lt_cv_sys_global_symbol_to_cdecl=
4175fi
4176if test -z "$lt_cv_sys_global_symbol_pipe$lt_cv_sys_global_symbol_to_cdecl"; then
4177  AC_MSG_RESULT(failed)
4178else
4179  AC_MSG_RESULT(ok)
4180fi
4181
4182# Response file support.
4183if test "$lt_cv_nm_interface" = "MS dumpbin"; then
4184  nm_file_list_spec='@'
4185elif $NM --help 2>/dev/null | grep '[[@]]FILE' >/dev/null; then
4186  nm_file_list_spec='@'
4187fi
4188
4189_LT_DECL([global_symbol_pipe], [lt_cv_sys_global_symbol_pipe], [1],
4190    [Take the output of nm and produce a listing of raw symbols and C names])
4191_LT_DECL([global_symbol_to_cdecl], [lt_cv_sys_global_symbol_to_cdecl], [1],
4192    [Transform the output of nm in a proper C declaration])
4193_LT_DECL([global_symbol_to_import], [lt_cv_sys_global_symbol_to_import], [1],
4194    [Transform the output of nm into a list of symbols to manually relocate])
4195_LT_DECL([global_symbol_to_c_name_address],
4196    [lt_cv_sys_global_symbol_to_c_name_address], [1],
4197    [Transform the output of nm in a C name address pair])
4198_LT_DECL([global_symbol_to_c_name_address_lib_prefix],
4199    [lt_cv_sys_global_symbol_to_c_name_address_lib_prefix], [1],
4200    [Transform the output of nm in a C name address pair when lib prefix is needed])
4201_LT_DECL([nm_interface], [lt_cv_nm_interface], [1],
4202    [The name lister interface])
4203_LT_DECL([], [nm_file_list_spec], [1],
4204    [Specify filename containing input files for $NM])
4205]) # _LT_CMD_GLOBAL_SYMBOLS
4206
4207
4208# _LT_COMPILER_PIC([TAGNAME])
4209# ---------------------------
4210m4_defun([_LT_COMPILER_PIC],
4211[m4_require([_LT_TAG_COMPILER])dnl
4212_LT_TAGVAR(lt_prog_compiler_wl, $1)=
4213_LT_TAGVAR(lt_prog_compiler_pic, $1)=
4214_LT_TAGVAR(lt_prog_compiler_static, $1)=
4215
4216m4_if([$1], [CXX], [
4217  # C++ specific cases for pic, static, wl, etc.
4218  if test yes = "$GXX"; then
4219    _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
4220    _LT_TAGVAR(lt_prog_compiler_static, $1)='-static'
4221
4222    case $host_os in
4223    aix*)
4224      # All AIX code is PIC.
4225      if test ia64 = "$host_cpu"; then
4226	# AIX 5 now supports IA64 processor
4227	_LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic'
4228      fi
4229      _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fPIC'
4230      ;;
4231
4232    amigaos*)
4233      case $host_cpu in
4234      powerpc)
4235            # see comment about AmigaOS4 .so support
4236            _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fPIC'
4237        ;;
4238      m68k)
4239            # FIXME: we need at least 68020 code to build shared libraries, but
4240            # adding the '-m68020' flag to GCC prevents building anything better,
4241            # like '-m68040'.
4242            _LT_TAGVAR(lt_prog_compiler_pic, $1)='-m68020 -resident32 -malways-restore-a4'
4243        ;;
4244      esac
4245      ;;
4246
4247    beos* | irix5* | irix6* | nonstopux* | osf3* | osf4* | osf5*)
4248      # PIC is the default for these OSes.
4249      ;;
4250    mingw* | cygwin* | os2* | pw32* | cegcc*)
4251      # This hack is so that the source file can tell whether it is being
4252      # built for inclusion in a dll (and should export symbols for example).
4253      # Although the cygwin gcc ignores -fPIC, still need this for old-style
4254      # (--disable-auto-import) libraries
4255      m4_if([$1], [GCJ], [],
4256	[_LT_TAGVAR(lt_prog_compiler_pic, $1)='-DDLL_EXPORT'])
4257      case $host_os in
4258      os2*)
4259	_LT_TAGVAR(lt_prog_compiler_static, $1)='$wl-static'
4260	;;
4261      esac
4262      ;;
4263    darwin* | rhapsody*)
4264      # PIC is the default on this platform
4265      # Common symbols not allowed in MH_DYLIB files
4266      _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fno-common'
4267      ;;
4268    *djgpp*)
4269      # DJGPP does not support shared libraries at all
4270      _LT_TAGVAR(lt_prog_compiler_pic, $1)=
4271      ;;
4272    haiku*)
4273      # PIC is the default for Haiku.
4274      # The "-static" flag exists, but is broken.
4275      _LT_TAGVAR(lt_prog_compiler_static, $1)=
4276      ;;
4277    interix[[3-9]]*)
4278      # Interix 3.x gcc -fpic/-fPIC options generate broken code.
4279      # Instead, we relocate shared libraries at runtime.
4280      ;;
4281    sysv4*MP*)
4282      if test -d /usr/nec; then
4283	_LT_TAGVAR(lt_prog_compiler_pic, $1)=-Kconform_pic
4284      fi
4285      ;;
4286    hpux*)
4287      # PIC is the default for 64-bit PA HP-UX, but not for 32-bit
4288      # PA HP-UX.  On IA64 HP-UX, PIC is the default but the pic flag
4289      # sets the default TLS model and affects inlining.
4290      case $host_cpu in
4291      hppa*64*)
4292	;;
4293      *)
4294	_LT_TAGVAR(lt_prog_compiler_pic, $1)='-fPIC'
4295	;;
4296      esac
4297      ;;
4298    *qnx* | *nto*)
4299      # QNX uses GNU C++, but need to define -shared option too, otherwise
4300      # it will coredump.
4301      _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fPIC -shared'
4302      ;;
4303    *)
4304      _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fPIC'
4305      ;;
4306    esac
4307  else
4308    case $host_os in
4309      aix[[4-9]]*)
4310	# All AIX code is PIC.
4311	if test ia64 = "$host_cpu"; then
4312	  # AIX 5 now supports IA64 processor
4313	  _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic'
4314	else
4315	  _LT_TAGVAR(lt_prog_compiler_static, $1)='-bnso -bI:/lib/syscalls.exp'
4316	fi
4317	;;
4318      chorus*)
4319	case $cc_basename in
4320	cxch68*)
4321	  # Green Hills C++ Compiler
4322	  # _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"
4323	  ;;
4324	esac
4325	;;
4326      mingw* | cygwin* | os2* | pw32* | cegcc*)
4327	# This hack is so that the source file can tell whether it is being
4328	# built for inclusion in a dll (and should export symbols for example).
4329	m4_if([$1], [GCJ], [],
4330	  [_LT_TAGVAR(lt_prog_compiler_pic, $1)='-DDLL_EXPORT'])
4331	;;
4332      dgux*)
4333	case $cc_basename in
4334	  ec++*)
4335	    _LT_TAGVAR(lt_prog_compiler_pic, $1)='-KPIC'
4336	    ;;
4337	  ghcx*)
4338	    # Green Hills C++ Compiler
4339	    _LT_TAGVAR(lt_prog_compiler_pic, $1)='-pic'
4340	    ;;
4341	  *)
4342	    ;;
4343	esac
4344	;;
4345      freebsd* | dragonfly*)
4346	# FreeBSD uses GNU C++
4347	;;
4348      hpux9* | hpux10* | hpux11*)
4349	case $cc_basename in
4350	  CC*)
4351	    _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
4352	    _LT_TAGVAR(lt_prog_compiler_static, $1)='$wl-a ${wl}archive'
4353	    if test ia64 != "$host_cpu"; then
4354	      _LT_TAGVAR(lt_prog_compiler_pic, $1)='+Z'
4355	    fi
4356	    ;;
4357	  aCC*)
4358	    _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
4359	    _LT_TAGVAR(lt_prog_compiler_static, $1)='$wl-a ${wl}archive'
4360	    case $host_cpu in
4361	    hppa*64*|ia64*)
4362	      # +Z the default
4363	      ;;
4364	    *)
4365	      _LT_TAGVAR(lt_prog_compiler_pic, $1)='+Z'
4366	      ;;
4367	    esac
4368	    ;;
4369	  *)
4370	    ;;
4371	esac
4372	;;
4373      interix*)
4374	# This is c89, which is MS Visual C++ (no shared libs)
4375	# Anyone wants to do a port?
4376	;;
4377      irix5* | irix6* | nonstopux*)
4378	case $cc_basename in
4379	  CC*)
4380	    _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
4381	    _LT_TAGVAR(lt_prog_compiler_static, $1)='-non_shared'
4382	    # CC pic flag -KPIC is the default.
4383	    ;;
4384	  *)
4385	    ;;
4386	esac
4387	;;
4388      linux* | k*bsd*-gnu | kopensolaris*-gnu | gnu*)
4389	case $cc_basename in
4390	  KCC*)
4391	    # KAI C++ Compiler
4392	    _LT_TAGVAR(lt_prog_compiler_wl, $1)='--backend -Wl,'
4393	    _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fPIC'
4394	    ;;
4395	  ecpc* )
4396	    # old Intel C++ for x86_64, which still supported -KPIC.
4397	    _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
4398	    _LT_TAGVAR(lt_prog_compiler_pic, $1)='-KPIC'
4399	    _LT_TAGVAR(lt_prog_compiler_static, $1)='-static'
4400	    ;;
4401	  icpc* )
4402	    # Intel C++, used to be incompatible with GCC.
4403	    # ICC 10 doesn't accept -KPIC any more.
4404	    _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
4405	    _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fPIC'
4406	    _LT_TAGVAR(lt_prog_compiler_static, $1)='-static'
4407	    ;;
4408	  pgCC* | pgcpp*)
4409	    # Portland Group C++ compiler
4410	    _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
4411	    _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fpic'
4412	    _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic'
4413	    ;;
4414	  cxx*)
4415	    # Compaq C++
4416	    # Make sure the PIC flag is empty.  It appears that all Alpha
4417	    # Linux and Compaq Tru64 Unix objects are PIC.
4418	    _LT_TAGVAR(lt_prog_compiler_pic, $1)=
4419	    _LT_TAGVAR(lt_prog_compiler_static, $1)='-non_shared'
4420	    ;;
4421	  xlc* | xlC* | bgxl[[cC]]* | mpixl[[cC]]*)
4422	    # IBM XL 8.0, 9.0 on PPC and BlueGene
4423	    _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
4424	    _LT_TAGVAR(lt_prog_compiler_pic, $1)='-qpic'
4425	    _LT_TAGVAR(lt_prog_compiler_static, $1)='-qstaticlink'
4426	    ;;
4427	  *)
4428	    case `$CC -V 2>&1 | sed 5q` in
4429	    *Sun\ C*)
4430	      # Sun C++ 5.9
4431	      _LT_TAGVAR(lt_prog_compiler_pic, $1)='-KPIC'
4432	      _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic'
4433	      _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Qoption ld '
4434	      ;;
4435	    esac
4436	    ;;
4437	esac
4438	;;
4439      lynxos*)
4440	;;
4441      m88k*)
4442	;;
4443      mvs*)
4444	case $cc_basename in
4445	  cxx*)
4446	    _LT_TAGVAR(lt_prog_compiler_pic, $1)='-W c,exportall'
4447	    ;;
4448	  *)
4449	    ;;
4450	esac
4451	;;
4452      netbsd* | netbsdelf*-gnu)
4453	;;
4454      *qnx* | *nto*)
4455        # QNX uses GNU C++, but need to define -shared option too, otherwise
4456        # it will coredump.
4457        _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fPIC -shared'
4458        ;;
4459      osf3* | osf4* | osf5*)
4460	case $cc_basename in
4461	  KCC*)
4462	    _LT_TAGVAR(lt_prog_compiler_wl, $1)='--backend -Wl,'
4463	    ;;
4464	  RCC*)
4465	    # Rational C++ 2.4.1
4466	    _LT_TAGVAR(lt_prog_compiler_pic, $1)='-pic'
4467	    ;;
4468	  cxx*)
4469	    # Digital/Compaq C++
4470	    _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
4471	    # Make sure the PIC flag is empty.  It appears that all Alpha
4472	    # Linux and Compaq Tru64 Unix objects are PIC.
4473	    _LT_TAGVAR(lt_prog_compiler_pic, $1)=
4474	    _LT_TAGVAR(lt_prog_compiler_static, $1)='-non_shared'
4475	    ;;
4476	  *)
4477	    ;;
4478	esac
4479	;;
4480      psos*)
4481	;;
4482      solaris*)
4483	case $cc_basename in
4484	  CC* | sunCC*)
4485	    # Sun C++ 4.2, 5.x and Centerline C++
4486	    _LT_TAGVAR(lt_prog_compiler_pic, $1)='-KPIC'
4487	    _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic'
4488	    _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Qoption ld '
4489	    ;;
4490	  gcx*)
4491	    # Green Hills C++ Compiler
4492	    _LT_TAGVAR(lt_prog_compiler_pic, $1)='-PIC'
4493	    ;;
4494	  *)
4495	    ;;
4496	esac
4497	;;
4498      sunos4*)
4499	case $cc_basename in
4500	  CC*)
4501	    # Sun C++ 4.x
4502	    _LT_TAGVAR(lt_prog_compiler_pic, $1)='-pic'
4503	    _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic'
4504	    ;;
4505	  lcc*)
4506	    # Lucid
4507	    _LT_TAGVAR(lt_prog_compiler_pic, $1)='-pic'
4508	    ;;
4509	  *)
4510	    ;;
4511	esac
4512	;;
4513      sysv5* | unixware* | sco3.2v5* | sco5v6* | OpenUNIX*)
4514	case $cc_basename in
4515	  CC*)
4516	    _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
4517	    _LT_TAGVAR(lt_prog_compiler_pic, $1)='-KPIC'
4518	    _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic'
4519	    ;;
4520	esac
4521	;;
4522      tandem*)
4523	case $cc_basename in
4524	  NCC*)
4525	    # NonStop-UX NCC 3.20
4526	    _LT_TAGVAR(lt_prog_compiler_pic, $1)='-KPIC'
4527	    ;;
4528	  *)
4529	    ;;
4530	esac
4531	;;
4532      vxworks*)
4533	;;
4534      *)
4535	_LT_TAGVAR(lt_prog_compiler_can_build_shared, $1)=no
4536	;;
4537    esac
4538  fi
4539],
4540[
4541  if test yes = "$GCC"; then
4542    _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
4543    _LT_TAGVAR(lt_prog_compiler_static, $1)='-static'
4544
4545    case $host_os in
4546      aix*)
4547      # All AIX code is PIC.
4548      if test ia64 = "$host_cpu"; then
4549	# AIX 5 now supports IA64 processor
4550	_LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic'
4551      fi
4552      _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fPIC'
4553      ;;
4554
4555    amigaos*)
4556      case $host_cpu in
4557      powerpc)
4558            # see comment about AmigaOS4 .so support
4559            _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fPIC'
4560        ;;
4561      m68k)
4562            # FIXME: we need at least 68020 code to build shared libraries, but
4563            # adding the '-m68020' flag to GCC prevents building anything better,
4564            # like '-m68040'.
4565            _LT_TAGVAR(lt_prog_compiler_pic, $1)='-m68020 -resident32 -malways-restore-a4'
4566        ;;
4567      esac
4568      ;;
4569
4570    beos* | irix5* | irix6* | nonstopux* | osf3* | osf4* | osf5*)
4571      # PIC is the default for these OSes.
4572      ;;
4573
4574    mingw* | cygwin* | pw32* | os2* | cegcc*)
4575      # This hack is so that the source file can tell whether it is being
4576      # built for inclusion in a dll (and should export symbols for example).
4577      # Although the cygwin gcc ignores -fPIC, still need this for old-style
4578      # (--disable-auto-import) libraries
4579      m4_if([$1], [GCJ], [],
4580	[_LT_TAGVAR(lt_prog_compiler_pic, $1)='-DDLL_EXPORT'])
4581      case $host_os in
4582      os2*)
4583	_LT_TAGVAR(lt_prog_compiler_static, $1)='$wl-static'
4584	;;
4585      esac
4586      ;;
4587
4588    darwin* | rhapsody*)
4589      # PIC is the default on this platform
4590      # Common symbols not allowed in MH_DYLIB files
4591      _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fno-common'
4592      ;;
4593
4594    haiku*)
4595      # PIC is the default for Haiku.
4596      # The "-static" flag exists, but is broken.
4597      _LT_TAGVAR(lt_prog_compiler_static, $1)=
4598      ;;
4599
4600    hpux*)
4601      # PIC is the default for 64-bit PA HP-UX, but not for 32-bit
4602      # PA HP-UX.  On IA64 HP-UX, PIC is the default but the pic flag
4603      # sets the default TLS model and affects inlining.
4604      case $host_cpu in
4605      hppa*64*)
4606	# +Z the default
4607	;;
4608      *)
4609	_LT_TAGVAR(lt_prog_compiler_pic, $1)='-fPIC'
4610	;;
4611      esac
4612      ;;
4613
4614    interix[[3-9]]*)
4615      # Interix 3.x gcc -fpic/-fPIC options generate broken code.
4616      # Instead, we relocate shared libraries at runtime.
4617      ;;
4618
4619    msdosdjgpp*)
4620      # Just because we use GCC doesn't mean we suddenly get shared libraries
4621      # on systems that don't support them.
4622      _LT_TAGVAR(lt_prog_compiler_can_build_shared, $1)=no
4623      enable_shared=no
4624      ;;
4625
4626    *nto* | *qnx*)
4627      # QNX uses GNU C++, but need to define -shared option too, otherwise
4628      # it will coredump.
4629      _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fPIC -shared'
4630      ;;
4631
4632    sysv4*MP*)
4633      if test -d /usr/nec; then
4634	_LT_TAGVAR(lt_prog_compiler_pic, $1)=-Kconform_pic
4635      fi
4636      ;;
4637
4638    *)
4639      _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fPIC'
4640      ;;
4641    esac
4642
4643    case $cc_basename in
4644    nvcc*) # Cuda Compiler Driver 2.2
4645      _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Xlinker '
4646      if test -n "$_LT_TAGVAR(lt_prog_compiler_pic, $1)"; then
4647        _LT_TAGVAR(lt_prog_compiler_pic, $1)="-Xcompiler $_LT_TAGVAR(lt_prog_compiler_pic, $1)"
4648      fi
4649      ;;
4650    esac
4651  else
4652    # PORTME Check for flag to pass linker flags through the system compiler.
4653    case $host_os in
4654    aix*)
4655      _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
4656      if test ia64 = "$host_cpu"; then
4657	# AIX 5 now supports IA64 processor
4658	_LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic'
4659      else
4660	_LT_TAGVAR(lt_prog_compiler_static, $1)='-bnso -bI:/lib/syscalls.exp'
4661      fi
4662      ;;
4663
4664    darwin* | rhapsody*)
4665      # PIC is the default on this platform
4666      # Common symbols not allowed in MH_DYLIB files
4667      _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fno-common'
4668      case $cc_basename in
4669      nagfor*)
4670        # NAG Fortran compiler
4671        _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,-Wl,,'
4672        _LT_TAGVAR(lt_prog_compiler_pic, $1)='-PIC'
4673        _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic'
4674        ;;
4675      esac
4676      ;;
4677
4678    mingw* | cygwin* | pw32* | os2* | cegcc*)
4679      # This hack is so that the source file can tell whether it is being
4680      # built for inclusion in a dll (and should export symbols for example).
4681      m4_if([$1], [GCJ], [],
4682	[_LT_TAGVAR(lt_prog_compiler_pic, $1)='-DDLL_EXPORT'])
4683      case $host_os in
4684      os2*)
4685	_LT_TAGVAR(lt_prog_compiler_static, $1)='$wl-static'
4686	;;
4687      esac
4688      ;;
4689
4690    hpux9* | hpux10* | hpux11*)
4691      _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
4692      # PIC is the default for IA64 HP-UX and 64-bit HP-UX, but
4693      # not for PA HP-UX.
4694      case $host_cpu in
4695      hppa*64*|ia64*)
4696	# +Z the default
4697	;;
4698      *)
4699	_LT_TAGVAR(lt_prog_compiler_pic, $1)='+Z'
4700	;;
4701      esac
4702      # Is there a better lt_prog_compiler_static that works with the bundled CC?
4703      _LT_TAGVAR(lt_prog_compiler_static, $1)='$wl-a ${wl}archive'
4704      ;;
4705
4706    irix5* | irix6* | nonstopux*)
4707      _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
4708      # PIC (with -KPIC) is the default.
4709      _LT_TAGVAR(lt_prog_compiler_static, $1)='-non_shared'
4710      ;;
4711
4712    linux* | k*bsd*-gnu | kopensolaris*-gnu | gnu*)
4713      case $cc_basename in
4714      # old Intel for x86_64, which still supported -KPIC.
4715      ecc*)
4716	_LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
4717	_LT_TAGVAR(lt_prog_compiler_pic, $1)='-KPIC'
4718	_LT_TAGVAR(lt_prog_compiler_static, $1)='-static'
4719        ;;
4720      # icc used to be incompatible with GCC.
4721      # ICC 10 doesn't accept -KPIC any more.
4722      icc* | ifort*)
4723	_LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
4724	_LT_TAGVAR(lt_prog_compiler_pic, $1)='-fPIC'
4725	_LT_TAGVAR(lt_prog_compiler_static, $1)='-static'
4726        ;;
4727      # Lahey Fortran 8.1.
4728      lf95*)
4729	_LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
4730	_LT_TAGVAR(lt_prog_compiler_pic, $1)='--shared'
4731	_LT_TAGVAR(lt_prog_compiler_static, $1)='--static'
4732	;;
4733      nagfor*)
4734	# NAG Fortran compiler
4735	_LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,-Wl,,'
4736	_LT_TAGVAR(lt_prog_compiler_pic, $1)='-PIC'
4737	_LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic'
4738	;;
4739      tcc*)
4740	# Fabrice Bellard et al's Tiny C Compiler
4741	_LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
4742	_LT_TAGVAR(lt_prog_compiler_pic, $1)='-fPIC'
4743	_LT_TAGVAR(lt_prog_compiler_static, $1)='-static'
4744	;;
4745      pgcc* | pgf77* | pgf90* | pgf95* | pgfortran*)
4746        # Portland Group compilers (*not* the Pentium gcc compiler,
4747	# which looks to be a dead project)
4748	_LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
4749	_LT_TAGVAR(lt_prog_compiler_pic, $1)='-fpic'
4750	_LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic'
4751        ;;
4752      ccc*)
4753        _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
4754        # All Alpha code is PIC.
4755        _LT_TAGVAR(lt_prog_compiler_static, $1)='-non_shared'
4756        ;;
4757      xl* | bgxl* | bgf* | mpixl*)
4758	# IBM XL C 8.0/Fortran 10.1, 11.1 on PPC and BlueGene
4759	_LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
4760	_LT_TAGVAR(lt_prog_compiler_pic, $1)='-qpic'
4761	_LT_TAGVAR(lt_prog_compiler_static, $1)='-qstaticlink'
4762	;;
4763      *)
4764	case `$CC -V 2>&1 | sed 5q` in
4765	*Sun\ Ceres\ Fortran* | *Sun*Fortran*\ [[1-7]].* | *Sun*Fortran*\ 8.[[0-3]]*)
4766	  # Sun Fortran 8.3 passes all unrecognized flags to the linker
4767	  _LT_TAGVAR(lt_prog_compiler_pic, $1)='-KPIC'
4768	  _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic'
4769	  _LT_TAGVAR(lt_prog_compiler_wl, $1)=''
4770	  ;;
4771	*Sun\ F* | *Sun*Fortran*)
4772	  _LT_TAGVAR(lt_prog_compiler_pic, $1)='-KPIC'
4773	  _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic'
4774	  _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Qoption ld '
4775	  ;;
4776	*Sun\ C*)
4777	  # Sun C 5.9
4778	  _LT_TAGVAR(lt_prog_compiler_pic, $1)='-KPIC'
4779	  _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic'
4780	  _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
4781	  ;;
4782        *Intel*\ [[CF]]*Compiler*)
4783	  _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
4784	  _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fPIC'
4785	  _LT_TAGVAR(lt_prog_compiler_static, $1)='-static'
4786	  ;;
4787	*Portland\ Group*)
4788	  _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
4789	  _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fpic'
4790	  _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic'
4791	  ;;
4792	esac
4793	;;
4794      esac
4795      ;;
4796
4797    newsos6)
4798      _LT_TAGVAR(lt_prog_compiler_pic, $1)='-KPIC'
4799      _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic'
4800      ;;
4801
4802    *nto* | *qnx*)
4803      # QNX uses GNU C++, but need to define -shared option too, otherwise
4804      # it will coredump.
4805      _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fPIC -shared'
4806      ;;
4807
4808    osf3* | osf4* | osf5*)
4809      _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
4810      # All OSF/1 code is PIC.
4811      _LT_TAGVAR(lt_prog_compiler_static, $1)='-non_shared'
4812      ;;
4813
4814    rdos*)
4815      _LT_TAGVAR(lt_prog_compiler_static, $1)='-non_shared'
4816      ;;
4817
4818    solaris*)
4819      _LT_TAGVAR(lt_prog_compiler_pic, $1)='-KPIC'
4820      _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic'
4821      case $cc_basename in
4822      f77* | f90* | f95* | sunf77* | sunf90* | sunf95*)
4823	_LT_TAGVAR(lt_prog_compiler_wl, $1)='-Qoption ld ';;
4824      *)
4825	_LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,';;
4826      esac
4827      ;;
4828
4829    sunos4*)
4830      _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Qoption ld '
4831      _LT_TAGVAR(lt_prog_compiler_pic, $1)='-PIC'
4832      _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic'
4833      ;;
4834
4835    sysv4 | sysv4.2uw2* | sysv4.3*)
4836      _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
4837      _LT_TAGVAR(lt_prog_compiler_pic, $1)='-KPIC'
4838      _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic'
4839      ;;
4840
4841    sysv4*MP*)
4842      if test -d /usr/nec; then
4843	_LT_TAGVAR(lt_prog_compiler_pic, $1)='-Kconform_pic'
4844	_LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic'
4845      fi
4846      ;;
4847
4848    sysv5* | unixware* | sco3.2v5* | sco5v6* | OpenUNIX*)
4849      _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
4850      _LT_TAGVAR(lt_prog_compiler_pic, $1)='-KPIC'
4851      _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic'
4852      ;;
4853
4854    unicos*)
4855      _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
4856      _LT_TAGVAR(lt_prog_compiler_can_build_shared, $1)=no
4857      ;;
4858
4859    uts4*)
4860      _LT_TAGVAR(lt_prog_compiler_pic, $1)='-pic'
4861      _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic'
4862      ;;
4863
4864    *)
4865      _LT_TAGVAR(lt_prog_compiler_can_build_shared, $1)=no
4866      ;;
4867    esac
4868  fi
4869])
4870case $host_os in
4871  # For platforms that do not support PIC, -DPIC is meaningless:
4872  *djgpp*)
4873    _LT_TAGVAR(lt_prog_compiler_pic, $1)=
4874    ;;
4875  *)
4876    _LT_TAGVAR(lt_prog_compiler_pic, $1)="$_LT_TAGVAR(lt_prog_compiler_pic, $1)@&t@m4_if([$1],[],[ -DPIC],[m4_if([$1],[CXX],[ -DPIC],[])])"
4877    ;;
4878esac
4879
4880AC_CACHE_CHECK([for $compiler option to produce PIC],
4881  [_LT_TAGVAR(lt_cv_prog_compiler_pic, $1)],
4882  [_LT_TAGVAR(lt_cv_prog_compiler_pic, $1)=$_LT_TAGVAR(lt_prog_compiler_pic, $1)])
4883_LT_TAGVAR(lt_prog_compiler_pic, $1)=$_LT_TAGVAR(lt_cv_prog_compiler_pic, $1)
4884
4885#
4886# Check to make sure the PIC flag actually works.
4887#
4888if test -n "$_LT_TAGVAR(lt_prog_compiler_pic, $1)"; then
4889  _LT_COMPILER_OPTION([if $compiler PIC flag $_LT_TAGVAR(lt_prog_compiler_pic, $1) works],
4890    [_LT_TAGVAR(lt_cv_prog_compiler_pic_works, $1)],
4891    [$_LT_TAGVAR(lt_prog_compiler_pic, $1)@&t@m4_if([$1],[],[ -DPIC],[m4_if([$1],[CXX],[ -DPIC],[])])], [],
4892    [case $_LT_TAGVAR(lt_prog_compiler_pic, $1) in
4893     "" | " "*) ;;
4894     *) _LT_TAGVAR(lt_prog_compiler_pic, $1)=" $_LT_TAGVAR(lt_prog_compiler_pic, $1)" ;;
4895     esac],
4896    [_LT_TAGVAR(lt_prog_compiler_pic, $1)=
4897     _LT_TAGVAR(lt_prog_compiler_can_build_shared, $1)=no])
4898fi
4899_LT_TAGDECL([pic_flag], [lt_prog_compiler_pic], [1],
4900	[Additional compiler flags for building library objects])
4901
4902_LT_TAGDECL([wl], [lt_prog_compiler_wl], [1],
4903	[How to pass a linker flag through the compiler])
4904#
4905# Check to make sure the static flag actually works.
4906#
4907wl=$_LT_TAGVAR(lt_prog_compiler_wl, $1) eval lt_tmp_static_flag=\"$_LT_TAGVAR(lt_prog_compiler_static, $1)\"
4908_LT_LINKER_OPTION([if $compiler static flag $lt_tmp_static_flag works],
4909  _LT_TAGVAR(lt_cv_prog_compiler_static_works, $1),
4910  $lt_tmp_static_flag,
4911  [],
4912  [_LT_TAGVAR(lt_prog_compiler_static, $1)=])
4913_LT_TAGDECL([link_static_flag], [lt_prog_compiler_static], [1],
4914	[Compiler flag to prevent dynamic linking])
4915])# _LT_COMPILER_PIC
4916
4917
4918# _LT_LINKER_SHLIBS([TAGNAME])
4919# ----------------------------
4920# See if the linker supports building shared libraries.
4921m4_defun([_LT_LINKER_SHLIBS],
4922[AC_REQUIRE([LT_PATH_LD])dnl
4923AC_REQUIRE([LT_PATH_NM])dnl
4924m4_require([_LT_PATH_MANIFEST_TOOL])dnl
4925m4_require([_LT_FILEUTILS_DEFAULTS])dnl
4926m4_require([_LT_DECL_EGREP])dnl
4927m4_require([_LT_DECL_SED])dnl
4928m4_require([_LT_CMD_GLOBAL_SYMBOLS])dnl
4929m4_require([_LT_TAG_COMPILER])dnl
4930AC_MSG_CHECKING([whether the $compiler linker ($LD) supports shared libraries])
4931m4_if([$1], [CXX], [
4932  _LT_TAGVAR(export_symbols_cmds, $1)='$NM $libobjs $convenience | $global_symbol_pipe | $SED '\''s/.* //'\'' | sort | uniq > $export_symbols'
4933  _LT_TAGVAR(exclude_expsyms, $1)=['_GLOBAL_OFFSET_TABLE_|_GLOBAL__F[ID]_.*']
4934  case $host_os in
4935  aix[[4-9]]*)
4936    # If we're using GNU nm, then we don't want the "-C" option.
4937    # -C means demangle to GNU nm, but means don't demangle to AIX nm.
4938    # Without the "-l" option, or with the "-B" option, AIX nm treats
4939    # weak defined symbols like other global defined symbols, whereas
4940    # GNU nm marks them as "W".
4941    # While the 'weak' keyword is ignored in the Export File, we need
4942    # it in the Import File for the 'aix-soname' feature, so we have
4943    # to replace the "-B" option with "-P" for AIX nm.
4944    if $NM -V 2>&1 | $GREP 'GNU' > /dev/null; then
4945      _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'
4946    else
4947      _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'
4948    fi
4949    ;;
4950  pw32*)
4951    _LT_TAGVAR(export_symbols_cmds, $1)=$ltdll_cmds
4952    ;;
4953  cygwin* | mingw* | cegcc*)
4954    case $cc_basename in
4955    cl*)
4956      _LT_TAGVAR(exclude_expsyms, $1)='_NULL_IMPORT_DESCRIPTOR|_IMPORT_DESCRIPTOR_.*'
4957      ;;
4958    *)
4959      _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'
4960      _LT_TAGVAR(exclude_expsyms, $1)=['[_]+GLOBAL_OFFSET_TABLE_|[_]+GLOBAL__[FID]_.*|[_]+head_[A-Za-z0-9_]+_dll|[A-Za-z0-9_]+_dll_iname']
4961      ;;
4962    esac
4963    ;;
4964  linux* | k*bsd*-gnu | gnu*)
4965    _LT_TAGVAR(link_all_deplibs, $1)=no
4966    ;;
4967  *)
4968    _LT_TAGVAR(export_symbols_cmds, $1)='$NM $libobjs $convenience | $global_symbol_pipe | $SED '\''s/.* //'\'' | sort | uniq > $export_symbols'
4969    ;;
4970  esac
4971], [
4972  runpath_var=
4973  _LT_TAGVAR(allow_undefined_flag, $1)=
4974  _LT_TAGVAR(always_export_symbols, $1)=no
4975  _LT_TAGVAR(archive_cmds, $1)=
4976  _LT_TAGVAR(archive_expsym_cmds, $1)=
4977  _LT_TAGVAR(compiler_needs_object, $1)=no
4978  _LT_TAGVAR(enable_shared_with_static_runtimes, $1)=no
4979  _LT_TAGVAR(export_dynamic_flag_spec, $1)=
4980  _LT_TAGVAR(export_symbols_cmds, $1)='$NM $libobjs $convenience | $global_symbol_pipe | $SED '\''s/.* //'\'' | sort | uniq > $export_symbols'
4981  _LT_TAGVAR(hardcode_automatic, $1)=no
4982  _LT_TAGVAR(hardcode_direct, $1)=no
4983  _LT_TAGVAR(hardcode_direct_absolute, $1)=no
4984  _LT_TAGVAR(hardcode_libdir_flag_spec, $1)=
4985  _LT_TAGVAR(hardcode_libdir_separator, $1)=
4986  _LT_TAGVAR(hardcode_minus_L, $1)=no
4987  _LT_TAGVAR(hardcode_shlibpath_var, $1)=unsupported
4988  _LT_TAGVAR(inherit_rpath, $1)=no
4989  _LT_TAGVAR(link_all_deplibs, $1)=unknown
4990  _LT_TAGVAR(module_cmds, $1)=
4991  _LT_TAGVAR(module_expsym_cmds, $1)=
4992  _LT_TAGVAR(old_archive_from_new_cmds, $1)=
4993  _LT_TAGVAR(old_archive_from_expsyms_cmds, $1)=
4994  _LT_TAGVAR(thread_safe_flag_spec, $1)=
4995  _LT_TAGVAR(whole_archive_flag_spec, $1)=
4996  # include_expsyms should be a list of space-separated symbols to be *always*
4997  # included in the symbol list
4998  _LT_TAGVAR(include_expsyms, $1)=
4999  # exclude_expsyms can be an extended regexp of symbols to exclude
5000  # it will be wrapped by ' (' and ')$', so one must not match beginning or
5001  # end of line.  Example: 'a|bc|.*d.*' will exclude the symbols 'a' and 'bc',
5002  # as well as any symbol that contains 'd'.
5003  _LT_TAGVAR(exclude_expsyms, $1)=['_GLOBAL_OFFSET_TABLE_|_GLOBAL__F[ID]_.*']
5004  # Although _GLOBAL_OFFSET_TABLE_ is a valid symbol C name, most a.out
5005  # platforms (ab)use it in PIC code, but their linkers get confused if
5006  # the symbol is explicitly referenced.  Since portable code cannot
5007  # rely on this symbol name, it's probably fine to never include it in
5008  # preloaded symbol tables.
5009  # Exclude shared library initialization/finalization symbols.
5010dnl Note also adjust exclude_expsyms for C++ above.
5011  extract_expsyms_cmds=
5012
5013  case $host_os in
5014  cygwin* | mingw* | pw32* | cegcc*)
5015    # FIXME: the MSVC++ port hasn't been tested in a loooong time
5016    # When not using gcc, we currently assume that we are using
5017    # Microsoft Visual C++.
5018    if test yes != "$GCC"; then
5019      with_gnu_ld=no
5020    fi
5021    ;;
5022  interix*)
5023    # we just hope/assume this is gcc and not c89 (= MSVC++)
5024    with_gnu_ld=yes
5025    ;;
5026  openbsd* | bitrig*)
5027    with_gnu_ld=no
5028    ;;
5029  linux* | k*bsd*-gnu | gnu*)
5030    _LT_TAGVAR(link_all_deplibs, $1)=no
5031    ;;
5032  esac
5033
5034  _LT_TAGVAR(ld_shlibs, $1)=yes
5035
5036  # On some targets, GNU ld is compatible enough with the native linker
5037  # that we're better off using the native interface for both.
5038  lt_use_gnu_ld_interface=no
5039  if test yes = "$with_gnu_ld"; then
5040    case $host_os in
5041      aix*)
5042	# The AIX port of GNU ld has always aspired to compatibility
5043	# with the native linker.  However, as the warning in the GNU ld
5044	# block says, versions before 2.19.5* couldn't really create working
5045	# shared libraries, regardless of the interface used.
5046	case `$LD -v 2>&1` in
5047	  *\ \(GNU\ Binutils\)\ 2.19.5*) ;;
5048	  *\ \(GNU\ Binutils\)\ 2.[[2-9]]*) ;;
5049	  *\ \(GNU\ Binutils\)\ [[3-9]]*) ;;
5050	  *)
5051	    lt_use_gnu_ld_interface=yes
5052	    ;;
5053	esac
5054	;;
5055      *)
5056	lt_use_gnu_ld_interface=yes
5057	;;
5058    esac
5059  fi
5060
5061  if test yes = "$lt_use_gnu_ld_interface"; then
5062    # If archive_cmds runs LD, not CC, wlarc should be empty
5063    wlarc='$wl'
5064
5065    # Set some defaults for GNU ld with shared library support. These
5066    # are reset later if shared libraries are not supported. Putting them
5067    # here allows them to be overridden if necessary.
5068    runpath_var=LD_RUN_PATH
5069    _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='$wl-rpath $wl$libdir'
5070    _LT_TAGVAR(export_dynamic_flag_spec, $1)='$wl--export-dynamic'
5071    # ancient GNU ld didn't support --whole-archive et. al.
5072    if $LD --help 2>&1 | $GREP 'no-whole-archive' > /dev/null; then
5073      _LT_TAGVAR(whole_archive_flag_spec, $1)=$wlarc'--whole-archive$convenience '$wlarc'--no-whole-archive'
5074    else
5075      _LT_TAGVAR(whole_archive_flag_spec, $1)=
5076    fi
5077    supports_anon_versioning=no
5078    case `$LD -v | $SED -e 's/([^)]\+)\s\+//' 2>&1` in
5079      *GNU\ gold*) supports_anon_versioning=yes ;;
5080      *\ [[01]].* | *\ 2.[[0-9]].* | *\ 2.10.*) ;; # catch versions < 2.11
5081      *\ 2.11.93.0.2\ *) supports_anon_versioning=yes ;; # RH7.3 ...
5082      *\ 2.11.92.0.12\ *) supports_anon_versioning=yes ;; # Mandrake 8.2 ...
5083      *\ 2.11.*) ;; # other 2.11 versions
5084      *) supports_anon_versioning=yes ;;
5085    esac
5086
5087    # See if GNU ld supports shared libraries.
5088    case $host_os in
5089    aix[[3-9]]*)
5090      # On AIX/PPC, the GNU linker is very broken
5091      if test ia64 != "$host_cpu"; then
5092	_LT_TAGVAR(ld_shlibs, $1)=no
5093	cat <<_LT_EOF 1>&2
5094
5095*** Warning: the GNU linker, at least up to release 2.19, is reported
5096*** to be unable to reliably create shared libraries on AIX.
5097*** Therefore, libtool is disabling shared libraries support.  If you
5098*** really care for shared libraries, you may want to install binutils
5099*** 2.20 or above, or modify your PATH so that a non-GNU linker is found.
5100*** You will then need to restart the configuration process.
5101
5102_LT_EOF
5103      fi
5104      ;;
5105
5106    amigaos*)
5107      case $host_cpu in
5108      powerpc)
5109            # see comment about AmigaOS4 .so support
5110            _LT_TAGVAR(archive_cmds, $1)='$CC -shared $libobjs $deplibs $compiler_flags $wl-soname $wl$soname -o $lib'
5111            _LT_TAGVAR(archive_expsym_cmds, $1)=''
5112        ;;
5113      m68k)
5114            _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)'
5115            _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-L$libdir'
5116            _LT_TAGVAR(hardcode_minus_L, $1)=yes
5117        ;;
5118      esac
5119      ;;
5120
5121    beos*)
5122      if $LD --help 2>&1 | $GREP ': supported targets:.* elf' > /dev/null; then
5123	_LT_TAGVAR(allow_undefined_flag, $1)=unsupported
5124	# Joseph Beckenbach <jrb3@best.com> says some releases of gcc
5125	# support --undefined.  This deserves some investigation.  FIXME
5126	_LT_TAGVAR(archive_cmds, $1)='$CC -nostart $libobjs $deplibs $compiler_flags $wl-soname $wl$soname -o $lib'
5127      else
5128	_LT_TAGVAR(ld_shlibs, $1)=no
5129      fi
5130      ;;
5131
5132    cygwin* | mingw* | pw32* | cegcc*)
5133      # _LT_TAGVAR(hardcode_libdir_flag_spec, $1) is actually meaningless,
5134      # as there is no search path for DLLs.
5135      _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-L$libdir'
5136      _LT_TAGVAR(export_dynamic_flag_spec, $1)='$wl--export-all-symbols'
5137      _LT_TAGVAR(allow_undefined_flag, $1)=unsupported
5138      _LT_TAGVAR(always_export_symbols, $1)=no
5139      _LT_TAGVAR(enable_shared_with_static_runtimes, $1)=yes
5140      _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'
5141      _LT_TAGVAR(exclude_expsyms, $1)=['[_]+GLOBAL_OFFSET_TABLE_|[_]+GLOBAL__[FID]_.*|[_]+head_[A-Za-z0-9_]+_dll|[A-Za-z0-9_]+_dll_iname']
5142
5143      if $LD --help 2>&1 | $GREP 'auto-import' > /dev/null; then
5144        _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'
5145	# If the export-symbols file already is a .def file, use it as
5146	# is; otherwise, prepend EXPORTS...
5147	_LT_TAGVAR(archive_expsym_cmds, $1)='if _LT_DLL_DEF_P([$export_symbols]); then
5148          cp $export_symbols $output_objdir/$soname.def;
5149        else
5150          echo EXPORTS > $output_objdir/$soname.def;
5151          cat $export_symbols >> $output_objdir/$soname.def;
5152        fi~
5153        $CC -shared $output_objdir/$soname.def $libobjs $deplibs $compiler_flags -o $output_objdir/$soname $wl--enable-auto-image-base -Xlinker --out-implib -Xlinker $lib'
5154      else
5155	_LT_TAGVAR(ld_shlibs, $1)=no
5156      fi
5157      ;;
5158
5159    haiku*)
5160      _LT_TAGVAR(archive_cmds, $1)='$CC -shared $libobjs $deplibs $compiler_flags $wl-soname $wl$soname -o $lib'
5161      _LT_TAGVAR(link_all_deplibs, $1)=yes
5162      ;;
5163
5164    os2*)
5165      _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-L$libdir'
5166      _LT_TAGVAR(hardcode_minus_L, $1)=yes
5167      _LT_TAGVAR(allow_undefined_flag, $1)=unsupported
5168      shrext_cmds=.dll
5169      _LT_TAGVAR(archive_cmds, $1)='$ECHO "LIBRARY ${soname%$shared_ext} INITINSTANCE TERMINSTANCE" > $output_objdir/$libname.def~
5170	$ECHO "DESCRIPTION \"$libname\"" >> $output_objdir/$libname.def~
5171	$ECHO "DATA MULTIPLE NONSHARED" >> $output_objdir/$libname.def~
5172	$ECHO EXPORTS >> $output_objdir/$libname.def~
5173	emxexp $libobjs | $SED /"_DLL_InitTerm"/d >> $output_objdir/$libname.def~
5174	$CC -Zdll -Zcrtdll -o $output_objdir/$soname $libobjs $deplibs $compiler_flags $output_objdir/$libname.def~
5175	emximp -o $lib $output_objdir/$libname.def'
5176      _LT_TAGVAR(archive_expsym_cmds, $1)='$ECHO "LIBRARY ${soname%$shared_ext} INITINSTANCE TERMINSTANCE" > $output_objdir/$libname.def~
5177	$ECHO "DESCRIPTION \"$libname\"" >> $output_objdir/$libname.def~
5178	$ECHO "DATA MULTIPLE NONSHARED" >> $output_objdir/$libname.def~
5179	$ECHO EXPORTS >> $output_objdir/$libname.def~
5180	prefix_cmds="$SED"~
5181	if test EXPORTS = "`$SED 1q $export_symbols`"; then
5182	  prefix_cmds="$prefix_cmds -e 1d";
5183	fi~
5184	prefix_cmds="$prefix_cmds -e \"s/^\(.*\)$/_\1/g\""~
5185	cat $export_symbols | $prefix_cmds >> $output_objdir/$libname.def~
5186	$CC -Zdll -Zcrtdll -o $output_objdir/$soname $libobjs $deplibs $compiler_flags $output_objdir/$libname.def~
5187	emximp -o $lib $output_objdir/$libname.def'
5188      _LT_TAGVAR(old_archive_From_new_cmds, $1)='emximp -o $output_objdir/${libname}_dll.a $output_objdir/$libname.def'
5189      _LT_TAGVAR(enable_shared_with_static_runtimes, $1)=yes
5190      ;;
5191
5192    interix[[3-9]]*)
5193      _LT_TAGVAR(hardcode_direct, $1)=no
5194      _LT_TAGVAR(hardcode_shlibpath_var, $1)=no
5195      _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='$wl-rpath,$libdir'
5196      _LT_TAGVAR(export_dynamic_flag_spec, $1)='$wl-E'
5197      # Hack: On Interix 3.x, we cannot compile PIC because of a broken gcc.
5198      # Instead, shared libraries are loaded at an image base (0x10000000 by
5199      # default) and relocated if they conflict, which is a slow very memory
5200      # consuming and fragmenting process.  To avoid this, we pick a random,
5201      # 256 KiB-aligned image base between 0x50000000 and 0x6FFC0000 at link
5202      # time.  Moving up from 0x10000000 also allows more sbrk(2) space.
5203      _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'
5204      _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'
5205      ;;
5206
5207    gnu* | linux* | tpf* | k*bsd*-gnu | kopensolaris*-gnu)
5208      tmp_diet=no
5209      if test linux-dietlibc = "$host_os"; then
5210	case $cc_basename in
5211	  diet\ *) tmp_diet=yes;;	# linux-dietlibc with static linking (!diet-dyn)
5212	esac
5213      fi
5214      if $LD --help 2>&1 | $EGREP ': supported targets:.* elf' > /dev/null \
5215	 && test no = "$tmp_diet"
5216      then
5217	tmp_addflag=' $pic_flag'
5218	tmp_sharedflag='-shared'
5219	case $cc_basename,$host_cpu in
5220        pgcc*)				# Portland Group C compiler
5221	  _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'
5222	  tmp_addflag=' $pic_flag'
5223	  ;;
5224	pgf77* | pgf90* | pgf95* | pgfortran*)
5225					# Portland Group f77 and f90 compilers
5226	  _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'
5227	  tmp_addflag=' $pic_flag -Mnomain' ;;
5228	ecc*,ia64* | icc*,ia64*)	# Intel C compiler on ia64
5229	  tmp_addflag=' -i_dynamic' ;;
5230	efc*,ia64* | ifort*,ia64*)	# Intel Fortran compiler on ia64
5231	  tmp_addflag=' -i_dynamic -nofor_main' ;;
5232	ifc* | ifort*)			# Intel Fortran compiler
5233	  tmp_addflag=' -nofor_main' ;;
5234	lf95*)				# Lahey Fortran 8.1
5235	  _LT_TAGVAR(whole_archive_flag_spec, $1)=
5236	  tmp_sharedflag='--shared' ;;
5237        nagfor*)                        # NAGFOR 5.3
5238          tmp_sharedflag='-Wl,-shared' ;;
5239	xl[[cC]]* | bgxl[[cC]]* | mpixl[[cC]]*) # IBM XL C 8.0 on PPC (deal with xlf below)
5240	  tmp_sharedflag='-qmkshrobj'
5241	  tmp_addflag= ;;
5242	nvcc*)	# Cuda Compiler Driver 2.2
5243	  _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'
5244	  _LT_TAGVAR(compiler_needs_object, $1)=yes
5245	  ;;
5246	esac
5247	case `$CC -V 2>&1 | sed 5q` in
5248	*Sun\ C*)			# Sun C 5.9
5249	  _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'
5250	  _LT_TAGVAR(compiler_needs_object, $1)=yes
5251	  tmp_sharedflag='-G' ;;
5252	*Sun\ F*)			# Sun Fortran 8.3
5253	  tmp_sharedflag='-G' ;;
5254	esac
5255	_LT_TAGVAR(archive_cmds, $1)='$CC '"$tmp_sharedflag""$tmp_addflag"' $libobjs $deplibs $compiler_flags $wl-soname $wl$soname -o $lib'
5256
5257        if test yes = "$supports_anon_versioning"; then
5258          _LT_TAGVAR(archive_expsym_cmds, $1)='echo "{ global:" > $output_objdir/$libname.ver~
5259            cat $export_symbols | sed -e "s/\(.*\)/\1;/" >> $output_objdir/$libname.ver~
5260            echo "local: *; };" >> $output_objdir/$libname.ver~
5261            $CC '"$tmp_sharedflag""$tmp_addflag"' $libobjs $deplibs $compiler_flags $wl-soname $wl$soname $wl-version-script $wl$output_objdir/$libname.ver -o $lib'
5262        fi
5263
5264	case $cc_basename in
5265	tcc*)
5266	  _LT_TAGVAR(export_dynamic_flag_spec, $1)='-rdynamic'
5267	  ;;
5268	xlf* | bgf* | bgxlf* | mpixlf*)
5269	  # IBM XL Fortran 10.1 on PPC cannot create shared libs itself
5270	  _LT_TAGVAR(whole_archive_flag_spec, $1)='--whole-archive$convenience --no-whole-archive'
5271	  _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='$wl-rpath $wl$libdir'
5272	  _LT_TAGVAR(archive_cmds, $1)='$LD -shared $libobjs $deplibs $linker_flags -soname $soname -o $lib'
5273	  if test yes = "$supports_anon_versioning"; then
5274	    _LT_TAGVAR(archive_expsym_cmds, $1)='echo "{ global:" > $output_objdir/$libname.ver~
5275              cat $export_symbols | sed -e "s/\(.*\)/\1;/" >> $output_objdir/$libname.ver~
5276              echo "local: *; };" >> $output_objdir/$libname.ver~
5277              $LD -shared $libobjs $deplibs $linker_flags -soname $soname -version-script $output_objdir/$libname.ver -o $lib'
5278	  fi
5279	  ;;
5280	esac
5281      else
5282        _LT_TAGVAR(ld_shlibs, $1)=no
5283      fi
5284      ;;
5285
5286    netbsd* | netbsdelf*-gnu)
5287      if echo __ELF__ | $CC -E - | $GREP __ELF__ >/dev/null; then
5288	_LT_TAGVAR(archive_cmds, $1)='$LD -Bshareable $libobjs $deplibs $linker_flags -o $lib'
5289	wlarc=
5290      else
5291	_LT_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag $libobjs $deplibs $compiler_flags $wl-soname $wl$soname -o $lib'
5292	_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'
5293      fi
5294      ;;
5295
5296    solaris*)
5297      if $LD -v 2>&1 | $GREP 'BFD 2\.8' > /dev/null; then
5298	_LT_TAGVAR(ld_shlibs, $1)=no
5299	cat <<_LT_EOF 1>&2
5300
5301*** Warning: The releases 2.8.* of the GNU linker cannot reliably
5302*** create shared libraries on Solaris systems.  Therefore, libtool
5303*** is disabling shared libraries support.  We urge you to upgrade GNU
5304*** binutils to release 2.9.1 or newer.  Another option is to modify
5305*** your PATH or compiler configuration so that the native linker is
5306*** used, and then restart.
5307
5308_LT_EOF
5309      elif $LD --help 2>&1 | $GREP ': supported targets:.* elf' > /dev/null; then
5310	_LT_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag $libobjs $deplibs $compiler_flags $wl-soname $wl$soname -o $lib'
5311	_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'
5312      else
5313	_LT_TAGVAR(ld_shlibs, $1)=no
5314      fi
5315      ;;
5316
5317    sysv5* | sco3.2v5* | sco5v6* | unixware* | OpenUNIX*)
5318      case `$LD -v 2>&1` in
5319        *\ [[01]].* | *\ 2.[[0-9]].* | *\ 2.1[[0-5]].*)
5320	_LT_TAGVAR(ld_shlibs, $1)=no
5321	cat <<_LT_EOF 1>&2
5322
5323*** Warning: Releases of the GNU linker prior to 2.16.91.0.3 cannot
5324*** reliably create shared libraries on SCO systems.  Therefore, libtool
5325*** is disabling shared libraries support.  We urge you to upgrade GNU
5326*** binutils to release 2.16.91.0.3 or newer.  Another option is to modify
5327*** your PATH or compiler configuration so that the native linker is
5328*** used, and then restart.
5329
5330_LT_EOF
5331	;;
5332	*)
5333	  # For security reasons, it is highly recommended that you always
5334	  # use absolute paths for naming shared libraries, and exclude the
5335	  # DT_RUNPATH tag from executables and libraries.  But doing so
5336	  # requires that you compile everything twice, which is a pain.
5337	  if $LD --help 2>&1 | $GREP ': supported targets:.* elf' > /dev/null; then
5338	    _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='$wl-rpath $wl$libdir'
5339	    _LT_TAGVAR(archive_cmds, $1)='$CC -shared $libobjs $deplibs $compiler_flags $wl-soname $wl$soname -o $lib'
5340	    _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'
5341	  else
5342	    _LT_TAGVAR(ld_shlibs, $1)=no
5343	  fi
5344	;;
5345      esac
5346      ;;
5347
5348    sunos4*)
5349      _LT_TAGVAR(archive_cmds, $1)='$LD -assert pure-text -Bshareable -o $lib $libobjs $deplibs $linker_flags'
5350      wlarc=
5351      _LT_TAGVAR(hardcode_direct, $1)=yes
5352      _LT_TAGVAR(hardcode_shlibpath_var, $1)=no
5353      ;;
5354
5355    *)
5356      if $LD --help 2>&1 | $GREP ': supported targets:.* elf' > /dev/null; then
5357	_LT_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag $libobjs $deplibs $compiler_flags $wl-soname $wl$soname -o $lib'
5358	_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'
5359      else
5360	_LT_TAGVAR(ld_shlibs, $1)=no
5361      fi
5362      ;;
5363    esac
5364
5365    if test no = "$_LT_TAGVAR(ld_shlibs, $1)"; then
5366      runpath_var=
5367      _LT_TAGVAR(hardcode_libdir_flag_spec, $1)=
5368      _LT_TAGVAR(export_dynamic_flag_spec, $1)=
5369      _LT_TAGVAR(whole_archive_flag_spec, $1)=
5370    fi
5371  else
5372    # PORTME fill in a description of your system's linker (not GNU ld)
5373    case $host_os in
5374    aix3*)
5375      _LT_TAGVAR(allow_undefined_flag, $1)=unsupported
5376      _LT_TAGVAR(always_export_symbols, $1)=yes
5377      _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'
5378      # Note: this linker hardcodes the directories in LIBPATH if there
5379      # are no directories specified by -L.
5380      _LT_TAGVAR(hardcode_minus_L, $1)=yes
5381      if test yes = "$GCC" && test -z "$lt_prog_compiler_static"; then
5382	# Neither direct hardcoding nor static linking is supported with a
5383	# broken collect2.
5384	_LT_TAGVAR(hardcode_direct, $1)=unsupported
5385      fi
5386      ;;
5387
5388    aix[[4-9]]*)
5389      if test ia64 = "$host_cpu"; then
5390	# On IA64, the linker does run time linking by default, so we don't
5391	# have to do anything special.
5392	aix_use_runtimelinking=no
5393	exp_sym_flag='-Bexport'
5394	no_entry_flag=
5395      else
5396	# If we're using GNU nm, then we don't want the "-C" option.
5397	# -C means demangle to GNU nm, but means don't demangle to AIX nm.
5398	# Without the "-l" option, or with the "-B" option, AIX nm treats
5399	# weak defined symbols like other global defined symbols, whereas
5400	# GNU nm marks them as "W".
5401	# While the 'weak' keyword is ignored in the Export File, we need
5402	# it in the Import File for the 'aix-soname' feature, so we have
5403	# to replace the "-B" option with "-P" for AIX nm.
5404	if $NM -V 2>&1 | $GREP 'GNU' > /dev/null; then
5405	  _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'
5406	else
5407	  _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'
5408	fi
5409	aix_use_runtimelinking=no
5410
5411	# Test if we are trying to use run time linking or normal
5412	# AIX style linking. If -brtl is somewhere in LDFLAGS, we
5413	# have runtime linking enabled, and use it for executables.
5414	# For shared libraries, we enable/disable runtime linking
5415	# depending on the kind of the shared library created -
5416	# when "with_aix_soname,aix_use_runtimelinking" is:
5417	# "aix,no"   lib.a(lib.so.V) shared, rtl:no,  for executables
5418	# "aix,yes"  lib.so          shared, rtl:yes, for executables
5419	#            lib.a           static archive
5420	# "both,no"  lib.so.V(shr.o) shared, rtl:yes
5421	#            lib.a(lib.so.V) shared, rtl:no,  for executables
5422	# "both,yes" lib.so.V(shr.o) shared, rtl:yes, for executables
5423	#            lib.a(lib.so.V) shared, rtl:no
5424	# "svr4,*"   lib.so.V(shr.o) shared, rtl:yes, for executables
5425	#            lib.a           static archive
5426	case $host_os in aix4.[[23]]|aix4.[[23]].*|aix[[5-9]]*)
5427	  for ld_flag in $LDFLAGS; do
5428	  if (test x-brtl = "x$ld_flag" || test x-Wl,-brtl = "x$ld_flag"); then
5429	    aix_use_runtimelinking=yes
5430	    break
5431	  fi
5432	  done
5433	  if test svr4,no = "$with_aix_soname,$aix_use_runtimelinking"; then
5434	    # With aix-soname=svr4, we create the lib.so.V shared archives only,
5435	    # so we don't have lib.a shared libs to link our executables.
5436	    # We have to force runtime linking in this case.
5437	    aix_use_runtimelinking=yes
5438	    LDFLAGS="$LDFLAGS -Wl,-brtl"
5439	  fi
5440	  ;;
5441	esac
5442
5443	exp_sym_flag='-bexport'
5444	no_entry_flag='-bnoentry'
5445      fi
5446
5447      # When large executables or shared objects are built, AIX ld can
5448      # have problems creating the table of contents.  If linking a library
5449      # or program results in "error TOC overflow" add -mminimal-toc to
5450      # CXXFLAGS/CFLAGS for g++/gcc.  In the cases where that is not
5451      # enough to fix the problem, add -Wl,-bbigtoc to LDFLAGS.
5452
5453      _LT_TAGVAR(archive_cmds, $1)=''
5454      _LT_TAGVAR(hardcode_direct, $1)=yes
5455      _LT_TAGVAR(hardcode_direct_absolute, $1)=yes
5456      _LT_TAGVAR(hardcode_libdir_separator, $1)=':'
5457      _LT_TAGVAR(link_all_deplibs, $1)=yes
5458      _LT_TAGVAR(file_list_spec, $1)='$wl-f,'
5459      case $with_aix_soname,$aix_use_runtimelinking in
5460      aix,*) ;; # traditional, no import file
5461      svr4,* | *,yes) # use import file
5462	# The Import File defines what to hardcode.
5463	_LT_TAGVAR(hardcode_direct, $1)=no
5464	_LT_TAGVAR(hardcode_direct_absolute, $1)=no
5465	;;
5466      esac
5467
5468      if test yes = "$GCC"; then
5469	case $host_os in aix4.[[012]]|aix4.[[012]].*)
5470	# We only want to do this on AIX 4.2 and lower, the check
5471	# below for broken collect2 doesn't work under 4.3+
5472	  collect2name=`$CC -print-prog-name=collect2`
5473	  if test -f "$collect2name" &&
5474	   strings "$collect2name" | $GREP resolve_lib_name >/dev/null
5475	  then
5476	  # We have reworked collect2
5477	  :
5478	  else
5479	  # We have old collect2
5480	  _LT_TAGVAR(hardcode_direct, $1)=unsupported
5481	  # It fails to find uninstalled libraries when the uninstalled
5482	  # path is not listed in the libpath.  Setting hardcode_minus_L
5483	  # to unsupported forces relinking
5484	  _LT_TAGVAR(hardcode_minus_L, $1)=yes
5485	  _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-L$libdir'
5486	  _LT_TAGVAR(hardcode_libdir_separator, $1)=
5487	  fi
5488	  ;;
5489	esac
5490	shared_flag='-shared'
5491	if test yes = "$aix_use_runtimelinking"; then
5492	  shared_flag="$shared_flag "'$wl-G'
5493	fi
5494	# Need to ensure runtime linking is disabled for the traditional
5495	# shared library, or the linker may eventually find shared libraries
5496	# /with/ Import File - we do not want to mix them.
5497	shared_flag_aix='-shared'
5498	shared_flag_svr4='-shared $wl-G'
5499      else
5500	# not using gcc
5501	if test ia64 = "$host_cpu"; then
5502	# VisualAge C++, Version 5.5 for AIX 5L for IA-64, Beta 3 Release
5503	# chokes on -Wl,-G. The following line is correct:
5504	  shared_flag='-G'
5505	else
5506	  if test yes = "$aix_use_runtimelinking"; then
5507	    shared_flag='$wl-G'
5508	  else
5509	    shared_flag='$wl-bM:SRE'
5510	  fi
5511	  shared_flag_aix='$wl-bM:SRE'
5512	  shared_flag_svr4='$wl-G'
5513	fi
5514      fi
5515
5516      _LT_TAGVAR(export_dynamic_flag_spec, $1)='$wl-bexpall'
5517      # It seems that -bexpall does not export symbols beginning with
5518      # underscore (_), so it is better to generate a list of symbols to export.
5519      _LT_TAGVAR(always_export_symbols, $1)=yes
5520      if test aix,yes = "$with_aix_soname,$aix_use_runtimelinking"; then
5521	# Warning - without using the other runtime loading flags (-brtl),
5522	# -berok will link without error, but may produce a broken library.
5523	_LT_TAGVAR(allow_undefined_flag, $1)='-berok'
5524        # Determine the default libpath from the value encoded in an
5525        # empty executable.
5526        _LT_SYS_MODULE_PATH_AIX([$1])
5527        _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='$wl-blibpath:$libdir:'"$aix_libpath"
5528        _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
5529      else
5530	if test ia64 = "$host_cpu"; then
5531	  _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='$wl-R $libdir:/usr/lib:/lib'
5532	  _LT_TAGVAR(allow_undefined_flag, $1)="-z nodefs"
5533	  _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"
5534	else
5535	 # Determine the default libpath from the value encoded in an
5536	 # empty executable.
5537	 _LT_SYS_MODULE_PATH_AIX([$1])
5538	 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='$wl-blibpath:$libdir:'"$aix_libpath"
5539	  # Warning - without using the other run time loading flags,
5540	  # -berok will link without error, but may produce a broken library.
5541	  _LT_TAGVAR(no_undefined_flag, $1)=' $wl-bernotok'
5542	  _LT_TAGVAR(allow_undefined_flag, $1)=' $wl-berok'
5543	  if test yes = "$with_gnu_ld"; then
5544	    # We only use this code for GNU lds that support --whole-archive.
5545	    _LT_TAGVAR(whole_archive_flag_spec, $1)='$wl--whole-archive$convenience $wl--no-whole-archive'
5546	  else
5547	    # Exported symbols can be pulled into shared objects from archives
5548	    _LT_TAGVAR(whole_archive_flag_spec, $1)='$convenience'
5549	  fi
5550	  _LT_TAGVAR(archive_cmds_need_lc, $1)=yes
5551	  _LT_TAGVAR(archive_expsym_cmds, $1)='$RM -r $output_objdir/$realname.d~$MKDIR $output_objdir/$realname.d'
5552	  # -brtl affects multiple linker settings, -berok does not and is overridden later
5553	  compiler_flags_filtered='`func_echo_all "$compiler_flags " | $SED -e "s%-brtl\\([[, ]]\\)%-berok\\1%g"`'
5554	  if test svr4 != "$with_aix_soname"; then
5555	    # This is similar to how AIX traditionally builds its shared libraries.
5556	    _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'
5557	  fi
5558	  if test aix != "$with_aix_soname"; then
5559	    _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'
5560	  else
5561	    # used by -dlpreopen to get the symbols
5562	    _LT_TAGVAR(archive_expsym_cmds, $1)="$_LT_TAGVAR(archive_expsym_cmds, $1)"'~$MV  $output_objdir/$realname.d/$soname $output_objdir'
5563	  fi
5564	  _LT_TAGVAR(archive_expsym_cmds, $1)="$_LT_TAGVAR(archive_expsym_cmds, $1)"'~$RM -r $output_objdir/$realname.d'
5565	fi
5566      fi
5567      ;;
5568
5569    amigaos*)
5570      case $host_cpu in
5571      powerpc)
5572            # see comment about AmigaOS4 .so support
5573            _LT_TAGVAR(archive_cmds, $1)='$CC -shared $libobjs $deplibs $compiler_flags $wl-soname $wl$soname -o $lib'
5574            _LT_TAGVAR(archive_expsym_cmds, $1)=''
5575        ;;
5576      m68k)
5577            _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)'
5578            _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-L$libdir'
5579            _LT_TAGVAR(hardcode_minus_L, $1)=yes
5580        ;;
5581      esac
5582      ;;
5583
5584    bsdi[[45]]*)
5585      _LT_TAGVAR(export_dynamic_flag_spec, $1)=-rdynamic
5586      ;;
5587
5588    cygwin* | mingw* | pw32* | cegcc*)
5589      # When not using gcc, we currently assume that we are using
5590      # Microsoft Visual C++.
5591      # hardcode_libdir_flag_spec is actually meaningless, as there is
5592      # no search path for DLLs.
5593      case $cc_basename in
5594      cl*)
5595	# Native MSVC
5596	_LT_TAGVAR(hardcode_libdir_flag_spec, $1)=' '
5597	_LT_TAGVAR(allow_undefined_flag, $1)=unsupported
5598	_LT_TAGVAR(always_export_symbols, $1)=yes
5599	_LT_TAGVAR(file_list_spec, $1)='@'
5600	# Tell ltmain to make .lib files, not .a files.
5601	libext=lib
5602	# Tell ltmain to make .dll files, not .so files.
5603	shrext_cmds=.dll
5604	# FIXME: Setting linknames here is a bad hack.
5605	_LT_TAGVAR(archive_cmds, $1)='$CC -o $output_objdir/$soname $libobjs $compiler_flags $deplibs -Wl,-DLL,-IMPLIB:"$tool_output_objdir$libname.dll.lib"~linknames='
5606	_LT_TAGVAR(archive_expsym_cmds, $1)='if _LT_DLL_DEF_P([$export_symbols]); then
5607            cp "$export_symbols" "$output_objdir/$soname.def";
5608            echo "$tool_output_objdir$soname.def" > "$output_objdir/$soname.exp";
5609          else
5610            $SED -e '\''s/^/-link -EXPORT:/'\'' < $export_symbols > $output_objdir/$soname.exp;
5611          fi~
5612          $CC -o $tool_output_objdir$soname $libobjs $compiler_flags $deplibs "@$tool_output_objdir$soname.exp" -Wl,-DLL,-IMPLIB:"$tool_output_objdir$libname.dll.lib"~
5613          linknames='
5614	# The linker will not automatically build a static lib if we build a DLL.
5615	# _LT_TAGVAR(old_archive_from_new_cmds, $1)='true'
5616	_LT_TAGVAR(enable_shared_with_static_runtimes, $1)=yes
5617	_LT_TAGVAR(exclude_expsyms, $1)='_NULL_IMPORT_DESCRIPTOR|_IMPORT_DESCRIPTOR_.*'
5618	_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'
5619	# Don't use ranlib
5620	_LT_TAGVAR(old_postinstall_cmds, $1)='chmod 644 $oldlib'
5621	_LT_TAGVAR(postlink_cmds, $1)='lt_outputfile="@OUTPUT@"~
5622          lt_tool_outputfile="@TOOL_OUTPUT@"~
5623          case $lt_outputfile in
5624            *.exe|*.EXE) ;;
5625            *)
5626              lt_outputfile=$lt_outputfile.exe
5627              lt_tool_outputfile=$lt_tool_outputfile.exe
5628              ;;
5629          esac~
5630          if test : != "$MANIFEST_TOOL" && test -f "$lt_outputfile.manifest"; then
5631            $MANIFEST_TOOL -manifest "$lt_tool_outputfile.manifest" -outputresource:"$lt_tool_outputfile" || exit 1;
5632            $RM "$lt_outputfile.manifest";
5633          fi'
5634	;;
5635      *)
5636	# Assume MSVC wrapper
5637	_LT_TAGVAR(hardcode_libdir_flag_spec, $1)=' '
5638	_LT_TAGVAR(allow_undefined_flag, $1)=unsupported
5639	# Tell ltmain to make .lib files, not .a files.
5640	libext=lib
5641	# Tell ltmain to make .dll files, not .so files.
5642	shrext_cmds=.dll
5643	# FIXME: Setting linknames here is a bad hack.
5644	_LT_TAGVAR(archive_cmds, $1)='$CC -o $lib $libobjs $compiler_flags `func_echo_all "$deplibs" | $SED '\''s/ -lc$//'\''` -link -dll~linknames='
5645	# The linker will automatically build a .lib file if we build a DLL.
5646	_LT_TAGVAR(old_archive_from_new_cmds, $1)='true'
5647	# FIXME: Should let the user specify the lib program.
5648	_LT_TAGVAR(old_archive_cmds, $1)='lib -OUT:$oldlib$oldobjs$old_deplibs'
5649	_LT_TAGVAR(enable_shared_with_static_runtimes, $1)=yes
5650	;;
5651      esac
5652      ;;
5653
5654    darwin* | rhapsody*)
5655      _LT_DARWIN_LINKER_FEATURES($1)
5656      ;;
5657
5658    dgux*)
5659      _LT_TAGVAR(archive_cmds, $1)='$LD -G -h $soname -o $lib $libobjs $deplibs $linker_flags'
5660      _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-L$libdir'
5661      _LT_TAGVAR(hardcode_shlibpath_var, $1)=no
5662      ;;
5663
5664    # FreeBSD 2.2.[012] allows us to include c++rt0.o to get C++ constructor
5665    # support.  Future versions do this automatically, but an explicit c++rt0.o
5666    # does not break anything, and helps significantly (at the cost of a little
5667    # extra space).
5668    freebsd2.2*)
5669      _LT_TAGVAR(archive_cmds, $1)='$LD -Bshareable -o $lib $libobjs $deplibs $linker_flags /usr/lib/c++rt0.o'
5670      _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-R$libdir'
5671      _LT_TAGVAR(hardcode_direct, $1)=yes
5672      _LT_TAGVAR(hardcode_shlibpath_var, $1)=no
5673      ;;
5674
5675    # Unfortunately, older versions of FreeBSD 2 do not have this feature.
5676    freebsd2.*)
5677      _LT_TAGVAR(archive_cmds, $1)='$LD -Bshareable -o $lib $libobjs $deplibs $linker_flags'
5678      _LT_TAGVAR(hardcode_direct, $1)=yes
5679      _LT_TAGVAR(hardcode_minus_L, $1)=yes
5680      _LT_TAGVAR(hardcode_shlibpath_var, $1)=no
5681      ;;
5682
5683    # FreeBSD 3 and greater uses gcc -shared to do shared libraries.
5684    freebsd* | dragonfly*)
5685      _LT_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag -o $lib $libobjs $deplibs $compiler_flags'
5686      _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-R$libdir'
5687      _LT_TAGVAR(hardcode_direct, $1)=yes
5688      _LT_TAGVAR(hardcode_shlibpath_var, $1)=no
5689      ;;
5690
5691    hpux9*)
5692      if test yes = "$GCC"; then
5693	_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'
5694      else
5695	_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'
5696      fi
5697      _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='$wl+b $wl$libdir'
5698      _LT_TAGVAR(hardcode_libdir_separator, $1)=:
5699      _LT_TAGVAR(hardcode_direct, $1)=yes
5700
5701      # hardcode_minus_L: Not really in the search PATH,
5702      # but as the default location of the library.
5703      _LT_TAGVAR(hardcode_minus_L, $1)=yes
5704      _LT_TAGVAR(export_dynamic_flag_spec, $1)='$wl-E'
5705      ;;
5706
5707    hpux10*)
5708      if test yes,no = "$GCC,$with_gnu_ld"; then
5709	_LT_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag $wl+h $wl$soname $wl+b $wl$install_libdir -o $lib $libobjs $deplibs $compiler_flags'
5710      else
5711	_LT_TAGVAR(archive_cmds, $1)='$LD -b +h $soname +b $install_libdir -o $lib $libobjs $deplibs $linker_flags'
5712      fi
5713      if test no = "$with_gnu_ld"; then
5714	_LT_TAGVAR(hardcode_libdir_flag_spec, $1)='$wl+b $wl$libdir'
5715	_LT_TAGVAR(hardcode_libdir_separator, $1)=:
5716	_LT_TAGVAR(hardcode_direct, $1)=yes
5717	_LT_TAGVAR(hardcode_direct_absolute, $1)=yes
5718	_LT_TAGVAR(export_dynamic_flag_spec, $1)='$wl-E'
5719	# hardcode_minus_L: Not really in the search PATH,
5720	# but as the default location of the library.
5721	_LT_TAGVAR(hardcode_minus_L, $1)=yes
5722      fi
5723      ;;
5724
5725    hpux11*)
5726      if test yes,no = "$GCC,$with_gnu_ld"; then
5727	case $host_cpu in
5728	hppa*64*)
5729	  _LT_TAGVAR(archive_cmds, $1)='$CC -shared $wl+h $wl$soname -o $lib $libobjs $deplibs $compiler_flags'
5730	  ;;
5731	ia64*)
5732	  _LT_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag $wl+h $wl$soname $wl+nodefaultrpath -o $lib $libobjs $deplibs $compiler_flags'
5733	  ;;
5734	*)
5735	  _LT_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag $wl+h $wl$soname $wl+b $wl$install_libdir -o $lib $libobjs $deplibs $compiler_flags'
5736	  ;;
5737	esac
5738      else
5739	case $host_cpu in
5740	hppa*64*)
5741	  _LT_TAGVAR(archive_cmds, $1)='$CC -b $wl+h $wl$soname -o $lib $libobjs $deplibs $compiler_flags'
5742	  ;;
5743	ia64*)
5744	  _LT_TAGVAR(archive_cmds, $1)='$CC -b $wl+h $wl$soname $wl+nodefaultrpath -o $lib $libobjs $deplibs $compiler_flags'
5745	  ;;
5746	*)
5747	m4_if($1, [], [
5748	  # Older versions of the 11.00 compiler do not understand -b yet
5749	  # (HP92453-01 A.11.01.20 doesn't, HP92453-01 B.11.X.35175-35176.GP does)
5750	  _LT_LINKER_OPTION([if $CC understands -b],
5751	    _LT_TAGVAR(lt_cv_prog_compiler__b, $1), [-b],
5752	    [_LT_TAGVAR(archive_cmds, $1)='$CC -b $wl+h $wl$soname $wl+b $wl$install_libdir -o $lib $libobjs $deplibs $compiler_flags'],
5753	    [_LT_TAGVAR(archive_cmds, $1)='$LD -b +h $soname +b $install_libdir -o $lib $libobjs $deplibs $linker_flags'])],
5754	  [_LT_TAGVAR(archive_cmds, $1)='$CC -b $wl+h $wl$soname $wl+b $wl$install_libdir -o $lib $libobjs $deplibs $compiler_flags'])
5755	  ;;
5756	esac
5757      fi
5758      if test no = "$with_gnu_ld"; then
5759	_LT_TAGVAR(hardcode_libdir_flag_spec, $1)='$wl+b $wl$libdir'
5760	_LT_TAGVAR(hardcode_libdir_separator, $1)=:
5761
5762	case $host_cpu in
5763	hppa*64*|ia64*)
5764	  _LT_TAGVAR(hardcode_direct, $1)=no
5765	  _LT_TAGVAR(hardcode_shlibpath_var, $1)=no
5766	  ;;
5767	*)
5768	  _LT_TAGVAR(hardcode_direct, $1)=yes
5769	  _LT_TAGVAR(hardcode_direct_absolute, $1)=yes
5770	  _LT_TAGVAR(export_dynamic_flag_spec, $1)='$wl-E'
5771
5772	  # hardcode_minus_L: Not really in the search PATH,
5773	  # but as the default location of the library.
5774	  _LT_TAGVAR(hardcode_minus_L, $1)=yes
5775	  ;;
5776	esac
5777      fi
5778      ;;
5779
5780    irix5* | irix6* | nonstopux*)
5781      if test yes = "$GCC"; then
5782	_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'
5783	# Try to use the -exported_symbol ld option, if it does not
5784	# work, assume that -exports_file does not work either and
5785	# implicitly export all symbols.
5786	# This should be the same for all languages, so no per-tag cache variable.
5787	AC_CACHE_CHECK([whether the $host_os linker accepts -exported_symbol],
5788	  [lt_cv_irix_exported_symbol],
5789	  [save_LDFLAGS=$LDFLAGS
5790	   LDFLAGS="$LDFLAGS -shared $wl-exported_symbol ${wl}foo $wl-update_registry $wl/dev/null"
5791	   AC_LINK_IFELSE(
5792	     [AC_LANG_SOURCE(
5793	        [AC_LANG_CASE([C], [[int foo (void) { return 0; }]],
5794			      [C++], [[int foo (void) { return 0; }]],
5795			      [Fortran 77], [[
5796      subroutine foo
5797      end]],
5798			      [Fortran], [[
5799      subroutine foo
5800      end]])])],
5801	      [lt_cv_irix_exported_symbol=yes],
5802	      [lt_cv_irix_exported_symbol=no])
5803           LDFLAGS=$save_LDFLAGS])
5804	if test yes = "$lt_cv_irix_exported_symbol"; then
5805          _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'
5806	fi
5807	_LT_TAGVAR(link_all_deplibs, $1)=no
5808      else
5809	_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'
5810	_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'
5811      fi
5812      _LT_TAGVAR(archive_cmds_need_lc, $1)='no'
5813      _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='$wl-rpath $wl$libdir'
5814      _LT_TAGVAR(hardcode_libdir_separator, $1)=:
5815      _LT_TAGVAR(inherit_rpath, $1)=yes
5816      _LT_TAGVAR(link_all_deplibs, $1)=yes
5817      ;;
5818
5819    linux*)
5820      case $cc_basename in
5821      tcc*)
5822	# Fabrice Bellard et al's Tiny C Compiler
5823	_LT_TAGVAR(ld_shlibs, $1)=yes
5824	_LT_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag -o $lib $libobjs $deplibs $compiler_flags'
5825	;;
5826      esac
5827      ;;
5828
5829    netbsd* | netbsdelf*-gnu)
5830      if echo __ELF__ | $CC -E - | $GREP __ELF__ >/dev/null; then
5831	_LT_TAGVAR(archive_cmds, $1)='$LD -Bshareable -o $lib $libobjs $deplibs $linker_flags'  # a.out
5832      else
5833	_LT_TAGVAR(archive_cmds, $1)='$LD -shared -o $lib $libobjs $deplibs $linker_flags'      # ELF
5834      fi
5835      _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-R$libdir'
5836      _LT_TAGVAR(hardcode_direct, $1)=yes
5837      _LT_TAGVAR(hardcode_shlibpath_var, $1)=no
5838      ;;
5839
5840    newsos6)
5841      _LT_TAGVAR(archive_cmds, $1)='$LD -G -h $soname -o $lib $libobjs $deplibs $linker_flags'
5842      _LT_TAGVAR(hardcode_direct, $1)=yes
5843      _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='$wl-rpath $wl$libdir'
5844      _LT_TAGVAR(hardcode_libdir_separator, $1)=:
5845      _LT_TAGVAR(hardcode_shlibpath_var, $1)=no
5846      ;;
5847
5848    *nto* | *qnx*)
5849      ;;
5850
5851    openbsd* | bitrig*)
5852      if test -f /usr/libexec/ld.so; then
5853	_LT_TAGVAR(hardcode_direct, $1)=yes
5854	_LT_TAGVAR(hardcode_shlibpath_var, $1)=no
5855	_LT_TAGVAR(hardcode_direct_absolute, $1)=yes
5856	if test -z "`echo __ELF__ | $CC -E - | $GREP __ELF__`"; then
5857	  _LT_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag -o $lib $libobjs $deplibs $compiler_flags'
5858	  _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -shared $pic_flag -o $lib $libobjs $deplibs $compiler_flags $wl-retain-symbols-file,$export_symbols'
5859	  _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='$wl-rpath,$libdir'
5860	  _LT_TAGVAR(export_dynamic_flag_spec, $1)='$wl-E'
5861	else
5862	  _LT_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag -o $lib $libobjs $deplibs $compiler_flags'
5863	  _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='$wl-rpath,$libdir'
5864	fi
5865      else
5866	_LT_TAGVAR(ld_shlibs, $1)=no
5867      fi
5868      ;;
5869
5870    os2*)
5871      _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-L$libdir'
5872      _LT_TAGVAR(hardcode_minus_L, $1)=yes
5873      _LT_TAGVAR(allow_undefined_flag, $1)=unsupported
5874      shrext_cmds=.dll
5875      _LT_TAGVAR(archive_cmds, $1)='$ECHO "LIBRARY ${soname%$shared_ext} INITINSTANCE TERMINSTANCE" > $output_objdir/$libname.def~
5876	$ECHO "DESCRIPTION \"$libname\"" >> $output_objdir/$libname.def~
5877	$ECHO "DATA MULTIPLE NONSHARED" >> $output_objdir/$libname.def~
5878	$ECHO EXPORTS >> $output_objdir/$libname.def~
5879	emxexp $libobjs | $SED /"_DLL_InitTerm"/d >> $output_objdir/$libname.def~
5880	$CC -Zdll -Zcrtdll -o $output_objdir/$soname $libobjs $deplibs $compiler_flags $output_objdir/$libname.def~
5881	emximp -o $lib $output_objdir/$libname.def'
5882      _LT_TAGVAR(archive_expsym_cmds, $1)='$ECHO "LIBRARY ${soname%$shared_ext} INITINSTANCE TERMINSTANCE" > $output_objdir/$libname.def~
5883	$ECHO "DESCRIPTION \"$libname\"" >> $output_objdir/$libname.def~
5884	$ECHO "DATA MULTIPLE NONSHARED" >> $output_objdir/$libname.def~
5885	$ECHO EXPORTS >> $output_objdir/$libname.def~
5886	prefix_cmds="$SED"~
5887	if test EXPORTS = "`$SED 1q $export_symbols`"; then
5888	  prefix_cmds="$prefix_cmds -e 1d";
5889	fi~
5890	prefix_cmds="$prefix_cmds -e \"s/^\(.*\)$/_\1/g\""~
5891	cat $export_symbols | $prefix_cmds >> $output_objdir/$libname.def~
5892	$CC -Zdll -Zcrtdll -o $output_objdir/$soname $libobjs $deplibs $compiler_flags $output_objdir/$libname.def~
5893	emximp -o $lib $output_objdir/$libname.def'
5894      _LT_TAGVAR(old_archive_From_new_cmds, $1)='emximp -o $output_objdir/${libname}_dll.a $output_objdir/$libname.def'
5895      _LT_TAGVAR(enable_shared_with_static_runtimes, $1)=yes
5896      ;;
5897
5898    osf3*)
5899      if test yes = "$GCC"; then
5900	_LT_TAGVAR(allow_undefined_flag, $1)=' $wl-expect_unresolved $wl\*'
5901	_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'
5902      else
5903	_LT_TAGVAR(allow_undefined_flag, $1)=' -expect_unresolved \*'
5904	_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'
5905      fi
5906      _LT_TAGVAR(archive_cmds_need_lc, $1)='no'
5907      _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='$wl-rpath $wl$libdir'
5908      _LT_TAGVAR(hardcode_libdir_separator, $1)=:
5909      ;;
5910
5911    osf4* | osf5*)	# as osf3* with the addition of -msym flag
5912      if test yes = "$GCC"; then
5913	_LT_TAGVAR(allow_undefined_flag, $1)=' $wl-expect_unresolved $wl\*'
5914	_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'
5915	_LT_TAGVAR(hardcode_libdir_flag_spec, $1)='$wl-rpath $wl$libdir'
5916      else
5917	_LT_TAGVAR(allow_undefined_flag, $1)=' -expect_unresolved \*'
5918	_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'
5919	_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~
5920          $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'
5921
5922	# Both c and cxx compiler support -rpath directly
5923	_LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-rpath $libdir'
5924      fi
5925      _LT_TAGVAR(archive_cmds_need_lc, $1)='no'
5926      _LT_TAGVAR(hardcode_libdir_separator, $1)=:
5927      ;;
5928
5929    solaris*)
5930      _LT_TAGVAR(no_undefined_flag, $1)=' -z defs'
5931      if test yes = "$GCC"; then
5932	wlarc='$wl'
5933	_LT_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag $wl-z ${wl}text $wl-h $wl$soname -o $lib $libobjs $deplibs $compiler_flags'
5934	_LT_TAGVAR(archive_expsym_cmds, $1)='echo "{ global:" > $lib.exp~cat $export_symbols | $SED -e "s/\(.*\)/\1;/" >> $lib.exp~echo "local: *; };" >> $lib.exp~
5935          $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'
5936      else
5937	case `$CC -V 2>&1` in
5938	*"Compilers 5.0"*)
5939	  wlarc=''
5940	  _LT_TAGVAR(archive_cmds, $1)='$LD -G$allow_undefined_flag -h $soname -o $lib $libobjs $deplibs $linker_flags'
5941	  _LT_TAGVAR(archive_expsym_cmds, $1)='echo "{ global:" > $lib.exp~cat $export_symbols | $SED -e "s/\(.*\)/\1;/" >> $lib.exp~echo "local: *; };" >> $lib.exp~
5942            $LD -G$allow_undefined_flag -M $lib.exp -h $soname -o $lib $libobjs $deplibs $linker_flags~$RM $lib.exp'
5943	  ;;
5944	*)
5945	  wlarc='$wl'
5946	  _LT_TAGVAR(archive_cmds, $1)='$CC -G$allow_undefined_flag -h $soname -o $lib $libobjs $deplibs $compiler_flags'
5947	  _LT_TAGVAR(archive_expsym_cmds, $1)='echo "{ global:" > $lib.exp~cat $export_symbols | $SED -e "s/\(.*\)/\1;/" >> $lib.exp~echo "local: *; };" >> $lib.exp~
5948            $CC -G$allow_undefined_flag -M $lib.exp -h $soname -o $lib $libobjs $deplibs $compiler_flags~$RM $lib.exp'
5949	  ;;
5950	esac
5951      fi
5952      _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-R$libdir'
5953      _LT_TAGVAR(hardcode_shlibpath_var, $1)=no
5954      case $host_os in
5955      solaris2.[[0-5]] | solaris2.[[0-5]].*) ;;
5956      *)
5957	# The compiler driver will combine and reorder linker options,
5958	# but understands '-z linker_flag'.  GCC discards it without '$wl',
5959	# but is careful enough not to reorder.
5960	# Supported since Solaris 2.6 (maybe 2.5.1?)
5961	if test yes = "$GCC"; then
5962	  _LT_TAGVAR(whole_archive_flag_spec, $1)='$wl-z ${wl}allextract$convenience $wl-z ${wl}defaultextract'
5963	else
5964	  _LT_TAGVAR(whole_archive_flag_spec, $1)='-z allextract$convenience -z defaultextract'
5965	fi
5966	;;
5967      esac
5968      _LT_TAGVAR(link_all_deplibs, $1)=yes
5969      ;;
5970
5971    sunos4*)
5972      if test sequent = "$host_vendor"; then
5973	# Use $CC to link under sequent, because it throws in some extra .o
5974	# files that make .init and .fini sections work.
5975	_LT_TAGVAR(archive_cmds, $1)='$CC -G $wl-h $soname -o $lib $libobjs $deplibs $compiler_flags'
5976      else
5977	_LT_TAGVAR(archive_cmds, $1)='$LD -assert pure-text -Bstatic -o $lib $libobjs $deplibs $linker_flags'
5978      fi
5979      _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-L$libdir'
5980      _LT_TAGVAR(hardcode_direct, $1)=yes
5981      _LT_TAGVAR(hardcode_minus_L, $1)=yes
5982      _LT_TAGVAR(hardcode_shlibpath_var, $1)=no
5983      ;;
5984
5985    sysv4)
5986      case $host_vendor in
5987	sni)
5988	  _LT_TAGVAR(archive_cmds, $1)='$LD -G -h $soname -o $lib $libobjs $deplibs $linker_flags'
5989	  _LT_TAGVAR(hardcode_direct, $1)=yes # is this really true???
5990	;;
5991	siemens)
5992	  ## LD is ld it makes a PLAMLIB
5993	  ## CC just makes a GrossModule.
5994	  _LT_TAGVAR(archive_cmds, $1)='$LD -G -o $lib $libobjs $deplibs $linker_flags'
5995	  _LT_TAGVAR(reload_cmds, $1)='$CC -r -o $output$reload_objs'
5996	  _LT_TAGVAR(hardcode_direct, $1)=no
5997        ;;
5998	motorola)
5999	  _LT_TAGVAR(archive_cmds, $1)='$LD -G -h $soname -o $lib $libobjs $deplibs $linker_flags'
6000	  _LT_TAGVAR(hardcode_direct, $1)=no #Motorola manual says yes, but my tests say they lie
6001	;;
6002      esac
6003      runpath_var='LD_RUN_PATH'
6004      _LT_TAGVAR(hardcode_shlibpath_var, $1)=no
6005      ;;
6006
6007    sysv4.3*)
6008      _LT_TAGVAR(archive_cmds, $1)='$LD -G -h $soname -o $lib $libobjs $deplibs $linker_flags'
6009      _LT_TAGVAR(hardcode_shlibpath_var, $1)=no
6010      _LT_TAGVAR(export_dynamic_flag_spec, $1)='-Bexport'
6011      ;;
6012
6013    sysv4*MP*)
6014      if test -d /usr/nec; then
6015	_LT_TAGVAR(archive_cmds, $1)='$LD -G -h $soname -o $lib $libobjs $deplibs $linker_flags'
6016	_LT_TAGVAR(hardcode_shlibpath_var, $1)=no
6017	runpath_var=LD_RUN_PATH
6018	hardcode_runpath_var=yes
6019	_LT_TAGVAR(ld_shlibs, $1)=yes
6020      fi
6021      ;;
6022
6023    sysv4*uw2* | sysv5OpenUNIX* | sysv5UnixWare7.[[01]].[[10]]* | unixware7* | sco3.2v5.0.[[024]]*)
6024      _LT_TAGVAR(no_undefined_flag, $1)='$wl-z,text'
6025      _LT_TAGVAR(archive_cmds_need_lc, $1)=no
6026      _LT_TAGVAR(hardcode_shlibpath_var, $1)=no
6027      runpath_var='LD_RUN_PATH'
6028
6029      if test yes = "$GCC"; then
6030	_LT_TAGVAR(archive_cmds, $1)='$CC -shared $wl-h,$soname -o $lib $libobjs $deplibs $compiler_flags'
6031	_LT_TAGVAR(archive_expsym_cmds, $1)='$CC -shared $wl-Bexport:$export_symbols $wl-h,$soname -o $lib $libobjs $deplibs $compiler_flags'
6032      else
6033	_LT_TAGVAR(archive_cmds, $1)='$CC -G $wl-h,$soname -o $lib $libobjs $deplibs $compiler_flags'
6034	_LT_TAGVAR(archive_expsym_cmds, $1)='$CC -G $wl-Bexport:$export_symbols $wl-h,$soname -o $lib $libobjs $deplibs $compiler_flags'
6035      fi
6036      ;;
6037
6038    sysv5* | sco3.2v5* | sco5v6*)
6039      # Note: We CANNOT use -z defs as we might desire, because we do not
6040      # link with -lc, and that would cause any symbols used from libc to
6041      # always be unresolved, which means just about no library would
6042      # ever link correctly.  If we're not using GNU ld we use -z text
6043      # though, which does catch some bad symbols but isn't as heavy-handed
6044      # as -z defs.
6045      _LT_TAGVAR(no_undefined_flag, $1)='$wl-z,text'
6046      _LT_TAGVAR(allow_undefined_flag, $1)='$wl-z,nodefs'
6047      _LT_TAGVAR(archive_cmds_need_lc, $1)=no
6048      _LT_TAGVAR(hardcode_shlibpath_var, $1)=no
6049      _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='$wl-R,$libdir'
6050      _LT_TAGVAR(hardcode_libdir_separator, $1)=':'
6051      _LT_TAGVAR(link_all_deplibs, $1)=yes
6052      _LT_TAGVAR(export_dynamic_flag_spec, $1)='$wl-Bexport'
6053      runpath_var='LD_RUN_PATH'
6054
6055      if test yes = "$GCC"; then
6056	_LT_TAGVAR(archive_cmds, $1)='$CC -shared $wl-h,$soname -o $lib $libobjs $deplibs $compiler_flags'
6057	_LT_TAGVAR(archive_expsym_cmds, $1)='$CC -shared $wl-Bexport:$export_symbols $wl-h,$soname -o $lib $libobjs $deplibs $compiler_flags'
6058      else
6059	_LT_TAGVAR(archive_cmds, $1)='$CC -G $wl-h,$soname -o $lib $libobjs $deplibs $compiler_flags'
6060	_LT_TAGVAR(archive_expsym_cmds, $1)='$CC -G $wl-Bexport:$export_symbols $wl-h,$soname -o $lib $libobjs $deplibs $compiler_flags'
6061      fi
6062      ;;
6063
6064    uts4*)
6065      _LT_TAGVAR(archive_cmds, $1)='$LD -G -h $soname -o $lib $libobjs $deplibs $linker_flags'
6066      _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-L$libdir'
6067      _LT_TAGVAR(hardcode_shlibpath_var, $1)=no
6068      ;;
6069
6070    *)
6071      _LT_TAGVAR(ld_shlibs, $1)=no
6072      ;;
6073    esac
6074
6075    if test sni = "$host_vendor"; then
6076      case $host in
6077      sysv4 | sysv4.2uw2* | sysv4.3* | sysv5*)
6078	_LT_TAGVAR(export_dynamic_flag_spec, $1)='$wl-Blargedynsym'
6079	;;
6080      esac
6081    fi
6082  fi
6083])
6084AC_MSG_RESULT([$_LT_TAGVAR(ld_shlibs, $1)])
6085test no = "$_LT_TAGVAR(ld_shlibs, $1)" && can_build_shared=no
6086
6087_LT_TAGVAR(with_gnu_ld, $1)=$with_gnu_ld
6088
6089_LT_DECL([], [libext], [0], [Old archive suffix (normally "a")])dnl
6090_LT_DECL([], [shrext_cmds], [1], [Shared library suffix (normally ".so")])dnl
6091_LT_DECL([], [extract_expsyms_cmds], [2],
6092    [The commands to extract the exported symbol list from a shared archive])
6093
6094#
6095# Do we need to explicitly link libc?
6096#
6097case "x$_LT_TAGVAR(archive_cmds_need_lc, $1)" in
6098x|xyes)
6099  # Assume -lc should be added
6100  _LT_TAGVAR(archive_cmds_need_lc, $1)=yes
6101
6102  if test yes,yes = "$GCC,$enable_shared"; then
6103    case $_LT_TAGVAR(archive_cmds, $1) in
6104    *'~'*)
6105      # FIXME: we may have to deal with multi-command sequences.
6106      ;;
6107    '$CC '*)
6108      # Test whether the compiler implicitly links with -lc since on some
6109      # systems, -lgcc has to come before -lc. If gcc already passes -lc
6110      # to ld, don't add -lc before -lgcc.
6111      AC_CACHE_CHECK([whether -lc should be explicitly linked in],
6112	[lt_cv_]_LT_TAGVAR(archive_cmds_need_lc, $1),
6113	[$RM conftest*
6114	echo "$lt_simple_compile_test_code" > conftest.$ac_ext
6115
6116	if AC_TRY_EVAL(ac_compile) 2>conftest.err; then
6117	  soname=conftest
6118	  lib=conftest
6119	  libobjs=conftest.$ac_objext
6120	  deplibs=
6121	  wl=$_LT_TAGVAR(lt_prog_compiler_wl, $1)
6122	  pic_flag=$_LT_TAGVAR(lt_prog_compiler_pic, $1)
6123	  compiler_flags=-v
6124	  linker_flags=-v
6125	  verstring=
6126	  output_objdir=.
6127	  libname=conftest
6128	  lt_save_allow_undefined_flag=$_LT_TAGVAR(allow_undefined_flag, $1)
6129	  _LT_TAGVAR(allow_undefined_flag, $1)=
6130	  if AC_TRY_EVAL(_LT_TAGVAR(archive_cmds, $1) 2\>\&1 \| $GREP \" -lc \" \>/dev/null 2\>\&1)
6131	  then
6132	    lt_cv_[]_LT_TAGVAR(archive_cmds_need_lc, $1)=no
6133	  else
6134	    lt_cv_[]_LT_TAGVAR(archive_cmds_need_lc, $1)=yes
6135	  fi
6136	  _LT_TAGVAR(allow_undefined_flag, $1)=$lt_save_allow_undefined_flag
6137	else
6138	  cat conftest.err 1>&5
6139	fi
6140	$RM conftest*
6141	])
6142      _LT_TAGVAR(archive_cmds_need_lc, $1)=$lt_cv_[]_LT_TAGVAR(archive_cmds_need_lc, $1)
6143      ;;
6144    esac
6145  fi
6146  ;;
6147esac
6148
6149_LT_TAGDECL([build_libtool_need_lc], [archive_cmds_need_lc], [0],
6150    [Whether or not to add -lc for building shared libraries])
6151_LT_TAGDECL([allow_libtool_libs_with_static_runtimes],
6152    [enable_shared_with_static_runtimes], [0],
6153    [Whether or not to disallow shared libs when runtime libs are static])
6154_LT_TAGDECL([], [export_dynamic_flag_spec], [1],
6155    [Compiler flag to allow reflexive dlopens])
6156_LT_TAGDECL([], [whole_archive_flag_spec], [1],
6157    [Compiler flag to generate shared objects directly from archives])
6158_LT_TAGDECL([], [compiler_needs_object], [1],
6159    [Whether the compiler copes with passing no objects directly])
6160_LT_TAGDECL([], [old_archive_from_new_cmds], [2],
6161    [Create an old-style archive from a shared archive])
6162_LT_TAGDECL([], [old_archive_from_expsyms_cmds], [2],
6163    [Create a temporary old-style archive to link instead of a shared archive])
6164_LT_TAGDECL([], [archive_cmds], [2], [Commands used to build a shared archive])
6165_LT_TAGDECL([], [archive_expsym_cmds], [2])
6166_LT_TAGDECL([], [module_cmds], [2],
6167    [Commands used to build a loadable module if different from building
6168    a shared archive.])
6169_LT_TAGDECL([], [module_expsym_cmds], [2])
6170_LT_TAGDECL([], [with_gnu_ld], [1],
6171    [Whether we are building with GNU ld or not])
6172_LT_TAGDECL([], [allow_undefined_flag], [1],
6173    [Flag that allows shared libraries with undefined symbols to be built])
6174_LT_TAGDECL([], [no_undefined_flag], [1],
6175    [Flag that enforces no undefined symbols])
6176_LT_TAGDECL([], [hardcode_libdir_flag_spec], [1],
6177    [Flag to hardcode $libdir into a binary during linking.
6178    This must work even if $libdir does not exist])
6179_LT_TAGDECL([], [hardcode_libdir_separator], [1],
6180    [Whether we need a single "-rpath" flag with a separated argument])
6181_LT_TAGDECL([], [hardcode_direct], [0],
6182    [Set to "yes" if using DIR/libNAME$shared_ext during linking hardcodes
6183    DIR into the resulting binary])
6184_LT_TAGDECL([], [hardcode_direct_absolute], [0],
6185    [Set to "yes" if using DIR/libNAME$shared_ext during linking hardcodes
6186    DIR into the resulting binary and the resulting library dependency is
6187    "absolute", i.e impossible to change by setting $shlibpath_var if the
6188    library is relocated])
6189_LT_TAGDECL([], [hardcode_minus_L], [0],
6190    [Set to "yes" if using the -LDIR flag during linking hardcodes DIR
6191    into the resulting binary])
6192_LT_TAGDECL([], [hardcode_shlibpath_var], [0],
6193    [Set to "yes" if using SHLIBPATH_VAR=DIR during linking hardcodes DIR
6194    into the resulting binary])
6195_LT_TAGDECL([], [hardcode_automatic], [0],
6196    [Set to "yes" if building a shared library automatically hardcodes DIR
6197    into the library and all subsequent libraries and executables linked
6198    against it])
6199_LT_TAGDECL([], [inherit_rpath], [0],
6200    [Set to yes if linker adds runtime paths of dependent libraries
6201    to runtime path list])
6202_LT_TAGDECL([], [link_all_deplibs], [0],
6203    [Whether libtool must link a program against all its dependency libraries])
6204_LT_TAGDECL([], [always_export_symbols], [0],
6205    [Set to "yes" if exported symbols are required])
6206_LT_TAGDECL([], [export_symbols_cmds], [2],
6207    [The commands to list exported symbols])
6208_LT_TAGDECL([], [exclude_expsyms], [1],
6209    [Symbols that should not be listed in the preloaded symbols])
6210_LT_TAGDECL([], [include_expsyms], [1],
6211    [Symbols that must always be exported])
6212_LT_TAGDECL([], [prelink_cmds], [2],
6213    [Commands necessary for linking programs (against libraries) with templates])
6214_LT_TAGDECL([], [postlink_cmds], [2],
6215    [Commands necessary for finishing linking programs])
6216_LT_TAGDECL([], [file_list_spec], [1],
6217    [Specify filename containing input files])
6218dnl FIXME: Not yet implemented
6219dnl _LT_TAGDECL([], [thread_safe_flag_spec], [1],
6220dnl    [Compiler flag to generate thread safe objects])
6221])# _LT_LINKER_SHLIBS
6222
6223
6224# _LT_LANG_C_CONFIG([TAG])
6225# ------------------------
6226# Ensure that the configuration variables for a C compiler are suitably
6227# defined.  These variables are subsequently used by _LT_CONFIG to write
6228# the compiler configuration to 'libtool'.
6229m4_defun([_LT_LANG_C_CONFIG],
6230[m4_require([_LT_DECL_EGREP])dnl
6231lt_save_CC=$CC
6232AC_LANG_PUSH(C)
6233
6234# Source file extension for C test sources.
6235ac_ext=c
6236
6237# Object file extension for compiled C test sources.
6238objext=o
6239_LT_TAGVAR(objext, $1)=$objext
6240
6241# Code to be used in simple compile tests
6242lt_simple_compile_test_code="int some_variable = 0;"
6243
6244# Code to be used in simple link tests
6245lt_simple_link_test_code='int main(){return(0);}'
6246
6247_LT_TAG_COMPILER
6248# Save the default compiler, since it gets overwritten when the other
6249# tags are being tested, and _LT_TAGVAR(compiler, []) is a NOP.
6250compiler_DEFAULT=$CC
6251
6252# save warnings/boilerplate of simple test code
6253_LT_COMPILER_BOILERPLATE
6254_LT_LINKER_BOILERPLATE
6255
6256if test -n "$compiler"; then
6257  _LT_COMPILER_NO_RTTI($1)
6258  _LT_COMPILER_PIC($1)
6259  _LT_COMPILER_C_O($1)
6260  _LT_COMPILER_FILE_LOCKS($1)
6261  _LT_LINKER_SHLIBS($1)
6262  _LT_SYS_DYNAMIC_LINKER($1)
6263  _LT_LINKER_HARDCODE_LIBPATH($1)
6264  LT_SYS_DLOPEN_SELF
6265  _LT_CMD_STRIPLIB
6266
6267  # Report what library types will actually be built
6268  AC_MSG_CHECKING([if libtool supports shared libraries])
6269  AC_MSG_RESULT([$can_build_shared])
6270
6271  AC_MSG_CHECKING([whether to build shared libraries])
6272  test no = "$can_build_shared" && enable_shared=no
6273
6274  # On AIX, shared libraries and static libraries use the same namespace, and
6275  # are all built from PIC.
6276  case $host_os in
6277  aix3*)
6278    test yes = "$enable_shared" && enable_static=no
6279    if test -n "$RANLIB"; then
6280      archive_cmds="$archive_cmds~\$RANLIB \$lib"
6281      postinstall_cmds='$RANLIB $lib'
6282    fi
6283    ;;
6284
6285  aix[[4-9]]*)
6286    if test ia64 != "$host_cpu"; then
6287      case $enable_shared,$with_aix_soname,$aix_use_runtimelinking in
6288      yes,aix,yes) ;;			# shared object as lib.so file only
6289      yes,svr4,*) ;;			# shared object as lib.so archive member only
6290      yes,*) enable_static=no ;;	# shared object in lib.a archive as well
6291      esac
6292    fi
6293    ;;
6294  esac
6295  AC_MSG_RESULT([$enable_shared])
6296
6297  AC_MSG_CHECKING([whether to build static libraries])
6298  # Make sure either enable_shared or enable_static is yes.
6299  test yes = "$enable_shared" || enable_static=yes
6300  AC_MSG_RESULT([$enable_static])
6301
6302  _LT_CONFIG($1)
6303fi
6304AC_LANG_POP
6305CC=$lt_save_CC
6306])# _LT_LANG_C_CONFIG
6307
6308
6309# _LT_LANG_CXX_CONFIG([TAG])
6310# --------------------------
6311# Ensure that the configuration variables for a C++ compiler are suitably
6312# defined.  These variables are subsequently used by _LT_CONFIG to write
6313# the compiler configuration to 'libtool'.
6314m4_defun([_LT_LANG_CXX_CONFIG],
6315[m4_require([_LT_FILEUTILS_DEFAULTS])dnl
6316m4_require([_LT_DECL_EGREP])dnl
6317m4_require([_LT_PATH_MANIFEST_TOOL])dnl
6318if test -n "$CXX" && ( test no != "$CXX" &&
6319    ( (test g++ = "$CXX" && `g++ -v >/dev/null 2>&1` ) ||
6320    (test g++ != "$CXX"))); then
6321  AC_PROG_CXXCPP
6322else
6323  _lt_caught_CXX_error=yes
6324fi
6325
6326AC_LANG_PUSH(C++)
6327_LT_TAGVAR(archive_cmds_need_lc, $1)=no
6328_LT_TAGVAR(allow_undefined_flag, $1)=
6329_LT_TAGVAR(always_export_symbols, $1)=no
6330_LT_TAGVAR(archive_expsym_cmds, $1)=
6331_LT_TAGVAR(compiler_needs_object, $1)=no
6332_LT_TAGVAR(export_dynamic_flag_spec, $1)=
6333_LT_TAGVAR(hardcode_direct, $1)=no
6334_LT_TAGVAR(hardcode_direct_absolute, $1)=no
6335_LT_TAGVAR(hardcode_libdir_flag_spec, $1)=
6336_LT_TAGVAR(hardcode_libdir_separator, $1)=
6337_LT_TAGVAR(hardcode_minus_L, $1)=no
6338_LT_TAGVAR(hardcode_shlibpath_var, $1)=unsupported
6339_LT_TAGVAR(hardcode_automatic, $1)=no
6340_LT_TAGVAR(inherit_rpath, $1)=no
6341_LT_TAGVAR(module_cmds, $1)=
6342_LT_TAGVAR(module_expsym_cmds, $1)=
6343_LT_TAGVAR(link_all_deplibs, $1)=unknown
6344_LT_TAGVAR(old_archive_cmds, $1)=$old_archive_cmds
6345_LT_TAGVAR(reload_flag, $1)=$reload_flag
6346_LT_TAGVAR(reload_cmds, $1)=$reload_cmds
6347_LT_TAGVAR(no_undefined_flag, $1)=
6348_LT_TAGVAR(whole_archive_flag_spec, $1)=
6349_LT_TAGVAR(enable_shared_with_static_runtimes, $1)=no
6350
6351# Source file extension for C++ test sources.
6352ac_ext=cpp
6353
6354# Object file extension for compiled C++ test sources.
6355objext=o
6356_LT_TAGVAR(objext, $1)=$objext
6357
6358# No sense in running all these tests if we already determined that
6359# the CXX compiler isn't working.  Some variables (like enable_shared)
6360# are currently assumed to apply to all compilers on this platform,
6361# and will be corrupted by setting them based on a non-working compiler.
6362if test yes != "$_lt_caught_CXX_error"; then
6363  # Code to be used in simple compile tests
6364  lt_simple_compile_test_code="int some_variable = 0;"
6365
6366  # Code to be used in simple link tests
6367  lt_simple_link_test_code='int main(int, char *[[]]) { return(0); }'
6368
6369  # ltmain only uses $CC for tagged configurations so make sure $CC is set.
6370  _LT_TAG_COMPILER
6371
6372  # save warnings/boilerplate of simple test code
6373  _LT_COMPILER_BOILERPLATE
6374  _LT_LINKER_BOILERPLATE
6375
6376  # Allow CC to be a program name with arguments.
6377  lt_save_CC=$CC
6378  lt_save_CFLAGS=$CFLAGS
6379  lt_save_LD=$LD
6380  lt_save_GCC=$GCC
6381  GCC=$GXX
6382  lt_save_with_gnu_ld=$with_gnu_ld
6383  lt_save_path_LD=$lt_cv_path_LD
6384  if test -n "${lt_cv_prog_gnu_ldcxx+set}"; then
6385    lt_cv_prog_gnu_ld=$lt_cv_prog_gnu_ldcxx
6386  else
6387    $as_unset lt_cv_prog_gnu_ld
6388  fi
6389  if test -n "${lt_cv_path_LDCXX+set}"; then
6390    lt_cv_path_LD=$lt_cv_path_LDCXX
6391  else
6392    $as_unset lt_cv_path_LD
6393  fi
6394  test -z "${LDCXX+set}" || LD=$LDCXX
6395  CC=${CXX-"c++"}
6396  CFLAGS=$CXXFLAGS
6397  compiler=$CC
6398  _LT_TAGVAR(compiler, $1)=$CC
6399  _LT_CC_BASENAME([$compiler])
6400
6401  if test -n "$compiler"; then
6402    # We don't want -fno-exception when compiling C++ code, so set the
6403    # no_builtin_flag separately
6404    if test yes = "$GXX"; then
6405      _LT_TAGVAR(lt_prog_compiler_no_builtin_flag, $1)=' -fno-builtin'
6406    else
6407      _LT_TAGVAR(lt_prog_compiler_no_builtin_flag, $1)=
6408    fi
6409
6410    if test yes = "$GXX"; then
6411      # Set up default GNU C++ configuration
6412
6413      LT_PATH_LD
6414
6415      # Check if GNU C++ uses GNU ld as the underlying linker, since the
6416      # archiving commands below assume that GNU ld is being used.
6417      if test yes = "$with_gnu_ld"; then
6418        _LT_TAGVAR(archive_cmds, $1)='$CC $pic_flag -shared -nostdlib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags $wl-soname $wl$soname -o $lib'
6419        _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'
6420
6421        _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='$wl-rpath $wl$libdir'
6422        _LT_TAGVAR(export_dynamic_flag_spec, $1)='$wl--export-dynamic'
6423
6424        # If archive_cmds runs LD, not CC, wlarc should be empty
6425        # XXX I think wlarc can be eliminated in ltcf-cxx, but I need to
6426        #     investigate it a little bit more. (MM)
6427        wlarc='$wl'
6428
6429        # ancient GNU ld didn't support --whole-archive et. al.
6430        if eval "`$CC -print-prog-name=ld` --help 2>&1" |
6431	  $GREP 'no-whole-archive' > /dev/null; then
6432          _LT_TAGVAR(whole_archive_flag_spec, $1)=$wlarc'--whole-archive$convenience '$wlarc'--no-whole-archive'
6433        else
6434          _LT_TAGVAR(whole_archive_flag_spec, $1)=
6435        fi
6436      else
6437        with_gnu_ld=no
6438        wlarc=
6439
6440        # A generic and very simple default shared library creation
6441        # command for GNU C++ for the case where it uses the native
6442        # linker, instead of GNU ld.  If possible, this setting should
6443        # overridden to take advantage of the native linker features on
6444        # the platform it is being used on.
6445        _LT_TAGVAR(archive_cmds, $1)='$CC -shared -nostdlib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags -o $lib'
6446      fi
6447
6448      # Commands to make compiler produce verbose output that lists
6449      # what "hidden" libraries, object files and flags are used when
6450      # linking a shared library.
6451      output_verbose_link_cmd='$CC -shared $CFLAGS -v conftest.$objext 2>&1 | $GREP -v "^Configured with:" | $GREP "\-L"'
6452
6453    else
6454      GXX=no
6455      with_gnu_ld=no
6456      wlarc=
6457    fi
6458
6459    # PORTME: fill in a description of your system's C++ link characteristics
6460    AC_MSG_CHECKING([whether the $compiler linker ($LD) supports shared libraries])
6461    _LT_TAGVAR(ld_shlibs, $1)=yes
6462    case $host_os in
6463      aix3*)
6464        # FIXME: insert proper C++ library support
6465        _LT_TAGVAR(ld_shlibs, $1)=no
6466        ;;
6467      aix[[4-9]]*)
6468        if test ia64 = "$host_cpu"; then
6469          # On IA64, the linker does run time linking by default, so we don't
6470          # have to do anything special.
6471          aix_use_runtimelinking=no
6472          exp_sym_flag='-Bexport'
6473          no_entry_flag=
6474        else
6475          aix_use_runtimelinking=no
6476
6477          # Test if we are trying to use run time linking or normal
6478          # AIX style linking. If -brtl is somewhere in LDFLAGS, we
6479          # have runtime linking enabled, and use it for executables.
6480          # For shared libraries, we enable/disable runtime linking
6481          # depending on the kind of the shared library created -
6482          # when "with_aix_soname,aix_use_runtimelinking" is:
6483          # "aix,no"   lib.a(lib.so.V) shared, rtl:no,  for executables
6484          # "aix,yes"  lib.so          shared, rtl:yes, for executables
6485          #            lib.a           static archive
6486          # "both,no"  lib.so.V(shr.o) shared, rtl:yes
6487          #            lib.a(lib.so.V) shared, rtl:no,  for executables
6488          # "both,yes" lib.so.V(shr.o) shared, rtl:yes, for executables
6489          #            lib.a(lib.so.V) shared, rtl:no
6490          # "svr4,*"   lib.so.V(shr.o) shared, rtl:yes, for executables
6491          #            lib.a           static archive
6492          case $host_os in aix4.[[23]]|aix4.[[23]].*|aix[[5-9]]*)
6493	    for ld_flag in $LDFLAGS; do
6494	      case $ld_flag in
6495	      *-brtl*)
6496	        aix_use_runtimelinking=yes
6497	        break
6498	        ;;
6499	      esac
6500	    done
6501	    if test svr4,no = "$with_aix_soname,$aix_use_runtimelinking"; then
6502	      # With aix-soname=svr4, we create the lib.so.V shared archives only,
6503	      # so we don't have lib.a shared libs to link our executables.
6504	      # We have to force runtime linking in this case.
6505	      aix_use_runtimelinking=yes
6506	      LDFLAGS="$LDFLAGS -Wl,-brtl"
6507	    fi
6508	    ;;
6509          esac
6510
6511          exp_sym_flag='-bexport'
6512          no_entry_flag='-bnoentry'
6513        fi
6514
6515        # When large executables or shared objects are built, AIX ld can
6516        # have problems creating the table of contents.  If linking a library
6517        # or program results in "error TOC overflow" add -mminimal-toc to
6518        # CXXFLAGS/CFLAGS for g++/gcc.  In the cases where that is not
6519        # enough to fix the problem, add -Wl,-bbigtoc to LDFLAGS.
6520
6521        _LT_TAGVAR(archive_cmds, $1)=''
6522        _LT_TAGVAR(hardcode_direct, $1)=yes
6523        _LT_TAGVAR(hardcode_direct_absolute, $1)=yes
6524        _LT_TAGVAR(hardcode_libdir_separator, $1)=':'
6525        _LT_TAGVAR(link_all_deplibs, $1)=yes
6526        _LT_TAGVAR(file_list_spec, $1)='$wl-f,'
6527        case $with_aix_soname,$aix_use_runtimelinking in
6528        aix,*) ;;	# no import file
6529        svr4,* | *,yes) # use import file
6530          # The Import File defines what to hardcode.
6531          _LT_TAGVAR(hardcode_direct, $1)=no
6532          _LT_TAGVAR(hardcode_direct_absolute, $1)=no
6533          ;;
6534        esac
6535
6536        if test yes = "$GXX"; then
6537          case $host_os in aix4.[[012]]|aix4.[[012]].*)
6538          # We only want to do this on AIX 4.2 and lower, the check
6539          # below for broken collect2 doesn't work under 4.3+
6540	  collect2name=`$CC -print-prog-name=collect2`
6541	  if test -f "$collect2name" &&
6542	     strings "$collect2name" | $GREP resolve_lib_name >/dev/null
6543	  then
6544	    # We have reworked collect2
6545	    :
6546	  else
6547	    # We have old collect2
6548	    _LT_TAGVAR(hardcode_direct, $1)=unsupported
6549	    # It fails to find uninstalled libraries when the uninstalled
6550	    # path is not listed in the libpath.  Setting hardcode_minus_L
6551	    # to unsupported forces relinking
6552	    _LT_TAGVAR(hardcode_minus_L, $1)=yes
6553	    _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-L$libdir'
6554	    _LT_TAGVAR(hardcode_libdir_separator, $1)=
6555	  fi
6556          esac
6557          shared_flag='-shared'
6558	  if test yes = "$aix_use_runtimelinking"; then
6559	    shared_flag=$shared_flag' $wl-G'
6560	  fi
6561	  # Need to ensure runtime linking is disabled for the traditional
6562	  # shared library, or the linker may eventually find shared libraries
6563	  # /with/ Import File - we do not want to mix them.
6564	  shared_flag_aix='-shared'
6565	  shared_flag_svr4='-shared $wl-G'
6566        else
6567          # not using gcc
6568          if test ia64 = "$host_cpu"; then
6569	  # VisualAge C++, Version 5.5 for AIX 5L for IA-64, Beta 3 Release
6570	  # chokes on -Wl,-G. The following line is correct:
6571	  shared_flag='-G'
6572          else
6573	    if test yes = "$aix_use_runtimelinking"; then
6574	      shared_flag='$wl-G'
6575	    else
6576	      shared_flag='$wl-bM:SRE'
6577	    fi
6578	    shared_flag_aix='$wl-bM:SRE'
6579	    shared_flag_svr4='$wl-G'
6580          fi
6581        fi
6582
6583        _LT_TAGVAR(export_dynamic_flag_spec, $1)='$wl-bexpall'
6584        # It seems that -bexpall does not export symbols beginning with
6585        # underscore (_), so it is better to generate a list of symbols to
6586	# export.
6587        _LT_TAGVAR(always_export_symbols, $1)=yes
6588	if test aix,yes = "$with_aix_soname,$aix_use_runtimelinking"; then
6589          # Warning - without using the other runtime loading flags (-brtl),
6590          # -berok will link without error, but may produce a broken library.
6591          # The "-G" linker flag allows undefined symbols.
6592          _LT_TAGVAR(no_undefined_flag, $1)='-bernotok'
6593          # Determine the default libpath from the value encoded in an empty
6594          # executable.
6595          _LT_SYS_MODULE_PATH_AIX([$1])
6596          _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='$wl-blibpath:$libdir:'"$aix_libpath"
6597
6598          _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
6599        else
6600          if test ia64 = "$host_cpu"; then
6601	    _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='$wl-R $libdir:/usr/lib:/lib'
6602	    _LT_TAGVAR(allow_undefined_flag, $1)="-z nodefs"
6603	    _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"
6604          else
6605	    # Determine the default libpath from the value encoded in an
6606	    # empty executable.
6607	    _LT_SYS_MODULE_PATH_AIX([$1])
6608	    _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='$wl-blibpath:$libdir:'"$aix_libpath"
6609	    # Warning - without using the other run time loading flags,
6610	    # -berok will link without error, but may produce a broken library.
6611	    _LT_TAGVAR(no_undefined_flag, $1)=' $wl-bernotok'
6612	    _LT_TAGVAR(allow_undefined_flag, $1)=' $wl-berok'
6613	    if test yes = "$with_gnu_ld"; then
6614	      # We only use this code for GNU lds that support --whole-archive.
6615	      _LT_TAGVAR(whole_archive_flag_spec, $1)='$wl--whole-archive$convenience $wl--no-whole-archive'
6616	    else
6617	      # Exported symbols can be pulled into shared objects from archives
6618	      _LT_TAGVAR(whole_archive_flag_spec, $1)='$convenience'
6619	    fi
6620	    _LT_TAGVAR(archive_cmds_need_lc, $1)=yes
6621	    _LT_TAGVAR(archive_expsym_cmds, $1)='$RM -r $output_objdir/$realname.d~$MKDIR $output_objdir/$realname.d'
6622	    # -brtl affects multiple linker settings, -berok does not and is overridden later
6623	    compiler_flags_filtered='`func_echo_all "$compiler_flags " | $SED -e "s%-brtl\\([[, ]]\\)%-berok\\1%g"`'
6624	    if test svr4 != "$with_aix_soname"; then
6625	      # This is similar to how AIX traditionally builds its shared
6626	      # libraries. Need -bnortl late, we may have -brtl in LDFLAGS.
6627	      _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'
6628	    fi
6629	    if test aix != "$with_aix_soname"; then
6630	      _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'
6631	    else
6632	      # used by -dlpreopen to get the symbols
6633	      _LT_TAGVAR(archive_expsym_cmds, $1)="$_LT_TAGVAR(archive_expsym_cmds, $1)"'~$MV  $output_objdir/$realname.d/$soname $output_objdir'
6634	    fi
6635	    _LT_TAGVAR(archive_expsym_cmds, $1)="$_LT_TAGVAR(archive_expsym_cmds, $1)"'~$RM -r $output_objdir/$realname.d'
6636          fi
6637        fi
6638        ;;
6639
6640      beos*)
6641	if $LD --help 2>&1 | $GREP ': supported targets:.* elf' > /dev/null; then
6642	  _LT_TAGVAR(allow_undefined_flag, $1)=unsupported
6643	  # Joseph Beckenbach <jrb3@best.com> says some releases of gcc
6644	  # support --undefined.  This deserves some investigation.  FIXME
6645	  _LT_TAGVAR(archive_cmds, $1)='$CC -nostart $libobjs $deplibs $compiler_flags $wl-soname $wl$soname -o $lib'
6646	else
6647	  _LT_TAGVAR(ld_shlibs, $1)=no
6648	fi
6649	;;
6650
6651      chorus*)
6652        case $cc_basename in
6653          *)
6654	  # FIXME: insert proper C++ library support
6655	  _LT_TAGVAR(ld_shlibs, $1)=no
6656	  ;;
6657        esac
6658        ;;
6659
6660      cygwin* | mingw* | pw32* | cegcc*)
6661	case $GXX,$cc_basename in
6662	,cl* | no,cl*)
6663	  # Native MSVC
6664	  # hardcode_libdir_flag_spec is actually meaningless, as there is
6665	  # no search path for DLLs.
6666	  _LT_TAGVAR(hardcode_libdir_flag_spec, $1)=' '
6667	  _LT_TAGVAR(allow_undefined_flag, $1)=unsupported
6668	  _LT_TAGVAR(always_export_symbols, $1)=yes
6669	  _LT_TAGVAR(file_list_spec, $1)='@'
6670	  # Tell ltmain to make .lib files, not .a files.
6671	  libext=lib
6672	  # Tell ltmain to make .dll files, not .so files.
6673	  shrext_cmds=.dll
6674	  # FIXME: Setting linknames here is a bad hack.
6675	  _LT_TAGVAR(archive_cmds, $1)='$CC -o $output_objdir/$soname $libobjs $compiler_flags $deplibs -Wl,-DLL,-IMPLIB:"$tool_output_objdir$libname.dll.lib"~linknames='
6676	  _LT_TAGVAR(archive_expsym_cmds, $1)='if _LT_DLL_DEF_P([$export_symbols]); then
6677              cp "$export_symbols" "$output_objdir/$soname.def";
6678              echo "$tool_output_objdir$soname.def" > "$output_objdir/$soname.exp";
6679            else
6680              $SED -e '\''s/^/-link -EXPORT:/'\'' < $export_symbols > $output_objdir/$soname.exp;
6681            fi~
6682            $CC -o $tool_output_objdir$soname $libobjs $compiler_flags $deplibs "@$tool_output_objdir$soname.exp" -Wl,-DLL,-IMPLIB:"$tool_output_objdir$libname.dll.lib"~
6683            linknames='
6684	  # The linker will not automatically build a static lib if we build a DLL.
6685	  # _LT_TAGVAR(old_archive_from_new_cmds, $1)='true'
6686	  _LT_TAGVAR(enable_shared_with_static_runtimes, $1)=yes
6687	  # Don't use ranlib
6688	  _LT_TAGVAR(old_postinstall_cmds, $1)='chmod 644 $oldlib'
6689	  _LT_TAGVAR(postlink_cmds, $1)='lt_outputfile="@OUTPUT@"~
6690            lt_tool_outputfile="@TOOL_OUTPUT@"~
6691            case $lt_outputfile in
6692              *.exe|*.EXE) ;;
6693              *)
6694                lt_outputfile=$lt_outputfile.exe
6695                lt_tool_outputfile=$lt_tool_outputfile.exe
6696                ;;
6697            esac~
6698            func_to_tool_file "$lt_outputfile"~
6699            if test : != "$MANIFEST_TOOL" && test -f "$lt_outputfile.manifest"; then
6700              $MANIFEST_TOOL -manifest "$lt_tool_outputfile.manifest" -outputresource:"$lt_tool_outputfile" || exit 1;
6701              $RM "$lt_outputfile.manifest";
6702            fi'
6703	  ;;
6704	*)
6705	  # g++
6706	  # _LT_TAGVAR(hardcode_libdir_flag_spec, $1) is actually meaningless,
6707	  # as there is no search path for DLLs.
6708	  _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-L$libdir'
6709	  _LT_TAGVAR(export_dynamic_flag_spec, $1)='$wl--export-all-symbols'
6710	  _LT_TAGVAR(allow_undefined_flag, $1)=unsupported
6711	  _LT_TAGVAR(always_export_symbols, $1)=no
6712	  _LT_TAGVAR(enable_shared_with_static_runtimes, $1)=yes
6713
6714	  if $LD --help 2>&1 | $GREP 'auto-import' > /dev/null; then
6715	    _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'
6716	    # If the export-symbols file already is a .def file, use it as
6717	    # is; otherwise, prepend EXPORTS...
6718	    _LT_TAGVAR(archive_expsym_cmds, $1)='if _LT_DLL_DEF_P([$export_symbols]); then
6719              cp $export_symbols $output_objdir/$soname.def;
6720            else
6721              echo EXPORTS > $output_objdir/$soname.def;
6722              cat $export_symbols >> $output_objdir/$soname.def;
6723            fi~
6724            $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'
6725	  else
6726	    _LT_TAGVAR(ld_shlibs, $1)=no
6727	  fi
6728	  ;;
6729	esac
6730	;;
6731      darwin* | rhapsody*)
6732        _LT_DARWIN_LINKER_FEATURES($1)
6733	;;
6734
6735      os2*)
6736	_LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-L$libdir'
6737	_LT_TAGVAR(hardcode_minus_L, $1)=yes
6738	_LT_TAGVAR(allow_undefined_flag, $1)=unsupported
6739	shrext_cmds=.dll
6740	_LT_TAGVAR(archive_cmds, $1)='$ECHO "LIBRARY ${soname%$shared_ext} INITINSTANCE TERMINSTANCE" > $output_objdir/$libname.def~
6741	  $ECHO "DESCRIPTION \"$libname\"" >> $output_objdir/$libname.def~
6742	  $ECHO "DATA MULTIPLE NONSHARED" >> $output_objdir/$libname.def~
6743	  $ECHO EXPORTS >> $output_objdir/$libname.def~
6744	  emxexp $libobjs | $SED /"_DLL_InitTerm"/d >> $output_objdir/$libname.def~
6745	  $CC -Zdll -Zcrtdll -o $output_objdir/$soname $libobjs $deplibs $compiler_flags $output_objdir/$libname.def~
6746	  emximp -o $lib $output_objdir/$libname.def'
6747	_LT_TAGVAR(archive_expsym_cmds, $1)='$ECHO "LIBRARY ${soname%$shared_ext} INITINSTANCE TERMINSTANCE" > $output_objdir/$libname.def~
6748	  $ECHO "DESCRIPTION \"$libname\"" >> $output_objdir/$libname.def~
6749	  $ECHO "DATA MULTIPLE NONSHARED" >> $output_objdir/$libname.def~
6750	  $ECHO EXPORTS >> $output_objdir/$libname.def~
6751	  prefix_cmds="$SED"~
6752	  if test EXPORTS = "`$SED 1q $export_symbols`"; then
6753	    prefix_cmds="$prefix_cmds -e 1d";
6754	  fi~
6755	  prefix_cmds="$prefix_cmds -e \"s/^\(.*\)$/_\1/g\""~
6756	  cat $export_symbols | $prefix_cmds >> $output_objdir/$libname.def~
6757	  $CC -Zdll -Zcrtdll -o $output_objdir/$soname $libobjs $deplibs $compiler_flags $output_objdir/$libname.def~
6758	  emximp -o $lib $output_objdir/$libname.def'
6759	_LT_TAGVAR(old_archive_From_new_cmds, $1)='emximp -o $output_objdir/${libname}_dll.a $output_objdir/$libname.def'
6760	_LT_TAGVAR(enable_shared_with_static_runtimes, $1)=yes
6761	;;
6762
6763      dgux*)
6764        case $cc_basename in
6765          ec++*)
6766	    # FIXME: insert proper C++ library support
6767	    _LT_TAGVAR(ld_shlibs, $1)=no
6768	    ;;
6769          ghcx*)
6770	    # Green Hills C++ Compiler
6771	    # FIXME: insert proper C++ library support
6772	    _LT_TAGVAR(ld_shlibs, $1)=no
6773	    ;;
6774          *)
6775	    # FIXME: insert proper C++ library support
6776	    _LT_TAGVAR(ld_shlibs, $1)=no
6777	    ;;
6778        esac
6779        ;;
6780
6781      freebsd2.*)
6782        # C++ shared libraries reported to be fairly broken before
6783	# switch to ELF
6784        _LT_TAGVAR(ld_shlibs, $1)=no
6785        ;;
6786
6787      freebsd-elf*)
6788        _LT_TAGVAR(archive_cmds_need_lc, $1)=no
6789        ;;
6790
6791      freebsd* | dragonfly*)
6792        # FreeBSD 3 and later use GNU C++ and GNU ld with standard ELF
6793        # conventions
6794        _LT_TAGVAR(ld_shlibs, $1)=yes
6795        ;;
6796
6797      haiku*)
6798        _LT_TAGVAR(archive_cmds, $1)='$CC -shared $libobjs $deplibs $compiler_flags $wl-soname $wl$soname -o $lib'
6799        _LT_TAGVAR(link_all_deplibs, $1)=yes
6800        ;;
6801
6802      hpux9*)
6803        _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='$wl+b $wl$libdir'
6804        _LT_TAGVAR(hardcode_libdir_separator, $1)=:
6805        _LT_TAGVAR(export_dynamic_flag_spec, $1)='$wl-E'
6806        _LT_TAGVAR(hardcode_direct, $1)=yes
6807        _LT_TAGVAR(hardcode_minus_L, $1)=yes # Not in the search PATH,
6808				             # but as the default
6809				             # location of the library.
6810
6811        case $cc_basename in
6812          CC*)
6813            # FIXME: insert proper C++ library support
6814            _LT_TAGVAR(ld_shlibs, $1)=no
6815            ;;
6816          aCC*)
6817            _LT_TAGVAR(archive_cmds, $1)='$RM $output_objdir/$soname~$CC -b $wl+b $wl$install_libdir -o $output_objdir/$soname $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags~test "x$output_objdir/$soname" = "x$lib" || mv $output_objdir/$soname $lib'
6818            # Commands to make compiler produce verbose output that lists
6819            # what "hidden" libraries, object files and flags are used when
6820            # linking a shared library.
6821            #
6822            # There doesn't appear to be a way to prevent this compiler from
6823            # explicitly linking system object files so we need to strip them
6824            # from the output so that they don't get included in the library
6825            # dependencies.
6826            output_verbose_link_cmd='templist=`($CC -b $CFLAGS -v conftest.$objext 2>&1) | $EGREP "\-L"`; list= ; for z in $templist; do case $z in conftest.$objext) list="$list $z";; *.$objext);; *) list="$list $z";;esac; done; func_echo_all "$list"'
6827            ;;
6828          *)
6829            if test yes = "$GXX"; then
6830              _LT_TAGVAR(archive_cmds, $1)='$RM $output_objdir/$soname~$CC -shared -nostdlib $pic_flag $wl+b $wl$install_libdir -o $output_objdir/$soname $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags~test "x$output_objdir/$soname" = "x$lib" || mv $output_objdir/$soname $lib'
6831            else
6832              # FIXME: insert proper C++ library support
6833              _LT_TAGVAR(ld_shlibs, $1)=no
6834            fi
6835            ;;
6836        esac
6837        ;;
6838
6839      hpux10*|hpux11*)
6840        if test no = "$with_gnu_ld"; then
6841	  _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='$wl+b $wl$libdir'
6842	  _LT_TAGVAR(hardcode_libdir_separator, $1)=:
6843
6844          case $host_cpu in
6845            hppa*64*|ia64*)
6846              ;;
6847            *)
6848	      _LT_TAGVAR(export_dynamic_flag_spec, $1)='$wl-E'
6849              ;;
6850          esac
6851        fi
6852        case $host_cpu in
6853          hppa*64*|ia64*)
6854            _LT_TAGVAR(hardcode_direct, $1)=no
6855            _LT_TAGVAR(hardcode_shlibpath_var, $1)=no
6856            ;;
6857          *)
6858            _LT_TAGVAR(hardcode_direct, $1)=yes
6859            _LT_TAGVAR(hardcode_direct_absolute, $1)=yes
6860            _LT_TAGVAR(hardcode_minus_L, $1)=yes # Not in the search PATH,
6861					         # but as the default
6862					         # location of the library.
6863            ;;
6864        esac
6865
6866        case $cc_basename in
6867          CC*)
6868	    # FIXME: insert proper C++ library support
6869	    _LT_TAGVAR(ld_shlibs, $1)=no
6870	    ;;
6871          aCC*)
6872	    case $host_cpu in
6873	      hppa*64*)
6874	        _LT_TAGVAR(archive_cmds, $1)='$CC -b $wl+h $wl$soname -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags'
6875	        ;;
6876	      ia64*)
6877	        _LT_TAGVAR(archive_cmds, $1)='$CC -b $wl+h $wl$soname $wl+nodefaultrpath -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags'
6878	        ;;
6879	      *)
6880	        _LT_TAGVAR(archive_cmds, $1)='$CC -b $wl+h $wl$soname $wl+b $wl$install_libdir -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags'
6881	        ;;
6882	    esac
6883	    # Commands to make compiler produce verbose output that lists
6884	    # what "hidden" libraries, object files and flags are used when
6885	    # linking a shared library.
6886	    #
6887	    # There doesn't appear to be a way to prevent this compiler from
6888	    # explicitly linking system object files so we need to strip them
6889	    # from the output so that they don't get included in the library
6890	    # dependencies.
6891	    output_verbose_link_cmd='templist=`($CC -b $CFLAGS -v conftest.$objext 2>&1) | $GREP "\-L"`; list= ; for z in $templist; do case $z in conftest.$objext) list="$list $z";; *.$objext);; *) list="$list $z";;esac; done; func_echo_all "$list"'
6892	    ;;
6893          *)
6894	    if test yes = "$GXX"; then
6895	      if test no = "$with_gnu_ld"; then
6896	        case $host_cpu in
6897	          hppa*64*)
6898	            _LT_TAGVAR(archive_cmds, $1)='$CC -shared -nostdlib -fPIC $wl+h $wl$soname -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags'
6899	            ;;
6900	          ia64*)
6901	            _LT_TAGVAR(archive_cmds, $1)='$CC -shared -nostdlib $pic_flag $wl+h $wl$soname $wl+nodefaultrpath -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags'
6902	            ;;
6903	          *)
6904	            _LT_TAGVAR(archive_cmds, $1)='$CC -shared -nostdlib $pic_flag $wl+h $wl$soname $wl+b $wl$install_libdir -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags'
6905	            ;;
6906	        esac
6907	      fi
6908	    else
6909	      # FIXME: insert proper C++ library support
6910	      _LT_TAGVAR(ld_shlibs, $1)=no
6911	    fi
6912	    ;;
6913        esac
6914        ;;
6915
6916      interix[[3-9]]*)
6917	_LT_TAGVAR(hardcode_direct, $1)=no
6918	_LT_TAGVAR(hardcode_shlibpath_var, $1)=no
6919	_LT_TAGVAR(hardcode_libdir_flag_spec, $1)='$wl-rpath,$libdir'
6920	_LT_TAGVAR(export_dynamic_flag_spec, $1)='$wl-E'
6921	# Hack: On Interix 3.x, we cannot compile PIC because of a broken gcc.
6922	# Instead, shared libraries are loaded at an image base (0x10000000 by
6923	# default) and relocated if they conflict, which is a slow very memory
6924	# consuming and fragmenting process.  To avoid this, we pick a random,
6925	# 256 KiB-aligned image base between 0x50000000 and 0x6FFC0000 at link
6926	# time.  Moving up from 0x10000000 also allows more sbrk(2) space.
6927	_LT_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag $libobjs $deplibs $compiler_flags $wl-h,$soname $wl--image-base,`expr ${RANDOM-$$} % 4096 / 2 \* 262144 + 1342177280` -o $lib'
6928	_LT_TAGVAR(archive_expsym_cmds, $1)='sed "s|^|_|" $export_symbols >$output_objdir/$soname.expsym~$CC -shared $pic_flag $libobjs $deplibs $compiler_flags $wl-h,$soname $wl--retain-symbols-file,$output_objdir/$soname.expsym $wl--image-base,`expr ${RANDOM-$$} % 4096 / 2 \* 262144 + 1342177280` -o $lib'
6929	;;
6930      irix5* | irix6*)
6931        case $cc_basename in
6932          CC*)
6933	    # SGI C++
6934	    _LT_TAGVAR(archive_cmds, $1)='$CC -shared -all -multigot $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags -soname $soname `test -n "$verstring" && func_echo_all "-set_version $verstring"` -update_registry $output_objdir/so_locations -o $lib'
6935
6936	    # Archives containing C++ object files must be created using
6937	    # "CC -ar", where "CC" is the IRIX C++ compiler.  This is
6938	    # necessary to make sure instantiated templates are included
6939	    # in the archive.
6940	    _LT_TAGVAR(old_archive_cmds, $1)='$CC -ar -WR,-u -o $oldlib $oldobjs'
6941	    ;;
6942          *)
6943	    if test yes = "$GXX"; then
6944	      if test no = "$with_gnu_ld"; then
6945	        _LT_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag -nostdlib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags $wl-soname $wl$soname `test -n "$verstring" && func_echo_all "$wl-set_version $wl$verstring"` $wl-update_registry $wl$output_objdir/so_locations -o $lib'
6946	      else
6947	        _LT_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag -nostdlib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags $wl-soname $wl$soname `test -n "$verstring" && func_echo_all "$wl-set_version $wl$verstring"` -o $lib'
6948	      fi
6949	    fi
6950	    _LT_TAGVAR(link_all_deplibs, $1)=yes
6951	    ;;
6952        esac
6953        _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='$wl-rpath $wl$libdir'
6954        _LT_TAGVAR(hardcode_libdir_separator, $1)=:
6955        _LT_TAGVAR(inherit_rpath, $1)=yes
6956        ;;
6957
6958      linux* | k*bsd*-gnu | kopensolaris*-gnu | gnu*)
6959        case $cc_basename in
6960          KCC*)
6961	    # Kuck and Associates, Inc. (KAI) C++ Compiler
6962
6963	    # KCC will only create a shared library if the output file
6964	    # ends with ".so" (or ".sl" for HP-UX), so rename the library
6965	    # to its proper name (with version) after linking.
6966	    _LT_TAGVAR(archive_cmds, $1)='tempext=`echo $shared_ext | $SED -e '\''s/\([[^()0-9A-Za-z{}]]\)/\\\\\1/g'\''`; templib=`echo $lib | $SED -e "s/\$tempext\..*/.so/"`; $CC $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags --soname $soname -o \$templib; mv \$templib $lib'
6967	    _LT_TAGVAR(archive_expsym_cmds, $1)='tempext=`echo $shared_ext | $SED -e '\''s/\([[^()0-9A-Za-z{}]]\)/\\\\\1/g'\''`; templib=`echo $lib | $SED -e "s/\$tempext\..*/.so/"`; $CC $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags --soname $soname -o \$templib $wl-retain-symbols-file,$export_symbols; mv \$templib $lib'
6968	    # Commands to make compiler produce verbose output that lists
6969	    # what "hidden" libraries, object files and flags are used when
6970	    # linking a shared library.
6971	    #
6972	    # There doesn't appear to be a way to prevent this compiler from
6973	    # explicitly linking system object files so we need to strip them
6974	    # from the output so that they don't get included in the library
6975	    # dependencies.
6976	    output_verbose_link_cmd='templist=`$CC $CFLAGS -v conftest.$objext -o libconftest$shared_ext 2>&1 | $GREP "ld"`; rm -f libconftest$shared_ext; list= ; for z in $templist; do case $z in conftest.$objext) list="$list $z";; *.$objext);; *) list="$list $z";;esac; done; func_echo_all "$list"'
6977
6978	    _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='$wl-rpath,$libdir'
6979	    _LT_TAGVAR(export_dynamic_flag_spec, $1)='$wl--export-dynamic'
6980
6981	    # Archives containing C++ object files must be created using
6982	    # "CC -Bstatic", where "CC" is the KAI C++ compiler.
6983	    _LT_TAGVAR(old_archive_cmds, $1)='$CC -Bstatic -o $oldlib $oldobjs'
6984	    ;;
6985	  icpc* | ecpc* )
6986	    # Intel C++
6987	    with_gnu_ld=yes
6988	    # version 8.0 and above of icpc choke on multiply defined symbols
6989	    # if we add $predep_objects and $postdep_objects, however 7.1 and
6990	    # earlier do not add the objects themselves.
6991	    case `$CC -V 2>&1` in
6992	      *"Version 7."*)
6993	        _LT_TAGVAR(archive_cmds, $1)='$CC -shared $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags $wl-soname $wl$soname -o $lib'
6994		_LT_TAGVAR(archive_expsym_cmds, $1)='$CC -shared $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags $wl-soname $wl$soname $wl-retain-symbols-file $wl$export_symbols -o $lib'
6995		;;
6996	      *)  # Version 8.0 or newer
6997	        tmp_idyn=
6998	        case $host_cpu in
6999		  ia64*) tmp_idyn=' -i_dynamic';;
7000		esac
7001	        _LT_TAGVAR(archive_cmds, $1)='$CC -shared'"$tmp_idyn"' $libobjs $deplibs $compiler_flags $wl-soname $wl$soname -o $lib'
7002		_LT_TAGVAR(archive_expsym_cmds, $1)='$CC -shared'"$tmp_idyn"' $libobjs $deplibs $compiler_flags $wl-soname $wl$soname $wl-retain-symbols-file $wl$export_symbols -o $lib'
7003		;;
7004	    esac
7005	    _LT_TAGVAR(archive_cmds_need_lc, $1)=no
7006	    _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='$wl-rpath,$libdir'
7007	    _LT_TAGVAR(export_dynamic_flag_spec, $1)='$wl--export-dynamic'
7008	    _LT_TAGVAR(whole_archive_flag_spec, $1)='$wl--whole-archive$convenience $wl--no-whole-archive'
7009	    ;;
7010          pgCC* | pgcpp*)
7011            # Portland Group C++ compiler
7012	    case `$CC -V` in
7013	    *pgCC\ [[1-5]].* | *pgcpp\ [[1-5]].*)
7014	      _LT_TAGVAR(prelink_cmds, $1)='tpldir=Template.dir~
7015               rm -rf $tpldir~
7016               $CC --prelink_objects --instantiation_dir $tpldir $objs $libobjs $compile_deplibs~
7017               compile_command="$compile_command `find $tpldir -name \*.o | sort | $NL2SP`"'
7018	      _LT_TAGVAR(old_archive_cmds, $1)='tpldir=Template.dir~
7019                rm -rf $tpldir~
7020                $CC --prelink_objects --instantiation_dir $tpldir $oldobjs$old_deplibs~
7021                $AR $AR_FLAGS $oldlib$oldobjs$old_deplibs `find $tpldir -name \*.o | sort | $NL2SP`~
7022                $RANLIB $oldlib'
7023	      _LT_TAGVAR(archive_cmds, $1)='tpldir=Template.dir~
7024                rm -rf $tpldir~
7025                $CC --prelink_objects --instantiation_dir $tpldir $predep_objects $libobjs $deplibs $convenience $postdep_objects~
7026                $CC -shared $pic_flag $predep_objects $libobjs $deplibs `find $tpldir -name \*.o | sort | $NL2SP` $postdep_objects $compiler_flags $wl-soname $wl$soname -o $lib'
7027	      _LT_TAGVAR(archive_expsym_cmds, $1)='tpldir=Template.dir~
7028                rm -rf $tpldir~
7029                $CC --prelink_objects --instantiation_dir $tpldir $predep_objects $libobjs $deplibs $convenience $postdep_objects~
7030                $CC -shared $pic_flag $predep_objects $libobjs $deplibs `find $tpldir -name \*.o | sort | $NL2SP` $postdep_objects $compiler_flags $wl-soname $wl$soname $wl-retain-symbols-file $wl$export_symbols -o $lib'
7031	      ;;
7032	    *) # Version 6 and above use weak symbols
7033	      _LT_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags $wl-soname $wl$soname -o $lib'
7034	      _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -shared $pic_flag $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags $wl-soname $wl$soname $wl-retain-symbols-file $wl$export_symbols -o $lib'
7035	      ;;
7036	    esac
7037
7038	    _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='$wl--rpath $wl$libdir'
7039	    _LT_TAGVAR(export_dynamic_flag_spec, $1)='$wl--export-dynamic'
7040	    _LT_TAGVAR(whole_archive_flag_spec, $1)='$wl--whole-archive`for conv in $convenience\"\"; do test  -n \"$conv\" && new_convenience=\"$new_convenience,$conv\"; done; func_echo_all \"$new_convenience\"` $wl--no-whole-archive'
7041            ;;
7042	  cxx*)
7043	    # Compaq C++
7044	    _LT_TAGVAR(archive_cmds, $1)='$CC -shared $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags $wl-soname $wl$soname -o $lib'
7045	    _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -shared $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags $wl-soname $wl$soname  -o $lib $wl-retain-symbols-file $wl$export_symbols'
7046
7047	    runpath_var=LD_RUN_PATH
7048	    _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-rpath $libdir'
7049	    _LT_TAGVAR(hardcode_libdir_separator, $1)=:
7050
7051	    # Commands to make compiler produce verbose output that lists
7052	    # what "hidden" libraries, object files and flags are used when
7053	    # linking a shared library.
7054	    #
7055	    # There doesn't appear to be a way to prevent this compiler from
7056	    # explicitly linking system object files so we need to strip them
7057	    # from the output so that they don't get included in the library
7058	    # dependencies.
7059	    output_verbose_link_cmd='templist=`$CC -shared $CFLAGS -v conftest.$objext 2>&1 | $GREP "ld"`; templist=`func_echo_all "$templist" | $SED "s/\(^.*ld.*\)\( .*ld .*$\)/\1/"`; list= ; for z in $templist; do case $z in conftest.$objext) list="$list $z";; *.$objext);; *) list="$list $z";;esac; done; func_echo_all "X$list" | $Xsed'
7060	    ;;
7061	  xl* | mpixl* | bgxl*)
7062	    # IBM XL 8.0 on PPC, with GNU ld
7063	    _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='$wl-rpath $wl$libdir'
7064	    _LT_TAGVAR(export_dynamic_flag_spec, $1)='$wl--export-dynamic'
7065	    _LT_TAGVAR(archive_cmds, $1)='$CC -qmkshrobj $libobjs $deplibs $compiler_flags $wl-soname $wl$soname -o $lib'
7066	    if test yes = "$supports_anon_versioning"; then
7067	      _LT_TAGVAR(archive_expsym_cmds, $1)='echo "{ global:" > $output_objdir/$libname.ver~
7068                cat $export_symbols | sed -e "s/\(.*\)/\1;/" >> $output_objdir/$libname.ver~
7069                echo "local: *; };" >> $output_objdir/$libname.ver~
7070                $CC -qmkshrobj $libobjs $deplibs $compiler_flags $wl-soname $wl$soname $wl-version-script $wl$output_objdir/$libname.ver -o $lib'
7071	    fi
7072	    ;;
7073	  *)
7074	    case `$CC -V 2>&1 | sed 5q` in
7075	    *Sun\ C*)
7076	      # Sun C++ 5.9
7077	      _LT_TAGVAR(no_undefined_flag, $1)=' -zdefs'
7078	      _LT_TAGVAR(archive_cmds, $1)='$CC -G$allow_undefined_flag -h$soname -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags'
7079	      _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -G$allow_undefined_flag -h$soname -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags $wl-retain-symbols-file $wl$export_symbols'
7080	      _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-R$libdir'
7081	      _LT_TAGVAR(whole_archive_flag_spec, $1)='$wl--whole-archive`new_convenience=; for conv in $convenience\"\"; do test -z \"$conv\" || new_convenience=\"$new_convenience,$conv\"; done; func_echo_all \"$new_convenience\"` $wl--no-whole-archive'
7082	      _LT_TAGVAR(compiler_needs_object, $1)=yes
7083
7084	      # Not sure whether something based on
7085	      # $CC $CFLAGS -v conftest.$objext -o libconftest$shared_ext 2>&1
7086	      # would be better.
7087	      output_verbose_link_cmd='func_echo_all'
7088
7089	      # Archives containing C++ object files must be created using
7090	      # "CC -xar", where "CC" is the Sun C++ compiler.  This is
7091	      # necessary to make sure instantiated templates are included
7092	      # in the archive.
7093	      _LT_TAGVAR(old_archive_cmds, $1)='$CC -xar -o $oldlib $oldobjs'
7094	      ;;
7095	    esac
7096	    ;;
7097	esac
7098	;;
7099
7100      lynxos*)
7101        # FIXME: insert proper C++ library support
7102	_LT_TAGVAR(ld_shlibs, $1)=no
7103	;;
7104
7105      m88k*)
7106        # FIXME: insert proper C++ library support
7107        _LT_TAGVAR(ld_shlibs, $1)=no
7108	;;
7109
7110      mvs*)
7111        case $cc_basename in
7112          cxx*)
7113	    # FIXME: insert proper C++ library support
7114	    _LT_TAGVAR(ld_shlibs, $1)=no
7115	    ;;
7116	  *)
7117	    # FIXME: insert proper C++ library support
7118	    _LT_TAGVAR(ld_shlibs, $1)=no
7119	    ;;
7120	esac
7121	;;
7122
7123      netbsd*)
7124        if echo __ELF__ | $CC -E - | $GREP __ELF__ >/dev/null; then
7125	  _LT_TAGVAR(archive_cmds, $1)='$LD -Bshareable  -o $lib $predep_objects $libobjs $deplibs $postdep_objects $linker_flags'
7126	  wlarc=
7127	  _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-R$libdir'
7128	  _LT_TAGVAR(hardcode_direct, $1)=yes
7129	  _LT_TAGVAR(hardcode_shlibpath_var, $1)=no
7130	fi
7131	# Workaround some broken pre-1.5 toolchains
7132	output_verbose_link_cmd='$CC -shared $CFLAGS -v conftest.$objext 2>&1 | $GREP conftest.$objext | $SED -e "s:-lgcc -lc -lgcc::"'
7133	;;
7134
7135      *nto* | *qnx*)
7136        _LT_TAGVAR(ld_shlibs, $1)=yes
7137	;;
7138
7139      openbsd* | bitrig*)
7140	if test -f /usr/libexec/ld.so; then
7141	  _LT_TAGVAR(hardcode_direct, $1)=yes
7142	  _LT_TAGVAR(hardcode_shlibpath_var, $1)=no
7143	  _LT_TAGVAR(hardcode_direct_absolute, $1)=yes
7144	  _LT_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags -o $lib'
7145	  _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='$wl-rpath,$libdir'
7146	  if test -z "`echo __ELF__ | $CC -E - | grep __ELF__`"; then
7147	    _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -shared $pic_flag $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags $wl-retain-symbols-file,$export_symbols -o $lib'
7148	    _LT_TAGVAR(export_dynamic_flag_spec, $1)='$wl-E'
7149	    _LT_TAGVAR(whole_archive_flag_spec, $1)=$wlarc'--whole-archive$convenience '$wlarc'--no-whole-archive'
7150	  fi
7151	  output_verbose_link_cmd=func_echo_all
7152	else
7153	  _LT_TAGVAR(ld_shlibs, $1)=no
7154	fi
7155	;;
7156
7157      osf3* | osf4* | osf5*)
7158        case $cc_basename in
7159          KCC*)
7160	    # Kuck and Associates, Inc. (KAI) C++ Compiler
7161
7162	    # KCC will only create a shared library if the output file
7163	    # ends with ".so" (or ".sl" for HP-UX), so rename the library
7164	    # to its proper name (with version) after linking.
7165	    _LT_TAGVAR(archive_cmds, $1)='tempext=`echo $shared_ext | $SED -e '\''s/\([[^()0-9A-Za-z{}]]\)/\\\\\1/g'\''`; templib=`echo "$lib" | $SED -e "s/\$tempext\..*/.so/"`; $CC $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags --soname $soname -o \$templib; mv \$templib $lib'
7166
7167	    _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='$wl-rpath,$libdir'
7168	    _LT_TAGVAR(hardcode_libdir_separator, $1)=:
7169
7170	    # Archives containing C++ object files must be created using
7171	    # the KAI C++ compiler.
7172	    case $host in
7173	      osf3*) _LT_TAGVAR(old_archive_cmds, $1)='$CC -Bstatic -o $oldlib $oldobjs' ;;
7174	      *) _LT_TAGVAR(old_archive_cmds, $1)='$CC -o $oldlib $oldobjs' ;;
7175	    esac
7176	    ;;
7177          RCC*)
7178	    # Rational C++ 2.4.1
7179	    # FIXME: insert proper C++ library support
7180	    _LT_TAGVAR(ld_shlibs, $1)=no
7181	    ;;
7182          cxx*)
7183	    case $host in
7184	      osf3*)
7185	        _LT_TAGVAR(allow_undefined_flag, $1)=' $wl-expect_unresolved $wl\*'
7186	        _LT_TAGVAR(archive_cmds, $1)='$CC -shared$allow_undefined_flag $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags $wl-soname $soname `test -n "$verstring" && func_echo_all "$wl-set_version $verstring"` -update_registry $output_objdir/so_locations -o $lib'
7187	        _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='$wl-rpath $wl$libdir'
7188		;;
7189	      *)
7190	        _LT_TAGVAR(allow_undefined_flag, $1)=' -expect_unresolved \*'
7191	        _LT_TAGVAR(archive_cmds, $1)='$CC -shared$allow_undefined_flag $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags -msym -soname $soname `test -n "$verstring" && func_echo_all "-set_version $verstring"` -update_registry $output_objdir/so_locations -o $lib'
7192	        _LT_TAGVAR(archive_expsym_cmds, $1)='for i in `cat $export_symbols`; do printf "%s %s\\n" -exported_symbol "\$i" >> $lib.exp; done~
7193                  echo "-hidden">> $lib.exp~
7194                  $CC -shared$allow_undefined_flag $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags -msym -soname $soname $wl-input $wl$lib.exp  `test -n "$verstring" && $ECHO "-set_version $verstring"` -update_registry $output_objdir/so_locations -o $lib~
7195                  $RM $lib.exp'
7196	        _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-rpath $libdir'
7197		;;
7198	    esac
7199
7200	    _LT_TAGVAR(hardcode_libdir_separator, $1)=:
7201
7202	    # Commands to make compiler produce verbose output that lists
7203	    # what "hidden" libraries, object files and flags are used when
7204	    # linking a shared library.
7205	    #
7206	    # There doesn't appear to be a way to prevent this compiler from
7207	    # explicitly linking system object files so we need to strip them
7208	    # from the output so that they don't get included in the library
7209	    # dependencies.
7210	    output_verbose_link_cmd='templist=`$CC -shared $CFLAGS -v conftest.$objext 2>&1 | $GREP "ld" | $GREP -v "ld:"`; templist=`func_echo_all "$templist" | $SED "s/\(^.*ld.*\)\( .*ld.*$\)/\1/"`; list= ; for z in $templist; do case $z in conftest.$objext) list="$list $z";; *.$objext);; *) list="$list $z";;esac; done; func_echo_all "$list"'
7211	    ;;
7212	  *)
7213	    if test yes,no = "$GXX,$with_gnu_ld"; then
7214	      _LT_TAGVAR(allow_undefined_flag, $1)=' $wl-expect_unresolved $wl\*'
7215	      case $host in
7216	        osf3*)
7217	          _LT_TAGVAR(archive_cmds, $1)='$CC -shared -nostdlib $allow_undefined_flag $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags $wl-soname $wl$soname `test -n "$verstring" && func_echo_all "$wl-set_version $wl$verstring"` $wl-update_registry $wl$output_objdir/so_locations -o $lib'
7218		  ;;
7219	        *)
7220	          _LT_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag -nostdlib $allow_undefined_flag $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags $wl-msym $wl-soname $wl$soname `test -n "$verstring" && func_echo_all "$wl-set_version $wl$verstring"` $wl-update_registry $wl$output_objdir/so_locations -o $lib'
7221		  ;;
7222	      esac
7223
7224	      _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='$wl-rpath $wl$libdir'
7225	      _LT_TAGVAR(hardcode_libdir_separator, $1)=:
7226
7227	      # Commands to make compiler produce verbose output that lists
7228	      # what "hidden" libraries, object files and flags are used when
7229	      # linking a shared library.
7230	      output_verbose_link_cmd='$CC -shared $CFLAGS -v conftest.$objext 2>&1 | $GREP -v "^Configured with:" | $GREP "\-L"'
7231
7232	    else
7233	      # FIXME: insert proper C++ library support
7234	      _LT_TAGVAR(ld_shlibs, $1)=no
7235	    fi
7236	    ;;
7237        esac
7238        ;;
7239
7240      psos*)
7241        # FIXME: insert proper C++ library support
7242        _LT_TAGVAR(ld_shlibs, $1)=no
7243        ;;
7244
7245      sunos4*)
7246        case $cc_basename in
7247          CC*)
7248	    # Sun C++ 4.x
7249	    # FIXME: insert proper C++ library support
7250	    _LT_TAGVAR(ld_shlibs, $1)=no
7251	    ;;
7252          lcc*)
7253	    # Lucid
7254	    # FIXME: insert proper C++ library support
7255	    _LT_TAGVAR(ld_shlibs, $1)=no
7256	    ;;
7257          *)
7258	    # FIXME: insert proper C++ library support
7259	    _LT_TAGVAR(ld_shlibs, $1)=no
7260	    ;;
7261        esac
7262        ;;
7263
7264      solaris*)
7265        case $cc_basename in
7266          CC* | sunCC*)
7267	    # Sun C++ 4.2, 5.x and Centerline C++
7268            _LT_TAGVAR(archive_cmds_need_lc,$1)=yes
7269	    _LT_TAGVAR(no_undefined_flag, $1)=' -zdefs'
7270	    _LT_TAGVAR(archive_cmds, $1)='$CC -G$allow_undefined_flag -h$soname -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags'
7271	    _LT_TAGVAR(archive_expsym_cmds, $1)='echo "{ global:" > $lib.exp~cat $export_symbols | $SED -e "s/\(.*\)/\1;/" >> $lib.exp~echo "local: *; };" >> $lib.exp~
7272              $CC -G$allow_undefined_flag $wl-M $wl$lib.exp -h$soname -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags~$RM $lib.exp'
7273
7274	    _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-R$libdir'
7275	    _LT_TAGVAR(hardcode_shlibpath_var, $1)=no
7276	    case $host_os in
7277	      solaris2.[[0-5]] | solaris2.[[0-5]].*) ;;
7278	      *)
7279		# The compiler driver will combine and reorder linker options,
7280		# but understands '-z linker_flag'.
7281	        # Supported since Solaris 2.6 (maybe 2.5.1?)
7282		_LT_TAGVAR(whole_archive_flag_spec, $1)='-z allextract$convenience -z defaultextract'
7283	        ;;
7284	    esac
7285	    _LT_TAGVAR(link_all_deplibs, $1)=yes
7286
7287	    output_verbose_link_cmd='func_echo_all'
7288
7289	    # Archives containing C++ object files must be created using
7290	    # "CC -xar", where "CC" is the Sun C++ compiler.  This is
7291	    # necessary to make sure instantiated templates are included
7292	    # in the archive.
7293	    _LT_TAGVAR(old_archive_cmds, $1)='$CC -xar -o $oldlib $oldobjs'
7294	    ;;
7295          gcx*)
7296	    # Green Hills C++ Compiler
7297	    _LT_TAGVAR(archive_cmds, $1)='$CC -shared $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags $wl-h $wl$soname -o $lib'
7298
7299	    # The C++ compiler must be used to create the archive.
7300	    _LT_TAGVAR(old_archive_cmds, $1)='$CC $LDFLAGS -archive -o $oldlib $oldobjs'
7301	    ;;
7302          *)
7303	    # GNU C++ compiler with Solaris linker
7304	    if test yes,no = "$GXX,$with_gnu_ld"; then
7305	      _LT_TAGVAR(no_undefined_flag, $1)=' $wl-z ${wl}defs'
7306	      if $CC --version | $GREP -v '^2\.7' > /dev/null; then
7307	        _LT_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag -nostdlib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags $wl-h $wl$soname -o $lib'
7308	        _LT_TAGVAR(archive_expsym_cmds, $1)='echo "{ global:" > $lib.exp~cat $export_symbols | $SED -e "s/\(.*\)/\1;/" >> $lib.exp~echo "local: *; };" >> $lib.exp~
7309                  $CC -shared $pic_flag -nostdlib $wl-M $wl$lib.exp $wl-h $wl$soname -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags~$RM $lib.exp'
7310
7311	        # Commands to make compiler produce verbose output that lists
7312	        # what "hidden" libraries, object files and flags are used when
7313	        # linking a shared library.
7314	        output_verbose_link_cmd='$CC -shared $CFLAGS -v conftest.$objext 2>&1 | $GREP -v "^Configured with:" | $GREP "\-L"'
7315	      else
7316	        # g++ 2.7 appears to require '-G' NOT '-shared' on this
7317	        # platform.
7318	        _LT_TAGVAR(archive_cmds, $1)='$CC -G -nostdlib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags $wl-h $wl$soname -o $lib'
7319	        _LT_TAGVAR(archive_expsym_cmds, $1)='echo "{ global:" > $lib.exp~cat $export_symbols | $SED -e "s/\(.*\)/\1;/" >> $lib.exp~echo "local: *; };" >> $lib.exp~
7320                  $CC -G -nostdlib $wl-M $wl$lib.exp $wl-h $wl$soname -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags~$RM $lib.exp'
7321
7322	        # Commands to make compiler produce verbose output that lists
7323	        # what "hidden" libraries, object files and flags are used when
7324	        # linking a shared library.
7325	        output_verbose_link_cmd='$CC -G $CFLAGS -v conftest.$objext 2>&1 | $GREP -v "^Configured with:" | $GREP "\-L"'
7326	      fi
7327
7328	      _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='$wl-R $wl$libdir'
7329	      case $host_os in
7330		solaris2.[[0-5]] | solaris2.[[0-5]].*) ;;
7331		*)
7332		  _LT_TAGVAR(whole_archive_flag_spec, $1)='$wl-z ${wl}allextract$convenience $wl-z ${wl}defaultextract'
7333		  ;;
7334	      esac
7335	    fi
7336	    ;;
7337        esac
7338        ;;
7339
7340    sysv4*uw2* | sysv5OpenUNIX* | sysv5UnixWare7.[[01]].[[10]]* | unixware7* | sco3.2v5.0.[[024]]*)
7341      _LT_TAGVAR(no_undefined_flag, $1)='$wl-z,text'
7342      _LT_TAGVAR(archive_cmds_need_lc, $1)=no
7343      _LT_TAGVAR(hardcode_shlibpath_var, $1)=no
7344      runpath_var='LD_RUN_PATH'
7345
7346      case $cc_basename in
7347        CC*)
7348	  _LT_TAGVAR(archive_cmds, $1)='$CC -G $wl-h,$soname -o $lib $libobjs $deplibs $compiler_flags'
7349	  _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -G $wl-Bexport:$export_symbols $wl-h,$soname -o $lib $libobjs $deplibs $compiler_flags'
7350	  ;;
7351	*)
7352	  _LT_TAGVAR(archive_cmds, $1)='$CC -shared $wl-h,$soname -o $lib $libobjs $deplibs $compiler_flags'
7353	  _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -shared $wl-Bexport:$export_symbols $wl-h,$soname -o $lib $libobjs $deplibs $compiler_flags'
7354	  ;;
7355      esac
7356      ;;
7357
7358      sysv5* | sco3.2v5* | sco5v6*)
7359	# Note: We CANNOT use -z defs as we might desire, because we do not
7360	# link with -lc, and that would cause any symbols used from libc to
7361	# always be unresolved, which means just about no library would
7362	# ever link correctly.  If we're not using GNU ld we use -z text
7363	# though, which does catch some bad symbols but isn't as heavy-handed
7364	# as -z defs.
7365	_LT_TAGVAR(no_undefined_flag, $1)='$wl-z,text'
7366	_LT_TAGVAR(allow_undefined_flag, $1)='$wl-z,nodefs'
7367	_LT_TAGVAR(archive_cmds_need_lc, $1)=no
7368	_LT_TAGVAR(hardcode_shlibpath_var, $1)=no
7369	_LT_TAGVAR(hardcode_libdir_flag_spec, $1)='$wl-R,$libdir'
7370	_LT_TAGVAR(hardcode_libdir_separator, $1)=':'
7371	_LT_TAGVAR(link_all_deplibs, $1)=yes
7372	_LT_TAGVAR(export_dynamic_flag_spec, $1)='$wl-Bexport'
7373	runpath_var='LD_RUN_PATH'
7374
7375	case $cc_basename in
7376          CC*)
7377	    _LT_TAGVAR(archive_cmds, $1)='$CC -G $wl-h,$soname -o $lib $libobjs $deplibs $compiler_flags'
7378	    _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -G $wl-Bexport:$export_symbols $wl-h,$soname -o $lib $libobjs $deplibs $compiler_flags'
7379	    _LT_TAGVAR(old_archive_cmds, $1)='$CC -Tprelink_objects $oldobjs~
7380              '"$_LT_TAGVAR(old_archive_cmds, $1)"
7381	    _LT_TAGVAR(reload_cmds, $1)='$CC -Tprelink_objects $reload_objs~
7382              '"$_LT_TAGVAR(reload_cmds, $1)"
7383	    ;;
7384	  *)
7385	    _LT_TAGVAR(archive_cmds, $1)='$CC -shared $wl-h,$soname -o $lib $libobjs $deplibs $compiler_flags'
7386	    _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -shared $wl-Bexport:$export_symbols $wl-h,$soname -o $lib $libobjs $deplibs $compiler_flags'
7387	    ;;
7388	esac
7389      ;;
7390
7391      tandem*)
7392        case $cc_basename in
7393          NCC*)
7394	    # NonStop-UX NCC 3.20
7395	    # FIXME: insert proper C++ library support
7396	    _LT_TAGVAR(ld_shlibs, $1)=no
7397	    ;;
7398          *)
7399	    # FIXME: insert proper C++ library support
7400	    _LT_TAGVAR(ld_shlibs, $1)=no
7401	    ;;
7402        esac
7403        ;;
7404
7405      vxworks*)
7406        # FIXME: insert proper C++ library support
7407        _LT_TAGVAR(ld_shlibs, $1)=no
7408        ;;
7409
7410      *)
7411        # FIXME: insert proper C++ library support
7412        _LT_TAGVAR(ld_shlibs, $1)=no
7413        ;;
7414    esac
7415
7416    AC_MSG_RESULT([$_LT_TAGVAR(ld_shlibs, $1)])
7417    test no = "$_LT_TAGVAR(ld_shlibs, $1)" && can_build_shared=no
7418
7419    _LT_TAGVAR(GCC, $1)=$GXX
7420    _LT_TAGVAR(LD, $1)=$LD
7421
7422    ## CAVEAT EMPTOR:
7423    ## There is no encapsulation within the following macros, do not change
7424    ## the running order or otherwise move them around unless you know exactly
7425    ## what you are doing...
7426    _LT_SYS_HIDDEN_LIBDEPS($1)
7427    _LT_COMPILER_PIC($1)
7428    _LT_COMPILER_C_O($1)
7429    _LT_COMPILER_FILE_LOCKS($1)
7430    _LT_LINKER_SHLIBS($1)
7431    _LT_SYS_DYNAMIC_LINKER($1)
7432    _LT_LINKER_HARDCODE_LIBPATH($1)
7433
7434    _LT_CONFIG($1)
7435  fi # test -n "$compiler"
7436
7437  CC=$lt_save_CC
7438  CFLAGS=$lt_save_CFLAGS
7439  LDCXX=$LD
7440  LD=$lt_save_LD
7441  GCC=$lt_save_GCC
7442  with_gnu_ld=$lt_save_with_gnu_ld
7443  lt_cv_path_LDCXX=$lt_cv_path_LD
7444  lt_cv_path_LD=$lt_save_path_LD
7445  lt_cv_prog_gnu_ldcxx=$lt_cv_prog_gnu_ld
7446  lt_cv_prog_gnu_ld=$lt_save_with_gnu_ld
7447fi # test yes != "$_lt_caught_CXX_error"
7448
7449AC_LANG_POP
7450])# _LT_LANG_CXX_CONFIG
7451
7452
7453# _LT_FUNC_STRIPNAME_CNF
7454# ----------------------
7455# func_stripname_cnf prefix suffix name
7456# strip PREFIX and SUFFIX off of NAME.
7457# PREFIX and SUFFIX must not contain globbing or regex special
7458# characters, hashes, percent signs, but SUFFIX may contain a leading
7459# dot (in which case that matches only a dot).
7460#
7461# This function is identical to the (non-XSI) version of func_stripname,
7462# except this one can be used by m4 code that may be executed by configure,
7463# rather than the libtool script.
7464m4_defun([_LT_FUNC_STRIPNAME_CNF],[dnl
7465AC_REQUIRE([_LT_DECL_SED])
7466AC_REQUIRE([_LT_PROG_ECHO_BACKSLASH])
7467func_stripname_cnf ()
7468{
7469  case @S|@2 in
7470  .*) func_stripname_result=`$ECHO "@S|@3" | $SED "s%^@S|@1%%; s%\\\\@S|@2\$%%"`;;
7471  *)  func_stripname_result=`$ECHO "@S|@3" | $SED "s%^@S|@1%%; s%@S|@2\$%%"`;;
7472  esac
7473} # func_stripname_cnf
7474])# _LT_FUNC_STRIPNAME_CNF
7475
7476
7477# _LT_SYS_HIDDEN_LIBDEPS([TAGNAME])
7478# ---------------------------------
7479# Figure out "hidden" library dependencies from verbose
7480# compiler output when linking a shared library.
7481# Parse the compiler output and extract the necessary
7482# objects, libraries and library flags.
7483m4_defun([_LT_SYS_HIDDEN_LIBDEPS],
7484[m4_require([_LT_FILEUTILS_DEFAULTS])dnl
7485AC_REQUIRE([_LT_FUNC_STRIPNAME_CNF])dnl
7486# Dependencies to place before and after the object being linked:
7487_LT_TAGVAR(predep_objects, $1)=
7488_LT_TAGVAR(postdep_objects, $1)=
7489_LT_TAGVAR(predeps, $1)=
7490_LT_TAGVAR(postdeps, $1)=
7491_LT_TAGVAR(compiler_lib_search_path, $1)=
7492
7493dnl we can't use the lt_simple_compile_test_code here,
7494dnl because it contains code intended for an executable,
7495dnl not a library.  It's possible we should let each
7496dnl tag define a new lt_????_link_test_code variable,
7497dnl but it's only used here...
7498m4_if([$1], [], [cat > conftest.$ac_ext <<_LT_EOF
7499int a;
7500void foo (void) { a = 0; }
7501_LT_EOF
7502], [$1], [CXX], [cat > conftest.$ac_ext <<_LT_EOF
7503class Foo
7504{
7505public:
7506  Foo (void) { a = 0; }
7507private:
7508  int a;
7509};
7510_LT_EOF
7511], [$1], [F77], [cat > conftest.$ac_ext <<_LT_EOF
7512      subroutine foo
7513      implicit none
7514      integer*4 a
7515      a=0
7516      return
7517      end
7518_LT_EOF
7519], [$1], [FC], [cat > conftest.$ac_ext <<_LT_EOF
7520      subroutine foo
7521      implicit none
7522      integer a
7523      a=0
7524      return
7525      end
7526_LT_EOF
7527], [$1], [GCJ], [cat > conftest.$ac_ext <<_LT_EOF
7528public class foo {
7529  private int a;
7530  public void bar (void) {
7531    a = 0;
7532  }
7533};
7534_LT_EOF
7535], [$1], [GO], [cat > conftest.$ac_ext <<_LT_EOF
7536package foo
7537func foo() {
7538}
7539_LT_EOF
7540])
7541
7542_lt_libdeps_save_CFLAGS=$CFLAGS
7543case "$CC $CFLAGS " in #(
7544*\ -flto*\ *) CFLAGS="$CFLAGS -fno-lto" ;;
7545*\ -fwhopr*\ *) CFLAGS="$CFLAGS -fno-whopr" ;;
7546*\ -fuse-linker-plugin*\ *) CFLAGS="$CFLAGS -fno-use-linker-plugin" ;;
7547esac
7548
7549dnl Parse the compiler output and extract the necessary
7550dnl objects, libraries and library flags.
7551if AC_TRY_EVAL(ac_compile); then
7552  # Parse the compiler output and extract the necessary
7553  # objects, libraries and library flags.
7554
7555  # Sentinel used to keep track of whether or not we are before
7556  # the conftest object file.
7557  pre_test_object_deps_done=no
7558
7559  for p in `eval "$output_verbose_link_cmd"`; do
7560    case $prev$p in
7561
7562    -L* | -R* | -l*)
7563       # Some compilers place space between "-{L,R}" and the path.
7564       # Remove the space.
7565       if test x-L = "$p" ||
7566          test x-R = "$p"; then
7567	 prev=$p
7568	 continue
7569       fi
7570
7571       # Expand the sysroot to ease extracting the directories later.
7572       if test -z "$prev"; then
7573         case $p in
7574         -L*) func_stripname_cnf '-L' '' "$p"; prev=-L; p=$func_stripname_result ;;
7575         -R*) func_stripname_cnf '-R' '' "$p"; prev=-R; p=$func_stripname_result ;;
7576         -l*) func_stripname_cnf '-l' '' "$p"; prev=-l; p=$func_stripname_result ;;
7577         esac
7578       fi
7579       case $p in
7580       =*) func_stripname_cnf '=' '' "$p"; p=$lt_sysroot$func_stripname_result ;;
7581       esac
7582       if test no = "$pre_test_object_deps_done"; then
7583	 case $prev in
7584	 -L | -R)
7585	   # Internal compiler library paths should come after those
7586	   # provided the user.  The postdeps already come after the
7587	   # user supplied libs so there is no need to process them.
7588	   if test -z "$_LT_TAGVAR(compiler_lib_search_path, $1)"; then
7589	     _LT_TAGVAR(compiler_lib_search_path, $1)=$prev$p
7590	   else
7591	     _LT_TAGVAR(compiler_lib_search_path, $1)="${_LT_TAGVAR(compiler_lib_search_path, $1)} $prev$p"
7592	   fi
7593	   ;;
7594	 # The "-l" case would never come before the object being
7595	 # linked, so don't bother handling this case.
7596	 esac
7597       else
7598	 if test -z "$_LT_TAGVAR(postdeps, $1)"; then
7599	   _LT_TAGVAR(postdeps, $1)=$prev$p
7600	 else
7601	   _LT_TAGVAR(postdeps, $1)="${_LT_TAGVAR(postdeps, $1)} $prev$p"
7602	 fi
7603       fi
7604       prev=
7605       ;;
7606
7607    *.lto.$objext) ;; # Ignore GCC LTO objects
7608    *.$objext)
7609       # This assumes that the test object file only shows up
7610       # once in the compiler output.
7611       if test "$p" = "conftest.$objext"; then
7612	 pre_test_object_deps_done=yes
7613	 continue
7614       fi
7615
7616       if test no = "$pre_test_object_deps_done"; then
7617	 if test -z "$_LT_TAGVAR(predep_objects, $1)"; then
7618	   _LT_TAGVAR(predep_objects, $1)=$p
7619	 else
7620	   _LT_TAGVAR(predep_objects, $1)="$_LT_TAGVAR(predep_objects, $1) $p"
7621	 fi
7622       else
7623	 if test -z "$_LT_TAGVAR(postdep_objects, $1)"; then
7624	   _LT_TAGVAR(postdep_objects, $1)=$p
7625	 else
7626	   _LT_TAGVAR(postdep_objects, $1)="$_LT_TAGVAR(postdep_objects, $1) $p"
7627	 fi
7628       fi
7629       ;;
7630
7631    *) ;; # Ignore the rest.
7632
7633    esac
7634  done
7635
7636  # Clean up.
7637  rm -f a.out a.exe
7638else
7639  echo "libtool.m4: error: problem compiling $1 test program"
7640fi
7641
7642$RM -f confest.$objext
7643CFLAGS=$_lt_libdeps_save_CFLAGS
7644
7645# PORTME: override above test on systems where it is broken
7646m4_if([$1], [CXX],
7647[case $host_os in
7648interix[[3-9]]*)
7649  # Interix 3.5 installs completely hosed .la files for C++, so rather than
7650  # hack all around it, let's just trust "g++" to DTRT.
7651  _LT_TAGVAR(predep_objects,$1)=
7652  _LT_TAGVAR(postdep_objects,$1)=
7653  _LT_TAGVAR(postdeps,$1)=
7654  ;;
7655esac
7656])
7657
7658case " $_LT_TAGVAR(postdeps, $1) " in
7659*" -lc "*) _LT_TAGVAR(archive_cmds_need_lc, $1)=no ;;
7660esac
7661 _LT_TAGVAR(compiler_lib_search_dirs, $1)=
7662if test -n "${_LT_TAGVAR(compiler_lib_search_path, $1)}"; then
7663 _LT_TAGVAR(compiler_lib_search_dirs, $1)=`echo " ${_LT_TAGVAR(compiler_lib_search_path, $1)}" | $SED -e 's! -L! !g' -e 's!^ !!'`
7664fi
7665_LT_TAGDECL([], [compiler_lib_search_dirs], [1],
7666    [The directories searched by this compiler when creating a shared library])
7667_LT_TAGDECL([], [predep_objects], [1],
7668    [Dependencies to place before and after the objects being linked to
7669    create a shared library])
7670_LT_TAGDECL([], [postdep_objects], [1])
7671_LT_TAGDECL([], [predeps], [1])
7672_LT_TAGDECL([], [postdeps], [1])
7673_LT_TAGDECL([], [compiler_lib_search_path], [1],
7674    [The library search path used internally by the compiler when linking
7675    a shared library])
7676])# _LT_SYS_HIDDEN_LIBDEPS
7677
7678
7679# _LT_LANG_F77_CONFIG([TAG])
7680# --------------------------
7681# Ensure that the configuration variables for a Fortran 77 compiler are
7682# suitably defined.  These variables are subsequently used by _LT_CONFIG
7683# to write the compiler configuration to 'libtool'.
7684m4_defun([_LT_LANG_F77_CONFIG],
7685[AC_LANG_PUSH(Fortran 77)
7686if test -z "$F77" || test no = "$F77"; then
7687  _lt_disable_F77=yes
7688fi
7689
7690_LT_TAGVAR(archive_cmds_need_lc, $1)=no
7691_LT_TAGVAR(allow_undefined_flag, $1)=
7692_LT_TAGVAR(always_export_symbols, $1)=no
7693_LT_TAGVAR(archive_expsym_cmds, $1)=
7694_LT_TAGVAR(export_dynamic_flag_spec, $1)=
7695_LT_TAGVAR(hardcode_direct, $1)=no
7696_LT_TAGVAR(hardcode_direct_absolute, $1)=no
7697_LT_TAGVAR(hardcode_libdir_flag_spec, $1)=
7698_LT_TAGVAR(hardcode_libdir_separator, $1)=
7699_LT_TAGVAR(hardcode_minus_L, $1)=no
7700_LT_TAGVAR(hardcode_automatic, $1)=no
7701_LT_TAGVAR(inherit_rpath, $1)=no
7702_LT_TAGVAR(module_cmds, $1)=
7703_LT_TAGVAR(module_expsym_cmds, $1)=
7704_LT_TAGVAR(link_all_deplibs, $1)=unknown
7705_LT_TAGVAR(old_archive_cmds, $1)=$old_archive_cmds
7706_LT_TAGVAR(reload_flag, $1)=$reload_flag
7707_LT_TAGVAR(reload_cmds, $1)=$reload_cmds
7708_LT_TAGVAR(no_undefined_flag, $1)=
7709_LT_TAGVAR(whole_archive_flag_spec, $1)=
7710_LT_TAGVAR(enable_shared_with_static_runtimes, $1)=no
7711
7712# Source file extension for f77 test sources.
7713ac_ext=f
7714
7715# Object file extension for compiled f77 test sources.
7716objext=o
7717_LT_TAGVAR(objext, $1)=$objext
7718
7719# No sense in running all these tests if we already determined that
7720# the F77 compiler isn't working.  Some variables (like enable_shared)
7721# are currently assumed to apply to all compilers on this platform,
7722# and will be corrupted by setting them based on a non-working compiler.
7723if test yes != "$_lt_disable_F77"; then
7724  # Code to be used in simple compile tests
7725  lt_simple_compile_test_code="\
7726      subroutine t
7727      return
7728      end
7729"
7730
7731  # Code to be used in simple link tests
7732  lt_simple_link_test_code="\
7733      program t
7734      end
7735"
7736
7737  # ltmain only uses $CC for tagged configurations so make sure $CC is set.
7738  _LT_TAG_COMPILER
7739
7740  # save warnings/boilerplate of simple test code
7741  _LT_COMPILER_BOILERPLATE
7742  _LT_LINKER_BOILERPLATE
7743
7744  # Allow CC to be a program name with arguments.
7745  lt_save_CC=$CC
7746  lt_save_GCC=$GCC
7747  lt_save_CFLAGS=$CFLAGS
7748  CC=${F77-"f77"}
7749  CFLAGS=$FFLAGS
7750  compiler=$CC
7751  _LT_TAGVAR(compiler, $1)=$CC
7752  _LT_CC_BASENAME([$compiler])
7753  GCC=$G77
7754  if test -n "$compiler"; then
7755    AC_MSG_CHECKING([if libtool supports shared libraries])
7756    AC_MSG_RESULT([$can_build_shared])
7757
7758    AC_MSG_CHECKING([whether to build shared libraries])
7759    test no = "$can_build_shared" && enable_shared=no
7760
7761    # On AIX, shared libraries and static libraries use the same namespace, and
7762    # are all built from PIC.
7763    case $host_os in
7764      aix3*)
7765        test yes = "$enable_shared" && enable_static=no
7766        if test -n "$RANLIB"; then
7767          archive_cmds="$archive_cmds~\$RANLIB \$lib"
7768          postinstall_cmds='$RANLIB $lib'
7769        fi
7770        ;;
7771      aix[[4-9]]*)
7772	if test ia64 != "$host_cpu"; then
7773	  case $enable_shared,$with_aix_soname,$aix_use_runtimelinking in
7774	  yes,aix,yes) ;;		# shared object as lib.so file only
7775	  yes,svr4,*) ;;		# shared object as lib.so archive member only
7776	  yes,*) enable_static=no ;;	# shared object in lib.a archive as well
7777	  esac
7778	fi
7779        ;;
7780    esac
7781    AC_MSG_RESULT([$enable_shared])
7782
7783    AC_MSG_CHECKING([whether to build static libraries])
7784    # Make sure either enable_shared or enable_static is yes.
7785    test yes = "$enable_shared" || enable_static=yes
7786    AC_MSG_RESULT([$enable_static])
7787
7788    _LT_TAGVAR(GCC, $1)=$G77
7789    _LT_TAGVAR(LD, $1)=$LD
7790
7791    ## CAVEAT EMPTOR:
7792    ## There is no encapsulation within the following macros, do not change
7793    ## the running order or otherwise move them around unless you know exactly
7794    ## what you are doing...
7795    _LT_COMPILER_PIC($1)
7796    _LT_COMPILER_C_O($1)
7797    _LT_COMPILER_FILE_LOCKS($1)
7798    _LT_LINKER_SHLIBS($1)
7799    _LT_SYS_DYNAMIC_LINKER($1)
7800    _LT_LINKER_HARDCODE_LIBPATH($1)
7801
7802    _LT_CONFIG($1)
7803  fi # test -n "$compiler"
7804
7805  GCC=$lt_save_GCC
7806  CC=$lt_save_CC
7807  CFLAGS=$lt_save_CFLAGS
7808fi # test yes != "$_lt_disable_F77"
7809
7810AC_LANG_POP
7811])# _LT_LANG_F77_CONFIG
7812
7813
7814# _LT_LANG_FC_CONFIG([TAG])
7815# -------------------------
7816# Ensure that the configuration variables for a Fortran compiler are
7817# suitably defined.  These variables are subsequently used by _LT_CONFIG
7818# to write the compiler configuration to 'libtool'.
7819m4_defun([_LT_LANG_FC_CONFIG],
7820[AC_LANG_PUSH(Fortran)
7821
7822if test -z "$FC" || test no = "$FC"; then
7823  _lt_disable_FC=yes
7824fi
7825
7826_LT_TAGVAR(archive_cmds_need_lc, $1)=no
7827_LT_TAGVAR(allow_undefined_flag, $1)=
7828_LT_TAGVAR(always_export_symbols, $1)=no
7829_LT_TAGVAR(archive_expsym_cmds, $1)=
7830_LT_TAGVAR(export_dynamic_flag_spec, $1)=
7831_LT_TAGVAR(hardcode_direct, $1)=no
7832_LT_TAGVAR(hardcode_direct_absolute, $1)=no
7833_LT_TAGVAR(hardcode_libdir_flag_spec, $1)=
7834_LT_TAGVAR(hardcode_libdir_separator, $1)=
7835_LT_TAGVAR(hardcode_minus_L, $1)=no
7836_LT_TAGVAR(hardcode_automatic, $1)=no
7837_LT_TAGVAR(inherit_rpath, $1)=no
7838_LT_TAGVAR(module_cmds, $1)=
7839_LT_TAGVAR(module_expsym_cmds, $1)=
7840_LT_TAGVAR(link_all_deplibs, $1)=unknown
7841_LT_TAGVAR(old_archive_cmds, $1)=$old_archive_cmds
7842_LT_TAGVAR(reload_flag, $1)=$reload_flag
7843_LT_TAGVAR(reload_cmds, $1)=$reload_cmds
7844_LT_TAGVAR(no_undefined_flag, $1)=
7845_LT_TAGVAR(whole_archive_flag_spec, $1)=
7846_LT_TAGVAR(enable_shared_with_static_runtimes, $1)=no
7847
7848# Source file extension for fc test sources.
7849ac_ext=${ac_fc_srcext-f}
7850
7851# Object file extension for compiled fc test sources.
7852objext=o
7853_LT_TAGVAR(objext, $1)=$objext
7854
7855# No sense in running all these tests if we already determined that
7856# the FC compiler isn't working.  Some variables (like enable_shared)
7857# are currently assumed to apply to all compilers on this platform,
7858# and will be corrupted by setting them based on a non-working compiler.
7859if test yes != "$_lt_disable_FC"; then
7860  # Code to be used in simple compile tests
7861  lt_simple_compile_test_code="\
7862      subroutine t
7863      return
7864      end
7865"
7866
7867  # Code to be used in simple link tests
7868  lt_simple_link_test_code="\
7869      program t
7870      end
7871"
7872
7873  # ltmain only uses $CC for tagged configurations so make sure $CC is set.
7874  _LT_TAG_COMPILER
7875
7876  # save warnings/boilerplate of simple test code
7877  _LT_COMPILER_BOILERPLATE
7878  _LT_LINKER_BOILERPLATE
7879
7880  # Allow CC to be a program name with arguments.
7881  lt_save_CC=$CC
7882  lt_save_GCC=$GCC
7883  lt_save_CFLAGS=$CFLAGS
7884  CC=${FC-"f95"}
7885  CFLAGS=$FCFLAGS
7886  compiler=$CC
7887  GCC=$ac_cv_fc_compiler_gnu
7888
7889  _LT_TAGVAR(compiler, $1)=$CC
7890  _LT_CC_BASENAME([$compiler])
7891
7892  if test -n "$compiler"; then
7893    AC_MSG_CHECKING([if libtool supports shared libraries])
7894    AC_MSG_RESULT([$can_build_shared])
7895
7896    AC_MSG_CHECKING([whether to build shared libraries])
7897    test no = "$can_build_shared" && enable_shared=no
7898
7899    # On AIX, shared libraries and static libraries use the same namespace, and
7900    # are all built from PIC.
7901    case $host_os in
7902      aix3*)
7903        test yes = "$enable_shared" && enable_static=no
7904        if test -n "$RANLIB"; then
7905          archive_cmds="$archive_cmds~\$RANLIB \$lib"
7906          postinstall_cmds='$RANLIB $lib'
7907        fi
7908        ;;
7909      aix[[4-9]]*)
7910	if test ia64 != "$host_cpu"; then
7911	  case $enable_shared,$with_aix_soname,$aix_use_runtimelinking in
7912	  yes,aix,yes) ;;		# shared object as lib.so file only
7913	  yes,svr4,*) ;;		# shared object as lib.so archive member only
7914	  yes,*) enable_static=no ;;	# shared object in lib.a archive as well
7915	  esac
7916	fi
7917        ;;
7918    esac
7919    AC_MSG_RESULT([$enable_shared])
7920
7921    AC_MSG_CHECKING([whether to build static libraries])
7922    # Make sure either enable_shared or enable_static is yes.
7923    test yes = "$enable_shared" || enable_static=yes
7924    AC_MSG_RESULT([$enable_static])
7925
7926    _LT_TAGVAR(GCC, $1)=$ac_cv_fc_compiler_gnu
7927    _LT_TAGVAR(LD, $1)=$LD
7928
7929    ## CAVEAT EMPTOR:
7930    ## There is no encapsulation within the following macros, do not change
7931    ## the running order or otherwise move them around unless you know exactly
7932    ## what you are doing...
7933    _LT_SYS_HIDDEN_LIBDEPS($1)
7934    _LT_COMPILER_PIC($1)
7935    _LT_COMPILER_C_O($1)
7936    _LT_COMPILER_FILE_LOCKS($1)
7937    _LT_LINKER_SHLIBS($1)
7938    _LT_SYS_DYNAMIC_LINKER($1)
7939    _LT_LINKER_HARDCODE_LIBPATH($1)
7940
7941    _LT_CONFIG($1)
7942  fi # test -n "$compiler"
7943
7944  GCC=$lt_save_GCC
7945  CC=$lt_save_CC
7946  CFLAGS=$lt_save_CFLAGS
7947fi # test yes != "$_lt_disable_FC"
7948
7949AC_LANG_POP
7950])# _LT_LANG_FC_CONFIG
7951
7952
7953# _LT_LANG_GCJ_CONFIG([TAG])
7954# --------------------------
7955# Ensure that the configuration variables for the GNU Java Compiler compiler
7956# are suitably defined.  These variables are subsequently used by _LT_CONFIG
7957# to write the compiler configuration to 'libtool'.
7958m4_defun([_LT_LANG_GCJ_CONFIG],
7959[AC_REQUIRE([LT_PROG_GCJ])dnl
7960AC_LANG_SAVE
7961
7962# Source file extension for Java test sources.
7963ac_ext=java
7964
7965# Object file extension for compiled Java test sources.
7966objext=o
7967_LT_TAGVAR(objext, $1)=$objext
7968
7969# Code to be used in simple compile tests
7970lt_simple_compile_test_code="class foo {}"
7971
7972# Code to be used in simple link tests
7973lt_simple_link_test_code='public class conftest { public static void main(String[[]] argv) {}; }'
7974
7975# ltmain only uses $CC for tagged configurations so make sure $CC is set.
7976_LT_TAG_COMPILER
7977
7978# save warnings/boilerplate of simple test code
7979_LT_COMPILER_BOILERPLATE
7980_LT_LINKER_BOILERPLATE
7981
7982# Allow CC to be a program name with arguments.
7983lt_save_CC=$CC
7984lt_save_CFLAGS=$CFLAGS
7985lt_save_GCC=$GCC
7986GCC=yes
7987CC=${GCJ-"gcj"}
7988CFLAGS=$GCJFLAGS
7989compiler=$CC
7990_LT_TAGVAR(compiler, $1)=$CC
7991_LT_TAGVAR(LD, $1)=$LD
7992_LT_CC_BASENAME([$compiler])
7993
7994# GCJ did not exist at the time GCC didn't implicitly link libc in.
7995_LT_TAGVAR(archive_cmds_need_lc, $1)=no
7996
7997_LT_TAGVAR(old_archive_cmds, $1)=$old_archive_cmds
7998_LT_TAGVAR(reload_flag, $1)=$reload_flag
7999_LT_TAGVAR(reload_cmds, $1)=$reload_cmds
8000
8001if test -n "$compiler"; then
8002  _LT_COMPILER_NO_RTTI($1)
8003  _LT_COMPILER_PIC($1)
8004  _LT_COMPILER_C_O($1)
8005  _LT_COMPILER_FILE_LOCKS($1)
8006  _LT_LINKER_SHLIBS($1)
8007  _LT_LINKER_HARDCODE_LIBPATH($1)
8008
8009  _LT_CONFIG($1)
8010fi
8011
8012AC_LANG_RESTORE
8013
8014GCC=$lt_save_GCC
8015CC=$lt_save_CC
8016CFLAGS=$lt_save_CFLAGS
8017])# _LT_LANG_GCJ_CONFIG
8018
8019
8020# _LT_LANG_GO_CONFIG([TAG])
8021# --------------------------
8022# Ensure that the configuration variables for the GNU Go compiler
8023# are suitably defined.  These variables are subsequently used by _LT_CONFIG
8024# to write the compiler configuration to 'libtool'.
8025m4_defun([_LT_LANG_GO_CONFIG],
8026[AC_REQUIRE([LT_PROG_GO])dnl
8027AC_LANG_SAVE
8028
8029# Source file extension for Go test sources.
8030ac_ext=go
8031
8032# Object file extension for compiled Go test sources.
8033objext=o
8034_LT_TAGVAR(objext, $1)=$objext
8035
8036# Code to be used in simple compile tests
8037lt_simple_compile_test_code="package main; func main() { }"
8038
8039# Code to be used in simple link tests
8040lt_simple_link_test_code='package main; func main() { }'
8041
8042# ltmain only uses $CC for tagged configurations so make sure $CC is set.
8043_LT_TAG_COMPILER
8044
8045# save warnings/boilerplate of simple test code
8046_LT_COMPILER_BOILERPLATE
8047_LT_LINKER_BOILERPLATE
8048
8049# Allow CC to be a program name with arguments.
8050lt_save_CC=$CC
8051lt_save_CFLAGS=$CFLAGS
8052lt_save_GCC=$GCC
8053GCC=yes
8054CC=${GOC-"gccgo"}
8055CFLAGS=$GOFLAGS
8056compiler=$CC
8057_LT_TAGVAR(compiler, $1)=$CC
8058_LT_TAGVAR(LD, $1)=$LD
8059_LT_CC_BASENAME([$compiler])
8060
8061# Go did not exist at the time GCC didn't implicitly link libc in.
8062_LT_TAGVAR(archive_cmds_need_lc, $1)=no
8063
8064_LT_TAGVAR(old_archive_cmds, $1)=$old_archive_cmds
8065_LT_TAGVAR(reload_flag, $1)=$reload_flag
8066_LT_TAGVAR(reload_cmds, $1)=$reload_cmds
8067
8068if test -n "$compiler"; then
8069  _LT_COMPILER_NO_RTTI($1)
8070  _LT_COMPILER_PIC($1)
8071  _LT_COMPILER_C_O($1)
8072  _LT_COMPILER_FILE_LOCKS($1)
8073  _LT_LINKER_SHLIBS($1)
8074  _LT_LINKER_HARDCODE_LIBPATH($1)
8075
8076  _LT_CONFIG($1)
8077fi
8078
8079AC_LANG_RESTORE
8080
8081GCC=$lt_save_GCC
8082CC=$lt_save_CC
8083CFLAGS=$lt_save_CFLAGS
8084])# _LT_LANG_GO_CONFIG
8085
8086
8087# _LT_LANG_RC_CONFIG([TAG])
8088# -------------------------
8089# Ensure that the configuration variables for the Windows resource compiler
8090# are suitably defined.  These variables are subsequently used by _LT_CONFIG
8091# to write the compiler configuration to 'libtool'.
8092m4_defun([_LT_LANG_RC_CONFIG],
8093[AC_REQUIRE([LT_PROG_RC])dnl
8094AC_LANG_SAVE
8095
8096# Source file extension for RC test sources.
8097ac_ext=rc
8098
8099# Object file extension for compiled RC test sources.
8100objext=o
8101_LT_TAGVAR(objext, $1)=$objext
8102
8103# Code to be used in simple compile tests
8104lt_simple_compile_test_code='sample MENU { MENUITEM "&Soup", 100, CHECKED }'
8105
8106# Code to be used in simple link tests
8107lt_simple_link_test_code=$lt_simple_compile_test_code
8108
8109# ltmain only uses $CC for tagged configurations so make sure $CC is set.
8110_LT_TAG_COMPILER
8111
8112# save warnings/boilerplate of simple test code
8113_LT_COMPILER_BOILERPLATE
8114_LT_LINKER_BOILERPLATE
8115
8116# Allow CC to be a program name with arguments.
8117lt_save_CC=$CC
8118lt_save_CFLAGS=$CFLAGS
8119lt_save_GCC=$GCC
8120GCC=
8121CC=${RC-"windres"}
8122CFLAGS=
8123compiler=$CC
8124_LT_TAGVAR(compiler, $1)=$CC
8125_LT_CC_BASENAME([$compiler])
8126_LT_TAGVAR(lt_cv_prog_compiler_c_o, $1)=yes
8127
8128if test -n "$compiler"; then
8129  :
8130  _LT_CONFIG($1)
8131fi
8132
8133GCC=$lt_save_GCC
8134AC_LANG_RESTORE
8135CC=$lt_save_CC
8136CFLAGS=$lt_save_CFLAGS
8137])# _LT_LANG_RC_CONFIG
8138
8139
8140# LT_PROG_GCJ
8141# -----------
8142AC_DEFUN([LT_PROG_GCJ],
8143[m4_ifdef([AC_PROG_GCJ], [AC_PROG_GCJ],
8144  [m4_ifdef([A][M_PROG_GCJ], [A][M_PROG_GCJ],
8145    [AC_CHECK_TOOL(GCJ, gcj,)
8146      test set = "${GCJFLAGS+set}" || GCJFLAGS="-g -O2"
8147      AC_SUBST(GCJFLAGS)])])[]dnl
8148])
8149
8150# Old name:
8151AU_ALIAS([LT_AC_PROG_GCJ], [LT_PROG_GCJ])
8152dnl aclocal-1.4 backwards compatibility:
8153dnl AC_DEFUN([LT_AC_PROG_GCJ], [])
8154
8155
8156# LT_PROG_GO
8157# ----------
8158AC_DEFUN([LT_PROG_GO],
8159[AC_CHECK_TOOL(GOC, gccgo,)
8160])
8161
8162
8163# LT_PROG_RC
8164# ----------
8165AC_DEFUN([LT_PROG_RC],
8166[AC_CHECK_TOOL(RC, windres,)
8167])
8168
8169# Old name:
8170AU_ALIAS([LT_AC_PROG_RC], [LT_PROG_RC])
8171dnl aclocal-1.4 backwards compatibility:
8172dnl AC_DEFUN([LT_AC_PROG_RC], [])
8173
8174
8175# _LT_DECL_EGREP
8176# --------------
8177# If we don't have a new enough Autoconf to choose the best grep
8178# available, choose the one first in the user's PATH.
8179m4_defun([_LT_DECL_EGREP],
8180[AC_REQUIRE([AC_PROG_EGREP])dnl
8181AC_REQUIRE([AC_PROG_FGREP])dnl
8182test -z "$GREP" && GREP=grep
8183_LT_DECL([], [GREP], [1], [A grep program that handles long lines])
8184_LT_DECL([], [EGREP], [1], [An ERE matcher])
8185_LT_DECL([], [FGREP], [1], [A literal string matcher])
8186dnl Non-bleeding-edge autoconf doesn't subst GREP, so do it here too
8187AC_SUBST([GREP])
8188])
8189
8190
8191# _LT_DECL_OBJDUMP
8192# --------------
8193# If we don't have a new enough Autoconf to choose the best objdump
8194# available, choose the one first in the user's PATH.
8195m4_defun([_LT_DECL_OBJDUMP],
8196[AC_CHECK_TOOL(OBJDUMP, objdump, false)
8197test -z "$OBJDUMP" && OBJDUMP=objdump
8198_LT_DECL([], [OBJDUMP], [1], [An object symbol dumper])
8199AC_SUBST([OBJDUMP])
8200])
8201
8202# _LT_DECL_DLLTOOL
8203# ----------------
8204# Ensure DLLTOOL variable is set.
8205m4_defun([_LT_DECL_DLLTOOL],
8206[AC_CHECK_TOOL(DLLTOOL, dlltool, false)
8207test -z "$DLLTOOL" && DLLTOOL=dlltool
8208_LT_DECL([], [DLLTOOL], [1], [DLL creation program])
8209AC_SUBST([DLLTOOL])
8210])
8211
8212# _LT_DECL_SED
8213# ------------
8214# Check for a fully-functional sed program, that truncates
8215# as few characters as possible.  Prefer GNU sed if found.
8216m4_defun([_LT_DECL_SED],
8217[AC_PROG_SED
8218test -z "$SED" && SED=sed
8219Xsed="$SED -e 1s/^X//"
8220_LT_DECL([], [SED], [1], [A sed program that does not truncate output])
8221_LT_DECL([], [Xsed], ["\$SED -e 1s/^X//"],
8222    [Sed that helps us avoid accidentally triggering echo(1) options like -n])
8223])# _LT_DECL_SED
8224
8225m4_ifndef([AC_PROG_SED], [
8226# NOTE: This macro has been submitted for inclusion into   #
8227#  GNU Autoconf as AC_PROG_SED.  When it is available in   #
8228#  a released version of Autoconf we should remove this    #
8229#  macro and use it instead.                               #
8230
8231m4_defun([AC_PROG_SED],
8232[AC_MSG_CHECKING([for a sed that does not truncate output])
8233AC_CACHE_VAL(lt_cv_path_SED,
8234[# Loop through the user's path and test for sed and gsed.
8235# Then use that list of sed's as ones to test for truncation.
8236as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
8237for as_dir in $PATH
8238do
8239  IFS=$as_save_IFS
8240  test -z "$as_dir" && as_dir=.
8241  for lt_ac_prog in sed gsed; do
8242    for ac_exec_ext in '' $ac_executable_extensions; do
8243      if $as_executable_p "$as_dir/$lt_ac_prog$ac_exec_ext"; then
8244        lt_ac_sed_list="$lt_ac_sed_list $as_dir/$lt_ac_prog$ac_exec_ext"
8245      fi
8246    done
8247  done
8248done
8249IFS=$as_save_IFS
8250lt_ac_max=0
8251lt_ac_count=0
8252# Add /usr/xpg4/bin/sed as it is typically found on Solaris
8253# along with /bin/sed that truncates output.
8254for lt_ac_sed in $lt_ac_sed_list /usr/xpg4/bin/sed; do
8255  test ! -f "$lt_ac_sed" && continue
8256  cat /dev/null > conftest.in
8257  lt_ac_count=0
8258  echo $ECHO_N "0123456789$ECHO_C" >conftest.in
8259  # Check for GNU sed and select it if it is found.
8260  if "$lt_ac_sed" --version 2>&1 < /dev/null | grep 'GNU' > /dev/null; then
8261    lt_cv_path_SED=$lt_ac_sed
8262    break
8263  fi
8264  while true; do
8265    cat conftest.in conftest.in >conftest.tmp
8266    mv conftest.tmp conftest.in
8267    cp conftest.in conftest.nl
8268    echo >>conftest.nl
8269    $lt_ac_sed -e 's/a$//' < conftest.nl >conftest.out || break
8270    cmp -s conftest.out conftest.nl || break
8271    # 10000 chars as input seems more than enough
8272    test 10 -lt "$lt_ac_count" && break
8273    lt_ac_count=`expr $lt_ac_count + 1`
8274    if test "$lt_ac_count" -gt "$lt_ac_max"; then
8275      lt_ac_max=$lt_ac_count
8276      lt_cv_path_SED=$lt_ac_sed
8277    fi
8278  done
8279done
8280])
8281SED=$lt_cv_path_SED
8282AC_SUBST([SED])
8283AC_MSG_RESULT([$SED])
8284])#AC_PROG_SED
8285])#m4_ifndef
8286
8287# Old name:
8288AU_ALIAS([LT_AC_PROG_SED], [AC_PROG_SED])
8289dnl aclocal-1.4 backwards compatibility:
8290dnl AC_DEFUN([LT_AC_PROG_SED], [])
8291
8292
8293# _LT_CHECK_SHELL_FEATURES
8294# ------------------------
8295# Find out whether the shell is Bourne or XSI compatible,
8296# or has some other useful features.
8297m4_defun([_LT_CHECK_SHELL_FEATURES],
8298[if ( (MAIL=60; unset MAIL) || exit) >/dev/null 2>&1; then
8299  lt_unset=unset
8300else
8301  lt_unset=false
8302fi
8303_LT_DECL([], [lt_unset], [0], [whether the shell understands "unset"])dnl
8304
8305# test EBCDIC or ASCII
8306case `echo X|tr X '\101'` in
8307 A) # ASCII based system
8308    # \n is not interpreted correctly by Solaris 8 /usr/ucb/tr
8309  lt_SP2NL='tr \040 \012'
8310  lt_NL2SP='tr \015\012 \040\040'
8311  ;;
8312 *) # EBCDIC based system
8313  lt_SP2NL='tr \100 \n'
8314  lt_NL2SP='tr \r\n \100\100'
8315  ;;
8316esac
8317_LT_DECL([SP2NL], [lt_SP2NL], [1], [turn spaces into newlines])dnl
8318_LT_DECL([NL2SP], [lt_NL2SP], [1], [turn newlines into spaces])dnl
8319])# _LT_CHECK_SHELL_FEATURES
8320
8321
8322# _LT_PATH_CONVERSION_FUNCTIONS
8323# -----------------------------
8324# Determine what file name conversion functions should be used by
8325# func_to_host_file (and, implicitly, by func_to_host_path).  These are needed
8326# for certain cross-compile configurations and native mingw.
8327m4_defun([_LT_PATH_CONVERSION_FUNCTIONS],
8328[AC_REQUIRE([AC_CANONICAL_HOST])dnl
8329AC_REQUIRE([AC_CANONICAL_BUILD])dnl
8330AC_MSG_CHECKING([how to convert $build file names to $host format])
8331AC_CACHE_VAL(lt_cv_to_host_file_cmd,
8332[case $host in
8333  *-*-mingw* )
8334    case $build in
8335      *-*-mingw* ) # actually msys
8336        lt_cv_to_host_file_cmd=func_convert_file_msys_to_w32
8337        ;;
8338      *-*-cygwin* )
8339        lt_cv_to_host_file_cmd=func_convert_file_cygwin_to_w32
8340        ;;
8341      * ) # otherwise, assume *nix
8342        lt_cv_to_host_file_cmd=func_convert_file_nix_to_w32
8343        ;;
8344    esac
8345    ;;
8346  *-*-cygwin* )
8347    case $build in
8348      *-*-mingw* ) # actually msys
8349        lt_cv_to_host_file_cmd=func_convert_file_msys_to_cygwin
8350        ;;
8351      *-*-cygwin* )
8352        lt_cv_to_host_file_cmd=func_convert_file_noop
8353        ;;
8354      * ) # otherwise, assume *nix
8355        lt_cv_to_host_file_cmd=func_convert_file_nix_to_cygwin
8356        ;;
8357    esac
8358    ;;
8359  * ) # unhandled hosts (and "normal" native builds)
8360    lt_cv_to_host_file_cmd=func_convert_file_noop
8361    ;;
8362esac
8363])
8364to_host_file_cmd=$lt_cv_to_host_file_cmd
8365AC_MSG_RESULT([$lt_cv_to_host_file_cmd])
8366_LT_DECL([to_host_file_cmd], [lt_cv_to_host_file_cmd],
8367         [0], [convert $build file names to $host format])dnl
8368
8369AC_MSG_CHECKING([how to convert $build file names to toolchain format])
8370AC_CACHE_VAL(lt_cv_to_tool_file_cmd,
8371[#assume ordinary cross tools, or native build.
8372lt_cv_to_tool_file_cmd=func_convert_file_noop
8373case $host in
8374  *-*-mingw* )
8375    case $build in
8376      *-*-mingw* ) # actually msys
8377        lt_cv_to_tool_file_cmd=func_convert_file_msys_to_w32
8378        ;;
8379    esac
8380    ;;
8381esac
8382])
8383to_tool_file_cmd=$lt_cv_to_tool_file_cmd
8384AC_MSG_RESULT([$lt_cv_to_tool_file_cmd])
8385_LT_DECL([to_tool_file_cmd], [lt_cv_to_tool_file_cmd],
8386         [0], [convert $build files to toolchain format])dnl
8387])# _LT_PATH_CONVERSION_FUNCTIONS
8388
8389# Helper functions for option handling.                    -*- Autoconf -*-
8390#
8391#   Copyright (C) 2004-2005, 2007-2009, 2011-2015 Free Software
8392#   Foundation, Inc.
8393#   Written by Gary V. Vaughan, 2004
8394#
8395# This file is free software; the Free Software Foundation gives
8396# unlimited permission to copy and/or distribute it, with or without
8397# modifications, as long as this notice is preserved.
8398
8399# serial 8 ltoptions.m4
8400
8401# This is to help aclocal find these macros, as it can't see m4_define.
8402AC_DEFUN([LTOPTIONS_VERSION], [m4_if([1])])
8403
8404
8405# _LT_MANGLE_OPTION(MACRO-NAME, OPTION-NAME)
8406# ------------------------------------------
8407m4_define([_LT_MANGLE_OPTION],
8408[[_LT_OPTION_]m4_bpatsubst($1__$2, [[^a-zA-Z0-9_]], [_])])
8409
8410
8411# _LT_SET_OPTION(MACRO-NAME, OPTION-NAME)
8412# ---------------------------------------
8413# Set option OPTION-NAME for macro MACRO-NAME, and if there is a
8414# matching handler defined, dispatch to it.  Other OPTION-NAMEs are
8415# saved as a flag.
8416m4_define([_LT_SET_OPTION],
8417[m4_define(_LT_MANGLE_OPTION([$1], [$2]))dnl
8418m4_ifdef(_LT_MANGLE_DEFUN([$1], [$2]),
8419        _LT_MANGLE_DEFUN([$1], [$2]),
8420    [m4_warning([Unknown $1 option '$2'])])[]dnl
8421])
8422
8423
8424# _LT_IF_OPTION(MACRO-NAME, OPTION-NAME, IF-SET, [IF-NOT-SET])
8425# ------------------------------------------------------------
8426# Execute IF-SET if OPTION is set, IF-NOT-SET otherwise.
8427m4_define([_LT_IF_OPTION],
8428[m4_ifdef(_LT_MANGLE_OPTION([$1], [$2]), [$3], [$4])])
8429
8430
8431# _LT_UNLESS_OPTIONS(MACRO-NAME, OPTION-LIST, IF-NOT-SET)
8432# -------------------------------------------------------
8433# Execute IF-NOT-SET unless all options in OPTION-LIST for MACRO-NAME
8434# are set.
8435m4_define([_LT_UNLESS_OPTIONS],
8436[m4_foreach([_LT_Option], m4_split(m4_normalize([$2])),
8437	    [m4_ifdef(_LT_MANGLE_OPTION([$1], _LT_Option),
8438		      [m4_define([$0_found])])])[]dnl
8439m4_ifdef([$0_found], [m4_undefine([$0_found])], [$3
8440])[]dnl
8441])
8442
8443
8444# _LT_SET_OPTIONS(MACRO-NAME, OPTION-LIST)
8445# ----------------------------------------
8446# OPTION-LIST is a space-separated list of Libtool options associated
8447# with MACRO-NAME.  If any OPTION has a matching handler declared with
8448# LT_OPTION_DEFINE, dispatch to that macro; otherwise complain about
8449# the unknown option and exit.
8450m4_defun([_LT_SET_OPTIONS],
8451[# Set options
8452m4_foreach([_LT_Option], m4_split(m4_normalize([$2])),
8453    [_LT_SET_OPTION([$1], _LT_Option)])
8454
8455m4_if([$1],[LT_INIT],[
8456  dnl
8457  dnl Simply set some default values (i.e off) if boolean options were not
8458  dnl specified:
8459  _LT_UNLESS_OPTIONS([LT_INIT], [dlopen], [enable_dlopen=no
8460  ])
8461  _LT_UNLESS_OPTIONS([LT_INIT], [win32-dll], [enable_win32_dll=no
8462  ])
8463  dnl
8464  dnl If no reference was made to various pairs of opposing options, then
8465  dnl we run the default mode handler for the pair.  For example, if neither
8466  dnl 'shared' nor 'disable-shared' was passed, we enable building of shared
8467  dnl archives by default:
8468  _LT_UNLESS_OPTIONS([LT_INIT], [shared disable-shared], [_LT_ENABLE_SHARED])
8469  _LT_UNLESS_OPTIONS([LT_INIT], [static disable-static], [_LT_ENABLE_STATIC])
8470  _LT_UNLESS_OPTIONS([LT_INIT], [pic-only no-pic], [_LT_WITH_PIC])
8471  _LT_UNLESS_OPTIONS([LT_INIT], [fast-install disable-fast-install],
8472		   [_LT_ENABLE_FAST_INSTALL])
8473  _LT_UNLESS_OPTIONS([LT_INIT], [aix-soname=aix aix-soname=both aix-soname=svr4],
8474		   [_LT_WITH_AIX_SONAME([aix])])
8475  ])
8476])# _LT_SET_OPTIONS
8477
8478
8479
8480# _LT_MANGLE_DEFUN(MACRO-NAME, OPTION-NAME)
8481# -----------------------------------------
8482m4_define([_LT_MANGLE_DEFUN],
8483[[_LT_OPTION_DEFUN_]m4_bpatsubst(m4_toupper([$1__$2]), [[^A-Z0-9_]], [_])])
8484
8485
8486# LT_OPTION_DEFINE(MACRO-NAME, OPTION-NAME, CODE)
8487# -----------------------------------------------
8488m4_define([LT_OPTION_DEFINE],
8489[m4_define(_LT_MANGLE_DEFUN([$1], [$2]), [$3])[]dnl
8490])# LT_OPTION_DEFINE
8491
8492
8493# dlopen
8494# ------
8495LT_OPTION_DEFINE([LT_INIT], [dlopen], [enable_dlopen=yes
8496])
8497
8498AU_DEFUN([AC_LIBTOOL_DLOPEN],
8499[_LT_SET_OPTION([LT_INIT], [dlopen])
8500AC_DIAGNOSE([obsolete],
8501[$0: Remove this warning and the call to _LT_SET_OPTION when you
8502put the 'dlopen' option into LT_INIT's first parameter.])
8503])
8504
8505dnl aclocal-1.4 backwards compatibility:
8506dnl AC_DEFUN([AC_LIBTOOL_DLOPEN], [])
8507
8508
8509# win32-dll
8510# ---------
8511# Declare package support for building win32 dll's.
8512LT_OPTION_DEFINE([LT_INIT], [win32-dll],
8513[enable_win32_dll=yes
8514
8515case $host in
8516*-*-cygwin* | *-*-mingw* | *-*-pw32* | *-*-cegcc*)
8517  AC_CHECK_TOOL(AS, as, false)
8518  AC_CHECK_TOOL(DLLTOOL, dlltool, false)
8519  AC_CHECK_TOOL(OBJDUMP, objdump, false)
8520  ;;
8521esac
8522
8523test -z "$AS" && AS=as
8524_LT_DECL([], [AS],      [1], [Assembler program])dnl
8525
8526test -z "$DLLTOOL" && DLLTOOL=dlltool
8527_LT_DECL([], [DLLTOOL], [1], [DLL creation program])dnl
8528
8529test -z "$OBJDUMP" && OBJDUMP=objdump
8530_LT_DECL([], [OBJDUMP], [1], [Object dumper program])dnl
8531])# win32-dll
8532
8533AU_DEFUN([AC_LIBTOOL_WIN32_DLL],
8534[AC_REQUIRE([AC_CANONICAL_HOST])dnl
8535_LT_SET_OPTION([LT_INIT], [win32-dll])
8536AC_DIAGNOSE([obsolete],
8537[$0: Remove this warning and the call to _LT_SET_OPTION when you
8538put the 'win32-dll' option into LT_INIT's first parameter.])
8539])
8540
8541dnl aclocal-1.4 backwards compatibility:
8542dnl AC_DEFUN([AC_LIBTOOL_WIN32_DLL], [])
8543
8544
8545# _LT_ENABLE_SHARED([DEFAULT])
8546# ----------------------------
8547# implement the --enable-shared flag, and supports the 'shared' and
8548# 'disable-shared' LT_INIT options.
8549# DEFAULT is either 'yes' or 'no'.  If omitted, it defaults to 'yes'.
8550m4_define([_LT_ENABLE_SHARED],
8551[m4_define([_LT_ENABLE_SHARED_DEFAULT], [m4_if($1, no, no, yes)])dnl
8552AC_ARG_ENABLE([shared],
8553    [AS_HELP_STRING([--enable-shared@<:@=PKGS@:>@],
8554	[build shared libraries @<:@default=]_LT_ENABLE_SHARED_DEFAULT[@:>@])],
8555    [p=${PACKAGE-default}
8556    case $enableval in
8557    yes) enable_shared=yes ;;
8558    no) enable_shared=no ;;
8559    *)
8560      enable_shared=no
8561      # Look at the argument we got.  We use all the common list separators.
8562      lt_save_ifs=$IFS; IFS=$IFS$PATH_SEPARATOR,
8563      for pkg in $enableval; do
8564	IFS=$lt_save_ifs
8565	if test "X$pkg" = "X$p"; then
8566	  enable_shared=yes
8567	fi
8568      done
8569      IFS=$lt_save_ifs
8570      ;;
8571    esac],
8572    [enable_shared=]_LT_ENABLE_SHARED_DEFAULT)
8573
8574    _LT_DECL([build_libtool_libs], [enable_shared], [0],
8575	[Whether or not to build shared libraries])
8576])# _LT_ENABLE_SHARED
8577
8578LT_OPTION_DEFINE([LT_INIT], [shared], [_LT_ENABLE_SHARED([yes])])
8579LT_OPTION_DEFINE([LT_INIT], [disable-shared], [_LT_ENABLE_SHARED([no])])
8580
8581# Old names:
8582AC_DEFUN([AC_ENABLE_SHARED],
8583[_LT_SET_OPTION([LT_INIT], m4_if([$1], [no], [disable-])[shared])
8584])
8585
8586AC_DEFUN([AC_DISABLE_SHARED],
8587[_LT_SET_OPTION([LT_INIT], [disable-shared])
8588])
8589
8590AU_DEFUN([AM_ENABLE_SHARED], [AC_ENABLE_SHARED($@)])
8591AU_DEFUN([AM_DISABLE_SHARED], [AC_DISABLE_SHARED($@)])
8592
8593dnl aclocal-1.4 backwards compatibility:
8594dnl AC_DEFUN([AM_ENABLE_SHARED], [])
8595dnl AC_DEFUN([AM_DISABLE_SHARED], [])
8596
8597
8598
8599# _LT_ENABLE_STATIC([DEFAULT])
8600# ----------------------------
8601# implement the --enable-static flag, and support the 'static' and
8602# 'disable-static' LT_INIT options.
8603# DEFAULT is either 'yes' or 'no'.  If omitted, it defaults to 'yes'.
8604m4_define([_LT_ENABLE_STATIC],
8605[m4_define([_LT_ENABLE_STATIC_DEFAULT], [m4_if($1, no, no, yes)])dnl
8606AC_ARG_ENABLE([static],
8607    [AS_HELP_STRING([--enable-static@<:@=PKGS@:>@],
8608	[build static libraries @<:@default=]_LT_ENABLE_STATIC_DEFAULT[@:>@])],
8609    [p=${PACKAGE-default}
8610    case $enableval in
8611    yes) enable_static=yes ;;
8612    no) enable_static=no ;;
8613    *)
8614     enable_static=no
8615      # Look at the argument we got.  We use all the common list separators.
8616      lt_save_ifs=$IFS; IFS=$IFS$PATH_SEPARATOR,
8617      for pkg in $enableval; do
8618	IFS=$lt_save_ifs
8619	if test "X$pkg" = "X$p"; then
8620	  enable_static=yes
8621	fi
8622      done
8623      IFS=$lt_save_ifs
8624      ;;
8625    esac],
8626    [enable_static=]_LT_ENABLE_STATIC_DEFAULT)
8627
8628    _LT_DECL([build_old_libs], [enable_static], [0],
8629	[Whether or not to build static libraries])
8630])# _LT_ENABLE_STATIC
8631
8632LT_OPTION_DEFINE([LT_INIT], [static], [_LT_ENABLE_STATIC([yes])])
8633LT_OPTION_DEFINE([LT_INIT], [disable-static], [_LT_ENABLE_STATIC([no])])
8634
8635# Old names:
8636AC_DEFUN([AC_ENABLE_STATIC],
8637[_LT_SET_OPTION([LT_INIT], m4_if([$1], [no], [disable-])[static])
8638])
8639
8640AC_DEFUN([AC_DISABLE_STATIC],
8641[_LT_SET_OPTION([LT_INIT], [disable-static])
8642])
8643
8644AU_DEFUN([AM_ENABLE_STATIC], [AC_ENABLE_STATIC($@)])
8645AU_DEFUN([AM_DISABLE_STATIC], [AC_DISABLE_STATIC($@)])
8646
8647dnl aclocal-1.4 backwards compatibility:
8648dnl AC_DEFUN([AM_ENABLE_STATIC], [])
8649dnl AC_DEFUN([AM_DISABLE_STATIC], [])
8650
8651
8652
8653# _LT_ENABLE_FAST_INSTALL([DEFAULT])
8654# ----------------------------------
8655# implement the --enable-fast-install flag, and support the 'fast-install'
8656# and 'disable-fast-install' LT_INIT options.
8657# DEFAULT is either 'yes' or 'no'.  If omitted, it defaults to 'yes'.
8658m4_define([_LT_ENABLE_FAST_INSTALL],
8659[m4_define([_LT_ENABLE_FAST_INSTALL_DEFAULT], [m4_if($1, no, no, yes)])dnl
8660AC_ARG_ENABLE([fast-install],
8661    [AS_HELP_STRING([--enable-fast-install@<:@=PKGS@:>@],
8662    [optimize for fast installation @<:@default=]_LT_ENABLE_FAST_INSTALL_DEFAULT[@:>@])],
8663    [p=${PACKAGE-default}
8664    case $enableval in
8665    yes) enable_fast_install=yes ;;
8666    no) enable_fast_install=no ;;
8667    *)
8668      enable_fast_install=no
8669      # Look at the argument we got.  We use all the common list separators.
8670      lt_save_ifs=$IFS; IFS=$IFS$PATH_SEPARATOR,
8671      for pkg in $enableval; do
8672	IFS=$lt_save_ifs
8673	if test "X$pkg" = "X$p"; then
8674	  enable_fast_install=yes
8675	fi
8676      done
8677      IFS=$lt_save_ifs
8678      ;;
8679    esac],
8680    [enable_fast_install=]_LT_ENABLE_FAST_INSTALL_DEFAULT)
8681
8682_LT_DECL([fast_install], [enable_fast_install], [0],
8683	 [Whether or not to optimize for fast installation])dnl
8684])# _LT_ENABLE_FAST_INSTALL
8685
8686LT_OPTION_DEFINE([LT_INIT], [fast-install], [_LT_ENABLE_FAST_INSTALL([yes])])
8687LT_OPTION_DEFINE([LT_INIT], [disable-fast-install], [_LT_ENABLE_FAST_INSTALL([no])])
8688
8689# Old names:
8690AU_DEFUN([AC_ENABLE_FAST_INSTALL],
8691[_LT_SET_OPTION([LT_INIT], m4_if([$1], [no], [disable-])[fast-install])
8692AC_DIAGNOSE([obsolete],
8693[$0: Remove this warning and the call to _LT_SET_OPTION when you put
8694the 'fast-install' option into LT_INIT's first parameter.])
8695])
8696
8697AU_DEFUN([AC_DISABLE_FAST_INSTALL],
8698[_LT_SET_OPTION([LT_INIT], [disable-fast-install])
8699AC_DIAGNOSE([obsolete],
8700[$0: Remove this warning and the call to _LT_SET_OPTION when you put
8701the 'disable-fast-install' option into LT_INIT's first parameter.])
8702])
8703
8704dnl aclocal-1.4 backwards compatibility:
8705dnl AC_DEFUN([AC_ENABLE_FAST_INSTALL], [])
8706dnl AC_DEFUN([AM_DISABLE_FAST_INSTALL], [])
8707
8708
8709# _LT_WITH_AIX_SONAME([DEFAULT])
8710# ----------------------------------
8711# implement the --with-aix-soname flag, and support the `aix-soname=aix'
8712# and `aix-soname=both' and `aix-soname=svr4' LT_INIT options. DEFAULT
8713# is either `aix', `both' or `svr4'.  If omitted, it defaults to `aix'.
8714m4_define([_LT_WITH_AIX_SONAME],
8715[m4_define([_LT_WITH_AIX_SONAME_DEFAULT], [m4_if($1, svr4, svr4, m4_if($1, both, both, aix))])dnl
8716shared_archive_member_spec=
8717case $host,$enable_shared in
8718power*-*-aix[[5-9]]*,yes)
8719  AC_MSG_CHECKING([which variant of shared library versioning to provide])
8720  AC_ARG_WITH([aix-soname],
8721    [AS_HELP_STRING([--with-aix-soname=aix|svr4|both],
8722      [shared library versioning (aka "SONAME") variant to provide on AIX, @<:@default=]_LT_WITH_AIX_SONAME_DEFAULT[@:>@.])],
8723    [case $withval in
8724    aix|svr4|both)
8725      ;;
8726    *)
8727      AC_MSG_ERROR([Unknown argument to --with-aix-soname])
8728      ;;
8729    esac
8730    lt_cv_with_aix_soname=$with_aix_soname],
8731    [AC_CACHE_VAL([lt_cv_with_aix_soname],
8732      [lt_cv_with_aix_soname=]_LT_WITH_AIX_SONAME_DEFAULT)
8733    with_aix_soname=$lt_cv_with_aix_soname])
8734  AC_MSG_RESULT([$with_aix_soname])
8735  if test aix != "$with_aix_soname"; then
8736    # For the AIX way of multilib, we name the shared archive member
8737    # based on the bitwidth used, traditionally 'shr.o' or 'shr_64.o',
8738    # and 'shr.imp' or 'shr_64.imp', respectively, for the Import File.
8739    # Even when GNU compilers ignore OBJECT_MODE but need '-maix64' flag,
8740    # the AIX toolchain works better with OBJECT_MODE set (default 32).
8741    if test 64 = "${OBJECT_MODE-32}"; then
8742      shared_archive_member_spec=shr_64
8743    else
8744      shared_archive_member_spec=shr
8745    fi
8746  fi
8747  ;;
8748*)
8749  with_aix_soname=aix
8750  ;;
8751esac
8752
8753_LT_DECL([], [shared_archive_member_spec], [0],
8754    [Shared archive member basename, for filename based shared library versioning on AIX])dnl
8755])# _LT_WITH_AIX_SONAME
8756
8757LT_OPTION_DEFINE([LT_INIT], [aix-soname=aix], [_LT_WITH_AIX_SONAME([aix])])
8758LT_OPTION_DEFINE([LT_INIT], [aix-soname=both], [_LT_WITH_AIX_SONAME([both])])
8759LT_OPTION_DEFINE([LT_INIT], [aix-soname=svr4], [_LT_WITH_AIX_SONAME([svr4])])
8760
8761
8762# _LT_WITH_PIC([MODE])
8763# --------------------
8764# implement the --with-pic flag, and support the 'pic-only' and 'no-pic'
8765# LT_INIT options.
8766# MODE is either 'yes' or 'no'.  If omitted, it defaults to 'both'.
8767m4_define([_LT_WITH_PIC],
8768[AC_ARG_WITH([pic],
8769    [AS_HELP_STRING([--with-pic@<:@=PKGS@:>@],
8770	[try to use only PIC/non-PIC objects @<:@default=use both@:>@])],
8771    [lt_p=${PACKAGE-default}
8772    case $withval in
8773    yes|no) pic_mode=$withval ;;
8774    *)
8775      pic_mode=default
8776      # Look at the argument we got.  We use all the common list separators.
8777      lt_save_ifs=$IFS; IFS=$IFS$PATH_SEPARATOR,
8778      for lt_pkg in $withval; do
8779	IFS=$lt_save_ifs
8780	if test "X$lt_pkg" = "X$lt_p"; then
8781	  pic_mode=yes
8782	fi
8783      done
8784      IFS=$lt_save_ifs
8785      ;;
8786    esac],
8787    [pic_mode=m4_default([$1], [default])])
8788
8789_LT_DECL([], [pic_mode], [0], [What type of objects to build])dnl
8790])# _LT_WITH_PIC
8791
8792LT_OPTION_DEFINE([LT_INIT], [pic-only], [_LT_WITH_PIC([yes])])
8793LT_OPTION_DEFINE([LT_INIT], [no-pic], [_LT_WITH_PIC([no])])
8794
8795# Old name:
8796AU_DEFUN([AC_LIBTOOL_PICMODE],
8797[_LT_SET_OPTION([LT_INIT], [pic-only])
8798AC_DIAGNOSE([obsolete],
8799[$0: Remove this warning and the call to _LT_SET_OPTION when you
8800put the 'pic-only' option into LT_INIT's first parameter.])
8801])
8802
8803dnl aclocal-1.4 backwards compatibility:
8804dnl AC_DEFUN([AC_LIBTOOL_PICMODE], [])
8805
8806
8807m4_define([_LTDL_MODE], [])
8808LT_OPTION_DEFINE([LTDL_INIT], [nonrecursive],
8809		 [m4_define([_LTDL_MODE], [nonrecursive])])
8810LT_OPTION_DEFINE([LTDL_INIT], [recursive],
8811		 [m4_define([_LTDL_MODE], [recursive])])
8812LT_OPTION_DEFINE([LTDL_INIT], [subproject],
8813		 [m4_define([_LTDL_MODE], [subproject])])
8814
8815m4_define([_LTDL_TYPE], [])
8816LT_OPTION_DEFINE([LTDL_INIT], [installable],
8817		 [m4_define([_LTDL_TYPE], [installable])])
8818LT_OPTION_DEFINE([LTDL_INIT], [convenience],
8819		 [m4_define([_LTDL_TYPE], [convenience])])
8820
8821# ltsugar.m4 -- libtool m4 base layer.                         -*-Autoconf-*-
8822#
8823# Copyright (C) 2004-2005, 2007-2008, 2011-2015 Free Software
8824# Foundation, Inc.
8825# Written by Gary V. Vaughan, 2004
8826#
8827# This file is free software; the Free Software Foundation gives
8828# unlimited permission to copy and/or distribute it, with or without
8829# modifications, as long as this notice is preserved.
8830
8831# serial 6 ltsugar.m4
8832
8833# This is to help aclocal find these macros, as it can't see m4_define.
8834AC_DEFUN([LTSUGAR_VERSION], [m4_if([0.1])])
8835
8836
8837# lt_join(SEP, ARG1, [ARG2...])
8838# -----------------------------
8839# Produce ARG1SEPARG2...SEPARGn, omitting [] arguments and their
8840# associated separator.
8841# Needed until we can rely on m4_join from Autoconf 2.62, since all earlier
8842# versions in m4sugar had bugs.
8843m4_define([lt_join],
8844[m4_if([$#], [1], [],
8845       [$#], [2], [[$2]],
8846       [m4_if([$2], [], [], [[$2]_])$0([$1], m4_shift(m4_shift($@)))])])
8847m4_define([_lt_join],
8848[m4_if([$#$2], [2], [],
8849       [m4_if([$2], [], [], [[$1$2]])$0([$1], m4_shift(m4_shift($@)))])])
8850
8851
8852# lt_car(LIST)
8853# lt_cdr(LIST)
8854# ------------
8855# Manipulate m4 lists.
8856# These macros are necessary as long as will still need to support
8857# Autoconf-2.59, which quotes differently.
8858m4_define([lt_car], [[$1]])
8859m4_define([lt_cdr],
8860[m4_if([$#], 0, [m4_fatal([$0: cannot be called without arguments])],
8861       [$#], 1, [],
8862       [m4_dquote(m4_shift($@))])])
8863m4_define([lt_unquote], $1)
8864
8865
8866# lt_append(MACRO-NAME, STRING, [SEPARATOR])
8867# ------------------------------------------
8868# Redefine MACRO-NAME to hold its former content plus 'SEPARATOR''STRING'.
8869# Note that neither SEPARATOR nor STRING are expanded; they are appended
8870# to MACRO-NAME as is (leaving the expansion for when MACRO-NAME is invoked).
8871# No SEPARATOR is output if MACRO-NAME was previously undefined (different
8872# than defined and empty).
8873#
8874# This macro is needed until we can rely on Autoconf 2.62, since earlier
8875# versions of m4sugar mistakenly expanded SEPARATOR but not STRING.
8876m4_define([lt_append],
8877[m4_define([$1],
8878	   m4_ifdef([$1], [m4_defn([$1])[$3]])[$2])])
8879
8880
8881
8882# lt_combine(SEP, PREFIX-LIST, INFIX, SUFFIX1, [SUFFIX2...])
8883# ----------------------------------------------------------
8884# Produce a SEP delimited list of all paired combinations of elements of
8885# PREFIX-LIST with SUFFIX1 through SUFFIXn.  Each element of the list
8886# has the form PREFIXmINFIXSUFFIXn.
8887# Needed until we can rely on m4_combine added in Autoconf 2.62.
8888m4_define([lt_combine],
8889[m4_if(m4_eval([$# > 3]), [1],
8890       [m4_pushdef([_Lt_sep], [m4_define([_Lt_sep], m4_defn([lt_car]))])]]dnl
8891[[m4_foreach([_Lt_prefix], [$2],
8892	     [m4_foreach([_Lt_suffix],
8893		]m4_dquote(m4_dquote(m4_shift(m4_shift(m4_shift($@)))))[,
8894	[_Lt_sep([$1])[]m4_defn([_Lt_prefix])[$3]m4_defn([_Lt_suffix])])])])])
8895
8896
8897# lt_if_append_uniq(MACRO-NAME, VARNAME, [SEPARATOR], [UNIQ], [NOT-UNIQ])
8898# -----------------------------------------------------------------------
8899# Iff MACRO-NAME does not yet contain VARNAME, then append it (delimited
8900# by SEPARATOR if supplied) and expand UNIQ, else NOT-UNIQ.
8901m4_define([lt_if_append_uniq],
8902[m4_ifdef([$1],
8903	  [m4_if(m4_index([$3]m4_defn([$1])[$3], [$3$2$3]), [-1],
8904		 [lt_append([$1], [$2], [$3])$4],
8905		 [$5])],
8906	  [lt_append([$1], [$2], [$3])$4])])
8907
8908
8909# lt_dict_add(DICT, KEY, VALUE)
8910# -----------------------------
8911m4_define([lt_dict_add],
8912[m4_define([$1($2)], [$3])])
8913
8914
8915# lt_dict_add_subkey(DICT, KEY, SUBKEY, VALUE)
8916# --------------------------------------------
8917m4_define([lt_dict_add_subkey],
8918[m4_define([$1($2:$3)], [$4])])
8919
8920
8921# lt_dict_fetch(DICT, KEY, [SUBKEY])
8922# ----------------------------------
8923m4_define([lt_dict_fetch],
8924[m4_ifval([$3],
8925	m4_ifdef([$1($2:$3)], [m4_defn([$1($2:$3)])]),
8926    m4_ifdef([$1($2)], [m4_defn([$1($2)])]))])
8927
8928
8929# lt_if_dict_fetch(DICT, KEY, [SUBKEY], VALUE, IF-TRUE, [IF-FALSE])
8930# -----------------------------------------------------------------
8931m4_define([lt_if_dict_fetch],
8932[m4_if(lt_dict_fetch([$1], [$2], [$3]), [$4],
8933	[$5],
8934    [$6])])
8935
8936
8937# lt_dict_filter(DICT, [SUBKEY], VALUE, [SEPARATOR], KEY, [...])
8938# --------------------------------------------------------------
8939m4_define([lt_dict_filter],
8940[m4_if([$5], [], [],
8941  [lt_join(m4_quote(m4_default([$4], [[, ]])),
8942           lt_unquote(m4_split(m4_normalize(m4_foreach(_Lt_key, lt_car([m4_shiftn(4, $@)]),
8943		      [lt_if_dict_fetch([$1], _Lt_key, [$2], [$3], [_Lt_key ])])))))])[]dnl
8944])
8945
8946# ltversion.m4 -- version numbers			-*- Autoconf -*-
8947#
8948#   Copyright (C) 2004, 2011-2015 Free Software Foundation, Inc.
8949#   Written by Scott James Remnant, 2004
8950#
8951# This file is free software; the Free Software Foundation gives
8952# unlimited permission to copy and/or distribute it, with or without
8953# modifications, as long as this notice is preserved.
8954
8955# @configure_input@
8956
8957# serial 4179 ltversion.m4
8958# This file is part of GNU Libtool
8959
8960m4_define([LT_PACKAGE_VERSION], [2.4.6])
8961m4_define([LT_PACKAGE_REVISION], [2.4.6])
8962
8963AC_DEFUN([LTVERSION_VERSION],
8964[macro_version='2.4.6'
8965macro_revision='2.4.6'
8966_LT_DECL(, macro_version, 0, [Which release of libtool.m4 was used?])
8967_LT_DECL(, macro_revision, 0)
8968])
8969
8970# lt~obsolete.m4 -- aclocal satisfying obsolete definitions.    -*-Autoconf-*-
8971#
8972#   Copyright (C) 2004-2005, 2007, 2009, 2011-2015 Free Software
8973#   Foundation, Inc.
8974#   Written by Scott James Remnant, 2004.
8975#
8976# This file is free software; the Free Software Foundation gives
8977# unlimited permission to copy and/or distribute it, with or without
8978# modifications, as long as this notice is preserved.
8979
8980# serial 5 lt~obsolete.m4
8981
8982# These exist entirely to fool aclocal when bootstrapping libtool.
8983#
8984# In the past libtool.m4 has provided macros via AC_DEFUN (or AU_DEFUN),
8985# which have later been changed to m4_define as they aren't part of the
8986# exported API, or moved to Autoconf or Automake where they belong.
8987#
8988# The trouble is, aclocal is a bit thick.  It'll see the old AC_DEFUN
8989# in /usr/share/aclocal/libtool.m4 and remember it, then when it sees us
8990# using a macro with the same name in our local m4/libtool.m4 it'll
8991# pull the old libtool.m4 in (it doesn't see our shiny new m4_define
8992# and doesn't know about Autoconf macros at all.)
8993#
8994# So we provide this file, which has a silly filename so it's always
8995# included after everything else.  This provides aclocal with the
8996# AC_DEFUNs it wants, but when m4 processes it, it doesn't do anything
8997# because those macros already exist, or will be overwritten later.
8998# We use AC_DEFUN over AU_DEFUN for compatibility with aclocal-1.6.
8999#
9000# Anytime we withdraw an AC_DEFUN or AU_DEFUN, remember to add it here.
9001# Yes, that means every name once taken will need to remain here until
9002# we give up compatibility with versions before 1.7, at which point
9003# we need to keep only those names which we still refer to.
9004
9005# This is to help aclocal find these macros, as it can't see m4_define.
9006AC_DEFUN([LTOBSOLETE_VERSION], [m4_if([1])])
9007
9008m4_ifndef([AC_LIBTOOL_LINKER_OPTION],	[AC_DEFUN([AC_LIBTOOL_LINKER_OPTION])])
9009m4_ifndef([AC_PROG_EGREP],		[AC_DEFUN([AC_PROG_EGREP])])
9010m4_ifndef([_LT_AC_PROG_ECHO_BACKSLASH],	[AC_DEFUN([_LT_AC_PROG_ECHO_BACKSLASH])])
9011m4_ifndef([_LT_AC_SHELL_INIT],		[AC_DEFUN([_LT_AC_SHELL_INIT])])
9012m4_ifndef([_LT_AC_SYS_LIBPATH_AIX],	[AC_DEFUN([_LT_AC_SYS_LIBPATH_AIX])])
9013m4_ifndef([_LT_PROG_LTMAIN],		[AC_DEFUN([_LT_PROG_LTMAIN])])
9014m4_ifndef([_LT_AC_TAGVAR],		[AC_DEFUN([_LT_AC_TAGVAR])])
9015m4_ifndef([AC_LTDL_ENABLE_INSTALL],	[AC_DEFUN([AC_LTDL_ENABLE_INSTALL])])
9016m4_ifndef([AC_LTDL_PREOPEN],		[AC_DEFUN([AC_LTDL_PREOPEN])])
9017m4_ifndef([_LT_AC_SYS_COMPILER],	[AC_DEFUN([_LT_AC_SYS_COMPILER])])
9018m4_ifndef([_LT_AC_LOCK],		[AC_DEFUN([_LT_AC_LOCK])])
9019m4_ifndef([AC_LIBTOOL_SYS_OLD_ARCHIVE],	[AC_DEFUN([AC_LIBTOOL_SYS_OLD_ARCHIVE])])
9020m4_ifndef([_LT_AC_TRY_DLOPEN_SELF],	[AC_DEFUN([_LT_AC_TRY_DLOPEN_SELF])])
9021m4_ifndef([AC_LIBTOOL_PROG_CC_C_O],	[AC_DEFUN([AC_LIBTOOL_PROG_CC_C_O])])
9022m4_ifndef([AC_LIBTOOL_SYS_HARD_LINK_LOCKS], [AC_DEFUN([AC_LIBTOOL_SYS_HARD_LINK_LOCKS])])
9023m4_ifndef([AC_LIBTOOL_OBJDIR],		[AC_DEFUN([AC_LIBTOOL_OBJDIR])])
9024m4_ifndef([AC_LTDL_OBJDIR],		[AC_DEFUN([AC_LTDL_OBJDIR])])
9025m4_ifndef([AC_LIBTOOL_PROG_LD_HARDCODE_LIBPATH], [AC_DEFUN([AC_LIBTOOL_PROG_LD_HARDCODE_LIBPATH])])
9026m4_ifndef([AC_LIBTOOL_SYS_LIB_STRIP],	[AC_DEFUN([AC_LIBTOOL_SYS_LIB_STRIP])])
9027m4_ifndef([AC_PATH_MAGIC],		[AC_DEFUN([AC_PATH_MAGIC])])
9028m4_ifndef([AC_PROG_LD_GNU],		[AC_DEFUN([AC_PROG_LD_GNU])])
9029m4_ifndef([AC_PROG_LD_RELOAD_FLAG],	[AC_DEFUN([AC_PROG_LD_RELOAD_FLAG])])
9030m4_ifndef([AC_DEPLIBS_CHECK_METHOD],	[AC_DEFUN([AC_DEPLIBS_CHECK_METHOD])])
9031m4_ifndef([AC_LIBTOOL_PROG_COMPILER_NO_RTTI], [AC_DEFUN([AC_LIBTOOL_PROG_COMPILER_NO_RTTI])])
9032m4_ifndef([AC_LIBTOOL_SYS_GLOBAL_SYMBOL_PIPE], [AC_DEFUN([AC_LIBTOOL_SYS_GLOBAL_SYMBOL_PIPE])])
9033m4_ifndef([AC_LIBTOOL_PROG_COMPILER_PIC], [AC_DEFUN([AC_LIBTOOL_PROG_COMPILER_PIC])])
9034m4_ifndef([AC_LIBTOOL_PROG_LD_SHLIBS],	[AC_DEFUN([AC_LIBTOOL_PROG_LD_SHLIBS])])
9035m4_ifndef([AC_LIBTOOL_POSTDEP_PREDEP],	[AC_DEFUN([AC_LIBTOOL_POSTDEP_PREDEP])])
9036m4_ifndef([LT_AC_PROG_EGREP],		[AC_DEFUN([LT_AC_PROG_EGREP])])
9037m4_ifndef([LT_AC_PROG_SED],		[AC_DEFUN([LT_AC_PROG_SED])])
9038m4_ifndef([_LT_CC_BASENAME],		[AC_DEFUN([_LT_CC_BASENAME])])
9039m4_ifndef([_LT_COMPILER_BOILERPLATE],	[AC_DEFUN([_LT_COMPILER_BOILERPLATE])])
9040m4_ifndef([_LT_LINKER_BOILERPLATE],	[AC_DEFUN([_LT_LINKER_BOILERPLATE])])
9041m4_ifndef([_AC_PROG_LIBTOOL],		[AC_DEFUN([_AC_PROG_LIBTOOL])])
9042m4_ifndef([AC_LIBTOOL_SETUP],		[AC_DEFUN([AC_LIBTOOL_SETUP])])
9043m4_ifndef([_LT_AC_CHECK_DLFCN],		[AC_DEFUN([_LT_AC_CHECK_DLFCN])])
9044m4_ifndef([AC_LIBTOOL_SYS_DYNAMIC_LINKER],	[AC_DEFUN([AC_LIBTOOL_SYS_DYNAMIC_LINKER])])
9045m4_ifndef([_LT_AC_TAGCONFIG],		[AC_DEFUN([_LT_AC_TAGCONFIG])])
9046m4_ifndef([AC_DISABLE_FAST_INSTALL],	[AC_DEFUN([AC_DISABLE_FAST_INSTALL])])
9047m4_ifndef([_LT_AC_LANG_CXX],		[AC_DEFUN([_LT_AC_LANG_CXX])])
9048m4_ifndef([_LT_AC_LANG_F77],		[AC_DEFUN([_LT_AC_LANG_F77])])
9049m4_ifndef([_LT_AC_LANG_GCJ],		[AC_DEFUN([_LT_AC_LANG_GCJ])])
9050m4_ifndef([AC_LIBTOOL_LANG_C_CONFIG],	[AC_DEFUN([AC_LIBTOOL_LANG_C_CONFIG])])
9051m4_ifndef([_LT_AC_LANG_C_CONFIG],	[AC_DEFUN([_LT_AC_LANG_C_CONFIG])])
9052m4_ifndef([AC_LIBTOOL_LANG_CXX_CONFIG],	[AC_DEFUN([AC_LIBTOOL_LANG_CXX_CONFIG])])
9053m4_ifndef([_LT_AC_LANG_CXX_CONFIG],	[AC_DEFUN([_LT_AC_LANG_CXX_CONFIG])])
9054m4_ifndef([AC_LIBTOOL_LANG_F77_CONFIG],	[AC_DEFUN([AC_LIBTOOL_LANG_F77_CONFIG])])
9055m4_ifndef([_LT_AC_LANG_F77_CONFIG],	[AC_DEFUN([_LT_AC_LANG_F77_CONFIG])])
9056m4_ifndef([AC_LIBTOOL_LANG_GCJ_CONFIG],	[AC_DEFUN([AC_LIBTOOL_LANG_GCJ_CONFIG])])
9057m4_ifndef([_LT_AC_LANG_GCJ_CONFIG],	[AC_DEFUN([_LT_AC_LANG_GCJ_CONFIG])])
9058m4_ifndef([AC_LIBTOOL_LANG_RC_CONFIG],	[AC_DEFUN([AC_LIBTOOL_LANG_RC_CONFIG])])
9059m4_ifndef([_LT_AC_LANG_RC_CONFIG],	[AC_DEFUN([_LT_AC_LANG_RC_CONFIG])])
9060m4_ifndef([AC_LIBTOOL_CONFIG],		[AC_DEFUN([AC_LIBTOOL_CONFIG])])
9061m4_ifndef([_LT_AC_FILE_LTDLL_C],	[AC_DEFUN([_LT_AC_FILE_LTDLL_C])])
9062m4_ifndef([_LT_REQUIRED_DARWIN_CHECKS],	[AC_DEFUN([_LT_REQUIRED_DARWIN_CHECKS])])
9063m4_ifndef([_LT_AC_PROG_CXXCPP],		[AC_DEFUN([_LT_AC_PROG_CXXCPP])])
9064m4_ifndef([_LT_PREPARE_SED_QUOTE_VARS],	[AC_DEFUN([_LT_PREPARE_SED_QUOTE_VARS])])
9065m4_ifndef([_LT_PROG_ECHO_BACKSLASH],	[AC_DEFUN([_LT_PROG_ECHO_BACKSLASH])])
9066m4_ifndef([_LT_PROG_F77],		[AC_DEFUN([_LT_PROG_F77])])
9067m4_ifndef([_LT_PROG_FC],		[AC_DEFUN([_LT_PROG_FC])])
9068m4_ifndef([_LT_PROG_CXX],		[AC_DEFUN([_LT_PROG_CXX])])
9069
9070dnl pkg.m4 - Macros to locate and utilise pkg-config.   -*- Autoconf -*-
9071dnl serial 11 (pkg-config-0.29.1)
9072dnl
9073dnl Copyright © 2004 Scott James Remnant <scott@netsplit.com>.
9074dnl Copyright © 2012-2015 Dan Nicholson <dbn.lists@gmail.com>
9075dnl
9076dnl This program is free software; you can redistribute it and/or modify
9077dnl it under the terms of the GNU General Public License as published by
9078dnl the Free Software Foundation; either version 2 of the License, or
9079dnl (at your option) any later version.
9080dnl
9081dnl This program is distributed in the hope that it will be useful, but
9082dnl WITHOUT ANY WARRANTY; without even the implied warranty of
9083dnl MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
9084dnl General Public License for more details.
9085dnl
9086dnl You should have received a copy of the GNU General Public License
9087dnl along with this program; if not, write to the Free Software
9088dnl Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA
9089dnl 02111-1307, USA.
9090dnl
9091dnl As a special exception to the GNU General Public License, if you
9092dnl distribute this file as part of a program that contains a
9093dnl configuration script generated by Autoconf, you may include it under
9094dnl the same distribution terms that you use for the rest of that
9095dnl program.
9096
9097dnl PKG_PREREQ(MIN-VERSION)
9098dnl -----------------------
9099dnl Since: 0.29
9100dnl
9101dnl Verify that the version of the pkg-config macros are at least
9102dnl MIN-VERSION. Unlike PKG_PROG_PKG_CONFIG, which checks the user's
9103dnl installed version of pkg-config, this checks the developer's version
9104dnl of pkg.m4 when generating configure.
9105dnl
9106dnl To ensure that this macro is defined, also add:
9107dnl m4_ifndef([PKG_PREREQ],
9108dnl     [m4_fatal([must install pkg-config 0.29 or later before running autoconf/autogen])])
9109dnl
9110dnl See the "Since" comment for each macro you use to see what version
9111dnl of the macros you require.
9112m4_defun([PKG_PREREQ],
9113[m4_define([PKG_MACROS_VERSION], [0.29.1])
9114m4_if(m4_version_compare(PKG_MACROS_VERSION, [$1]), -1,
9115    [m4_fatal([pkg.m4 version $1 or higher is required but ]PKG_MACROS_VERSION[ found])])
9116])dnl PKG_PREREQ
9117
9118dnl PKG_PROG_PKG_CONFIG([MIN-VERSION])
9119dnl ----------------------------------
9120dnl Since: 0.16
9121dnl
9122dnl Search for the pkg-config tool and set the PKG_CONFIG variable to
9123dnl first found in the path. Checks that the version of pkg-config found
9124dnl is at least MIN-VERSION. If MIN-VERSION is not specified, 0.9.0 is
9125dnl used since that's the first version where most current features of
9126dnl pkg-config existed.
9127AC_DEFUN([PKG_PROG_PKG_CONFIG],
9128[m4_pattern_forbid([^_?PKG_[A-Z_]+$])
9129m4_pattern_allow([^PKG_CONFIG(_(PATH|LIBDIR|SYSROOT_DIR|ALLOW_SYSTEM_(CFLAGS|LIBS)))?$])
9130m4_pattern_allow([^PKG_CONFIG_(DISABLE_UNINSTALLED|TOP_BUILD_DIR|DEBUG_SPEW)$])
9131AC_ARG_VAR([PKG_CONFIG], [path to pkg-config utility])
9132AC_ARG_VAR([PKG_CONFIG_PATH], [directories to add to pkg-config's search path])
9133AC_ARG_VAR([PKG_CONFIG_LIBDIR], [path overriding pkg-config's built-in search path])
9134
9135if test "x$ac_cv_env_PKG_CONFIG_set" != "xset"; then
9136	AC_PATH_TOOL([PKG_CONFIG], [pkg-config])
9137fi
9138if test -n "$PKG_CONFIG"; then
9139	_pkg_min_version=m4_default([$1], [0.9.0])
9140	AC_MSG_CHECKING([pkg-config is at least version $_pkg_min_version])
9141	if $PKG_CONFIG --atleast-pkgconfig-version $_pkg_min_version; then
9142		AC_MSG_RESULT([yes])
9143	else
9144		AC_MSG_RESULT([no])
9145		PKG_CONFIG=""
9146	fi
9147fi[]dnl
9148])dnl PKG_PROG_PKG_CONFIG
9149
9150dnl PKG_CHECK_EXISTS(MODULES, [ACTION-IF-FOUND], [ACTION-IF-NOT-FOUND])
9151dnl -------------------------------------------------------------------
9152dnl Since: 0.18
9153dnl
9154dnl Check to see whether a particular set of modules exists. Similar to
9155dnl PKG_CHECK_MODULES(), but does not set variables or print errors.
9156dnl
9157dnl Please remember that m4 expands AC_REQUIRE([PKG_PROG_PKG_CONFIG])
9158dnl only at the first occurence in configure.ac, so if the first place
9159dnl it's called might be skipped (such as if it is within an "if", you
9160dnl have to call PKG_CHECK_EXISTS manually
9161AC_DEFUN([PKG_CHECK_EXISTS],
9162[AC_REQUIRE([PKG_PROG_PKG_CONFIG])dnl
9163if test -n "$PKG_CONFIG" && \
9164    AC_RUN_LOG([$PKG_CONFIG --exists --print-errors "$1"]); then
9165  m4_default([$2], [:])
9166m4_ifvaln([$3], [else
9167  $3])dnl
9168fi])
9169
9170dnl _PKG_CONFIG([VARIABLE], [COMMAND], [MODULES])
9171dnl ---------------------------------------------
9172dnl Internal wrapper calling pkg-config via PKG_CONFIG and setting
9173dnl pkg_failed based on the result.
9174m4_define([_PKG_CONFIG],
9175[if test -n "$$1"; then
9176    pkg_cv_[]$1="$$1"
9177 elif test -n "$PKG_CONFIG"; then
9178    PKG_CHECK_EXISTS([$3],
9179                     [pkg_cv_[]$1=`$PKG_CONFIG --[]$2 "$3" 2>/dev/null`
9180		      test "x$?" != "x0" && pkg_failed=yes ],
9181		     [pkg_failed=yes])
9182 else
9183    pkg_failed=untried
9184fi[]dnl
9185])dnl _PKG_CONFIG
9186
9187dnl _PKG_SHORT_ERRORS_SUPPORTED
9188dnl ---------------------------
9189dnl Internal check to see if pkg-config supports short errors.
9190AC_DEFUN([_PKG_SHORT_ERRORS_SUPPORTED],
9191[AC_REQUIRE([PKG_PROG_PKG_CONFIG])
9192if $PKG_CONFIG --atleast-pkgconfig-version 0.20; then
9193        _pkg_short_errors_supported=yes
9194else
9195        _pkg_short_errors_supported=no
9196fi[]dnl
9197])dnl _PKG_SHORT_ERRORS_SUPPORTED
9198
9199
9200dnl PKG_CHECK_MODULES(VARIABLE-PREFIX, MODULES, [ACTION-IF-FOUND],
9201dnl   [ACTION-IF-NOT-FOUND])
9202dnl --------------------------------------------------------------
9203dnl Since: 0.4.0
9204dnl
9205dnl Note that if there is a possibility the first call to
9206dnl PKG_CHECK_MODULES might not happen, you should be sure to include an
9207dnl explicit call to PKG_PROG_PKG_CONFIG in your configure.ac
9208AC_DEFUN([PKG_CHECK_MODULES],
9209[AC_REQUIRE([PKG_PROG_PKG_CONFIG])dnl
9210AC_ARG_VAR([$1][_CFLAGS], [C compiler flags for $1, overriding pkg-config])dnl
9211AC_ARG_VAR([$1][_LIBS], [linker flags for $1, overriding pkg-config])dnl
9212
9213pkg_failed=no
9214AC_MSG_CHECKING([for $1])
9215
9216_PKG_CONFIG([$1][_CFLAGS], [cflags], [$2])
9217_PKG_CONFIG([$1][_LIBS], [libs], [$2])
9218
9219m4_define([_PKG_TEXT], [Alternatively, you may set the environment variables $1[]_CFLAGS
9220and $1[]_LIBS to avoid the need to call pkg-config.
9221See the pkg-config man page for more details.])
9222
9223if test $pkg_failed = yes; then
9224   	AC_MSG_RESULT([no])
9225        _PKG_SHORT_ERRORS_SUPPORTED
9226        if test $_pkg_short_errors_supported = yes; then
9227	        $1[]_PKG_ERRORS=`$PKG_CONFIG --short-errors --print-errors --cflags --libs "$2" 2>&1`
9228        else 
9229	        $1[]_PKG_ERRORS=`$PKG_CONFIG --print-errors --cflags --libs "$2" 2>&1`
9230        fi
9231	# Put the nasty error message in config.log where it belongs
9232	echo "$$1[]_PKG_ERRORS" >&AS_MESSAGE_LOG_FD
9233
9234	m4_default([$4], [AC_MSG_ERROR(
9235[Package requirements ($2) were not met:
9236
9237$$1_PKG_ERRORS
9238
9239Consider adjusting the PKG_CONFIG_PATH environment variable if you
9240installed software in a non-standard prefix.
9241
9242_PKG_TEXT])[]dnl
9243        ])
9244elif test $pkg_failed = untried; then
9245     	AC_MSG_RESULT([no])
9246	m4_default([$4], [AC_MSG_FAILURE(
9247[The pkg-config script could not be found or is too old.  Make sure it
9248is in your PATH or set the PKG_CONFIG environment variable to the full
9249path to pkg-config.
9250
9251_PKG_TEXT
9252
9253To get pkg-config, see <http://pkg-config.freedesktop.org/>.])[]dnl
9254        ])
9255else
9256	$1[]_CFLAGS=$pkg_cv_[]$1[]_CFLAGS
9257	$1[]_LIBS=$pkg_cv_[]$1[]_LIBS
9258        AC_MSG_RESULT([yes])
9259	$3
9260fi[]dnl
9261])dnl PKG_CHECK_MODULES
9262
9263
9264dnl PKG_CHECK_MODULES_STATIC(VARIABLE-PREFIX, MODULES, [ACTION-IF-FOUND],
9265dnl   [ACTION-IF-NOT-FOUND])
9266dnl ---------------------------------------------------------------------
9267dnl Since: 0.29
9268dnl
9269dnl Checks for existence of MODULES and gathers its build flags with
9270dnl static libraries enabled. Sets VARIABLE-PREFIX_CFLAGS from --cflags
9271dnl and VARIABLE-PREFIX_LIBS from --libs.
9272dnl
9273dnl Note that if there is a possibility the first call to
9274dnl PKG_CHECK_MODULES_STATIC might not happen, you should be sure to
9275dnl include an explicit call to PKG_PROG_PKG_CONFIG in your
9276dnl configure.ac.
9277AC_DEFUN([PKG_CHECK_MODULES_STATIC],
9278[AC_REQUIRE([PKG_PROG_PKG_CONFIG])dnl
9279_save_PKG_CONFIG=$PKG_CONFIG
9280PKG_CONFIG="$PKG_CONFIG --static"
9281PKG_CHECK_MODULES($@)
9282PKG_CONFIG=$_save_PKG_CONFIG[]dnl
9283])dnl PKG_CHECK_MODULES_STATIC
9284
9285
9286dnl PKG_INSTALLDIR([DIRECTORY])
9287dnl -------------------------
9288dnl Since: 0.27
9289dnl
9290dnl Substitutes the variable pkgconfigdir as the location where a module
9291dnl should install pkg-config .pc files. By default the directory is
9292dnl $libdir/pkgconfig, but the default can be changed by passing
9293dnl DIRECTORY. The user can override through the --with-pkgconfigdir
9294dnl parameter.
9295AC_DEFUN([PKG_INSTALLDIR],
9296[m4_pushdef([pkg_default], [m4_default([$1], ['${libdir}/pkgconfig'])])
9297m4_pushdef([pkg_description],
9298    [pkg-config installation directory @<:@]pkg_default[@:>@])
9299AC_ARG_WITH([pkgconfigdir],
9300    [AS_HELP_STRING([--with-pkgconfigdir], pkg_description)],,
9301    [with_pkgconfigdir=]pkg_default)
9302AC_SUBST([pkgconfigdir], [$with_pkgconfigdir])
9303m4_popdef([pkg_default])
9304m4_popdef([pkg_description])
9305])dnl PKG_INSTALLDIR
9306
9307
9308dnl PKG_NOARCH_INSTALLDIR([DIRECTORY])
9309dnl --------------------------------
9310dnl Since: 0.27
9311dnl
9312dnl Substitutes the variable noarch_pkgconfigdir as the location where a
9313dnl module should install arch-independent pkg-config .pc files. By
9314dnl default the directory is $datadir/pkgconfig, but the default can be
9315dnl changed by passing DIRECTORY. The user can override through the
9316dnl --with-noarch-pkgconfigdir parameter.
9317AC_DEFUN([PKG_NOARCH_INSTALLDIR],
9318[m4_pushdef([pkg_default], [m4_default([$1], ['${datadir}/pkgconfig'])])
9319m4_pushdef([pkg_description],
9320    [pkg-config arch-independent installation directory @<:@]pkg_default[@:>@])
9321AC_ARG_WITH([noarch-pkgconfigdir],
9322    [AS_HELP_STRING([--with-noarch-pkgconfigdir], pkg_description)],,
9323    [with_noarch_pkgconfigdir=]pkg_default)
9324AC_SUBST([noarch_pkgconfigdir], [$with_noarch_pkgconfigdir])
9325m4_popdef([pkg_default])
9326m4_popdef([pkg_description])
9327])dnl PKG_NOARCH_INSTALLDIR
9328
9329
9330dnl PKG_CHECK_VAR(VARIABLE, MODULE, CONFIG-VARIABLE,
9331dnl [ACTION-IF-FOUND], [ACTION-IF-NOT-FOUND])
9332dnl -------------------------------------------
9333dnl Since: 0.28
9334dnl
9335dnl Retrieves the value of the pkg-config variable for the given module.
9336AC_DEFUN([PKG_CHECK_VAR],
9337[AC_REQUIRE([PKG_PROG_PKG_CONFIG])dnl
9338AC_ARG_VAR([$1], [value of $3 for $2, overriding pkg-config])dnl
9339
9340_PKG_CONFIG([$1], [variable="][$3]["], [$2])
9341AS_VAR_COPY([$1], [pkg_cv_][$1])
9342
9343AS_VAR_IF([$1], [""], [$5], [$4])dnl
9344])dnl PKG_CHECK_VAR
9345
9346dnl xorg-macros.m4.  Generated from xorg-macros.m4.in xorgversion.m4 by configure.
9347dnl
9348dnl Copyright (c) 2005, 2006, Oracle and/or its affiliates. All rights reserved.
9349dnl
9350dnl Permission is hereby granted, free of charge, to any person obtaining a
9351dnl copy of this software and associated documentation files (the "Software"),
9352dnl to deal in the Software without restriction, including without limitation
9353dnl the rights to use, copy, modify, merge, publish, distribute, sublicense,
9354dnl and/or sell copies of the Software, and to permit persons to whom the
9355dnl Software is furnished to do so, subject to the following conditions:
9356dnl
9357dnl The above copyright notice and this permission notice (including the next
9358dnl paragraph) shall be included in all copies or substantial portions of the
9359dnl Software.
9360dnl
9361dnl THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
9362dnl IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
9363dnl FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.  IN NO EVENT SHALL
9364dnl THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
9365dnl LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
9366dnl FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER
9367dnl DEALINGS IN THE SOFTWARE.
9368
9369# XORG_MACROS_VERSION(required-version)
9370# -------------------------------------
9371# Minimum version: 1.1.0
9372#
9373# If you're using a macro added in Version 1.1 or newer, include this in
9374# your configure.ac with the minimum required version, such as:
9375# XORG_MACROS_VERSION(1.1)
9376#
9377# To ensure that this macro is defined, also add:
9378# m4_ifndef([XORG_MACROS_VERSION],
9379#     [m4_fatal([must install xorg-macros 1.1 or later before running autoconf/autogen])])
9380#
9381#
9382# See the "minimum version" comment for each macro you use to see what
9383# version you require.
9384m4_defun([XORG_MACROS_VERSION],[
9385m4_define([vers_have], [1.19.0])
9386m4_define([maj_have], m4_substr(vers_have, 0, m4_index(vers_have, [.])))
9387m4_define([maj_needed], m4_substr([$1], 0, m4_index([$1], [.])))
9388m4_if(m4_cmp(maj_have, maj_needed), 0,,
9389    [m4_fatal([xorg-macros major version ]maj_needed[ is required but ]vers_have[ found])])
9390m4_if(m4_version_compare(vers_have, [$1]), -1,
9391    [m4_fatal([xorg-macros version $1 or higher is required but ]vers_have[ found])])
9392m4_undefine([vers_have])
9393m4_undefine([maj_have])
9394m4_undefine([maj_needed])
9395]) # XORG_MACROS_VERSION
9396
9397# XORG_PROG_RAWCPP()
9398# ------------------
9399# Minimum version: 1.0.0
9400#
9401# Find cpp program and necessary flags for use in pre-processing text files
9402# such as man pages and config files
9403AC_DEFUN([XORG_PROG_RAWCPP],[
9404AC_REQUIRE([AC_PROG_CPP])
9405AC_PATH_PROGS(RAWCPP, [cpp], [${CPP}],
9406   [$PATH:/bin:/usr/bin:/usr/lib:/usr/libexec:/usr/ccs/lib:/usr/ccs/lbin:/lib])
9407
9408# Check for flag to avoid builtin definitions - assumes unix is predefined,
9409# which is not the best choice for supporting other OS'es, but covers most
9410# of the ones we need for now.
9411AC_MSG_CHECKING([if $RAWCPP requires -undef])
9412AC_LANG_CONFTEST([AC_LANG_SOURCE([[Does cpp redefine unix ?]])])
9413if test `${RAWCPP} < conftest.$ac_ext | grep -c 'unix'` -eq 1 ; then
9414	AC_MSG_RESULT([no])
9415else
9416	if test `${RAWCPP} -undef < conftest.$ac_ext | grep -c 'unix'` -eq 1 ; then
9417		RAWCPPFLAGS=-undef
9418		AC_MSG_RESULT([yes])
9419	# under Cygwin unix is still defined even with -undef
9420	elif test `${RAWCPP} -undef -ansi < conftest.$ac_ext | grep -c 'unix'` -eq 1 ; then
9421		RAWCPPFLAGS="-undef -ansi"
9422		AC_MSG_RESULT([yes, with -ansi])
9423	else
9424		AC_MSG_ERROR([${RAWCPP} defines unix with or without -undef.  I don't know what to do.])
9425	fi
9426fi
9427rm -f conftest.$ac_ext
9428
9429AC_MSG_CHECKING([if $RAWCPP requires -traditional])
9430AC_LANG_CONFTEST([AC_LANG_SOURCE([[Does cpp preserve   "whitespace"?]])])
9431if test `${RAWCPP} < conftest.$ac_ext | grep -c 'preserve   \"'` -eq 1 ; then
9432	AC_MSG_RESULT([no])
9433else
9434	if test `${RAWCPP} -traditional < conftest.$ac_ext | grep -c 'preserve   \"'` -eq 1 ; then
9435		TRADITIONALCPPFLAGS="-traditional"
9436		RAWCPPFLAGS="${RAWCPPFLAGS} -traditional"
9437		AC_MSG_RESULT([yes])
9438	else
9439		AC_MSG_ERROR([${RAWCPP} does not preserve whitespace with or without -traditional.  I don't know what to do.])
9440	fi
9441fi
9442rm -f conftest.$ac_ext
9443AC_SUBST(RAWCPPFLAGS)
9444AC_SUBST(TRADITIONALCPPFLAGS)
9445]) # XORG_PROG_RAWCPP
9446
9447# XORG_MANPAGE_SECTIONS()
9448# -----------------------
9449# Minimum version: 1.0.0
9450#
9451# Determine which sections man pages go in for the different man page types
9452# on this OS - replaces *ManSuffix settings in old Imake *.cf per-os files.
9453# Not sure if there's any better way than just hardcoding by OS name.
9454# Override default settings by setting environment variables
9455# Added MAN_SUBSTS in version 1.8
9456# Added AC_PROG_SED in version 1.8
9457
9458AC_DEFUN([XORG_MANPAGE_SECTIONS],[
9459AC_REQUIRE([AC_CANONICAL_HOST])
9460AC_REQUIRE([AC_PROG_SED])
9461
9462if test x$APP_MAN_SUFFIX = x    ; then
9463    APP_MAN_SUFFIX=1
9464fi
9465if test x$APP_MAN_DIR = x    ; then
9466    APP_MAN_DIR='$(mandir)/man$(APP_MAN_SUFFIX)'
9467fi
9468
9469if test x$LIB_MAN_SUFFIX = x    ; then
9470    LIB_MAN_SUFFIX=3
9471fi
9472if test x$LIB_MAN_DIR = x    ; then
9473    LIB_MAN_DIR='$(mandir)/man$(LIB_MAN_SUFFIX)'
9474fi
9475
9476if test x$FILE_MAN_SUFFIX = x    ; then
9477    case $host_os in
9478	solaris*)	FILE_MAN_SUFFIX=4  ;;
9479	*)		FILE_MAN_SUFFIX=5  ;;
9480    esac
9481fi
9482if test x$FILE_MAN_DIR = x    ; then
9483    FILE_MAN_DIR='$(mandir)/man$(FILE_MAN_SUFFIX)'
9484fi
9485
9486if test x$MISC_MAN_SUFFIX = x    ; then
9487    case $host_os in
9488	solaris*)	MISC_MAN_SUFFIX=5  ;;
9489	*)		MISC_MAN_SUFFIX=7  ;;
9490    esac
9491fi
9492if test x$MISC_MAN_DIR = x    ; then
9493    MISC_MAN_DIR='$(mandir)/man$(MISC_MAN_SUFFIX)'
9494fi
9495
9496if test x$DRIVER_MAN_SUFFIX = x    ; then
9497    case $host_os in
9498	solaris*)	DRIVER_MAN_SUFFIX=7  ;;
9499	*)		DRIVER_MAN_SUFFIX=4  ;;
9500    esac
9501fi
9502if test x$DRIVER_MAN_DIR = x    ; then
9503    DRIVER_MAN_DIR='$(mandir)/man$(DRIVER_MAN_SUFFIX)'
9504fi
9505
9506if test x$ADMIN_MAN_SUFFIX = x    ; then
9507    case $host_os in
9508	solaris*)	ADMIN_MAN_SUFFIX=1m ;;
9509	*)		ADMIN_MAN_SUFFIX=8  ;;
9510    esac
9511fi
9512if test x$ADMIN_MAN_DIR = x    ; then
9513    ADMIN_MAN_DIR='$(mandir)/man$(ADMIN_MAN_SUFFIX)'
9514fi
9515
9516
9517AC_SUBST([APP_MAN_SUFFIX])
9518AC_SUBST([LIB_MAN_SUFFIX])
9519AC_SUBST([FILE_MAN_SUFFIX])
9520AC_SUBST([MISC_MAN_SUFFIX])
9521AC_SUBST([DRIVER_MAN_SUFFIX])
9522AC_SUBST([ADMIN_MAN_SUFFIX])
9523AC_SUBST([APP_MAN_DIR])
9524AC_SUBST([LIB_MAN_DIR])
9525AC_SUBST([FILE_MAN_DIR])
9526AC_SUBST([MISC_MAN_DIR])
9527AC_SUBST([DRIVER_MAN_DIR])
9528AC_SUBST([ADMIN_MAN_DIR])
9529
9530XORG_MAN_PAGE="X Version 11"
9531AC_SUBST([XORG_MAN_PAGE])
9532MAN_SUBSTS="\
9533	-e 's|__vendorversion__|\"\$(PACKAGE_STRING)\" \"\$(XORG_MAN_PAGE)\"|' \
9534	-e 's|__xorgversion__|\"\$(PACKAGE_STRING)\" \"\$(XORG_MAN_PAGE)\"|' \
9535	-e 's|__xservername__|Xorg|g' \
9536	-e 's|__xconfigfile__|xorg.conf|g' \
9537	-e 's|__projectroot__|\$(prefix)|g' \
9538	-e 's|__apploaddir__|\$(appdefaultdir)|g' \
9539	-e 's|__appmansuffix__|\$(APP_MAN_SUFFIX)|g' \
9540	-e 's|__drivermansuffix__|\$(DRIVER_MAN_SUFFIX)|g' \
9541	-e 's|__adminmansuffix__|\$(ADMIN_MAN_SUFFIX)|g' \
9542	-e 's|__libmansuffix__|\$(LIB_MAN_SUFFIX)|g' \
9543	-e 's|__miscmansuffix__|\$(MISC_MAN_SUFFIX)|g' \
9544	-e 's|__filemansuffix__|\$(FILE_MAN_SUFFIX)|g'"
9545AC_SUBST([MAN_SUBSTS])
9546
9547]) # XORG_MANPAGE_SECTIONS
9548
9549# XORG_CHECK_SGML_DOCTOOLS([MIN-VERSION])
9550# ------------------------
9551# Minimum version: 1.7.0
9552#
9553# Defines the variable XORG_SGML_PATH containing the location of X11/defs.ent
9554# provided by xorg-sgml-doctools, if installed.
9555AC_DEFUN([XORG_CHECK_SGML_DOCTOOLS],[
9556AC_MSG_CHECKING([for X.Org SGML entities m4_ifval([$1],[>= $1])])
9557XORG_SGML_PATH=
9558PKG_CHECK_EXISTS([xorg-sgml-doctools m4_ifval([$1],[>= $1])],
9559    [XORG_SGML_PATH=`$PKG_CONFIG --variable=sgmlrootdir xorg-sgml-doctools`],
9560    [m4_ifval([$1],[:],
9561        [if test x"$cross_compiling" != x"yes" ; then
9562            AC_CHECK_FILE([$prefix/share/sgml/X11/defs.ent],
9563                          [XORG_SGML_PATH=$prefix/share/sgml])
9564         fi])
9565    ])
9566
9567# Define variables STYLESHEET_SRCDIR and XSL_STYLESHEET containing
9568# the path and the name of the doc stylesheet
9569if test "x$XORG_SGML_PATH" != "x" ; then
9570   AC_MSG_RESULT([$XORG_SGML_PATH])
9571   STYLESHEET_SRCDIR=$XORG_SGML_PATH/X11
9572   XSL_STYLESHEET=$STYLESHEET_SRCDIR/xorg.xsl
9573else
9574   AC_MSG_RESULT([no])
9575fi
9576
9577AC_SUBST(XORG_SGML_PATH)
9578AC_SUBST(STYLESHEET_SRCDIR)
9579AC_SUBST(XSL_STYLESHEET)
9580AM_CONDITIONAL([HAVE_STYLESHEETS], [test "x$XSL_STYLESHEET" != "x"])
9581]) # XORG_CHECK_SGML_DOCTOOLS
9582
9583# XORG_CHECK_LINUXDOC
9584# -------------------
9585# Minimum version: 1.0.0
9586#
9587# Defines the variable MAKE_TEXT if the necessary tools and
9588# files are found. $(MAKE_TEXT) blah.sgml will then produce blah.txt.
9589# Whether or not the necessary tools and files are found can be checked
9590# with the AM_CONDITIONAL "BUILD_LINUXDOC"
9591AC_DEFUN([XORG_CHECK_LINUXDOC],[
9592AC_REQUIRE([XORG_CHECK_SGML_DOCTOOLS])
9593AC_REQUIRE([XORG_WITH_PS2PDF])
9594
9595AC_PATH_PROG(LINUXDOC, linuxdoc)
9596
9597AC_MSG_CHECKING([whether to build documentation])
9598
9599if test x$XORG_SGML_PATH != x && test x$LINUXDOC != x ; then
9600   BUILDDOC=yes
9601else
9602   BUILDDOC=no
9603fi
9604
9605AM_CONDITIONAL(BUILD_LINUXDOC, [test x$BUILDDOC = xyes])
9606
9607AC_MSG_RESULT([$BUILDDOC])
9608
9609AC_MSG_CHECKING([whether to build pdf documentation])
9610
9611if test x$have_ps2pdf != xno && test x$BUILD_PDFDOC != xno; then
9612   BUILDPDFDOC=yes
9613else
9614   BUILDPDFDOC=no
9615fi
9616
9617AM_CONDITIONAL(BUILD_PDFDOC, [test x$BUILDPDFDOC = xyes])
9618
9619AC_MSG_RESULT([$BUILDPDFDOC])
9620
9621MAKE_TEXT="SGML_SEARCH_PATH=$XORG_SGML_PATH GROFF_NO_SGR=y $LINUXDOC -B txt -f"
9622MAKE_PS="SGML_SEARCH_PATH=$XORG_SGML_PATH $LINUXDOC -B latex --papersize=letter --output=ps"
9623MAKE_PDF="$PS2PDF"
9624MAKE_HTML="SGML_SEARCH_PATH=$XORG_SGML_PATH $LINUXDOC  -B html --split=0"
9625
9626AC_SUBST(MAKE_TEXT)
9627AC_SUBST(MAKE_PS)
9628AC_SUBST(MAKE_PDF)
9629AC_SUBST(MAKE_HTML)
9630]) # XORG_CHECK_LINUXDOC
9631
9632# XORG_CHECK_DOCBOOK
9633# -------------------
9634# Minimum version: 1.0.0
9635#
9636# Checks for the ability to build output formats from SGML DocBook source.
9637# For XXX in {TXT, PDF, PS, HTML}, the AM_CONDITIONAL "BUILD_XXXDOC"
9638# indicates whether the necessary tools and files are found and, if set,
9639# $(MAKE_XXX) blah.sgml will produce blah.xxx.
9640AC_DEFUN([XORG_CHECK_DOCBOOK],[
9641AC_REQUIRE([XORG_CHECK_SGML_DOCTOOLS])
9642
9643BUILDTXTDOC=no
9644BUILDPDFDOC=no
9645BUILDPSDOC=no
9646BUILDHTMLDOC=no
9647
9648AC_PATH_PROG(DOCBOOKPS, docbook2ps)
9649AC_PATH_PROG(DOCBOOKPDF, docbook2pdf)
9650AC_PATH_PROG(DOCBOOKHTML, docbook2html)
9651AC_PATH_PROG(DOCBOOKTXT, docbook2txt)
9652
9653AC_MSG_CHECKING([whether to build text documentation])
9654if test x$XORG_SGML_PATH != x && test x$DOCBOOKTXT != x &&
9655   test x$BUILD_TXTDOC != xno; then
9656	BUILDTXTDOC=yes
9657fi
9658AM_CONDITIONAL(BUILD_TXTDOC, [test x$BUILDTXTDOC = xyes])
9659AC_MSG_RESULT([$BUILDTXTDOC])
9660
9661AC_MSG_CHECKING([whether to build PDF documentation])
9662if test x$XORG_SGML_PATH != x && test x$DOCBOOKPDF != x &&
9663   test x$BUILD_PDFDOC != xno; then
9664	BUILDPDFDOC=yes
9665fi
9666AM_CONDITIONAL(BUILD_PDFDOC, [test x$BUILDPDFDOC = xyes])
9667AC_MSG_RESULT([$BUILDPDFDOC])
9668
9669AC_MSG_CHECKING([whether to build PostScript documentation])
9670if test x$XORG_SGML_PATH != x && test x$DOCBOOKPS != x &&
9671   test x$BUILD_PSDOC != xno; then
9672	BUILDPSDOC=yes
9673fi
9674AM_CONDITIONAL(BUILD_PSDOC, [test x$BUILDPSDOC = xyes])
9675AC_MSG_RESULT([$BUILDPSDOC])
9676
9677AC_MSG_CHECKING([whether to build HTML documentation])
9678if test x$XORG_SGML_PATH != x && test x$DOCBOOKHTML != x &&
9679   test x$BUILD_HTMLDOC != xno; then
9680	BUILDHTMLDOC=yes
9681fi
9682AM_CONDITIONAL(BUILD_HTMLDOC, [test x$BUILDHTMLDOC = xyes])
9683AC_MSG_RESULT([$BUILDHTMLDOC])
9684
9685MAKE_TEXT="SGML_SEARCH_PATH=$XORG_SGML_PATH $DOCBOOKTXT"
9686MAKE_PS="SGML_SEARCH_PATH=$XORG_SGML_PATH $DOCBOOKPS"
9687MAKE_PDF="SGML_SEARCH_PATH=$XORG_SGML_PATH $DOCBOOKPDF"
9688MAKE_HTML="SGML_SEARCH_PATH=$XORG_SGML_PATH $DOCBOOKHTML"
9689
9690AC_SUBST(MAKE_TEXT)
9691AC_SUBST(MAKE_PS)
9692AC_SUBST(MAKE_PDF)
9693AC_SUBST(MAKE_HTML)
9694]) # XORG_CHECK_DOCBOOK
9695
9696# XORG_WITH_XMLTO([MIN-VERSION], [DEFAULT])
9697# ----------------
9698# Minimum version: 1.5.0
9699# Minimum version for optional DEFAULT argument: 1.11.0
9700#
9701# Documentation tools are not always available on all platforms and sometimes
9702# not at the appropriate level. This macro enables a module to test for the
9703# presence of the tool and obtain it's path in separate variables. Coupled with
9704# the --with-xmlto option, it allows maximum flexibilty in making decisions
9705# as whether or not to use the xmlto package. When DEFAULT is not specified,
9706# --with-xmlto assumes 'auto'.
9707#
9708# Interface to module:
9709# HAVE_XMLTO: 	used in makefiles to conditionally generate documentation
9710# XMLTO:	returns the path of the xmlto program found
9711#		returns the path set by the user in the environment
9712# --with-xmlto:	'yes' user instructs the module to use xmlto
9713#		'no' user instructs the module not to use xmlto
9714#
9715# Added in version 1.10.0
9716# HAVE_XMLTO_TEXT: used in makefiles to conditionally generate text documentation
9717#                  xmlto for text output requires either lynx, links, or w3m browsers
9718#
9719# If the user sets the value of XMLTO, AC_PATH_PROG skips testing the path.
9720#
9721AC_DEFUN([XORG_WITH_XMLTO],[
9722AC_ARG_VAR([XMLTO], [Path to xmlto command])
9723m4_define([_defopt], m4_default([$2], [auto]))
9724AC_ARG_WITH(xmlto,
9725	AS_HELP_STRING([--with-xmlto],
9726	   [Use xmlto to regenerate documentation (default: ]_defopt[)]),
9727	   [use_xmlto=$withval], [use_xmlto=]_defopt)
9728m4_undefine([_defopt])
9729
9730if test "x$use_xmlto" = x"auto"; then
9731   AC_PATH_PROG([XMLTO], [xmlto])
9732   if test "x$XMLTO" = "x"; then
9733        AC_MSG_WARN([xmlto not found - documentation targets will be skipped])
9734	have_xmlto=no
9735   else
9736        have_xmlto=yes
9737   fi
9738elif test "x$use_xmlto" = x"yes" ; then
9739   AC_PATH_PROG([XMLTO], [xmlto])
9740   if test "x$XMLTO" = "x"; then
9741        AC_MSG_ERROR([--with-xmlto=yes specified but xmlto not found in PATH])
9742   fi
9743   have_xmlto=yes
9744elif test "x$use_xmlto" = x"no" ; then
9745   if test "x$XMLTO" != "x"; then
9746      AC_MSG_WARN([ignoring XMLTO environment variable since --with-xmlto=no was specified])
9747   fi
9748   have_xmlto=no
9749else
9750   AC_MSG_ERROR([--with-xmlto expects 'yes' or 'no'])
9751fi
9752
9753# Test for a minimum version of xmlto, if provided.
9754m4_ifval([$1],
9755[if test "$have_xmlto" = yes; then
9756    # scrape the xmlto version
9757    AC_MSG_CHECKING([the xmlto version])
9758    xmlto_version=`$XMLTO --version 2>/dev/null | cut -d' ' -f3`
9759    AC_MSG_RESULT([$xmlto_version])
9760    AS_VERSION_COMPARE([$xmlto_version], [$1],
9761        [if test "x$use_xmlto" = xauto; then
9762            AC_MSG_WARN([xmlto version $xmlto_version found, but $1 needed])
9763            have_xmlto=no
9764        else
9765            AC_MSG_ERROR([xmlto version $xmlto_version found, but $1 needed])
9766        fi])
9767fi])
9768
9769# Test for the ability of xmlto to generate a text target
9770#
9771# NOTE: xmlto 0.0.27 or higher return a non-zero return code in the
9772# following test for empty XML docbook files.
9773# For compatibility reasons use the following empty XML docbook file and if
9774# it fails try it again with a non-empty XML file.
9775have_xmlto_text=no
9776cat > conftest.xml << "EOF"
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             [# Try it again with a non-empty XML file.
9782              cat > conftest.xml << "EOF"
9783<x></x>
9784EOF
9785              AS_IF([$XMLTO --skip-validation txt conftest.xml >/dev/null 2>&1],
9786                    [have_xmlto_text=yes],
9787                    [AC_MSG_WARN([xmlto cannot generate text format, this format skipped])])])])
9788rm -f conftest.xml
9789AM_CONDITIONAL([HAVE_XMLTO_TEXT], [test $have_xmlto_text = yes])
9790AM_CONDITIONAL([HAVE_XMLTO], [test "$have_xmlto" = yes])
9791]) # XORG_WITH_XMLTO
9792
9793# XORG_WITH_XSLTPROC([MIN-VERSION], [DEFAULT])
9794# --------------------------------------------
9795# Minimum version: 1.12.0
9796# Minimum version for optional DEFAULT argument: 1.12.0
9797#
9798# XSLT (Extensible Stylesheet Language Transformations) is a declarative,
9799# XML-based language used for the transformation of XML documents.
9800# The xsltproc command line tool is for applying XSLT stylesheets to XML documents.
9801# It is used under the cover by xmlto to generate html files from DocBook/XML.
9802# The XSLT processor is often used as a standalone tool for transformations.
9803# It should not be assumed that this tool is used only to work with documnetation.
9804# When DEFAULT is not specified, --with-xsltproc assumes 'auto'.
9805#
9806# Interface to module:
9807# HAVE_XSLTPROC: used in makefiles to conditionally generate documentation
9808# XSLTPROC:	 returns the path of the xsltproc program found
9809#		 returns the path set by the user in the environment
9810# --with-xsltproc: 'yes' user instructs the module to use xsltproc
9811#		  'no' user instructs the module not to use xsltproc
9812# have_xsltproc: returns yes if xsltproc found in PATH or no
9813#
9814# If the user sets the value of XSLTPROC, AC_PATH_PROG skips testing the path.
9815#
9816AC_DEFUN([XORG_WITH_XSLTPROC],[
9817AC_ARG_VAR([XSLTPROC], [Path to xsltproc command])
9818# Preserves the interface, should it be implemented later
9819m4_ifval([$1], [m4_warn([syntax], [Checking for xsltproc MIN-VERSION is not implemented])])
9820m4_define([_defopt], m4_default([$2], [auto]))
9821AC_ARG_WITH(xsltproc,
9822	AS_HELP_STRING([--with-xsltproc],
9823	   [Use xsltproc for the transformation of XML documents (default: ]_defopt[)]),
9824	   [use_xsltproc=$withval], [use_xsltproc=]_defopt)
9825m4_undefine([_defopt])
9826
9827if test "x$use_xsltproc" = x"auto"; then
9828   AC_PATH_PROG([XSLTPROC], [xsltproc])
9829   if test "x$XSLTPROC" = "x"; then
9830        AC_MSG_WARN([xsltproc not found - cannot transform XML documents])
9831	have_xsltproc=no
9832   else
9833        have_xsltproc=yes
9834   fi
9835elif test "x$use_xsltproc" = x"yes" ; then
9836   AC_PATH_PROG([XSLTPROC], [xsltproc])
9837   if test "x$XSLTPROC" = "x"; then
9838        AC_MSG_ERROR([--with-xsltproc=yes specified but xsltproc not found in PATH])
9839   fi
9840   have_xsltproc=yes
9841elif test "x$use_xsltproc" = x"no" ; then
9842   if test "x$XSLTPROC" != "x"; then
9843      AC_MSG_WARN([ignoring XSLTPROC environment variable since --with-xsltproc=no was specified])
9844   fi
9845   have_xsltproc=no
9846else
9847   AC_MSG_ERROR([--with-xsltproc expects 'yes' or 'no'])
9848fi
9849
9850AM_CONDITIONAL([HAVE_XSLTPROC], [test "$have_xsltproc" = yes])
9851]) # XORG_WITH_XSLTPROC
9852
9853# XORG_WITH_PERL([MIN-VERSION], [DEFAULT])
9854# ----------------------------------------
9855# Minimum version: 1.15.0
9856#
9857# PERL (Practical Extraction and Report Language) is a language optimized for
9858# scanning arbitrary text files, extracting information from those text files,
9859# and printing reports based on that information.
9860#
9861# When DEFAULT is not specified, --with-perl assumes 'auto'.
9862#
9863# Interface to module:
9864# HAVE_PERL: used in makefiles to conditionally scan text files
9865# PERL:	     returns the path of the perl program found
9866#	     returns the path set by the user in the environment
9867# --with-perl: 'yes' user instructs the module to use perl
9868#	       'no' user instructs the module not to use perl
9869# have_perl: returns yes if perl found in PATH or no
9870#
9871# If the user sets the value of PERL, AC_PATH_PROG skips testing the path.
9872#
9873AC_DEFUN([XORG_WITH_PERL],[
9874AC_ARG_VAR([PERL], [Path to perl command])
9875# Preserves the interface, should it be implemented later
9876m4_ifval([$1], [m4_warn([syntax], [Checking for perl MIN-VERSION is not implemented])])
9877m4_define([_defopt], m4_default([$2], [auto]))
9878AC_ARG_WITH(perl,
9879	AS_HELP_STRING([--with-perl],
9880	   [Use perl for extracting information from files (default: ]_defopt[)]),
9881	   [use_perl=$withval], [use_perl=]_defopt)
9882m4_undefine([_defopt])
9883
9884if test "x$use_perl" = x"auto"; then
9885   AC_PATH_PROG([PERL], [perl])
9886   if test "x$PERL" = "x"; then
9887        AC_MSG_WARN([perl not found - cannot extract information and report])
9888	have_perl=no
9889   else
9890        have_perl=yes
9891   fi
9892elif test "x$use_perl" = x"yes" ; then
9893   AC_PATH_PROG([PERL], [perl])
9894   if test "x$PERL" = "x"; then
9895        AC_MSG_ERROR([--with-perl=yes specified but perl not found in PATH])
9896   fi
9897   have_perl=yes
9898elif test "x$use_perl" = x"no" ; then
9899   if test "x$PERL" != "x"; then
9900      AC_MSG_WARN([ignoring PERL environment variable since --with-perl=no was specified])
9901   fi
9902   have_perl=no
9903else
9904   AC_MSG_ERROR([--with-perl expects 'yes' or 'no'])
9905fi
9906
9907AM_CONDITIONAL([HAVE_PERL], [test "$have_perl" = yes])
9908]) # XORG_WITH_PERL
9909
9910# XORG_WITH_ASCIIDOC([MIN-VERSION], [DEFAULT])
9911# ----------------
9912# Minimum version: 1.5.0
9913# Minimum version for optional DEFAULT argument: 1.11.0
9914#
9915# Documentation tools are not always available on all platforms and sometimes
9916# not at the appropriate level. This macro enables a module to test for the
9917# presence of the tool and obtain it's path in separate variables. Coupled with
9918# the --with-asciidoc option, it allows maximum flexibilty in making decisions
9919# as whether or not to use the asciidoc package. When DEFAULT is not specified,
9920# --with-asciidoc assumes 'auto'.
9921#
9922# Interface to module:
9923# HAVE_ASCIIDOC: used in makefiles to conditionally generate documentation
9924# ASCIIDOC:	 returns the path of the asciidoc program found
9925#		 returns the path set by the user in the environment
9926# --with-asciidoc: 'yes' user instructs the module to use asciidoc
9927#		  'no' user instructs the module not to use asciidoc
9928#
9929# If the user sets the value of ASCIIDOC, AC_PATH_PROG skips testing the path.
9930#
9931AC_DEFUN([XORG_WITH_ASCIIDOC],[
9932AC_ARG_VAR([ASCIIDOC], [Path to asciidoc command])
9933m4_define([_defopt], m4_default([$2], [auto]))
9934AC_ARG_WITH(asciidoc,
9935	AS_HELP_STRING([--with-asciidoc],
9936	   [Use asciidoc to regenerate documentation (default: ]_defopt[)]),
9937	   [use_asciidoc=$withval], [use_asciidoc=]_defopt)
9938m4_undefine([_defopt])
9939
9940if test "x$use_asciidoc" = x"auto"; then
9941   AC_PATH_PROG([ASCIIDOC], [asciidoc])
9942   if test "x$ASCIIDOC" = "x"; then
9943        AC_MSG_WARN([asciidoc not found - documentation targets will be skipped])
9944	have_asciidoc=no
9945   else
9946        have_asciidoc=yes
9947   fi
9948elif test "x$use_asciidoc" = x"yes" ; then
9949   AC_PATH_PROG([ASCIIDOC], [asciidoc])
9950   if test "x$ASCIIDOC" = "x"; then
9951        AC_MSG_ERROR([--with-asciidoc=yes specified but asciidoc not found in PATH])
9952   fi
9953   have_asciidoc=yes
9954elif test "x$use_asciidoc" = x"no" ; then
9955   if test "x$ASCIIDOC" != "x"; then
9956      AC_MSG_WARN([ignoring ASCIIDOC environment variable since --with-asciidoc=no was specified])
9957   fi
9958   have_asciidoc=no
9959else
9960   AC_MSG_ERROR([--with-asciidoc expects 'yes' or 'no'])
9961fi
9962m4_ifval([$1],
9963[if test "$have_asciidoc" = yes; then
9964    # scrape the asciidoc version
9965    AC_MSG_CHECKING([the asciidoc version])
9966    asciidoc_version=`$ASCIIDOC --version 2>/dev/null | cut -d' ' -f2`
9967    AC_MSG_RESULT([$asciidoc_version])
9968    AS_VERSION_COMPARE([$asciidoc_version], [$1],
9969        [if test "x$use_asciidoc" = xauto; then
9970            AC_MSG_WARN([asciidoc version $asciidoc_version found, but $1 needed])
9971            have_asciidoc=no
9972        else
9973            AC_MSG_ERROR([asciidoc version $asciidoc_version found, but $1 needed])
9974        fi])
9975fi])
9976AM_CONDITIONAL([HAVE_ASCIIDOC], [test "$have_asciidoc" = yes])
9977]) # XORG_WITH_ASCIIDOC
9978
9979# XORG_WITH_DOXYGEN([MIN-VERSION], [DEFAULT])
9980# -------------------------------------------
9981# Minimum version: 1.5.0
9982# Minimum version for optional DEFAULT argument: 1.11.0
9983# Minimum version for optional DOT checking: 1.18.0
9984#
9985# Documentation tools are not always available on all platforms and sometimes
9986# not at the appropriate level. This macro enables a module to test for the
9987# presence of the tool and obtain it's path in separate variables. Coupled with
9988# the --with-doxygen option, it allows maximum flexibilty in making decisions
9989# as whether or not to use the doxygen package. When DEFAULT is not specified,
9990# --with-doxygen assumes 'auto'.
9991#
9992# Interface to module:
9993# HAVE_DOXYGEN: used in makefiles to conditionally generate documentation
9994# DOXYGEN:	 returns the path of the doxygen program found
9995#		 returns the path set by the user in the environment
9996# --with-doxygen: 'yes' user instructs the module to use doxygen
9997#		  'no' user instructs the module not to use doxygen
9998#
9999# If the user sets the value of DOXYGEN, AC_PATH_PROG skips testing the path.
10000#
10001AC_DEFUN([XORG_WITH_DOXYGEN],[
10002AC_ARG_VAR([DOXYGEN], [Path to doxygen command])
10003AC_ARG_VAR([DOT], [Path to the dot graphics utility])
10004m4_define([_defopt], m4_default([$2], [auto]))
10005AC_ARG_WITH(doxygen,
10006	AS_HELP_STRING([--with-doxygen],
10007	   [Use doxygen to regenerate documentation (default: ]_defopt[)]),
10008	   [use_doxygen=$withval], [use_doxygen=]_defopt)
10009m4_undefine([_defopt])
10010
10011if test "x$use_doxygen" = x"auto"; then
10012   AC_PATH_PROG([DOXYGEN], [doxygen])
10013   if test "x$DOXYGEN" = "x"; then
10014        AC_MSG_WARN([doxygen not found - documentation targets will be skipped])
10015	have_doxygen=no
10016   else
10017        have_doxygen=yes
10018   fi
10019elif test "x$use_doxygen" = x"yes" ; then
10020   AC_PATH_PROG([DOXYGEN], [doxygen])
10021   if test "x$DOXYGEN" = "x"; then
10022        AC_MSG_ERROR([--with-doxygen=yes specified but doxygen not found in PATH])
10023   fi
10024   have_doxygen=yes
10025elif test "x$use_doxygen" = x"no" ; then
10026   if test "x$DOXYGEN" != "x"; then
10027      AC_MSG_WARN([ignoring DOXYGEN environment variable since --with-doxygen=no was specified])
10028   fi
10029   have_doxygen=no
10030else
10031   AC_MSG_ERROR([--with-doxygen expects 'yes' or 'no'])
10032fi
10033m4_ifval([$1],
10034[if test "$have_doxygen" = yes; then
10035    # scrape the doxygen version
10036    AC_MSG_CHECKING([the doxygen version])
10037    doxygen_version=`$DOXYGEN --version 2>/dev/null`
10038    AC_MSG_RESULT([$doxygen_version])
10039    AS_VERSION_COMPARE([$doxygen_version], [$1],
10040        [if test "x$use_doxygen" = xauto; then
10041            AC_MSG_WARN([doxygen version $doxygen_version found, but $1 needed])
10042            have_doxygen=no
10043        else
10044            AC_MSG_ERROR([doxygen version $doxygen_version found, but $1 needed])
10045        fi])
10046fi])
10047
10048dnl Check for DOT if we have doxygen. The caller decides if it is mandatory
10049dnl HAVE_DOT is a variable that can be used in your doxygen.in config file:
10050dnl 	HAVE_DOT = @HAVE_DOT@
10051HAVE_DOT=no
10052if test "x$have_doxygen" = "xyes"; then
10053  AC_PATH_PROG([DOT], [dot])
10054    if test "x$DOT" != "x"; then
10055      HAVE_DOT=yes
10056    fi
10057fi
10058
10059AC_SUBST([HAVE_DOT])
10060AM_CONDITIONAL([HAVE_DOT], [test "$HAVE_DOT" = "yes"])
10061AM_CONDITIONAL([HAVE_DOXYGEN], [test "$have_doxygen" = yes])
10062]) # XORG_WITH_DOXYGEN
10063
10064# XORG_WITH_GROFF([DEFAULT])
10065# ----------------
10066# Minimum version: 1.6.0
10067# Minimum version for optional DEFAULT argument: 1.11.0
10068#
10069# Documentation tools are not always available on all platforms and sometimes
10070# not at the appropriate level. This macro enables a module to test for the
10071# presence of the tool and obtain it's path in separate variables. Coupled with
10072# the --with-groff option, it allows maximum flexibilty in making decisions
10073# as whether or not to use the groff package. When DEFAULT is not specified,
10074# --with-groff assumes 'auto'.
10075#
10076# Interface to module:
10077# HAVE_GROFF:	 used in makefiles to conditionally generate documentation
10078# HAVE_GROFF_MM: the memorandum macros (-mm) package
10079# HAVE_GROFF_MS: the -ms macros package
10080# GROFF:	 returns the path of the groff program found
10081#		 returns the path set by the user in the environment
10082# --with-groff:	 'yes' user instructs the module to use groff
10083#		 'no' user instructs the module not to use groff
10084#
10085# Added in version 1.9.0:
10086# HAVE_GROFF_HTML: groff has dependencies to output HTML format:
10087#		   pnmcut pnmcrop pnmtopng pnmtops from the netpbm package.
10088#		   psselect from the psutils package.
10089#		   the ghostcript package. Refer to the grohtml man pages
10090#
10091# If the user sets the value of GROFF, AC_PATH_PROG skips testing the path.
10092#
10093# OS and distros often splits groff in a basic and full package, the former
10094# having the groff program and the later having devices, fonts and macros
10095# Checking for the groff executable is not enough.
10096#
10097# If macros are missing, we cannot assume that groff is useless, so we don't
10098# unset HAVE_GROFF or GROFF env variables.
10099# HAVE_GROFF_?? can never be true while HAVE_GROFF is false.
10100#
10101AC_DEFUN([XORG_WITH_GROFF],[
10102AC_ARG_VAR([GROFF], [Path to groff command])
10103m4_define([_defopt], m4_default([$1], [auto]))
10104AC_ARG_WITH(groff,
10105	AS_HELP_STRING([--with-groff],
10106	   [Use groff to regenerate documentation (default: ]_defopt[)]),
10107	   [use_groff=$withval], [use_groff=]_defopt)
10108m4_undefine([_defopt])
10109
10110if test "x$use_groff" = x"auto"; then
10111   AC_PATH_PROG([GROFF], [groff])
10112   if test "x$GROFF" = "x"; then
10113        AC_MSG_WARN([groff not found - documentation targets will be skipped])
10114	have_groff=no
10115   else
10116        have_groff=yes
10117   fi
10118elif test "x$use_groff" = x"yes" ; then
10119   AC_PATH_PROG([GROFF], [groff])
10120   if test "x$GROFF" = "x"; then
10121        AC_MSG_ERROR([--with-groff=yes specified but groff not found in PATH])
10122   fi
10123   have_groff=yes
10124elif test "x$use_groff" = x"no" ; then
10125   if test "x$GROFF" != "x"; then
10126      AC_MSG_WARN([ignoring GROFF environment variable since --with-groff=no was specified])
10127   fi
10128   have_groff=no
10129else
10130   AC_MSG_ERROR([--with-groff expects 'yes' or 'no'])
10131fi
10132
10133# We have groff, test for the presence of the macro packages
10134if test "x$have_groff" = x"yes"; then
10135    AC_MSG_CHECKING([for ${GROFF} -ms macros])
10136    if ${GROFF} -ms -I. /dev/null >/dev/null 2>&1 ; then
10137        groff_ms_works=yes
10138    else
10139        groff_ms_works=no
10140    fi
10141    AC_MSG_RESULT([$groff_ms_works])
10142    AC_MSG_CHECKING([for ${GROFF} -mm macros])
10143    if ${GROFF} -mm -I. /dev/null >/dev/null 2>&1 ; then
10144        groff_mm_works=yes
10145    else
10146        groff_mm_works=no
10147    fi
10148    AC_MSG_RESULT([$groff_mm_works])
10149fi
10150
10151# We have groff, test for HTML dependencies, one command per package
10152if test "x$have_groff" = x"yes"; then
10153   AC_PATH_PROGS(GS_PATH, [gs gswin32c])
10154   AC_PATH_PROG(PNMTOPNG_PATH, [pnmtopng])
10155   AC_PATH_PROG(PSSELECT_PATH, [psselect])
10156   if test "x$GS_PATH" != "x" -a "x$PNMTOPNG_PATH" != "x" -a "x$PSSELECT_PATH" != "x"; then
10157      have_groff_html=yes
10158   else
10159      have_groff_html=no
10160      AC_MSG_WARN([grohtml dependencies not found - HTML Documentation skipped. Refer to grohtml man pages])
10161   fi
10162fi
10163
10164# Set Automake conditionals for Makefiles
10165AM_CONDITIONAL([HAVE_GROFF], [test "$have_groff" = yes])
10166AM_CONDITIONAL([HAVE_GROFF_MS], [test "$groff_ms_works" = yes])
10167AM_CONDITIONAL([HAVE_GROFF_MM], [test "$groff_mm_works" = yes])
10168AM_CONDITIONAL([HAVE_GROFF_HTML], [test "$have_groff_html" = yes])
10169]) # XORG_WITH_GROFF
10170
10171# XORG_WITH_FOP([MIN-VERSION], [DEFAULT])
10172# ---------------------------------------
10173# Minimum version: 1.6.0
10174# Minimum version for optional DEFAULT argument: 1.11.0
10175# Minimum version for optional MIN-VERSION argument: 1.15.0
10176#
10177# Documentation tools are not always available on all platforms and sometimes
10178# not at the appropriate level. This macro enables a module to test for the
10179# presence of the tool and obtain it's path in separate variables. Coupled with
10180# the --with-fop option, it allows maximum flexibilty in making decisions
10181# as whether or not to use the fop package. When DEFAULT is not specified,
10182# --with-fop assumes 'auto'.
10183#
10184# Interface to module:
10185# HAVE_FOP: 	used in makefiles to conditionally generate documentation
10186# FOP:	 	returns the path of the fop program found
10187#		returns the path set by the user in the environment
10188# --with-fop: 	'yes' user instructs the module to use fop
10189#		'no' user instructs the module not to use fop
10190#
10191# If the user sets the value of FOP, AC_PATH_PROG skips testing the path.
10192#
10193AC_DEFUN([XORG_WITH_FOP],[
10194AC_ARG_VAR([FOP], [Path to fop command])
10195m4_define([_defopt], m4_default([$2], [auto]))
10196AC_ARG_WITH(fop,
10197	AS_HELP_STRING([--with-fop],
10198	   [Use fop to regenerate documentation (default: ]_defopt[)]),
10199	   [use_fop=$withval], [use_fop=]_defopt)
10200m4_undefine([_defopt])
10201
10202if test "x$use_fop" = x"auto"; then
10203   AC_PATH_PROG([FOP], [fop])
10204   if test "x$FOP" = "x"; then
10205        AC_MSG_WARN([fop not found - documentation targets will be skipped])
10206	have_fop=no
10207   else
10208        have_fop=yes
10209   fi
10210elif test "x$use_fop" = x"yes" ; then
10211   AC_PATH_PROG([FOP], [fop])
10212   if test "x$FOP" = "x"; then
10213        AC_MSG_ERROR([--with-fop=yes specified but fop not found in PATH])
10214   fi
10215   have_fop=yes
10216elif test "x$use_fop" = x"no" ; then
10217   if test "x$FOP" != "x"; then
10218      AC_MSG_WARN([ignoring FOP environment variable since --with-fop=no was specified])
10219   fi
10220   have_fop=no
10221else
10222   AC_MSG_ERROR([--with-fop expects 'yes' or 'no'])
10223fi
10224
10225# Test for a minimum version of fop, if provided.
10226m4_ifval([$1],
10227[if test "$have_fop" = yes; then
10228    # scrape the fop version
10229    AC_MSG_CHECKING([for fop minimum version])
10230    fop_version=`$FOP -version 2>/dev/null | cut -d' ' -f3`
10231    AC_MSG_RESULT([$fop_version])
10232    AS_VERSION_COMPARE([$fop_version], [$1],
10233        [if test "x$use_fop" = xauto; then
10234            AC_MSG_WARN([fop version $fop_version found, but $1 needed])
10235            have_fop=no
10236        else
10237            AC_MSG_ERROR([fop version $fop_version found, but $1 needed])
10238        fi])
10239fi])
10240AM_CONDITIONAL([HAVE_FOP], [test "$have_fop" = yes])
10241]) # XORG_WITH_FOP
10242
10243# XORG_WITH_M4([MIN-VERSION])
10244# ---------------------------
10245# Minimum version: 1.19.0
10246#
10247# This macro attempts to locate an m4 macro processor which supports
10248# -I option and is only useful for modules relying on M4 in order to
10249# expand macros in source code files.
10250#
10251# Interface to module:
10252# M4:	 	returns the path of the m4 program found
10253#		returns the path set by the user in the environment
10254#
10255AC_DEFUN([XORG_WITH_M4], [
10256AC_CACHE_CHECK([for m4 that supports -I option], [ac_cv_path_M4],
10257   [AC_PATH_PROGS_FEATURE_CHECK([M4], [m4 gm4],
10258       [[$ac_path_M4 -I. /dev/null > /dev/null 2>&1 && \
10259         ac_cv_path_M4=$ac_path_M4 ac_path_M4_found=:]],
10260   [AC_MSG_ERROR([could not find m4 that supports -I option])],
10261   [$PATH:/usr/gnu/bin])])
10262
10263AC_SUBST([M4], [$ac_cv_path_M4])
10264]) # XORG_WITH_M4
10265
10266# XORG_WITH_PS2PDF([DEFAULT])
10267# ----------------
10268# Minimum version: 1.6.0
10269# Minimum version for optional DEFAULT argument: 1.11.0
10270#
10271# Documentation tools are not always available on all platforms and sometimes
10272# not at the appropriate level. This macro enables a module to test for the
10273# presence of the tool and obtain it's path in separate variables. Coupled with
10274# the --with-ps2pdf option, it allows maximum flexibilty in making decisions
10275# as whether or not to use the ps2pdf package. When DEFAULT is not specified,
10276# --with-ps2pdf assumes 'auto'.
10277#
10278# Interface to module:
10279# HAVE_PS2PDF: 	used in makefiles to conditionally generate documentation
10280# PS2PDF:	returns the path of the ps2pdf program found
10281#		returns the path set by the user in the environment
10282# --with-ps2pdf: 'yes' user instructs the module to use ps2pdf
10283#		 'no' user instructs the module not to use ps2pdf
10284#
10285# If the user sets the value of PS2PDF, AC_PATH_PROG skips testing the path.
10286#
10287AC_DEFUN([XORG_WITH_PS2PDF],[
10288AC_ARG_VAR([PS2PDF], [Path to ps2pdf command])
10289m4_define([_defopt], m4_default([$1], [auto]))
10290AC_ARG_WITH(ps2pdf,
10291	AS_HELP_STRING([--with-ps2pdf],
10292	   [Use ps2pdf to regenerate documentation (default: ]_defopt[)]),
10293	   [use_ps2pdf=$withval], [use_ps2pdf=]_defopt)
10294m4_undefine([_defopt])
10295
10296if test "x$use_ps2pdf" = x"auto"; then
10297   AC_PATH_PROG([PS2PDF], [ps2pdf])
10298   if test "x$PS2PDF" = "x"; then
10299        AC_MSG_WARN([ps2pdf not found - documentation targets will be skipped])
10300	have_ps2pdf=no
10301   else
10302        have_ps2pdf=yes
10303   fi
10304elif test "x$use_ps2pdf" = x"yes" ; then
10305   AC_PATH_PROG([PS2PDF], [ps2pdf])
10306   if test "x$PS2PDF" = "x"; then
10307        AC_MSG_ERROR([--with-ps2pdf=yes specified but ps2pdf not found in PATH])
10308   fi
10309   have_ps2pdf=yes
10310elif test "x$use_ps2pdf" = x"no" ; then
10311   if test "x$PS2PDF" != "x"; then
10312      AC_MSG_WARN([ignoring PS2PDF environment variable since --with-ps2pdf=no was specified])
10313   fi
10314   have_ps2pdf=no
10315else
10316   AC_MSG_ERROR([--with-ps2pdf expects 'yes' or 'no'])
10317fi
10318AM_CONDITIONAL([HAVE_PS2PDF], [test "$have_ps2pdf" = yes])
10319]) # XORG_WITH_PS2PDF
10320
10321# XORG_ENABLE_DOCS (enable_docs=yes)
10322# ----------------
10323# Minimum version: 1.6.0
10324#
10325# Documentation tools are not always available on all platforms and sometimes
10326# not at the appropriate level. This macro enables a builder to skip all
10327# documentation targets except traditional man pages.
10328# Combined with the specific tool checking macros XORG_WITH_*, it provides
10329# maximum flexibilty in controlling documentation building.
10330# Refer to:
10331# XORG_WITH_XMLTO         --with-xmlto
10332# XORG_WITH_ASCIIDOC      --with-asciidoc
10333# XORG_WITH_DOXYGEN       --with-doxygen
10334# XORG_WITH_FOP           --with-fop
10335# XORG_WITH_GROFF         --with-groff
10336# XORG_WITH_PS2PDF        --with-ps2pdf
10337#
10338# Interface to module:
10339# ENABLE_DOCS: 	  used in makefiles to conditionally generate documentation
10340# --enable-docs: 'yes' user instructs the module to generate docs
10341#		 'no' user instructs the module not to generate docs
10342# parm1:	specify the default value, yes or no.
10343#
10344AC_DEFUN([XORG_ENABLE_DOCS],[
10345m4_define([docs_default], m4_default([$1], [yes]))
10346AC_ARG_ENABLE(docs,
10347	AS_HELP_STRING([--enable-docs],
10348	   [Enable building the documentation (default: ]docs_default[)]),
10349	   [build_docs=$enableval], [build_docs=]docs_default)
10350m4_undefine([docs_default])
10351AM_CONDITIONAL(ENABLE_DOCS, [test x$build_docs = xyes])
10352AC_MSG_CHECKING([whether to build documentation])
10353AC_MSG_RESULT([$build_docs])
10354]) # XORG_ENABLE_DOCS
10355
10356# XORG_ENABLE_DEVEL_DOCS (enable_devel_docs=yes)
10357# ----------------
10358# Minimum version: 1.6.0
10359#
10360# This macro enables a builder to skip all developer documentation.
10361# Combined with the specific tool checking macros XORG_WITH_*, it provides
10362# maximum flexibilty in controlling documentation building.
10363# Refer to:
10364# XORG_WITH_XMLTO         --with-xmlto
10365# XORG_WITH_ASCIIDOC      --with-asciidoc
10366# XORG_WITH_DOXYGEN       --with-doxygen
10367# XORG_WITH_FOP           --with-fop
10368# XORG_WITH_GROFF         --with-groff
10369# XORG_WITH_PS2PDF        --with-ps2pdf
10370#
10371# Interface to module:
10372# ENABLE_DEVEL_DOCS:	used in makefiles to conditionally generate developer docs
10373# --enable-devel-docs:	'yes' user instructs the module to generate developer docs
10374#			'no' user instructs the module not to generate developer docs
10375# parm1:		specify the default value, yes or no.
10376#
10377AC_DEFUN([XORG_ENABLE_DEVEL_DOCS],[
10378m4_define([devel_default], m4_default([$1], [yes]))
10379AC_ARG_ENABLE(devel-docs,
10380	AS_HELP_STRING([--enable-devel-docs],
10381	   [Enable building the developer documentation (default: ]devel_default[)]),
10382	   [build_devel_docs=$enableval], [build_devel_docs=]devel_default)
10383m4_undefine([devel_default])
10384AM_CONDITIONAL(ENABLE_DEVEL_DOCS, [test x$build_devel_docs = xyes])
10385AC_MSG_CHECKING([whether to build developer documentation])
10386AC_MSG_RESULT([$build_devel_docs])
10387]) # XORG_ENABLE_DEVEL_DOCS
10388
10389# XORG_ENABLE_SPECS (enable_specs=yes)
10390# ----------------
10391# Minimum version: 1.6.0
10392#
10393# This macro enables a builder to skip all functional specification targets.
10394# Combined with the specific tool checking macros XORG_WITH_*, it provides
10395# maximum flexibilty in controlling documentation building.
10396# Refer to:
10397# XORG_WITH_XMLTO         --with-xmlto
10398# XORG_WITH_ASCIIDOC      --with-asciidoc
10399# XORG_WITH_DOXYGEN       --with-doxygen
10400# XORG_WITH_FOP           --with-fop
10401# XORG_WITH_GROFF         --with-groff
10402# XORG_WITH_PS2PDF        --with-ps2pdf
10403#
10404# Interface to module:
10405# ENABLE_SPECS:		used in makefiles to conditionally generate specs
10406# --enable-specs:	'yes' user instructs the module to generate specs
10407#			'no' user instructs the module not to generate specs
10408# parm1:		specify the default value, yes or no.
10409#
10410AC_DEFUN([XORG_ENABLE_SPECS],[
10411m4_define([spec_default], m4_default([$1], [yes]))
10412AC_ARG_ENABLE(specs,
10413	AS_HELP_STRING([--enable-specs],
10414	   [Enable building the specs (default: ]spec_default[)]),
10415	   [build_specs=$enableval], [build_specs=]spec_default)
10416m4_undefine([spec_default])
10417AM_CONDITIONAL(ENABLE_SPECS, [test x$build_specs = xyes])
10418AC_MSG_CHECKING([whether to build functional specifications])
10419AC_MSG_RESULT([$build_specs])
10420]) # XORG_ENABLE_SPECS
10421
10422# XORG_ENABLE_UNIT_TESTS (enable_unit_tests=auto)
10423# ----------------------------------------------
10424# Minimum version: 1.13.0
10425#
10426# This macro enables a builder to enable/disable unit testing
10427# It makes no assumption about the test cases implementation
10428# Test cases may or may not use Automake "Support for test suites"
10429# They may or may not use the software utility library GLib
10430#
10431# When used in conjunction with XORG_WITH_GLIB, use both AM_CONDITIONAL
10432# ENABLE_UNIT_TESTS and HAVE_GLIB. Not all unit tests may use glib.
10433# The variable enable_unit_tests is used by other macros in this file.
10434#
10435# Interface to module:
10436# ENABLE_UNIT_TESTS:	used in makefiles to conditionally build tests
10437# enable_unit_tests:    used in configure.ac for additional configuration
10438# --enable-unit-tests:	'yes' user instructs the module to build tests
10439#			'no' user instructs the module not to build tests
10440# parm1:		specify the default value, yes or no.
10441#
10442AC_DEFUN([XORG_ENABLE_UNIT_TESTS],[
10443AC_BEFORE([$0], [XORG_WITH_GLIB])
10444AC_BEFORE([$0], [XORG_LD_WRAP])
10445AC_REQUIRE([XORG_MEMORY_CHECK_FLAGS])
10446m4_define([_defopt], m4_default([$1], [auto]))
10447AC_ARG_ENABLE(unit-tests, AS_HELP_STRING([--enable-unit-tests],
10448	[Enable building unit test cases (default: ]_defopt[)]),
10449	[enable_unit_tests=$enableval], [enable_unit_tests=]_defopt)
10450m4_undefine([_defopt])
10451AM_CONDITIONAL(ENABLE_UNIT_TESTS, [test "x$enable_unit_tests" != xno])
10452AC_MSG_CHECKING([whether to build unit test cases])
10453AC_MSG_RESULT([$enable_unit_tests])
10454]) # XORG_ENABLE_UNIT_TESTS
10455
10456# XORG_ENABLE_INTEGRATION_TESTS (enable_unit_tests=auto)
10457# ------------------------------------------------------
10458# Minimum version: 1.17.0
10459#
10460# This macro enables a builder to enable/disable integration testing
10461# It makes no assumption about the test cases' implementation
10462# Test cases may or may not use Automake "Support for test suites"
10463#
10464# Please see XORG_ENABLE_UNIT_TESTS for unit test support. Unit test support
10465# usually requires less dependencies and may be built and run under less
10466# stringent environments than integration tests.
10467#
10468# Interface to module:
10469# ENABLE_INTEGRATION_TESTS:   used in makefiles to conditionally build tests
10470# enable_integration_tests:   used in configure.ac for additional configuration
10471# --enable-integration-tests: 'yes' user instructs the module to build tests
10472#                             'no' user instructs the module not to build tests
10473# parm1:                      specify the default value, yes or no.
10474#
10475AC_DEFUN([XORG_ENABLE_INTEGRATION_TESTS],[
10476AC_REQUIRE([XORG_MEMORY_CHECK_FLAGS])
10477m4_define([_defopt], m4_default([$1], [auto]))
10478AC_ARG_ENABLE(integration-tests, AS_HELP_STRING([--enable-integration-tests],
10479	[Enable building integration test cases (default: ]_defopt[)]),
10480	[enable_integration_tests=$enableval],
10481	[enable_integration_tests=]_defopt)
10482m4_undefine([_defopt])
10483AM_CONDITIONAL([ENABLE_INTEGRATION_TESTS],
10484	[test "x$enable_integration_tests" != xno])
10485AC_MSG_CHECKING([whether to build unit test cases])
10486AC_MSG_RESULT([$enable_integration_tests])
10487]) # XORG_ENABLE_INTEGRATION_TESTS
10488
10489# XORG_WITH_GLIB([MIN-VERSION], [DEFAULT])
10490# ----------------------------------------
10491# Minimum version: 1.13.0
10492#
10493# GLib is a library which provides advanced data structures and functions.
10494# This macro enables a module to test for the presence of Glib.
10495#
10496# When used with ENABLE_UNIT_TESTS, it is assumed GLib is used for unit testing.
10497# Otherwise the value of $enable_unit_tests is blank.
10498#
10499# Please see XORG_ENABLE_INTEGRATION_TESTS for integration test support. Unit
10500# test support usually requires less dependencies and may be built and run under
10501# less stringent environments than integration tests.
10502#
10503# Interface to module:
10504# HAVE_GLIB: used in makefiles to conditionally build targets
10505# with_glib: used in configure.ac to know if GLib has been found
10506# --with-glib:	'yes' user instructs the module to use glib
10507#		'no' user instructs the module not to use glib
10508#
10509AC_DEFUN([XORG_WITH_GLIB],[
10510AC_REQUIRE([PKG_PROG_PKG_CONFIG])
10511m4_define([_defopt], m4_default([$2], [auto]))
10512AC_ARG_WITH(glib, AS_HELP_STRING([--with-glib],
10513	[Use GLib library for unit testing (default: ]_defopt[)]),
10514	[with_glib=$withval], [with_glib=]_defopt)
10515m4_undefine([_defopt])
10516
10517have_glib=no
10518# Do not probe GLib if user explicitly disabled unit testing
10519if test "x$enable_unit_tests" != x"no"; then
10520  # Do not probe GLib if user explicitly disabled it
10521  if test "x$with_glib" != x"no"; then
10522    m4_ifval(
10523      [$1],
10524      [PKG_CHECK_MODULES([GLIB], [glib-2.0 >= $1], [have_glib=yes], [have_glib=no])],
10525      [PKG_CHECK_MODULES([GLIB], [glib-2.0], [have_glib=yes], [have_glib=no])]
10526    )
10527  fi
10528fi
10529
10530# Not having GLib when unit testing has been explicitly requested is an error
10531if test "x$enable_unit_tests" = x"yes"; then
10532  if test "x$have_glib" = x"no"; then
10533    AC_MSG_ERROR([--enable-unit-tests=yes specified but glib-2.0 not found])
10534  fi
10535fi
10536
10537# Having unit testing disabled when GLib has been explicitly requested is an error
10538if test "x$enable_unit_tests" = x"no"; then
10539  if test "x$with_glib" = x"yes"; then
10540    AC_MSG_ERROR([--enable-unit-tests=yes specified but glib-2.0 not found])
10541  fi
10542fi
10543
10544# Not having GLib when it has been explicitly requested is an error
10545if test "x$with_glib" = x"yes"; then
10546  if test "x$have_glib" = x"no"; then
10547    AC_MSG_ERROR([--with-glib=yes specified but glib-2.0 not found])
10548  fi
10549fi
10550
10551AM_CONDITIONAL([HAVE_GLIB], [test "$have_glib" = yes])
10552]) # XORG_WITH_GLIB
10553
10554# XORG_LD_WRAP([required|optional])
10555# ---------------------------------
10556# Minimum version: 1.13.0
10557#
10558# Check if linker supports -wrap, passed via compiler flags
10559#
10560# When used with ENABLE_UNIT_TESTS, it is assumed -wrap is used for unit testing.
10561# Otherwise the value of $enable_unit_tests is blank.
10562#
10563# Argument added in 1.16.0 - default is "required", to match existing behavior
10564# of returning an error if enable_unit_tests is yes, and ld -wrap is not
10565# available, an argument of "optional" allows use when some unit tests require
10566# ld -wrap and others do not.
10567#
10568AC_DEFUN([XORG_LD_WRAP],[
10569XORG_CHECK_LINKER_FLAGS([-Wl,-wrap,exit],[have_ld_wrap=yes],[have_ld_wrap=no],
10570    [AC_LANG_PROGRAM([#include <stdlib.h>
10571                      void __wrap_exit(int status) { return; }],
10572                     [exit(0);])])
10573# Not having ld wrap when unit testing has been explicitly requested is an error
10574if test "x$enable_unit_tests" = x"yes" -a "x$1" != "xoptional"; then
10575  if test "x$have_ld_wrap" = x"no"; then
10576    AC_MSG_ERROR([--enable-unit-tests=yes specified but ld -wrap support is not available])
10577  fi
10578fi
10579AM_CONDITIONAL([HAVE_LD_WRAP], [test "$have_ld_wrap" = yes])
10580#
10581]) # XORG_LD_WRAP
10582
10583# XORG_CHECK_LINKER_FLAGS
10584# -----------------------
10585# SYNOPSIS
10586#
10587#   XORG_CHECK_LINKER_FLAGS(FLAGS, [ACTION-SUCCESS], [ACTION-FAILURE], [PROGRAM-SOURCE])
10588#
10589# DESCRIPTION
10590#
10591#   Check whether the given linker FLAGS work with the current language's
10592#   linker, or whether they give an error.
10593#
10594#   ACTION-SUCCESS/ACTION-FAILURE are shell commands to execute on
10595#   success/failure.
10596#
10597#   PROGRAM-SOURCE is the program source to link with, if needed
10598#
10599#   NOTE: Based on AX_CHECK_COMPILER_FLAGS.
10600#
10601# LICENSE
10602#
10603#   Copyright (c) 2009 Mike Frysinger <vapier@gentoo.org>
10604#   Copyright (c) 2009 Steven G. Johnson <stevenj@alum.mit.edu>
10605#   Copyright (c) 2009 Matteo Frigo
10606#
10607#   This program is free software: you can redistribute it and/or modify it
10608#   under the terms of the GNU General Public License as published by the
10609#   Free Software Foundation, either version 3 of the License, or (at your
10610#   option) any later version.
10611#
10612#   This program is distributed in the hope that it will be useful, but
10613#   WITHOUT ANY WARRANTY; without even the implied warranty of
10614#   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General
10615#   Public License for more details.
10616#
10617#   You should have received a copy of the GNU General Public License along
10618#   with this program. If not, see <http://www.gnu.org/licenses/>.
10619#
10620#   As a special exception, the respective Autoconf Macro's copyright owner
10621#   gives unlimited permission to copy, distribute and modify the configure
10622#   scripts that are the output of Autoconf when processing the Macro. You
10623#   need not follow the terms of the GNU General Public License when using
10624#   or distributing such scripts, even though portions of the text of the
10625#   Macro appear in them. The GNU General Public License (GPL) does govern
10626#   all other use of the material that constitutes the Autoconf Macro.
10627#
10628#   This special exception to the GPL applies to versions of the Autoconf
10629#   Macro released by the Autoconf Archive. When you make and distribute a
10630#   modified version of the Autoconf Macro, you may extend this special
10631#   exception to the GPL to apply to your modified version as well.#
10632AC_DEFUN([XORG_CHECK_LINKER_FLAGS],
10633[AC_MSG_CHECKING([whether the linker accepts $1])
10634dnl Some hackery here since AC_CACHE_VAL can't handle a non-literal varname:
10635AS_LITERAL_IF([$1],
10636  [AC_CACHE_VAL(AS_TR_SH(xorg_cv_linker_flags_[$1]), [
10637      ax_save_FLAGS=$LDFLAGS
10638      LDFLAGS="$1"
10639      AC_LINK_IFELSE([m4_default([$4],[AC_LANG_PROGRAM()])],
10640        AS_TR_SH(xorg_cv_linker_flags_[$1])=yes,
10641        AS_TR_SH(xorg_cv_linker_flags_[$1])=no)
10642      LDFLAGS=$ax_save_FLAGS])],
10643  [ax_save_FLAGS=$LDFLAGS
10644   LDFLAGS="$1"
10645   AC_LINK_IFELSE([AC_LANG_PROGRAM()],
10646     eval AS_TR_SH(xorg_cv_linker_flags_[$1])=yes,
10647     eval AS_TR_SH(xorg_cv_linker_flags_[$1])=no)
10648   LDFLAGS=$ax_save_FLAGS])
10649eval xorg_check_linker_flags=$AS_TR_SH(xorg_cv_linker_flags_[$1])
10650AC_MSG_RESULT($xorg_check_linker_flags)
10651if test "x$xorg_check_linker_flags" = xyes; then
10652	m4_default([$2], :)
10653else
10654	m4_default([$3], :)
10655fi
10656]) # XORG_CHECK_LINKER_FLAGS
10657
10658# XORG_MEMORY_CHECK_FLAGS
10659# -----------------------
10660# Minimum version: 1.16.0
10661#
10662# This macro attempts to find appropriate memory checking functionality
10663# for various platforms which unit testing code may use to catch various
10664# forms of memory allocation and access errors in testing.
10665#
10666# Interface to module:
10667# XORG_MALLOC_DEBUG_ENV - environment variables to set to enable debugging
10668#                         Usually added to TESTS_ENVIRONMENT in Makefile.am
10669#
10670# If the user sets the value of XORG_MALLOC_DEBUG_ENV, it is used verbatim.
10671#
10672AC_DEFUN([XORG_MEMORY_CHECK_FLAGS],[
10673
10674AC_REQUIRE([AC_CANONICAL_HOST])
10675AC_ARG_VAR([XORG_MALLOC_DEBUG_ENV],
10676           [Environment variables to enable memory checking in tests])
10677
10678# Check for different types of support on different platforms
10679case $host_os in
10680    solaris*)
10681        AC_CHECK_LIB([umem], [umem_alloc],
10682            [malloc_debug_env='LD_PRELOAD=libumem.so UMEM_DEBUG=default'])
10683        ;;
10684    *-gnu*) # GNU libc - Value is used as a single byte bit pattern,
10685        # both directly and inverted, so should not be 0 or 255.
10686        malloc_debug_env='MALLOC_PERTURB_=15'
10687        ;;
10688    darwin*)
10689        malloc_debug_env='MallocPreScribble=1 MallocScribble=1 DYLD_INSERT_LIBRARIES=/usr/lib/libgmalloc.dylib'
10690        ;;
10691    *bsd*)
10692        malloc_debug_env='MallocPreScribble=1 MallocScribble=1'
10693        ;;
10694esac
10695
10696# User supplied flags override default flags
10697if test "x$XORG_MALLOC_DEBUG_ENV" != "x"; then
10698    malloc_debug_env="$XORG_MALLOC_DEBUG_ENV"
10699fi
10700
10701AC_SUBST([XORG_MALLOC_DEBUG_ENV],[$malloc_debug_env])
10702]) # XORG_WITH_LINT
10703
10704# XORG_CHECK_MALLOC_ZERO
10705# ----------------------
10706# Minimum version: 1.0.0
10707#
10708# Defines {MALLOC,XMALLOC,XTMALLOC}_ZERO_CFLAGS appropriately if
10709# malloc(0) returns NULL.  Packages should add one of these cflags to
10710# their AM_CFLAGS (or other appropriate *_CFLAGS) to use them.
10711AC_DEFUN([XORG_CHECK_MALLOC_ZERO],[
10712AC_ARG_ENABLE(malloc0returnsnull,
10713	AS_HELP_STRING([--enable-malloc0returnsnull],
10714		       [malloc(0) returns NULL (default: auto)]),
10715	[MALLOC_ZERO_RETURNS_NULL=$enableval],
10716	[MALLOC_ZERO_RETURNS_NULL=auto])
10717
10718AC_MSG_CHECKING([whether malloc(0) returns NULL])
10719if test "x$MALLOC_ZERO_RETURNS_NULL" = xauto; then
10720AC_CACHE_VAL([xorg_cv_malloc0_returns_null],
10721	[AC_RUN_IFELSE([AC_LANG_PROGRAM([
10722#include <stdlib.h>
10723],[
10724    char *m0, *r0, *c0, *p;
10725    m0 = malloc(0);
10726    p = malloc(10);
10727    r0 = realloc(p,0);
10728    c0 = calloc(0,10);
10729    exit((m0 == 0 || r0 == 0 || c0 == 0) ? 0 : 1);
10730])],
10731		[xorg_cv_malloc0_returns_null=yes],
10732		[xorg_cv_malloc0_returns_null=no])])
10733MALLOC_ZERO_RETURNS_NULL=$xorg_cv_malloc0_returns_null
10734fi
10735AC_MSG_RESULT([$MALLOC_ZERO_RETURNS_NULL])
10736
10737if test "x$MALLOC_ZERO_RETURNS_NULL" = xyes; then
10738	MALLOC_ZERO_CFLAGS="-DMALLOC_0_RETURNS_NULL"
10739	XMALLOC_ZERO_CFLAGS=$MALLOC_ZERO_CFLAGS
10740	XTMALLOC_ZERO_CFLAGS="$MALLOC_ZERO_CFLAGS -DXTMALLOC_BC"
10741else
10742	MALLOC_ZERO_CFLAGS=""
10743	XMALLOC_ZERO_CFLAGS=""
10744	XTMALLOC_ZERO_CFLAGS=""
10745fi
10746
10747AC_SUBST([MALLOC_ZERO_CFLAGS])
10748AC_SUBST([XMALLOC_ZERO_CFLAGS])
10749AC_SUBST([XTMALLOC_ZERO_CFLAGS])
10750]) # XORG_CHECK_MALLOC_ZERO
10751
10752# XORG_WITH_LINT()
10753# ----------------
10754# Minimum version: 1.1.0
10755#
10756# This macro enables the use of a tool that flags some suspicious and
10757# non-portable constructs (likely to be bugs) in C language source code.
10758# It will attempt to locate the tool and use appropriate options.
10759# There are various lint type tools on different platforms.
10760#
10761# Interface to module:
10762# LINT:		returns the path to the tool found on the platform
10763#		or the value set to LINT on the configure cmd line
10764#		also an Automake conditional
10765# LINT_FLAGS:	an Automake variable with appropriate flags
10766#
10767# --with-lint:	'yes' user instructs the module to use lint
10768#		'no' user instructs the module not to use lint (default)
10769#
10770# If the user sets the value of LINT, AC_PATH_PROG skips testing the path.
10771# If the user sets the value of LINT_FLAGS, they are used verbatim.
10772#
10773AC_DEFUN([XORG_WITH_LINT],[
10774
10775AC_ARG_VAR([LINT], [Path to a lint-style command])
10776AC_ARG_VAR([LINT_FLAGS], [Flags for the lint-style command])
10777AC_ARG_WITH(lint, [AS_HELP_STRING([--with-lint],
10778		[Use a lint-style source code checker (default: disabled)])],
10779		[use_lint=$withval], [use_lint=no])
10780
10781# Obtain platform specific info like program name and options
10782# The lint program on FreeBSD and NetBSD is different from the one on Solaris
10783case $host_os in
10784  *linux* | *openbsd* | kfreebsd*-gnu | darwin* | cygwin*)
10785	lint_name=splint
10786	lint_options="-badflag"
10787	;;
10788  *freebsd* | *netbsd*)
10789	lint_name=lint
10790	lint_options="-u -b"
10791	;;
10792  *solaris*)
10793	lint_name=lint
10794	lint_options="-u -b -h -erroff=E_INDISTING_FROM_TRUNC2"
10795	;;
10796esac
10797
10798# Test for the presence of the program (either guessed by the code or spelled out by the user)
10799if test "x$use_lint" = x"yes" ; then
10800   AC_PATH_PROG([LINT], [$lint_name])
10801   if test "x$LINT" = "x"; then
10802        AC_MSG_ERROR([--with-lint=yes specified but lint-style tool not found in PATH])
10803   fi
10804elif test "x$use_lint" = x"no" ; then
10805   if test "x$LINT" != "x"; then
10806      AC_MSG_WARN([ignoring LINT environment variable since --with-lint=no was specified])
10807   fi
10808else
10809   AC_MSG_ERROR([--with-lint expects 'yes' or 'no'. Use LINT variable to specify path.])
10810fi
10811
10812# User supplied flags override default flags
10813if test "x$LINT_FLAGS" != "x"; then
10814   lint_options=$LINT_FLAGS
10815fi
10816
10817AC_SUBST([LINT_FLAGS],[$lint_options])
10818AM_CONDITIONAL(LINT, [test "x$LINT" != x])
10819
10820]) # XORG_WITH_LINT
10821
10822# XORG_LINT_LIBRARY(LIBNAME)
10823# --------------------------
10824# Minimum version: 1.1.0
10825#
10826# Sets up flags for building lint libraries for checking programs that call
10827# functions in the library.
10828#
10829# Interface to module:
10830# LINTLIB		- Automake variable with the name of lint library file to make
10831# MAKE_LINT_LIB		- Automake conditional
10832#
10833# --enable-lint-library:  - 'yes' user instructs the module to created a lint library
10834#			  - 'no' user instructs the module not to create a lint library (default)
10835
10836AC_DEFUN([XORG_LINT_LIBRARY],[
10837AC_REQUIRE([XORG_WITH_LINT])
10838AC_ARG_ENABLE(lint-library, [AS_HELP_STRING([--enable-lint-library],
10839	[Create lint library (default: disabled)])],
10840	[make_lint_lib=$enableval], [make_lint_lib=no])
10841
10842if test "x$make_lint_lib" = x"yes" ; then
10843   LINTLIB=llib-l$1.ln
10844   if test "x$LINT" = "x"; then
10845        AC_MSG_ERROR([Cannot make lint library without --with-lint])
10846   fi
10847elif test "x$make_lint_lib" != x"no" ; then
10848   AC_MSG_ERROR([--enable-lint-library expects 'yes' or 'no'.])
10849fi
10850
10851AC_SUBST(LINTLIB)
10852AM_CONDITIONAL(MAKE_LINT_LIB, [test x$make_lint_lib != xno])
10853
10854]) # XORG_LINT_LIBRARY
10855
10856# XORG_COMPILER_BRAND
10857# -------------------
10858# Minimum version: 1.14.0
10859#
10860# Checks for various brands of compilers and sets flags as appropriate:
10861#   GNU gcc - relies on AC_PROG_CC (via AC_PROG_CC_C99) to set GCC to "yes"
10862#   GNU g++ - relies on AC_PROG_CXX to set GXX to "yes"
10863#   clang compiler - sets CLANGCC to "yes"
10864#   Intel compiler - sets INTELCC to "yes"
10865#   Sun/Oracle Solaris Studio cc - sets SUNCC to "yes"
10866#
10867AC_DEFUN([XORG_COMPILER_BRAND], [
10868AC_LANG_CASE(
10869	[C], [
10870		AC_REQUIRE([AC_PROG_CC_C99])
10871	],
10872	[C++], [
10873		AC_REQUIRE([AC_PROG_CXX])
10874	]
10875)
10876AC_CHECK_DECL([__clang__], [CLANGCC="yes"], [CLANGCC="no"])
10877AC_CHECK_DECL([__INTEL_COMPILER], [INTELCC="yes"], [INTELCC="no"])
10878AC_CHECK_DECL([__SUNPRO_C], [SUNCC="yes"], [SUNCC="no"])
10879]) # XORG_COMPILER_BRAND
10880
10881# XORG_TESTSET_CFLAG(<variable>, <flag>, [<alternative flag>, ...])
10882# ---------------
10883# Minimum version: 1.16.0
10884#
10885# Test if the compiler works when passed the given flag as a command line argument.
10886# If it succeeds, the flag is appeneded to the given variable.  If not, it tries the
10887# next flag in the list until there are no more options.
10888#
10889# Note that this does not guarantee that the compiler supports the flag as some
10890# compilers will simply ignore arguments that they do not understand, but we do
10891# attempt to weed out false positives by using -Werror=unknown-warning-option and
10892# -Werror=unused-command-line-argument
10893#
10894AC_DEFUN([XORG_TESTSET_CFLAG], [
10895m4_if([$#], 0, [m4_fatal([XORG_TESTSET_CFLAG was given with an unsupported number of arguments])])
10896m4_if([$#], 1, [m4_fatal([XORG_TESTSET_CFLAG was given with an unsupported number of arguments])])
10897
10898AC_LANG_COMPILER_REQUIRE
10899
10900AC_LANG_CASE(
10901	[C], [
10902		AC_REQUIRE([AC_PROG_CC_C99])
10903		define([PREFIX], [C])
10904		define([CACHE_PREFIX], [cc])
10905		define([COMPILER], [$CC])
10906	],
10907	[C++], [
10908		define([PREFIX], [CXX])
10909		define([CACHE_PREFIX], [cxx])
10910		define([COMPILER], [$CXX])
10911	]
10912)
10913
10914[xorg_testset_save_]PREFIX[FLAGS]="$PREFIX[FLAGS]"
10915
10916if test "x$[xorg_testset_]CACHE_PREFIX[_unknown_warning_option]" = "x" ; then
10917	PREFIX[FLAGS]="$PREFIX[FLAGS] -Werror=unknown-warning-option"
10918	AC_CACHE_CHECK([if ]COMPILER[ supports -Werror=unknown-warning-option],
10919			[xorg_cv_]CACHE_PREFIX[_flag_unknown_warning_option],
10920			AC_COMPILE_IFELSE([AC_LANG_SOURCE([int i;])],
10921					  [xorg_cv_]CACHE_PREFIX[_flag_unknown_warning_option=yes],
10922					  [xorg_cv_]CACHE_PREFIX[_flag_unknown_warning_option=no]))
10923	[xorg_testset_]CACHE_PREFIX[_unknown_warning_option]=$[xorg_cv_]CACHE_PREFIX[_flag_unknown_warning_option]
10924	PREFIX[FLAGS]="$[xorg_testset_save_]PREFIX[FLAGS]"
10925fi
10926
10927if test "x$[xorg_testset_]CACHE_PREFIX[_unused_command_line_argument]" = "x" ; then
10928	if test "x$[xorg_testset_]CACHE_PREFIX[_unknown_warning_option]" = "xyes" ; then
10929		PREFIX[FLAGS]="$PREFIX[FLAGS] -Werror=unknown-warning-option"
10930	fi
10931	PREFIX[FLAGS]="$PREFIX[FLAGS] -Werror=unused-command-line-argument"
10932	AC_CACHE_CHECK([if ]COMPILER[ supports -Werror=unused-command-line-argument],
10933			[xorg_cv_]CACHE_PREFIX[_flag_unused_command_line_argument],
10934			AC_COMPILE_IFELSE([AC_LANG_SOURCE([int i;])],
10935					  [xorg_cv_]CACHE_PREFIX[_flag_unused_command_line_argument=yes],
10936					  [xorg_cv_]CACHE_PREFIX[_flag_unused_command_line_argument=no]))
10937	[xorg_testset_]CACHE_PREFIX[_unused_command_line_argument]=$[xorg_cv_]CACHE_PREFIX[_flag_unused_command_line_argument]
10938	PREFIX[FLAGS]="$[xorg_testset_save_]PREFIX[FLAGS]"
10939fi
10940
10941found="no"
10942m4_foreach([flag], m4_cdr($@), [
10943	if test $found = "no" ; then
10944		if test "x$xorg_testset_]CACHE_PREFIX[_unknown_warning_option" = "xyes" ; then
10945			PREFIX[FLAGS]="$PREFIX[FLAGS] -Werror=unknown-warning-option"
10946		fi
10947
10948		if test "x$xorg_testset_]CACHE_PREFIX[_unused_command_line_argument" = "xyes" ; then
10949			PREFIX[FLAGS]="$PREFIX[FLAGS] -Werror=unused-command-line-argument"
10950		fi
10951
10952		PREFIX[FLAGS]="$PREFIX[FLAGS] ]flag["
10953
10954dnl Some hackery here since AC_CACHE_VAL can't handle a non-literal varname
10955		AC_MSG_CHECKING([if ]COMPILER[ supports ]flag[])
10956		cacheid=AS_TR_SH([xorg_cv_]CACHE_PREFIX[_flag_]flag[])
10957		AC_CACHE_VAL($cacheid,
10958			     [AC_LINK_IFELSE([AC_LANG_PROGRAM([int i;])],
10959					     [eval $cacheid=yes],
10960					     [eval $cacheid=no])])
10961
10962		PREFIX[FLAGS]="$[xorg_testset_save_]PREFIX[FLAGS]"
10963
10964		eval supported=\$$cacheid
10965		AC_MSG_RESULT([$supported])
10966		if test "$supported" = "yes" ; then
10967			$1="$$1 ]flag["
10968			found="yes"
10969		fi
10970	fi
10971])
10972]) # XORG_TESTSET_CFLAG
10973
10974# XORG_COMPILER_FLAGS
10975# ---------------
10976# Minimum version: 1.16.0
10977#
10978# Defines BASE_CFLAGS or BASE_CXXFLAGS to contain a set of command line
10979# arguments supported by the selected compiler which do NOT alter the generated
10980# code.  These arguments will cause the compiler to print various warnings
10981# during compilation AND turn a conservative set of warnings into errors.
10982#
10983# The set of flags supported by BASE_CFLAGS and BASE_CXXFLAGS will grow in
10984# future versions of util-macros as options are added to new compilers.
10985#
10986AC_DEFUN([XORG_COMPILER_FLAGS], [
10987AC_REQUIRE([XORG_COMPILER_BRAND])
10988
10989AC_ARG_ENABLE(selective-werror,
10990              AS_HELP_STRING([--disable-selective-werror],
10991                             [Turn off selective compiler errors. (default: enabled)]),
10992              [SELECTIVE_WERROR=$enableval],
10993              [SELECTIVE_WERROR=yes])
10994
10995AC_LANG_CASE(
10996        [C], [
10997                define([PREFIX], [C])
10998        ],
10999        [C++], [
11000                define([PREFIX], [CXX])
11001        ]
11002)
11003# -v is too short to test reliably with XORG_TESTSET_CFLAG
11004if test "x$SUNCC" = "xyes"; then
11005    [BASE_]PREFIX[FLAGS]="-v"
11006else
11007    [BASE_]PREFIX[FLAGS]=""
11008fi
11009
11010# This chunk of warnings were those that existed in the legacy CWARNFLAGS
11011XORG_TESTSET_CFLAG([[BASE_]PREFIX[FLAGS]], [-Wall])
11012XORG_TESTSET_CFLAG([[BASE_]PREFIX[FLAGS]], [-Wpointer-arith])
11013XORG_TESTSET_CFLAG([[BASE_]PREFIX[FLAGS]], [-Wmissing-declarations])
11014XORG_TESTSET_CFLAG([[BASE_]PREFIX[FLAGS]], [-Wformat=2], [-Wformat])
11015
11016AC_LANG_CASE(
11017	[C], [
11018		XORG_TESTSET_CFLAG([[BASE_]PREFIX[FLAGS]], [-Wstrict-prototypes])
11019		XORG_TESTSET_CFLAG([[BASE_]PREFIX[FLAGS]], [-Wmissing-prototypes])
11020		XORG_TESTSET_CFLAG([[BASE_]PREFIX[FLAGS]], [-Wnested-externs])
11021		XORG_TESTSET_CFLAG([[BASE_]PREFIX[FLAGS]], [-Wbad-function-cast])
11022		XORG_TESTSET_CFLAG([[BASE_]PREFIX[FLAGS]], [-Wold-style-definition], [-fd])
11023		XORG_TESTSET_CFLAG([[BASE_]PREFIX[FLAGS]], [-Wdeclaration-after-statement])
11024	]
11025)
11026
11027# This chunk adds additional warnings that could catch undesired effects.
11028XORG_TESTSET_CFLAG([[BASE_]PREFIX[FLAGS]], [-Wunused])
11029XORG_TESTSET_CFLAG([[BASE_]PREFIX[FLAGS]], [-Wuninitialized])
11030XORG_TESTSET_CFLAG([[BASE_]PREFIX[FLAGS]], [-Wshadow])
11031XORG_TESTSET_CFLAG([[BASE_]PREFIX[FLAGS]], [-Wmissing-noreturn])
11032XORG_TESTSET_CFLAG([[BASE_]PREFIX[FLAGS]], [-Wmissing-format-attribute])
11033XORG_TESTSET_CFLAG([[BASE_]PREFIX[FLAGS]], [-Wredundant-decls])
11034XORG_TESTSET_CFLAG([[BASE_]PREFIX[FLAGS]], [-Wlogical-op])
11035
11036# These are currently disabled because they are noisy.  They will be enabled
11037# in the future once the codebase is sufficiently modernized to silence
11038# them.  For now, I don't want them to drown out the other warnings.
11039# XORG_TESTSET_CFLAG([[BASE_]PREFIX[FLAGS]], [-Wparentheses])
11040# XORG_TESTSET_CFLAG([[BASE_]PREFIX[FLAGS]], [-Wcast-align])
11041# XORG_TESTSET_CFLAG([[BASE_]PREFIX[FLAGS]], [-Wcast-qual])
11042
11043# Turn some warnings into errors, so we don't accidently get successful builds
11044# when there are problems that should be fixed.
11045
11046if test "x$SELECTIVE_WERROR" = "xyes" ; then
11047XORG_TESTSET_CFLAG([[BASE_]PREFIX[FLAGS]], [-Werror=implicit], [-errwarn=E_NO_EXPLICIT_TYPE_GIVEN -errwarn=E_NO_IMPLICIT_DECL_ALLOWED])
11048XORG_TESTSET_CFLAG([[BASE_]PREFIX[FLAGS]], [-Werror=nonnull])
11049XORG_TESTSET_CFLAG([[BASE_]PREFIX[FLAGS]], [-Werror=init-self])
11050XORG_TESTSET_CFLAG([[BASE_]PREFIX[FLAGS]], [-Werror=main])
11051XORG_TESTSET_CFLAG([[BASE_]PREFIX[FLAGS]], [-Werror=missing-braces])
11052XORG_TESTSET_CFLAG([[BASE_]PREFIX[FLAGS]], [-Werror=sequence-point])
11053XORG_TESTSET_CFLAG([[BASE_]PREFIX[FLAGS]], [-Werror=return-type], [-errwarn=E_FUNC_HAS_NO_RETURN_STMT])
11054XORG_TESTSET_CFLAG([[BASE_]PREFIX[FLAGS]], [-Werror=trigraphs])
11055XORG_TESTSET_CFLAG([[BASE_]PREFIX[FLAGS]], [-Werror=array-bounds])
11056XORG_TESTSET_CFLAG([[BASE_]PREFIX[FLAGS]], [-Werror=write-strings])
11057XORG_TESTSET_CFLAG([[BASE_]PREFIX[FLAGS]], [-Werror=address])
11058XORG_TESTSET_CFLAG([[BASE_]PREFIX[FLAGS]], [-Werror=int-to-pointer-cast], [-errwarn=E_BAD_PTR_INT_COMBINATION])
11059XORG_TESTSET_CFLAG([[BASE_]PREFIX[FLAGS]], [-Werror=pointer-to-int-cast]) # Also -errwarn=E_BAD_PTR_INT_COMBINATION
11060else
11061AC_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])
11062XORG_TESTSET_CFLAG([[BASE_]PREFIX[FLAGS]], [-Wimplicit])
11063XORG_TESTSET_CFLAG([[BASE_]PREFIX[FLAGS]], [-Wnonnull])
11064XORG_TESTSET_CFLAG([[BASE_]PREFIX[FLAGS]], [-Winit-self])
11065XORG_TESTSET_CFLAG([[BASE_]PREFIX[FLAGS]], [-Wmain])
11066XORG_TESTSET_CFLAG([[BASE_]PREFIX[FLAGS]], [-Wmissing-braces])
11067XORG_TESTSET_CFLAG([[BASE_]PREFIX[FLAGS]], [-Wsequence-point])
11068XORG_TESTSET_CFLAG([[BASE_]PREFIX[FLAGS]], [-Wreturn-type])
11069XORG_TESTSET_CFLAG([[BASE_]PREFIX[FLAGS]], [-Wtrigraphs])
11070XORG_TESTSET_CFLAG([[BASE_]PREFIX[FLAGS]], [-Warray-bounds])
11071XORG_TESTSET_CFLAG([[BASE_]PREFIX[FLAGS]], [-Wwrite-strings])
11072XORG_TESTSET_CFLAG([[BASE_]PREFIX[FLAGS]], [-Waddress])
11073XORG_TESTSET_CFLAG([[BASE_]PREFIX[FLAGS]], [-Wint-to-pointer-cast])
11074XORG_TESTSET_CFLAG([[BASE_]PREFIX[FLAGS]], [-Wpointer-to-int-cast])
11075fi
11076
11077AC_SUBST([BASE_]PREFIX[FLAGS])
11078]) # XORG_COMPILER_FLAGS
11079
11080# XORG_CWARNFLAGS
11081# ---------------
11082# Minimum version: 1.2.0
11083# Deprecated since: 1.16.0 (Use XORG_COMPILER_FLAGS instead)
11084#
11085# Defines CWARNFLAGS to enable C compiler warnings.
11086#
11087# This function is deprecated because it defines -fno-strict-aliasing
11088# which alters the code generated by the compiler.  If -fno-strict-aliasing
11089# is needed, then it should be added explicitly in the module when
11090# it is updated to use BASE_CFLAGS.
11091#
11092AC_DEFUN([XORG_CWARNFLAGS], [
11093AC_REQUIRE([XORG_COMPILER_FLAGS])
11094AC_REQUIRE([XORG_COMPILER_BRAND])
11095AC_LANG_CASE(
11096	[C], [
11097		CWARNFLAGS="$BASE_CFLAGS"
11098		if  test "x$GCC" = xyes ; then
11099		    CWARNFLAGS="$CWARNFLAGS -fno-strict-aliasing"
11100		fi
11101		AC_SUBST(CWARNFLAGS)
11102	]
11103)
11104]) # XORG_CWARNFLAGS
11105
11106# XORG_STRICT_OPTION
11107# -----------------------
11108# Minimum version: 1.3.0
11109#
11110# Add configure option to enable strict compilation flags, such as treating
11111# warnings as fatal errors.
11112# If --enable-strict-compilation is passed to configure, adds strict flags to
11113# $BASE_CFLAGS or $BASE_CXXFLAGS and the deprecated $CWARNFLAGS.
11114#
11115# Starting in 1.14.0 also exports $STRICT_CFLAGS for use in other tests or
11116# when strict compilation is unconditionally desired.
11117AC_DEFUN([XORG_STRICT_OPTION], [
11118AC_REQUIRE([XORG_CWARNFLAGS])
11119AC_REQUIRE([XORG_COMPILER_FLAGS])
11120
11121AC_ARG_ENABLE(strict-compilation,
11122			  AS_HELP_STRING([--enable-strict-compilation],
11123			  [Enable all warnings from compiler and make them errors (default: disabled)]),
11124			  [STRICT_COMPILE=$enableval], [STRICT_COMPILE=no])
11125
11126AC_LANG_CASE(
11127        [C], [
11128                define([PREFIX], [C])
11129        ],
11130        [C++], [
11131                define([PREFIX], [CXX])
11132        ]
11133)
11134
11135[STRICT_]PREFIX[FLAGS]=""
11136XORG_TESTSET_CFLAG([[STRICT_]PREFIX[FLAGS]], [-pedantic])
11137XORG_TESTSET_CFLAG([[STRICT_]PREFIX[FLAGS]], [-Werror], [-errwarn])
11138
11139# Earlier versions of gcc (eg: 4.2) support -Werror=attributes, but do not
11140# activate it with -Werror, so we add it here explicitly.
11141XORG_TESTSET_CFLAG([[STRICT_]PREFIX[FLAGS]], [-Werror=attributes])
11142
11143if test "x$STRICT_COMPILE" = "xyes"; then
11144    [BASE_]PREFIX[FLAGS]="$[BASE_]PREFIX[FLAGS] $[STRICT_]PREFIX[FLAGS]"
11145    AC_LANG_CASE([C], [CWARNFLAGS="$CWARNFLAGS $STRICT_CFLAGS"])
11146fi
11147AC_SUBST([STRICT_]PREFIX[FLAGS])
11148AC_SUBST([BASE_]PREFIX[FLAGS])
11149AC_LANG_CASE([C], AC_SUBST([CWARNFLAGS]))
11150]) # XORG_STRICT_OPTION
11151
11152# XORG_DEFAULT_OPTIONS
11153# --------------------
11154# Minimum version: 1.3.0
11155#
11156# Defines default options for X.Org modules.
11157#
11158AC_DEFUN([XORG_DEFAULT_OPTIONS], [
11159AC_REQUIRE([AC_PROG_INSTALL])
11160XORG_COMPILER_FLAGS
11161XORG_CWARNFLAGS
11162XORG_STRICT_OPTION
11163XORG_RELEASE_VERSION
11164XORG_CHANGELOG
11165XORG_INSTALL
11166XORG_MANPAGE_SECTIONS
11167m4_ifdef([AM_SILENT_RULES], [AM_SILENT_RULES([yes])],
11168    [AC_SUBST([AM_DEFAULT_VERBOSITY], [1])])
11169]) # XORG_DEFAULT_OPTIONS
11170
11171# XORG_INSTALL()
11172# ----------------
11173# Minimum version: 1.4.0
11174#
11175# Defines the variable INSTALL_CMD as the command to copy
11176# INSTALL from $prefix/share/util-macros.
11177#
11178AC_DEFUN([XORG_INSTALL], [
11179AC_REQUIRE([PKG_PROG_PKG_CONFIG])
11180macros_datadir=`$PKG_CONFIG --print-errors --variable=pkgdatadir xorg-macros`
11181INSTALL_CMD="(cp -f "$macros_datadir/INSTALL" \$(top_srcdir)/.INSTALL.tmp && \
11182mv \$(top_srcdir)/.INSTALL.tmp \$(top_srcdir)/INSTALL) \
11183|| (rm -f \$(top_srcdir)/.INSTALL.tmp; touch \$(top_srcdir)/INSTALL; \
11184echo 'util-macros \"pkgdatadir\" from xorg-macros.pc not found: installing possibly empty INSTALL.' >&2)"
11185AC_SUBST([INSTALL_CMD])
11186]) # XORG_INSTALL
11187dnl Copyright 2005 Red Hat, Inc
11188dnl
11189dnl Permission to use, copy, modify, distribute, and sell this software and its
11190dnl documentation for any purpose is hereby granted without fee, provided that
11191dnl the above copyright notice appear in all copies and that both that
11192dnl copyright notice and this permission notice appear in supporting
11193dnl documentation.
11194dnl
11195dnl The above copyright notice and this permission notice shall be included
11196dnl in all copies or substantial portions of the Software.
11197dnl
11198dnl THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS
11199dnl OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
11200dnl MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.
11201dnl IN NO EVENT SHALL THE OPEN GROUP BE LIABLE FOR ANY CLAIM, DAMAGES OR
11202dnl OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE,
11203dnl ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR
11204dnl OTHER DEALINGS IN THE SOFTWARE.
11205dnl
11206dnl Except as contained in this notice, the name of the copyright holders shall
11207dnl not be used in advertising or otherwise to promote the sale, use or
11208dnl other dealings in this Software without prior written authorization
11209dnl from the copyright holders.
11210dnl
11211
11212# XORG_RELEASE_VERSION
11213# --------------------
11214# Defines PACKAGE_VERSION_{MAJOR,MINOR,PATCHLEVEL} for modules to use.
11215
11216AC_DEFUN([XORG_RELEASE_VERSION],[
11217	AC_DEFINE_UNQUOTED([PACKAGE_VERSION_MAJOR],
11218		[`echo $PACKAGE_VERSION | cut -d . -f 1`],
11219		[Major version of this package])
11220	PVM=`echo $PACKAGE_VERSION | cut -d . -f 2 | cut -d - -f 1`
11221	if test "x$PVM" = "x"; then
11222		PVM="0"
11223	fi
11224	AC_DEFINE_UNQUOTED([PACKAGE_VERSION_MINOR],
11225		[$PVM],
11226		[Minor version of this package])
11227	PVP=`echo $PACKAGE_VERSION | cut -d . -f 3 | cut -d - -f 1`
11228	if test "x$PVP" = "x"; then
11229		PVP="0"
11230	fi
11231	AC_DEFINE_UNQUOTED([PACKAGE_VERSION_PATCHLEVEL],
11232		[$PVP],
11233		[Patch version of this package])
11234])
11235
11236# XORG_CHANGELOG()
11237# ----------------
11238# Minimum version: 1.2.0
11239#
11240# Defines the variable CHANGELOG_CMD as the command to generate
11241# ChangeLog from git.
11242#
11243#
11244AC_DEFUN([XORG_CHANGELOG], [
11245CHANGELOG_CMD="(GIT_DIR=\$(top_srcdir)/.git git log > \$(top_srcdir)/.changelog.tmp && \
11246mv \$(top_srcdir)/.changelog.tmp \$(top_srcdir)/ChangeLog) \
11247|| (rm -f \$(top_srcdir)/.changelog.tmp; touch \$(top_srcdir)/ChangeLog; \
11248echo 'git directory not found: installing possibly empty changelog.' >&2)"
11249AC_SUBST([CHANGELOG_CMD])
11250]) # XORG_CHANGELOG
11251
11252dnl Copyright 2005 Red Hat, Inc
11253dnl 
11254dnl Permission to use, copy, modify, distribute, and sell this software and its
11255dnl documentation for any purpose is hereby granted without fee, provided that
11256dnl the above copyright notice appear in all copies and that both that
11257dnl copyright notice and this permission notice appear in supporting
11258dnl documentation.
11259dnl 
11260dnl The above copyright notice and this permission notice shall be included
11261dnl in all copies or substantial portions of the Software.
11262dnl 
11263dnl THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS
11264dnl OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
11265dnl MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.
11266dnl IN NO EVENT SHALL THE OPEN GROUP BE LIABLE FOR ANY CLAIM, DAMAGES OR
11267dnl OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE,
11268dnl ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR
11269dnl OTHER DEALINGS IN THE SOFTWARE.
11270dnl 
11271dnl Except as contained in this notice, the name of the copyright holders shall
11272dnl not be used in advertising or otherwise to promote the sale, use or
11273dnl other dealings in this Software without prior written authorization
11274dnl from the copyright holders.
11275dnl 
11276
11277# XORG_DRIVER_CHECK_EXT(MACRO, PROTO)
11278# --------------------------
11279# Checks for the MACRO define in xorg-server.h (from the sdk).  If it
11280# is defined, then add the given PROTO to $REQUIRED_MODULES.
11281
11282AC_DEFUN([XORG_DRIVER_CHECK_EXT],[
11283	AC_REQUIRE([PKG_PROG_PKG_CONFIG])
11284	SAVE_CFLAGS="$CFLAGS"
11285	CFLAGS="$CFLAGS -I`$PKG_CONFIG --variable=sdkdir xorg-server`"
11286	AC_COMPILE_IFELSE([AC_LANG_PROGRAM([[
11287#include "xorg-server.h"
11288#if !defined $1
11289#error $1 not defined
11290#endif
11291		]])],
11292		[_EXT_CHECK=yes],
11293		[_EXT_CHECK=no])
11294	CFLAGS="$SAVE_CFLAGS"
11295	AC_MSG_CHECKING([if $1 is defined])
11296	AC_MSG_RESULT([$_EXT_CHECK])
11297	if test "$_EXT_CHECK" != no; then
11298		REQUIRED_MODULES="$REQUIRED_MODULES $2"
11299	fi
11300])
11301
11302# Copyright (C) 2002-2017 Free Software Foundation, Inc.
11303#
11304# This file is free software; the Free Software Foundation
11305# gives unlimited permission to copy and/or distribute it,
11306# with or without modifications, as long as this notice is preserved.
11307
11308# AM_AUTOMAKE_VERSION(VERSION)
11309# ----------------------------
11310# Automake X.Y traces this macro to ensure aclocal.m4 has been
11311# generated from the m4 files accompanying Automake X.Y.
11312# (This private macro should not be called outside this file.)
11313AC_DEFUN([AM_AUTOMAKE_VERSION],
11314[am__api_version='1.15'
11315dnl Some users find AM_AUTOMAKE_VERSION and mistake it for a way to
11316dnl require some minimum version.  Point them to the right macro.
11317m4_if([$1], [1.15.1], [],
11318      [AC_FATAL([Do not call $0, use AM_INIT_AUTOMAKE([$1]).])])dnl
11319])
11320
11321# _AM_AUTOCONF_VERSION(VERSION)
11322# -----------------------------
11323# aclocal traces this macro to find the Autoconf version.
11324# This is a private macro too.  Using m4_define simplifies
11325# the logic in aclocal, which can simply ignore this definition.
11326m4_define([_AM_AUTOCONF_VERSION], [])
11327
11328# AM_SET_CURRENT_AUTOMAKE_VERSION
11329# -------------------------------
11330# Call AM_AUTOMAKE_VERSION and AM_AUTOMAKE_VERSION so they can be traced.
11331# This function is AC_REQUIREd by AM_INIT_AUTOMAKE.
11332AC_DEFUN([AM_SET_CURRENT_AUTOMAKE_VERSION],
11333[AM_AUTOMAKE_VERSION([1.15.1])dnl
11334m4_ifndef([AC_AUTOCONF_VERSION],
11335  [m4_copy([m4_PACKAGE_VERSION], [AC_AUTOCONF_VERSION])])dnl
11336_AM_AUTOCONF_VERSION(m4_defn([AC_AUTOCONF_VERSION]))])
11337
11338# AM_AUX_DIR_EXPAND                                         -*- Autoconf -*-
11339
11340# Copyright (C) 2001-2017 Free Software Foundation, Inc.
11341#
11342# This file is free software; the Free Software Foundation
11343# gives unlimited permission to copy and/or distribute it,
11344# with or without modifications, as long as this notice is preserved.
11345
11346# For projects using AC_CONFIG_AUX_DIR([foo]), Autoconf sets
11347# $ac_aux_dir to '$srcdir/foo'.  In other projects, it is set to
11348# '$srcdir', '$srcdir/..', or '$srcdir/../..'.
11349#
11350# Of course, Automake must honor this variable whenever it calls a
11351# tool from the auxiliary directory.  The problem is that $srcdir (and
11352# therefore $ac_aux_dir as well) can be either absolute or relative,
11353# depending on how configure is run.  This is pretty annoying, since
11354# it makes $ac_aux_dir quite unusable in subdirectories: in the top
11355# source directory, any form will work fine, but in subdirectories a
11356# relative path needs to be adjusted first.
11357#
11358# $ac_aux_dir/missing
11359#    fails when called from a subdirectory if $ac_aux_dir is relative
11360# $top_srcdir/$ac_aux_dir/missing
11361#    fails if $ac_aux_dir is absolute,
11362#    fails when called from a subdirectory in a VPATH build with
11363#          a relative $ac_aux_dir
11364#
11365# The reason of the latter failure is that $top_srcdir and $ac_aux_dir
11366# are both prefixed by $srcdir.  In an in-source build this is usually
11367# harmless because $srcdir is '.', but things will broke when you
11368# start a VPATH build or use an absolute $srcdir.
11369#
11370# So we could use something similar to $top_srcdir/$ac_aux_dir/missing,
11371# iff we strip the leading $srcdir from $ac_aux_dir.  That would be:
11372#   am_aux_dir='\$(top_srcdir)/'`expr "$ac_aux_dir" : "$srcdir//*\(.*\)"`
11373# and then we would define $MISSING as
11374#   MISSING="\${SHELL} $am_aux_dir/missing"
11375# This will work as long as MISSING is not called from configure, because
11376# unfortunately $(top_srcdir) has no meaning in configure.
11377# However there are other variables, like CC, which are often used in
11378# configure, and could therefore not use this "fixed" $ac_aux_dir.
11379#
11380# Another solution, used here, is to always expand $ac_aux_dir to an
11381# absolute PATH.  The drawback is that using absolute paths prevent a
11382# configured tree to be moved without reconfiguration.
11383
11384AC_DEFUN([AM_AUX_DIR_EXPAND],
11385[AC_REQUIRE([AC_CONFIG_AUX_DIR_DEFAULT])dnl
11386# Expand $ac_aux_dir to an absolute path.
11387am_aux_dir=`cd "$ac_aux_dir" && pwd`
11388])
11389
11390# AM_CONDITIONAL                                            -*- Autoconf -*-
11391
11392# Copyright (C) 1997-2017 Free Software Foundation, Inc.
11393#
11394# This file is free software; the Free Software Foundation
11395# gives unlimited permission to copy and/or distribute it,
11396# with or without modifications, as long as this notice is preserved.
11397
11398# AM_CONDITIONAL(NAME, SHELL-CONDITION)
11399# -------------------------------------
11400# Define a conditional.
11401AC_DEFUN([AM_CONDITIONAL],
11402[AC_PREREQ([2.52])dnl
11403 m4_if([$1], [TRUE],  [AC_FATAL([$0: invalid condition: $1])],
11404       [$1], [FALSE], [AC_FATAL([$0: invalid condition: $1])])dnl
11405AC_SUBST([$1_TRUE])dnl
11406AC_SUBST([$1_FALSE])dnl
11407_AM_SUBST_NOTMAKE([$1_TRUE])dnl
11408_AM_SUBST_NOTMAKE([$1_FALSE])dnl
11409m4_define([_AM_COND_VALUE_$1], [$2])dnl
11410if $2; then
11411  $1_TRUE=
11412  $1_FALSE='#'
11413else
11414  $1_TRUE='#'
11415  $1_FALSE=
11416fi
11417AC_CONFIG_COMMANDS_PRE(
11418[if test -z "${$1_TRUE}" && test -z "${$1_FALSE}"; then
11419  AC_MSG_ERROR([[conditional "$1" was never defined.
11420Usually this means the macro was only invoked conditionally.]])
11421fi])])
11422
11423# Copyright (C) 1999-2017 Free Software Foundation, Inc.
11424#
11425# This file is free software; the Free Software Foundation
11426# gives unlimited permission to copy and/or distribute it,
11427# with or without modifications, as long as this notice is preserved.
11428
11429
11430# There are a few dirty hacks below to avoid letting 'AC_PROG_CC' be
11431# written in clear, in which case automake, when reading aclocal.m4,
11432# will think it sees a *use*, and therefore will trigger all it's
11433# C support machinery.  Also note that it means that autoscan, seeing
11434# CC etc. in the Makefile, will ask for an AC_PROG_CC use...
11435
11436
11437# _AM_DEPENDENCIES(NAME)
11438# ----------------------
11439# See how the compiler implements dependency checking.
11440# NAME is "CC", "CXX", "OBJC", "OBJCXX", "UPC", or "GJC".
11441# We try a few techniques and use that to set a single cache variable.
11442#
11443# We don't AC_REQUIRE the corresponding AC_PROG_CC since the latter was
11444# modified to invoke _AM_DEPENDENCIES(CC); we would have a circular
11445# dependency, and given that the user is not expected to run this macro,
11446# just rely on AC_PROG_CC.
11447AC_DEFUN([_AM_DEPENDENCIES],
11448[AC_REQUIRE([AM_SET_DEPDIR])dnl
11449AC_REQUIRE([AM_OUTPUT_DEPENDENCY_COMMANDS])dnl
11450AC_REQUIRE([AM_MAKE_INCLUDE])dnl
11451AC_REQUIRE([AM_DEP_TRACK])dnl
11452
11453m4_if([$1], [CC],   [depcc="$CC"   am_compiler_list=],
11454      [$1], [CXX],  [depcc="$CXX"  am_compiler_list=],
11455      [$1], [OBJC], [depcc="$OBJC" am_compiler_list='gcc3 gcc'],
11456      [$1], [OBJCXX], [depcc="$OBJCXX" am_compiler_list='gcc3 gcc'],
11457      [$1], [UPC],  [depcc="$UPC"  am_compiler_list=],
11458      [$1], [GCJ],  [depcc="$GCJ"  am_compiler_list='gcc3 gcc'],
11459                    [depcc="$$1"   am_compiler_list=])
11460
11461AC_CACHE_CHECK([dependency style of $depcc],
11462               [am_cv_$1_dependencies_compiler_type],
11463[if test -z "$AMDEP_TRUE" && test -f "$am_depcomp"; then
11464  # We make a subdir and do the tests there.  Otherwise we can end up
11465  # making bogus files that we don't know about and never remove.  For
11466  # instance it was reported that on HP-UX the gcc test will end up
11467  # making a dummy file named 'D' -- because '-MD' means "put the output
11468  # in D".
11469  rm -rf conftest.dir
11470  mkdir conftest.dir
11471  # Copy depcomp to subdir because otherwise we won't find it if we're
11472  # using a relative directory.
11473  cp "$am_depcomp" conftest.dir
11474  cd conftest.dir
11475  # We will build objects and dependencies in a subdirectory because
11476  # it helps to detect inapplicable dependency modes.  For instance
11477  # both Tru64's cc and ICC support -MD to output dependencies as a
11478  # side effect of compilation, but ICC will put the dependencies in
11479  # the current directory while Tru64 will put them in the object
11480  # directory.
11481  mkdir sub
11482
11483  am_cv_$1_dependencies_compiler_type=none
11484  if test "$am_compiler_list" = ""; then
11485     am_compiler_list=`sed -n ['s/^#*\([a-zA-Z0-9]*\))$/\1/p'] < ./depcomp`
11486  fi
11487  am__universal=false
11488  m4_case([$1], [CC],
11489    [case " $depcc " in #(
11490     *\ -arch\ *\ -arch\ *) am__universal=true ;;
11491     esac],
11492    [CXX],
11493    [case " $depcc " in #(
11494     *\ -arch\ *\ -arch\ *) am__universal=true ;;
11495     esac])
11496
11497  for depmode in $am_compiler_list; do
11498    # Setup a source with many dependencies, because some compilers
11499    # like to wrap large dependency lists on column 80 (with \), and
11500    # we should not choose a depcomp mode which is confused by this.
11501    #
11502    # We need to recreate these files for each test, as the compiler may
11503    # overwrite some of them when testing with obscure command lines.
11504    # This happens at least with the AIX C compiler.
11505    : > sub/conftest.c
11506    for i in 1 2 3 4 5 6; do
11507      echo '#include "conftst'$i'.h"' >> sub/conftest.c
11508      # Using ": > sub/conftst$i.h" creates only sub/conftst1.h with
11509      # Solaris 10 /bin/sh.
11510      echo '/* dummy */' > sub/conftst$i.h
11511    done
11512    echo "${am__include} ${am__quote}sub/conftest.Po${am__quote}" > confmf
11513
11514    # We check with '-c' and '-o' for the sake of the "dashmstdout"
11515    # mode.  It turns out that the SunPro C++ compiler does not properly
11516    # handle '-M -o', and we need to detect this.  Also, some Intel
11517    # versions had trouble with output in subdirs.
11518    am__obj=sub/conftest.${OBJEXT-o}
11519    am__minus_obj="-o $am__obj"
11520    case $depmode in
11521    gcc)
11522      # This depmode causes a compiler race in universal mode.
11523      test "$am__universal" = false || continue
11524      ;;
11525    nosideeffect)
11526      # After this tag, mechanisms are not by side-effect, so they'll
11527      # only be used when explicitly requested.
11528      if test "x$enable_dependency_tracking" = xyes; then
11529	continue
11530      else
11531	break
11532      fi
11533      ;;
11534    msvc7 | msvc7msys | msvisualcpp | msvcmsys)
11535      # This compiler won't grok '-c -o', but also, the minuso test has
11536      # not run yet.  These depmodes are late enough in the game, and
11537      # so weak that their functioning should not be impacted.
11538      am__obj=conftest.${OBJEXT-o}
11539      am__minus_obj=
11540      ;;
11541    none) break ;;
11542    esac
11543    if depmode=$depmode \
11544       source=sub/conftest.c object=$am__obj \
11545       depfile=sub/conftest.Po tmpdepfile=sub/conftest.TPo \
11546       $SHELL ./depcomp $depcc -c $am__minus_obj sub/conftest.c \
11547         >/dev/null 2>conftest.err &&
11548       grep sub/conftst1.h sub/conftest.Po > /dev/null 2>&1 &&
11549       grep sub/conftst6.h sub/conftest.Po > /dev/null 2>&1 &&
11550       grep $am__obj sub/conftest.Po > /dev/null 2>&1 &&
11551       ${MAKE-make} -s -f confmf > /dev/null 2>&1; then
11552      # icc doesn't choke on unknown options, it will just issue warnings
11553      # or remarks (even with -Werror).  So we grep stderr for any message
11554      # that says an option was ignored or not supported.
11555      # When given -MP, icc 7.0 and 7.1 complain thusly:
11556      #   icc: Command line warning: ignoring option '-M'; no argument required
11557      # The diagnosis changed in icc 8.0:
11558      #   icc: Command line remark: option '-MP' not supported
11559      if (grep 'ignoring option' conftest.err ||
11560          grep 'not supported' conftest.err) >/dev/null 2>&1; then :; else
11561        am_cv_$1_dependencies_compiler_type=$depmode
11562        break
11563      fi
11564    fi
11565  done
11566
11567  cd ..
11568  rm -rf conftest.dir
11569else
11570  am_cv_$1_dependencies_compiler_type=none
11571fi
11572])
11573AC_SUBST([$1DEPMODE], [depmode=$am_cv_$1_dependencies_compiler_type])
11574AM_CONDITIONAL([am__fastdep$1], [
11575  test "x$enable_dependency_tracking" != xno \
11576  && test "$am_cv_$1_dependencies_compiler_type" = gcc3])
11577])
11578
11579
11580# AM_SET_DEPDIR
11581# -------------
11582# Choose a directory name for dependency files.
11583# This macro is AC_REQUIREd in _AM_DEPENDENCIES.
11584AC_DEFUN([AM_SET_DEPDIR],
11585[AC_REQUIRE([AM_SET_LEADING_DOT])dnl
11586AC_SUBST([DEPDIR], ["${am__leading_dot}deps"])dnl
11587])
11588
11589
11590# AM_DEP_TRACK
11591# ------------
11592AC_DEFUN([AM_DEP_TRACK],
11593[AC_ARG_ENABLE([dependency-tracking], [dnl
11594AS_HELP_STRING(
11595  [--enable-dependency-tracking],
11596  [do not reject slow dependency extractors])
11597AS_HELP_STRING(
11598  [--disable-dependency-tracking],
11599  [speeds up one-time build])])
11600if test "x$enable_dependency_tracking" != xno; then
11601  am_depcomp="$ac_aux_dir/depcomp"
11602  AMDEPBACKSLASH='\'
11603  am__nodep='_no'
11604fi
11605AM_CONDITIONAL([AMDEP], [test "x$enable_dependency_tracking" != xno])
11606AC_SUBST([AMDEPBACKSLASH])dnl
11607_AM_SUBST_NOTMAKE([AMDEPBACKSLASH])dnl
11608AC_SUBST([am__nodep])dnl
11609_AM_SUBST_NOTMAKE([am__nodep])dnl
11610])
11611
11612# Generate code to set up dependency tracking.              -*- Autoconf -*-
11613
11614# Copyright (C) 1999-2017 Free Software Foundation, Inc.
11615#
11616# This file is free software; the Free Software Foundation
11617# gives unlimited permission to copy and/or distribute it,
11618# with or without modifications, as long as this notice is preserved.
11619
11620
11621# _AM_OUTPUT_DEPENDENCY_COMMANDS
11622# ------------------------------
11623AC_DEFUN([_AM_OUTPUT_DEPENDENCY_COMMANDS],
11624[{
11625  # Older Autoconf quotes --file arguments for eval, but not when files
11626  # are listed without --file.  Let's play safe and only enable the eval
11627  # if we detect the quoting.
11628  case $CONFIG_FILES in
11629  *\'*) eval set x "$CONFIG_FILES" ;;
11630  *)   set x $CONFIG_FILES ;;
11631  esac
11632  shift
11633  for mf
11634  do
11635    # Strip MF so we end up with the name of the file.
11636    mf=`echo "$mf" | sed -e 's/:.*$//'`
11637    # Check whether this is an Automake generated Makefile or not.
11638    # We used to match only the files named 'Makefile.in', but
11639    # some people rename them; so instead we look at the file content.
11640    # Grep'ing the first line is not enough: some people post-process
11641    # each Makefile.in and add a new line on top of each file to say so.
11642    # Grep'ing the whole file is not good either: AIX grep has a line
11643    # limit of 2048, but all sed's we know have understand at least 4000.
11644    if sed -n 's,^#.*generated by automake.*,X,p' "$mf" | grep X >/dev/null 2>&1; then
11645      dirpart=`AS_DIRNAME("$mf")`
11646    else
11647      continue
11648    fi
11649    # Extract the definition of DEPDIR, am__include, and am__quote
11650    # from the Makefile without running 'make'.
11651    DEPDIR=`sed -n 's/^DEPDIR = //p' < "$mf"`
11652    test -z "$DEPDIR" && continue
11653    am__include=`sed -n 's/^am__include = //p' < "$mf"`
11654    test -z "$am__include" && continue
11655    am__quote=`sed -n 's/^am__quote = //p' < "$mf"`
11656    # Find all dependency output files, they are included files with
11657    # $(DEPDIR) in their names.  We invoke sed twice because it is the
11658    # simplest approach to changing $(DEPDIR) to its actual value in the
11659    # expansion.
11660    for file in `sed -n "
11661      s/^$am__include $am__quote\(.*(DEPDIR).*\)$am__quote"'$/\1/p' <"$mf" | \
11662	 sed -e 's/\$(DEPDIR)/'"$DEPDIR"'/g'`; do
11663      # Make sure the directory exists.
11664      test -f "$dirpart/$file" && continue
11665      fdir=`AS_DIRNAME(["$file"])`
11666      AS_MKDIR_P([$dirpart/$fdir])
11667      # echo "creating $dirpart/$file"
11668      echo '# dummy' > "$dirpart/$file"
11669    done
11670  done
11671}
11672])# _AM_OUTPUT_DEPENDENCY_COMMANDS
11673
11674
11675# AM_OUTPUT_DEPENDENCY_COMMANDS
11676# -----------------------------
11677# This macro should only be invoked once -- use via AC_REQUIRE.
11678#
11679# This code is only required when automatic dependency tracking
11680# is enabled.  FIXME.  This creates each '.P' file that we will
11681# need in order to bootstrap the dependency handling code.
11682AC_DEFUN([AM_OUTPUT_DEPENDENCY_COMMANDS],
11683[AC_CONFIG_COMMANDS([depfiles],
11684     [test x"$AMDEP_TRUE" != x"" || _AM_OUTPUT_DEPENDENCY_COMMANDS],
11685     [AMDEP_TRUE="$AMDEP_TRUE" ac_aux_dir="$ac_aux_dir"])
11686])
11687
11688# Do all the work for Automake.                             -*- Autoconf -*-
11689
11690# Copyright (C) 1996-2017 Free Software Foundation, Inc.
11691#
11692# This file is free software; the Free Software Foundation
11693# gives unlimited permission to copy and/or distribute it,
11694# with or without modifications, as long as this notice is preserved.
11695
11696# This macro actually does too much.  Some checks are only needed if
11697# your package does certain things.  But this isn't really a big deal.
11698
11699dnl Redefine AC_PROG_CC to automatically invoke _AM_PROG_CC_C_O.
11700m4_define([AC_PROG_CC],
11701m4_defn([AC_PROG_CC])
11702[_AM_PROG_CC_C_O
11703])
11704
11705# AM_INIT_AUTOMAKE(PACKAGE, VERSION, [NO-DEFINE])
11706# AM_INIT_AUTOMAKE([OPTIONS])
11707# -----------------------------------------------
11708# The call with PACKAGE and VERSION arguments is the old style
11709# call (pre autoconf-2.50), which is being phased out.  PACKAGE
11710# and VERSION should now be passed to AC_INIT and removed from
11711# the call to AM_INIT_AUTOMAKE.
11712# We support both call styles for the transition.  After
11713# the next Automake release, Autoconf can make the AC_INIT
11714# arguments mandatory, and then we can depend on a new Autoconf
11715# release and drop the old call support.
11716AC_DEFUN([AM_INIT_AUTOMAKE],
11717[AC_PREREQ([2.65])dnl
11718dnl Autoconf wants to disallow AM_ names.  We explicitly allow
11719dnl the ones we care about.
11720m4_pattern_allow([^AM_[A-Z]+FLAGS$])dnl
11721AC_REQUIRE([AM_SET_CURRENT_AUTOMAKE_VERSION])dnl
11722AC_REQUIRE([AC_PROG_INSTALL])dnl
11723if test "`cd $srcdir && pwd`" != "`pwd`"; then
11724  # Use -I$(srcdir) only when $(srcdir) != ., so that make's output
11725  # is not polluted with repeated "-I."
11726  AC_SUBST([am__isrc], [' -I$(srcdir)'])_AM_SUBST_NOTMAKE([am__isrc])dnl
11727  # test to see if srcdir already configured
11728  if test -f $srcdir/config.status; then
11729    AC_MSG_ERROR([source directory already configured; run "make distclean" there first])
11730  fi
11731fi
11732
11733# test whether we have cygpath
11734if test -z "$CYGPATH_W"; then
11735  if (cygpath --version) >/dev/null 2>/dev/null; then
11736    CYGPATH_W='cygpath -w'
11737  else
11738    CYGPATH_W=echo
11739  fi
11740fi
11741AC_SUBST([CYGPATH_W])
11742
11743# Define the identity of the package.
11744dnl Distinguish between old-style and new-style calls.
11745m4_ifval([$2],
11746[AC_DIAGNOSE([obsolete],
11747             [$0: two- and three-arguments forms are deprecated.])
11748m4_ifval([$3], [_AM_SET_OPTION([no-define])])dnl
11749 AC_SUBST([PACKAGE], [$1])dnl
11750 AC_SUBST([VERSION], [$2])],
11751[_AM_SET_OPTIONS([$1])dnl
11752dnl Diagnose old-style AC_INIT with new-style AM_AUTOMAKE_INIT.
11753m4_if(
11754  m4_ifdef([AC_PACKAGE_NAME], [ok]):m4_ifdef([AC_PACKAGE_VERSION], [ok]),
11755  [ok:ok],,
11756  [m4_fatal([AC_INIT should be called with package and version arguments])])dnl
11757 AC_SUBST([PACKAGE], ['AC_PACKAGE_TARNAME'])dnl
11758 AC_SUBST([VERSION], ['AC_PACKAGE_VERSION'])])dnl
11759
11760_AM_IF_OPTION([no-define],,
11761[AC_DEFINE_UNQUOTED([PACKAGE], ["$PACKAGE"], [Name of package])
11762 AC_DEFINE_UNQUOTED([VERSION], ["$VERSION"], [Version number of package])])dnl
11763
11764# Some tools Automake needs.
11765AC_REQUIRE([AM_SANITY_CHECK])dnl
11766AC_REQUIRE([AC_ARG_PROGRAM])dnl
11767AM_MISSING_PROG([ACLOCAL], [aclocal-${am__api_version}])
11768AM_MISSING_PROG([AUTOCONF], [autoconf])
11769AM_MISSING_PROG([AUTOMAKE], [automake-${am__api_version}])
11770AM_MISSING_PROG([AUTOHEADER], [autoheader])
11771AM_MISSING_PROG([MAKEINFO], [makeinfo])
11772AC_REQUIRE([AM_PROG_INSTALL_SH])dnl
11773AC_REQUIRE([AM_PROG_INSTALL_STRIP])dnl
11774AC_REQUIRE([AC_PROG_MKDIR_P])dnl
11775# For better backward compatibility.  To be removed once Automake 1.9.x
11776# dies out for good.  For more background, see:
11777# <http://lists.gnu.org/archive/html/automake/2012-07/msg00001.html>
11778# <http://lists.gnu.org/archive/html/automake/2012-07/msg00014.html>
11779AC_SUBST([mkdir_p], ['$(MKDIR_P)'])
11780# We need awk for the "check" target (and possibly the TAP driver).  The
11781# system "awk" is bad on some platforms.
11782AC_REQUIRE([AC_PROG_AWK])dnl
11783AC_REQUIRE([AC_PROG_MAKE_SET])dnl
11784AC_REQUIRE([AM_SET_LEADING_DOT])dnl
11785_AM_IF_OPTION([tar-ustar], [_AM_PROG_TAR([ustar])],
11786	      [_AM_IF_OPTION([tar-pax], [_AM_PROG_TAR([pax])],
11787			     [_AM_PROG_TAR([v7])])])
11788_AM_IF_OPTION([no-dependencies],,
11789[AC_PROVIDE_IFELSE([AC_PROG_CC],
11790		  [_AM_DEPENDENCIES([CC])],
11791		  [m4_define([AC_PROG_CC],
11792			     m4_defn([AC_PROG_CC])[_AM_DEPENDENCIES([CC])])])dnl
11793AC_PROVIDE_IFELSE([AC_PROG_CXX],
11794		  [_AM_DEPENDENCIES([CXX])],
11795		  [m4_define([AC_PROG_CXX],
11796			     m4_defn([AC_PROG_CXX])[_AM_DEPENDENCIES([CXX])])])dnl
11797AC_PROVIDE_IFELSE([AC_PROG_OBJC],
11798		  [_AM_DEPENDENCIES([OBJC])],
11799		  [m4_define([AC_PROG_OBJC],
11800			     m4_defn([AC_PROG_OBJC])[_AM_DEPENDENCIES([OBJC])])])dnl
11801AC_PROVIDE_IFELSE([AC_PROG_OBJCXX],
11802		  [_AM_DEPENDENCIES([OBJCXX])],
11803		  [m4_define([AC_PROG_OBJCXX],
11804			     m4_defn([AC_PROG_OBJCXX])[_AM_DEPENDENCIES([OBJCXX])])])dnl
11805])
11806AC_REQUIRE([AM_SILENT_RULES])dnl
11807dnl The testsuite driver may need to know about EXEEXT, so add the
11808dnl 'am__EXEEXT' conditional if _AM_COMPILER_EXEEXT was seen.  This
11809dnl macro is hooked onto _AC_COMPILER_EXEEXT early, see below.
11810AC_CONFIG_COMMANDS_PRE(dnl
11811[m4_provide_if([_AM_COMPILER_EXEEXT],
11812  [AM_CONDITIONAL([am__EXEEXT], [test -n "$EXEEXT"])])])dnl
11813
11814# POSIX will say in a future version that running "rm -f" with no argument
11815# is OK; and we want to be able to make that assumption in our Makefile
11816# recipes.  So use an aggressive probe to check that the usage we want is
11817# actually supported "in the wild" to an acceptable degree.
11818# See automake bug#10828.
11819# To make any issue more visible, cause the running configure to be aborted
11820# by default if the 'rm' program in use doesn't match our expectations; the
11821# user can still override this though.
11822if rm -f && rm -fr && rm -rf; then : OK; else
11823  cat >&2 <<'END'
11824Oops!
11825
11826Your 'rm' program seems unable to run without file operands specified
11827on the command line, even when the '-f' option is present.  This is contrary
11828to the behaviour of most rm programs out there, and not conforming with
11829the upcoming POSIX standard: <http://austingroupbugs.net/view.php?id=542>
11830
11831Please tell bug-automake@gnu.org about your system, including the value
11832of your $PATH and any error possibly output before this message.  This
11833can help us improve future automake versions.
11834
11835END
11836  if test x"$ACCEPT_INFERIOR_RM_PROGRAM" = x"yes"; then
11837    echo 'Configuration will proceed anyway, since you have set the' >&2
11838    echo 'ACCEPT_INFERIOR_RM_PROGRAM variable to "yes"' >&2
11839    echo >&2
11840  else
11841    cat >&2 <<'END'
11842Aborting the configuration process, to ensure you take notice of the issue.
11843
11844You can download and install GNU coreutils to get an 'rm' implementation
11845that behaves properly: <http://www.gnu.org/software/coreutils/>.
11846
11847If you want to complete the configuration process using your problematic
11848'rm' anyway, export the environment variable ACCEPT_INFERIOR_RM_PROGRAM
11849to "yes", and re-run configure.
11850
11851END
11852    AC_MSG_ERROR([Your 'rm' program is bad, sorry.])
11853  fi
11854fi
11855dnl The trailing newline in this macro's definition is deliberate, for
11856dnl backward compatibility and to allow trailing 'dnl'-style comments
11857dnl after the AM_INIT_AUTOMAKE invocation. See automake bug#16841.
11858])
11859
11860dnl Hook into '_AC_COMPILER_EXEEXT' early to learn its expansion.  Do not
11861dnl add the conditional right here, as _AC_COMPILER_EXEEXT may be further
11862dnl mangled by Autoconf and run in a shell conditional statement.
11863m4_define([_AC_COMPILER_EXEEXT],
11864m4_defn([_AC_COMPILER_EXEEXT])[m4_provide([_AM_COMPILER_EXEEXT])])
11865
11866# When config.status generates a header, we must update the stamp-h file.
11867# This file resides in the same directory as the config header
11868# that is generated.  The stamp files are numbered to have different names.
11869
11870# Autoconf calls _AC_AM_CONFIG_HEADER_HOOK (when defined) in the
11871# loop where config.status creates the headers, so we can generate
11872# our stamp files there.
11873AC_DEFUN([_AC_AM_CONFIG_HEADER_HOOK],
11874[# Compute $1's index in $config_headers.
11875_am_arg=$1
11876_am_stamp_count=1
11877for _am_header in $config_headers :; do
11878  case $_am_header in
11879    $_am_arg | $_am_arg:* )
11880      break ;;
11881    * )
11882      _am_stamp_count=`expr $_am_stamp_count + 1` ;;
11883  esac
11884done
11885echo "timestamp for $_am_arg" >`AS_DIRNAME(["$_am_arg"])`/stamp-h[]$_am_stamp_count])
11886
11887# Copyright (C) 2001-2017 Free Software Foundation, Inc.
11888#
11889# This file is free software; the Free Software Foundation
11890# gives unlimited permission to copy and/or distribute it,
11891# with or without modifications, as long as this notice is preserved.
11892
11893# AM_PROG_INSTALL_SH
11894# ------------------
11895# Define $install_sh.
11896AC_DEFUN([AM_PROG_INSTALL_SH],
11897[AC_REQUIRE([AM_AUX_DIR_EXPAND])dnl
11898if test x"${install_sh+set}" != xset; then
11899  case $am_aux_dir in
11900  *\ * | *\	*)
11901    install_sh="\${SHELL} '$am_aux_dir/install-sh'" ;;
11902  *)
11903    install_sh="\${SHELL} $am_aux_dir/install-sh"
11904  esac
11905fi
11906AC_SUBST([install_sh])])
11907
11908# Copyright (C) 2003-2017 Free Software Foundation, Inc.
11909#
11910# This file is free software; the Free Software Foundation
11911# gives unlimited permission to copy and/or distribute it,
11912# with or without modifications, as long as this notice is preserved.
11913
11914# Check whether the underlying file-system supports filenames
11915# with a leading dot.  For instance MS-DOS doesn't.
11916AC_DEFUN([AM_SET_LEADING_DOT],
11917[rm -rf .tst 2>/dev/null
11918mkdir .tst 2>/dev/null
11919if test -d .tst; then
11920  am__leading_dot=.
11921else
11922  am__leading_dot=_
11923fi
11924rmdir .tst 2>/dev/null
11925AC_SUBST([am__leading_dot])])
11926
11927# Check to see how 'make' treats includes.	            -*- Autoconf -*-
11928
11929# Copyright (C) 2001-2017 Free Software Foundation, Inc.
11930#
11931# This file is free software; the Free Software Foundation
11932# gives unlimited permission to copy and/or distribute it,
11933# with or without modifications, as long as this notice is preserved.
11934
11935# AM_MAKE_INCLUDE()
11936# -----------------
11937# Check to see how make treats includes.
11938AC_DEFUN([AM_MAKE_INCLUDE],
11939[am_make=${MAKE-make}
11940cat > confinc << 'END'
11941am__doit:
11942	@echo this is the am__doit target
11943.PHONY: am__doit
11944END
11945# If we don't find an include directive, just comment out the code.
11946AC_MSG_CHECKING([for style of include used by $am_make])
11947am__include="#"
11948am__quote=
11949_am_result=none
11950# First try GNU make style include.
11951echo "include confinc" > confmf
11952# Ignore all kinds of additional output from 'make'.
11953case `$am_make -s -f confmf 2> /dev/null` in #(
11954*the\ am__doit\ target*)
11955  am__include=include
11956  am__quote=
11957  _am_result=GNU
11958  ;;
11959esac
11960# Now try BSD make style include.
11961if test "$am__include" = "#"; then
11962   echo '.include "confinc"' > confmf
11963   case `$am_make -s -f confmf 2> /dev/null` in #(
11964   *the\ am__doit\ target*)
11965     am__include=.include
11966     am__quote="\""
11967     _am_result=BSD
11968     ;;
11969   esac
11970fi
11971AC_SUBST([am__include])
11972AC_SUBST([am__quote])
11973AC_MSG_RESULT([$_am_result])
11974rm -f confinc confmf
11975])
11976
11977# Fake the existence of programs that GNU maintainers use.  -*- Autoconf -*-
11978
11979# Copyright (C) 1997-2017 Free Software Foundation, Inc.
11980#
11981# This file is free software; the Free Software Foundation
11982# gives unlimited permission to copy and/or distribute it,
11983# with or without modifications, as long as this notice is preserved.
11984
11985# AM_MISSING_PROG(NAME, PROGRAM)
11986# ------------------------------
11987AC_DEFUN([AM_MISSING_PROG],
11988[AC_REQUIRE([AM_MISSING_HAS_RUN])
11989$1=${$1-"${am_missing_run}$2"}
11990AC_SUBST($1)])
11991
11992# AM_MISSING_HAS_RUN
11993# ------------------
11994# Define MISSING if not defined so far and test if it is modern enough.
11995# If it is, set am_missing_run to use it, otherwise, to nothing.
11996AC_DEFUN([AM_MISSING_HAS_RUN],
11997[AC_REQUIRE([AM_AUX_DIR_EXPAND])dnl
11998AC_REQUIRE_AUX_FILE([missing])dnl
11999if test x"${MISSING+set}" != xset; then
12000  case $am_aux_dir in
12001  *\ * | *\	*)
12002    MISSING="\${SHELL} \"$am_aux_dir/missing\"" ;;
12003  *)
12004    MISSING="\${SHELL} $am_aux_dir/missing" ;;
12005  esac
12006fi
12007# Use eval to expand $SHELL
12008if eval "$MISSING --is-lightweight"; then
12009  am_missing_run="$MISSING "
12010else
12011  am_missing_run=
12012  AC_MSG_WARN(['missing' script is too old or missing])
12013fi
12014])
12015
12016# Helper functions for option handling.                     -*- Autoconf -*-
12017
12018# Copyright (C) 2001-2017 Free Software Foundation, Inc.
12019#
12020# This file is free software; the Free Software Foundation
12021# gives unlimited permission to copy and/or distribute it,
12022# with or without modifications, as long as this notice is preserved.
12023
12024# _AM_MANGLE_OPTION(NAME)
12025# -----------------------
12026AC_DEFUN([_AM_MANGLE_OPTION],
12027[[_AM_OPTION_]m4_bpatsubst($1, [[^a-zA-Z0-9_]], [_])])
12028
12029# _AM_SET_OPTION(NAME)
12030# --------------------
12031# Set option NAME.  Presently that only means defining a flag for this option.
12032AC_DEFUN([_AM_SET_OPTION],
12033[m4_define(_AM_MANGLE_OPTION([$1]), [1])])
12034
12035# _AM_SET_OPTIONS(OPTIONS)
12036# ------------------------
12037# OPTIONS is a space-separated list of Automake options.
12038AC_DEFUN([_AM_SET_OPTIONS],
12039[m4_foreach_w([_AM_Option], [$1], [_AM_SET_OPTION(_AM_Option)])])
12040
12041# _AM_IF_OPTION(OPTION, IF-SET, [IF-NOT-SET])
12042# -------------------------------------------
12043# Execute IF-SET if OPTION is set, IF-NOT-SET otherwise.
12044AC_DEFUN([_AM_IF_OPTION],
12045[m4_ifset(_AM_MANGLE_OPTION([$1]), [$2], [$3])])
12046
12047# Copyright (C) 1999-2017 Free Software Foundation, Inc.
12048#
12049# This file is free software; the Free Software Foundation
12050# gives unlimited permission to copy and/or distribute it,
12051# with or without modifications, as long as this notice is preserved.
12052
12053# _AM_PROG_CC_C_O
12054# ---------------
12055# Like AC_PROG_CC_C_O, but changed for automake.  We rewrite AC_PROG_CC
12056# to automatically call this.
12057AC_DEFUN([_AM_PROG_CC_C_O],
12058[AC_REQUIRE([AM_AUX_DIR_EXPAND])dnl
12059AC_REQUIRE_AUX_FILE([compile])dnl
12060AC_LANG_PUSH([C])dnl
12061AC_CACHE_CHECK(
12062  [whether $CC understands -c and -o together],
12063  [am_cv_prog_cc_c_o],
12064  [AC_LANG_CONFTEST([AC_LANG_PROGRAM([])])
12065  # Make sure it works both with $CC and with simple cc.
12066  # Following AC_PROG_CC_C_O, we do the test twice because some
12067  # compilers refuse to overwrite an existing .o file with -o,
12068  # though they will create one.
12069  am_cv_prog_cc_c_o=yes
12070  for am_i in 1 2; do
12071    if AM_RUN_LOG([$CC -c conftest.$ac_ext -o conftest2.$ac_objext]) \
12072         && test -f conftest2.$ac_objext; then
12073      : OK
12074    else
12075      am_cv_prog_cc_c_o=no
12076      break
12077    fi
12078  done
12079  rm -f core conftest*
12080  unset am_i])
12081if test "$am_cv_prog_cc_c_o" != yes; then
12082   # Losing compiler, so override with the script.
12083   # FIXME: It is wrong to rewrite CC.
12084   # But if we don't then we get into trouble of one sort or another.
12085   # A longer-term fix would be to have automake use am__CC in this case,
12086   # and then we could set am__CC="\$(top_srcdir)/compile \$(CC)"
12087   CC="$am_aux_dir/compile $CC"
12088fi
12089AC_LANG_POP([C])])
12090
12091# For backward compatibility.
12092AC_DEFUN_ONCE([AM_PROG_CC_C_O], [AC_REQUIRE([AC_PROG_CC])])
12093
12094# Copyright (C) 2001-2017 Free Software Foundation, Inc.
12095#
12096# This file is free software; the Free Software Foundation
12097# gives unlimited permission to copy and/or distribute it,
12098# with or without modifications, as long as this notice is preserved.
12099
12100# AM_RUN_LOG(COMMAND)
12101# -------------------
12102# Run COMMAND, save the exit status in ac_status, and log it.
12103# (This has been adapted from Autoconf's _AC_RUN_LOG macro.)
12104AC_DEFUN([AM_RUN_LOG],
12105[{ echo "$as_me:$LINENO: $1" >&AS_MESSAGE_LOG_FD
12106   ($1) >&AS_MESSAGE_LOG_FD 2>&AS_MESSAGE_LOG_FD
12107   ac_status=$?
12108   echo "$as_me:$LINENO: \$? = $ac_status" >&AS_MESSAGE_LOG_FD
12109   (exit $ac_status); }])
12110
12111# Check to make sure that the build environment is sane.    -*- Autoconf -*-
12112
12113# Copyright (C) 1996-2017 Free Software Foundation, Inc.
12114#
12115# This file is free software; the Free Software Foundation
12116# gives unlimited permission to copy and/or distribute it,
12117# with or without modifications, as long as this notice is preserved.
12118
12119# AM_SANITY_CHECK
12120# ---------------
12121AC_DEFUN([AM_SANITY_CHECK],
12122[AC_MSG_CHECKING([whether build environment is sane])
12123# Reject unsafe characters in $srcdir or the absolute working directory
12124# name.  Accept space and tab only in the latter.
12125am_lf='
12126'
12127case `pwd` in
12128  *[[\\\"\#\$\&\'\`$am_lf]]*)
12129    AC_MSG_ERROR([unsafe absolute working directory name]);;
12130esac
12131case $srcdir in
12132  *[[\\\"\#\$\&\'\`$am_lf\ \	]]*)
12133    AC_MSG_ERROR([unsafe srcdir value: '$srcdir']);;
12134esac
12135
12136# Do 'set' in a subshell so we don't clobber the current shell's
12137# arguments.  Must try -L first in case configure is actually a
12138# symlink; some systems play weird games with the mod time of symlinks
12139# (eg FreeBSD returns the mod time of the symlink's containing
12140# directory).
12141if (
12142   am_has_slept=no
12143   for am_try in 1 2; do
12144     echo "timestamp, slept: $am_has_slept" > conftest.file
12145     set X `ls -Lt "$srcdir/configure" conftest.file 2> /dev/null`
12146     if test "$[*]" = "X"; then
12147	# -L didn't work.
12148	set X `ls -t "$srcdir/configure" conftest.file`
12149     fi
12150     if test "$[*]" != "X $srcdir/configure conftest.file" \
12151	&& test "$[*]" != "X conftest.file $srcdir/configure"; then
12152
12153	# If neither matched, then we have a broken ls.  This can happen
12154	# if, for instance, CONFIG_SHELL is bash and it inherits a
12155	# broken ls alias from the environment.  This has actually
12156	# happened.  Such a system could not be considered "sane".
12157	AC_MSG_ERROR([ls -t appears to fail.  Make sure there is not a broken
12158  alias in your environment])
12159     fi
12160     if test "$[2]" = conftest.file || test $am_try -eq 2; then
12161       break
12162     fi
12163     # Just in case.
12164     sleep 1
12165     am_has_slept=yes
12166   done
12167   test "$[2]" = conftest.file
12168   )
12169then
12170   # Ok.
12171   :
12172else
12173   AC_MSG_ERROR([newly created file is older than distributed files!
12174Check your system clock])
12175fi
12176AC_MSG_RESULT([yes])
12177# If we didn't sleep, we still need to ensure time stamps of config.status and
12178# generated files are strictly newer.
12179am_sleep_pid=
12180if grep 'slept: no' conftest.file >/dev/null 2>&1; then
12181  ( sleep 1 ) &
12182  am_sleep_pid=$!
12183fi
12184AC_CONFIG_COMMANDS_PRE(
12185  [AC_MSG_CHECKING([that generated files are newer than configure])
12186   if test -n "$am_sleep_pid"; then
12187     # Hide warnings about reused PIDs.
12188     wait $am_sleep_pid 2>/dev/null
12189   fi
12190   AC_MSG_RESULT([done])])
12191rm -f conftest.file
12192])
12193
12194# Copyright (C) 2009-2017 Free Software Foundation, Inc.
12195#
12196# This file is free software; the Free Software Foundation
12197# gives unlimited permission to copy and/or distribute it,
12198# with or without modifications, as long as this notice is preserved.
12199
12200# AM_SILENT_RULES([DEFAULT])
12201# --------------------------
12202# Enable less verbose build rules; with the default set to DEFAULT
12203# ("yes" being less verbose, "no" or empty being verbose).
12204AC_DEFUN([AM_SILENT_RULES],
12205[AC_ARG_ENABLE([silent-rules], [dnl
12206AS_HELP_STRING(
12207  [--enable-silent-rules],
12208  [less verbose build output (undo: "make V=1")])
12209AS_HELP_STRING(
12210  [--disable-silent-rules],
12211  [verbose build output (undo: "make V=0")])dnl
12212])
12213case $enable_silent_rules in @%:@ (((
12214  yes) AM_DEFAULT_VERBOSITY=0;;
12215   no) AM_DEFAULT_VERBOSITY=1;;
12216    *) AM_DEFAULT_VERBOSITY=m4_if([$1], [yes], [0], [1]);;
12217esac
12218dnl
12219dnl A few 'make' implementations (e.g., NonStop OS and NextStep)
12220dnl do not support nested variable expansions.
12221dnl See automake bug#9928 and bug#10237.
12222am_make=${MAKE-make}
12223AC_CACHE_CHECK([whether $am_make supports nested variables],
12224   [am_cv_make_support_nested_variables],
12225   [if AS_ECHO([['TRUE=$(BAR$(V))
12226BAR0=false
12227BAR1=true
12228V=1
12229am__doit:
12230	@$(TRUE)
12231.PHONY: am__doit']]) | $am_make -f - >/dev/null 2>&1; then
12232  am_cv_make_support_nested_variables=yes
12233else
12234  am_cv_make_support_nested_variables=no
12235fi])
12236if test $am_cv_make_support_nested_variables = yes; then
12237  dnl Using '$V' instead of '$(V)' breaks IRIX make.
12238  AM_V='$(V)'
12239  AM_DEFAULT_V='$(AM_DEFAULT_VERBOSITY)'
12240else
12241  AM_V=$AM_DEFAULT_VERBOSITY
12242  AM_DEFAULT_V=$AM_DEFAULT_VERBOSITY
12243fi
12244AC_SUBST([AM_V])dnl
12245AM_SUBST_NOTMAKE([AM_V])dnl
12246AC_SUBST([AM_DEFAULT_V])dnl
12247AM_SUBST_NOTMAKE([AM_DEFAULT_V])dnl
12248AC_SUBST([AM_DEFAULT_VERBOSITY])dnl
12249AM_BACKSLASH='\'
12250AC_SUBST([AM_BACKSLASH])dnl
12251_AM_SUBST_NOTMAKE([AM_BACKSLASH])dnl
12252])
12253
12254# Copyright (C) 2001-2017 Free Software Foundation, Inc.
12255#
12256# This file is free software; the Free Software Foundation
12257# gives unlimited permission to copy and/or distribute it,
12258# with or without modifications, as long as this notice is preserved.
12259
12260# AM_PROG_INSTALL_STRIP
12261# ---------------------
12262# One issue with vendor 'install' (even GNU) is that you can't
12263# specify the program used to strip binaries.  This is especially
12264# annoying in cross-compiling environments, where the build's strip
12265# is unlikely to handle the host's binaries.
12266# Fortunately install-sh will honor a STRIPPROG variable, so we
12267# always use install-sh in "make install-strip", and initialize
12268# STRIPPROG with the value of the STRIP variable (set by the user).
12269AC_DEFUN([AM_PROG_INSTALL_STRIP],
12270[AC_REQUIRE([AM_PROG_INSTALL_SH])dnl
12271# Installed binaries are usually stripped using 'strip' when the user
12272# run "make install-strip".  However 'strip' might not be the right
12273# tool to use in cross-compilation environments, therefore Automake
12274# will honor the 'STRIP' environment variable to overrule this program.
12275dnl Don't test for $cross_compiling = yes, because it might be 'maybe'.
12276if test "$cross_compiling" != no; then
12277  AC_CHECK_TOOL([STRIP], [strip], :)
12278fi
12279INSTALL_STRIP_PROGRAM="\$(install_sh) -c -s"
12280AC_SUBST([INSTALL_STRIP_PROGRAM])])
12281
12282# Copyright (C) 2006-2017 Free Software Foundation, Inc.
12283#
12284# This file is free software; the Free Software Foundation
12285# gives unlimited permission to copy and/or distribute it,
12286# with or without modifications, as long as this notice is preserved.
12287
12288# _AM_SUBST_NOTMAKE(VARIABLE)
12289# ---------------------------
12290# Prevent Automake from outputting VARIABLE = @VARIABLE@ in Makefile.in.
12291# This macro is traced by Automake.
12292AC_DEFUN([_AM_SUBST_NOTMAKE])
12293
12294# AM_SUBST_NOTMAKE(VARIABLE)
12295# --------------------------
12296# Public sister of _AM_SUBST_NOTMAKE.
12297AC_DEFUN([AM_SUBST_NOTMAKE], [_AM_SUBST_NOTMAKE($@)])
12298
12299# Check how to create a tarball.                            -*- Autoconf -*-
12300
12301# Copyright (C) 2004-2017 Free Software Foundation, Inc.
12302#
12303# This file is free software; the Free Software Foundation
12304# gives unlimited permission to copy and/or distribute it,
12305# with or without modifications, as long as this notice is preserved.
12306
12307# _AM_PROG_TAR(FORMAT)
12308# --------------------
12309# Check how to create a tarball in format FORMAT.
12310# FORMAT should be one of 'v7', 'ustar', or 'pax'.
12311#
12312# Substitute a variable $(am__tar) that is a command
12313# writing to stdout a FORMAT-tarball containing the directory
12314# $tardir.
12315#     tardir=directory && $(am__tar) > result.tar
12316#
12317# Substitute a variable $(am__untar) that extract such
12318# a tarball read from stdin.
12319#     $(am__untar) < result.tar
12320#
12321AC_DEFUN([_AM_PROG_TAR],
12322[# Always define AMTAR for backward compatibility.  Yes, it's still used
12323# in the wild :-(  We should find a proper way to deprecate it ...
12324AC_SUBST([AMTAR], ['$${TAR-tar}'])
12325
12326# We'll loop over all known methods to create a tar archive until one works.
12327_am_tools='gnutar m4_if([$1], [ustar], [plaintar]) pax cpio none'
12328
12329m4_if([$1], [v7],
12330  [am__tar='$${TAR-tar} chof - "$$tardir"' am__untar='$${TAR-tar} xf -'],
12331
12332  [m4_case([$1],
12333    [ustar],
12334     [# The POSIX 1988 'ustar' format is defined with fixed-size fields.
12335      # There is notably a 21 bits limit for the UID and the GID.  In fact,
12336      # the 'pax' utility can hang on bigger UID/GID (see automake bug#8343
12337      # and bug#13588).
12338      am_max_uid=2097151 # 2^21 - 1
12339      am_max_gid=$am_max_uid
12340      # The $UID and $GID variables are not portable, so we need to resort
12341      # to the POSIX-mandated id(1) utility.  Errors in the 'id' calls
12342      # below are definitely unexpected, so allow the users to see them
12343      # (that is, avoid stderr redirection).
12344      am_uid=`id -u || echo unknown`
12345      am_gid=`id -g || echo unknown`
12346      AC_MSG_CHECKING([whether UID '$am_uid' is supported by ustar format])
12347      if test $am_uid -le $am_max_uid; then
12348         AC_MSG_RESULT([yes])
12349      else
12350         AC_MSG_RESULT([no])
12351         _am_tools=none
12352      fi
12353      AC_MSG_CHECKING([whether GID '$am_gid' is supported by ustar format])
12354      if test $am_gid -le $am_max_gid; then
12355         AC_MSG_RESULT([yes])
12356      else
12357        AC_MSG_RESULT([no])
12358        _am_tools=none
12359      fi],
12360
12361  [pax],
12362    [],
12363
12364  [m4_fatal([Unknown tar format])])
12365
12366  AC_MSG_CHECKING([how to create a $1 tar archive])
12367
12368  # Go ahead even if we have the value already cached.  We do so because we
12369  # need to set the values for the 'am__tar' and 'am__untar' variables.
12370  _am_tools=${am_cv_prog_tar_$1-$_am_tools}
12371
12372  for _am_tool in $_am_tools; do
12373    case $_am_tool in
12374    gnutar)
12375      for _am_tar in tar gnutar gtar; do
12376        AM_RUN_LOG([$_am_tar --version]) && break
12377      done
12378      am__tar="$_am_tar --format=m4_if([$1], [pax], [posix], [$1]) -chf - "'"$$tardir"'
12379      am__tar_="$_am_tar --format=m4_if([$1], [pax], [posix], [$1]) -chf - "'"$tardir"'
12380      am__untar="$_am_tar -xf -"
12381      ;;
12382    plaintar)
12383      # Must skip GNU tar: if it does not support --format= it doesn't create
12384      # ustar tarball either.
12385      (tar --version) >/dev/null 2>&1 && continue
12386      am__tar='tar chf - "$$tardir"'
12387      am__tar_='tar chf - "$tardir"'
12388      am__untar='tar xf -'
12389      ;;
12390    pax)
12391      am__tar='pax -L -x $1 -w "$$tardir"'
12392      am__tar_='pax -L -x $1 -w "$tardir"'
12393      am__untar='pax -r'
12394      ;;
12395    cpio)
12396      am__tar='find "$$tardir" -print | cpio -o -H $1 -L'
12397      am__tar_='find "$tardir" -print | cpio -o -H $1 -L'
12398      am__untar='cpio -i -H $1 -d'
12399      ;;
12400    none)
12401      am__tar=false
12402      am__tar_=false
12403      am__untar=false
12404      ;;
12405    esac
12406
12407    # If the value was cached, stop now.  We just wanted to have am__tar
12408    # and am__untar set.
12409    test -n "${am_cv_prog_tar_$1}" && break
12410
12411    # tar/untar a dummy directory, and stop if the command works.
12412    rm -rf conftest.dir
12413    mkdir conftest.dir
12414    echo GrepMe > conftest.dir/file
12415    AM_RUN_LOG([tardir=conftest.dir && eval $am__tar_ >conftest.tar])
12416    rm -rf conftest.dir
12417    if test -s conftest.tar; then
12418      AM_RUN_LOG([$am__untar <conftest.tar])
12419      AM_RUN_LOG([cat conftest.dir/file])
12420      grep GrepMe conftest.dir/file >/dev/null 2>&1 && break
12421    fi
12422  done
12423  rm -rf conftest.dir
12424
12425  AC_CACHE_VAL([am_cv_prog_tar_$1], [am_cv_prog_tar_$1=$_am_tool])
12426  AC_MSG_RESULT([$am_cv_prog_tar_$1])])
12427
12428AC_SUBST([am__tar])
12429AC_SUBST([am__untar])
12430]) # _AM_PROG_TAR
12431
12432