aclocal.m4 revision efb46889
1# generated automatically by aclocal 1.16.5 -*- Autoconf -*-
2
3# Copyright (C) 1996-2021 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.71],,
18[m4_warning([this file was generated for autoconf 2.71.
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# Copyright (C) 2002-2021 Free Software Foundation, Inc.
24#
25# This file is free software; the Free Software Foundation
26# gives unlimited permission to copy and/or distribute it,
27# with or without modifications, as long as this notice is preserved.
28
29# AM_AUTOMAKE_VERSION(VERSION)
30# ----------------------------
31# Automake X.Y traces this macro to ensure aclocal.m4 has been
32# generated from the m4 files accompanying Automake X.Y.
33# (This private macro should not be called outside this file.)
34AC_DEFUN([AM_AUTOMAKE_VERSION],
35[am__api_version='1.16'
36dnl Some users find AM_AUTOMAKE_VERSION and mistake it for a way to
37dnl require some minimum version.  Point them to the right macro.
38m4_if([$1], [1.16.5], [],
39      [AC_FATAL([Do not call $0, use AM_INIT_AUTOMAKE([$1]).])])dnl
40])
41
42# _AM_AUTOCONF_VERSION(VERSION)
43# -----------------------------
44# aclocal traces this macro to find the Autoconf version.
45# This is a private macro too.  Using m4_define simplifies
46# the logic in aclocal, which can simply ignore this definition.
47m4_define([_AM_AUTOCONF_VERSION], [])
48
49# AM_SET_CURRENT_AUTOMAKE_VERSION
50# -------------------------------
51# Call AM_AUTOMAKE_VERSION and AM_AUTOMAKE_VERSION so they can be traced.
52# This function is AC_REQUIREd by AM_INIT_AUTOMAKE.
53AC_DEFUN([AM_SET_CURRENT_AUTOMAKE_VERSION],
54[AM_AUTOMAKE_VERSION([1.16.5])dnl
55m4_ifndef([AC_AUTOCONF_VERSION],
56  [m4_copy([m4_PACKAGE_VERSION], [AC_AUTOCONF_VERSION])])dnl
57_AM_AUTOCONF_VERSION(m4_defn([AC_AUTOCONF_VERSION]))])
58
59# AM_AUX_DIR_EXPAND                                         -*- Autoconf -*-
60
61# Copyright (C) 2001-2021 Free Software Foundation, Inc.
62#
63# This file is free software; the Free Software Foundation
64# gives unlimited permission to copy and/or distribute it,
65# with or without modifications, as long as this notice is preserved.
66
67# For projects using AC_CONFIG_AUX_DIR([foo]), Autoconf sets
68# $ac_aux_dir to '$srcdir/foo'.  In other projects, it is set to
69# '$srcdir', '$srcdir/..', or '$srcdir/../..'.
70#
71# Of course, Automake must honor this variable whenever it calls a
72# tool from the auxiliary directory.  The problem is that $srcdir (and
73# therefore $ac_aux_dir as well) can be either absolute or relative,
74# depending on how configure is run.  This is pretty annoying, since
75# it makes $ac_aux_dir quite unusable in subdirectories: in the top
76# source directory, any form will work fine, but in subdirectories a
77# relative path needs to be adjusted first.
78#
79# $ac_aux_dir/missing
80#    fails when called from a subdirectory if $ac_aux_dir is relative
81# $top_srcdir/$ac_aux_dir/missing
82#    fails if $ac_aux_dir is absolute,
83#    fails when called from a subdirectory in a VPATH build with
84#          a relative $ac_aux_dir
85#
86# The reason of the latter failure is that $top_srcdir and $ac_aux_dir
87# are both prefixed by $srcdir.  In an in-source build this is usually
88# harmless because $srcdir is '.', but things will broke when you
89# start a VPATH build or use an absolute $srcdir.
90#
91# So we could use something similar to $top_srcdir/$ac_aux_dir/missing,
92# iff we strip the leading $srcdir from $ac_aux_dir.  That would be:
93#   am_aux_dir='\$(top_srcdir)/'`expr "$ac_aux_dir" : "$srcdir//*\(.*\)"`
94# and then we would define $MISSING as
95#   MISSING="\${SHELL} $am_aux_dir/missing"
96# This will work as long as MISSING is not called from configure, because
97# unfortunately $(top_srcdir) has no meaning in configure.
98# However there are other variables, like CC, which are often used in
99# configure, and could therefore not use this "fixed" $ac_aux_dir.
100#
101# Another solution, used here, is to always expand $ac_aux_dir to an
102# absolute PATH.  The drawback is that using absolute paths prevent a
103# configured tree to be moved without reconfiguration.
104
105AC_DEFUN([AM_AUX_DIR_EXPAND],
106[AC_REQUIRE([AC_CONFIG_AUX_DIR_DEFAULT])dnl
107# Expand $ac_aux_dir to an absolute path.
108am_aux_dir=`cd "$ac_aux_dir" && pwd`
109])
110
111# AM_CONDITIONAL                                            -*- Autoconf -*-
112
113# Copyright (C) 1997-2021 Free Software Foundation, Inc.
114#
115# This file is free software; the Free Software Foundation
116# gives unlimited permission to copy and/or distribute it,
117# with or without modifications, as long as this notice is preserved.
118
119# AM_CONDITIONAL(NAME, SHELL-CONDITION)
120# -------------------------------------
121# Define a conditional.
122AC_DEFUN([AM_CONDITIONAL],
123[AC_PREREQ([2.52])dnl
124 m4_if([$1], [TRUE],  [AC_FATAL([$0: invalid condition: $1])],
125       [$1], [FALSE], [AC_FATAL([$0: invalid condition: $1])])dnl
126AC_SUBST([$1_TRUE])dnl
127AC_SUBST([$1_FALSE])dnl
128_AM_SUBST_NOTMAKE([$1_TRUE])dnl
129_AM_SUBST_NOTMAKE([$1_FALSE])dnl
130m4_define([_AM_COND_VALUE_$1], [$2])dnl
131if $2; then
132  $1_TRUE=
133  $1_FALSE='#'
134else
135  $1_TRUE='#'
136  $1_FALSE=
137fi
138AC_CONFIG_COMMANDS_PRE(
139[if test -z "${$1_TRUE}" && test -z "${$1_FALSE}"; then
140  AC_MSG_ERROR([[conditional "$1" was never defined.
141Usually this means the macro was only invoked conditionally.]])
142fi])])
143
144# Copyright (C) 1999-2021 Free Software Foundation, Inc.
145#
146# This file is free software; the Free Software Foundation
147# gives unlimited permission to copy and/or distribute it,
148# with or without modifications, as long as this notice is preserved.
149
150
151# There are a few dirty hacks below to avoid letting 'AC_PROG_CC' be
152# written in clear, in which case automake, when reading aclocal.m4,
153# will think it sees a *use*, and therefore will trigger all it's
154# C support machinery.  Also note that it means that autoscan, seeing
155# CC etc. in the Makefile, will ask for an AC_PROG_CC use...
156
157
158# _AM_DEPENDENCIES(NAME)
159# ----------------------
160# See how the compiler implements dependency checking.
161# NAME is "CC", "CXX", "OBJC", "OBJCXX", "UPC", or "GJC".
162# We try a few techniques and use that to set a single cache variable.
163#
164# We don't AC_REQUIRE the corresponding AC_PROG_CC since the latter was
165# modified to invoke _AM_DEPENDENCIES(CC); we would have a circular
166# dependency, and given that the user is not expected to run this macro,
167# just rely on AC_PROG_CC.
168AC_DEFUN([_AM_DEPENDENCIES],
169[AC_REQUIRE([AM_SET_DEPDIR])dnl
170AC_REQUIRE([AM_OUTPUT_DEPENDENCY_COMMANDS])dnl
171AC_REQUIRE([AM_MAKE_INCLUDE])dnl
172AC_REQUIRE([AM_DEP_TRACK])dnl
173
174m4_if([$1], [CC],   [depcc="$CC"   am_compiler_list=],
175      [$1], [CXX],  [depcc="$CXX"  am_compiler_list=],
176      [$1], [OBJC], [depcc="$OBJC" am_compiler_list='gcc3 gcc'],
177      [$1], [OBJCXX], [depcc="$OBJCXX" am_compiler_list='gcc3 gcc'],
178      [$1], [UPC],  [depcc="$UPC"  am_compiler_list=],
179      [$1], [GCJ],  [depcc="$GCJ"  am_compiler_list='gcc3 gcc'],
180                    [depcc="$$1"   am_compiler_list=])
181
182AC_CACHE_CHECK([dependency style of $depcc],
183               [am_cv_$1_dependencies_compiler_type],
184[if test -z "$AMDEP_TRUE" && test -f "$am_depcomp"; then
185  # We make a subdir and do the tests there.  Otherwise we can end up
186  # making bogus files that we don't know about and never remove.  For
187  # instance it was reported that on HP-UX the gcc test will end up
188  # making a dummy file named 'D' -- because '-MD' means "put the output
189  # in D".
190  rm -rf conftest.dir
191  mkdir conftest.dir
192  # Copy depcomp to subdir because otherwise we won't find it if we're
193  # using a relative directory.
194  cp "$am_depcomp" conftest.dir
195  cd conftest.dir
196  # We will build objects and dependencies in a subdirectory because
197  # it helps to detect inapplicable dependency modes.  For instance
198  # both Tru64's cc and ICC support -MD to output dependencies as a
199  # side effect of compilation, but ICC will put the dependencies in
200  # the current directory while Tru64 will put them in the object
201  # directory.
202  mkdir sub
203
204  am_cv_$1_dependencies_compiler_type=none
205  if test "$am_compiler_list" = ""; then
206     am_compiler_list=`sed -n ['s/^#*\([a-zA-Z0-9]*\))$/\1/p'] < ./depcomp`
207  fi
208  am__universal=false
209  m4_case([$1], [CC],
210    [case " $depcc " in #(
211     *\ -arch\ *\ -arch\ *) am__universal=true ;;
212     esac],
213    [CXX],
214    [case " $depcc " in #(
215     *\ -arch\ *\ -arch\ *) am__universal=true ;;
216     esac])
217
218  for depmode in $am_compiler_list; do
219    # Setup a source with many dependencies, because some compilers
220    # like to wrap large dependency lists on column 80 (with \), and
221    # we should not choose a depcomp mode which is confused by this.
222    #
223    # We need to recreate these files for each test, as the compiler may
224    # overwrite some of them when testing with obscure command lines.
225    # This happens at least with the AIX C compiler.
226    : > sub/conftest.c
227    for i in 1 2 3 4 5 6; do
228      echo '#include "conftst'$i'.h"' >> sub/conftest.c
229      # Using ": > sub/conftst$i.h" creates only sub/conftst1.h with
230      # Solaris 10 /bin/sh.
231      echo '/* dummy */' > sub/conftst$i.h
232    done
233    echo "${am__include} ${am__quote}sub/conftest.Po${am__quote}" > confmf
234
235    # We check with '-c' and '-o' for the sake of the "dashmstdout"
236    # mode.  It turns out that the SunPro C++ compiler does not properly
237    # handle '-M -o', and we need to detect this.  Also, some Intel
238    # versions had trouble with output in subdirs.
239    am__obj=sub/conftest.${OBJEXT-o}
240    am__minus_obj="-o $am__obj"
241    case $depmode in
242    gcc)
243      # This depmode causes a compiler race in universal mode.
244      test "$am__universal" = false || continue
245      ;;
246    nosideeffect)
247      # After this tag, mechanisms are not by side-effect, so they'll
248      # only be used when explicitly requested.
249      if test "x$enable_dependency_tracking" = xyes; then
250	continue
251      else
252	break
253      fi
254      ;;
255    msvc7 | msvc7msys | msvisualcpp | msvcmsys)
256      # This compiler won't grok '-c -o', but also, the minuso test has
257      # not run yet.  These depmodes are late enough in the game, and
258      # so weak that their functioning should not be impacted.
259      am__obj=conftest.${OBJEXT-o}
260      am__minus_obj=
261      ;;
262    none) break ;;
263    esac
264    if depmode=$depmode \
265       source=sub/conftest.c object=$am__obj \
266       depfile=sub/conftest.Po tmpdepfile=sub/conftest.TPo \
267       $SHELL ./depcomp $depcc -c $am__minus_obj sub/conftest.c \
268         >/dev/null 2>conftest.err &&
269       grep sub/conftst1.h sub/conftest.Po > /dev/null 2>&1 &&
270       grep sub/conftst6.h sub/conftest.Po > /dev/null 2>&1 &&
271       grep $am__obj sub/conftest.Po > /dev/null 2>&1 &&
272       ${MAKE-make} -s -f confmf > /dev/null 2>&1; then
273      # icc doesn't choke on unknown options, it will just issue warnings
274      # or remarks (even with -Werror).  So we grep stderr for any message
275      # that says an option was ignored or not supported.
276      # When given -MP, icc 7.0 and 7.1 complain thusly:
277      #   icc: Command line warning: ignoring option '-M'; no argument required
278      # The diagnosis changed in icc 8.0:
279      #   icc: Command line remark: option '-MP' not supported
280      if (grep 'ignoring option' conftest.err ||
281          grep 'not supported' conftest.err) >/dev/null 2>&1; then :; else
282        am_cv_$1_dependencies_compiler_type=$depmode
283        break
284      fi
285    fi
286  done
287
288  cd ..
289  rm -rf conftest.dir
290else
291  am_cv_$1_dependencies_compiler_type=none
292fi
293])
294AC_SUBST([$1DEPMODE], [depmode=$am_cv_$1_dependencies_compiler_type])
295AM_CONDITIONAL([am__fastdep$1], [
296  test "x$enable_dependency_tracking" != xno \
297  && test "$am_cv_$1_dependencies_compiler_type" = gcc3])
298])
299
300
301# AM_SET_DEPDIR
302# -------------
303# Choose a directory name for dependency files.
304# This macro is AC_REQUIREd in _AM_DEPENDENCIES.
305AC_DEFUN([AM_SET_DEPDIR],
306[AC_REQUIRE([AM_SET_LEADING_DOT])dnl
307AC_SUBST([DEPDIR], ["${am__leading_dot}deps"])dnl
308])
309
310
311# AM_DEP_TRACK
312# ------------
313AC_DEFUN([AM_DEP_TRACK],
314[AC_ARG_ENABLE([dependency-tracking], [dnl
315AS_HELP_STRING(
316  [--enable-dependency-tracking],
317  [do not reject slow dependency extractors])
318AS_HELP_STRING(
319  [--disable-dependency-tracking],
320  [speeds up one-time build])])
321if test "x$enable_dependency_tracking" != xno; then
322  am_depcomp="$ac_aux_dir/depcomp"
323  AMDEPBACKSLASH='\'
324  am__nodep='_no'
325fi
326AM_CONDITIONAL([AMDEP], [test "x$enable_dependency_tracking" != xno])
327AC_SUBST([AMDEPBACKSLASH])dnl
328_AM_SUBST_NOTMAKE([AMDEPBACKSLASH])dnl
329AC_SUBST([am__nodep])dnl
330_AM_SUBST_NOTMAKE([am__nodep])dnl
331])
332
333# Generate code to set up dependency tracking.              -*- Autoconf -*-
334
335# Copyright (C) 1999-2021 Free Software Foundation, Inc.
336#
337# This file is free software; the Free Software Foundation
338# gives unlimited permission to copy and/or distribute it,
339# with or without modifications, as long as this notice is preserved.
340
341# _AM_OUTPUT_DEPENDENCY_COMMANDS
342# ------------------------------
343AC_DEFUN([_AM_OUTPUT_DEPENDENCY_COMMANDS],
344[{
345  # Older Autoconf quotes --file arguments for eval, but not when files
346  # are listed without --file.  Let's play safe and only enable the eval
347  # if we detect the quoting.
348  # TODO: see whether this extra hack can be removed once we start
349  # requiring Autoconf 2.70 or later.
350  AS_CASE([$CONFIG_FILES],
351          [*\'*], [eval set x "$CONFIG_FILES"],
352          [*], [set x $CONFIG_FILES])
353  shift
354  # Used to flag and report bootstrapping failures.
355  am_rc=0
356  for am_mf
357  do
358    # Strip MF so we end up with the name of the file.
359    am_mf=`AS_ECHO(["$am_mf"]) | sed -e 's/:.*$//'`
360    # Check whether this is an Automake generated Makefile which includes
361    # dependency-tracking related rules and includes.
362    # Grep'ing the whole file directly is not great: AIX grep has a line
363    # limit of 2048, but all sed's we know have understand at least 4000.
364    sed -n 's,^am--depfiles:.*,X,p' "$am_mf" | grep X >/dev/null 2>&1 \
365      || continue
366    am_dirpart=`AS_DIRNAME(["$am_mf"])`
367    am_filepart=`AS_BASENAME(["$am_mf"])`
368    AM_RUN_LOG([cd "$am_dirpart" \
369      && sed -e '/# am--include-marker/d' "$am_filepart" \
370        | $MAKE -f - am--depfiles]) || am_rc=$?
371  done
372  if test $am_rc -ne 0; then
373    AC_MSG_FAILURE([Something went wrong bootstrapping makefile fragments
374    for automatic dependency tracking.  If GNU make was not used, consider
375    re-running the configure script with MAKE="gmake" (or whatever is
376    necessary).  You can also try re-running configure with the
377    '--disable-dependency-tracking' option to at least be able to build
378    the package (albeit without support for automatic dependency tracking).])
379  fi
380  AS_UNSET([am_dirpart])
381  AS_UNSET([am_filepart])
382  AS_UNSET([am_mf])
383  AS_UNSET([am_rc])
384  rm -f conftest-deps.mk
385}
386])# _AM_OUTPUT_DEPENDENCY_COMMANDS
387
388
389# AM_OUTPUT_DEPENDENCY_COMMANDS
390# -----------------------------
391# This macro should only be invoked once -- use via AC_REQUIRE.
392#
393# This code is only required when automatic dependency tracking is enabled.
394# This creates each '.Po' and '.Plo' makefile fragment that we'll need in
395# order to bootstrap the dependency handling code.
396AC_DEFUN([AM_OUTPUT_DEPENDENCY_COMMANDS],
397[AC_CONFIG_COMMANDS([depfiles],
398     [test x"$AMDEP_TRUE" != x"" || _AM_OUTPUT_DEPENDENCY_COMMANDS],
399     [AMDEP_TRUE="$AMDEP_TRUE" MAKE="${MAKE-make}"])])
400
401# Do all the work for Automake.                             -*- Autoconf -*-
402
403# Copyright (C) 1996-2021 Free Software Foundation, Inc.
404#
405# This file is free software; the Free Software Foundation
406# gives unlimited permission to copy and/or distribute it,
407# with or without modifications, as long as this notice is preserved.
408
409# This macro actually does too much.  Some checks are only needed if
410# your package does certain things.  But this isn't really a big deal.
411
412dnl Redefine AC_PROG_CC to automatically invoke _AM_PROG_CC_C_O.
413m4_define([AC_PROG_CC],
414m4_defn([AC_PROG_CC])
415[_AM_PROG_CC_C_O
416])
417
418# AM_INIT_AUTOMAKE(PACKAGE, VERSION, [NO-DEFINE])
419# AM_INIT_AUTOMAKE([OPTIONS])
420# -----------------------------------------------
421# The call with PACKAGE and VERSION arguments is the old style
422# call (pre autoconf-2.50), which is being phased out.  PACKAGE
423# and VERSION should now be passed to AC_INIT and removed from
424# the call to AM_INIT_AUTOMAKE.
425# We support both call styles for the transition.  After
426# the next Automake release, Autoconf can make the AC_INIT
427# arguments mandatory, and then we can depend on a new Autoconf
428# release and drop the old call support.
429AC_DEFUN([AM_INIT_AUTOMAKE],
430[AC_PREREQ([2.65])dnl
431m4_ifdef([_$0_ALREADY_INIT],
432  [m4_fatal([$0 expanded multiple times
433]m4_defn([_$0_ALREADY_INIT]))],
434  [m4_define([_$0_ALREADY_INIT], m4_expansion_stack)])dnl
435dnl Autoconf wants to disallow AM_ names.  We explicitly allow
436dnl the ones we care about.
437m4_pattern_allow([^AM_[A-Z]+FLAGS$])dnl
438AC_REQUIRE([AM_SET_CURRENT_AUTOMAKE_VERSION])dnl
439AC_REQUIRE([AC_PROG_INSTALL])dnl
440if test "`cd $srcdir && pwd`" != "`pwd`"; then
441  # Use -I$(srcdir) only when $(srcdir) != ., so that make's output
442  # is not polluted with repeated "-I."
443  AC_SUBST([am__isrc], [' -I$(srcdir)'])_AM_SUBST_NOTMAKE([am__isrc])dnl
444  # test to see if srcdir already configured
445  if test -f $srcdir/config.status; then
446    AC_MSG_ERROR([source directory already configured; run "make distclean" there first])
447  fi
448fi
449
450# test whether we have cygpath
451if test -z "$CYGPATH_W"; then
452  if (cygpath --version) >/dev/null 2>/dev/null; then
453    CYGPATH_W='cygpath -w'
454  else
455    CYGPATH_W=echo
456  fi
457fi
458AC_SUBST([CYGPATH_W])
459
460# Define the identity of the package.
461dnl Distinguish between old-style and new-style calls.
462m4_ifval([$2],
463[AC_DIAGNOSE([obsolete],
464             [$0: two- and three-arguments forms are deprecated.])
465m4_ifval([$3], [_AM_SET_OPTION([no-define])])dnl
466 AC_SUBST([PACKAGE], [$1])dnl
467 AC_SUBST([VERSION], [$2])],
468[_AM_SET_OPTIONS([$1])dnl
469dnl Diagnose old-style AC_INIT with new-style AM_AUTOMAKE_INIT.
470m4_if(
471  m4_ifset([AC_PACKAGE_NAME], [ok]):m4_ifset([AC_PACKAGE_VERSION], [ok]),
472  [ok:ok],,
473  [m4_fatal([AC_INIT should be called with package and version arguments])])dnl
474 AC_SUBST([PACKAGE], ['AC_PACKAGE_TARNAME'])dnl
475 AC_SUBST([VERSION], ['AC_PACKAGE_VERSION'])])dnl
476
477_AM_IF_OPTION([no-define],,
478[AC_DEFINE_UNQUOTED([PACKAGE], ["$PACKAGE"], [Name of package])
479 AC_DEFINE_UNQUOTED([VERSION], ["$VERSION"], [Version number of package])])dnl
480
481# Some tools Automake needs.
482AC_REQUIRE([AM_SANITY_CHECK])dnl
483AC_REQUIRE([AC_ARG_PROGRAM])dnl
484AM_MISSING_PROG([ACLOCAL], [aclocal-${am__api_version}])
485AM_MISSING_PROG([AUTOCONF], [autoconf])
486AM_MISSING_PROG([AUTOMAKE], [automake-${am__api_version}])
487AM_MISSING_PROG([AUTOHEADER], [autoheader])
488AM_MISSING_PROG([MAKEINFO], [makeinfo])
489AC_REQUIRE([AM_PROG_INSTALL_SH])dnl
490AC_REQUIRE([AM_PROG_INSTALL_STRIP])dnl
491AC_REQUIRE([AC_PROG_MKDIR_P])dnl
492# For better backward compatibility.  To be removed once Automake 1.9.x
493# dies out for good.  For more background, see:
494# <https://lists.gnu.org/archive/html/automake/2012-07/msg00001.html>
495# <https://lists.gnu.org/archive/html/automake/2012-07/msg00014.html>
496AC_SUBST([mkdir_p], ['$(MKDIR_P)'])
497# We need awk for the "check" target (and possibly the TAP driver).  The
498# system "awk" is bad on some platforms.
499AC_REQUIRE([AC_PROG_AWK])dnl
500AC_REQUIRE([AC_PROG_MAKE_SET])dnl
501AC_REQUIRE([AM_SET_LEADING_DOT])dnl
502_AM_IF_OPTION([tar-ustar], [_AM_PROG_TAR([ustar])],
503	      [_AM_IF_OPTION([tar-pax], [_AM_PROG_TAR([pax])],
504			     [_AM_PROG_TAR([v7])])])
505_AM_IF_OPTION([no-dependencies],,
506[AC_PROVIDE_IFELSE([AC_PROG_CC],
507		  [_AM_DEPENDENCIES([CC])],
508		  [m4_define([AC_PROG_CC],
509			     m4_defn([AC_PROG_CC])[_AM_DEPENDENCIES([CC])])])dnl
510AC_PROVIDE_IFELSE([AC_PROG_CXX],
511		  [_AM_DEPENDENCIES([CXX])],
512		  [m4_define([AC_PROG_CXX],
513			     m4_defn([AC_PROG_CXX])[_AM_DEPENDENCIES([CXX])])])dnl
514AC_PROVIDE_IFELSE([AC_PROG_OBJC],
515		  [_AM_DEPENDENCIES([OBJC])],
516		  [m4_define([AC_PROG_OBJC],
517			     m4_defn([AC_PROG_OBJC])[_AM_DEPENDENCIES([OBJC])])])dnl
518AC_PROVIDE_IFELSE([AC_PROG_OBJCXX],
519		  [_AM_DEPENDENCIES([OBJCXX])],
520		  [m4_define([AC_PROG_OBJCXX],
521			     m4_defn([AC_PROG_OBJCXX])[_AM_DEPENDENCIES([OBJCXX])])])dnl
522])
523# Variables for tags utilities; see am/tags.am
524if test -z "$CTAGS"; then
525  CTAGS=ctags
526fi
527AC_SUBST([CTAGS])
528if test -z "$ETAGS"; then
529  ETAGS=etags
530fi
531AC_SUBST([ETAGS])
532if test -z "$CSCOPE"; then
533  CSCOPE=cscope
534fi
535AC_SUBST([CSCOPE])
536
537AC_REQUIRE([AM_SILENT_RULES])dnl
538dnl The testsuite driver may need to know about EXEEXT, so add the
539dnl 'am__EXEEXT' conditional if _AM_COMPILER_EXEEXT was seen.  This
540dnl macro is hooked onto _AC_COMPILER_EXEEXT early, see below.
541AC_CONFIG_COMMANDS_PRE(dnl
542[m4_provide_if([_AM_COMPILER_EXEEXT],
543  [AM_CONDITIONAL([am__EXEEXT], [test -n "$EXEEXT"])])])dnl
544
545# POSIX will say in a future version that running "rm -f" with no argument
546# is OK; and we want to be able to make that assumption in our Makefile
547# recipes.  So use an aggressive probe to check that the usage we want is
548# actually supported "in the wild" to an acceptable degree.
549# See automake bug#10828.
550# To make any issue more visible, cause the running configure to be aborted
551# by default if the 'rm' program in use doesn't match our expectations; the
552# user can still override this though.
553if rm -f && rm -fr && rm -rf; then : OK; else
554  cat >&2 <<'END'
555Oops!
556
557Your 'rm' program seems unable to run without file operands specified
558on the command line, even when the '-f' option is present.  This is contrary
559to the behaviour of most rm programs out there, and not conforming with
560the upcoming POSIX standard: <http://austingroupbugs.net/view.php?id=542>
561
562Please tell bug-automake@gnu.org about your system, including the value
563of your $PATH and any error possibly output before this message.  This
564can help us improve future automake versions.
565
566END
567  if test x"$ACCEPT_INFERIOR_RM_PROGRAM" = x"yes"; then
568    echo 'Configuration will proceed anyway, since you have set the' >&2
569    echo 'ACCEPT_INFERIOR_RM_PROGRAM variable to "yes"' >&2
570    echo >&2
571  else
572    cat >&2 <<'END'
573Aborting the configuration process, to ensure you take notice of the issue.
574
575You can download and install GNU coreutils to get an 'rm' implementation
576that behaves properly: <https://www.gnu.org/software/coreutils/>.
577
578If you want to complete the configuration process using your problematic
579'rm' anyway, export the environment variable ACCEPT_INFERIOR_RM_PROGRAM
580to "yes", and re-run configure.
581
582END
583    AC_MSG_ERROR([Your 'rm' program is bad, sorry.])
584  fi
585fi
586dnl The trailing newline in this macro's definition is deliberate, for
587dnl backward compatibility and to allow trailing 'dnl'-style comments
588dnl after the AM_INIT_AUTOMAKE invocation. See automake bug#16841.
589])
590
591dnl Hook into '_AC_COMPILER_EXEEXT' early to learn its expansion.  Do not
592dnl add the conditional right here, as _AC_COMPILER_EXEEXT may be further
593dnl mangled by Autoconf and run in a shell conditional statement.
594m4_define([_AC_COMPILER_EXEEXT],
595m4_defn([_AC_COMPILER_EXEEXT])[m4_provide([_AM_COMPILER_EXEEXT])])
596
597# When config.status generates a header, we must update the stamp-h file.
598# This file resides in the same directory as the config header
599# that is generated.  The stamp files are numbered to have different names.
600
601# Autoconf calls _AC_AM_CONFIG_HEADER_HOOK (when defined) in the
602# loop where config.status creates the headers, so we can generate
603# our stamp files there.
604AC_DEFUN([_AC_AM_CONFIG_HEADER_HOOK],
605[# Compute $1's index in $config_headers.
606_am_arg=$1
607_am_stamp_count=1
608for _am_header in $config_headers :; do
609  case $_am_header in
610    $_am_arg | $_am_arg:* )
611      break ;;
612    * )
613      _am_stamp_count=`expr $_am_stamp_count + 1` ;;
614  esac
615done
616echo "timestamp for $_am_arg" >`AS_DIRNAME(["$_am_arg"])`/stamp-h[]$_am_stamp_count])
617
618# Copyright (C) 2001-2021 Free Software Foundation, Inc.
619#
620# This file is free software; the Free Software Foundation
621# gives unlimited permission to copy and/or distribute it,
622# with or without modifications, as long as this notice is preserved.
623
624# AM_PROG_INSTALL_SH
625# ------------------
626# Define $install_sh.
627AC_DEFUN([AM_PROG_INSTALL_SH],
628[AC_REQUIRE([AM_AUX_DIR_EXPAND])dnl
629if test x"${install_sh+set}" != xset; then
630  case $am_aux_dir in
631  *\ * | *\	*)
632    install_sh="\${SHELL} '$am_aux_dir/install-sh'" ;;
633  *)
634    install_sh="\${SHELL} $am_aux_dir/install-sh"
635  esac
636fi
637AC_SUBST([install_sh])])
638
639# Copyright (C) 2003-2021 Free Software Foundation, Inc.
640#
641# This file is free software; the Free Software Foundation
642# gives unlimited permission to copy and/or distribute it,
643# with or without modifications, as long as this notice is preserved.
644
645# Check whether the underlying file-system supports filenames
646# with a leading dot.  For instance MS-DOS doesn't.
647AC_DEFUN([AM_SET_LEADING_DOT],
648[rm -rf .tst 2>/dev/null
649mkdir .tst 2>/dev/null
650if test -d .tst; then
651  am__leading_dot=.
652else
653  am__leading_dot=_
654fi
655rmdir .tst 2>/dev/null
656AC_SUBST([am__leading_dot])])
657
658# Check to see how 'make' treats includes.	            -*- Autoconf -*-
659
660# Copyright (C) 2001-2021 Free Software Foundation, Inc.
661#
662# This file is free software; the Free Software Foundation
663# gives unlimited permission to copy and/or distribute it,
664# with or without modifications, as long as this notice is preserved.
665
666# AM_MAKE_INCLUDE()
667# -----------------
668# Check whether make has an 'include' directive that can support all
669# the idioms we need for our automatic dependency tracking code.
670AC_DEFUN([AM_MAKE_INCLUDE],
671[AC_MSG_CHECKING([whether ${MAKE-make} supports the include directive])
672cat > confinc.mk << 'END'
673am__doit:
674	@echo this is the am__doit target >confinc.out
675.PHONY: am__doit
676END
677am__include="#"
678am__quote=
679# BSD make does it like this.
680echo '.include "confinc.mk" # ignored' > confmf.BSD
681# Other make implementations (GNU, Solaris 10, AIX) do it like this.
682echo 'include confinc.mk # ignored' > confmf.GNU
683_am_result=no
684for s in GNU BSD; do
685  AM_RUN_LOG([${MAKE-make} -f confmf.$s && cat confinc.out])
686  AS_CASE([$?:`cat confinc.out 2>/dev/null`],
687      ['0:this is the am__doit target'],
688      [AS_CASE([$s],
689          [BSD], [am__include='.include' am__quote='"'],
690          [am__include='include' am__quote=''])])
691  if test "$am__include" != "#"; then
692    _am_result="yes ($s style)"
693    break
694  fi
695done
696rm -f confinc.* confmf.*
697AC_MSG_RESULT([${_am_result}])
698AC_SUBST([am__include])])
699AC_SUBST([am__quote])])
700
701# Fake the existence of programs that GNU maintainers use.  -*- Autoconf -*-
702
703# Copyright (C) 1997-2021 Free Software Foundation, Inc.
704#
705# This file is free software; the Free Software Foundation
706# gives unlimited permission to copy and/or distribute it,
707# with or without modifications, as long as this notice is preserved.
708
709# AM_MISSING_PROG(NAME, PROGRAM)
710# ------------------------------
711AC_DEFUN([AM_MISSING_PROG],
712[AC_REQUIRE([AM_MISSING_HAS_RUN])
713$1=${$1-"${am_missing_run}$2"}
714AC_SUBST($1)])
715
716# AM_MISSING_HAS_RUN
717# ------------------
718# Define MISSING if not defined so far and test if it is modern enough.
719# If it is, set am_missing_run to use it, otherwise, to nothing.
720AC_DEFUN([AM_MISSING_HAS_RUN],
721[AC_REQUIRE([AM_AUX_DIR_EXPAND])dnl
722AC_REQUIRE_AUX_FILE([missing])dnl
723if test x"${MISSING+set}" != xset; then
724  MISSING="\${SHELL} '$am_aux_dir/missing'"
725fi
726# Use eval to expand $SHELL
727if eval "$MISSING --is-lightweight"; then
728  am_missing_run="$MISSING "
729else
730  am_missing_run=
731  AC_MSG_WARN(['missing' script is too old or missing])
732fi
733])
734
735# Helper functions for option handling.                     -*- Autoconf -*-
736
737# Copyright (C) 2001-2021 Free Software Foundation, Inc.
738#
739# This file is free software; the Free Software Foundation
740# gives unlimited permission to copy and/or distribute it,
741# with or without modifications, as long as this notice is preserved.
742
743# _AM_MANGLE_OPTION(NAME)
744# -----------------------
745AC_DEFUN([_AM_MANGLE_OPTION],
746[[_AM_OPTION_]m4_bpatsubst($1, [[^a-zA-Z0-9_]], [_])])
747
748# _AM_SET_OPTION(NAME)
749# --------------------
750# Set option NAME.  Presently that only means defining a flag for this option.
751AC_DEFUN([_AM_SET_OPTION],
752[m4_define(_AM_MANGLE_OPTION([$1]), [1])])
753
754# _AM_SET_OPTIONS(OPTIONS)
755# ------------------------
756# OPTIONS is a space-separated list of Automake options.
757AC_DEFUN([_AM_SET_OPTIONS],
758[m4_foreach_w([_AM_Option], [$1], [_AM_SET_OPTION(_AM_Option)])])
759
760# _AM_IF_OPTION(OPTION, IF-SET, [IF-NOT-SET])
761# -------------------------------------------
762# Execute IF-SET if OPTION is set, IF-NOT-SET otherwise.
763AC_DEFUN([_AM_IF_OPTION],
764[m4_ifset(_AM_MANGLE_OPTION([$1]), [$2], [$3])])
765
766# Copyright (C) 1999-2021 Free Software Foundation, Inc.
767#
768# This file is free software; the Free Software Foundation
769# gives unlimited permission to copy and/or distribute it,
770# with or without modifications, as long as this notice is preserved.
771
772# _AM_PROG_CC_C_O
773# ---------------
774# Like AC_PROG_CC_C_O, but changed for automake.  We rewrite AC_PROG_CC
775# to automatically call this.
776AC_DEFUN([_AM_PROG_CC_C_O],
777[AC_REQUIRE([AM_AUX_DIR_EXPAND])dnl
778AC_REQUIRE_AUX_FILE([compile])dnl
779AC_LANG_PUSH([C])dnl
780AC_CACHE_CHECK(
781  [whether $CC understands -c and -o together],
782  [am_cv_prog_cc_c_o],
783  [AC_LANG_CONFTEST([AC_LANG_PROGRAM([])])
784  # Make sure it works both with $CC and with simple cc.
785  # Following AC_PROG_CC_C_O, we do the test twice because some
786  # compilers refuse to overwrite an existing .o file with -o,
787  # though they will create one.
788  am_cv_prog_cc_c_o=yes
789  for am_i in 1 2; do
790    if AM_RUN_LOG([$CC -c conftest.$ac_ext -o conftest2.$ac_objext]) \
791         && test -f conftest2.$ac_objext; then
792      : OK
793    else
794      am_cv_prog_cc_c_o=no
795      break
796    fi
797  done
798  rm -f core conftest*
799  unset am_i])
800if test "$am_cv_prog_cc_c_o" != yes; then
801   # Losing compiler, so override with the script.
802   # FIXME: It is wrong to rewrite CC.
803   # But if we don't then we get into trouble of one sort or another.
804   # A longer-term fix would be to have automake use am__CC in this case,
805   # and then we could set am__CC="\$(top_srcdir)/compile \$(CC)"
806   CC="$am_aux_dir/compile $CC"
807fi
808AC_LANG_POP([C])])
809
810# For backward compatibility.
811AC_DEFUN_ONCE([AM_PROG_CC_C_O], [AC_REQUIRE([AC_PROG_CC])])
812
813# Copyright (C) 2001-2021 Free Software Foundation, Inc.
814#
815# This file is free software; the Free Software Foundation
816# gives unlimited permission to copy and/or distribute it,
817# with or without modifications, as long as this notice is preserved.
818
819# AM_RUN_LOG(COMMAND)
820# -------------------
821# Run COMMAND, save the exit status in ac_status, and log it.
822# (This has been adapted from Autoconf's _AC_RUN_LOG macro.)
823AC_DEFUN([AM_RUN_LOG],
824[{ echo "$as_me:$LINENO: $1" >&AS_MESSAGE_LOG_FD
825   ($1) >&AS_MESSAGE_LOG_FD 2>&AS_MESSAGE_LOG_FD
826   ac_status=$?
827   echo "$as_me:$LINENO: \$? = $ac_status" >&AS_MESSAGE_LOG_FD
828   (exit $ac_status); }])
829
830# Check to make sure that the build environment is sane.    -*- Autoconf -*-
831
832# Copyright (C) 1996-2021 Free Software Foundation, Inc.
833#
834# This file is free software; the Free Software Foundation
835# gives unlimited permission to copy and/or distribute it,
836# with or without modifications, as long as this notice is preserved.
837
838# AM_SANITY_CHECK
839# ---------------
840AC_DEFUN([AM_SANITY_CHECK],
841[AC_MSG_CHECKING([whether build environment is sane])
842# Reject unsafe characters in $srcdir or the absolute working directory
843# name.  Accept space and tab only in the latter.
844am_lf='
845'
846case `pwd` in
847  *[[\\\"\#\$\&\'\`$am_lf]]*)
848    AC_MSG_ERROR([unsafe absolute working directory name]);;
849esac
850case $srcdir in
851  *[[\\\"\#\$\&\'\`$am_lf\ \	]]*)
852    AC_MSG_ERROR([unsafe srcdir value: '$srcdir']);;
853esac
854
855# Do 'set' in a subshell so we don't clobber the current shell's
856# arguments.  Must try -L first in case configure is actually a
857# symlink; some systems play weird games with the mod time of symlinks
858# (eg FreeBSD returns the mod time of the symlink's containing
859# directory).
860if (
861   am_has_slept=no
862   for am_try in 1 2; do
863     echo "timestamp, slept: $am_has_slept" > conftest.file
864     set X `ls -Lt "$srcdir/configure" conftest.file 2> /dev/null`
865     if test "$[*]" = "X"; then
866	# -L didn't work.
867	set X `ls -t "$srcdir/configure" conftest.file`
868     fi
869     if test "$[*]" != "X $srcdir/configure conftest.file" \
870	&& test "$[*]" != "X conftest.file $srcdir/configure"; then
871
872	# If neither matched, then we have a broken ls.  This can happen
873	# if, for instance, CONFIG_SHELL is bash and it inherits a
874	# broken ls alias from the environment.  This has actually
875	# happened.  Such a system could not be considered "sane".
876	AC_MSG_ERROR([ls -t appears to fail.  Make sure there is not a broken
877  alias in your environment])
878     fi
879     if test "$[2]" = conftest.file || test $am_try -eq 2; then
880       break
881     fi
882     # Just in case.
883     sleep 1
884     am_has_slept=yes
885   done
886   test "$[2]" = conftest.file
887   )
888then
889   # Ok.
890   :
891else
892   AC_MSG_ERROR([newly created file is older than distributed files!
893Check your system clock])
894fi
895AC_MSG_RESULT([yes])
896# If we didn't sleep, we still need to ensure time stamps of config.status and
897# generated files are strictly newer.
898am_sleep_pid=
899if grep 'slept: no' conftest.file >/dev/null 2>&1; then
900  ( sleep 1 ) &
901  am_sleep_pid=$!
902fi
903AC_CONFIG_COMMANDS_PRE(
904  [AC_MSG_CHECKING([that generated files are newer than configure])
905   if test -n "$am_sleep_pid"; then
906     # Hide warnings about reused PIDs.
907     wait $am_sleep_pid 2>/dev/null
908   fi
909   AC_MSG_RESULT([done])])
910rm -f conftest.file
911])
912
913# Copyright (C) 2009-2021 Free Software Foundation, Inc.
914#
915# This file is free software; the Free Software Foundation
916# gives unlimited permission to copy and/or distribute it,
917# with or without modifications, as long as this notice is preserved.
918
919# AM_SILENT_RULES([DEFAULT])
920# --------------------------
921# Enable less verbose build rules; with the default set to DEFAULT
922# ("yes" being less verbose, "no" or empty being verbose).
923AC_DEFUN([AM_SILENT_RULES],
924[AC_ARG_ENABLE([silent-rules], [dnl
925AS_HELP_STRING(
926  [--enable-silent-rules],
927  [less verbose build output (undo: "make V=1")])
928AS_HELP_STRING(
929  [--disable-silent-rules],
930  [verbose build output (undo: "make V=0")])dnl
931])
932case $enable_silent_rules in @%:@ (((
933  yes) AM_DEFAULT_VERBOSITY=0;;
934   no) AM_DEFAULT_VERBOSITY=1;;
935    *) AM_DEFAULT_VERBOSITY=m4_if([$1], [yes], [0], [1]);;
936esac
937dnl
938dnl A few 'make' implementations (e.g., NonStop OS and NextStep)
939dnl do not support nested variable expansions.
940dnl See automake bug#9928 and bug#10237.
941am_make=${MAKE-make}
942AC_CACHE_CHECK([whether $am_make supports nested variables],
943   [am_cv_make_support_nested_variables],
944   [if AS_ECHO([['TRUE=$(BAR$(V))
945BAR0=false
946BAR1=true
947V=1
948am__doit:
949	@$(TRUE)
950.PHONY: am__doit']]) | $am_make -f - >/dev/null 2>&1; then
951  am_cv_make_support_nested_variables=yes
952else
953  am_cv_make_support_nested_variables=no
954fi])
955if test $am_cv_make_support_nested_variables = yes; then
956  dnl Using '$V' instead of '$(V)' breaks IRIX make.
957  AM_V='$(V)'
958  AM_DEFAULT_V='$(AM_DEFAULT_VERBOSITY)'
959else
960  AM_V=$AM_DEFAULT_VERBOSITY
961  AM_DEFAULT_V=$AM_DEFAULT_VERBOSITY
962fi
963AC_SUBST([AM_V])dnl
964AM_SUBST_NOTMAKE([AM_V])dnl
965AC_SUBST([AM_DEFAULT_V])dnl
966AM_SUBST_NOTMAKE([AM_DEFAULT_V])dnl
967AC_SUBST([AM_DEFAULT_VERBOSITY])dnl
968AM_BACKSLASH='\'
969AC_SUBST([AM_BACKSLASH])dnl
970_AM_SUBST_NOTMAKE([AM_BACKSLASH])dnl
971])
972
973# Copyright (C) 2001-2021 Free Software Foundation, Inc.
974#
975# This file is free software; the Free Software Foundation
976# gives unlimited permission to copy and/or distribute it,
977# with or without modifications, as long as this notice is preserved.
978
979# AM_PROG_INSTALL_STRIP
980# ---------------------
981# One issue with vendor 'install' (even GNU) is that you can't
982# specify the program used to strip binaries.  This is especially
983# annoying in cross-compiling environments, where the build's strip
984# is unlikely to handle the host's binaries.
985# Fortunately install-sh will honor a STRIPPROG variable, so we
986# always use install-sh in "make install-strip", and initialize
987# STRIPPROG with the value of the STRIP variable (set by the user).
988AC_DEFUN([AM_PROG_INSTALL_STRIP],
989[AC_REQUIRE([AM_PROG_INSTALL_SH])dnl
990# Installed binaries are usually stripped using 'strip' when the user
991# run "make install-strip".  However 'strip' might not be the right
992# tool to use in cross-compilation environments, therefore Automake
993# will honor the 'STRIP' environment variable to overrule this program.
994dnl Don't test for $cross_compiling = yes, because it might be 'maybe'.
995if test "$cross_compiling" != no; then
996  AC_CHECK_TOOL([STRIP], [strip], :)
997fi
998INSTALL_STRIP_PROGRAM="\$(install_sh) -c -s"
999AC_SUBST([INSTALL_STRIP_PROGRAM])])
1000
1001# Copyright (C) 2006-2021 Free Software Foundation, Inc.
1002#
1003# This file is free software; the Free Software Foundation
1004# gives unlimited permission to copy and/or distribute it,
1005# with or without modifications, as long as this notice is preserved.
1006
1007# _AM_SUBST_NOTMAKE(VARIABLE)
1008# ---------------------------
1009# Prevent Automake from outputting VARIABLE = @VARIABLE@ in Makefile.in.
1010# This macro is traced by Automake.
1011AC_DEFUN([_AM_SUBST_NOTMAKE])
1012
1013# AM_SUBST_NOTMAKE(VARIABLE)
1014# --------------------------
1015# Public sister of _AM_SUBST_NOTMAKE.
1016AC_DEFUN([AM_SUBST_NOTMAKE], [_AM_SUBST_NOTMAKE($@)])
1017
1018# Check how to create a tarball.                            -*- Autoconf -*-
1019
1020# Copyright (C) 2004-2021 Free Software Foundation, Inc.
1021#
1022# This file is free software; the Free Software Foundation
1023# gives unlimited permission to copy and/or distribute it,
1024# with or without modifications, as long as this notice is preserved.
1025
1026# _AM_PROG_TAR(FORMAT)
1027# --------------------
1028# Check how to create a tarball in format FORMAT.
1029# FORMAT should be one of 'v7', 'ustar', or 'pax'.
1030#
1031# Substitute a variable $(am__tar) that is a command
1032# writing to stdout a FORMAT-tarball containing the directory
1033# $tardir.
1034#     tardir=directory && $(am__tar) > result.tar
1035#
1036# Substitute a variable $(am__untar) that extract such
1037# a tarball read from stdin.
1038#     $(am__untar) < result.tar
1039#
1040AC_DEFUN([_AM_PROG_TAR],
1041[# Always define AMTAR for backward compatibility.  Yes, it's still used
1042# in the wild :-(  We should find a proper way to deprecate it ...
1043AC_SUBST([AMTAR], ['$${TAR-tar}'])
1044
1045# We'll loop over all known methods to create a tar archive until one works.
1046_am_tools='gnutar m4_if([$1], [ustar], [plaintar]) pax cpio none'
1047
1048m4_if([$1], [v7],
1049  [am__tar='$${TAR-tar} chof - "$$tardir"' am__untar='$${TAR-tar} xf -'],
1050
1051  [m4_case([$1],
1052    [ustar],
1053     [# The POSIX 1988 'ustar' format is defined with fixed-size fields.
1054      # There is notably a 21 bits limit for the UID and the GID.  In fact,
1055      # the 'pax' utility can hang on bigger UID/GID (see automake bug#8343
1056      # and bug#13588).
1057      am_max_uid=2097151 # 2^21 - 1
1058      am_max_gid=$am_max_uid
1059      # The $UID and $GID variables are not portable, so we need to resort
1060      # to the POSIX-mandated id(1) utility.  Errors in the 'id' calls
1061      # below are definitely unexpected, so allow the users to see them
1062      # (that is, avoid stderr redirection).
1063      am_uid=`id -u || echo unknown`
1064      am_gid=`id -g || echo unknown`
1065      AC_MSG_CHECKING([whether UID '$am_uid' is supported by ustar format])
1066      if test $am_uid -le $am_max_uid; then
1067         AC_MSG_RESULT([yes])
1068      else
1069         AC_MSG_RESULT([no])
1070         _am_tools=none
1071      fi
1072      AC_MSG_CHECKING([whether GID '$am_gid' is supported by ustar format])
1073      if test $am_gid -le $am_max_gid; then
1074         AC_MSG_RESULT([yes])
1075      else
1076        AC_MSG_RESULT([no])
1077        _am_tools=none
1078      fi],
1079
1080  [pax],
1081    [],
1082
1083  [m4_fatal([Unknown tar format])])
1084
1085  AC_MSG_CHECKING([how to create a $1 tar archive])
1086
1087  # Go ahead even if we have the value already cached.  We do so because we
1088  # need to set the values for the 'am__tar' and 'am__untar' variables.
1089  _am_tools=${am_cv_prog_tar_$1-$_am_tools}
1090
1091  for _am_tool in $_am_tools; do
1092    case $_am_tool in
1093    gnutar)
1094      for _am_tar in tar gnutar gtar; do
1095        AM_RUN_LOG([$_am_tar --version]) && break
1096      done
1097      am__tar="$_am_tar --format=m4_if([$1], [pax], [posix], [$1]) -chf - "'"$$tardir"'
1098      am__tar_="$_am_tar --format=m4_if([$1], [pax], [posix], [$1]) -chf - "'"$tardir"'
1099      am__untar="$_am_tar -xf -"
1100      ;;
1101    plaintar)
1102      # Must skip GNU tar: if it does not support --format= it doesn't create
1103      # ustar tarball either.
1104      (tar --version) >/dev/null 2>&1 && continue
1105      am__tar='tar chf - "$$tardir"'
1106      am__tar_='tar chf - "$tardir"'
1107      am__untar='tar xf -'
1108      ;;
1109    pax)
1110      am__tar='pax -L -x $1 -w "$$tardir"'
1111      am__tar_='pax -L -x $1 -w "$tardir"'
1112      am__untar='pax -r'
1113      ;;
1114    cpio)
1115      am__tar='find "$$tardir" -print | cpio -o -H $1 -L'
1116      am__tar_='find "$tardir" -print | cpio -o -H $1 -L'
1117      am__untar='cpio -i -H $1 -d'
1118      ;;
1119    none)
1120      am__tar=false
1121      am__tar_=false
1122      am__untar=false
1123      ;;
1124    esac
1125
1126    # If the value was cached, stop now.  We just wanted to have am__tar
1127    # and am__untar set.
1128    test -n "${am_cv_prog_tar_$1}" && break
1129
1130    # tar/untar a dummy directory, and stop if the command works.
1131    rm -rf conftest.dir
1132    mkdir conftest.dir
1133    echo GrepMe > conftest.dir/file
1134    AM_RUN_LOG([tardir=conftest.dir && eval $am__tar_ >conftest.tar])
1135    rm -rf conftest.dir
1136    if test -s conftest.tar; then
1137      AM_RUN_LOG([$am__untar <conftest.tar])
1138      AM_RUN_LOG([cat conftest.dir/file])
1139      grep GrepMe conftest.dir/file >/dev/null 2>&1 && break
1140    fi
1141  done
1142  rm -rf conftest.dir
1143
1144  AC_CACHE_VAL([am_cv_prog_tar_$1], [am_cv_prog_tar_$1=$_am_tool])
1145  AC_MSG_RESULT([$am_cv_prog_tar_$1])])
1146
1147AC_SUBST([am__tar])
1148AC_SUBST([am__untar])
1149]) # _AM_PROG_TAR
1150
1151dnl pkg.m4 - Macros to locate and utilise pkg-config.   -*- Autoconf -*-
1152dnl serial 11 (pkg-config-0.29)
1153dnl
1154dnl Copyright © 2004 Scott James Remnant <scott@netsplit.com>.
1155dnl Copyright © 2012-2015 Dan Nicholson <dbn.lists@gmail.com>
1156dnl
1157dnl This program is free software; you can redistribute it and/or modify
1158dnl it under the terms of the GNU General Public License as published by
1159dnl the Free Software Foundation; either version 2 of the License, or
1160dnl (at your option) any later version.
1161dnl
1162dnl This program is distributed in the hope that it will be useful, but
1163dnl WITHOUT ANY WARRANTY; without even the implied warranty of
1164dnl MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
1165dnl General Public License for more details.
1166dnl
1167dnl You should have received a copy of the GNU General Public License
1168dnl along with this program; if not, write to the Free Software
1169dnl Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA
1170dnl 02111-1307, USA.
1171dnl
1172dnl As a special exception to the GNU General Public License, if you
1173dnl distribute this file as part of a program that contains a
1174dnl configuration script generated by Autoconf, you may include it under
1175dnl the same distribution terms that you use for the rest of that
1176dnl program.
1177
1178dnl PKG_PREREQ(MIN-VERSION)
1179dnl -----------------------
1180dnl Since: 0.29
1181dnl
1182dnl Verify that the version of the pkg-config macros are at least
1183dnl MIN-VERSION. Unlike PKG_PROG_PKG_CONFIG, which checks the user's
1184dnl installed version of pkg-config, this checks the developer's version
1185dnl of pkg.m4 when generating configure.
1186dnl
1187dnl To ensure that this macro is defined, also add:
1188dnl m4_ifndef([PKG_PREREQ],
1189dnl     [m4_fatal([must install pkg-config 0.29 or later before running autoconf/autogen])])
1190dnl
1191dnl See the "Since" comment for each macro you use to see what version
1192dnl of the macros you require.
1193m4_defun([PKG_PREREQ],
1194[m4_define([PKG_MACROS_VERSION], [0.29])
1195m4_if(m4_version_compare(PKG_MACROS_VERSION, [$1]), -1,
1196    [m4_fatal([pkg.m4 version $1 or higher is required but ]PKG_MACROS_VERSION[ found])])
1197])dnl PKG_PREREQ
1198
1199dnl PKG_PROG_PKG_CONFIG([MIN-VERSION])
1200dnl ----------------------------------
1201dnl Since: 0.16
1202dnl
1203dnl Search for the pkg-config tool and set the PKG_CONFIG variable to
1204dnl first found in the path. Checks that the version of pkg-config found
1205dnl is at least MIN-VERSION. If MIN-VERSION is not specified, 0.9.0 is
1206dnl used since that's the first version where most current features of
1207dnl pkg-config existed.
1208AC_DEFUN([PKG_PROG_PKG_CONFIG],
1209[m4_pattern_forbid([^_?PKG_[A-Z_]+$])
1210m4_pattern_allow([^PKG_CONFIG(_(PATH|LIBDIR|SYSROOT_DIR|ALLOW_SYSTEM_(CFLAGS|LIBS)))?$])
1211m4_pattern_allow([^PKG_CONFIG_(DISABLE_UNINSTALLED|TOP_BUILD_DIR|DEBUG_SPEW)$])
1212AC_ARG_VAR([PKG_CONFIG], [path to pkg-config utility])
1213AC_ARG_VAR([PKG_CONFIG_PATH], [directories to add to pkg-config's search path])
1214AC_ARG_VAR([PKG_CONFIG_LIBDIR], [path overriding pkg-config's built-in search path])
1215
1216if test "x$ac_cv_env_PKG_CONFIG_set" != "xset"; then
1217	AC_PATH_TOOL([PKG_CONFIG], [pkg-config])
1218fi
1219if test -n "$PKG_CONFIG"; then
1220	_pkg_min_version=m4_default([$1], [0.9.0])
1221	AC_MSG_CHECKING([pkg-config is at least version $_pkg_min_version])
1222	if $PKG_CONFIG --atleast-pkgconfig-version $_pkg_min_version; then
1223		AC_MSG_RESULT([yes])
1224	else
1225		AC_MSG_RESULT([no])
1226		PKG_CONFIG=""
1227	fi
1228fi[]dnl
1229])dnl PKG_PROG_PKG_CONFIG
1230
1231dnl PKG_CHECK_EXISTS(MODULES, [ACTION-IF-FOUND], [ACTION-IF-NOT-FOUND])
1232dnl -------------------------------------------------------------------
1233dnl Since: 0.18
1234dnl
1235dnl Check to see whether a particular set of modules exists. Similar to
1236dnl PKG_CHECK_MODULES(), but does not set variables or print errors.
1237dnl
1238dnl Please remember that m4 expands AC_REQUIRE([PKG_PROG_PKG_CONFIG])
1239dnl only at the first occurence in configure.ac, so if the first place
1240dnl it's called might be skipped (such as if it is within an "if", you
1241dnl have to call PKG_CHECK_EXISTS manually
1242AC_DEFUN([PKG_CHECK_EXISTS],
1243[AC_REQUIRE([PKG_PROG_PKG_CONFIG])dnl
1244if test -n "$PKG_CONFIG" && \
1245    AC_RUN_LOG([$PKG_CONFIG --exists --print-errors "$1"]); then
1246  m4_default([$2], [:])
1247m4_ifvaln([$3], [else
1248  $3])dnl
1249fi])
1250
1251dnl _PKG_CONFIG([VARIABLE], [COMMAND], [MODULES])
1252dnl ---------------------------------------------
1253dnl Internal wrapper calling pkg-config via PKG_CONFIG and setting
1254dnl pkg_failed based on the result.
1255m4_define([_PKG_CONFIG],
1256[if test -n "$$1"; then
1257    pkg_cv_[]$1="$$1"
1258 elif test -n "$PKG_CONFIG"; then
1259    PKG_CHECK_EXISTS([$3],
1260                     [pkg_cv_[]$1=`$PKG_CONFIG --[]$2 "$3" 2>/dev/null`
1261		      test "x$?" != "x0" && pkg_failed=yes ],
1262		     [pkg_failed=yes])
1263 else
1264    pkg_failed=untried
1265fi[]dnl
1266])dnl _PKG_CONFIG
1267
1268dnl _PKG_SHORT_ERRORS_SUPPORTED
1269dnl ---------------------------
1270dnl Internal check to see if pkg-config supports short errors.
1271AC_DEFUN([_PKG_SHORT_ERRORS_SUPPORTED],
1272[AC_REQUIRE([PKG_PROG_PKG_CONFIG])
1273if $PKG_CONFIG --atleast-pkgconfig-version 0.20; then
1274        _pkg_short_errors_supported=yes
1275else
1276        _pkg_short_errors_supported=no
1277fi[]dnl
1278])dnl _PKG_SHORT_ERRORS_SUPPORTED
1279
1280
1281dnl PKG_CHECK_MODULES(VARIABLE-PREFIX, MODULES, [ACTION-IF-FOUND],
1282dnl   [ACTION-IF-NOT-FOUND])
1283dnl --------------------------------------------------------------
1284dnl Since: 0.4.0
1285dnl
1286dnl Note that if there is a possibility the first call to
1287dnl PKG_CHECK_MODULES might not happen, you should be sure to include an
1288dnl explicit call to PKG_PROG_PKG_CONFIG in your configure.ac
1289AC_DEFUN([PKG_CHECK_MODULES],
1290[AC_REQUIRE([PKG_PROG_PKG_CONFIG])dnl
1291AC_ARG_VAR([$1][_CFLAGS], [C compiler flags for $1, overriding pkg-config])dnl
1292AC_ARG_VAR([$1][_LIBS], [linker flags for $1, overriding pkg-config])dnl
1293
1294pkg_failed=no
1295AC_MSG_CHECKING([for $1])
1296
1297_PKG_CONFIG([$1][_CFLAGS], [cflags], [$2])
1298_PKG_CONFIG([$1][_LIBS], [libs], [$2])
1299
1300m4_define([_PKG_TEXT], [Alternatively, you may set the environment variables $1[]_CFLAGS
1301and $1[]_LIBS to avoid the need to call pkg-config.
1302See the pkg-config man page for more details.])
1303
1304if test $pkg_failed = yes; then
1305   	AC_MSG_RESULT([no])
1306        _PKG_SHORT_ERRORS_SUPPORTED
1307        if test $_pkg_short_errors_supported = yes; then
1308	        $1[]_PKG_ERRORS=`$PKG_CONFIG --short-errors --print-errors --cflags --libs "$2" 2>&1`
1309        else 
1310	        $1[]_PKG_ERRORS=`$PKG_CONFIG --print-errors --cflags --libs "$2" 2>&1`
1311        fi
1312	# Put the nasty error message in config.log where it belongs
1313	echo "$$1[]_PKG_ERRORS" >&AS_MESSAGE_LOG_FD
1314
1315	m4_default([$4], [AC_MSG_ERROR(
1316[Package requirements ($2) were not met:
1317
1318$$1_PKG_ERRORS
1319
1320Consider adjusting the PKG_CONFIG_PATH environment variable if you
1321installed software in a non-standard prefix.
1322
1323_PKG_TEXT])[]dnl
1324        ])
1325elif test $pkg_failed = untried; then
1326     	AC_MSG_RESULT([no])
1327	m4_default([$4], [AC_MSG_FAILURE(
1328[The pkg-config script could not be found or is too old.  Make sure it
1329is in your PATH or set the PKG_CONFIG environment variable to the full
1330path to pkg-config.
1331
1332_PKG_TEXT
1333
1334To get pkg-config, see <http://pkg-config.freedesktop.org/>.])[]dnl
1335        ])
1336else
1337	$1[]_CFLAGS=$pkg_cv_[]$1[]_CFLAGS
1338	$1[]_LIBS=$pkg_cv_[]$1[]_LIBS
1339        AC_MSG_RESULT([yes])
1340	$3
1341fi[]dnl
1342])dnl PKG_CHECK_MODULES
1343
1344
1345dnl PKG_CHECK_MODULES_STATIC(VARIABLE-PREFIX, MODULES, [ACTION-IF-FOUND],
1346dnl   [ACTION-IF-NOT-FOUND])
1347dnl ---------------------------------------------------------------------
1348dnl Since: 0.29
1349dnl
1350dnl Checks for existence of MODULES and gathers its build flags with
1351dnl static libraries enabled. Sets VARIABLE-PREFIX_CFLAGS from --cflags
1352dnl and VARIABLE-PREFIX_LIBS from --libs.
1353dnl
1354dnl Note that if there is a possibility the first call to
1355dnl PKG_CHECK_MODULES_STATIC might not happen, you should be sure to
1356dnl include an explicit call to PKG_PROG_PKG_CONFIG in your
1357dnl configure.ac.
1358AC_DEFUN([PKG_CHECK_MODULES_STATIC],
1359[AC_REQUIRE([PKG_PROG_PKG_CONFIG])dnl
1360_save_PKG_CONFIG=$PKG_CONFIG
1361PKG_CONFIG="$PKG_CONFIG --static"
1362PKG_CHECK_MODULES($@)
1363PKG_CONFIG=$_save_PKG_CONFIG[]dnl
1364])dnl PKG_CHECK_MODULES_STATIC
1365
1366
1367dnl PKG_INSTALLDIR([DIRECTORY])
1368dnl -------------------------
1369dnl Since: 0.27
1370dnl
1371dnl Substitutes the variable pkgconfigdir as the location where a module
1372dnl should install pkg-config .pc files. By default the directory is
1373dnl $libdir/pkgconfig, but the default can be changed by passing
1374dnl DIRECTORY. The user can override through the --with-pkgconfigdir
1375dnl parameter.
1376AC_DEFUN([PKG_INSTALLDIR],
1377[m4_pushdef([pkg_default], [m4_default([$1], ['${libdir}/pkgconfig'])])
1378m4_pushdef([pkg_description],
1379    [pkg-config installation directory @<:@]pkg_default[@:>@])
1380AC_ARG_WITH([pkgconfigdir],
1381    [AS_HELP_STRING([--with-pkgconfigdir], pkg_description)],,
1382    [with_pkgconfigdir=]pkg_default)
1383AC_SUBST([pkgconfigdir], [$with_pkgconfigdir])
1384m4_popdef([pkg_default])
1385m4_popdef([pkg_description])
1386])dnl PKG_INSTALLDIR
1387
1388
1389dnl PKG_NOARCH_INSTALLDIR([DIRECTORY])
1390dnl --------------------------------
1391dnl Since: 0.27
1392dnl
1393dnl Substitutes the variable noarch_pkgconfigdir as the location where a
1394dnl module should install arch-independent pkg-config .pc files. By
1395dnl default the directory is $datadir/pkgconfig, but the default can be
1396dnl changed by passing DIRECTORY. The user can override through the
1397dnl --with-noarch-pkgconfigdir parameter.
1398AC_DEFUN([PKG_NOARCH_INSTALLDIR],
1399[m4_pushdef([pkg_default], [m4_default([$1], ['${datadir}/pkgconfig'])])
1400m4_pushdef([pkg_description],
1401    [pkg-config arch-independent installation directory @<:@]pkg_default[@:>@])
1402AC_ARG_WITH([noarch-pkgconfigdir],
1403    [AS_HELP_STRING([--with-noarch-pkgconfigdir], pkg_description)],,
1404    [with_noarch_pkgconfigdir=]pkg_default)
1405AC_SUBST([noarch_pkgconfigdir], [$with_noarch_pkgconfigdir])
1406m4_popdef([pkg_default])
1407m4_popdef([pkg_description])
1408])dnl PKG_NOARCH_INSTALLDIR
1409
1410
1411dnl PKG_CHECK_VAR(VARIABLE, MODULE, CONFIG-VARIABLE,
1412dnl [ACTION-IF-FOUND], [ACTION-IF-NOT-FOUND])
1413dnl -------------------------------------------
1414dnl Since: 0.28
1415dnl
1416dnl Retrieves the value of the pkg-config variable for the given module.
1417AC_DEFUN([PKG_CHECK_VAR],
1418[AC_REQUIRE([PKG_PROG_PKG_CONFIG])dnl
1419AC_ARG_VAR([$1], [value of $3 for $2, overriding pkg-config])dnl
1420
1421_PKG_CONFIG([$1], [variable="][$3]["], [$2])
1422AS_VAR_COPY([$1], [pkg_cv_][$1])
1423
1424AS_VAR_IF([$1], [""], [$5], [$4])dnl
1425])dnl PKG_CHECK_VAR
1426
1427dnl xorg-macros.m4.  Generated from xorg-macros.m4.in xorgversion.m4 by configure.
1428dnl
1429dnl Copyright (c) 2005, 2023, Oracle and/or its affiliates.
1430dnl
1431dnl Permission is hereby granted, free of charge, to any person obtaining a
1432dnl copy of this software and associated documentation files (the "Software"),
1433dnl to deal in the Software without restriction, including without limitation
1434dnl the rights to use, copy, modify, merge, publish, distribute, sublicense,
1435dnl and/or sell copies of the Software, and to permit persons to whom the
1436dnl Software is furnished to do so, subject to the following conditions:
1437dnl
1438dnl The above copyright notice and this permission notice (including the next
1439dnl paragraph) shall be included in all copies or substantial portions of the
1440dnl Software.
1441dnl
1442dnl THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
1443dnl IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
1444dnl FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.  IN NO EVENT SHALL
1445dnl THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
1446dnl LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
1447dnl FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER
1448dnl DEALINGS IN THE SOFTWARE.
1449
1450# XORG_MACROS_VERSION(required-version)
1451# -------------------------------------
1452# Minimum version: 1.1.0
1453#
1454# If you're using a macro added in Version 1.1 or newer, include this in
1455# your configure.ac with the minimum required version, such as:
1456# XORG_MACROS_VERSION(1.1)
1457#
1458# To ensure that this macro is defined, also add:
1459# m4_ifndef([XORG_MACROS_VERSION],
1460#     [m4_fatal([must install xorg-macros 1.1 or later before running autoconf/autogen])])
1461#
1462#
1463# See the "minimum version" comment for each macro you use to see what
1464# version you require.
1465m4_defun([XORG_MACROS_VERSION],[
1466m4_define([vers_have], [1.20.0])
1467m4_define([maj_have], m4_substr(vers_have, 0, m4_index(vers_have, [.])))
1468m4_define([maj_needed], m4_substr([$1], 0, m4_index([$1], [.])))
1469m4_if(m4_cmp(maj_have, maj_needed), 0,,
1470    [m4_fatal([xorg-macros major version ]maj_needed[ is required but ]vers_have[ found])])
1471m4_if(m4_version_compare(vers_have, [$1]), -1,
1472    [m4_fatal([xorg-macros version $1 or higher is required but ]vers_have[ found])])
1473m4_undefine([vers_have])
1474m4_undefine([maj_have])
1475m4_undefine([maj_needed])
1476]) # XORG_MACROS_VERSION
1477
1478# XORG_PROG_RAWCPP()
1479# ------------------
1480# Minimum version: 1.0.0
1481#
1482# Find cpp program and necessary flags for use in pre-processing text files
1483# such as man pages and config files
1484AC_DEFUN([XORG_PROG_RAWCPP],[
1485AC_REQUIRE([AC_PROG_CPP])
1486AC_PATH_TOOL(RAWCPP, [cpp], [${CPP}],
1487   [$PATH:/bin:/usr/bin:/usr/lib:/usr/libexec:/usr/ccs/lib:/usr/ccs/lbin:/lib])
1488
1489# Check for flag to avoid builtin definitions - assumes unix is predefined,
1490# which is not the best choice for supporting other OS'es, but covers most
1491# of the ones we need for now.
1492AC_MSG_CHECKING([if $RAWCPP requires -undef])
1493AC_LANG_CONFTEST([AC_LANG_SOURCE([[Does cpp redefine unix ?]])])
1494if test `${RAWCPP} < conftest.$ac_ext | grep -c 'unix'` -eq 1 ; then
1495	AC_MSG_RESULT([no])
1496else
1497	if test `${RAWCPP} -undef < conftest.$ac_ext | grep -c 'unix'` -eq 1 ; then
1498		RAWCPPFLAGS=-undef
1499		AC_MSG_RESULT([yes])
1500	# under Cygwin unix is still defined even with -undef
1501	elif test `${RAWCPP} -undef -ansi < conftest.$ac_ext | grep -c 'unix'` -eq 1 ; then
1502		RAWCPPFLAGS="-undef -ansi"
1503		AC_MSG_RESULT([yes, with -ansi])
1504	else
1505		AC_MSG_ERROR([${RAWCPP} defines unix with or without -undef.  I don't know what to do.])
1506	fi
1507fi
1508rm -f conftest.$ac_ext
1509
1510AC_MSG_CHECKING([if $RAWCPP requires -traditional])
1511AC_LANG_CONFTEST([AC_LANG_SOURCE([[Does cpp preserve   "whitespace"?]])])
1512if test `${RAWCPP} < conftest.$ac_ext | grep -c 'preserve   \"'` -eq 1 ; then
1513	AC_MSG_RESULT([no])
1514else
1515	if test `${RAWCPP} -traditional < conftest.$ac_ext | grep -c 'preserve   \"'` -eq 1 ; then
1516		TRADITIONALCPPFLAGS="-traditional"
1517		RAWCPPFLAGS="${RAWCPPFLAGS} -traditional"
1518		AC_MSG_RESULT([yes])
1519	else
1520		AC_MSG_ERROR([${RAWCPP} does not preserve whitespace with or without -traditional.  I don't know what to do.])
1521	fi
1522fi
1523rm -f conftest.$ac_ext
1524AC_SUBST(RAWCPPFLAGS)
1525AC_SUBST(TRADITIONALCPPFLAGS)
1526]) # XORG_PROG_RAWCPP
1527
1528# XORG_MANPAGE_SECTIONS()
1529# -----------------------
1530# Minimum version: 1.0.0
1531#
1532# Determine which sections man pages go in for the different man page types
1533# on this OS - replaces *ManSuffix settings in old Imake *.cf per-os files.
1534# Not sure if there's any better way than just hardcoding by OS name.
1535# Override default settings by setting environment variables
1536# Added MAN_SUBSTS in version 1.8
1537# Added AC_PROG_SED in version 1.8
1538
1539AC_DEFUN([XORG_MANPAGE_SECTIONS],[
1540AC_REQUIRE([AC_CANONICAL_HOST])
1541AC_REQUIRE([AC_PROG_SED])
1542
1543case $host_os in
1544    solaris*)
1545        # Solaris 2.0 - 11.3 use SysV man page section numbers, so we
1546        # check for a man page file found in later versions that use
1547        # traditional section numbers instead
1548        AC_CHECK_FILE([/usr/share/man/man7/attributes.7],
1549                [SYSV_MAN_SECTIONS=false], [SYSV_MAN_SECTIONS=true])
1550        ;;
1551    *) SYSV_MAN_SECTIONS=false ;;
1552esac
1553
1554if test x$APP_MAN_SUFFIX = x    ; then
1555    APP_MAN_SUFFIX=1
1556fi
1557if test x$APP_MAN_DIR = x    ; then
1558    APP_MAN_DIR='$(mandir)/man$(APP_MAN_SUFFIX)'
1559fi
1560
1561if test x$LIB_MAN_SUFFIX = x    ; then
1562    LIB_MAN_SUFFIX=3
1563fi
1564if test x$LIB_MAN_DIR = x    ; then
1565    LIB_MAN_DIR='$(mandir)/man$(LIB_MAN_SUFFIX)'
1566fi
1567
1568if test x$FILE_MAN_SUFFIX = x    ; then
1569    case $SYSV_MAN_SECTIONS in
1570	true)				FILE_MAN_SUFFIX=4  ;;
1571	*)				FILE_MAN_SUFFIX=5  ;;
1572    esac
1573fi
1574if test x$FILE_MAN_DIR = x    ; then
1575    FILE_MAN_DIR='$(mandir)/man$(FILE_MAN_SUFFIX)'
1576fi
1577
1578if test x$MISC_MAN_SUFFIX = x    ; then
1579    case $SYSV_MAN_SECTIONS in
1580	true)				MISC_MAN_SUFFIX=5  ;;
1581	*)				MISC_MAN_SUFFIX=7  ;;
1582    esac
1583fi
1584if test x$MISC_MAN_DIR = x    ; then
1585    MISC_MAN_DIR='$(mandir)/man$(MISC_MAN_SUFFIX)'
1586fi
1587
1588if test x$DRIVER_MAN_SUFFIX = x    ; then
1589    case $SYSV_MAN_SECTIONS in
1590	true)				DRIVER_MAN_SUFFIX=7  ;;
1591	*)				DRIVER_MAN_SUFFIX=4  ;;
1592    esac
1593fi
1594if test x$DRIVER_MAN_DIR = x    ; then
1595    DRIVER_MAN_DIR='$(mandir)/man$(DRIVER_MAN_SUFFIX)'
1596fi
1597
1598if test x$ADMIN_MAN_SUFFIX = x    ; then
1599    case $SYSV_MAN_SECTIONS in
1600	true)				ADMIN_MAN_SUFFIX=1m ;;
1601	*)				ADMIN_MAN_SUFFIX=8  ;;
1602    esac
1603fi
1604if test x$ADMIN_MAN_DIR = x    ; then
1605    ADMIN_MAN_DIR='$(mandir)/man$(ADMIN_MAN_SUFFIX)'
1606fi
1607
1608
1609AC_SUBST([APP_MAN_SUFFIX])
1610AC_SUBST([LIB_MAN_SUFFIX])
1611AC_SUBST([FILE_MAN_SUFFIX])
1612AC_SUBST([MISC_MAN_SUFFIX])
1613AC_SUBST([DRIVER_MAN_SUFFIX])
1614AC_SUBST([ADMIN_MAN_SUFFIX])
1615AC_SUBST([APP_MAN_DIR])
1616AC_SUBST([LIB_MAN_DIR])
1617AC_SUBST([FILE_MAN_DIR])
1618AC_SUBST([MISC_MAN_DIR])
1619AC_SUBST([DRIVER_MAN_DIR])
1620AC_SUBST([ADMIN_MAN_DIR])
1621
1622XORG_MAN_PAGE="X Version 11"
1623AC_SUBST([XORG_MAN_PAGE])
1624MAN_SUBSTS="\
1625	-e 's|__vendorversion__|\"\$(PACKAGE_STRING)\" \"\$(XORG_MAN_PAGE)\"|' \
1626	-e 's|__xorgversion__|\"\$(PACKAGE_STRING)\" \"\$(XORG_MAN_PAGE)\"|' \
1627	-e 's|__xservername__|Xorg|g' \
1628	-e 's|__xconfigfile__|xorg.conf|g' \
1629	-e 's|__projectroot__|\$(prefix)|g' \
1630	-e 's|__apploaddir__|\$(appdefaultdir)|g' \
1631	-e 's|__appmansuffix__|\$(APP_MAN_SUFFIX)|g' \
1632	-e 's|__drivermansuffix__|\$(DRIVER_MAN_SUFFIX)|g' \
1633	-e 's|__adminmansuffix__|\$(ADMIN_MAN_SUFFIX)|g' \
1634	-e 's|__libmansuffix__|\$(LIB_MAN_SUFFIX)|g' \
1635	-e 's|__miscmansuffix__|\$(MISC_MAN_SUFFIX)|g' \
1636	-e 's|__filemansuffix__|\$(FILE_MAN_SUFFIX)|g'"
1637AC_SUBST([MAN_SUBSTS])
1638
1639]) # XORG_MANPAGE_SECTIONS
1640
1641# XORG_CHECK_SGML_DOCTOOLS([MIN-VERSION])
1642# ------------------------
1643# Minimum version: 1.7.0
1644#
1645# Defines the variable XORG_SGML_PATH containing the location of X11/defs.ent
1646# provided by xorg-sgml-doctools, if installed.
1647AC_DEFUN([XORG_CHECK_SGML_DOCTOOLS],[
1648AC_MSG_CHECKING([for X.Org SGML entities m4_ifval([$1],[>= $1])])
1649XORG_SGML_PATH=
1650PKG_CHECK_EXISTS([xorg-sgml-doctools m4_ifval([$1],[>= $1])],
1651    [XORG_SGML_PATH=`$PKG_CONFIG --variable=sgmlrootdir xorg-sgml-doctools`],
1652    [m4_ifval([$1],[:],
1653        [if test x"$cross_compiling" != x"yes" ; then
1654            AC_CHECK_FILE([$prefix/share/sgml/X11/defs.ent],
1655                          [XORG_SGML_PATH=$prefix/share/sgml])
1656         fi])
1657    ])
1658
1659# Define variables STYLESHEET_SRCDIR and XSL_STYLESHEET containing
1660# the path and the name of the doc stylesheet
1661if test "x$XORG_SGML_PATH" != "x" ; then
1662   AC_MSG_RESULT([$XORG_SGML_PATH])
1663   STYLESHEET_SRCDIR=$XORG_SGML_PATH/X11
1664   XSL_STYLESHEET=$STYLESHEET_SRCDIR/xorg.xsl
1665else
1666   AC_MSG_RESULT([no])
1667fi
1668
1669AC_SUBST(XORG_SGML_PATH)
1670AC_SUBST(STYLESHEET_SRCDIR)
1671AC_SUBST(XSL_STYLESHEET)
1672AM_CONDITIONAL([HAVE_STYLESHEETS], [test "x$XSL_STYLESHEET" != "x"])
1673]) # XORG_CHECK_SGML_DOCTOOLS
1674
1675# XORG_CHECK_LINUXDOC
1676# -------------------
1677# Minimum version: 1.0.0
1678#
1679# Defines the variable MAKE_TEXT if the necessary tools and
1680# files are found. $(MAKE_TEXT) blah.sgml will then produce blah.txt.
1681# Whether or not the necessary tools and files are found can be checked
1682# with the AM_CONDITIONAL "BUILD_LINUXDOC"
1683AC_DEFUN([XORG_CHECK_LINUXDOC],[
1684AC_REQUIRE([XORG_CHECK_SGML_DOCTOOLS])
1685AC_REQUIRE([XORG_WITH_PS2PDF])
1686
1687AC_PATH_PROG(LINUXDOC, linuxdoc)
1688
1689AC_MSG_CHECKING([whether to build documentation])
1690
1691if test x$XORG_SGML_PATH != x && test x$LINUXDOC != x ; then
1692   BUILDDOC=yes
1693else
1694   BUILDDOC=no
1695fi
1696
1697AM_CONDITIONAL(BUILD_LINUXDOC, [test x$BUILDDOC = xyes])
1698
1699AC_MSG_RESULT([$BUILDDOC])
1700
1701AC_MSG_CHECKING([whether to build pdf documentation])
1702
1703if test x$have_ps2pdf != xno && test x$BUILD_PDFDOC != xno; then
1704   BUILDPDFDOC=yes
1705else
1706   BUILDPDFDOC=no
1707fi
1708
1709AM_CONDITIONAL(BUILD_PDFDOC, [test x$BUILDPDFDOC = xyes])
1710
1711AC_MSG_RESULT([$BUILDPDFDOC])
1712
1713MAKE_TEXT="SGML_SEARCH_PATH=$XORG_SGML_PATH GROFF_NO_SGR=y $LINUXDOC -B txt -f"
1714MAKE_PS="SGML_SEARCH_PATH=$XORG_SGML_PATH $LINUXDOC -B latex --papersize=letter --output=ps"
1715MAKE_PDF="$PS2PDF"
1716MAKE_HTML="SGML_SEARCH_PATH=$XORG_SGML_PATH $LINUXDOC  -B html --split=0"
1717
1718AC_SUBST(MAKE_TEXT)
1719AC_SUBST(MAKE_PS)
1720AC_SUBST(MAKE_PDF)
1721AC_SUBST(MAKE_HTML)
1722]) # XORG_CHECK_LINUXDOC
1723
1724# XORG_CHECK_DOCBOOK
1725# -------------------
1726# Minimum version: 1.0.0
1727#
1728# Checks for the ability to build output formats from SGML DocBook source.
1729# For XXX in {TXT, PDF, PS, HTML}, the AM_CONDITIONAL "BUILD_XXXDOC"
1730# indicates whether the necessary tools and files are found and, if set,
1731# $(MAKE_XXX) blah.sgml will produce blah.xxx.
1732AC_DEFUN([XORG_CHECK_DOCBOOK],[
1733AC_REQUIRE([XORG_CHECK_SGML_DOCTOOLS])
1734
1735BUILDTXTDOC=no
1736BUILDPDFDOC=no
1737BUILDPSDOC=no
1738BUILDHTMLDOC=no
1739
1740AC_PATH_PROG(DOCBOOKPS, docbook2ps)
1741AC_PATH_PROG(DOCBOOKPDF, docbook2pdf)
1742AC_PATH_PROG(DOCBOOKHTML, docbook2html)
1743AC_PATH_PROG(DOCBOOKTXT, docbook2txt)
1744
1745AC_MSG_CHECKING([whether to build text documentation])
1746if test x$XORG_SGML_PATH != x && test x$DOCBOOKTXT != x &&
1747   test x$BUILD_TXTDOC != xno; then
1748	BUILDTXTDOC=yes
1749fi
1750AM_CONDITIONAL(BUILD_TXTDOC, [test x$BUILDTXTDOC = xyes])
1751AC_MSG_RESULT([$BUILDTXTDOC])
1752
1753AC_MSG_CHECKING([whether to build PDF documentation])
1754if test x$XORG_SGML_PATH != x && test x$DOCBOOKPDF != x &&
1755   test x$BUILD_PDFDOC != xno; then
1756	BUILDPDFDOC=yes
1757fi
1758AM_CONDITIONAL(BUILD_PDFDOC, [test x$BUILDPDFDOC = xyes])
1759AC_MSG_RESULT([$BUILDPDFDOC])
1760
1761AC_MSG_CHECKING([whether to build PostScript documentation])
1762if test x$XORG_SGML_PATH != x && test x$DOCBOOKPS != x &&
1763   test x$BUILD_PSDOC != xno; then
1764	BUILDPSDOC=yes
1765fi
1766AM_CONDITIONAL(BUILD_PSDOC, [test x$BUILDPSDOC = xyes])
1767AC_MSG_RESULT([$BUILDPSDOC])
1768
1769AC_MSG_CHECKING([whether to build HTML documentation])
1770if test x$XORG_SGML_PATH != x && test x$DOCBOOKHTML != x &&
1771   test x$BUILD_HTMLDOC != xno; then
1772	BUILDHTMLDOC=yes
1773fi
1774AM_CONDITIONAL(BUILD_HTMLDOC, [test x$BUILDHTMLDOC = xyes])
1775AC_MSG_RESULT([$BUILDHTMLDOC])
1776
1777MAKE_TEXT="SGML_SEARCH_PATH=$XORG_SGML_PATH $DOCBOOKTXT"
1778MAKE_PS="SGML_SEARCH_PATH=$XORG_SGML_PATH $DOCBOOKPS"
1779MAKE_PDF="SGML_SEARCH_PATH=$XORG_SGML_PATH $DOCBOOKPDF"
1780MAKE_HTML="SGML_SEARCH_PATH=$XORG_SGML_PATH $DOCBOOKHTML"
1781
1782AC_SUBST(MAKE_TEXT)
1783AC_SUBST(MAKE_PS)
1784AC_SUBST(MAKE_PDF)
1785AC_SUBST(MAKE_HTML)
1786]) # XORG_CHECK_DOCBOOK
1787
1788# XORG_WITH_XMLTO([MIN-VERSION], [DEFAULT])
1789# ----------------
1790# Minimum version: 1.5.0
1791# Minimum version for optional DEFAULT argument: 1.11.0
1792#
1793# Documentation tools are not always available on all platforms and sometimes
1794# not at the appropriate level. This macro enables a module to test for the
1795# presence of the tool and obtain it's path in separate variables. Coupled with
1796# the --with-xmlto option, it allows maximum flexibility in making decisions
1797# as whether or not to use the xmlto package. When DEFAULT is not specified,
1798# --with-xmlto assumes 'auto'.
1799#
1800# Interface to module:
1801# HAVE_XMLTO: 	used in makefiles to conditionally generate documentation
1802# XMLTO:	returns the path of the xmlto program found
1803#		returns the path set by the user in the environment
1804# --with-xmlto:	'yes' user instructs the module to use xmlto
1805#		'no' user instructs the module not to use xmlto
1806#
1807# Added in version 1.10.0
1808# HAVE_XMLTO_TEXT: used in makefiles to conditionally generate text documentation
1809#                  xmlto for text output requires either lynx, links, or w3m browsers
1810#
1811# If the user sets the value of XMLTO, AC_PATH_PROG skips testing the path.
1812#
1813AC_DEFUN([XORG_WITH_XMLTO],[
1814AC_ARG_VAR([XMLTO], [Path to xmlto command])
1815m4_define([_defopt], m4_default([$2], [auto]))
1816AC_ARG_WITH(xmlto,
1817	AS_HELP_STRING([--with-xmlto],
1818	   [Use xmlto to regenerate documentation (default: ]_defopt[)]),
1819	   [use_xmlto=$withval], [use_xmlto=]_defopt)
1820m4_undefine([_defopt])
1821
1822if test "x$use_xmlto" = x"auto"; then
1823   AC_PATH_PROG([XMLTO], [xmlto])
1824   if test "x$XMLTO" = "x"; then
1825        AC_MSG_WARN([xmlto not found - documentation targets will be skipped])
1826	have_xmlto=no
1827   else
1828        have_xmlto=yes
1829   fi
1830elif test "x$use_xmlto" = x"yes" ; then
1831   AC_PATH_PROG([XMLTO], [xmlto])
1832   if test "x$XMLTO" = "x"; then
1833        AC_MSG_ERROR([--with-xmlto=yes specified but xmlto not found in PATH])
1834   fi
1835   have_xmlto=yes
1836elif test "x$use_xmlto" = x"no" ; then
1837   if test "x$XMLTO" != "x"; then
1838      AC_MSG_WARN([ignoring XMLTO environment variable since --with-xmlto=no was specified])
1839   fi
1840   have_xmlto=no
1841else
1842   AC_MSG_ERROR([--with-xmlto expects 'yes' or 'no'])
1843fi
1844
1845# Test for a minimum version of xmlto, if provided.
1846m4_ifval([$1],
1847[if test "$have_xmlto" = yes; then
1848    # scrape the xmlto version
1849    AC_MSG_CHECKING([the xmlto version])
1850    xmlto_version=`$XMLTO --version 2>/dev/null | cut -d' ' -f3`
1851    AC_MSG_RESULT([$xmlto_version])
1852    AS_VERSION_COMPARE([$xmlto_version], [$1],
1853        [if test "x$use_xmlto" = xauto; then
1854            AC_MSG_WARN([xmlto version $xmlto_version found, but $1 needed])
1855            have_xmlto=no
1856        else
1857            AC_MSG_ERROR([xmlto version $xmlto_version found, but $1 needed])
1858        fi])
1859fi])
1860
1861# Test for the ability of xmlto to generate a text target
1862#
1863# NOTE: xmlto 0.0.27 or higher return a non-zero return code in the
1864# following test for empty XML docbook files.
1865# For compatibility reasons use the following empty XML docbook file and if
1866# it fails try it again with a non-empty XML file.
1867have_xmlto_text=no
1868cat > conftest.xml << "EOF"
1869EOF
1870AS_IF([test "$have_xmlto" = yes],
1871      [AS_IF([$XMLTO --skip-validation txt conftest.xml >/dev/null 2>&1],
1872             [have_xmlto_text=yes],
1873             [# Try it again with a non-empty XML file.
1874              cat > conftest.xml << "EOF"
1875<x></x>
1876EOF
1877              AS_IF([$XMLTO --skip-validation txt conftest.xml >/dev/null 2>&1],
1878                    [have_xmlto_text=yes],
1879                    [AC_MSG_WARN([xmlto cannot generate text format, this format skipped])])])])
1880rm -f conftest.xml
1881AM_CONDITIONAL([HAVE_XMLTO_TEXT], [test $have_xmlto_text = yes])
1882AM_CONDITIONAL([HAVE_XMLTO], [test "$have_xmlto" = yes])
1883]) # XORG_WITH_XMLTO
1884
1885# XORG_WITH_XSLTPROC([MIN-VERSION], [DEFAULT])
1886# --------------------------------------------
1887# Minimum version: 1.12.0
1888# Minimum version for optional DEFAULT argument: 1.12.0
1889#
1890# XSLT (Extensible Stylesheet Language Transformations) is a declarative,
1891# XML-based language used for the transformation of XML documents.
1892# The xsltproc command line tool is for applying XSLT stylesheets to XML documents.
1893# It is used under the cover by xmlto to generate html files from DocBook/XML.
1894# The XSLT processor is often used as a standalone tool for transformations.
1895# It should not be assumed that this tool is used only to work with documnetation.
1896# When DEFAULT is not specified, --with-xsltproc assumes 'auto'.
1897#
1898# Interface to module:
1899# HAVE_XSLTPROC: used in makefiles to conditionally generate documentation
1900# XSLTPROC:	 returns the path of the xsltproc program found
1901#		 returns the path set by the user in the environment
1902# --with-xsltproc: 'yes' user instructs the module to use xsltproc
1903#		  'no' user instructs the module not to use xsltproc
1904# have_xsltproc: returns yes if xsltproc found in PATH or no
1905#
1906# If the user sets the value of XSLTPROC, AC_PATH_PROG skips testing the path.
1907#
1908AC_DEFUN([XORG_WITH_XSLTPROC],[
1909AC_ARG_VAR([XSLTPROC], [Path to xsltproc command])
1910# Preserves the interface, should it be implemented later
1911m4_ifval([$1], [m4_warn([syntax], [Checking for xsltproc MIN-VERSION is not implemented])])
1912m4_define([_defopt], m4_default([$2], [auto]))
1913AC_ARG_WITH(xsltproc,
1914	AS_HELP_STRING([--with-xsltproc],
1915	   [Use xsltproc for the transformation of XML documents (default: ]_defopt[)]),
1916	   [use_xsltproc=$withval], [use_xsltproc=]_defopt)
1917m4_undefine([_defopt])
1918
1919if test "x$use_xsltproc" = x"auto"; then
1920   AC_PATH_PROG([XSLTPROC], [xsltproc])
1921   if test "x$XSLTPROC" = "x"; then
1922        AC_MSG_WARN([xsltproc not found - cannot transform XML documents])
1923	have_xsltproc=no
1924   else
1925        have_xsltproc=yes
1926   fi
1927elif test "x$use_xsltproc" = x"yes" ; then
1928   AC_PATH_PROG([XSLTPROC], [xsltproc])
1929   if test "x$XSLTPROC" = "x"; then
1930        AC_MSG_ERROR([--with-xsltproc=yes specified but xsltproc not found in PATH])
1931   fi
1932   have_xsltproc=yes
1933elif test "x$use_xsltproc" = x"no" ; then
1934   if test "x$XSLTPROC" != "x"; then
1935      AC_MSG_WARN([ignoring XSLTPROC environment variable since --with-xsltproc=no was specified])
1936   fi
1937   have_xsltproc=no
1938else
1939   AC_MSG_ERROR([--with-xsltproc expects 'yes' or 'no'])
1940fi
1941
1942AM_CONDITIONAL([HAVE_XSLTPROC], [test "$have_xsltproc" = yes])
1943]) # XORG_WITH_XSLTPROC
1944
1945# XORG_WITH_PERL([MIN-VERSION], [DEFAULT])
1946# ----------------------------------------
1947# Minimum version: 1.15.0
1948#
1949# PERL (Practical Extraction and Report Language) is a language optimized for
1950# scanning arbitrary text files, extracting information from those text files,
1951# and printing reports based on that information.
1952#
1953# When DEFAULT is not specified, --with-perl assumes 'auto'.
1954#
1955# Interface to module:
1956# HAVE_PERL: used in makefiles to conditionally scan text files
1957# PERL:	     returns the path of the perl program found
1958#	     returns the path set by the user in the environment
1959# --with-perl: 'yes' user instructs the module to use perl
1960#	       'no' user instructs the module not to use perl
1961# have_perl: returns yes if perl found in PATH or no
1962#
1963# If the user sets the value of PERL, AC_PATH_PROG skips testing the path.
1964#
1965AC_DEFUN([XORG_WITH_PERL],[
1966AC_ARG_VAR([PERL], [Path to perl command])
1967# Preserves the interface, should it be implemented later
1968m4_ifval([$1], [m4_warn([syntax], [Checking for perl MIN-VERSION is not implemented])])
1969m4_define([_defopt], m4_default([$2], [auto]))
1970AC_ARG_WITH(perl,
1971	AS_HELP_STRING([--with-perl],
1972	   [Use perl for extracting information from files (default: ]_defopt[)]),
1973	   [use_perl=$withval], [use_perl=]_defopt)
1974m4_undefine([_defopt])
1975
1976if test "x$use_perl" = x"auto"; then
1977   AC_PATH_PROG([PERL], [perl])
1978   if test "x$PERL" = "x"; then
1979        AC_MSG_WARN([perl not found - cannot extract information and report])
1980	have_perl=no
1981   else
1982        have_perl=yes
1983   fi
1984elif test "x$use_perl" = x"yes" ; then
1985   AC_PATH_PROG([PERL], [perl])
1986   if test "x$PERL" = "x"; then
1987        AC_MSG_ERROR([--with-perl=yes specified but perl not found in PATH])
1988   fi
1989   have_perl=yes
1990elif test "x$use_perl" = x"no" ; then
1991   if test "x$PERL" != "x"; then
1992      AC_MSG_WARN([ignoring PERL environment variable since --with-perl=no was specified])
1993   fi
1994   have_perl=no
1995else
1996   AC_MSG_ERROR([--with-perl expects 'yes' or 'no'])
1997fi
1998
1999AM_CONDITIONAL([HAVE_PERL], [test "$have_perl" = yes])
2000]) # XORG_WITH_PERL
2001
2002# XORG_WITH_ASCIIDOC([MIN-VERSION], [DEFAULT])
2003# ----------------
2004# Minimum version: 1.5.0
2005# Minimum version for optional DEFAULT argument: 1.11.0
2006#
2007# Documentation tools are not always available on all platforms and sometimes
2008# not at the appropriate level. This macro enables a module to test for the
2009# presence of the tool and obtain it's path in separate variables. Coupled with
2010# the --with-asciidoc option, it allows maximum flexibility in making decisions
2011# as whether or not to use the asciidoc package. When DEFAULT is not specified,
2012# --with-asciidoc assumes 'auto'.
2013#
2014# Interface to module:
2015# HAVE_ASCIIDOC: used in makefiles to conditionally generate documentation
2016# ASCIIDOC:	 returns the path of the asciidoc program found
2017#		 returns the path set by the user in the environment
2018# --with-asciidoc: 'yes' user instructs the module to use asciidoc
2019#		  'no' user instructs the module not to use asciidoc
2020#
2021# If the user sets the value of ASCIIDOC, AC_PATH_PROG skips testing the path.
2022#
2023AC_DEFUN([XORG_WITH_ASCIIDOC],[
2024AC_ARG_VAR([ASCIIDOC], [Path to asciidoc command])
2025m4_define([_defopt], m4_default([$2], [auto]))
2026AC_ARG_WITH(asciidoc,
2027	AS_HELP_STRING([--with-asciidoc],
2028	   [Use asciidoc to regenerate documentation (default: ]_defopt[)]),
2029	   [use_asciidoc=$withval], [use_asciidoc=]_defopt)
2030m4_undefine([_defopt])
2031
2032if test "x$use_asciidoc" = x"auto"; then
2033   AC_PATH_PROG([ASCIIDOC], [asciidoc])
2034   if test "x$ASCIIDOC" = "x"; then
2035        AC_MSG_WARN([asciidoc not found - documentation targets will be skipped])
2036	have_asciidoc=no
2037   else
2038        have_asciidoc=yes
2039   fi
2040elif test "x$use_asciidoc" = x"yes" ; then
2041   AC_PATH_PROG([ASCIIDOC], [asciidoc])
2042   if test "x$ASCIIDOC" = "x"; then
2043        AC_MSG_ERROR([--with-asciidoc=yes specified but asciidoc not found in PATH])
2044   fi
2045   have_asciidoc=yes
2046elif test "x$use_asciidoc" = x"no" ; then
2047   if test "x$ASCIIDOC" != "x"; then
2048      AC_MSG_WARN([ignoring ASCIIDOC environment variable since --with-asciidoc=no was specified])
2049   fi
2050   have_asciidoc=no
2051else
2052   AC_MSG_ERROR([--with-asciidoc expects 'yes' or 'no'])
2053fi
2054m4_ifval([$1],
2055[if test "$have_asciidoc" = yes; then
2056    # scrape the asciidoc version
2057    AC_MSG_CHECKING([the asciidoc version])
2058    asciidoc_version=`$ASCIIDOC --version 2>/dev/null | cut -d' ' -f2`
2059    AC_MSG_RESULT([$asciidoc_version])
2060    AS_VERSION_COMPARE([$asciidoc_version], [$1],
2061        [if test "x$use_asciidoc" = xauto; then
2062            AC_MSG_WARN([asciidoc version $asciidoc_version found, but $1 needed])
2063            have_asciidoc=no
2064        else
2065            AC_MSG_ERROR([asciidoc version $asciidoc_version found, but $1 needed])
2066        fi])
2067fi])
2068AM_CONDITIONAL([HAVE_ASCIIDOC], [test "$have_asciidoc" = yes])
2069]) # XORG_WITH_ASCIIDOC
2070
2071# XORG_WITH_DOXYGEN([MIN-VERSION], [DEFAULT])
2072# -------------------------------------------
2073# Minimum version: 1.5.0
2074# Minimum version for optional DEFAULT argument: 1.11.0
2075# Minimum version for optional DOT checking: 1.18.0
2076#
2077# Documentation tools are not always available on all platforms and sometimes
2078# not at the appropriate level. This macro enables a module to test for the
2079# presence of the tool and obtain it's path in separate variables. Coupled with
2080# the --with-doxygen option, it allows maximum flexibility in making decisions
2081# as whether or not to use the doxygen package. When DEFAULT is not specified,
2082# --with-doxygen assumes 'auto'.
2083#
2084# Interface to module:
2085# HAVE_DOXYGEN: used in makefiles to conditionally generate documentation
2086# DOXYGEN:	 returns the path of the doxygen program found
2087#		 returns the path set by the user in the environment
2088# --with-doxygen: 'yes' user instructs the module to use doxygen
2089#		  'no' user instructs the module not to use doxygen
2090#
2091# If the user sets the value of DOXYGEN, AC_PATH_PROG skips testing the path.
2092#
2093AC_DEFUN([XORG_WITH_DOXYGEN],[
2094AC_ARG_VAR([DOXYGEN], [Path to doxygen command])
2095AC_ARG_VAR([DOT], [Path to the dot graphics utility])
2096m4_define([_defopt], m4_default([$2], [auto]))
2097AC_ARG_WITH(doxygen,
2098	AS_HELP_STRING([--with-doxygen],
2099	   [Use doxygen to regenerate documentation (default: ]_defopt[)]),
2100	   [use_doxygen=$withval], [use_doxygen=]_defopt)
2101m4_undefine([_defopt])
2102
2103if test "x$use_doxygen" = x"auto"; then
2104   AC_PATH_PROG([DOXYGEN], [doxygen])
2105   if test "x$DOXYGEN" = "x"; then
2106        AC_MSG_WARN([doxygen not found - documentation targets will be skipped])
2107	have_doxygen=no
2108   else
2109        have_doxygen=yes
2110   fi
2111elif test "x$use_doxygen" = x"yes" ; then
2112   AC_PATH_PROG([DOXYGEN], [doxygen])
2113   if test "x$DOXYGEN" = "x"; then
2114        AC_MSG_ERROR([--with-doxygen=yes specified but doxygen not found in PATH])
2115   fi
2116   have_doxygen=yes
2117elif test "x$use_doxygen" = x"no" ; then
2118   if test "x$DOXYGEN" != "x"; then
2119      AC_MSG_WARN([ignoring DOXYGEN environment variable since --with-doxygen=no was specified])
2120   fi
2121   have_doxygen=no
2122else
2123   AC_MSG_ERROR([--with-doxygen expects 'yes' or 'no'])
2124fi
2125m4_ifval([$1],
2126[if test "$have_doxygen" = yes; then
2127    # scrape the doxygen version
2128    AC_MSG_CHECKING([the doxygen version])
2129    doxygen_version=`$DOXYGEN --version 2>/dev/null`
2130    AC_MSG_RESULT([$doxygen_version])
2131    AS_VERSION_COMPARE([$doxygen_version], [$1],
2132        [if test "x$use_doxygen" = xauto; then
2133            AC_MSG_WARN([doxygen version $doxygen_version found, but $1 needed])
2134            have_doxygen=no
2135        else
2136            AC_MSG_ERROR([doxygen version $doxygen_version found, but $1 needed])
2137        fi])
2138fi])
2139
2140dnl Check for DOT if we have doxygen. The caller decides if it is mandatory
2141dnl HAVE_DOT is a variable that can be used in your doxygen.in config file:
2142dnl 	HAVE_DOT = @HAVE_DOT@
2143HAVE_DOT=no
2144if test "x$have_doxygen" = "xyes"; then
2145  AC_PATH_PROG([DOT], [dot])
2146    if test "x$DOT" != "x"; then
2147      HAVE_DOT=yes
2148    fi
2149fi
2150
2151AC_SUBST([HAVE_DOT])
2152AM_CONDITIONAL([HAVE_DOT], [test "$HAVE_DOT" = "yes"])
2153AM_CONDITIONAL([HAVE_DOXYGEN], [test "$have_doxygen" = yes])
2154]) # XORG_WITH_DOXYGEN
2155
2156# XORG_WITH_GROFF([DEFAULT])
2157# ----------------
2158# Minimum version: 1.6.0
2159# Minimum version for optional DEFAULT argument: 1.11.0
2160#
2161# Documentation tools are not always available on all platforms and sometimes
2162# not at the appropriate level. This macro enables a module to test for the
2163# presence of the tool and obtain it's path in separate variables. Coupled with
2164# the --with-groff option, it allows maximum flexibility in making decisions
2165# as whether or not to use the groff package. When DEFAULT is not specified,
2166# --with-groff assumes 'auto'.
2167#
2168# Interface to module:
2169# HAVE_GROFF:	 used in makefiles to conditionally generate documentation
2170# HAVE_GROFF_MM: the memorandum macros (-mm) package
2171# HAVE_GROFF_MS: the -ms macros package
2172# GROFF:	 returns the path of the groff program found
2173#		 returns the path set by the user in the environment
2174# --with-groff:	 'yes' user instructs the module to use groff
2175#		 'no' user instructs the module not to use groff
2176#
2177# Added in version 1.9.0:
2178# HAVE_GROFF_HTML: groff has dependencies to output HTML format:
2179#		   pnmcut pnmcrop pnmtopng pnmtops from the netpbm package.
2180#		   psselect from the psutils package.
2181#		   the ghostcript package. Refer to the grohtml man pages
2182#
2183# If the user sets the value of GROFF, AC_PATH_PROG skips testing the path.
2184#
2185# OS and distros often splits groff in a basic and full package, the former
2186# having the groff program and the later having devices, fonts and macros
2187# Checking for the groff executable is not enough.
2188#
2189# If macros are missing, we cannot assume that groff is useless, so we don't
2190# unset HAVE_GROFF or GROFF env variables.
2191# HAVE_GROFF_?? can never be true while HAVE_GROFF is false.
2192#
2193AC_DEFUN([XORG_WITH_GROFF],[
2194AC_ARG_VAR([GROFF], [Path to groff command])
2195m4_define([_defopt], m4_default([$1], [auto]))
2196AC_ARG_WITH(groff,
2197	AS_HELP_STRING([--with-groff],
2198	   [Use groff to regenerate documentation (default: ]_defopt[)]),
2199	   [use_groff=$withval], [use_groff=]_defopt)
2200m4_undefine([_defopt])
2201
2202if test "x$use_groff" = x"auto"; then
2203   AC_PATH_PROG([GROFF], [groff])
2204   if test "x$GROFF" = "x"; then
2205        AC_MSG_WARN([groff not found - documentation targets will be skipped])
2206	have_groff=no
2207   else
2208        have_groff=yes
2209   fi
2210elif test "x$use_groff" = x"yes" ; then
2211   AC_PATH_PROG([GROFF], [groff])
2212   if test "x$GROFF" = "x"; then
2213        AC_MSG_ERROR([--with-groff=yes specified but groff not found in PATH])
2214   fi
2215   have_groff=yes
2216elif test "x$use_groff" = x"no" ; then
2217   if test "x$GROFF" != "x"; then
2218      AC_MSG_WARN([ignoring GROFF environment variable since --with-groff=no was specified])
2219   fi
2220   have_groff=no
2221else
2222   AC_MSG_ERROR([--with-groff expects 'yes' or 'no'])
2223fi
2224
2225# We have groff, test for the presence of the macro packages
2226if test "x$have_groff" = x"yes"; then
2227    AC_MSG_CHECKING([for ${GROFF} -ms macros])
2228    if ${GROFF} -ms -I. /dev/null >/dev/null 2>&1 ; then
2229        groff_ms_works=yes
2230    else
2231        groff_ms_works=no
2232    fi
2233    AC_MSG_RESULT([$groff_ms_works])
2234    AC_MSG_CHECKING([for ${GROFF} -mm macros])
2235    if ${GROFF} -mm -I. /dev/null >/dev/null 2>&1 ; then
2236        groff_mm_works=yes
2237    else
2238        groff_mm_works=no
2239    fi
2240    AC_MSG_RESULT([$groff_mm_works])
2241fi
2242
2243# We have groff, test for HTML dependencies, one command per package
2244if test "x$have_groff" = x"yes"; then
2245   AC_PATH_PROGS(GS_PATH, [gs gswin32c])
2246   AC_PATH_PROG(PNMTOPNG_PATH, [pnmtopng])
2247   AC_PATH_PROG(PSSELECT_PATH, [psselect])
2248   if test "x$GS_PATH" != "x" -a "x$PNMTOPNG_PATH" != "x" -a "x$PSSELECT_PATH" != "x"; then
2249      have_groff_html=yes
2250   else
2251      have_groff_html=no
2252      AC_MSG_WARN([grohtml dependencies not found - HTML Documentation skipped. Refer to grohtml man pages])
2253   fi
2254fi
2255
2256# Set Automake conditionals for Makefiles
2257AM_CONDITIONAL([HAVE_GROFF], [test "$have_groff" = yes])
2258AM_CONDITIONAL([HAVE_GROFF_MS], [test "$groff_ms_works" = yes])
2259AM_CONDITIONAL([HAVE_GROFF_MM], [test "$groff_mm_works" = yes])
2260AM_CONDITIONAL([HAVE_GROFF_HTML], [test "$have_groff_html" = yes])
2261]) # XORG_WITH_GROFF
2262
2263# XORG_WITH_FOP([MIN-VERSION], [DEFAULT])
2264# ---------------------------------------
2265# Minimum version: 1.6.0
2266# Minimum version for optional DEFAULT argument: 1.11.0
2267# Minimum version for optional MIN-VERSION argument: 1.15.0
2268#
2269# Documentation tools are not always available on all platforms and sometimes
2270# not at the appropriate level. This macro enables a module to test for the
2271# presence of the tool and obtain it's path in separate variables. Coupled with
2272# the --with-fop option, it allows maximum flexibility in making decisions
2273# as whether or not to use the fop package. When DEFAULT is not specified,
2274# --with-fop assumes 'auto'.
2275#
2276# Interface to module:
2277# HAVE_FOP: 	used in makefiles to conditionally generate documentation
2278# FOP:	 	returns the path of the fop program found
2279#		returns the path set by the user in the environment
2280# --with-fop: 	'yes' user instructs the module to use fop
2281#		'no' user instructs the module not to use fop
2282#
2283# If the user sets the value of FOP, AC_PATH_PROG skips testing the path.
2284#
2285AC_DEFUN([XORG_WITH_FOP],[
2286AC_ARG_VAR([FOP], [Path to fop command])
2287m4_define([_defopt], m4_default([$2], [auto]))
2288AC_ARG_WITH(fop,
2289	AS_HELP_STRING([--with-fop],
2290	   [Use fop to regenerate documentation (default: ]_defopt[)]),
2291	   [use_fop=$withval], [use_fop=]_defopt)
2292m4_undefine([_defopt])
2293
2294if test "x$use_fop" = x"auto"; then
2295   AC_PATH_PROG([FOP], [fop])
2296   if test "x$FOP" = "x"; then
2297        AC_MSG_WARN([fop not found - documentation targets will be skipped])
2298	have_fop=no
2299   else
2300        have_fop=yes
2301   fi
2302elif test "x$use_fop" = x"yes" ; then
2303   AC_PATH_PROG([FOP], [fop])
2304   if test "x$FOP" = "x"; then
2305        AC_MSG_ERROR([--with-fop=yes specified but fop not found in PATH])
2306   fi
2307   have_fop=yes
2308elif test "x$use_fop" = x"no" ; then
2309   if test "x$FOP" != "x"; then
2310      AC_MSG_WARN([ignoring FOP environment variable since --with-fop=no was specified])
2311   fi
2312   have_fop=no
2313else
2314   AC_MSG_ERROR([--with-fop expects 'yes' or 'no'])
2315fi
2316
2317# Test for a minimum version of fop, if provided.
2318m4_ifval([$1],
2319[if test "$have_fop" = yes; then
2320    # scrape the fop version
2321    AC_MSG_CHECKING([for fop minimum version])
2322    fop_version=`$FOP -version 2>/dev/null | cut -d' ' -f3`
2323    AC_MSG_RESULT([$fop_version])
2324    AS_VERSION_COMPARE([$fop_version], [$1],
2325        [if test "x$use_fop" = xauto; then
2326            AC_MSG_WARN([fop version $fop_version found, but $1 needed])
2327            have_fop=no
2328        else
2329            AC_MSG_ERROR([fop version $fop_version found, but $1 needed])
2330        fi])
2331fi])
2332AM_CONDITIONAL([HAVE_FOP], [test "$have_fop" = yes])
2333]) # XORG_WITH_FOP
2334
2335# XORG_WITH_M4([MIN-VERSION])
2336# ---------------------------
2337# Minimum version: 1.19.0
2338#
2339# This macro attempts to locate an m4 macro processor which supports
2340# -I option and is only useful for modules relying on M4 in order to
2341# expand macros in source code files.
2342#
2343# Interface to module:
2344# M4:	 	returns the path of the m4 program found
2345#		returns the path set by the user in the environment
2346#
2347AC_DEFUN([XORG_WITH_M4], [
2348AC_CACHE_CHECK([for m4 that supports -I option], [ac_cv_path_M4],
2349   [AC_PATH_PROGS_FEATURE_CHECK([M4], [m4 gm4],
2350       [[$ac_path_M4 -I. /dev/null > /dev/null 2>&1 && \
2351         ac_cv_path_M4=$ac_path_M4 ac_path_M4_found=:]],
2352   [AC_MSG_ERROR([could not find m4 that supports -I option])],
2353   [$PATH:/usr/gnu/bin])])
2354
2355AC_SUBST([M4], [$ac_cv_path_M4])
2356]) # XORG_WITH_M4
2357
2358# XORG_WITH_PS2PDF([DEFAULT])
2359# ----------------
2360# Minimum version: 1.6.0
2361# Minimum version for optional DEFAULT argument: 1.11.0
2362#
2363# Documentation tools are not always available on all platforms and sometimes
2364# not at the appropriate level. This macro enables a module to test for the
2365# presence of the tool and obtain it's path in separate variables. Coupled with
2366# the --with-ps2pdf option, it allows maximum flexibility in making decisions
2367# as whether or not to use the ps2pdf package. When DEFAULT is not specified,
2368# --with-ps2pdf assumes 'auto'.
2369#
2370# Interface to module:
2371# HAVE_PS2PDF: 	used in makefiles to conditionally generate documentation
2372# PS2PDF:	returns the path of the ps2pdf program found
2373#		returns the path set by the user in the environment
2374# --with-ps2pdf: 'yes' user instructs the module to use ps2pdf
2375#		 'no' user instructs the module not to use ps2pdf
2376#
2377# If the user sets the value of PS2PDF, AC_PATH_PROG skips testing the path.
2378#
2379AC_DEFUN([XORG_WITH_PS2PDF],[
2380AC_ARG_VAR([PS2PDF], [Path to ps2pdf command])
2381m4_define([_defopt], m4_default([$1], [auto]))
2382AC_ARG_WITH(ps2pdf,
2383	AS_HELP_STRING([--with-ps2pdf],
2384	   [Use ps2pdf to regenerate documentation (default: ]_defopt[)]),
2385	   [use_ps2pdf=$withval], [use_ps2pdf=]_defopt)
2386m4_undefine([_defopt])
2387
2388if test "x$use_ps2pdf" = x"auto"; then
2389   AC_PATH_PROG([PS2PDF], [ps2pdf])
2390   if test "x$PS2PDF" = "x"; then
2391        AC_MSG_WARN([ps2pdf not found - documentation targets will be skipped])
2392	have_ps2pdf=no
2393   else
2394        have_ps2pdf=yes
2395   fi
2396elif test "x$use_ps2pdf" = x"yes" ; then
2397   AC_PATH_PROG([PS2PDF], [ps2pdf])
2398   if test "x$PS2PDF" = "x"; then
2399        AC_MSG_ERROR([--with-ps2pdf=yes specified but ps2pdf not found in PATH])
2400   fi
2401   have_ps2pdf=yes
2402elif test "x$use_ps2pdf" = x"no" ; then
2403   if test "x$PS2PDF" != "x"; then
2404      AC_MSG_WARN([ignoring PS2PDF environment variable since --with-ps2pdf=no was specified])
2405   fi
2406   have_ps2pdf=no
2407else
2408   AC_MSG_ERROR([--with-ps2pdf expects 'yes' or 'no'])
2409fi
2410AM_CONDITIONAL([HAVE_PS2PDF], [test "$have_ps2pdf" = yes])
2411]) # XORG_WITH_PS2PDF
2412
2413# XORG_ENABLE_DOCS (enable_docs=yes)
2414# ----------------
2415# Minimum version: 1.6.0
2416#
2417# Documentation tools are not always available on all platforms and sometimes
2418# not at the appropriate level. This macro enables a builder to skip all
2419# documentation targets except traditional man pages.
2420# Combined with the specific tool checking macros XORG_WITH_*, it provides
2421# maximum flexibility in controlling documentation building.
2422# Refer to:
2423# XORG_WITH_XMLTO         --with-xmlto
2424# XORG_WITH_ASCIIDOC      --with-asciidoc
2425# XORG_WITH_DOXYGEN       --with-doxygen
2426# XORG_WITH_FOP           --with-fop
2427# XORG_WITH_GROFF         --with-groff
2428# XORG_WITH_PS2PDF        --with-ps2pdf
2429#
2430# Interface to module:
2431# ENABLE_DOCS: 	  used in makefiles to conditionally generate documentation
2432# --enable-docs: 'yes' user instructs the module to generate docs
2433#		 'no' user instructs the module not to generate docs
2434# parm1:	specify the default value, yes or no.
2435#
2436AC_DEFUN([XORG_ENABLE_DOCS],[
2437m4_define([docs_default], m4_default([$1], [yes]))
2438AC_ARG_ENABLE(docs,
2439	AS_HELP_STRING([--enable-docs],
2440	   [Enable building the documentation (default: ]docs_default[)]),
2441	   [build_docs=$enableval], [build_docs=]docs_default)
2442m4_undefine([docs_default])
2443AM_CONDITIONAL(ENABLE_DOCS, [test x$build_docs = xyes])
2444AC_MSG_CHECKING([whether to build documentation])
2445AC_MSG_RESULT([$build_docs])
2446]) # XORG_ENABLE_DOCS
2447
2448# XORG_ENABLE_DEVEL_DOCS (enable_devel_docs=yes)
2449# ----------------
2450# Minimum version: 1.6.0
2451#
2452# This macro enables a builder to skip all developer documentation.
2453# Combined with the specific tool checking macros XORG_WITH_*, it provides
2454# maximum flexibility in controlling documentation building.
2455# Refer to:
2456# XORG_WITH_XMLTO         --with-xmlto
2457# XORG_WITH_ASCIIDOC      --with-asciidoc
2458# XORG_WITH_DOXYGEN       --with-doxygen
2459# XORG_WITH_FOP           --with-fop
2460# XORG_WITH_GROFF         --with-groff
2461# XORG_WITH_PS2PDF        --with-ps2pdf
2462#
2463# Interface to module:
2464# ENABLE_DEVEL_DOCS:	used in makefiles to conditionally generate developer docs
2465# --enable-devel-docs:	'yes' user instructs the module to generate developer docs
2466#			'no' user instructs the module not to generate developer docs
2467# parm1:		specify the default value, yes or no.
2468#
2469AC_DEFUN([XORG_ENABLE_DEVEL_DOCS],[
2470m4_define([devel_default], m4_default([$1], [yes]))
2471AC_ARG_ENABLE(devel-docs,
2472	AS_HELP_STRING([--enable-devel-docs],
2473	   [Enable building the developer documentation (default: ]devel_default[)]),
2474	   [build_devel_docs=$enableval], [build_devel_docs=]devel_default)
2475m4_undefine([devel_default])
2476AM_CONDITIONAL(ENABLE_DEVEL_DOCS, [test x$build_devel_docs = xyes])
2477AC_MSG_CHECKING([whether to build developer documentation])
2478AC_MSG_RESULT([$build_devel_docs])
2479]) # XORG_ENABLE_DEVEL_DOCS
2480
2481# XORG_ENABLE_SPECS (enable_specs=yes)
2482# ----------------
2483# Minimum version: 1.6.0
2484#
2485# This macro enables a builder to skip all functional specification targets.
2486# Combined with the specific tool checking macros XORG_WITH_*, it provides
2487# maximum flexibility in controlling documentation building.
2488# Refer to:
2489# XORG_WITH_XMLTO         --with-xmlto
2490# XORG_WITH_ASCIIDOC      --with-asciidoc
2491# XORG_WITH_DOXYGEN       --with-doxygen
2492# XORG_WITH_FOP           --with-fop
2493# XORG_WITH_GROFF         --with-groff
2494# XORG_WITH_PS2PDF        --with-ps2pdf
2495#
2496# Interface to module:
2497# ENABLE_SPECS:		used in makefiles to conditionally generate specs
2498# --enable-specs:	'yes' user instructs the module to generate specs
2499#			'no' user instructs the module not to generate specs
2500# parm1:		specify the default value, yes or no.
2501#
2502AC_DEFUN([XORG_ENABLE_SPECS],[
2503m4_define([spec_default], m4_default([$1], [yes]))
2504AC_ARG_ENABLE(specs,
2505	AS_HELP_STRING([--enable-specs],
2506	   [Enable building the specs (default: ]spec_default[)]),
2507	   [build_specs=$enableval], [build_specs=]spec_default)
2508m4_undefine([spec_default])
2509AM_CONDITIONAL(ENABLE_SPECS, [test x$build_specs = xyes])
2510AC_MSG_CHECKING([whether to build functional specifications])
2511AC_MSG_RESULT([$build_specs])
2512]) # XORG_ENABLE_SPECS
2513
2514# XORG_ENABLE_UNIT_TESTS (enable_unit_tests=auto)
2515# ----------------------------------------------
2516# Minimum version: 1.13.0
2517#
2518# This macro enables a builder to enable/disable unit testing
2519# It makes no assumption about the test cases implementation
2520# Test cases may or may not use Automake "Support for test suites"
2521# They may or may not use the software utility library GLib
2522#
2523# When used in conjunction with XORG_WITH_GLIB, use both AM_CONDITIONAL
2524# ENABLE_UNIT_TESTS and HAVE_GLIB. Not all unit tests may use glib.
2525# The variable enable_unit_tests is used by other macros in this file.
2526#
2527# Interface to module:
2528# ENABLE_UNIT_TESTS:	used in makefiles to conditionally build tests
2529# enable_unit_tests:    used in configure.ac for additional configuration
2530# --enable-unit-tests:	'yes' user instructs the module to build tests
2531#			'no' user instructs the module not to build tests
2532# parm1:		specify the default value, yes or no.
2533#
2534AC_DEFUN([XORG_ENABLE_UNIT_TESTS],[
2535AC_BEFORE([$0], [XORG_WITH_GLIB])
2536AC_BEFORE([$0], [XORG_LD_WRAP])
2537AC_REQUIRE([XORG_MEMORY_CHECK_FLAGS])
2538m4_define([_defopt], m4_default([$1], [auto]))
2539AC_ARG_ENABLE(unit-tests, AS_HELP_STRING([--enable-unit-tests],
2540	[Enable building unit test cases (default: ]_defopt[)]),
2541	[enable_unit_tests=$enableval], [enable_unit_tests=]_defopt)
2542m4_undefine([_defopt])
2543AM_CONDITIONAL(ENABLE_UNIT_TESTS, [test "x$enable_unit_tests" != xno])
2544AC_MSG_CHECKING([whether to build unit test cases])
2545AC_MSG_RESULT([$enable_unit_tests])
2546]) # XORG_ENABLE_UNIT_TESTS
2547
2548# XORG_ENABLE_INTEGRATION_TESTS (enable_unit_tests=auto)
2549# ------------------------------------------------------
2550# Minimum version: 1.17.0
2551#
2552# This macro enables a builder to enable/disable integration testing
2553# It makes no assumption about the test cases' implementation
2554# Test cases may or may not use Automake "Support for test suites"
2555#
2556# Please see XORG_ENABLE_UNIT_TESTS for unit test support. Unit test support
2557# usually requires less dependencies and may be built and run under less
2558# stringent environments than integration tests.
2559#
2560# Interface to module:
2561# ENABLE_INTEGRATION_TESTS:   used in makefiles to conditionally build tests
2562# enable_integration_tests:   used in configure.ac for additional configuration
2563# --enable-integration-tests: 'yes' user instructs the module to build tests
2564#                             'no' user instructs the module not to build tests
2565# parm1:                      specify the default value, yes or no.
2566#
2567AC_DEFUN([XORG_ENABLE_INTEGRATION_TESTS],[
2568AC_REQUIRE([XORG_MEMORY_CHECK_FLAGS])
2569m4_define([_defopt], m4_default([$1], [auto]))
2570AC_ARG_ENABLE(integration-tests, AS_HELP_STRING([--enable-integration-tests],
2571	[Enable building integration test cases (default: ]_defopt[)]),
2572	[enable_integration_tests=$enableval],
2573	[enable_integration_tests=]_defopt)
2574m4_undefine([_defopt])
2575AM_CONDITIONAL([ENABLE_INTEGRATION_TESTS],
2576	[test "x$enable_integration_tests" != xno])
2577AC_MSG_CHECKING([whether to build unit test cases])
2578AC_MSG_RESULT([$enable_integration_tests])
2579]) # XORG_ENABLE_INTEGRATION_TESTS
2580
2581# XORG_WITH_GLIB([MIN-VERSION], [DEFAULT])
2582# ----------------------------------------
2583# Minimum version: 1.13.0
2584#
2585# GLib is a library which provides advanced data structures and functions.
2586# This macro enables a module to test for the presence of Glib.
2587#
2588# When used with ENABLE_UNIT_TESTS, it is assumed GLib is used for unit testing.
2589# Otherwise the value of $enable_unit_tests is blank.
2590#
2591# Please see XORG_ENABLE_INTEGRATION_TESTS for integration test support. Unit
2592# test support usually requires less dependencies and may be built and run under
2593# less stringent environments than integration tests.
2594#
2595# Interface to module:
2596# HAVE_GLIB: used in makefiles to conditionally build targets
2597# with_glib: used in configure.ac to know if GLib has been found
2598# --with-glib:	'yes' user instructs the module to use glib
2599#		'no' user instructs the module not to use glib
2600#
2601AC_DEFUN([XORG_WITH_GLIB],[
2602AC_REQUIRE([PKG_PROG_PKG_CONFIG])
2603m4_define([_defopt], m4_default([$2], [auto]))
2604AC_ARG_WITH(glib, AS_HELP_STRING([--with-glib],
2605	[Use GLib library for unit testing (default: ]_defopt[)]),
2606	[with_glib=$withval], [with_glib=]_defopt)
2607m4_undefine([_defopt])
2608
2609have_glib=no
2610# Do not probe GLib if user explicitly disabled unit testing
2611if test "x$enable_unit_tests" != x"no"; then
2612  # Do not probe GLib if user explicitly disabled it
2613  if test "x$with_glib" != x"no"; then
2614    m4_ifval(
2615      [$1],
2616      [PKG_CHECK_MODULES([GLIB], [glib-2.0 >= $1], [have_glib=yes], [have_glib=no])],
2617      [PKG_CHECK_MODULES([GLIB], [glib-2.0], [have_glib=yes], [have_glib=no])]
2618    )
2619  fi
2620fi
2621
2622# Not having GLib when unit testing has been explicitly requested is an error
2623if test "x$enable_unit_tests" = x"yes"; then
2624  if test "x$have_glib" = x"no"; then
2625    AC_MSG_ERROR([--enable-unit-tests=yes specified but glib-2.0 not found])
2626  fi
2627fi
2628
2629# Having unit testing disabled when GLib has been explicitly requested is an error
2630if test "x$enable_unit_tests" = x"no"; then
2631  if test "x$with_glib" = x"yes"; then
2632    AC_MSG_ERROR([--enable-unit-tests=yes specified but glib-2.0 not found])
2633  fi
2634fi
2635
2636# Not having GLib when it has been explicitly requested is an error
2637if test "x$with_glib" = x"yes"; then
2638  if test "x$have_glib" = x"no"; then
2639    AC_MSG_ERROR([--with-glib=yes specified but glib-2.0 not found])
2640  fi
2641fi
2642
2643AM_CONDITIONAL([HAVE_GLIB], [test "$have_glib" = yes])
2644]) # XORG_WITH_GLIB
2645
2646# XORG_LD_WRAP([required|optional])
2647# ---------------------------------
2648# Minimum version: 1.13.0
2649#
2650# Check if linker supports -wrap, passed via compiler flags
2651#
2652# When used with ENABLE_UNIT_TESTS, it is assumed -wrap is used for unit testing.
2653# Otherwise the value of $enable_unit_tests is blank.
2654#
2655# Argument added in 1.16.0 - default is "required", to match existing behavior
2656# of returning an error if enable_unit_tests is yes, and ld -wrap is not
2657# available, an argument of "optional" allows use when some unit tests require
2658# ld -wrap and others do not.
2659#
2660AC_DEFUN([XORG_LD_WRAP],[
2661XORG_CHECK_LINKER_FLAGS([-Wl,-wrap,exit],[have_ld_wrap=yes],[have_ld_wrap=no],
2662    [AC_LANG_PROGRAM([#include <stdlib.h>
2663                      void __wrap_exit(int status) { return; }],
2664                     [exit(0);])])
2665# Not having ld wrap when unit testing has been explicitly requested is an error
2666if test "x$enable_unit_tests" = x"yes" -a "x$1" != "xoptional"; then
2667  if test "x$have_ld_wrap" = x"no"; then
2668    AC_MSG_ERROR([--enable-unit-tests=yes specified but ld -wrap support is not available])
2669  fi
2670fi
2671AM_CONDITIONAL([HAVE_LD_WRAP], [test "$have_ld_wrap" = yes])
2672#
2673]) # XORG_LD_WRAP
2674
2675# XORG_CHECK_LINKER_FLAGS
2676# -----------------------
2677# SYNOPSIS
2678#
2679#   XORG_CHECK_LINKER_FLAGS(FLAGS, [ACTION-SUCCESS], [ACTION-FAILURE], [PROGRAM-SOURCE])
2680#
2681# DESCRIPTION
2682#
2683#   Check whether the given linker FLAGS work with the current language's
2684#   linker, or whether they give an error.
2685#
2686#   ACTION-SUCCESS/ACTION-FAILURE are shell commands to execute on
2687#   success/failure.
2688#
2689#   PROGRAM-SOURCE is the program source to link with, if needed
2690#
2691#   NOTE: Based on AX_CHECK_COMPILER_FLAGS.
2692#
2693# LICENSE
2694#
2695#   Copyright (c) 2009 Mike Frysinger <vapier@gentoo.org>
2696#   Copyright (c) 2009 Steven G. Johnson <stevenj@alum.mit.edu>
2697#   Copyright (c) 2009 Matteo Frigo
2698#
2699#   This program is free software: you can redistribute it and/or modify it
2700#   under the terms of the GNU General Public License as published by the
2701#   Free Software Foundation, either version 3 of the License, or (at your
2702#   option) any later version.
2703#
2704#   This program is distributed in the hope that it will be useful, but
2705#   WITHOUT ANY WARRANTY; without even the implied warranty of
2706#   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General
2707#   Public License for more details.
2708#
2709#   You should have received a copy of the GNU General Public License along
2710#   with this program. If not, see <http://www.gnu.org/licenses/>.
2711#
2712#   As a special exception, the respective Autoconf Macro's copyright owner
2713#   gives unlimited permission to copy, distribute and modify the configure
2714#   scripts that are the output of Autoconf when processing the Macro. You
2715#   need not follow the terms of the GNU General Public License when using
2716#   or distributing such scripts, even though portions of the text of the
2717#   Macro appear in them. The GNU General Public License (GPL) does govern
2718#   all other use of the material that constitutes the Autoconf Macro.
2719#
2720#   This special exception to the GPL applies to versions of the Autoconf
2721#   Macro released by the Autoconf Archive. When you make and distribute a
2722#   modified version of the Autoconf Macro, you may extend this special
2723#   exception to the GPL to apply to your modified version as well.#
2724AC_DEFUN([XORG_CHECK_LINKER_FLAGS],
2725[AC_MSG_CHECKING([whether the linker accepts $1])
2726dnl Some hackery here since AC_CACHE_VAL can't handle a non-literal varname:
2727AS_LITERAL_IF([$1],
2728  [AC_CACHE_VAL(AS_TR_SH(xorg_cv_linker_flags_[$1]), [
2729      ax_save_FLAGS=$LDFLAGS
2730      LDFLAGS="$1"
2731      AC_LINK_IFELSE([m4_default([$4],[AC_LANG_PROGRAM()])],
2732        AS_TR_SH(xorg_cv_linker_flags_[$1])=yes,
2733        AS_TR_SH(xorg_cv_linker_flags_[$1])=no)
2734      LDFLAGS=$ax_save_FLAGS])],
2735  [ax_save_FLAGS=$LDFLAGS
2736   LDFLAGS="$1"
2737   AC_LINK_IFELSE([AC_LANG_PROGRAM()],
2738     eval AS_TR_SH(xorg_cv_linker_flags_[$1])=yes,
2739     eval AS_TR_SH(xorg_cv_linker_flags_[$1])=no)
2740   LDFLAGS=$ax_save_FLAGS])
2741eval xorg_check_linker_flags=$AS_TR_SH(xorg_cv_linker_flags_[$1])
2742AC_MSG_RESULT($xorg_check_linker_flags)
2743if test "x$xorg_check_linker_flags" = xyes; then
2744	m4_default([$2], :)
2745else
2746	m4_default([$3], :)
2747fi
2748]) # XORG_CHECK_LINKER_FLAGS
2749
2750# XORG_MEMORY_CHECK_FLAGS
2751# -----------------------
2752# Minimum version: 1.16.0
2753#
2754# This macro attempts to find appropriate memory checking functionality
2755# for various platforms which unit testing code may use to catch various
2756# forms of memory allocation and access errors in testing.
2757#
2758# Interface to module:
2759# XORG_MALLOC_DEBUG_ENV - environment variables to set to enable debugging
2760#                         Usually added to TESTS_ENVIRONMENT in Makefile.am
2761#
2762# If the user sets the value of XORG_MALLOC_DEBUG_ENV, it is used verbatim.
2763#
2764AC_DEFUN([XORG_MEMORY_CHECK_FLAGS],[
2765
2766AC_REQUIRE([AC_CANONICAL_HOST])
2767AC_ARG_VAR([XORG_MALLOC_DEBUG_ENV],
2768           [Environment variables to enable memory checking in tests])
2769
2770# Check for different types of support on different platforms
2771case $host_os in
2772    solaris*)
2773        AC_CHECK_LIB([umem], [umem_alloc],
2774            [malloc_debug_env='LD_PRELOAD=libumem.so UMEM_DEBUG=default'])
2775        ;;
2776    *-gnu*) # GNU libc - Value is used as a single byte bit pattern,
2777        # both directly and inverted, so should not be 0 or 255.
2778        malloc_debug_env='MALLOC_PERTURB_=15'
2779        ;;
2780    darwin*)
2781        malloc_debug_env='MallocPreScribble=1 MallocScribble=1 DYLD_INSERT_LIBRARIES=/usr/lib/libgmalloc.dylib'
2782        ;;
2783    *bsd*)
2784        malloc_debug_env='MallocPreScribble=1 MallocScribble=1'
2785        ;;
2786esac
2787
2788# User supplied flags override default flags
2789if test "x$XORG_MALLOC_DEBUG_ENV" != "x"; then
2790    malloc_debug_env="$XORG_MALLOC_DEBUG_ENV"
2791fi
2792
2793AC_SUBST([XORG_MALLOC_DEBUG_ENV],[$malloc_debug_env])
2794]) # XORG_WITH_LINT
2795
2796# XORG_CHECK_MALLOC_ZERO
2797# ----------------------
2798# Minimum version: 1.0.0
2799#
2800# Defines {MALLOC,XMALLOC,XTMALLOC}_ZERO_CFLAGS appropriately if
2801# malloc(0) returns NULL.  Packages should add one of these cflags to
2802# their AM_CFLAGS (or other appropriate *_CFLAGS) to use them.
2803AC_DEFUN([XORG_CHECK_MALLOC_ZERO],[
2804AC_ARG_ENABLE(malloc0returnsnull,
2805	AS_HELP_STRING([--enable-malloc0returnsnull],
2806		       [malloc(0) returns NULL (default: auto)]),
2807	[MALLOC_ZERO_RETURNS_NULL=$enableval],
2808	[MALLOC_ZERO_RETURNS_NULL=auto])
2809
2810AC_MSG_CHECKING([whether malloc(0) returns NULL])
2811if test "x$MALLOC_ZERO_RETURNS_NULL" = xauto; then
2812AC_CACHE_VAL([xorg_cv_malloc0_returns_null],
2813	[AC_RUN_IFELSE([AC_LANG_PROGRAM([
2814#include <stdlib.h>
2815],[
2816    char *m0, *r0, *c0, *p;
2817    m0 = malloc(0);
2818    p = malloc(10);
2819    r0 = realloc(p,0);
2820    c0 = calloc(0,10);
2821    exit((m0 == 0 || r0 == 0 || c0 == 0) ? 0 : 1);
2822])],
2823		[xorg_cv_malloc0_returns_null=yes],
2824		[xorg_cv_malloc0_returns_null=no])])
2825MALLOC_ZERO_RETURNS_NULL=$xorg_cv_malloc0_returns_null
2826fi
2827AC_MSG_RESULT([$MALLOC_ZERO_RETURNS_NULL])
2828
2829if test "x$MALLOC_ZERO_RETURNS_NULL" = xyes; then
2830	MALLOC_ZERO_CFLAGS="-DMALLOC_0_RETURNS_NULL"
2831	XMALLOC_ZERO_CFLAGS=$MALLOC_ZERO_CFLAGS
2832	XTMALLOC_ZERO_CFLAGS="$MALLOC_ZERO_CFLAGS -DXTMALLOC_BC"
2833else
2834	MALLOC_ZERO_CFLAGS=""
2835	XMALLOC_ZERO_CFLAGS=""
2836	XTMALLOC_ZERO_CFLAGS=""
2837fi
2838
2839AC_SUBST([MALLOC_ZERO_CFLAGS])
2840AC_SUBST([XMALLOC_ZERO_CFLAGS])
2841AC_SUBST([XTMALLOC_ZERO_CFLAGS])
2842]) # XORG_CHECK_MALLOC_ZERO
2843
2844# XORG_WITH_LINT()
2845# ----------------
2846# Minimum version: 1.1.0
2847#
2848# This macro enables the use of a tool that flags some suspicious and
2849# non-portable constructs (likely to be bugs) in C language source code.
2850# It will attempt to locate the tool and use appropriate options.
2851# There are various lint type tools on different platforms.
2852#
2853# Interface to module:
2854# LINT:		returns the path to the tool found on the platform
2855#		or the value set to LINT on the configure cmd line
2856#		also an Automake conditional
2857# LINT_FLAGS:	an Automake variable with appropriate flags
2858#
2859# --with-lint:	'yes' user instructs the module to use lint
2860#		'no' user instructs the module not to use lint (default)
2861#
2862# If the user sets the value of LINT, AC_PATH_PROG skips testing the path.
2863# If the user sets the value of LINT_FLAGS, they are used verbatim.
2864#
2865AC_DEFUN([XORG_WITH_LINT],[
2866
2867AC_ARG_VAR([LINT], [Path to a lint-style command])
2868AC_ARG_VAR([LINT_FLAGS], [Flags for the lint-style command])
2869AC_ARG_WITH(lint, [AS_HELP_STRING([--with-lint],
2870		[Use a lint-style source code checker (default: disabled)])],
2871		[use_lint=$withval], [use_lint=no])
2872
2873# Obtain platform specific info like program name and options
2874# The lint program on FreeBSD and NetBSD is different from the one on Solaris
2875case $host_os in
2876  *linux* | *openbsd* | kfreebsd*-gnu | darwin* | cygwin*)
2877	lint_name=splint
2878	lint_options="-badflag"
2879	;;
2880  *freebsd* | *netbsd*)
2881	lint_name=lint
2882	lint_options="-u -b"
2883	;;
2884  *solaris*)
2885	lint_name=lint
2886	lint_options="-u -b -h -erroff=E_INDISTING_FROM_TRUNC2"
2887	;;
2888esac
2889
2890# Test for the presence of the program (either guessed by the code or spelled out by the user)
2891if test "x$use_lint" = x"yes" ; then
2892   AC_PATH_PROG([LINT], [$lint_name])
2893   if test "x$LINT" = "x"; then
2894        AC_MSG_ERROR([--with-lint=yes specified but lint-style tool not found in PATH])
2895   fi
2896elif test "x$use_lint" = x"no" ; then
2897   if test "x$LINT" != "x"; then
2898      AC_MSG_WARN([ignoring LINT environment variable since --with-lint=no was specified])
2899   fi
2900else
2901   AC_MSG_ERROR([--with-lint expects 'yes' or 'no'. Use LINT variable to specify path.])
2902fi
2903
2904# User supplied flags override default flags
2905if test "x$LINT_FLAGS" != "x"; then
2906   lint_options=$LINT_FLAGS
2907fi
2908
2909AC_SUBST([LINT_FLAGS],[$lint_options])
2910AM_CONDITIONAL(LINT, [test "x$LINT" != x])
2911
2912]) # XORG_WITH_LINT
2913
2914# XORG_LINT_LIBRARY(LIBNAME)
2915# --------------------------
2916# Minimum version: 1.1.0
2917#
2918# Sets up flags for building lint libraries for checking programs that call
2919# functions in the library.
2920#
2921# Interface to module:
2922# LINTLIB		- Automake variable with the name of lint library file to make
2923# MAKE_LINT_LIB		- Automake conditional
2924#
2925# --enable-lint-library:  - 'yes' user instructs the module to created a lint library
2926#			  - 'no' user instructs the module not to create a lint library (default)
2927
2928AC_DEFUN([XORG_LINT_LIBRARY],[
2929AC_REQUIRE([XORG_WITH_LINT])
2930AC_ARG_ENABLE(lint-library, [AS_HELP_STRING([--enable-lint-library],
2931	[Create lint library (default: disabled)])],
2932	[make_lint_lib=$enableval], [make_lint_lib=no])
2933
2934if test "x$make_lint_lib" = x"yes" ; then
2935   LINTLIB=llib-l$1.ln
2936   if test "x$LINT" = "x"; then
2937        AC_MSG_ERROR([Cannot make lint library without --with-lint])
2938   fi
2939elif test "x$make_lint_lib" != x"no" ; then
2940   AC_MSG_ERROR([--enable-lint-library expects 'yes' or 'no'.])
2941fi
2942
2943AC_SUBST(LINTLIB)
2944AM_CONDITIONAL(MAKE_LINT_LIB, [test x$make_lint_lib != xno])
2945
2946]) # XORG_LINT_LIBRARY
2947
2948# XORG_COMPILER_BRAND
2949# -------------------
2950# Minimum version: 1.14.0
2951#
2952# Checks for various brands of compilers and sets flags as appropriate:
2953#   GNU gcc - relies on AC_PROG_CC (via AC_PROG_CC_C99) to set GCC to "yes"
2954#   GNU g++ - relies on AC_PROG_CXX to set GXX to "yes"
2955#   clang compiler - sets CLANGCC to "yes"
2956#   Intel compiler - sets INTELCC to "yes"
2957#   Sun/Oracle Solaris Studio cc - sets SUNCC to "yes"
2958#
2959AC_DEFUN([XORG_COMPILER_BRAND], [
2960AC_LANG_CASE(
2961	[C], [
2962		dnl autoconf-2.70 folded AC_PROG_CC_C99 into AC_PROG_CC
2963		dnl and complains that AC_PROG_CC_C99 is obsolete
2964		m4_version_prereq([2.70],
2965			[AC_REQUIRE([AC_PROG_CC])],
2966			[AC_REQUIRE([AC_PROG_CC_C99])])
2967	],
2968	[C++], [
2969		AC_REQUIRE([AC_PROG_CXX])
2970	]
2971)
2972AC_CHECK_DECL([__clang__], [CLANGCC="yes"], [CLANGCC="no"])
2973AC_CHECK_DECL([__INTEL_COMPILER], [INTELCC="yes"], [INTELCC="no"])
2974AC_CHECK_DECL([__SUNPRO_C], [SUNCC="yes"], [SUNCC="no"])
2975]) # XORG_COMPILER_BRAND
2976
2977# XORG_TESTSET_CFLAG(<variable>, <flag>, [<alternative flag>, ...])
2978# ---------------
2979# Minimum version: 1.16.0
2980#
2981# Test if the compiler works when passed the given flag as a command line argument.
2982# If it succeeds, the flag is appended to the given variable.  If not, it tries the
2983# next flag in the list until there are no more options.
2984#
2985# Note that this does not guarantee that the compiler supports the flag as some
2986# compilers will simply ignore arguments that they do not understand, but we do
2987# attempt to weed out false positives by using -Werror=unknown-warning-option and
2988# -Werror=unused-command-line-argument
2989#
2990AC_DEFUN([XORG_TESTSET_CFLAG], [
2991m4_if([$#], 0, [m4_fatal([XORG_TESTSET_CFLAG was given with an unsupported number of arguments])])
2992m4_if([$#], 1, [m4_fatal([XORG_TESTSET_CFLAG was given with an unsupported number of arguments])])
2993
2994AC_LANG_COMPILER_REQUIRE
2995
2996AC_LANG_CASE(
2997	[C], [
2998		dnl autoconf-2.70 folded AC_PROG_CC_C99 into AC_PROG_CC
2999		dnl and complains that AC_PROG_CC_C99 is obsolete
3000		m4_version_prereq([2.70],
3001			[AC_REQUIRE([AC_PROG_CC])],
3002			[AC_REQUIRE([AC_PROG_CC_C99])])
3003		define([PREFIX], [C])
3004		define([CACHE_PREFIX], [cc])
3005		define([COMPILER], [$CC])
3006	],
3007	[C++], [
3008		define([PREFIX], [CXX])
3009		define([CACHE_PREFIX], [cxx])
3010		define([COMPILER], [$CXX])
3011	]
3012)
3013
3014[xorg_testset_save_]PREFIX[FLAGS]="$PREFIX[FLAGS]"
3015
3016if test "x$[xorg_testset_]CACHE_PREFIX[_unknown_warning_option]" = "x" ; then
3017	PREFIX[FLAGS]="$PREFIX[FLAGS] -Werror=unknown-warning-option"
3018	AC_CACHE_CHECK([if ]COMPILER[ supports -Werror=unknown-warning-option],
3019			[xorg_cv_]CACHE_PREFIX[_flag_unknown_warning_option],
3020			AC_COMPILE_IFELSE([AC_LANG_SOURCE([int i;])],
3021					  [xorg_cv_]CACHE_PREFIX[_flag_unknown_warning_option=yes],
3022					  [xorg_cv_]CACHE_PREFIX[_flag_unknown_warning_option=no]))
3023	[xorg_testset_]CACHE_PREFIX[_unknown_warning_option]=$[xorg_cv_]CACHE_PREFIX[_flag_unknown_warning_option]
3024	PREFIX[FLAGS]="$[xorg_testset_save_]PREFIX[FLAGS]"
3025fi
3026
3027if test "x$[xorg_testset_]CACHE_PREFIX[_unused_command_line_argument]" = "x" ; then
3028	if test "x$[xorg_testset_]CACHE_PREFIX[_unknown_warning_option]" = "xyes" ; then
3029		PREFIX[FLAGS]="$PREFIX[FLAGS] -Werror=unknown-warning-option"
3030	fi
3031	PREFIX[FLAGS]="$PREFIX[FLAGS] -Werror=unused-command-line-argument"
3032	AC_CACHE_CHECK([if ]COMPILER[ supports -Werror=unused-command-line-argument],
3033			[xorg_cv_]CACHE_PREFIX[_flag_unused_command_line_argument],
3034			AC_COMPILE_IFELSE([AC_LANG_SOURCE([int i;])],
3035					  [xorg_cv_]CACHE_PREFIX[_flag_unused_command_line_argument=yes],
3036					  [xorg_cv_]CACHE_PREFIX[_flag_unused_command_line_argument=no]))
3037	[xorg_testset_]CACHE_PREFIX[_unused_command_line_argument]=$[xorg_cv_]CACHE_PREFIX[_flag_unused_command_line_argument]
3038	PREFIX[FLAGS]="$[xorg_testset_save_]PREFIX[FLAGS]"
3039fi
3040
3041found="no"
3042m4_foreach([flag], m4_cdr($@), [
3043	if test $found = "no" ; then
3044		if test "x$xorg_testset_]CACHE_PREFIX[_unknown_warning_option" = "xyes" ; then
3045			PREFIX[FLAGS]="$PREFIX[FLAGS] -Werror=unknown-warning-option"
3046		fi
3047
3048		if test "x$xorg_testset_]CACHE_PREFIX[_unused_command_line_argument" = "xyes" ; then
3049			PREFIX[FLAGS]="$PREFIX[FLAGS] -Werror=unused-command-line-argument"
3050		fi
3051
3052		PREFIX[FLAGS]="$PREFIX[FLAGS] ]flag["
3053
3054dnl Some hackery here since AC_CACHE_VAL can't handle a non-literal varname
3055		AC_MSG_CHECKING([if ]COMPILER[ supports ]flag[])
3056		cacheid=AS_TR_SH([xorg_cv_]CACHE_PREFIX[_flag_]flag[])
3057		AC_CACHE_VAL($cacheid,
3058			     [AC_LINK_IFELSE([AC_LANG_PROGRAM([int i;])],
3059					     [eval $cacheid=yes],
3060					     [eval $cacheid=no])])
3061
3062		PREFIX[FLAGS]="$[xorg_testset_save_]PREFIX[FLAGS]"
3063
3064		eval supported=\$$cacheid
3065		AC_MSG_RESULT([$supported])
3066		if test "$supported" = "yes" ; then
3067			$1="$$1 ]flag["
3068			found="yes"
3069		fi
3070	fi
3071])
3072]) # XORG_TESTSET_CFLAG
3073
3074# XORG_COMPILER_FLAGS
3075# ---------------
3076# Minimum version: 1.16.0
3077#
3078# Defines BASE_CFLAGS or BASE_CXXFLAGS to contain a set of command line
3079# arguments supported by the selected compiler which do NOT alter the generated
3080# code.  These arguments will cause the compiler to print various warnings
3081# during compilation AND turn a conservative set of warnings into errors.
3082#
3083# The set of flags supported by BASE_CFLAGS and BASE_CXXFLAGS will grow in
3084# future versions of util-macros as options are added to new compilers.
3085#
3086AC_DEFUN([XORG_COMPILER_FLAGS], [
3087AC_REQUIRE([XORG_COMPILER_BRAND])
3088
3089AC_ARG_ENABLE(selective-werror,
3090              AS_HELP_STRING([--disable-selective-werror],
3091                             [Turn off selective compiler errors. (default: enabled)]),
3092              [SELECTIVE_WERROR=$enableval],
3093              [SELECTIVE_WERROR=yes])
3094
3095AC_LANG_CASE(
3096        [C], [
3097                define([PREFIX], [C])
3098        ],
3099        [C++], [
3100                define([PREFIX], [CXX])
3101        ]
3102)
3103# -v is too short to test reliably with XORG_TESTSET_CFLAG
3104if test "x$SUNCC" = "xyes"; then
3105    [BASE_]PREFIX[FLAGS]="-v"
3106else
3107    [BASE_]PREFIX[FLAGS]=""
3108fi
3109
3110# This chunk of warnings were those that existed in the legacy CWARNFLAGS
3111XORG_TESTSET_CFLAG([[BASE_]PREFIX[FLAGS]], [-Wall])
3112XORG_TESTSET_CFLAG([[BASE_]PREFIX[FLAGS]], [-Wpointer-arith])
3113XORG_TESTSET_CFLAG([[BASE_]PREFIX[FLAGS]], [-Wmissing-declarations])
3114XORG_TESTSET_CFLAG([[BASE_]PREFIX[FLAGS]], [-Wformat=2], [-Wformat])
3115
3116AC_LANG_CASE(
3117	[C], [
3118		XORG_TESTSET_CFLAG([[BASE_]PREFIX[FLAGS]], [-Wstrict-prototypes])
3119		XORG_TESTSET_CFLAG([[BASE_]PREFIX[FLAGS]], [-Wmissing-prototypes])
3120		XORG_TESTSET_CFLAG([[BASE_]PREFIX[FLAGS]], [-Wnested-externs])
3121		XORG_TESTSET_CFLAG([[BASE_]PREFIX[FLAGS]], [-Wbad-function-cast])
3122		XORG_TESTSET_CFLAG([[BASE_]PREFIX[FLAGS]], [-Wold-style-definition], [-fd])
3123		XORG_TESTSET_CFLAG([[BASE_]PREFIX[FLAGS]], [-Wdeclaration-after-statement])
3124	]
3125)
3126
3127# This chunk adds additional warnings that could catch undesired effects.
3128XORG_TESTSET_CFLAG([[BASE_]PREFIX[FLAGS]], [-Wunused])
3129XORG_TESTSET_CFLAG([[BASE_]PREFIX[FLAGS]], [-Wuninitialized])
3130XORG_TESTSET_CFLAG([[BASE_]PREFIX[FLAGS]], [-Wshadow])
3131XORG_TESTSET_CFLAG([[BASE_]PREFIX[FLAGS]], [-Wmissing-noreturn])
3132XORG_TESTSET_CFLAG([[BASE_]PREFIX[FLAGS]], [-Wmissing-format-attribute])
3133XORG_TESTSET_CFLAG([[BASE_]PREFIX[FLAGS]], [-Wredundant-decls])
3134XORG_TESTSET_CFLAG([[BASE_]PREFIX[FLAGS]], [-Wlogical-op])
3135
3136# These are currently disabled because they are noisy.  They will be enabled
3137# in the future once the codebase is sufficiently modernized to silence
3138# them.  For now, I don't want them to drown out the other warnings.
3139# XORG_TESTSET_CFLAG([[BASE_]PREFIX[FLAGS]], [-Wparentheses])
3140# XORG_TESTSET_CFLAG([[BASE_]PREFIX[FLAGS]], [-Wcast-align])
3141# XORG_TESTSET_CFLAG([[BASE_]PREFIX[FLAGS]], [-Wcast-qual])
3142
3143# Turn some warnings into errors, so we don't accidentally get successful builds
3144# when there are problems that should be fixed.
3145
3146if test "x$SELECTIVE_WERROR" = "xyes" ; then
3147XORG_TESTSET_CFLAG([[BASE_]PREFIX[FLAGS]], [-Werror=implicit], [-errwarn=E_NO_EXPLICIT_TYPE_GIVEN -errwarn=E_NO_IMPLICIT_DECL_ALLOWED])
3148XORG_TESTSET_CFLAG([[BASE_]PREFIX[FLAGS]], [-Werror=nonnull])
3149XORG_TESTSET_CFLAG([[BASE_]PREFIX[FLAGS]], [-Werror=init-self])
3150XORG_TESTSET_CFLAG([[BASE_]PREFIX[FLAGS]], [-Werror=main])
3151XORG_TESTSET_CFLAG([[BASE_]PREFIX[FLAGS]], [-Werror=missing-braces])
3152XORG_TESTSET_CFLAG([[BASE_]PREFIX[FLAGS]], [-Werror=sequence-point])
3153XORG_TESTSET_CFLAG([[BASE_]PREFIX[FLAGS]], [-Werror=return-type], [-errwarn=E_FUNC_HAS_NO_RETURN_STMT])
3154XORG_TESTSET_CFLAG([[BASE_]PREFIX[FLAGS]], [-Werror=trigraphs])
3155XORG_TESTSET_CFLAG([[BASE_]PREFIX[FLAGS]], [-Werror=array-bounds])
3156XORG_TESTSET_CFLAG([[BASE_]PREFIX[FLAGS]], [-Werror=write-strings])
3157XORG_TESTSET_CFLAG([[BASE_]PREFIX[FLAGS]], [-Werror=address])
3158XORG_TESTSET_CFLAG([[BASE_]PREFIX[FLAGS]], [-Werror=int-to-pointer-cast], [-errwarn=E_BAD_PTR_INT_COMBINATION])
3159XORG_TESTSET_CFLAG([[BASE_]PREFIX[FLAGS]], [-Werror=pointer-to-int-cast]) # Also -errwarn=E_BAD_PTR_INT_COMBINATION
3160else
3161AC_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])
3162XORG_TESTSET_CFLAG([[BASE_]PREFIX[FLAGS]], [-Wimplicit])
3163XORG_TESTSET_CFLAG([[BASE_]PREFIX[FLAGS]], [-Wnonnull])
3164XORG_TESTSET_CFLAG([[BASE_]PREFIX[FLAGS]], [-Winit-self])
3165XORG_TESTSET_CFLAG([[BASE_]PREFIX[FLAGS]], [-Wmain])
3166XORG_TESTSET_CFLAG([[BASE_]PREFIX[FLAGS]], [-Wmissing-braces])
3167XORG_TESTSET_CFLAG([[BASE_]PREFIX[FLAGS]], [-Wsequence-point])
3168XORG_TESTSET_CFLAG([[BASE_]PREFIX[FLAGS]], [-Wreturn-type])
3169XORG_TESTSET_CFLAG([[BASE_]PREFIX[FLAGS]], [-Wtrigraphs])
3170XORG_TESTSET_CFLAG([[BASE_]PREFIX[FLAGS]], [-Warray-bounds])
3171XORG_TESTSET_CFLAG([[BASE_]PREFIX[FLAGS]], [-Wwrite-strings])
3172XORG_TESTSET_CFLAG([[BASE_]PREFIX[FLAGS]], [-Waddress])
3173XORG_TESTSET_CFLAG([[BASE_]PREFIX[FLAGS]], [-Wint-to-pointer-cast])
3174XORG_TESTSET_CFLAG([[BASE_]PREFIX[FLAGS]], [-Wpointer-to-int-cast])
3175fi
3176
3177AC_SUBST([BASE_]PREFIX[FLAGS])
3178]) # XORG_COMPILER_FLAGS
3179
3180# XORG_CWARNFLAGS
3181# ---------------
3182# Minimum version: 1.2.0
3183# Deprecated since: 1.16.0 (Use XORG_COMPILER_FLAGS instead)
3184#
3185# Defines CWARNFLAGS to enable C compiler warnings.
3186#
3187# This function is deprecated because it defines -fno-strict-aliasing
3188# which alters the code generated by the compiler.  If -fno-strict-aliasing
3189# is needed, then it should be added explicitly in the module when
3190# it is updated to use BASE_CFLAGS.
3191#
3192AC_DEFUN([XORG_CWARNFLAGS], [
3193AC_REQUIRE([XORG_COMPILER_FLAGS])
3194AC_REQUIRE([XORG_COMPILER_BRAND])
3195AC_LANG_CASE(
3196	[C], [
3197		CWARNFLAGS="$BASE_CFLAGS"
3198		if  test "x$GCC" = xyes ; then
3199		    CWARNFLAGS="$CWARNFLAGS -fno-strict-aliasing"
3200		fi
3201		AC_SUBST(CWARNFLAGS)
3202	]
3203)
3204]) # XORG_CWARNFLAGS
3205
3206# XORG_STRICT_OPTION
3207# -----------------------
3208# Minimum version: 1.3.0
3209#
3210# Add configure option to enable strict compilation flags, such as treating
3211# warnings as fatal errors.
3212# If --enable-strict-compilation is passed to configure, adds strict flags to
3213# $BASE_CFLAGS or $BASE_CXXFLAGS and the deprecated $CWARNFLAGS.
3214#
3215# Starting in 1.14.0 also exports $STRICT_CFLAGS for use in other tests or
3216# when strict compilation is unconditionally desired.
3217AC_DEFUN([XORG_STRICT_OPTION], [
3218AC_REQUIRE([XORG_CWARNFLAGS])
3219AC_REQUIRE([XORG_COMPILER_FLAGS])
3220
3221AC_ARG_ENABLE(strict-compilation,
3222			  AS_HELP_STRING([--enable-strict-compilation],
3223			  [Enable all warnings from compiler and make them errors (default: disabled)]),
3224			  [STRICT_COMPILE=$enableval], [STRICT_COMPILE=no])
3225
3226AC_LANG_CASE(
3227        [C], [
3228                define([PREFIX], [C])
3229        ],
3230        [C++], [
3231                define([PREFIX], [CXX])
3232        ]
3233)
3234
3235[STRICT_]PREFIX[FLAGS]=""
3236XORG_TESTSET_CFLAG([[STRICT_]PREFIX[FLAGS]], [-pedantic])
3237XORG_TESTSET_CFLAG([[STRICT_]PREFIX[FLAGS]], [-Werror], [-errwarn])
3238
3239# Earlier versions of gcc (eg: 4.2) support -Werror=attributes, but do not
3240# activate it with -Werror, so we add it here explicitly.
3241XORG_TESTSET_CFLAG([[STRICT_]PREFIX[FLAGS]], [-Werror=attributes])
3242
3243if test "x$STRICT_COMPILE" = "xyes"; then
3244    [BASE_]PREFIX[FLAGS]="$[BASE_]PREFIX[FLAGS] $[STRICT_]PREFIX[FLAGS]"
3245    AC_LANG_CASE([C], [CWARNFLAGS="$CWARNFLAGS $STRICT_CFLAGS"])
3246fi
3247AC_SUBST([STRICT_]PREFIX[FLAGS])
3248AC_SUBST([BASE_]PREFIX[FLAGS])
3249AC_LANG_CASE([C], AC_SUBST([CWARNFLAGS]))
3250]) # XORG_STRICT_OPTION
3251
3252# XORG_DEFAULT_NOCODE_OPTIONS
3253# ---------------------------
3254# Minimum version: 1.20.0
3255#
3256# Defines default options for X.Org modules which don't compile code,
3257# such as fonts, bitmaps, cursors, and docs.
3258#
3259AC_DEFUN([XORG_DEFAULT_NOCODE_OPTIONS], [
3260AC_REQUIRE([AC_PROG_INSTALL])
3261XORG_RELEASE_VERSION
3262XORG_CHANGELOG
3263XORG_INSTALL
3264XORG_MANPAGE_SECTIONS
3265m4_ifdef([AM_SILENT_RULES], [AM_SILENT_RULES([yes])],
3266    [AC_SUBST([AM_DEFAULT_VERBOSITY], [1])])
3267]) # XORG_DEFAULT_NOCODE_OPTIONS
3268
3269# XORG_DEFAULT_OPTIONS
3270# --------------------
3271# Minimum version: 1.3.0
3272#
3273# Defines default options for X.Org modules which compile code.
3274#
3275AC_DEFUN([XORG_DEFAULT_OPTIONS], [
3276AC_REQUIRE([AC_PROG_INSTALL])
3277XORG_COMPILER_FLAGS
3278XORG_CWARNFLAGS
3279XORG_STRICT_OPTION
3280XORG_DEFAULT_NOCODE_OPTIONS
3281]) # XORG_DEFAULT_OPTIONS
3282
3283# XORG_INSTALL()
3284# ----------------
3285# Minimum version: 1.4.0
3286#
3287# Defines the variable INSTALL_CMD as the command to copy
3288# INSTALL from $prefix/share/util-macros.
3289#
3290AC_DEFUN([XORG_INSTALL], [
3291AC_REQUIRE([PKG_PROG_PKG_CONFIG])
3292macros_datadir=`$PKG_CONFIG --print-errors --variable=pkgdatadir xorg-macros`
3293INSTALL_CMD="(cp -f "$macros_datadir/INSTALL" \$(top_srcdir)/.INSTALL.tmp && \
3294mv \$(top_srcdir)/.INSTALL.tmp \$(top_srcdir)/INSTALL) \
3295|| (rm -f \$(top_srcdir)/.INSTALL.tmp; test -e \$(top_srcdir)/INSTALL || ( \
3296touch \$(top_srcdir)/INSTALL; \
3297echo 'failed to copy INSTALL from util-macros: installing empty INSTALL.' >&2))"
3298AC_SUBST([INSTALL_CMD])
3299]) # XORG_INSTALL
3300dnl Copyright 2005 Red Hat, Inc
3301dnl
3302dnl Permission to use, copy, modify, distribute, and sell this software and its
3303dnl documentation for any purpose is hereby granted without fee, provided that
3304dnl the above copyright notice appear in all copies and that both that
3305dnl copyright notice and this permission notice appear in supporting
3306dnl documentation.
3307dnl
3308dnl The above copyright notice and this permission notice shall be included
3309dnl in all copies or substantial portions of the Software.
3310dnl
3311dnl THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS
3312dnl OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
3313dnl MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.
3314dnl IN NO EVENT SHALL THE OPEN GROUP BE LIABLE FOR ANY CLAIM, DAMAGES OR
3315dnl OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE,
3316dnl ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR
3317dnl OTHER DEALINGS IN THE SOFTWARE.
3318dnl
3319dnl Except as contained in this notice, the name of the copyright holders shall
3320dnl not be used in advertising or otherwise to promote the sale, use or
3321dnl other dealings in this Software without prior written authorization
3322dnl from the copyright holders.
3323dnl
3324
3325# XORG_RELEASE_VERSION
3326# --------------------
3327# Defines PACKAGE_VERSION_{MAJOR,MINOR,PATCHLEVEL} for modules to use.
3328
3329AC_DEFUN([XORG_RELEASE_VERSION],[
3330	AC_DEFINE_UNQUOTED([PACKAGE_VERSION_MAJOR],
3331		[`echo $PACKAGE_VERSION | cut -d . -f 1`],
3332		[Major version of this package])
3333	PVM=`echo $PACKAGE_VERSION | cut -d . -f 2 | cut -d - -f 1`
3334	if test "x$PVM" = "x"; then
3335		PVM="0"
3336	fi
3337	AC_DEFINE_UNQUOTED([PACKAGE_VERSION_MINOR],
3338		[$PVM],
3339		[Minor version of this package])
3340	PVP=`echo $PACKAGE_VERSION | cut -d . -f 3 | cut -d - -f 1`
3341	if test "x$PVP" = "x"; then
3342		PVP="0"
3343	fi
3344	AC_DEFINE_UNQUOTED([PACKAGE_VERSION_PATCHLEVEL],
3345		[$PVP],
3346		[Patch version of this package])
3347])
3348
3349# XORG_CHANGELOG()
3350# ----------------
3351# Minimum version: 1.2.0
3352#
3353# Defines the variable CHANGELOG_CMD as the command to generate
3354# ChangeLog from git.
3355#
3356#
3357AC_DEFUN([XORG_CHANGELOG], [
3358CHANGELOG_CMD="((GIT_DIR=\$(top_srcdir)/.git git log > \$(top_srcdir)/.changelog.tmp) 2>/dev/null && \
3359mv \$(top_srcdir)/.changelog.tmp \$(top_srcdir)/ChangeLog) \
3360|| (rm -f \$(top_srcdir)/.changelog.tmp; test -e \$(top_srcdir)/ChangeLog || ( \
3361touch \$(top_srcdir)/ChangeLog; \
3362echo 'git failed to create ChangeLog: installing empty ChangeLog.' >&2))"
3363AC_SUBST([CHANGELOG_CMD])
3364]) # XORG_CHANGELOG
3365
3366# libtool.m4 - Configure libtool for the host system. -*-Autoconf-*-
3367#
3368#   Copyright (C) 1996-2001, 2003-2019, 2021-2022 Free Software
3369#   Foundation, Inc.
3370#   Written by Gordon Matzigkeit, 1996
3371#
3372# This file is free software; the Free Software Foundation gives
3373# unlimited permission to copy and/or distribute it, with or without
3374# modifications, as long as this notice is preserved.
3375
3376m4_define([_LT_COPYING], [dnl
3377# Copyright (C) 2014 Free Software Foundation, Inc.
3378# This is free software; see the source for copying conditions.  There is NO
3379# warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
3380
3381# GNU Libtool is free software; you can redistribute it and/or modify
3382# it under the terms of the GNU General Public License as published by
3383# the Free Software Foundation; either version 2 of of the License, or
3384# (at your option) any later version.
3385#
3386# As a special exception to the GNU General Public License, if you
3387# distribute this file as part of a program or library that is built
3388# using GNU Libtool, you may include this file under the  same
3389# distribution terms that you use for the rest of that program.
3390#
3391# GNU Libtool is distributed in the hope that it will be useful, but
3392# WITHOUT ANY WARRANTY; without even the implied warranty of
3393# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
3394# GNU General Public License for more details.
3395#
3396# You should have received a copy of the GNU General Public License
3397# along with this program.  If not, see <http://www.gnu.org/licenses/>.
3398])
3399
3400# serial 59 LT_INIT
3401
3402
3403# LT_PREREQ(VERSION)
3404# ------------------
3405# Complain and exit if this libtool version is less that VERSION.
3406m4_defun([LT_PREREQ],
3407[m4_if(m4_version_compare(m4_defn([LT_PACKAGE_VERSION]), [$1]), -1,
3408       [m4_default([$3],
3409		   [m4_fatal([Libtool version $1 or higher is required],
3410		             63)])],
3411       [$2])])
3412
3413
3414# _LT_CHECK_BUILDDIR
3415# ------------------
3416# Complain if the absolute build directory name contains unusual characters
3417m4_defun([_LT_CHECK_BUILDDIR],
3418[case `pwd` in
3419  *\ * | *\	*)
3420    AC_MSG_WARN([Libtool does not cope well with whitespace in `pwd`]) ;;
3421esac
3422])
3423
3424
3425# LT_INIT([OPTIONS])
3426# ------------------
3427AC_DEFUN([LT_INIT],
3428[AC_PREREQ([2.62])dnl We use AC_PATH_PROGS_FEATURE_CHECK
3429AC_REQUIRE([AC_CONFIG_AUX_DIR_DEFAULT])dnl
3430AC_BEFORE([$0], [LT_LANG])dnl
3431AC_BEFORE([$0], [LT_OUTPUT])dnl
3432AC_BEFORE([$0], [LTDL_INIT])dnl
3433m4_require([_LT_CHECK_BUILDDIR])dnl
3434
3435dnl Autoconf doesn't catch unexpanded LT_ macros by default:
3436m4_pattern_forbid([^_?LT_[A-Z_]+$])dnl
3437m4_pattern_allow([^(_LT_EOF|LT_DLGLOBAL|LT_DLLAZY_OR_NOW|LT_MULTI_MODULE)$])dnl
3438dnl aclocal doesn't pull ltoptions.m4, ltsugar.m4, or ltversion.m4
3439dnl unless we require an AC_DEFUNed macro:
3440AC_REQUIRE([LTOPTIONS_VERSION])dnl
3441AC_REQUIRE([LTSUGAR_VERSION])dnl
3442AC_REQUIRE([LTVERSION_VERSION])dnl
3443AC_REQUIRE([LTOBSOLETE_VERSION])dnl
3444m4_require([_LT_PROG_LTMAIN])dnl
3445
3446_LT_SHELL_INIT([SHELL=${CONFIG_SHELL-/bin/sh}])
3447
3448dnl Parse OPTIONS
3449_LT_SET_OPTIONS([$0], [$1])
3450
3451# This can be used to rebuild libtool when needed
3452LIBTOOL_DEPS=$ltmain
3453
3454# Always use our own libtool.
3455LIBTOOL='$(SHELL) $(top_builddir)/libtool'
3456AC_SUBST(LIBTOOL)dnl
3457
3458_LT_SETUP
3459
3460# Only expand once:
3461m4_define([LT_INIT])
3462])# LT_INIT
3463
3464# Old names:
3465AU_ALIAS([AC_PROG_LIBTOOL], [LT_INIT])
3466AU_ALIAS([AM_PROG_LIBTOOL], [LT_INIT])
3467dnl aclocal-1.4 backwards compatibility:
3468dnl AC_DEFUN([AC_PROG_LIBTOOL], [])
3469dnl AC_DEFUN([AM_PROG_LIBTOOL], [])
3470
3471
3472# _LT_PREPARE_CC_BASENAME
3473# -----------------------
3474m4_defun([_LT_PREPARE_CC_BASENAME], [
3475# Calculate cc_basename.  Skip known compiler wrappers and cross-prefix.
3476func_cc_basename ()
3477{
3478    for cc_temp in @S|@*""; do
3479      case $cc_temp in
3480        compile | *[[\\/]]compile | ccache | *[[\\/]]ccache ) ;;
3481        distcc | *[[\\/]]distcc | purify | *[[\\/]]purify ) ;;
3482        \-*) ;;
3483        *) break;;
3484      esac
3485    done
3486    func_cc_basename_result=`$ECHO "$cc_temp" | $SED "s%.*/%%; s%^$host_alias-%%"`
3487}
3488])# _LT_PREPARE_CC_BASENAME
3489
3490
3491# _LT_CC_BASENAME(CC)
3492# -------------------
3493# It would be clearer to call AC_REQUIREs from _LT_PREPARE_CC_BASENAME,
3494# but that macro is also expanded into generated libtool script, which
3495# arranges for $SED and $ECHO to be set by different means.
3496m4_defun([_LT_CC_BASENAME],
3497[m4_require([_LT_PREPARE_CC_BASENAME])dnl
3498AC_REQUIRE([_LT_DECL_SED])dnl
3499AC_REQUIRE([_LT_PROG_ECHO_BACKSLASH])dnl
3500func_cc_basename $1
3501cc_basename=$func_cc_basename_result
3502])
3503
3504
3505# _LT_FILEUTILS_DEFAULTS
3506# ----------------------
3507# It is okay to use these file commands and assume they have been set
3508# sensibly after 'm4_require([_LT_FILEUTILS_DEFAULTS])'.
3509m4_defun([_LT_FILEUTILS_DEFAULTS],
3510[: ${CP="cp -f"}
3511: ${MV="mv -f"}
3512: ${RM="rm -f"}
3513])# _LT_FILEUTILS_DEFAULTS
3514
3515
3516# _LT_SETUP
3517# ---------
3518m4_defun([_LT_SETUP],
3519[AC_REQUIRE([AC_CANONICAL_HOST])dnl
3520AC_REQUIRE([AC_CANONICAL_BUILD])dnl
3521AC_REQUIRE([_LT_PREPARE_SED_QUOTE_VARS])dnl
3522AC_REQUIRE([_LT_PROG_ECHO_BACKSLASH])dnl
3523
3524_LT_DECL([], [PATH_SEPARATOR], [1], [The PATH separator for the build system])dnl
3525dnl
3526_LT_DECL([], [host_alias], [0], [The host system])dnl
3527_LT_DECL([], [host], [0])dnl
3528_LT_DECL([], [host_os], [0])dnl
3529dnl
3530_LT_DECL([], [build_alias], [0], [The build system])dnl
3531_LT_DECL([], [build], [0])dnl
3532_LT_DECL([], [build_os], [0])dnl
3533dnl
3534AC_REQUIRE([AC_PROG_CC])dnl
3535AC_REQUIRE([LT_PATH_LD])dnl
3536AC_REQUIRE([LT_PATH_NM])dnl
3537dnl
3538AC_REQUIRE([AC_PROG_LN_S])dnl
3539test -z "$LN_S" && LN_S="ln -s"
3540_LT_DECL([], [LN_S], [1], [Whether we need soft or hard links])dnl
3541dnl
3542AC_REQUIRE([LT_CMD_MAX_LEN])dnl
3543_LT_DECL([objext], [ac_objext], [0], [Object file suffix (normally "o")])dnl
3544_LT_DECL([], [exeext], [0], [Executable file suffix (normally "")])dnl
3545dnl
3546m4_require([_LT_FILEUTILS_DEFAULTS])dnl
3547m4_require([_LT_CHECK_SHELL_FEATURES])dnl
3548m4_require([_LT_PATH_CONVERSION_FUNCTIONS])dnl
3549m4_require([_LT_CMD_RELOAD])dnl
3550m4_require([_LT_DECL_FILECMD])dnl
3551m4_require([_LT_CHECK_MAGIC_METHOD])dnl
3552m4_require([_LT_CHECK_SHAREDLIB_FROM_LINKLIB])dnl
3553m4_require([_LT_CMD_OLD_ARCHIVE])dnl
3554m4_require([_LT_CMD_GLOBAL_SYMBOLS])dnl
3555m4_require([_LT_WITH_SYSROOT])dnl
3556m4_require([_LT_CMD_TRUNCATE])dnl
3557
3558_LT_CONFIG_LIBTOOL_INIT([
3559# See if we are running on zsh, and set the options that allow our
3560# commands through without removal of \ escapes INIT.
3561if test -n "\${ZSH_VERSION+set}"; then
3562   setopt NO_GLOB_SUBST
3563fi
3564])
3565if test -n "${ZSH_VERSION+set}"; then
3566   setopt NO_GLOB_SUBST
3567fi
3568
3569_LT_CHECK_OBJDIR
3570
3571m4_require([_LT_TAG_COMPILER])dnl
3572
3573case $host_os in
3574aix3*)
3575  # AIX sometimes has problems with the GCC collect2 program.  For some
3576  # reason, if we set the COLLECT_NAMES environment variable, the problems
3577  # vanish in a puff of smoke.
3578  if test set != "${COLLECT_NAMES+set}"; then
3579    COLLECT_NAMES=
3580    export COLLECT_NAMES
3581  fi
3582  ;;
3583esac
3584
3585# Global variables:
3586ofile=libtool
3587can_build_shared=yes
3588
3589# All known linkers require a '.a' archive for static linking (except MSVC and
3590# ICC, which need '.lib').
3591libext=a
3592
3593with_gnu_ld=$lt_cv_prog_gnu_ld
3594
3595old_CC=$CC
3596old_CFLAGS=$CFLAGS
3597
3598# Set sane defaults for various variables
3599test -z "$CC" && CC=cc
3600test -z "$LTCC" && LTCC=$CC
3601test -z "$LTCFLAGS" && LTCFLAGS=$CFLAGS
3602test -z "$LD" && LD=ld
3603test -z "$ac_objext" && ac_objext=o
3604
3605_LT_CC_BASENAME([$compiler])
3606
3607# Only perform the check for file, if the check method requires it
3608test -z "$MAGIC_CMD" && MAGIC_CMD=file
3609case $deplibs_check_method in
3610file_magic*)
3611  if test "$file_magic_cmd" = '$MAGIC_CMD'; then
3612    _LT_PATH_MAGIC
3613  fi
3614  ;;
3615esac
3616
3617# Use C for the default configuration in the libtool script
3618LT_SUPPORTED_TAG([CC])
3619_LT_LANG_C_CONFIG
3620_LT_LANG_DEFAULT_CONFIG
3621_LT_CONFIG_COMMANDS
3622])# _LT_SETUP
3623
3624
3625# _LT_PREPARE_SED_QUOTE_VARS
3626# --------------------------
3627# Define a few sed substitution that help us do robust quoting.
3628m4_defun([_LT_PREPARE_SED_QUOTE_VARS],
3629[# Backslashify metacharacters that are still active within
3630# double-quoted strings.
3631sed_quote_subst='s/\([["`$\\]]\)/\\\1/g'
3632
3633# Same as above, but do not quote variable references.
3634double_quote_subst='s/\([["`\\]]\)/\\\1/g'
3635
3636# Sed substitution to delay expansion of an escaped shell variable in a
3637# double_quote_subst'ed string.
3638delay_variable_subst='s/\\\\\\\\\\\$/\\\\\\$/g'
3639
3640# Sed substitution to delay expansion of an escaped single quote.
3641delay_single_quote_subst='s/'\''/'\'\\\\\\\'\''/g'
3642
3643# Sed substitution to avoid accidental globbing in evaled expressions
3644no_glob_subst='s/\*/\\\*/g'
3645])
3646
3647# _LT_PROG_LTMAIN
3648# ---------------
3649# Note that this code is called both from 'configure', and 'config.status'
3650# now that we use AC_CONFIG_COMMANDS to generate libtool.  Notably,
3651# 'config.status' has no value for ac_aux_dir unless we are using Automake,
3652# so we pass a copy along to make sure it has a sensible value anyway.
3653m4_defun([_LT_PROG_LTMAIN],
3654[m4_ifdef([AC_REQUIRE_AUX_FILE], [AC_REQUIRE_AUX_FILE([ltmain.sh])])dnl
3655_LT_CONFIG_LIBTOOL_INIT([ac_aux_dir='$ac_aux_dir'])
3656ltmain=$ac_aux_dir/ltmain.sh
3657])# _LT_PROG_LTMAIN
3658
3659
3660
3661# So that we can recreate a full libtool script including additional
3662# tags, we accumulate the chunks of code to send to AC_CONFIG_COMMANDS
3663# in macros and then make a single call at the end using the 'libtool'
3664# label.
3665
3666
3667# _LT_CONFIG_LIBTOOL_INIT([INIT-COMMANDS])
3668# ----------------------------------------
3669# Register INIT-COMMANDS to be passed to AC_CONFIG_COMMANDS later.
3670m4_define([_LT_CONFIG_LIBTOOL_INIT],
3671[m4_ifval([$1],
3672          [m4_append([_LT_OUTPUT_LIBTOOL_INIT],
3673                     [$1
3674])])])
3675
3676# Initialize.
3677m4_define([_LT_OUTPUT_LIBTOOL_INIT])
3678
3679
3680# _LT_CONFIG_LIBTOOL([COMMANDS])
3681# ------------------------------
3682# Register COMMANDS to be passed to AC_CONFIG_COMMANDS later.
3683m4_define([_LT_CONFIG_LIBTOOL],
3684[m4_ifval([$1],
3685          [m4_append([_LT_OUTPUT_LIBTOOL_COMMANDS],
3686                     [$1
3687])])])
3688
3689# Initialize.
3690m4_define([_LT_OUTPUT_LIBTOOL_COMMANDS])
3691
3692
3693# _LT_CONFIG_SAVE_COMMANDS([COMMANDS], [INIT_COMMANDS])
3694# -----------------------------------------------------
3695m4_defun([_LT_CONFIG_SAVE_COMMANDS],
3696[_LT_CONFIG_LIBTOOL([$1])
3697_LT_CONFIG_LIBTOOL_INIT([$2])
3698])
3699
3700
3701# _LT_FORMAT_COMMENT([COMMENT])
3702# -----------------------------
3703# Add leading comment marks to the start of each line, and a trailing
3704# full-stop to the whole comment if one is not present already.
3705m4_define([_LT_FORMAT_COMMENT],
3706[m4_ifval([$1], [
3707m4_bpatsubst([m4_bpatsubst([$1], [^ *], [# ])],
3708              [['`$\]], [\\\&])]m4_bmatch([$1], [[!?.]$], [], [.])
3709)])
3710
3711
3712
3713
3714
3715# _LT_DECL([CONFIGNAME], VARNAME, VALUE, [DESCRIPTION], [IS-TAGGED?])
3716# -------------------------------------------------------------------
3717# CONFIGNAME is the name given to the value in the libtool script.
3718# VARNAME is the (base) name used in the configure script.
3719# VALUE may be 0, 1 or 2 for a computed quote escaped value based on
3720# VARNAME.  Any other value will be used directly.
3721m4_define([_LT_DECL],
3722[lt_if_append_uniq([lt_decl_varnames], [$2], [, ],
3723    [lt_dict_add_subkey([lt_decl_dict], [$2], [libtool_name],
3724	[m4_ifval([$1], [$1], [$2])])
3725    lt_dict_add_subkey([lt_decl_dict], [$2], [value], [$3])
3726    m4_ifval([$4],
3727	[lt_dict_add_subkey([lt_decl_dict], [$2], [description], [$4])])
3728    lt_dict_add_subkey([lt_decl_dict], [$2],
3729	[tagged?], [m4_ifval([$5], [yes], [no])])])
3730])
3731
3732
3733# _LT_TAGDECL([CONFIGNAME], VARNAME, VALUE, [DESCRIPTION])
3734# --------------------------------------------------------
3735m4_define([_LT_TAGDECL], [_LT_DECL([$1], [$2], [$3], [$4], [yes])])
3736
3737
3738# lt_decl_tag_varnames([SEPARATOR], [VARNAME1...])
3739# ------------------------------------------------
3740m4_define([lt_decl_tag_varnames],
3741[_lt_decl_filter([tagged?], [yes], $@)])
3742
3743
3744# _lt_decl_filter(SUBKEY, VALUE, [SEPARATOR], [VARNAME1..])
3745# ---------------------------------------------------------
3746m4_define([_lt_decl_filter],
3747[m4_case([$#],
3748  [0], [m4_fatal([$0: too few arguments: $#])],
3749  [1], [m4_fatal([$0: too few arguments: $#: $1])],
3750  [2], [lt_dict_filter([lt_decl_dict], [$1], [$2], [], lt_decl_varnames)],
3751  [3], [lt_dict_filter([lt_decl_dict], [$1], [$2], [$3], lt_decl_varnames)],
3752  [lt_dict_filter([lt_decl_dict], $@)])[]dnl
3753])
3754
3755
3756# lt_decl_quote_varnames([SEPARATOR], [VARNAME1...])
3757# --------------------------------------------------
3758m4_define([lt_decl_quote_varnames],
3759[_lt_decl_filter([value], [1], $@)])
3760
3761
3762# lt_decl_dquote_varnames([SEPARATOR], [VARNAME1...])
3763# ---------------------------------------------------
3764m4_define([lt_decl_dquote_varnames],
3765[_lt_decl_filter([value], [2], $@)])
3766
3767
3768# lt_decl_varnames_tagged([SEPARATOR], [VARNAME1...])
3769# ---------------------------------------------------
3770m4_define([lt_decl_varnames_tagged],
3771[m4_assert([$# <= 2])dnl
3772_$0(m4_quote(m4_default([$1], [[, ]])),
3773    m4_ifval([$2], [[$2]], [m4_dquote(lt_decl_tag_varnames)]),
3774    m4_split(m4_normalize(m4_quote(_LT_TAGS)), [ ]))])
3775m4_define([_lt_decl_varnames_tagged],
3776[m4_ifval([$3], [lt_combine([$1], [$2], [_], $3)])])
3777
3778
3779# lt_decl_all_varnames([SEPARATOR], [VARNAME1...])
3780# ------------------------------------------------
3781m4_define([lt_decl_all_varnames],
3782[_$0(m4_quote(m4_default([$1], [[, ]])),
3783     m4_if([$2], [],
3784	   m4_quote(lt_decl_varnames),
3785	m4_quote(m4_shift($@))))[]dnl
3786])
3787m4_define([_lt_decl_all_varnames],
3788[lt_join($@, lt_decl_varnames_tagged([$1],
3789			lt_decl_tag_varnames([[, ]], m4_shift($@))))dnl
3790])
3791
3792
3793# _LT_CONFIG_STATUS_DECLARE([VARNAME])
3794# ------------------------------------
3795# Quote a variable value, and forward it to 'config.status' so that its
3796# declaration there will have the same value as in 'configure'.  VARNAME
3797# must have a single quote delimited value for this to work.
3798m4_define([_LT_CONFIG_STATUS_DECLARE],
3799[$1='`$ECHO "$][$1" | $SED "$delay_single_quote_subst"`'])
3800
3801
3802# _LT_CONFIG_STATUS_DECLARATIONS
3803# ------------------------------
3804# We delimit libtool config variables with single quotes, so when
3805# we write them to config.status, we have to be sure to quote all
3806# embedded single quotes properly.  In configure, this macro expands
3807# each variable declared with _LT_DECL (and _LT_TAGDECL) into:
3808#
3809#    <var>='`$ECHO "$<var>" | $SED "$delay_single_quote_subst"`'
3810m4_defun([_LT_CONFIG_STATUS_DECLARATIONS],
3811[m4_foreach([_lt_var], m4_quote(lt_decl_all_varnames),
3812    [m4_n([_LT_CONFIG_STATUS_DECLARE(_lt_var)])])])
3813
3814
3815# _LT_LIBTOOL_TAGS
3816# ----------------
3817# Output comment and list of tags supported by the script
3818m4_defun([_LT_LIBTOOL_TAGS],
3819[_LT_FORMAT_COMMENT([The names of the tagged configurations supported by this script])dnl
3820available_tags='_LT_TAGS'dnl
3821])
3822
3823
3824# _LT_LIBTOOL_DECLARE(VARNAME, [TAG])
3825# -----------------------------------
3826# Extract the dictionary values for VARNAME (optionally with TAG) and
3827# expand to a commented shell variable setting:
3828#
3829#    # Some comment about what VAR is for.
3830#    visible_name=$lt_internal_name
3831m4_define([_LT_LIBTOOL_DECLARE],
3832[_LT_FORMAT_COMMENT(m4_quote(lt_dict_fetch([lt_decl_dict], [$1],
3833					   [description])))[]dnl
3834m4_pushdef([_libtool_name],
3835    m4_quote(lt_dict_fetch([lt_decl_dict], [$1], [libtool_name])))[]dnl
3836m4_case(m4_quote(lt_dict_fetch([lt_decl_dict], [$1], [value])),
3837    [0], [_libtool_name=[$]$1],
3838    [1], [_libtool_name=$lt_[]$1],
3839    [2], [_libtool_name=$lt_[]$1],
3840    [_libtool_name=lt_dict_fetch([lt_decl_dict], [$1], [value])])[]dnl
3841m4_ifval([$2], [_$2])[]m4_popdef([_libtool_name])[]dnl
3842])
3843
3844
3845# _LT_LIBTOOL_CONFIG_VARS
3846# -----------------------
3847# Produce commented declarations of non-tagged libtool config variables
3848# suitable for insertion in the LIBTOOL CONFIG section of the 'libtool'
3849# script.  Tagged libtool config variables (even for the LIBTOOL CONFIG
3850# section) are produced by _LT_LIBTOOL_TAG_VARS.
3851m4_defun([_LT_LIBTOOL_CONFIG_VARS],
3852[m4_foreach([_lt_var],
3853    m4_quote(_lt_decl_filter([tagged?], [no], [], lt_decl_varnames)),
3854    [m4_n([_LT_LIBTOOL_DECLARE(_lt_var)])])])
3855
3856
3857# _LT_LIBTOOL_TAG_VARS(TAG)
3858# -------------------------
3859m4_define([_LT_LIBTOOL_TAG_VARS],
3860[m4_foreach([_lt_var], m4_quote(lt_decl_tag_varnames),
3861    [m4_n([_LT_LIBTOOL_DECLARE(_lt_var, [$1])])])])
3862
3863
3864# _LT_TAGVAR(VARNAME, [TAGNAME])
3865# ------------------------------
3866m4_define([_LT_TAGVAR], [m4_ifval([$2], [$1_$2], [$1])])
3867
3868
3869# _LT_CONFIG_COMMANDS
3870# -------------------
3871# Send accumulated output to $CONFIG_STATUS.  Thanks to the lists of
3872# variables for single and double quote escaping we saved from calls
3873# to _LT_DECL, we can put quote escaped variables declarations
3874# into 'config.status', and then the shell code to quote escape them in
3875# for loops in 'config.status'.  Finally, any additional code accumulated
3876# from calls to _LT_CONFIG_LIBTOOL_INIT is expanded.
3877m4_defun([_LT_CONFIG_COMMANDS],
3878[AC_PROVIDE_IFELSE([LT_OUTPUT],
3879	dnl If the libtool generation code has been placed in $CONFIG_LT,
3880	dnl instead of duplicating it all over again into config.status,
3881	dnl then we will have config.status run $CONFIG_LT later, so it
3882	dnl needs to know what name is stored there:
3883        [AC_CONFIG_COMMANDS([libtool],
3884            [$SHELL $CONFIG_LT || AS_EXIT(1)], [CONFIG_LT='$CONFIG_LT'])],
3885    dnl If the libtool generation code is destined for config.status,
3886    dnl expand the accumulated commands and init code now:
3887    [AC_CONFIG_COMMANDS([libtool],
3888        [_LT_OUTPUT_LIBTOOL_COMMANDS], [_LT_OUTPUT_LIBTOOL_COMMANDS_INIT])])
3889])#_LT_CONFIG_COMMANDS
3890
3891
3892# Initialize.
3893m4_define([_LT_OUTPUT_LIBTOOL_COMMANDS_INIT],
3894[
3895
3896# The HP-UX ksh and POSIX shell print the target directory to stdout
3897# if CDPATH is set.
3898(unset CDPATH) >/dev/null 2>&1 && unset CDPATH
3899
3900sed_quote_subst='$sed_quote_subst'
3901double_quote_subst='$double_quote_subst'
3902delay_variable_subst='$delay_variable_subst'
3903_LT_CONFIG_STATUS_DECLARATIONS
3904LTCC='$LTCC'
3905LTCFLAGS='$LTCFLAGS'
3906compiler='$compiler_DEFAULT'
3907
3908# A function that is used when there is no print builtin or printf.
3909func_fallback_echo ()
3910{
3911  eval 'cat <<_LTECHO_EOF
3912\$[]1
3913_LTECHO_EOF'
3914}
3915
3916# Quote evaled strings.
3917for var in lt_decl_all_varnames([[ \
3918]], lt_decl_quote_varnames); do
3919    case \`eval \\\\\$ECHO \\\\""\\\\\$\$var"\\\\"\` in
3920    *[[\\\\\\\`\\"\\\$]]*)
3921      eval "lt_\$var=\\\\\\"\\\`\\\$ECHO \\"\\\$\$var\\" | \\\$SED \\"\\\$sed_quote_subst\\"\\\`\\\\\\"" ## exclude from sc_prohibit_nested_quotes
3922      ;;
3923    *)
3924      eval "lt_\$var=\\\\\\"\\\$\$var\\\\\\""
3925      ;;
3926    esac
3927done
3928
3929# Double-quote double-evaled strings.
3930for var in lt_decl_all_varnames([[ \
3931]], lt_decl_dquote_varnames); do
3932    case \`eval \\\\\$ECHO \\\\""\\\\\$\$var"\\\\"\` in
3933    *[[\\\\\\\`\\"\\\$]]*)
3934      eval "lt_\$var=\\\\\\"\\\`\\\$ECHO \\"\\\$\$var\\" | \\\$SED -e \\"\\\$double_quote_subst\\" -e \\"\\\$sed_quote_subst\\" -e \\"\\\$delay_variable_subst\\"\\\`\\\\\\"" ## exclude from sc_prohibit_nested_quotes
3935      ;;
3936    *)
3937      eval "lt_\$var=\\\\\\"\\\$\$var\\\\\\""
3938      ;;
3939    esac
3940done
3941
3942_LT_OUTPUT_LIBTOOL_INIT
3943])
3944
3945# _LT_GENERATED_FILE_INIT(FILE, [COMMENT])
3946# ------------------------------------
3947# Generate a child script FILE with all initialization necessary to
3948# reuse the environment learned by the parent script, and make the
3949# file executable.  If COMMENT is supplied, it is inserted after the
3950# '#!' sequence but before initialization text begins.  After this
3951# macro, additional text can be appended to FILE to form the body of
3952# the child script.  The macro ends with non-zero status if the
3953# file could not be fully written (such as if the disk is full).
3954m4_ifdef([AS_INIT_GENERATED],
3955[m4_defun([_LT_GENERATED_FILE_INIT],[AS_INIT_GENERATED($@)])],
3956[m4_defun([_LT_GENERATED_FILE_INIT],
3957[m4_require([AS_PREPARE])]dnl
3958[m4_pushdef([AS_MESSAGE_LOG_FD])]dnl
3959[lt_write_fail=0
3960cat >$1 <<_ASEOF || lt_write_fail=1
3961#! $SHELL
3962# Generated by $as_me.
3963$2
3964SHELL=\${CONFIG_SHELL-$SHELL}
3965export SHELL
3966_ASEOF
3967cat >>$1 <<\_ASEOF || lt_write_fail=1
3968AS_SHELL_SANITIZE
3969_AS_PREPARE
3970exec AS_MESSAGE_FD>&1
3971_ASEOF
3972test 0 = "$lt_write_fail" && chmod +x $1[]dnl
3973m4_popdef([AS_MESSAGE_LOG_FD])])])# _LT_GENERATED_FILE_INIT
3974
3975# LT_OUTPUT
3976# ---------
3977# This macro allows early generation of the libtool script (before
3978# AC_OUTPUT is called), incase it is used in configure for compilation
3979# tests.
3980AC_DEFUN([LT_OUTPUT],
3981[: ${CONFIG_LT=./config.lt}
3982AC_MSG_NOTICE([creating $CONFIG_LT])
3983_LT_GENERATED_FILE_INIT(["$CONFIG_LT"],
3984[# Run this file to recreate a libtool stub with the current configuration.])
3985
3986cat >>"$CONFIG_LT" <<\_LTEOF
3987lt_cl_silent=false
3988exec AS_MESSAGE_LOG_FD>>config.log
3989{
3990  echo
3991  AS_BOX([Running $as_me.])
3992} >&AS_MESSAGE_LOG_FD
3993
3994lt_cl_help="\
3995'$as_me' creates a local libtool stub from the current configuration,
3996for use in further configure time tests before the real libtool is
3997generated.
3998
3999Usage: $[0] [[OPTIONS]]
4000
4001  -h, --help      print this help, then exit
4002  -V, --version   print version number, then exit
4003  -q, --quiet     do not print progress messages
4004  -d, --debug     don't remove temporary files
4005
4006Report bugs to <bug-libtool@gnu.org>."
4007
4008lt_cl_version="\
4009m4_ifset([AC_PACKAGE_NAME], [AC_PACKAGE_NAME ])config.lt[]dnl
4010m4_ifset([AC_PACKAGE_VERSION], [ AC_PACKAGE_VERSION])
4011configured by $[0], generated by m4_PACKAGE_STRING.
4012
4013Copyright (C) 2011 Free Software Foundation, Inc.
4014This config.lt script is free software; the Free Software Foundation
4015gives unlimited permision to copy, distribute and modify it."
4016
4017while test 0 != $[#]
4018do
4019  case $[1] in
4020    --version | --v* | -V )
4021      echo "$lt_cl_version"; exit 0 ;;
4022    --help | --h* | -h )
4023      echo "$lt_cl_help"; exit 0 ;;
4024    --debug | --d* | -d )
4025      debug=: ;;
4026    --quiet | --q* | --silent | --s* | -q )
4027      lt_cl_silent=: ;;
4028
4029    -*) AC_MSG_ERROR([unrecognized option: $[1]
4030Try '$[0] --help' for more information.]) ;;
4031
4032    *) AC_MSG_ERROR([unrecognized argument: $[1]
4033Try '$[0] --help' for more information.]) ;;
4034  esac
4035  shift
4036done
4037
4038if $lt_cl_silent; then
4039  exec AS_MESSAGE_FD>/dev/null
4040fi
4041_LTEOF
4042
4043cat >>"$CONFIG_LT" <<_LTEOF
4044_LT_OUTPUT_LIBTOOL_COMMANDS_INIT
4045_LTEOF
4046
4047cat >>"$CONFIG_LT" <<\_LTEOF
4048AC_MSG_NOTICE([creating $ofile])
4049_LT_OUTPUT_LIBTOOL_COMMANDS
4050AS_EXIT(0)
4051_LTEOF
4052chmod +x "$CONFIG_LT"
4053
4054# configure is writing to config.log, but config.lt does its own redirection,
4055# appending to config.log, which fails on DOS, as config.log is still kept
4056# open by configure.  Here we exec the FD to /dev/null, effectively closing
4057# config.log, so it can be properly (re)opened and appended to by config.lt.
4058lt_cl_success=:
4059test yes = "$silent" &&
4060  lt_config_lt_args="$lt_config_lt_args --quiet"
4061exec AS_MESSAGE_LOG_FD>/dev/null
4062$SHELL "$CONFIG_LT" $lt_config_lt_args || lt_cl_success=false
4063exec AS_MESSAGE_LOG_FD>>config.log
4064$lt_cl_success || AS_EXIT(1)
4065])# LT_OUTPUT
4066
4067
4068# _LT_CONFIG(TAG)
4069# ---------------
4070# If TAG is the built-in tag, create an initial libtool script with a
4071# default configuration from the untagged config vars.  Otherwise add code
4072# to config.status for appending the configuration named by TAG from the
4073# matching tagged config vars.
4074m4_defun([_LT_CONFIG],
4075[m4_require([_LT_FILEUTILS_DEFAULTS])dnl
4076_LT_CONFIG_SAVE_COMMANDS([
4077  m4_define([_LT_TAG], m4_if([$1], [], [C], [$1]))dnl
4078  m4_if(_LT_TAG, [C], [
4079    # See if we are running on zsh, and set the options that allow our
4080    # commands through without removal of \ escapes.
4081    if test -n "${ZSH_VERSION+set}"; then
4082      setopt NO_GLOB_SUBST
4083    fi
4084
4085    cfgfile=${ofile}T
4086    trap "$RM \"$cfgfile\"; exit 1" 1 2 15
4087    $RM "$cfgfile"
4088
4089    cat <<_LT_EOF >> "$cfgfile"
4090#! $SHELL
4091# Generated automatically by $as_me ($PACKAGE) $VERSION
4092# Libtool was configured on host `(hostname || uname -n) 2>/dev/null | sed 1q`:
4093# NOTE: Changes made to this file will be lost: look at ltmain.sh.
4094
4095# Provide generalized library-building support services.
4096# Written by Gordon Matzigkeit, 1996
4097
4098_LT_COPYING
4099_LT_LIBTOOL_TAGS
4100
4101# Configured defaults for sys_lib_dlsearch_path munging.
4102: \${LT_SYS_LIBRARY_PATH="$configure_time_lt_sys_library_path"}
4103
4104# ### BEGIN LIBTOOL CONFIG
4105_LT_LIBTOOL_CONFIG_VARS
4106_LT_LIBTOOL_TAG_VARS
4107# ### END LIBTOOL CONFIG
4108
4109_LT_EOF
4110
4111    cat <<'_LT_EOF' >> "$cfgfile"
4112
4113# ### BEGIN FUNCTIONS SHARED WITH CONFIGURE
4114
4115_LT_PREPARE_MUNGE_PATH_LIST
4116_LT_PREPARE_CC_BASENAME
4117
4118# ### END FUNCTIONS SHARED WITH CONFIGURE
4119
4120_LT_EOF
4121
4122  case $host_os in
4123  aix3*)
4124    cat <<\_LT_EOF >> "$cfgfile"
4125# AIX sometimes has problems with the GCC collect2 program.  For some
4126# reason, if we set the COLLECT_NAMES environment variable, the problems
4127# vanish in a puff of smoke.
4128if test set != "${COLLECT_NAMES+set}"; then
4129  COLLECT_NAMES=
4130  export COLLECT_NAMES
4131fi
4132_LT_EOF
4133    ;;
4134  esac
4135
4136  _LT_PROG_LTMAIN
4137
4138  # We use sed instead of cat because bash on DJGPP gets confused if
4139  # if finds mixed CR/LF and LF-only lines.  Since sed operates in
4140  # text mode, it properly converts lines to CR/LF.  This bash problem
4141  # is reportedly fixed, but why not run on old versions too?
4142  $SED '$q' "$ltmain" >> "$cfgfile" \
4143     || (rm -f "$cfgfile"; exit 1)
4144
4145   mv -f "$cfgfile" "$ofile" ||
4146    (rm -f "$ofile" && cp "$cfgfile" "$ofile" && rm -f "$cfgfile")
4147  chmod +x "$ofile"
4148],
4149[cat <<_LT_EOF >> "$ofile"
4150
4151dnl Unfortunately we have to use $1 here, since _LT_TAG is not expanded
4152dnl in a comment (ie after a #).
4153# ### BEGIN LIBTOOL TAG CONFIG: $1
4154_LT_LIBTOOL_TAG_VARS(_LT_TAG)
4155# ### END LIBTOOL TAG CONFIG: $1
4156_LT_EOF
4157])dnl /m4_if
4158],
4159[m4_if([$1], [], [
4160    PACKAGE='$PACKAGE'
4161    VERSION='$VERSION'
4162    RM='$RM'
4163    ofile='$ofile'], [])
4164])dnl /_LT_CONFIG_SAVE_COMMANDS
4165])# _LT_CONFIG
4166
4167
4168# LT_SUPPORTED_TAG(TAG)
4169# ---------------------
4170# Trace this macro to discover what tags are supported by the libtool
4171# --tag option, using:
4172#    autoconf --trace 'LT_SUPPORTED_TAG:$1'
4173AC_DEFUN([LT_SUPPORTED_TAG], [])
4174
4175
4176# C support is built-in for now
4177m4_define([_LT_LANG_C_enabled], [])
4178m4_define([_LT_TAGS], [])
4179
4180
4181# LT_LANG(LANG)
4182# -------------
4183# Enable libtool support for the given language if not already enabled.
4184AC_DEFUN([LT_LANG],
4185[AC_BEFORE([$0], [LT_OUTPUT])dnl
4186m4_case([$1],
4187  [C],			[_LT_LANG(C)],
4188  [C++],		[_LT_LANG(CXX)],
4189  [Go],			[_LT_LANG(GO)],
4190  [Java],		[_LT_LANG(GCJ)],
4191  [Fortran 77],		[_LT_LANG(F77)],
4192  [Fortran],		[_LT_LANG(FC)],
4193  [Windows Resource],	[_LT_LANG(RC)],
4194  [m4_ifdef([_LT_LANG_]$1[_CONFIG],
4195    [_LT_LANG($1)],
4196    [m4_fatal([$0: unsupported language: "$1"])])])dnl
4197])# LT_LANG
4198
4199
4200# _LT_LANG(LANGNAME)
4201# ------------------
4202m4_defun([_LT_LANG],
4203[m4_ifdef([_LT_LANG_]$1[_enabled], [],
4204  [LT_SUPPORTED_TAG([$1])dnl
4205  m4_append([_LT_TAGS], [$1 ])dnl
4206  m4_define([_LT_LANG_]$1[_enabled], [])dnl
4207  _LT_LANG_$1_CONFIG($1)])dnl
4208])# _LT_LANG
4209
4210
4211m4_ifndef([AC_PROG_GO], [
4212# NOTE: This macro has been submitted for inclusion into   #
4213#  GNU Autoconf as AC_PROG_GO.  When it is available in    #
4214#  a released version of Autoconf we should remove this    #
4215#  macro and use it instead.                               #
4216m4_defun([AC_PROG_GO],
4217[AC_LANG_PUSH(Go)dnl
4218AC_ARG_VAR([GOC],     [Go compiler command])dnl
4219AC_ARG_VAR([GOFLAGS], [Go compiler flags])dnl
4220_AC_ARG_VAR_LDFLAGS()dnl
4221AC_CHECK_TOOL(GOC, gccgo)
4222if test -z "$GOC"; then
4223  if test -n "$ac_tool_prefix"; then
4224    AC_CHECK_PROG(GOC, [${ac_tool_prefix}gccgo], [${ac_tool_prefix}gccgo])
4225  fi
4226fi
4227if test -z "$GOC"; then
4228  AC_CHECK_PROG(GOC, gccgo, gccgo, false)
4229fi
4230])#m4_defun
4231])#m4_ifndef
4232
4233
4234# _LT_LANG_DEFAULT_CONFIG
4235# -----------------------
4236m4_defun([_LT_LANG_DEFAULT_CONFIG],
4237[AC_PROVIDE_IFELSE([AC_PROG_CXX],
4238  [LT_LANG(CXX)],
4239  [m4_define([AC_PROG_CXX], defn([AC_PROG_CXX])[LT_LANG(CXX)])])
4240
4241AC_PROVIDE_IFELSE([AC_PROG_F77],
4242  [LT_LANG(F77)],
4243  [m4_define([AC_PROG_F77], defn([AC_PROG_F77])[LT_LANG(F77)])])
4244
4245AC_PROVIDE_IFELSE([AC_PROG_FC],
4246  [LT_LANG(FC)],
4247  [m4_define([AC_PROG_FC], defn([AC_PROG_FC])[LT_LANG(FC)])])
4248
4249dnl The call to [A][M_PROG_GCJ] is quoted like that to stop aclocal
4250dnl pulling things in needlessly.
4251AC_PROVIDE_IFELSE([AC_PROG_GCJ],
4252  [LT_LANG(GCJ)],
4253  [AC_PROVIDE_IFELSE([A][M_PROG_GCJ],
4254    [LT_LANG(GCJ)],
4255    [AC_PROVIDE_IFELSE([LT_PROG_GCJ],
4256      [LT_LANG(GCJ)],
4257      [m4_ifdef([AC_PROG_GCJ],
4258	[m4_define([AC_PROG_GCJ], defn([AC_PROG_GCJ])[LT_LANG(GCJ)])])
4259       m4_ifdef([A][M_PROG_GCJ],
4260	[m4_define([A][M_PROG_GCJ], defn([A][M_PROG_GCJ])[LT_LANG(GCJ)])])
4261       m4_ifdef([LT_PROG_GCJ],
4262	[m4_define([LT_PROG_GCJ], defn([LT_PROG_GCJ])[LT_LANG(GCJ)])])])])])
4263
4264AC_PROVIDE_IFELSE([AC_PROG_GO],
4265  [LT_LANG(GO)],
4266  [m4_define([AC_PROG_GO], defn([AC_PROG_GO])[LT_LANG(GO)])])
4267
4268AC_PROVIDE_IFELSE([LT_PROG_RC],
4269  [LT_LANG(RC)],
4270  [m4_define([LT_PROG_RC], defn([LT_PROG_RC])[LT_LANG(RC)])])
4271])# _LT_LANG_DEFAULT_CONFIG
4272
4273# Obsolete macros:
4274AU_DEFUN([AC_LIBTOOL_CXX], [LT_LANG(C++)])
4275AU_DEFUN([AC_LIBTOOL_F77], [LT_LANG(Fortran 77)])
4276AU_DEFUN([AC_LIBTOOL_FC], [LT_LANG(Fortran)])
4277AU_DEFUN([AC_LIBTOOL_GCJ], [LT_LANG(Java)])
4278AU_DEFUN([AC_LIBTOOL_RC], [LT_LANG(Windows Resource)])
4279dnl aclocal-1.4 backwards compatibility:
4280dnl AC_DEFUN([AC_LIBTOOL_CXX], [])
4281dnl AC_DEFUN([AC_LIBTOOL_F77], [])
4282dnl AC_DEFUN([AC_LIBTOOL_FC], [])
4283dnl AC_DEFUN([AC_LIBTOOL_GCJ], [])
4284dnl AC_DEFUN([AC_LIBTOOL_RC], [])
4285
4286
4287# _LT_TAG_COMPILER
4288# ----------------
4289m4_defun([_LT_TAG_COMPILER],
4290[AC_REQUIRE([AC_PROG_CC])dnl
4291
4292_LT_DECL([LTCC], [CC], [1], [A C compiler])dnl
4293_LT_DECL([LTCFLAGS], [CFLAGS], [1], [LTCC compiler flags])dnl
4294_LT_TAGDECL([CC], [compiler], [1], [A language specific compiler])dnl
4295_LT_TAGDECL([with_gcc], [GCC], [0], [Is the compiler the GNU compiler?])dnl
4296
4297# If no C compiler was specified, use CC.
4298LTCC=${LTCC-"$CC"}
4299
4300# If no C compiler flags were specified, use CFLAGS.
4301LTCFLAGS=${LTCFLAGS-"$CFLAGS"}
4302
4303# Allow CC to be a program name with arguments.
4304compiler=$CC
4305])# _LT_TAG_COMPILER
4306
4307
4308# _LT_COMPILER_BOILERPLATE
4309# ------------------------
4310# Check for compiler boilerplate output or warnings with
4311# the simple compiler test code.
4312m4_defun([_LT_COMPILER_BOILERPLATE],
4313[m4_require([_LT_DECL_SED])dnl
4314ac_outfile=conftest.$ac_objext
4315echo "$lt_simple_compile_test_code" >conftest.$ac_ext
4316eval "$ac_compile" 2>&1 >/dev/null | $SED '/^$/d; /^ *+/d' >conftest.err
4317_lt_compiler_boilerplate=`cat conftest.err`
4318$RM conftest*
4319])# _LT_COMPILER_BOILERPLATE
4320
4321
4322# _LT_LINKER_BOILERPLATE
4323# ----------------------
4324# Check for linker boilerplate output or warnings with
4325# the simple link test code.
4326m4_defun([_LT_LINKER_BOILERPLATE],
4327[m4_require([_LT_DECL_SED])dnl
4328ac_outfile=conftest.$ac_objext
4329echo "$lt_simple_link_test_code" >conftest.$ac_ext
4330eval "$ac_link" 2>&1 >/dev/null | $SED '/^$/d; /^ *+/d' >conftest.err
4331_lt_linker_boilerplate=`cat conftest.err`
4332$RM -r conftest*
4333])# _LT_LINKER_BOILERPLATE
4334
4335# _LT_REQUIRED_DARWIN_CHECKS
4336# -------------------------
4337m4_defun_once([_LT_REQUIRED_DARWIN_CHECKS],[
4338  case $host_os in
4339    rhapsody* | darwin*)
4340    AC_CHECK_TOOL([DSYMUTIL], [dsymutil], [:])
4341    AC_CHECK_TOOL([NMEDIT], [nmedit], [:])
4342    AC_CHECK_TOOL([LIPO], [lipo], [:])
4343    AC_CHECK_TOOL([OTOOL], [otool], [:])
4344    AC_CHECK_TOOL([OTOOL64], [otool64], [:])
4345    _LT_DECL([], [DSYMUTIL], [1],
4346      [Tool to manipulate archived DWARF debug symbol files on Mac OS X])
4347    _LT_DECL([], [NMEDIT], [1],
4348      [Tool to change global to local symbols on Mac OS X])
4349    _LT_DECL([], [LIPO], [1],
4350      [Tool to manipulate fat objects and archives on Mac OS X])
4351    _LT_DECL([], [OTOOL], [1],
4352      [ldd/readelf like tool for Mach-O binaries on Mac OS X])
4353    _LT_DECL([], [OTOOL64], [1],
4354      [ldd/readelf like tool for 64 bit Mach-O binaries on Mac OS X 10.4])
4355
4356    AC_CACHE_CHECK([for -single_module linker flag],[lt_cv_apple_cc_single_mod],
4357      [lt_cv_apple_cc_single_mod=no
4358      if test -z "$LT_MULTI_MODULE"; then
4359	# By default we will add the -single_module flag. You can override
4360	# by either setting the environment variable LT_MULTI_MODULE
4361	# non-empty at configure time, or by adding -multi_module to the
4362	# link flags.
4363	rm -rf libconftest.dylib*
4364	echo "int foo(void){return 1;}" > conftest.c
4365	echo "$LTCC $LTCFLAGS $LDFLAGS -o libconftest.dylib \
4366-dynamiclib -Wl,-single_module conftest.c" >&AS_MESSAGE_LOG_FD
4367	$LTCC $LTCFLAGS $LDFLAGS -o libconftest.dylib \
4368	  -dynamiclib -Wl,-single_module conftest.c 2>conftest.err
4369        _lt_result=$?
4370	# If there is a non-empty error log, and "single_module"
4371	# appears in it, assume the flag caused a linker warning
4372        if test -s conftest.err && $GREP single_module conftest.err; then
4373	  cat conftest.err >&AS_MESSAGE_LOG_FD
4374	# Otherwise, if the output was created with a 0 exit code from
4375	# the compiler, it worked.
4376	elif test -f libconftest.dylib && test 0 = "$_lt_result"; then
4377	  lt_cv_apple_cc_single_mod=yes
4378	else
4379	  cat conftest.err >&AS_MESSAGE_LOG_FD
4380	fi
4381	rm -rf libconftest.dylib*
4382	rm -f conftest.*
4383      fi])
4384
4385    AC_CACHE_CHECK([for -exported_symbols_list linker flag],
4386      [lt_cv_ld_exported_symbols_list],
4387      [lt_cv_ld_exported_symbols_list=no
4388      save_LDFLAGS=$LDFLAGS
4389      echo "_main" > conftest.sym
4390      LDFLAGS="$LDFLAGS -Wl,-exported_symbols_list,conftest.sym"
4391      AC_LINK_IFELSE([AC_LANG_PROGRAM([],[])],
4392	[lt_cv_ld_exported_symbols_list=yes],
4393	[lt_cv_ld_exported_symbols_list=no])
4394	LDFLAGS=$save_LDFLAGS
4395    ])
4396
4397    AC_CACHE_CHECK([for -force_load linker flag],[lt_cv_ld_force_load],
4398      [lt_cv_ld_force_load=no
4399      cat > conftest.c << _LT_EOF
4400int forced_loaded() { return 2;}
4401_LT_EOF
4402      echo "$LTCC $LTCFLAGS -c -o conftest.o conftest.c" >&AS_MESSAGE_LOG_FD
4403      $LTCC $LTCFLAGS -c -o conftest.o conftest.c 2>&AS_MESSAGE_LOG_FD
4404      echo "$AR $AR_FLAGS libconftest.a conftest.o" >&AS_MESSAGE_LOG_FD
4405      $AR $AR_FLAGS libconftest.a conftest.o 2>&AS_MESSAGE_LOG_FD
4406      echo "$RANLIB libconftest.a" >&AS_MESSAGE_LOG_FD
4407      $RANLIB libconftest.a 2>&AS_MESSAGE_LOG_FD
4408      cat > conftest.c << _LT_EOF
4409int main() { return 0;}
4410_LT_EOF
4411      echo "$LTCC $LTCFLAGS $LDFLAGS -o conftest conftest.c -Wl,-force_load,./libconftest.a" >&AS_MESSAGE_LOG_FD
4412      $LTCC $LTCFLAGS $LDFLAGS -o conftest conftest.c -Wl,-force_load,./libconftest.a 2>conftest.err
4413      _lt_result=$?
4414      if test -s conftest.err && $GREP force_load conftest.err; then
4415	cat conftest.err >&AS_MESSAGE_LOG_FD
4416      elif test -f conftest && test 0 = "$_lt_result" && $GREP forced_load conftest >/dev/null 2>&1; then
4417	lt_cv_ld_force_load=yes
4418      else
4419	cat conftest.err >&AS_MESSAGE_LOG_FD
4420      fi
4421        rm -f conftest.err libconftest.a conftest conftest.c
4422        rm -rf conftest.dSYM
4423    ])
4424    case $host_os in
4425    rhapsody* | darwin1.[[012]])
4426      _lt_dar_allow_undefined='$wl-undefined ${wl}suppress' ;;
4427    darwin1.*)
4428      _lt_dar_allow_undefined='$wl-flat_namespace $wl-undefined ${wl}suppress' ;;
4429    darwin*)
4430      case $MACOSX_DEPLOYMENT_TARGET,$host in
4431        10.[[012]],*|,*powerpc*-darwin[[5-8]]*)
4432          _lt_dar_allow_undefined='$wl-flat_namespace $wl-undefined ${wl}suppress' ;;
4433        *)
4434          _lt_dar_allow_undefined='$wl-undefined ${wl}dynamic_lookup' ;;
4435      esac
4436    ;;
4437  esac
4438    if test yes = "$lt_cv_apple_cc_single_mod"; then
4439      _lt_dar_single_mod='$single_module'
4440    fi
4441    if test yes = "$lt_cv_ld_exported_symbols_list"; then
4442      _lt_dar_export_syms=' $wl-exported_symbols_list,$output_objdir/$libname-symbols.expsym'
4443    else
4444      _lt_dar_export_syms='~$NMEDIT -s $output_objdir/$libname-symbols.expsym $lib'
4445    fi
4446    if test : != "$DSYMUTIL" && test no = "$lt_cv_ld_force_load"; then
4447      _lt_dsymutil='~$DSYMUTIL $lib || :'
4448    else
4449      _lt_dsymutil=
4450    fi
4451    ;;
4452  esac
4453])
4454
4455
4456# _LT_DARWIN_LINKER_FEATURES([TAG])
4457# ---------------------------------
4458# Checks for linker and compiler features on darwin
4459m4_defun([_LT_DARWIN_LINKER_FEATURES],
4460[
4461  m4_require([_LT_REQUIRED_DARWIN_CHECKS])
4462  _LT_TAGVAR(archive_cmds_need_lc, $1)=no
4463  _LT_TAGVAR(hardcode_direct, $1)=no
4464  _LT_TAGVAR(hardcode_automatic, $1)=yes
4465  _LT_TAGVAR(hardcode_shlibpath_var, $1)=unsupported
4466  if test yes = "$lt_cv_ld_force_load"; then
4467    _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\"`'
4468    m4_case([$1], [F77], [_LT_TAGVAR(compiler_needs_object, $1)=yes],
4469                  [FC],  [_LT_TAGVAR(compiler_needs_object, $1)=yes])
4470  else
4471    _LT_TAGVAR(whole_archive_flag_spec, $1)=''
4472  fi
4473  _LT_TAGVAR(link_all_deplibs, $1)=yes
4474  _LT_TAGVAR(allow_undefined_flag, $1)=$_lt_dar_allow_undefined
4475  case $cc_basename in
4476     ifort*|nagfor*) _lt_dar_can_shared=yes ;;
4477     *) _lt_dar_can_shared=$GCC ;;
4478  esac
4479  if test yes = "$_lt_dar_can_shared"; then
4480    output_verbose_link_cmd=func_echo_all
4481    _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"
4482    _LT_TAGVAR(module_cmds, $1)="\$CC \$allow_undefined_flag -o \$lib -bundle \$libobjs \$deplibs \$compiler_flags$_lt_dsymutil"
4483    _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"
4484    _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"
4485    m4_if([$1], [CXX],
4486[   if test yes != "$lt_cv_apple_cc_single_mod"; then
4487      _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"
4488      _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"
4489    fi
4490],[])
4491  else
4492  _LT_TAGVAR(ld_shlibs, $1)=no
4493  fi
4494])
4495
4496# _LT_SYS_MODULE_PATH_AIX([TAGNAME])
4497# ----------------------------------
4498# Links a minimal program and checks the executable
4499# for the system default hardcoded library path. In most cases,
4500# this is /usr/lib:/lib, but when the MPI compilers are used
4501# the location of the communication and MPI libs are included too.
4502# If we don't find anything, use the default library path according
4503# to the aix ld manual.
4504# Store the results from the different compilers for each TAGNAME.
4505# Allow to override them for all tags through lt_cv_aix_libpath.
4506m4_defun([_LT_SYS_MODULE_PATH_AIX],
4507[m4_require([_LT_DECL_SED])dnl
4508if test set = "${lt_cv_aix_libpath+set}"; then
4509  aix_libpath=$lt_cv_aix_libpath
4510else
4511  AC_CACHE_VAL([_LT_TAGVAR([lt_cv_aix_libpath_], [$1])],
4512  [AC_LINK_IFELSE([AC_LANG_PROGRAM],[
4513  lt_aix_libpath_sed='[
4514      /Import File Strings/,/^$/ {
4515	  /^0/ {
4516	      s/^0  *\([^ ]*\) *$/\1/
4517	      p
4518	  }
4519      }]'
4520  _LT_TAGVAR([lt_cv_aix_libpath_], [$1])=`dump -H conftest$ac_exeext 2>/dev/null | $SED -n -e "$lt_aix_libpath_sed"`
4521  # Check for a 64-bit object if we didn't find anything.
4522  if test -z "$_LT_TAGVAR([lt_cv_aix_libpath_], [$1])"; then
4523    _LT_TAGVAR([lt_cv_aix_libpath_], [$1])=`dump -HX64 conftest$ac_exeext 2>/dev/null | $SED -n -e "$lt_aix_libpath_sed"`
4524  fi],[])
4525  if test -z "$_LT_TAGVAR([lt_cv_aix_libpath_], [$1])"; then
4526    _LT_TAGVAR([lt_cv_aix_libpath_], [$1])=/usr/lib:/lib
4527  fi
4528  ])
4529  aix_libpath=$_LT_TAGVAR([lt_cv_aix_libpath_], [$1])
4530fi
4531])# _LT_SYS_MODULE_PATH_AIX
4532
4533
4534# _LT_SHELL_INIT(ARG)
4535# -------------------
4536m4_define([_LT_SHELL_INIT],
4537[m4_divert_text([M4SH-INIT], [$1
4538])])# _LT_SHELL_INIT
4539
4540
4541
4542# _LT_PROG_ECHO_BACKSLASH
4543# -----------------------
4544# Find how we can fake an echo command that does not interpret backslash.
4545# In particular, with Autoconf 2.60 or later we add some code to the start
4546# of the generated configure script that will find a shell with a builtin
4547# printf (that we can use as an echo command).
4548m4_defun([_LT_PROG_ECHO_BACKSLASH],
4549[ECHO='\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\'
4550ECHO=$ECHO$ECHO$ECHO$ECHO$ECHO
4551ECHO=$ECHO$ECHO$ECHO$ECHO$ECHO$ECHO
4552
4553AC_MSG_CHECKING([how to print strings])
4554# Test print first, because it will be a builtin if present.
4555if test "X`( print -r -- -n ) 2>/dev/null`" = X-n && \
4556   test "X`print -r -- $ECHO 2>/dev/null`" = "X$ECHO"; then
4557  ECHO='print -r --'
4558elif test "X`printf %s $ECHO 2>/dev/null`" = "X$ECHO"; then
4559  ECHO='printf %s\n'
4560else
4561  # Use this function as a fallback that always works.
4562  func_fallback_echo ()
4563  {
4564    eval 'cat <<_LTECHO_EOF
4565$[]1
4566_LTECHO_EOF'
4567  }
4568  ECHO='func_fallback_echo'
4569fi
4570
4571# func_echo_all arg...
4572# Invoke $ECHO with all args, space-separated.
4573func_echo_all ()
4574{
4575    $ECHO "$*"
4576}
4577
4578case $ECHO in
4579  printf*) AC_MSG_RESULT([printf]) ;;
4580  print*) AC_MSG_RESULT([print -r]) ;;
4581  *) AC_MSG_RESULT([cat]) ;;
4582esac
4583
4584m4_ifdef([_AS_DETECT_SUGGESTED],
4585[_AS_DETECT_SUGGESTED([
4586  test -n "${ZSH_VERSION+set}${BASH_VERSION+set}" || (
4587    ECHO='\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\'
4588    ECHO=$ECHO$ECHO$ECHO$ECHO$ECHO
4589    ECHO=$ECHO$ECHO$ECHO$ECHO$ECHO$ECHO
4590    PATH=/empty FPATH=/empty; export PATH FPATH
4591    test "X`printf %s $ECHO`" = "X$ECHO" \
4592      || test "X`print -r -- $ECHO`" = "X$ECHO" )])])
4593
4594_LT_DECL([], [SHELL], [1], [Shell to use when invoking shell scripts])
4595_LT_DECL([], [ECHO], [1], [An echo program that protects backslashes])
4596])# _LT_PROG_ECHO_BACKSLASH
4597
4598
4599# _LT_WITH_SYSROOT
4600# ----------------
4601AC_DEFUN([_LT_WITH_SYSROOT],
4602[m4_require([_LT_DECL_SED])dnl
4603AC_MSG_CHECKING([for sysroot])
4604AC_ARG_WITH([sysroot],
4605[AS_HELP_STRING([--with-sysroot@<:@=DIR@:>@],
4606  [Search for dependent libraries within DIR (or the compiler's sysroot
4607   if not specified).])],
4608[], [with_sysroot=no])
4609
4610dnl lt_sysroot will always be passed unquoted.  We quote it here
4611dnl in case the user passed a directory name.
4612lt_sysroot=
4613case $with_sysroot in #(
4614 yes)
4615   if test yes = "$GCC"; then
4616     lt_sysroot=`$CC --print-sysroot 2>/dev/null`
4617   fi
4618   ;; #(
4619 /*)
4620   lt_sysroot=`echo "$with_sysroot" | $SED -e "$sed_quote_subst"`
4621   ;; #(
4622 no|'')
4623   ;; #(
4624 *)
4625   AC_MSG_RESULT([$with_sysroot])
4626   AC_MSG_ERROR([The sysroot must be an absolute path.])
4627   ;;
4628esac
4629
4630 AC_MSG_RESULT([${lt_sysroot:-no}])
4631_LT_DECL([], [lt_sysroot], [0], [The root where to search for ]dnl
4632[dependent libraries, and where our libraries should be installed.])])
4633
4634# _LT_ENABLE_LOCK
4635# ---------------
4636m4_defun([_LT_ENABLE_LOCK],
4637[AC_ARG_ENABLE([libtool-lock],
4638  [AS_HELP_STRING([--disable-libtool-lock],
4639    [avoid locking (might break parallel builds)])])
4640test no = "$enable_libtool_lock" || enable_libtool_lock=yes
4641
4642# Some flags need to be propagated to the compiler or linker for good
4643# libtool support.
4644case $host in
4645ia64-*-hpux*)
4646  # Find out what ABI is being produced by ac_compile, and set mode
4647  # options accordingly.
4648  echo 'int i;' > conftest.$ac_ext
4649  if AC_TRY_EVAL(ac_compile); then
4650    case `$FILECMD conftest.$ac_objext` in
4651      *ELF-32*)
4652	HPUX_IA64_MODE=32
4653	;;
4654      *ELF-64*)
4655	HPUX_IA64_MODE=64
4656	;;
4657    esac
4658  fi
4659  rm -rf conftest*
4660  ;;
4661*-*-irix6*)
4662  # Find out what ABI is being produced by ac_compile, and set linker
4663  # options accordingly.
4664  echo '[#]line '$LINENO' "configure"' > conftest.$ac_ext
4665  if AC_TRY_EVAL(ac_compile); then
4666    if test yes = "$lt_cv_prog_gnu_ld"; then
4667      case `$FILECMD conftest.$ac_objext` in
4668	*32-bit*)
4669	  LD="${LD-ld} -melf32bsmip"
4670	  ;;
4671	*N32*)
4672	  LD="${LD-ld} -melf32bmipn32"
4673	  ;;
4674	*64-bit*)
4675	  LD="${LD-ld} -melf64bmip"
4676	;;
4677      esac
4678    else
4679      case `$FILECMD conftest.$ac_objext` in
4680	*32-bit*)
4681	  LD="${LD-ld} -32"
4682	  ;;
4683	*N32*)
4684	  LD="${LD-ld} -n32"
4685	  ;;
4686	*64-bit*)
4687	  LD="${LD-ld} -64"
4688	  ;;
4689      esac
4690    fi
4691  fi
4692  rm -rf conftest*
4693  ;;
4694
4695mips64*-*linux*)
4696  # Find out what ABI is being produced by ac_compile, and set linker
4697  # options accordingly.
4698  echo '[#]line '$LINENO' "configure"' > conftest.$ac_ext
4699  if AC_TRY_EVAL(ac_compile); then
4700    emul=elf
4701    case `$FILECMD conftest.$ac_objext` in
4702      *32-bit*)
4703	emul="${emul}32"
4704	;;
4705      *64-bit*)
4706	emul="${emul}64"
4707	;;
4708    esac
4709    case `$FILECMD conftest.$ac_objext` in
4710      *MSB*)
4711	emul="${emul}btsmip"
4712	;;
4713      *LSB*)
4714	emul="${emul}ltsmip"
4715	;;
4716    esac
4717    case `$FILECMD conftest.$ac_objext` in
4718      *N32*)
4719	emul="${emul}n32"
4720	;;
4721    esac
4722    LD="${LD-ld} -m $emul"
4723  fi
4724  rm -rf conftest*
4725  ;;
4726
4727x86_64-*kfreebsd*-gnu|x86_64-*linux*|powerpc*-*linux*| \
4728s390*-*linux*|s390*-*tpf*|sparc*-*linux*)
4729  # Find out what ABI is being produced by ac_compile, and set linker
4730  # options accordingly.  Note that the listed cases only cover the
4731  # situations where additional linker options are needed (such as when
4732  # doing 32-bit compilation for a host where ld defaults to 64-bit, or
4733  # vice versa); the common cases where no linker options are needed do
4734  # not appear in the list.
4735  echo 'int i;' > conftest.$ac_ext
4736  if AC_TRY_EVAL(ac_compile); then
4737    case `$FILECMD conftest.o` in
4738      *32-bit*)
4739	case $host in
4740	  x86_64-*kfreebsd*-gnu)
4741	    LD="${LD-ld} -m elf_i386_fbsd"
4742	    ;;
4743	  x86_64-*linux*)
4744	    case `$FILECMD conftest.o` in
4745	      *x86-64*)
4746		LD="${LD-ld} -m elf32_x86_64"
4747		;;
4748	      *)
4749		LD="${LD-ld} -m elf_i386"
4750		;;
4751	    esac
4752	    ;;
4753	  powerpc64le-*linux*)
4754	    LD="${LD-ld} -m elf32lppclinux"
4755	    ;;
4756	  powerpc64-*linux*)
4757	    LD="${LD-ld} -m elf32ppclinux"
4758	    ;;
4759	  s390x-*linux*)
4760	    LD="${LD-ld} -m elf_s390"
4761	    ;;
4762	  sparc64-*linux*)
4763	    LD="${LD-ld} -m elf32_sparc"
4764	    ;;
4765	esac
4766	;;
4767      *64-bit*)
4768	case $host in
4769	  x86_64-*kfreebsd*-gnu)
4770	    LD="${LD-ld} -m elf_x86_64_fbsd"
4771	    ;;
4772	  x86_64-*linux*)
4773	    LD="${LD-ld} -m elf_x86_64"
4774	    ;;
4775	  powerpcle-*linux*)
4776	    LD="${LD-ld} -m elf64lppc"
4777	    ;;
4778	  powerpc-*linux*)
4779	    LD="${LD-ld} -m elf64ppc"
4780	    ;;
4781	  s390*-*linux*|s390*-*tpf*)
4782	    LD="${LD-ld} -m elf64_s390"
4783	    ;;
4784	  sparc*-*linux*)
4785	    LD="${LD-ld} -m elf64_sparc"
4786	    ;;
4787	esac
4788	;;
4789    esac
4790  fi
4791  rm -rf conftest*
4792  ;;
4793
4794*-*-sco3.2v5*)
4795  # On SCO OpenServer 5, we need -belf to get full-featured binaries.
4796  SAVE_CFLAGS=$CFLAGS
4797  CFLAGS="$CFLAGS -belf"
4798  AC_CACHE_CHECK([whether the C compiler needs -belf], lt_cv_cc_needs_belf,
4799    [AC_LANG_PUSH(C)
4800     AC_LINK_IFELSE([AC_LANG_PROGRAM([[]],[[]])],[lt_cv_cc_needs_belf=yes],[lt_cv_cc_needs_belf=no])
4801     AC_LANG_POP])
4802  if test yes != "$lt_cv_cc_needs_belf"; then
4803    # this is probably gcc 2.8.0, egcs 1.0 or newer; no need for -belf
4804    CFLAGS=$SAVE_CFLAGS
4805  fi
4806  ;;
4807*-*solaris*)
4808  # Find out what ABI is being produced by ac_compile, and set linker
4809  # options accordingly.
4810  echo 'int i;' > conftest.$ac_ext
4811  if AC_TRY_EVAL(ac_compile); then
4812    case `$FILECMD conftest.o` in
4813    *64-bit*)
4814      case $lt_cv_prog_gnu_ld in
4815      yes*)
4816        case $host in
4817        i?86-*-solaris*|x86_64-*-solaris*)
4818          LD="${LD-ld} -m elf_x86_64"
4819          ;;
4820        sparc*-*-solaris*)
4821          LD="${LD-ld} -m elf64_sparc"
4822          ;;
4823        esac
4824        # GNU ld 2.21 introduced _sol2 emulations.  Use them if available.
4825        if ${LD-ld} -V | grep _sol2 >/dev/null 2>&1; then
4826          LD=${LD-ld}_sol2
4827        fi
4828        ;;
4829      *)
4830	if ${LD-ld} -64 -r -o conftest2.o conftest.o >/dev/null 2>&1; then
4831	  LD="${LD-ld} -64"
4832	fi
4833	;;
4834      esac
4835      ;;
4836    esac
4837  fi
4838  rm -rf conftest*
4839  ;;
4840esac
4841
4842need_locks=$enable_libtool_lock
4843])# _LT_ENABLE_LOCK
4844
4845
4846# _LT_PROG_AR
4847# -----------
4848m4_defun([_LT_PROG_AR],
4849[AC_CHECK_TOOLS(AR, [ar], false)
4850: ${AR=ar}
4851_LT_DECL([], [AR], [1], [The archiver])
4852
4853# Use ARFLAGS variable as AR's operation code to sync the variable naming with
4854# Automake.  If both AR_FLAGS and ARFLAGS are specified, AR_FLAGS should have
4855# higher priority because thats what people were doing historically (setting
4856# ARFLAGS for automake and AR_FLAGS for libtool).  FIXME: Make the AR_FLAGS
4857# variable obsoleted/removed.
4858
4859test ${AR_FLAGS+y} || AR_FLAGS=${ARFLAGS-cr}
4860lt_ar_flags=$AR_FLAGS
4861_LT_DECL([], [lt_ar_flags], [0], [Flags to create an archive (by configure)])
4862
4863# Make AR_FLAGS overridable by 'make ARFLAGS='.  Don't try to run-time override
4864# by AR_FLAGS because that was never working and AR_FLAGS is about to die.
4865_LT_DECL([], [AR_FLAGS], [\@S|@{ARFLAGS-"\@S|@lt_ar_flags"}],
4866         [Flags to create an archive])
4867
4868AC_CACHE_CHECK([for archiver @FILE support], [lt_cv_ar_at_file],
4869  [lt_cv_ar_at_file=no
4870   AC_COMPILE_IFELSE([AC_LANG_PROGRAM],
4871     [echo conftest.$ac_objext > conftest.lst
4872      lt_ar_try='$AR $AR_FLAGS libconftest.a @conftest.lst >&AS_MESSAGE_LOG_FD'
4873      AC_TRY_EVAL([lt_ar_try])
4874      if test 0 -eq "$ac_status"; then
4875	# Ensure the archiver fails upon bogus file names.
4876	rm -f conftest.$ac_objext libconftest.a
4877	AC_TRY_EVAL([lt_ar_try])
4878	if test 0 -ne "$ac_status"; then
4879          lt_cv_ar_at_file=@
4880        fi
4881      fi
4882      rm -f conftest.* libconftest.a
4883     ])
4884  ])
4885
4886if test no = "$lt_cv_ar_at_file"; then
4887  archiver_list_spec=
4888else
4889  archiver_list_spec=$lt_cv_ar_at_file
4890fi
4891_LT_DECL([], [archiver_list_spec], [1],
4892  [How to feed a file listing to the archiver])
4893])# _LT_PROG_AR
4894
4895
4896# _LT_CMD_OLD_ARCHIVE
4897# -------------------
4898m4_defun([_LT_CMD_OLD_ARCHIVE],
4899[_LT_PROG_AR
4900
4901AC_CHECK_TOOL(STRIP, strip, :)
4902test -z "$STRIP" && STRIP=:
4903_LT_DECL([], [STRIP], [1], [A symbol stripping program])
4904
4905AC_CHECK_TOOL(RANLIB, ranlib, :)
4906test -z "$RANLIB" && RANLIB=:
4907_LT_DECL([], [RANLIB], [1],
4908    [Commands used to install an old-style archive])
4909
4910# Determine commands to create old-style static archives.
4911old_archive_cmds='$AR $AR_FLAGS $oldlib$oldobjs'
4912old_postinstall_cmds='chmod 644 $oldlib'
4913old_postuninstall_cmds=
4914
4915if test -n "$RANLIB"; then
4916  case $host_os in
4917  bitrig* | openbsd*)
4918    old_postinstall_cmds="$old_postinstall_cmds~\$RANLIB -t \$tool_oldlib"
4919    ;;
4920  *)
4921    old_postinstall_cmds="$old_postinstall_cmds~\$RANLIB \$tool_oldlib"
4922    ;;
4923  esac
4924  old_archive_cmds="$old_archive_cmds~\$RANLIB \$tool_oldlib"
4925fi
4926
4927case $host_os in
4928  darwin*)
4929    lock_old_archive_extraction=yes ;;
4930  *)
4931    lock_old_archive_extraction=no ;;
4932esac
4933_LT_DECL([], [old_postinstall_cmds], [2])
4934_LT_DECL([], [old_postuninstall_cmds], [2])
4935_LT_TAGDECL([], [old_archive_cmds], [2],
4936    [Commands used to build an old-style archive])
4937_LT_DECL([], [lock_old_archive_extraction], [0],
4938    [Whether to use a lock for old archive extraction])
4939])# _LT_CMD_OLD_ARCHIVE
4940
4941
4942# _LT_COMPILER_OPTION(MESSAGE, VARIABLE-NAME, FLAGS,
4943#		[OUTPUT-FILE], [ACTION-SUCCESS], [ACTION-FAILURE])
4944# ----------------------------------------------------------------
4945# Check whether the given compiler option works
4946AC_DEFUN([_LT_COMPILER_OPTION],
4947[m4_require([_LT_FILEUTILS_DEFAULTS])dnl
4948m4_require([_LT_DECL_SED])dnl
4949AC_CACHE_CHECK([$1], [$2],
4950  [$2=no
4951   m4_if([$4], , [ac_outfile=conftest.$ac_objext], [ac_outfile=$4])
4952   echo "$lt_simple_compile_test_code" > conftest.$ac_ext
4953   lt_compiler_flag="$3"  ## exclude from sc_useless_quotes_in_assignment
4954   # Insert the option either (1) after the last *FLAGS variable, or
4955   # (2) before a word containing "conftest.", or (3) at the end.
4956   # Note that $ac_compile itself does not contain backslashes and begins
4957   # with a dollar sign (not a hyphen), so the echo should work correctly.
4958   # The option is referenced via a variable to avoid confusing sed.
4959   lt_compile=`echo "$ac_compile" | $SED \
4960   -e 's:.*FLAGS}\{0,1\} :&$lt_compiler_flag :; t' \
4961   -e 's: [[^ ]]*conftest\.: $lt_compiler_flag&:; t' \
4962   -e 's:$: $lt_compiler_flag:'`
4963   (eval echo "\"\$as_me:$LINENO: $lt_compile\"" >&AS_MESSAGE_LOG_FD)
4964   (eval "$lt_compile" 2>conftest.err)
4965   ac_status=$?
4966   cat conftest.err >&AS_MESSAGE_LOG_FD
4967   echo "$as_me:$LINENO: \$? = $ac_status" >&AS_MESSAGE_LOG_FD
4968   if (exit $ac_status) && test -s "$ac_outfile"; then
4969     # The compiler can only warn and ignore the option if not recognized
4970     # So say no if there are warnings other than the usual output.
4971     $ECHO "$_lt_compiler_boilerplate" | $SED '/^$/d' >conftest.exp
4972     $SED '/^$/d; /^ *+/d' conftest.err >conftest.er2
4973     if test ! -s conftest.er2 || diff conftest.exp conftest.er2 >/dev/null; then
4974       $2=yes
4975     fi
4976   fi
4977   $RM conftest*
4978])
4979
4980if test yes = "[$]$2"; then
4981    m4_if([$5], , :, [$5])
4982else
4983    m4_if([$6], , :, [$6])
4984fi
4985])# _LT_COMPILER_OPTION
4986
4987# Old name:
4988AU_ALIAS([AC_LIBTOOL_COMPILER_OPTION], [_LT_COMPILER_OPTION])
4989dnl aclocal-1.4 backwards compatibility:
4990dnl AC_DEFUN([AC_LIBTOOL_COMPILER_OPTION], [])
4991
4992
4993# _LT_LINKER_OPTION(MESSAGE, VARIABLE-NAME, FLAGS,
4994#                  [ACTION-SUCCESS], [ACTION-FAILURE])
4995# ----------------------------------------------------
4996# Check whether the given linker option works
4997AC_DEFUN([_LT_LINKER_OPTION],
4998[m4_require([_LT_FILEUTILS_DEFAULTS])dnl
4999m4_require([_LT_DECL_SED])dnl
5000AC_CACHE_CHECK([$1], [$2],
5001  [$2=no
5002   save_LDFLAGS=$LDFLAGS
5003   LDFLAGS="$LDFLAGS $3"
5004   echo "$lt_simple_link_test_code" > conftest.$ac_ext
5005   if (eval $ac_link 2>conftest.err) && test -s conftest$ac_exeext; then
5006     # The linker can only warn and ignore the option if not recognized
5007     # So say no if there are warnings
5008     if test -s conftest.err; then
5009       # Append any errors to the config.log.
5010       cat conftest.err 1>&AS_MESSAGE_LOG_FD
5011       $ECHO "$_lt_linker_boilerplate" | $SED '/^$/d' > conftest.exp
5012       $SED '/^$/d; /^ *+/d' conftest.err >conftest.er2
5013       if diff conftest.exp conftest.er2 >/dev/null; then
5014         $2=yes
5015       fi
5016     else
5017       $2=yes
5018     fi
5019   fi
5020   $RM -r conftest*
5021   LDFLAGS=$save_LDFLAGS
5022])
5023
5024if test yes = "[$]$2"; then
5025    m4_if([$4], , :, [$4])
5026else
5027    m4_if([$5], , :, [$5])
5028fi
5029])# _LT_LINKER_OPTION
5030
5031# Old name:
5032AU_ALIAS([AC_LIBTOOL_LINKER_OPTION], [_LT_LINKER_OPTION])
5033dnl aclocal-1.4 backwards compatibility:
5034dnl AC_DEFUN([AC_LIBTOOL_LINKER_OPTION], [])
5035
5036
5037# LT_CMD_MAX_LEN
5038#---------------
5039AC_DEFUN([LT_CMD_MAX_LEN],
5040[AC_REQUIRE([AC_CANONICAL_HOST])dnl
5041# find the maximum length of command line arguments
5042AC_MSG_CHECKING([the maximum length of command line arguments])
5043AC_CACHE_VAL([lt_cv_sys_max_cmd_len], [dnl
5044  i=0
5045  teststring=ABCD
5046
5047  case $build_os in
5048  msdosdjgpp*)
5049    # On DJGPP, this test can blow up pretty badly due to problems in libc
5050    # (any single argument exceeding 2000 bytes causes a buffer overrun
5051    # during glob expansion).  Even if it were fixed, the result of this
5052    # check would be larger than it should be.
5053    lt_cv_sys_max_cmd_len=12288;    # 12K is about right
5054    ;;
5055
5056  gnu*)
5057    # Under GNU Hurd, this test is not required because there is
5058    # no limit to the length of command line arguments.
5059    # Libtool will interpret -1 as no limit whatsoever
5060    lt_cv_sys_max_cmd_len=-1;
5061    ;;
5062
5063  cygwin* | mingw* | cegcc*)
5064    # On Win9x/ME, this test blows up -- it succeeds, but takes
5065    # about 5 minutes as the teststring grows exponentially.
5066    # Worse, since 9x/ME are not pre-emptively multitasking,
5067    # you end up with a "frozen" computer, even though with patience
5068    # the test eventually succeeds (with a max line length of 256k).
5069    # Instead, let's just punt: use the minimum linelength reported by
5070    # all of the supported platforms: 8192 (on NT/2K/XP).
5071    lt_cv_sys_max_cmd_len=8192;
5072    ;;
5073
5074  mint*)
5075    # On MiNT this can take a long time and run out of memory.
5076    lt_cv_sys_max_cmd_len=8192;
5077    ;;
5078
5079  amigaos*)
5080    # On AmigaOS with pdksh, this test takes hours, literally.
5081    # So we just punt and use a minimum line length of 8192.
5082    lt_cv_sys_max_cmd_len=8192;
5083    ;;
5084
5085  bitrig* | darwin* | dragonfly* | freebsd* | midnightbsd* | netbsd* | openbsd*)
5086    # This has been around since 386BSD, at least.  Likely further.
5087    if test -x /sbin/sysctl; then
5088      lt_cv_sys_max_cmd_len=`/sbin/sysctl -n kern.argmax`
5089    elif test -x /usr/sbin/sysctl; then
5090      lt_cv_sys_max_cmd_len=`/usr/sbin/sysctl -n kern.argmax`
5091    else
5092      lt_cv_sys_max_cmd_len=65536	# usable default for all BSDs
5093    fi
5094    # And add a safety zone
5095    lt_cv_sys_max_cmd_len=`expr $lt_cv_sys_max_cmd_len \/ 4`
5096    lt_cv_sys_max_cmd_len=`expr $lt_cv_sys_max_cmd_len \* 3`
5097    ;;
5098
5099  interix*)
5100    # We know the value 262144 and hardcode it with a safety zone (like BSD)
5101    lt_cv_sys_max_cmd_len=196608
5102    ;;
5103
5104  os2*)
5105    # The test takes a long time on OS/2.
5106    lt_cv_sys_max_cmd_len=8192
5107    ;;
5108
5109  osf*)
5110    # Dr. Hans Ekkehard Plesser reports seeing a kernel panic running configure
5111    # due to this test when exec_disable_arg_limit is 1 on Tru64. It is not
5112    # nice to cause kernel panics so lets avoid the loop below.
5113    # First set a reasonable default.
5114    lt_cv_sys_max_cmd_len=16384
5115    #
5116    if test -x /sbin/sysconfig; then
5117      case `/sbin/sysconfig -q proc exec_disable_arg_limit` in
5118        *1*) lt_cv_sys_max_cmd_len=-1 ;;
5119      esac
5120    fi
5121    ;;
5122  sco3.2v5*)
5123    lt_cv_sys_max_cmd_len=102400
5124    ;;
5125  sysv5* | sco5v6* | sysv4.2uw2*)
5126    kargmax=`grep ARG_MAX /etc/conf/cf.d/stune 2>/dev/null`
5127    if test -n "$kargmax"; then
5128      lt_cv_sys_max_cmd_len=`echo $kargmax | $SED 's/.*[[	 ]]//'`
5129    else
5130      lt_cv_sys_max_cmd_len=32768
5131    fi
5132    ;;
5133  *)
5134    lt_cv_sys_max_cmd_len=`(getconf ARG_MAX) 2> /dev/null`
5135    if test -n "$lt_cv_sys_max_cmd_len" && \
5136       test undefined != "$lt_cv_sys_max_cmd_len"; then
5137      lt_cv_sys_max_cmd_len=`expr $lt_cv_sys_max_cmd_len \/ 4`
5138      lt_cv_sys_max_cmd_len=`expr $lt_cv_sys_max_cmd_len \* 3`
5139    else
5140      # Make teststring a little bigger before we do anything with it.
5141      # a 1K string should be a reasonable start.
5142      for i in 1 2 3 4 5 6 7 8; do
5143        teststring=$teststring$teststring
5144      done
5145      SHELL=${SHELL-${CONFIG_SHELL-/bin/sh}}
5146      # If test is not a shell built-in, we'll probably end up computing a
5147      # maximum length that is only half of the actual maximum length, but
5148      # we can't tell.
5149      while { test X`env echo "$teststring$teststring" 2>/dev/null` \
5150	         = "X$teststring$teststring"; } >/dev/null 2>&1 &&
5151	      test 17 != "$i" # 1/2 MB should be enough
5152      do
5153        i=`expr $i + 1`
5154        teststring=$teststring$teststring
5155      done
5156      # Only check the string length outside the loop.
5157      lt_cv_sys_max_cmd_len=`expr "X$teststring" : ".*" 2>&1`
5158      teststring=
5159      # Add a significant safety factor because C++ compilers can tack on
5160      # massive amounts of additional arguments before passing them to the
5161      # linker.  It appears as though 1/2 is a usable value.
5162      lt_cv_sys_max_cmd_len=`expr $lt_cv_sys_max_cmd_len \/ 2`
5163    fi
5164    ;;
5165  esac
5166])
5167if test -n "$lt_cv_sys_max_cmd_len"; then
5168  AC_MSG_RESULT($lt_cv_sys_max_cmd_len)
5169else
5170  AC_MSG_RESULT(none)
5171fi
5172max_cmd_len=$lt_cv_sys_max_cmd_len
5173_LT_DECL([], [max_cmd_len], [0],
5174    [What is the maximum length of a command?])
5175])# LT_CMD_MAX_LEN
5176
5177# Old name:
5178AU_ALIAS([AC_LIBTOOL_SYS_MAX_CMD_LEN], [LT_CMD_MAX_LEN])
5179dnl aclocal-1.4 backwards compatibility:
5180dnl AC_DEFUN([AC_LIBTOOL_SYS_MAX_CMD_LEN], [])
5181
5182
5183# _LT_HEADER_DLFCN
5184# ----------------
5185m4_defun([_LT_HEADER_DLFCN],
5186[AC_CHECK_HEADERS([dlfcn.h], [], [], [AC_INCLUDES_DEFAULT])dnl
5187])# _LT_HEADER_DLFCN
5188
5189
5190# _LT_TRY_DLOPEN_SELF (ACTION-IF-TRUE, ACTION-IF-TRUE-W-USCORE,
5191#                      ACTION-IF-FALSE, ACTION-IF-CROSS-COMPILING)
5192# ----------------------------------------------------------------
5193m4_defun([_LT_TRY_DLOPEN_SELF],
5194[m4_require([_LT_HEADER_DLFCN])dnl
5195if test yes = "$cross_compiling"; then :
5196  [$4]
5197else
5198  lt_dlunknown=0; lt_dlno_uscore=1; lt_dlneed_uscore=2
5199  lt_status=$lt_dlunknown
5200  cat > conftest.$ac_ext <<_LT_EOF
5201[#line $LINENO "configure"
5202#include "confdefs.h"
5203
5204#if HAVE_DLFCN_H
5205#include <dlfcn.h>
5206#endif
5207
5208#include <stdio.h>
5209
5210#ifdef RTLD_GLOBAL
5211#  define LT_DLGLOBAL		RTLD_GLOBAL
5212#else
5213#  ifdef DL_GLOBAL
5214#    define LT_DLGLOBAL		DL_GLOBAL
5215#  else
5216#    define LT_DLGLOBAL		0
5217#  endif
5218#endif
5219
5220/* We may have to define LT_DLLAZY_OR_NOW in the command line if we
5221   find out it does not work in some platform. */
5222#ifndef LT_DLLAZY_OR_NOW
5223#  ifdef RTLD_LAZY
5224#    define LT_DLLAZY_OR_NOW		RTLD_LAZY
5225#  else
5226#    ifdef DL_LAZY
5227#      define LT_DLLAZY_OR_NOW		DL_LAZY
5228#    else
5229#      ifdef RTLD_NOW
5230#        define LT_DLLAZY_OR_NOW	RTLD_NOW
5231#      else
5232#        ifdef DL_NOW
5233#          define LT_DLLAZY_OR_NOW	DL_NOW
5234#        else
5235#          define LT_DLLAZY_OR_NOW	0
5236#        endif
5237#      endif
5238#    endif
5239#  endif
5240#endif
5241
5242/* When -fvisibility=hidden is used, assume the code has been annotated
5243   correspondingly for the symbols needed.  */
5244#if defined __GNUC__ && (((__GNUC__ == 3) && (__GNUC_MINOR__ >= 3)) || (__GNUC__ > 3))
5245int fnord () __attribute__((visibility("default")));
5246#endif
5247
5248int fnord () { return 42; }
5249int main ()
5250{
5251  void *self = dlopen (0, LT_DLGLOBAL|LT_DLLAZY_OR_NOW);
5252  int status = $lt_dlunknown;
5253
5254  if (self)
5255    {
5256      if (dlsym (self,"fnord"))       status = $lt_dlno_uscore;
5257      else
5258        {
5259	  if (dlsym( self,"_fnord"))  status = $lt_dlneed_uscore;
5260          else puts (dlerror ());
5261	}
5262      /* dlclose (self); */
5263    }
5264  else
5265    puts (dlerror ());
5266
5267  return status;
5268}]
5269_LT_EOF
5270  if AC_TRY_EVAL(ac_link) && test -s "conftest$ac_exeext" 2>/dev/null; then
5271    (./conftest; exit; ) >&AS_MESSAGE_LOG_FD 2>/dev/null
5272    lt_status=$?
5273    case x$lt_status in
5274      x$lt_dlno_uscore) $1 ;;
5275      x$lt_dlneed_uscore) $2 ;;
5276      x$lt_dlunknown|x*) $3 ;;
5277    esac
5278  else :
5279    # compilation failed
5280    $3
5281  fi
5282fi
5283rm -fr conftest*
5284])# _LT_TRY_DLOPEN_SELF
5285
5286
5287# LT_SYS_DLOPEN_SELF
5288# ------------------
5289AC_DEFUN([LT_SYS_DLOPEN_SELF],
5290[m4_require([_LT_HEADER_DLFCN])dnl
5291if test yes != "$enable_dlopen"; then
5292  enable_dlopen=unknown
5293  enable_dlopen_self=unknown
5294  enable_dlopen_self_static=unknown
5295else
5296  lt_cv_dlopen=no
5297  lt_cv_dlopen_libs=
5298
5299  case $host_os in
5300  beos*)
5301    lt_cv_dlopen=load_add_on
5302    lt_cv_dlopen_libs=
5303    lt_cv_dlopen_self=yes
5304    ;;
5305
5306  mingw* | pw32* | cegcc*)
5307    lt_cv_dlopen=LoadLibrary
5308    lt_cv_dlopen_libs=
5309    ;;
5310
5311  cygwin*)
5312    lt_cv_dlopen=dlopen
5313    lt_cv_dlopen_libs=
5314    ;;
5315
5316  darwin*)
5317    # if libdl is installed we need to link against it
5318    AC_CHECK_LIB([dl], [dlopen],
5319		[lt_cv_dlopen=dlopen lt_cv_dlopen_libs=-ldl],[
5320    lt_cv_dlopen=dyld
5321    lt_cv_dlopen_libs=
5322    lt_cv_dlopen_self=yes
5323    ])
5324    ;;
5325
5326  tpf*)
5327    # Don't try to run any link tests for TPF.  We know it's impossible
5328    # because TPF is a cross-compiler, and we know how we open DSOs.
5329    lt_cv_dlopen=dlopen
5330    lt_cv_dlopen_libs=
5331    lt_cv_dlopen_self=no
5332    ;;
5333
5334  *)
5335    AC_CHECK_FUNC([shl_load],
5336	  [lt_cv_dlopen=shl_load],
5337      [AC_CHECK_LIB([dld], [shl_load],
5338	    [lt_cv_dlopen=shl_load lt_cv_dlopen_libs=-ldld],
5339	[AC_CHECK_FUNC([dlopen],
5340	      [lt_cv_dlopen=dlopen],
5341	  [AC_CHECK_LIB([dl], [dlopen],
5342		[lt_cv_dlopen=dlopen lt_cv_dlopen_libs=-ldl],
5343	    [AC_CHECK_LIB([svld], [dlopen],
5344		  [lt_cv_dlopen=dlopen lt_cv_dlopen_libs=-lsvld],
5345	      [AC_CHECK_LIB([dld], [dld_link],
5346		    [lt_cv_dlopen=dld_link lt_cv_dlopen_libs=-ldld])
5347	      ])
5348	    ])
5349	  ])
5350	])
5351      ])
5352    ;;
5353  esac
5354
5355  if test no = "$lt_cv_dlopen"; then
5356    enable_dlopen=no
5357  else
5358    enable_dlopen=yes
5359  fi
5360
5361  case $lt_cv_dlopen in
5362  dlopen)
5363    save_CPPFLAGS=$CPPFLAGS
5364    test yes = "$ac_cv_header_dlfcn_h" && CPPFLAGS="$CPPFLAGS -DHAVE_DLFCN_H"
5365
5366    save_LDFLAGS=$LDFLAGS
5367    wl=$lt_prog_compiler_wl eval LDFLAGS=\"\$LDFLAGS $export_dynamic_flag_spec\"
5368
5369    save_LIBS=$LIBS
5370    LIBS="$lt_cv_dlopen_libs $LIBS"
5371
5372    AC_CACHE_CHECK([whether a program can dlopen itself],
5373	  lt_cv_dlopen_self, [dnl
5374	  _LT_TRY_DLOPEN_SELF(
5375	    lt_cv_dlopen_self=yes, lt_cv_dlopen_self=yes,
5376	    lt_cv_dlopen_self=no, lt_cv_dlopen_self=cross)
5377    ])
5378
5379    if test yes = "$lt_cv_dlopen_self"; then
5380      wl=$lt_prog_compiler_wl eval LDFLAGS=\"\$LDFLAGS $lt_prog_compiler_static\"
5381      AC_CACHE_CHECK([whether a statically linked program can dlopen itself],
5382	  lt_cv_dlopen_self_static, [dnl
5383	  _LT_TRY_DLOPEN_SELF(
5384	    lt_cv_dlopen_self_static=yes, lt_cv_dlopen_self_static=yes,
5385	    lt_cv_dlopen_self_static=no,  lt_cv_dlopen_self_static=cross)
5386      ])
5387    fi
5388
5389    CPPFLAGS=$save_CPPFLAGS
5390    LDFLAGS=$save_LDFLAGS
5391    LIBS=$save_LIBS
5392    ;;
5393  esac
5394
5395  case $lt_cv_dlopen_self in
5396  yes|no) enable_dlopen_self=$lt_cv_dlopen_self ;;
5397  *) enable_dlopen_self=unknown ;;
5398  esac
5399
5400  case $lt_cv_dlopen_self_static in
5401  yes|no) enable_dlopen_self_static=$lt_cv_dlopen_self_static ;;
5402  *) enable_dlopen_self_static=unknown ;;
5403  esac
5404fi
5405_LT_DECL([dlopen_support], [enable_dlopen], [0],
5406	 [Whether dlopen is supported])
5407_LT_DECL([dlopen_self], [enable_dlopen_self], [0],
5408	 [Whether dlopen of programs is supported])
5409_LT_DECL([dlopen_self_static], [enable_dlopen_self_static], [0],
5410	 [Whether dlopen of statically linked programs is supported])
5411])# LT_SYS_DLOPEN_SELF
5412
5413# Old name:
5414AU_ALIAS([AC_LIBTOOL_DLOPEN_SELF], [LT_SYS_DLOPEN_SELF])
5415dnl aclocal-1.4 backwards compatibility:
5416dnl AC_DEFUN([AC_LIBTOOL_DLOPEN_SELF], [])
5417
5418
5419# _LT_COMPILER_C_O([TAGNAME])
5420# ---------------------------
5421# Check to see if options -c and -o are simultaneously supported by compiler.
5422# This macro does not hard code the compiler like AC_PROG_CC_C_O.
5423m4_defun([_LT_COMPILER_C_O],
5424[m4_require([_LT_DECL_SED])dnl
5425m4_require([_LT_FILEUTILS_DEFAULTS])dnl
5426m4_require([_LT_TAG_COMPILER])dnl
5427AC_CACHE_CHECK([if $compiler supports -c -o file.$ac_objext],
5428  [_LT_TAGVAR(lt_cv_prog_compiler_c_o, $1)],
5429  [_LT_TAGVAR(lt_cv_prog_compiler_c_o, $1)=no
5430   $RM -r conftest 2>/dev/null
5431   mkdir conftest
5432   cd conftest
5433   mkdir out
5434   echo "$lt_simple_compile_test_code" > conftest.$ac_ext
5435
5436   lt_compiler_flag="-o out/conftest2.$ac_objext"
5437   # Insert the option either (1) after the last *FLAGS variable, or
5438   # (2) before a word containing "conftest.", or (3) at the end.
5439   # Note that $ac_compile itself does not contain backslashes and begins
5440   # with a dollar sign (not a hyphen), so the echo should work correctly.
5441   lt_compile=`echo "$ac_compile" | $SED \
5442   -e 's:.*FLAGS}\{0,1\} :&$lt_compiler_flag :; t' \
5443   -e 's: [[^ ]]*conftest\.: $lt_compiler_flag&:; t' \
5444   -e 's:$: $lt_compiler_flag:'`
5445   (eval echo "\"\$as_me:$LINENO: $lt_compile\"" >&AS_MESSAGE_LOG_FD)
5446   (eval "$lt_compile" 2>out/conftest.err)
5447   ac_status=$?
5448   cat out/conftest.err >&AS_MESSAGE_LOG_FD
5449   echo "$as_me:$LINENO: \$? = $ac_status" >&AS_MESSAGE_LOG_FD
5450   if (exit $ac_status) && test -s out/conftest2.$ac_objext
5451   then
5452     # The compiler can only warn and ignore the option if not recognized
5453     # So say no if there are warnings
5454     $ECHO "$_lt_compiler_boilerplate" | $SED '/^$/d' > out/conftest.exp
5455     $SED '/^$/d; /^ *+/d' out/conftest.err >out/conftest.er2
5456     if test ! -s out/conftest.er2 || diff out/conftest.exp out/conftest.er2 >/dev/null; then
5457       _LT_TAGVAR(lt_cv_prog_compiler_c_o, $1)=yes
5458     fi
5459   fi
5460   chmod u+w . 2>&AS_MESSAGE_LOG_FD
5461   $RM conftest*
5462   # SGI C++ compiler will create directory out/ii_files/ for
5463   # template instantiation
5464   test -d out/ii_files && $RM out/ii_files/* && rmdir out/ii_files
5465   $RM out/* && rmdir out
5466   cd ..
5467   $RM -r conftest
5468   $RM conftest*
5469])
5470_LT_TAGDECL([compiler_c_o], [lt_cv_prog_compiler_c_o], [1],
5471	[Does compiler simultaneously support -c and -o options?])
5472])# _LT_COMPILER_C_O
5473
5474
5475# _LT_COMPILER_FILE_LOCKS([TAGNAME])
5476# ----------------------------------
5477# Check to see if we can do hard links to lock some files if needed
5478m4_defun([_LT_COMPILER_FILE_LOCKS],
5479[m4_require([_LT_ENABLE_LOCK])dnl
5480m4_require([_LT_FILEUTILS_DEFAULTS])dnl
5481_LT_COMPILER_C_O([$1])
5482
5483hard_links=nottested
5484if test no = "$_LT_TAGVAR(lt_cv_prog_compiler_c_o, $1)" && test no != "$need_locks"; then
5485  # do not overwrite the value of need_locks provided by the user
5486  AC_MSG_CHECKING([if we can lock with hard links])
5487  hard_links=yes
5488  $RM conftest*
5489  ln conftest.a conftest.b 2>/dev/null && hard_links=no
5490  touch conftest.a
5491  ln conftest.a conftest.b 2>&5 || hard_links=no
5492  ln conftest.a conftest.b 2>/dev/null && hard_links=no
5493  AC_MSG_RESULT([$hard_links])
5494  if test no = "$hard_links"; then
5495    AC_MSG_WARN(['$CC' does not support '-c -o', so 'make -j' may be unsafe])
5496    need_locks=warn
5497  fi
5498else
5499  need_locks=no
5500fi
5501_LT_DECL([], [need_locks], [1], [Must we lock files when doing compilation?])
5502])# _LT_COMPILER_FILE_LOCKS
5503
5504
5505# _LT_CHECK_OBJDIR
5506# ----------------
5507m4_defun([_LT_CHECK_OBJDIR],
5508[AC_CACHE_CHECK([for objdir], [lt_cv_objdir],
5509[rm -f .libs 2>/dev/null
5510mkdir .libs 2>/dev/null
5511if test -d .libs; then
5512  lt_cv_objdir=.libs
5513else
5514  # MS-DOS does not allow filenames that begin with a dot.
5515  lt_cv_objdir=_libs
5516fi
5517rmdir .libs 2>/dev/null])
5518objdir=$lt_cv_objdir
5519_LT_DECL([], [objdir], [0],
5520         [The name of the directory that contains temporary libtool files])dnl
5521m4_pattern_allow([LT_OBJDIR])dnl
5522AC_DEFINE_UNQUOTED([LT_OBJDIR], "$lt_cv_objdir/",
5523  [Define to the sub-directory where libtool stores uninstalled libraries.])
5524])# _LT_CHECK_OBJDIR
5525
5526
5527# _LT_LINKER_HARDCODE_LIBPATH([TAGNAME])
5528# --------------------------------------
5529# Check hardcoding attributes.
5530m4_defun([_LT_LINKER_HARDCODE_LIBPATH],
5531[AC_MSG_CHECKING([how to hardcode library paths into programs])
5532_LT_TAGVAR(hardcode_action, $1)=
5533if test -n "$_LT_TAGVAR(hardcode_libdir_flag_spec, $1)" ||
5534   test -n "$_LT_TAGVAR(runpath_var, $1)" ||
5535   test yes = "$_LT_TAGVAR(hardcode_automatic, $1)"; then
5536
5537  # We can hardcode non-existent directories.
5538  if test no != "$_LT_TAGVAR(hardcode_direct, $1)" &&
5539     # If the only mechanism to avoid hardcoding is shlibpath_var, we
5540     # have to relink, otherwise we might link with an installed library
5541     # when we should be linking with a yet-to-be-installed one
5542     ## test no != "$_LT_TAGVAR(hardcode_shlibpath_var, $1)" &&
5543     test no != "$_LT_TAGVAR(hardcode_minus_L, $1)"; then
5544    # Linking always hardcodes the temporary library directory.
5545    _LT_TAGVAR(hardcode_action, $1)=relink
5546  else
5547    # We can link without hardcoding, and we can hardcode nonexisting dirs.
5548    _LT_TAGVAR(hardcode_action, $1)=immediate
5549  fi
5550else
5551  # We cannot hardcode anything, or else we can only hardcode existing
5552  # directories.
5553  _LT_TAGVAR(hardcode_action, $1)=unsupported
5554fi
5555AC_MSG_RESULT([$_LT_TAGVAR(hardcode_action, $1)])
5556
5557if test relink = "$_LT_TAGVAR(hardcode_action, $1)" ||
5558   test yes = "$_LT_TAGVAR(inherit_rpath, $1)"; then
5559  # Fast installation is not supported
5560  enable_fast_install=no
5561elif test yes = "$shlibpath_overrides_runpath" ||
5562     test no = "$enable_shared"; then
5563  # Fast installation is not necessary
5564  enable_fast_install=needless
5565fi
5566_LT_TAGDECL([], [hardcode_action], [0],
5567    [How to hardcode a shared library path into an executable])
5568])# _LT_LINKER_HARDCODE_LIBPATH
5569
5570
5571# _LT_CMD_STRIPLIB
5572# ----------------
5573m4_defun([_LT_CMD_STRIPLIB],
5574[m4_require([_LT_DECL_EGREP])
5575striplib=
5576old_striplib=
5577AC_MSG_CHECKING([whether stripping libraries is possible])
5578if test -z "$STRIP"; then
5579  AC_MSG_RESULT([no])
5580else
5581  if $STRIP -V 2>&1 | $GREP "GNU strip" >/dev/null; then
5582    old_striplib="$STRIP --strip-debug"
5583    striplib="$STRIP --strip-unneeded"
5584    AC_MSG_RESULT([yes])
5585  else
5586    case $host_os in
5587    darwin*)
5588      # FIXME - insert some real tests, host_os isn't really good enough
5589      striplib="$STRIP -x"
5590      old_striplib="$STRIP -S"
5591      AC_MSG_RESULT([yes])
5592      ;;
5593    freebsd*)
5594      if $STRIP -V 2>&1 | $GREP "elftoolchain" >/dev/null; then
5595        old_striplib="$STRIP --strip-debug"
5596        striplib="$STRIP --strip-unneeded"
5597        AC_MSG_RESULT([yes])
5598      else
5599        AC_MSG_RESULT([no])
5600      fi
5601      ;;
5602    *)
5603      AC_MSG_RESULT([no])
5604      ;;
5605    esac
5606  fi
5607fi
5608_LT_DECL([], [old_striplib], [1], [Commands to strip libraries])
5609_LT_DECL([], [striplib], [1])
5610])# _LT_CMD_STRIPLIB
5611
5612
5613# _LT_PREPARE_MUNGE_PATH_LIST
5614# ---------------------------
5615# Make sure func_munge_path_list() is defined correctly.
5616m4_defun([_LT_PREPARE_MUNGE_PATH_LIST],
5617[[# func_munge_path_list VARIABLE PATH
5618# -----------------------------------
5619# VARIABLE is name of variable containing _space_ separated list of
5620# directories to be munged by the contents of PATH, which is string
5621# having a format:
5622# "DIR[:DIR]:"
5623#       string "DIR[ DIR]" will be prepended to VARIABLE
5624# ":DIR[:DIR]"
5625#       string "DIR[ DIR]" will be appended to VARIABLE
5626# "DIRP[:DIRP]::[DIRA:]DIRA"
5627#       string "DIRP[ DIRP]" will be prepended to VARIABLE and string
5628#       "DIRA[ DIRA]" will be appended to VARIABLE
5629# "DIR[:DIR]"
5630#       VARIABLE will be replaced by "DIR[ DIR]"
5631func_munge_path_list ()
5632{
5633    case x@S|@2 in
5634    x)
5635        ;;
5636    *:)
5637        eval @S|@1=\"`$ECHO @S|@2 | $SED 's/:/ /g'` \@S|@@S|@1\"
5638        ;;
5639    x:*)
5640        eval @S|@1=\"\@S|@@S|@1 `$ECHO @S|@2 | $SED 's/:/ /g'`\"
5641        ;;
5642    *::*)
5643        eval @S|@1=\"\@S|@@S|@1\ `$ECHO @S|@2 | $SED -e 's/.*:://' -e 's/:/ /g'`\"
5644        eval @S|@1=\"`$ECHO @S|@2 | $SED -e 's/::.*//' -e 's/:/ /g'`\ \@S|@@S|@1\"
5645        ;;
5646    *)
5647        eval @S|@1=\"`$ECHO @S|@2 | $SED 's/:/ /g'`\"
5648        ;;
5649    esac
5650}
5651]])# _LT_PREPARE_PATH_LIST
5652
5653
5654# _LT_SYS_DYNAMIC_LINKER([TAG])
5655# -----------------------------
5656# PORTME Fill in your ld.so characteristics
5657m4_defun([_LT_SYS_DYNAMIC_LINKER],
5658[AC_REQUIRE([AC_CANONICAL_HOST])dnl
5659m4_require([_LT_DECL_EGREP])dnl
5660m4_require([_LT_FILEUTILS_DEFAULTS])dnl
5661m4_require([_LT_DECL_OBJDUMP])dnl
5662m4_require([_LT_DECL_SED])dnl
5663m4_require([_LT_CHECK_SHELL_FEATURES])dnl
5664m4_require([_LT_PREPARE_MUNGE_PATH_LIST])dnl
5665AC_MSG_CHECKING([dynamic linker characteristics])
5666m4_if([$1],
5667	[], [
5668if test yes = "$GCC"; then
5669  case $host_os in
5670    darwin*) lt_awk_arg='/^libraries:/,/LR/' ;;
5671    *) lt_awk_arg='/^libraries:/' ;;
5672  esac
5673  case $host_os in
5674    mingw* | cegcc*) lt_sed_strip_eq='s|=\([[A-Za-z]]:\)|\1|g' ;;
5675    *) lt_sed_strip_eq='s|=/|/|g' ;;
5676  esac
5677  lt_search_path_spec=`$CC -print-search-dirs | awk $lt_awk_arg | $SED -e "s/^libraries://" -e $lt_sed_strip_eq`
5678  case $lt_search_path_spec in
5679  *\;*)
5680    # if the path contains ";" then we assume it to be the separator
5681    # otherwise default to the standard path separator (i.e. ":") - it is
5682    # assumed that no part of a normal pathname contains ";" but that should
5683    # okay in the real world where ";" in dirpaths is itself problematic.
5684    lt_search_path_spec=`$ECHO "$lt_search_path_spec" | $SED 's/;/ /g'`
5685    ;;
5686  *)
5687    lt_search_path_spec=`$ECHO "$lt_search_path_spec" | $SED "s/$PATH_SEPARATOR/ /g"`
5688    ;;
5689  esac
5690  # Ok, now we have the path, separated by spaces, we can step through it
5691  # and add multilib dir if necessary...
5692  lt_tmp_lt_search_path_spec=
5693  lt_multi_os_dir=/`$CC $CPPFLAGS $CFLAGS $LDFLAGS -print-multi-os-directory 2>/dev/null`
5694  # ...but if some path component already ends with the multilib dir we assume
5695  # that all is fine and trust -print-search-dirs as is (GCC 4.2? or newer).
5696  case "$lt_multi_os_dir; $lt_search_path_spec " in
5697  "/; "* | "/.; "* | "/./; "* | *"$lt_multi_os_dir "* | *"$lt_multi_os_dir/ "*)
5698    lt_multi_os_dir=
5699    ;;
5700  esac
5701  for lt_sys_path in $lt_search_path_spec; do
5702    if test -d "$lt_sys_path$lt_multi_os_dir"; then
5703      lt_tmp_lt_search_path_spec="$lt_tmp_lt_search_path_spec $lt_sys_path$lt_multi_os_dir"
5704    elif test -n "$lt_multi_os_dir"; then
5705      test -d "$lt_sys_path" && \
5706	lt_tmp_lt_search_path_spec="$lt_tmp_lt_search_path_spec $lt_sys_path"
5707    fi
5708  done
5709  lt_search_path_spec=`$ECHO "$lt_tmp_lt_search_path_spec" | awk '
5710BEGIN {RS = " "; FS = "/|\n";} {
5711  lt_foo = "";
5712  lt_count = 0;
5713  for (lt_i = NF; lt_i > 0; lt_i--) {
5714    if ($lt_i != "" && $lt_i != ".") {
5715      if ($lt_i == "..") {
5716        lt_count++;
5717      } else {
5718        if (lt_count == 0) {
5719          lt_foo = "/" $lt_i lt_foo;
5720        } else {
5721          lt_count--;
5722        }
5723      }
5724    }
5725  }
5726  if (lt_foo != "") { lt_freq[[lt_foo]]++; }
5727  if (lt_freq[[lt_foo]] == 1) { print lt_foo; }
5728}'`
5729  # AWK program above erroneously prepends '/' to C:/dos/paths
5730  # for these hosts.
5731  case $host_os in
5732    mingw* | cegcc*) lt_search_path_spec=`$ECHO "$lt_search_path_spec" |\
5733      $SED 's|/\([[A-Za-z]]:\)|\1|g'` ;;
5734  esac
5735  sys_lib_search_path_spec=`$ECHO "$lt_search_path_spec" | $lt_NL2SP`
5736else
5737  sys_lib_search_path_spec="/lib /usr/lib /usr/local/lib"
5738fi])
5739library_names_spec=
5740libname_spec='lib$name'
5741soname_spec=
5742shrext_cmds=.so
5743postinstall_cmds=
5744postuninstall_cmds=
5745finish_cmds=
5746finish_eval=
5747shlibpath_var=
5748shlibpath_overrides_runpath=unknown
5749version_type=none
5750dynamic_linker="$host_os ld.so"
5751sys_lib_dlsearch_path_spec="/lib /usr/lib"
5752need_lib_prefix=unknown
5753hardcode_into_libs=no
5754
5755# when you set need_version to no, make sure it does not cause -set_version
5756# flags to be left without arguments
5757need_version=unknown
5758
5759AC_ARG_VAR([LT_SYS_LIBRARY_PATH],
5760[User-defined run-time library search path.])
5761
5762case $host_os in
5763aix3*)
5764  version_type=linux # correct to gnu/linux during the next big refactor
5765  library_names_spec='$libname$release$shared_ext$versuffix $libname.a'
5766  shlibpath_var=LIBPATH
5767
5768  # AIX 3 has no versioning support, so we append a major version to the name.
5769  soname_spec='$libname$release$shared_ext$major'
5770  ;;
5771
5772aix[[4-9]]*)
5773  version_type=linux # correct to gnu/linux during the next big refactor
5774  need_lib_prefix=no
5775  need_version=no
5776  hardcode_into_libs=yes
5777  if test ia64 = "$host_cpu"; then
5778    # AIX 5 supports IA64
5779    library_names_spec='$libname$release$shared_ext$major $libname$release$shared_ext$versuffix $libname$shared_ext'
5780    shlibpath_var=LD_LIBRARY_PATH
5781  else
5782    # With GCC up to 2.95.x, collect2 would create an import file
5783    # for dependence libraries.  The import file would start with
5784    # the line '#! .'.  This would cause the generated library to
5785    # depend on '.', always an invalid library.  This was fixed in
5786    # development snapshots of GCC prior to 3.0.
5787    case $host_os in
5788      aix4 | aix4.[[01]] | aix4.[[01]].*)
5789      if { echo '#if __GNUC__ > 2 || (__GNUC__ == 2 && __GNUC_MINOR__ >= 97)'
5790	   echo ' yes '
5791	   echo '#endif'; } | $CC -E - | $GREP yes > /dev/null; then
5792	:
5793      else
5794	can_build_shared=no
5795      fi
5796      ;;
5797    esac
5798    # Using Import Files as archive members, it is possible to support
5799    # filename-based versioning of shared library archives on AIX. While
5800    # this would work for both with and without runtime linking, it will
5801    # prevent static linking of such archives. So we do filename-based
5802    # shared library versioning with .so extension only, which is used
5803    # when both runtime linking and shared linking is enabled.
5804    # Unfortunately, runtime linking may impact performance, so we do
5805    # not want this to be the default eventually. Also, we use the
5806    # versioned .so libs for executables only if there is the -brtl
5807    # linker flag in LDFLAGS as well, or --with-aix-soname=svr4 only.
5808    # To allow for filename-based versioning support, we need to create
5809    # libNAME.so.V as an archive file, containing:
5810    # *) an Import File, referring to the versioned filename of the
5811    #    archive as well as the shared archive member, telling the
5812    #    bitwidth (32 or 64) of that shared object, and providing the
5813    #    list of exported symbols of that shared object, eventually
5814    #    decorated with the 'weak' keyword
5815    # *) the shared object with the F_LOADONLY flag set, to really avoid
5816    #    it being seen by the linker.
5817    # At run time we better use the real file rather than another symlink,
5818    # but for link time we create the symlink libNAME.so -> libNAME.so.V
5819
5820    case $with_aix_soname,$aix_use_runtimelinking in
5821    # AIX (on Power*) has no versioning support, so currently we cannot hardcode correct
5822    # soname into executable. Probably we can add versioning support to
5823    # collect2, so additional links can be useful in future.
5824    aix,yes) # traditional libtool
5825      dynamic_linker='AIX unversionable lib.so'
5826      # If using run time linking (on AIX 4.2 or later) use lib<name>.so
5827      # instead of lib<name>.a to let people know that these are not
5828      # typical AIX shared libraries.
5829      library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$shared_ext'
5830      ;;
5831    aix,no) # traditional AIX only
5832      dynamic_linker='AIX lib.a[(]lib.so.V[)]'
5833      # We preserve .a as extension for shared libraries through AIX4.2
5834      # and later when we are not doing run time linking.
5835      library_names_spec='$libname$release.a $libname.a'
5836      soname_spec='$libname$release$shared_ext$major'
5837      ;;
5838    svr4,*) # full svr4 only
5839      dynamic_linker="AIX lib.so.V[(]$shared_archive_member_spec.o[)]"
5840      library_names_spec='$libname$release$shared_ext$major $libname$shared_ext'
5841      # We do not specify a path in Import Files, so LIBPATH fires.
5842      shlibpath_overrides_runpath=yes
5843      ;;
5844    *,yes) # both, prefer svr4
5845      dynamic_linker="AIX lib.so.V[(]$shared_archive_member_spec.o[)], lib.a[(]lib.so.V[)]"
5846      library_names_spec='$libname$release$shared_ext$major $libname$shared_ext'
5847      # unpreferred sharedlib libNAME.a needs extra handling
5848      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"'
5849      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"'
5850      # We do not specify a path in Import Files, so LIBPATH fires.
5851      shlibpath_overrides_runpath=yes
5852      ;;
5853    *,no) # both, prefer aix
5854      dynamic_linker="AIX lib.a[(]lib.so.V[)], lib.so.V[(]$shared_archive_member_spec.o[)]"
5855      library_names_spec='$libname$release.a $libname.a'
5856      soname_spec='$libname$release$shared_ext$major'
5857      # unpreferred sharedlib libNAME.so.V and symlink libNAME.so need extra handling
5858      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)'
5859      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"'
5860      ;;
5861    esac
5862    shlibpath_var=LIBPATH
5863  fi
5864  ;;
5865
5866amigaos*)
5867  case $host_cpu in
5868  powerpc)
5869    # Since July 2007 AmigaOS4 officially supports .so libraries.
5870    # When compiling the executable, add -use-dynld -Lsobjs: to the compileline.
5871    library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$shared_ext'
5872    ;;
5873  m68k)
5874    library_names_spec='$libname.ixlibrary $libname.a'
5875    # Create ${libname}_ixlibrary.a entries in /sys/libs.
5876    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'
5877    ;;
5878  esac
5879  ;;
5880
5881beos*)
5882  library_names_spec='$libname$shared_ext'
5883  dynamic_linker="$host_os ld.so"
5884  shlibpath_var=LIBRARY_PATH
5885  ;;
5886
5887bsdi[[45]]*)
5888  version_type=linux # correct to gnu/linux during the next big refactor
5889  need_version=no
5890  library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$shared_ext'
5891  soname_spec='$libname$release$shared_ext$major'
5892  finish_cmds='PATH="\$PATH:/sbin" ldconfig $libdir'
5893  shlibpath_var=LD_LIBRARY_PATH
5894  sys_lib_search_path_spec="/shlib /usr/lib /usr/X11/lib /usr/contrib/lib /lib /usr/local/lib"
5895  sys_lib_dlsearch_path_spec="/shlib /usr/lib /usr/local/lib"
5896  # the default ld.so.conf also contains /usr/contrib/lib and
5897  # /usr/X11R6/lib (/usr/X11 is a link to /usr/X11R6), but let us allow
5898  # libtool to hard-code these into programs
5899  ;;
5900
5901cygwin* | mingw* | pw32* | cegcc*)
5902  version_type=windows
5903  shrext_cmds=.dll
5904  need_version=no
5905  need_lib_prefix=no
5906
5907  case $GCC,$cc_basename in
5908  yes,*)
5909    # gcc
5910    library_names_spec='$libname.dll.a'
5911    # DLL is installed to $(libdir)/../bin by postinstall_cmds
5912    postinstall_cmds='base_file=`basename \$file`~
5913      dlpath=`$SHELL 2>&1 -c '\''. $dir/'\''\$base_file'\''i; echo \$dlname'\''`~
5914      dldir=$destdir/`dirname \$dlpath`~
5915      test -d \$dldir || mkdir -p \$dldir~
5916      $install_prog $dir/$dlname \$dldir/$dlname~
5917      chmod a+x \$dldir/$dlname~
5918      if test -n '\''$stripme'\'' && test -n '\''$striplib'\''; then
5919        eval '\''$striplib \$dldir/$dlname'\'' || exit \$?;
5920      fi'
5921    postuninstall_cmds='dldll=`$SHELL 2>&1 -c '\''. $file; echo \$dlname'\''`~
5922      dlpath=$dir/\$dldll~
5923       $RM \$dlpath'
5924    shlibpath_overrides_runpath=yes
5925
5926    case $host_os in
5927    cygwin*)
5928      # Cygwin DLLs use 'cyg' prefix rather than 'lib'
5929      soname_spec='`echo $libname | $SED -e 's/^lib/cyg/'``echo $release | $SED -e 's/[[.]]/-/g'`$versuffix$shared_ext'
5930m4_if([$1], [],[
5931      sys_lib_search_path_spec="$sys_lib_search_path_spec /usr/lib/w32api"])
5932      ;;
5933    mingw* | cegcc*)
5934      # MinGW DLLs use traditional 'lib' prefix
5935      soname_spec='$libname`echo $release | $SED -e 's/[[.]]/-/g'`$versuffix$shared_ext'
5936      ;;
5937    pw32*)
5938      # pw32 DLLs use 'pw' prefix rather than 'lib'
5939      library_names_spec='`echo $libname | $SED -e 's/^lib/pw/'``echo $release | $SED -e 's/[[.]]/-/g'`$versuffix$shared_ext'
5940      ;;
5941    esac
5942    dynamic_linker='Win32 ld.exe'
5943    ;;
5944
5945  *,cl* | *,icl*)
5946    # Native MSVC or ICC
5947    libname_spec='$name'
5948    soname_spec='$libname`echo $release | $SED -e 's/[[.]]/-/g'`$versuffix$shared_ext'
5949    library_names_spec='$libname.dll.lib'
5950
5951    case $build_os in
5952    mingw*)
5953      sys_lib_search_path_spec=
5954      lt_save_ifs=$IFS
5955      IFS=';'
5956      for lt_path in $LIB
5957      do
5958        IFS=$lt_save_ifs
5959        # Let DOS variable expansion print the short 8.3 style file name.
5960        lt_path=`cd "$lt_path" 2>/dev/null && cmd //C "for %i in (".") do @echo %~si"`
5961        sys_lib_search_path_spec="$sys_lib_search_path_spec $lt_path"
5962      done
5963      IFS=$lt_save_ifs
5964      # Convert to MSYS style.
5965      sys_lib_search_path_spec=`$ECHO "$sys_lib_search_path_spec" | $SED -e 's|\\\\|/|g' -e 's| \\([[a-zA-Z]]\\):| /\\1|g' -e 's|^ ||'`
5966      ;;
5967    cygwin*)
5968      # Convert to unix form, then to dos form, then back to unix form
5969      # but this time dos style (no spaces!) so that the unix form looks
5970      # like /cygdrive/c/PROGRA~1:/cygdr...
5971      sys_lib_search_path_spec=`cygpath --path --unix "$LIB"`
5972      sys_lib_search_path_spec=`cygpath --path --dos "$sys_lib_search_path_spec" 2>/dev/null`
5973      sys_lib_search_path_spec=`cygpath --path --unix "$sys_lib_search_path_spec" | $SED -e "s/$PATH_SEPARATOR/ /g"`
5974      ;;
5975    *)
5976      sys_lib_search_path_spec=$LIB
5977      if $ECHO "$sys_lib_search_path_spec" | [$GREP ';[c-zC-Z]:/' >/dev/null]; then
5978        # It is most probably a Windows format PATH.
5979        sys_lib_search_path_spec=`$ECHO "$sys_lib_search_path_spec" | $SED -e 's/;/ /g'`
5980      else
5981        sys_lib_search_path_spec=`$ECHO "$sys_lib_search_path_spec" | $SED -e "s/$PATH_SEPARATOR/ /g"`
5982      fi
5983      # FIXME: find the short name or the path components, as spaces are
5984      # common. (e.g. "Program Files" -> "PROGRA~1")
5985      ;;
5986    esac
5987
5988    # DLL is installed to $(libdir)/../bin by postinstall_cmds
5989    postinstall_cmds='base_file=`basename \$file`~
5990      dlpath=`$SHELL 2>&1 -c '\''. $dir/'\''\$base_file'\''i; echo \$dlname'\''`~
5991      dldir=$destdir/`dirname \$dlpath`~
5992      test -d \$dldir || mkdir -p \$dldir~
5993      $install_prog $dir/$dlname \$dldir/$dlname'
5994    postuninstall_cmds='dldll=`$SHELL 2>&1 -c '\''. $file; echo \$dlname'\''`~
5995      dlpath=$dir/\$dldll~
5996       $RM \$dlpath'
5997    shlibpath_overrides_runpath=yes
5998    dynamic_linker='Win32 link.exe'
5999    ;;
6000
6001  *)
6002    # Assume MSVC and ICC wrapper
6003    library_names_spec='$libname`echo $release | $SED -e 's/[[.]]/-/g'`$versuffix$shared_ext $libname.lib'
6004    dynamic_linker='Win32 ld.exe'
6005    ;;
6006  esac
6007  # FIXME: first we should search . and the directory the executable is in
6008  shlibpath_var=PATH
6009  ;;
6010
6011darwin* | rhapsody*)
6012  dynamic_linker="$host_os dyld"
6013  version_type=darwin
6014  need_lib_prefix=no
6015  need_version=no
6016  library_names_spec='$libname$release$major$shared_ext $libname$shared_ext'
6017  soname_spec='$libname$release$major$shared_ext'
6018  shlibpath_overrides_runpath=yes
6019  shlibpath_var=DYLD_LIBRARY_PATH
6020  shrext_cmds='`test .$module = .yes && echo .so || echo .dylib`'
6021m4_if([$1], [],[
6022  sys_lib_search_path_spec="$sys_lib_search_path_spec /usr/local/lib"])
6023  sys_lib_dlsearch_path_spec='/usr/local/lib /lib /usr/lib'
6024  ;;
6025
6026dgux*)
6027  version_type=linux # correct to gnu/linux during the next big refactor
6028  need_lib_prefix=no
6029  need_version=no
6030  library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$shared_ext'
6031  soname_spec='$libname$release$shared_ext$major'
6032  shlibpath_var=LD_LIBRARY_PATH
6033  ;;
6034
6035freebsd* | dragonfly* | midnightbsd*)
6036  # DragonFly does not have aout.  When/if they implement a new
6037  # versioning mechanism, adjust this.
6038  if test -x /usr/bin/objformat; then
6039    objformat=`/usr/bin/objformat`
6040  else
6041    case $host_os in
6042    freebsd[[23]].*) objformat=aout ;;
6043    *) objformat=elf ;;
6044    esac
6045  fi
6046  version_type=freebsd-$objformat
6047  case $version_type in
6048    freebsd-elf*)
6049      library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$shared_ext'
6050      soname_spec='$libname$release$shared_ext$major'
6051      need_version=no
6052      need_lib_prefix=no
6053      ;;
6054    freebsd-*)
6055      library_names_spec='$libname$release$shared_ext$versuffix $libname$shared_ext$versuffix'
6056      need_version=yes
6057      ;;
6058  esac
6059  shlibpath_var=LD_LIBRARY_PATH
6060  case $host_os in
6061  freebsd2.*)
6062    shlibpath_overrides_runpath=yes
6063    ;;
6064  freebsd3.[[01]]* | freebsdelf3.[[01]]*)
6065    shlibpath_overrides_runpath=yes
6066    hardcode_into_libs=yes
6067    ;;
6068  freebsd3.[[2-9]]* | freebsdelf3.[[2-9]]* | \
6069  freebsd4.[[0-5]] | freebsdelf4.[[0-5]] | freebsd4.1.1 | freebsdelf4.1.1)
6070    shlibpath_overrides_runpath=no
6071    hardcode_into_libs=yes
6072    ;;
6073  *) # from 4.6 on, and DragonFly
6074    shlibpath_overrides_runpath=yes
6075    hardcode_into_libs=yes
6076    ;;
6077  esac
6078  ;;
6079
6080haiku*)
6081  version_type=linux # correct to gnu/linux during the next big refactor
6082  need_lib_prefix=no
6083  need_version=no
6084  dynamic_linker="$host_os runtime_loader"
6085  library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$shared_ext'
6086  soname_spec='$libname$release$shared_ext$major'
6087  shlibpath_var=LIBRARY_PATH
6088  shlibpath_overrides_runpath=no
6089  sys_lib_dlsearch_path_spec='/boot/home/config/lib /boot/common/lib /boot/system/lib'
6090  hardcode_into_libs=yes
6091  ;;
6092
6093hpux9* | hpux10* | hpux11*)
6094  # Give a soname corresponding to the major version so that dld.sl refuses to
6095  # link against other versions.
6096  version_type=sunos
6097  need_lib_prefix=no
6098  need_version=no
6099  case $host_cpu in
6100  ia64*)
6101    shrext_cmds='.so'
6102    hardcode_into_libs=yes
6103    dynamic_linker="$host_os dld.so"
6104    shlibpath_var=LD_LIBRARY_PATH
6105    shlibpath_overrides_runpath=yes # Unless +noenvvar is specified.
6106    library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$shared_ext'
6107    soname_spec='$libname$release$shared_ext$major'
6108    if test 32 = "$HPUX_IA64_MODE"; then
6109      sys_lib_search_path_spec="/usr/lib/hpux32 /usr/local/lib/hpux32 /usr/local/lib"
6110      sys_lib_dlsearch_path_spec=/usr/lib/hpux32
6111    else
6112      sys_lib_search_path_spec="/usr/lib/hpux64 /usr/local/lib/hpux64"
6113      sys_lib_dlsearch_path_spec=/usr/lib/hpux64
6114    fi
6115    ;;
6116  hppa*64*)
6117    shrext_cmds='.sl'
6118    hardcode_into_libs=yes
6119    dynamic_linker="$host_os dld.sl"
6120    shlibpath_var=LD_LIBRARY_PATH # How should we handle SHLIB_PATH
6121    shlibpath_overrides_runpath=yes # Unless +noenvvar is specified.
6122    library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$shared_ext'
6123    soname_spec='$libname$release$shared_ext$major'
6124    sys_lib_search_path_spec="/usr/lib/pa20_64 /usr/ccs/lib/pa20_64"
6125    sys_lib_dlsearch_path_spec=$sys_lib_search_path_spec
6126    ;;
6127  *)
6128    shrext_cmds='.sl'
6129    dynamic_linker="$host_os dld.sl"
6130    shlibpath_var=SHLIB_PATH
6131    shlibpath_overrides_runpath=no # +s is required to enable SHLIB_PATH
6132    library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$shared_ext'
6133    soname_spec='$libname$release$shared_ext$major'
6134    ;;
6135  esac
6136  # HP-UX runs *really* slowly unless shared libraries are mode 555, ...
6137  postinstall_cmds='chmod 555 $lib'
6138  # or fails outright, so override atomically:
6139  install_override_mode=555
6140  ;;
6141
6142interix[[3-9]]*)
6143  version_type=linux # correct to gnu/linux during the next big refactor
6144  need_lib_prefix=no
6145  need_version=no
6146  library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$shared_ext'
6147  soname_spec='$libname$release$shared_ext$major'
6148  dynamic_linker='Interix 3.x ld.so.1 (PE, like ELF)'
6149  shlibpath_var=LD_LIBRARY_PATH
6150  shlibpath_overrides_runpath=no
6151  hardcode_into_libs=yes
6152  ;;
6153
6154irix5* | irix6* | nonstopux*)
6155  case $host_os in
6156    nonstopux*) version_type=nonstopux ;;
6157    *)
6158	if test yes = "$lt_cv_prog_gnu_ld"; then
6159		version_type=linux # correct to gnu/linux during the next big refactor
6160	else
6161		version_type=irix
6162	fi ;;
6163  esac
6164  need_lib_prefix=no
6165  need_version=no
6166  soname_spec='$libname$release$shared_ext$major'
6167  library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$release$shared_ext $libname$shared_ext'
6168  case $host_os in
6169  irix5* | nonstopux*)
6170    libsuff= shlibsuff=
6171    ;;
6172  *)
6173    case $LD in # libtool.m4 will add one of these switches to LD
6174    *-32|*"-32 "|*-melf32bsmip|*"-melf32bsmip ")
6175      libsuff= shlibsuff= libmagic=32-bit;;
6176    *-n32|*"-n32 "|*-melf32bmipn32|*"-melf32bmipn32 ")
6177      libsuff=32 shlibsuff=N32 libmagic=N32;;
6178    *-64|*"-64 "|*-melf64bmip|*"-melf64bmip ")
6179      libsuff=64 shlibsuff=64 libmagic=64-bit;;
6180    *) libsuff= shlibsuff= libmagic=never-match;;
6181    esac
6182    ;;
6183  esac
6184  shlibpath_var=LD_LIBRARY${shlibsuff}_PATH
6185  shlibpath_overrides_runpath=no
6186  sys_lib_search_path_spec="/usr/lib$libsuff /lib$libsuff /usr/local/lib$libsuff"
6187  sys_lib_dlsearch_path_spec="/usr/lib$libsuff /lib$libsuff"
6188  hardcode_into_libs=yes
6189  ;;
6190
6191# No shared lib support for Linux oldld, aout, or coff.
6192linux*oldld* | linux*aout* | linux*coff*)
6193  dynamic_linker=no
6194  ;;
6195
6196linux*android*)
6197  version_type=none # Android doesn't support versioned libraries.
6198  need_lib_prefix=no
6199  need_version=no
6200  library_names_spec='$libname$release$shared_ext'
6201  soname_spec='$libname$release$shared_ext'
6202  finish_cmds=
6203  shlibpath_var=LD_LIBRARY_PATH
6204  shlibpath_overrides_runpath=yes
6205
6206  # This implies no fast_install, which is unacceptable.
6207  # Some rework will be needed to allow for fast_install
6208  # before this can be enabled.
6209  hardcode_into_libs=yes
6210
6211  dynamic_linker='Android linker'
6212  # Don't embed -rpath directories since the linker doesn't support them.
6213  _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-L$libdir'
6214  ;;
6215
6216# This must be glibc/ELF.
6217linux* | k*bsd*-gnu | kopensolaris*-gnu | gnu*)
6218  version_type=linux # correct to gnu/linux during the next big refactor
6219  need_lib_prefix=no
6220  need_version=no
6221  library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$shared_ext'
6222  soname_spec='$libname$release$shared_ext$major'
6223  finish_cmds='PATH="\$PATH:/sbin" ldconfig -n $libdir'
6224  shlibpath_var=LD_LIBRARY_PATH
6225  shlibpath_overrides_runpath=no
6226
6227  # Some binutils ld are patched to set DT_RUNPATH
6228  AC_CACHE_VAL([lt_cv_shlibpath_overrides_runpath],
6229    [lt_cv_shlibpath_overrides_runpath=no
6230    save_LDFLAGS=$LDFLAGS
6231    save_libdir=$libdir
6232    eval "libdir=/foo; wl=\"$_LT_TAGVAR(lt_prog_compiler_wl, $1)\"; \
6233	 LDFLAGS=\"\$LDFLAGS $_LT_TAGVAR(hardcode_libdir_flag_spec, $1)\""
6234    AC_LINK_IFELSE([AC_LANG_PROGRAM([],[])],
6235      [AS_IF([ ($OBJDUMP -p conftest$ac_exeext) 2>/dev/null | grep "RUNPATH.*$libdir" >/dev/null],
6236	 [lt_cv_shlibpath_overrides_runpath=yes])])
6237    LDFLAGS=$save_LDFLAGS
6238    libdir=$save_libdir
6239    ])
6240  shlibpath_overrides_runpath=$lt_cv_shlibpath_overrides_runpath
6241
6242  # This implies no fast_install, which is unacceptable.
6243  # Some rework will be needed to allow for fast_install
6244  # before this can be enabled.
6245  hardcode_into_libs=yes
6246
6247  # Ideally, we could use ldconfig to report *all* directores which are
6248  # searched for libraries, however this is still not possible.  Aside from not
6249  # being certain /sbin/ldconfig is available, command
6250  # 'ldconfig -N -X -v | grep ^/' on 64bit Fedora does not report /usr/lib64,
6251  # even though it is searched at run-time.  Try to do the best guess by
6252  # appending ld.so.conf contents (and includes) to the search path.
6253  if test -f /etc/ld.so.conf; then
6254    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' ' '`
6255    sys_lib_dlsearch_path_spec="/lib /usr/lib $lt_ld_extra"
6256  fi
6257
6258  # We used to test for /lib/ld.so.1 and disable shared libraries on
6259  # powerpc, because MkLinux only supported shared libraries with the
6260  # GNU dynamic linker.  Since this was broken with cross compilers,
6261  # most powerpc-linux boxes support dynamic linking these days and
6262  # people can always --disable-shared, the test was removed, and we
6263  # assume the GNU/Linux dynamic linker is in use.
6264  dynamic_linker='GNU/Linux ld.so'
6265  ;;
6266
6267netbsd*)
6268  version_type=sunos
6269  need_lib_prefix=no
6270  need_version=no
6271  if echo __ELF__ | $CC -E - | $GREP __ELF__ >/dev/null; then
6272    library_names_spec='$libname$release$shared_ext$versuffix $libname$shared_ext$versuffix'
6273    finish_cmds='PATH="\$PATH:/sbin" ldconfig -m $libdir'
6274    dynamic_linker='NetBSD (a.out) ld.so'
6275  else
6276    library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$shared_ext'
6277    soname_spec='$libname$release$shared_ext$major'
6278    dynamic_linker='NetBSD ld.elf_so'
6279  fi
6280  shlibpath_var=LD_LIBRARY_PATH
6281  shlibpath_overrides_runpath=yes
6282  hardcode_into_libs=yes
6283  ;;
6284
6285newsos6)
6286  version_type=linux # correct to gnu/linux during the next big refactor
6287  library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$shared_ext'
6288  shlibpath_var=LD_LIBRARY_PATH
6289  shlibpath_overrides_runpath=yes
6290  ;;
6291
6292*nto* | *qnx*)
6293  version_type=qnx
6294  need_lib_prefix=no
6295  need_version=no
6296  library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$shared_ext'
6297  soname_spec='$libname$release$shared_ext$major'
6298  shlibpath_var=LD_LIBRARY_PATH
6299  shlibpath_overrides_runpath=no
6300  hardcode_into_libs=yes
6301  dynamic_linker='ldqnx.so'
6302  ;;
6303
6304openbsd* | bitrig*)
6305  version_type=sunos
6306  sys_lib_dlsearch_path_spec=/usr/lib
6307  need_lib_prefix=no
6308  if test -z "`echo __ELF__ | $CC -E - | $GREP __ELF__`"; then
6309    need_version=no
6310  else
6311    need_version=yes
6312  fi
6313  library_names_spec='$libname$release$shared_ext$versuffix $libname$shared_ext$versuffix'
6314  finish_cmds='PATH="\$PATH:/sbin" ldconfig -m $libdir'
6315  shlibpath_var=LD_LIBRARY_PATH
6316  shlibpath_overrides_runpath=yes
6317  ;;
6318
6319os2*)
6320  libname_spec='$name'
6321  version_type=windows
6322  shrext_cmds=.dll
6323  need_version=no
6324  need_lib_prefix=no
6325  # OS/2 can only load a DLL with a base name of 8 characters or less.
6326  soname_spec='`test -n "$os2dllname" && libname="$os2dllname";
6327    v=$($ECHO $release$versuffix | tr -d .-);
6328    n=$($ECHO $libname | cut -b -$((8 - ${#v})) | tr . _);
6329    $ECHO $n$v`$shared_ext'
6330  library_names_spec='${libname}_dll.$libext'
6331  dynamic_linker='OS/2 ld.exe'
6332  shlibpath_var=BEGINLIBPATH
6333  sys_lib_search_path_spec="/lib /usr/lib /usr/local/lib"
6334  sys_lib_dlsearch_path_spec=$sys_lib_search_path_spec
6335  postinstall_cmds='base_file=`basename \$file`~
6336    dlpath=`$SHELL 2>&1 -c '\''. $dir/'\''\$base_file'\''i; $ECHO \$dlname'\''`~
6337    dldir=$destdir/`dirname \$dlpath`~
6338    test -d \$dldir || mkdir -p \$dldir~
6339    $install_prog $dir/$dlname \$dldir/$dlname~
6340    chmod a+x \$dldir/$dlname~
6341    if test -n '\''$stripme'\'' && test -n '\''$striplib'\''; then
6342      eval '\''$striplib \$dldir/$dlname'\'' || exit \$?;
6343    fi'
6344  postuninstall_cmds='dldll=`$SHELL 2>&1 -c '\''. $file; $ECHO \$dlname'\''`~
6345    dlpath=$dir/\$dldll~
6346    $RM \$dlpath'
6347  ;;
6348
6349osf3* | osf4* | osf5*)
6350  version_type=osf
6351  need_lib_prefix=no
6352  need_version=no
6353  soname_spec='$libname$release$shared_ext$major'
6354  library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$shared_ext'
6355  shlibpath_var=LD_LIBRARY_PATH
6356  sys_lib_search_path_spec="/usr/shlib /usr/ccs/lib /usr/lib/cmplrs/cc /usr/lib /usr/local/lib /var/shlib"
6357  sys_lib_dlsearch_path_spec=$sys_lib_search_path_spec
6358  ;;
6359
6360rdos*)
6361  dynamic_linker=no
6362  ;;
6363
6364solaris*)
6365  version_type=linux # correct to gnu/linux during the next big refactor
6366  need_lib_prefix=no
6367  need_version=no
6368  library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$shared_ext'
6369  soname_spec='$libname$release$shared_ext$major'
6370  shlibpath_var=LD_LIBRARY_PATH
6371  shlibpath_overrides_runpath=yes
6372  hardcode_into_libs=yes
6373  # ldd complains unless libraries are executable
6374  postinstall_cmds='chmod +x $lib'
6375  ;;
6376
6377sunos4*)
6378  version_type=sunos
6379  library_names_spec='$libname$release$shared_ext$versuffix $libname$shared_ext$versuffix'
6380  finish_cmds='PATH="\$PATH:/usr/etc" ldconfig $libdir'
6381  shlibpath_var=LD_LIBRARY_PATH
6382  shlibpath_overrides_runpath=yes
6383  if test yes = "$with_gnu_ld"; then
6384    need_lib_prefix=no
6385  fi
6386  need_version=yes
6387  ;;
6388
6389sysv4 | sysv4.3*)
6390  version_type=linux # correct to gnu/linux during the next big refactor
6391  library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$shared_ext'
6392  soname_spec='$libname$release$shared_ext$major'
6393  shlibpath_var=LD_LIBRARY_PATH
6394  case $host_vendor in
6395    sni)
6396      shlibpath_overrides_runpath=no
6397      need_lib_prefix=no
6398      runpath_var=LD_RUN_PATH
6399      ;;
6400    siemens)
6401      need_lib_prefix=no
6402      ;;
6403    motorola)
6404      need_lib_prefix=no
6405      need_version=no
6406      shlibpath_overrides_runpath=no
6407      sys_lib_search_path_spec='/lib /usr/lib /usr/ccs/lib'
6408      ;;
6409  esac
6410  ;;
6411
6412sysv4*MP*)
6413  if test -d /usr/nec; then
6414    version_type=linux # correct to gnu/linux during the next big refactor
6415    library_names_spec='$libname$shared_ext.$versuffix $libname$shared_ext.$major $libname$shared_ext'
6416    soname_spec='$libname$shared_ext.$major'
6417    shlibpath_var=LD_LIBRARY_PATH
6418  fi
6419  ;;
6420
6421sysv5* | sco3.2v5* | sco5v6* | unixware* | OpenUNIX* | sysv4*uw2*)
6422  version_type=sco
6423  need_lib_prefix=no
6424  need_version=no
6425  library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext $libname$shared_ext'
6426  soname_spec='$libname$release$shared_ext$major'
6427  shlibpath_var=LD_LIBRARY_PATH
6428  shlibpath_overrides_runpath=yes
6429  hardcode_into_libs=yes
6430  if test yes = "$with_gnu_ld"; then
6431    sys_lib_search_path_spec='/usr/local/lib /usr/gnu/lib /usr/ccs/lib /usr/lib /lib'
6432  else
6433    sys_lib_search_path_spec='/usr/ccs/lib /usr/lib'
6434    case $host_os in
6435      sco3.2v5*)
6436        sys_lib_search_path_spec="$sys_lib_search_path_spec /lib"
6437	;;
6438    esac
6439  fi
6440  sys_lib_dlsearch_path_spec='/usr/lib'
6441  ;;
6442
6443tpf*)
6444  # TPF is a cross-target only.  Preferred cross-host = GNU/Linux.
6445  version_type=linux # correct to gnu/linux during the next big refactor
6446  need_lib_prefix=no
6447  need_version=no
6448  library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$shared_ext'
6449  shlibpath_var=LD_LIBRARY_PATH
6450  shlibpath_overrides_runpath=no
6451  hardcode_into_libs=yes
6452  ;;
6453
6454uts4*)
6455  version_type=linux # correct to gnu/linux during the next big refactor
6456  library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$shared_ext'
6457  soname_spec='$libname$release$shared_ext$major'
6458  shlibpath_var=LD_LIBRARY_PATH
6459  ;;
6460
6461*)
6462  dynamic_linker=no
6463  ;;
6464esac
6465AC_MSG_RESULT([$dynamic_linker])
6466test no = "$dynamic_linker" && can_build_shared=no
6467
6468variables_saved_for_relink="PATH $shlibpath_var $runpath_var"
6469if test yes = "$GCC"; then
6470  variables_saved_for_relink="$variables_saved_for_relink GCC_EXEC_PREFIX COMPILER_PATH LIBRARY_PATH"
6471fi
6472
6473if test set = "${lt_cv_sys_lib_search_path_spec+set}"; then
6474  sys_lib_search_path_spec=$lt_cv_sys_lib_search_path_spec
6475fi
6476
6477if test set = "${lt_cv_sys_lib_dlsearch_path_spec+set}"; then
6478  sys_lib_dlsearch_path_spec=$lt_cv_sys_lib_dlsearch_path_spec
6479fi
6480
6481# remember unaugmented sys_lib_dlsearch_path content for libtool script decls...
6482configure_time_dlsearch_path=$sys_lib_dlsearch_path_spec
6483
6484# ... but it needs LT_SYS_LIBRARY_PATH munging for other configure-time code
6485func_munge_path_list sys_lib_dlsearch_path_spec "$LT_SYS_LIBRARY_PATH"
6486
6487# to be used as default LT_SYS_LIBRARY_PATH value in generated libtool
6488configure_time_lt_sys_library_path=$LT_SYS_LIBRARY_PATH
6489
6490_LT_DECL([], [variables_saved_for_relink], [1],
6491    [Variables whose values should be saved in libtool wrapper scripts and
6492    restored at link time])
6493_LT_DECL([], [need_lib_prefix], [0],
6494    [Do we need the "lib" prefix for modules?])
6495_LT_DECL([], [need_version], [0], [Do we need a version for libraries?])
6496_LT_DECL([], [version_type], [0], [Library versioning type])
6497_LT_DECL([], [runpath_var], [0],  [Shared library runtime path variable])
6498_LT_DECL([], [shlibpath_var], [0],[Shared library path variable])
6499_LT_DECL([], [shlibpath_overrides_runpath], [0],
6500    [Is shlibpath searched before the hard-coded library search path?])
6501_LT_DECL([], [libname_spec], [1], [Format of library name prefix])
6502_LT_DECL([], [library_names_spec], [1],
6503    [[List of archive names.  First name is the real one, the rest are links.
6504    The last name is the one that the linker finds with -lNAME]])
6505_LT_DECL([], [soname_spec], [1],
6506    [[The coded name of the library, if different from the real name]])
6507_LT_DECL([], [install_override_mode], [1],
6508    [Permission mode override for installation of shared libraries])
6509_LT_DECL([], [postinstall_cmds], [2],
6510    [Command to use after installation of a shared archive])
6511_LT_DECL([], [postuninstall_cmds], [2],
6512    [Command to use after uninstallation of a shared archive])
6513_LT_DECL([], [finish_cmds], [2],
6514    [Commands used to finish a libtool library installation in a directory])
6515_LT_DECL([], [finish_eval], [1],
6516    [[As "finish_cmds", except a single script fragment to be evaled but
6517    not shown]])
6518_LT_DECL([], [hardcode_into_libs], [0],
6519    [Whether we should hardcode library paths into libraries])
6520_LT_DECL([], [sys_lib_search_path_spec], [2],
6521    [Compile-time system search path for libraries])
6522_LT_DECL([sys_lib_dlsearch_path_spec], [configure_time_dlsearch_path], [2],
6523    [Detected run-time system search path for libraries])
6524_LT_DECL([], [configure_time_lt_sys_library_path], [2],
6525    [Explicit LT_SYS_LIBRARY_PATH set during ./configure time])
6526])# _LT_SYS_DYNAMIC_LINKER
6527
6528
6529# _LT_PATH_TOOL_PREFIX(TOOL)
6530# --------------------------
6531# find a file program that can recognize shared library
6532AC_DEFUN([_LT_PATH_TOOL_PREFIX],
6533[m4_require([_LT_DECL_EGREP])dnl
6534AC_MSG_CHECKING([for $1])
6535AC_CACHE_VAL(lt_cv_path_MAGIC_CMD,
6536[case $MAGIC_CMD in
6537[[\\/*] |  ?:[\\/]*])
6538  lt_cv_path_MAGIC_CMD=$MAGIC_CMD # Let the user override the test with a path.
6539  ;;
6540*)
6541  lt_save_MAGIC_CMD=$MAGIC_CMD
6542  lt_save_ifs=$IFS; IFS=$PATH_SEPARATOR
6543dnl $ac_dummy forces splitting on constant user-supplied paths.
6544dnl POSIX.2 word splitting is done only on the output of word expansions,
6545dnl not every word.  This closes a longstanding sh security hole.
6546  ac_dummy="m4_if([$2], , $PATH, [$2])"
6547  for ac_dir in $ac_dummy; do
6548    IFS=$lt_save_ifs
6549    test -z "$ac_dir" && ac_dir=.
6550    if test -f "$ac_dir/$1"; then
6551      lt_cv_path_MAGIC_CMD=$ac_dir/"$1"
6552      if test -n "$file_magic_test_file"; then
6553	case $deplibs_check_method in
6554	"file_magic "*)
6555	  file_magic_regex=`expr "$deplibs_check_method" : "file_magic \(.*\)"`
6556	  MAGIC_CMD=$lt_cv_path_MAGIC_CMD
6557	  if eval $file_magic_cmd \$file_magic_test_file 2> /dev/null |
6558	    $EGREP "$file_magic_regex" > /dev/null; then
6559	    :
6560	  else
6561	    cat <<_LT_EOF 1>&2
6562
6563*** Warning: the command libtool uses to detect shared libraries,
6564*** $file_magic_cmd, produces output that libtool cannot recognize.
6565*** The result is that libtool may fail to recognize shared libraries
6566*** as such.  This will affect the creation of libtool libraries that
6567*** depend on shared libraries, but programs linked with such libtool
6568*** libraries will work regardless of this problem.  Nevertheless, you
6569*** may want to report the problem to your system manager and/or to
6570*** bug-libtool@gnu.org
6571
6572_LT_EOF
6573	  fi ;;
6574	esac
6575      fi
6576      break
6577    fi
6578  done
6579  IFS=$lt_save_ifs
6580  MAGIC_CMD=$lt_save_MAGIC_CMD
6581  ;;
6582esac])
6583MAGIC_CMD=$lt_cv_path_MAGIC_CMD
6584if test -n "$MAGIC_CMD"; then
6585  AC_MSG_RESULT($MAGIC_CMD)
6586else
6587  AC_MSG_RESULT(no)
6588fi
6589_LT_DECL([], [MAGIC_CMD], [0],
6590	 [Used to examine libraries when file_magic_cmd begins with "file"])dnl
6591])# _LT_PATH_TOOL_PREFIX
6592
6593# Old name:
6594AU_ALIAS([AC_PATH_TOOL_PREFIX], [_LT_PATH_TOOL_PREFIX])
6595dnl aclocal-1.4 backwards compatibility:
6596dnl AC_DEFUN([AC_PATH_TOOL_PREFIX], [])
6597
6598
6599# _LT_PATH_MAGIC
6600# --------------
6601# find a file program that can recognize a shared library
6602m4_defun([_LT_PATH_MAGIC],
6603[_LT_PATH_TOOL_PREFIX(${ac_tool_prefix}file, /usr/bin$PATH_SEPARATOR$PATH)
6604if test -z "$lt_cv_path_MAGIC_CMD"; then
6605  if test -n "$ac_tool_prefix"; then
6606    _LT_PATH_TOOL_PREFIX(file, /usr/bin$PATH_SEPARATOR$PATH)
6607  else
6608    MAGIC_CMD=:
6609  fi
6610fi
6611])# _LT_PATH_MAGIC
6612
6613
6614# LT_PATH_LD
6615# ----------
6616# find the pathname to the GNU or non-GNU linker
6617AC_DEFUN([LT_PATH_LD],
6618[AC_REQUIRE([AC_PROG_CC])dnl
6619AC_REQUIRE([AC_CANONICAL_HOST])dnl
6620AC_REQUIRE([AC_CANONICAL_BUILD])dnl
6621m4_require([_LT_DECL_SED])dnl
6622m4_require([_LT_DECL_EGREP])dnl
6623m4_require([_LT_PROG_ECHO_BACKSLASH])dnl
6624
6625AC_ARG_WITH([gnu-ld],
6626    [AS_HELP_STRING([--with-gnu-ld],
6627	[assume the C compiler uses GNU ld @<:@default=no@:>@])],
6628    [test no = "$withval" || with_gnu_ld=yes],
6629    [with_gnu_ld=no])dnl
6630
6631ac_prog=ld
6632if test yes = "$GCC"; then
6633  # Check if gcc -print-prog-name=ld gives a path.
6634  AC_MSG_CHECKING([for ld used by $CC])
6635  case $host in
6636  *-*-mingw*)
6637    # gcc leaves a trailing carriage return, which upsets mingw
6638    ac_prog=`($CC -print-prog-name=ld) 2>&5 | tr -d '\015'` ;;
6639  *)
6640    ac_prog=`($CC -print-prog-name=ld) 2>&5` ;;
6641  esac
6642  case $ac_prog in
6643    # Accept absolute paths.
6644    [[\\/]]* | ?:[[\\/]]*)
6645      re_direlt='/[[^/]][[^/]]*/\.\./'
6646      # Canonicalize the pathname of ld
6647      ac_prog=`$ECHO "$ac_prog"| $SED 's%\\\\%/%g'`
6648      while $ECHO "$ac_prog" | $GREP "$re_direlt" > /dev/null 2>&1; do
6649	ac_prog=`$ECHO $ac_prog| $SED "s%$re_direlt%/%"`
6650      done
6651      test -z "$LD" && LD=$ac_prog
6652      ;;
6653  "")
6654    # If it fails, then pretend we aren't using GCC.
6655    ac_prog=ld
6656    ;;
6657  *)
6658    # If it is relative, then search for the first ld in PATH.
6659    with_gnu_ld=unknown
6660    ;;
6661  esac
6662elif test yes = "$with_gnu_ld"; then
6663  AC_MSG_CHECKING([for GNU ld])
6664else
6665  AC_MSG_CHECKING([for non-GNU ld])
6666fi
6667AC_CACHE_VAL(lt_cv_path_LD,
6668[if test -z "$LD"; then
6669  lt_save_ifs=$IFS; IFS=$PATH_SEPARATOR
6670  for ac_dir in $PATH; do
6671    IFS=$lt_save_ifs
6672    test -z "$ac_dir" && ac_dir=.
6673    if test -f "$ac_dir/$ac_prog" || test -f "$ac_dir/$ac_prog$ac_exeext"; then
6674      lt_cv_path_LD=$ac_dir/$ac_prog
6675      # Check to see if the program is GNU ld.  I'd rather use --version,
6676      # but apparently some variants of GNU ld only accept -v.
6677      # Break only if it was the GNU/non-GNU ld that we prefer.
6678      case `"$lt_cv_path_LD" -v 2>&1 </dev/null` in
6679      *GNU* | *'with BFD'*)
6680	test no != "$with_gnu_ld" && break
6681	;;
6682      *)
6683	test yes != "$with_gnu_ld" && break
6684	;;
6685      esac
6686    fi
6687  done
6688  IFS=$lt_save_ifs
6689else
6690  lt_cv_path_LD=$LD # Let the user override the test with a path.
6691fi])
6692LD=$lt_cv_path_LD
6693if test -n "$LD"; then
6694  AC_MSG_RESULT($LD)
6695else
6696  AC_MSG_RESULT(no)
6697fi
6698test -z "$LD" && AC_MSG_ERROR([no acceptable ld found in \$PATH])
6699_LT_PATH_LD_GNU
6700AC_SUBST([LD])
6701
6702_LT_TAGDECL([], [LD], [1], [The linker used to build libraries])
6703])# LT_PATH_LD
6704
6705# Old names:
6706AU_ALIAS([AM_PROG_LD], [LT_PATH_LD])
6707AU_ALIAS([AC_PROG_LD], [LT_PATH_LD])
6708dnl aclocal-1.4 backwards compatibility:
6709dnl AC_DEFUN([AM_PROG_LD], [])
6710dnl AC_DEFUN([AC_PROG_LD], [])
6711
6712
6713# _LT_PATH_LD_GNU
6714#- --------------
6715m4_defun([_LT_PATH_LD_GNU],
6716[AC_CACHE_CHECK([if the linker ($LD) is GNU ld], lt_cv_prog_gnu_ld,
6717[# I'd rather use --version here, but apparently some GNU lds only accept -v.
6718case `$LD -v 2>&1 </dev/null` in
6719*GNU* | *'with BFD'*)
6720  lt_cv_prog_gnu_ld=yes
6721  ;;
6722*)
6723  lt_cv_prog_gnu_ld=no
6724  ;;
6725esac])
6726with_gnu_ld=$lt_cv_prog_gnu_ld
6727])# _LT_PATH_LD_GNU
6728
6729
6730# _LT_CMD_RELOAD
6731# --------------
6732# find reload flag for linker
6733#   -- PORTME Some linkers may need a different reload flag.
6734m4_defun([_LT_CMD_RELOAD],
6735[AC_CACHE_CHECK([for $LD option to reload object files],
6736  lt_cv_ld_reload_flag,
6737  [lt_cv_ld_reload_flag='-r'])
6738reload_flag=$lt_cv_ld_reload_flag
6739case $reload_flag in
6740"" | " "*) ;;
6741*) reload_flag=" $reload_flag" ;;
6742esac
6743reload_cmds='$LD$reload_flag -o $output$reload_objs'
6744case $host_os in
6745  cygwin* | mingw* | pw32* | cegcc*)
6746    if test yes != "$GCC"; then
6747      reload_cmds=false
6748    fi
6749    ;;
6750  darwin*)
6751    if test yes = "$GCC"; then
6752      reload_cmds='$LTCC $LTCFLAGS -nostdlib $wl-r -o $output$reload_objs'
6753    else
6754      reload_cmds='$LD$reload_flag -o $output$reload_objs'
6755    fi
6756    ;;
6757esac
6758_LT_TAGDECL([], [reload_flag], [1], [How to create reloadable object files])dnl
6759_LT_TAGDECL([], [reload_cmds], [2])dnl
6760])# _LT_CMD_RELOAD
6761
6762
6763# _LT_PATH_DD
6764# -----------
6765# find a working dd
6766m4_defun([_LT_PATH_DD],
6767[AC_CACHE_CHECK([for a working dd], [ac_cv_path_lt_DD],
6768[printf 0123456789abcdef0123456789abcdef >conftest.i
6769cat conftest.i conftest.i >conftest2.i
6770: ${lt_DD:=$DD}
6771AC_PATH_PROGS_FEATURE_CHECK([lt_DD], [dd],
6772[if "$ac_path_lt_DD" bs=32 count=1 <conftest2.i >conftest.out 2>/dev/null; then
6773  cmp -s conftest.i conftest.out \
6774  && ac_cv_path_lt_DD="$ac_path_lt_DD" ac_path_lt_DD_found=:
6775fi])
6776rm -f conftest.i conftest2.i conftest.out])
6777])# _LT_PATH_DD
6778
6779
6780# _LT_CMD_TRUNCATE
6781# ----------------
6782# find command to truncate a binary pipe
6783m4_defun([_LT_CMD_TRUNCATE],
6784[m4_require([_LT_PATH_DD])
6785AC_CACHE_CHECK([how to truncate binary pipes], [lt_cv_truncate_bin],
6786[printf 0123456789abcdef0123456789abcdef >conftest.i
6787cat conftest.i conftest.i >conftest2.i
6788lt_cv_truncate_bin=
6789if "$ac_cv_path_lt_DD" bs=32 count=1 <conftest2.i >conftest.out 2>/dev/null; then
6790  cmp -s conftest.i conftest.out \
6791  && lt_cv_truncate_bin="$ac_cv_path_lt_DD bs=4096 count=1"
6792fi
6793rm -f conftest.i conftest2.i conftest.out
6794test -z "$lt_cv_truncate_bin" && lt_cv_truncate_bin="$SED -e 4q"])
6795_LT_DECL([lt_truncate_bin], [lt_cv_truncate_bin], [1],
6796  [Command to truncate a binary pipe])
6797])# _LT_CMD_TRUNCATE
6798
6799
6800# _LT_CHECK_MAGIC_METHOD
6801# ----------------------
6802# how to check for library dependencies
6803#  -- PORTME fill in with the dynamic library characteristics
6804m4_defun([_LT_CHECK_MAGIC_METHOD],
6805[m4_require([_LT_DECL_EGREP])
6806m4_require([_LT_DECL_OBJDUMP])
6807AC_CACHE_CHECK([how to recognize dependent libraries],
6808lt_cv_deplibs_check_method,
6809[lt_cv_file_magic_cmd='$MAGIC_CMD'
6810lt_cv_file_magic_test_file=
6811lt_cv_deplibs_check_method='unknown'
6812# Need to set the preceding variable on all platforms that support
6813# interlibrary dependencies.
6814# 'none' -- dependencies not supported.
6815# 'unknown' -- same as none, but documents that we really don't know.
6816# 'pass_all' -- all dependencies passed with no checks.
6817# 'test_compile' -- check by making test program.
6818# 'file_magic [[regex]]' -- check by looking for files in library path
6819# that responds to the $file_magic_cmd with a given extended regex.
6820# If you have 'file' or equivalent on your system and you're not sure
6821# whether 'pass_all' will *always* work, you probably want this one.
6822
6823case $host_os in
6824aix[[4-9]]*)
6825  lt_cv_deplibs_check_method=pass_all
6826  ;;
6827
6828beos*)
6829  lt_cv_deplibs_check_method=pass_all
6830  ;;
6831
6832bsdi[[45]]*)
6833  lt_cv_deplibs_check_method='file_magic ELF [[0-9]][[0-9]]*-bit [[ML]]SB (shared object|dynamic lib)'
6834  lt_cv_file_magic_cmd='$FILECMD -L'
6835  lt_cv_file_magic_test_file=/shlib/libc.so
6836  ;;
6837
6838cygwin*)
6839  # func_win32_libid is a shell function defined in ltmain.sh
6840  lt_cv_deplibs_check_method='file_magic ^x86 archive import|^x86 DLL'
6841  lt_cv_file_magic_cmd='func_win32_libid'
6842  ;;
6843
6844mingw* | pw32*)
6845  # Base MSYS/MinGW do not provide the 'file' command needed by
6846  # func_win32_libid shell function, so use a weaker test based on 'objdump',
6847  # unless we find 'file', for example because we are cross-compiling.
6848  if ( file / ) >/dev/null 2>&1; then
6849    lt_cv_deplibs_check_method='file_magic ^x86 archive import|^x86 DLL'
6850    lt_cv_file_magic_cmd='func_win32_libid'
6851  else
6852    # Keep this pattern in sync with the one in func_win32_libid.
6853    lt_cv_deplibs_check_method='file_magic file format (pei*-i386(.*architecture: i386)?|pe-arm-wince|pe-x86-64)'
6854    lt_cv_file_magic_cmd='$OBJDUMP -f'
6855  fi
6856  ;;
6857
6858cegcc*)
6859  # use the weaker test based on 'objdump'. See mingw*.
6860  lt_cv_deplibs_check_method='file_magic file format pe-arm-.*little(.*architecture: arm)?'
6861  lt_cv_file_magic_cmd='$OBJDUMP -f'
6862  ;;
6863
6864darwin* | rhapsody*)
6865  lt_cv_deplibs_check_method=pass_all
6866  ;;
6867
6868freebsd* | dragonfly* | midnightbsd*)
6869  if echo __ELF__ | $CC -E - | $GREP __ELF__ > /dev/null; then
6870    case $host_cpu in
6871    i*86 )
6872      # Not sure whether the presence of OpenBSD here was a mistake.
6873      # Let's accept both of them until this is cleared up.
6874      lt_cv_deplibs_check_method='file_magic (FreeBSD|OpenBSD|DragonFly)/i[[3-9]]86 (compact )?demand paged shared library'
6875      lt_cv_file_magic_cmd=$FILECMD
6876      lt_cv_file_magic_test_file=`echo /usr/lib/libc.so.*`
6877      ;;
6878    esac
6879  else
6880    lt_cv_deplibs_check_method=pass_all
6881  fi
6882  ;;
6883
6884haiku*)
6885  lt_cv_deplibs_check_method=pass_all
6886  ;;
6887
6888hpux10.20* | hpux11*)
6889  lt_cv_file_magic_cmd=$FILECMD
6890  case $host_cpu in
6891  ia64*)
6892    lt_cv_deplibs_check_method='file_magic (s[[0-9]][[0-9]][[0-9]]|ELF-[[0-9]][[0-9]]) shared object file - IA64'
6893    lt_cv_file_magic_test_file=/usr/lib/hpux32/libc.so
6894    ;;
6895  hppa*64*)
6896    [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]']
6897    lt_cv_file_magic_test_file=/usr/lib/pa20_64/libc.sl
6898    ;;
6899  *)
6900    lt_cv_deplibs_check_method='file_magic (s[[0-9]][[0-9]][[0-9]]|PA-RISC[[0-9]]\.[[0-9]]) shared library'
6901    lt_cv_file_magic_test_file=/usr/lib/libc.sl
6902    ;;
6903  esac
6904  ;;
6905
6906interix[[3-9]]*)
6907  # PIC code is broken on Interix 3.x, that's why |\.a not |_pic\.a here
6908  lt_cv_deplibs_check_method='match_pattern /lib[[^/]]+(\.so|\.a)$'
6909  ;;
6910
6911irix5* | irix6* | nonstopux*)
6912  case $LD in
6913  *-32|*"-32 ") libmagic=32-bit;;
6914  *-n32|*"-n32 ") libmagic=N32;;
6915  *-64|*"-64 ") libmagic=64-bit;;
6916  *) libmagic=never-match;;
6917  esac
6918  lt_cv_deplibs_check_method=pass_all
6919  ;;
6920
6921# This must be glibc/ELF.
6922linux* | k*bsd*-gnu | kopensolaris*-gnu | gnu*)
6923  lt_cv_deplibs_check_method=pass_all
6924  ;;
6925
6926netbsd*)
6927  if echo __ELF__ | $CC -E - | $GREP __ELF__ > /dev/null; then
6928    lt_cv_deplibs_check_method='match_pattern /lib[[^/]]+(\.so\.[[0-9]]+\.[[0-9]]+|_pic\.a)$'
6929  else
6930    lt_cv_deplibs_check_method='match_pattern /lib[[^/]]+(\.so|_pic\.a)$'
6931  fi
6932  ;;
6933
6934newos6*)
6935  lt_cv_deplibs_check_method='file_magic ELF [[0-9]][[0-9]]*-bit [[ML]]SB (executable|dynamic lib)'
6936  lt_cv_file_magic_cmd=$FILECMD
6937  lt_cv_file_magic_test_file=/usr/lib/libnls.so
6938  ;;
6939
6940*nto* | *qnx*)
6941  lt_cv_deplibs_check_method=pass_all
6942  ;;
6943
6944openbsd* | bitrig*)
6945  if test -z "`echo __ELF__ | $CC -E - | $GREP __ELF__`"; then
6946    lt_cv_deplibs_check_method='match_pattern /lib[[^/]]+(\.so\.[[0-9]]+\.[[0-9]]+|\.so|_pic\.a)$'
6947  else
6948    lt_cv_deplibs_check_method='match_pattern /lib[[^/]]+(\.so\.[[0-9]]+\.[[0-9]]+|_pic\.a)$'
6949  fi
6950  ;;
6951
6952osf3* | osf4* | osf5*)
6953  lt_cv_deplibs_check_method=pass_all
6954  ;;
6955
6956rdos*)
6957  lt_cv_deplibs_check_method=pass_all
6958  ;;
6959
6960solaris*)
6961  lt_cv_deplibs_check_method=pass_all
6962  ;;
6963
6964sysv5* | sco3.2v5* | sco5v6* | unixware* | OpenUNIX* | sysv4*uw2*)
6965  lt_cv_deplibs_check_method=pass_all
6966  ;;
6967
6968sysv4 | sysv4.3*)
6969  case $host_vendor in
6970  motorola)
6971    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]]'
6972    lt_cv_file_magic_test_file=`echo /usr/lib/libc.so*`
6973    ;;
6974  ncr)
6975    lt_cv_deplibs_check_method=pass_all
6976    ;;
6977  sequent)
6978    lt_cv_file_magic_cmd='/bin/file'
6979    lt_cv_deplibs_check_method='file_magic ELF [[0-9]][[0-9]]*-bit [[LM]]SB (shared object|dynamic lib )'
6980    ;;
6981  sni)
6982    lt_cv_file_magic_cmd='/bin/file'
6983    lt_cv_deplibs_check_method="file_magic ELF [[0-9]][[0-9]]*-bit [[LM]]SB dynamic lib"
6984    lt_cv_file_magic_test_file=/lib/libc.so
6985    ;;
6986  siemens)
6987    lt_cv_deplibs_check_method=pass_all
6988    ;;
6989  pc)
6990    lt_cv_deplibs_check_method=pass_all
6991    ;;
6992  esac
6993  ;;
6994
6995tpf*)
6996  lt_cv_deplibs_check_method=pass_all
6997  ;;
6998os2*)
6999  lt_cv_deplibs_check_method=pass_all
7000  ;;
7001esac
7002])
7003
7004file_magic_glob=
7005want_nocaseglob=no
7006if test "$build" = "$host"; then
7007  case $host_os in
7008  mingw* | pw32*)
7009    if ( shopt | grep nocaseglob ) >/dev/null 2>&1; then
7010      want_nocaseglob=yes
7011    else
7012      file_magic_glob=`echo aAbBcCdDeEfFgGhHiIjJkKlLmMnNoOpPqQrRsStTuUvVwWxXyYzZ | $SED -e "s/\(..\)/s\/[[\1]]\/[[\1]]\/g;/g"`
7013    fi
7014    ;;
7015  esac
7016fi
7017
7018file_magic_cmd=$lt_cv_file_magic_cmd
7019deplibs_check_method=$lt_cv_deplibs_check_method
7020test -z "$deplibs_check_method" && deplibs_check_method=unknown
7021
7022_LT_DECL([], [deplibs_check_method], [1],
7023    [Method to check whether dependent libraries are shared objects])
7024_LT_DECL([], [file_magic_cmd], [1],
7025    [Command to use when deplibs_check_method = "file_magic"])
7026_LT_DECL([], [file_magic_glob], [1],
7027    [How to find potential files when deplibs_check_method = "file_magic"])
7028_LT_DECL([], [want_nocaseglob], [1],
7029    [Find potential files using nocaseglob when deplibs_check_method = "file_magic"])
7030])# _LT_CHECK_MAGIC_METHOD
7031
7032
7033# LT_PATH_NM
7034# ----------
7035# find the pathname to a BSD- or MS-compatible name lister
7036AC_DEFUN([LT_PATH_NM],
7037[AC_REQUIRE([AC_PROG_CC])dnl
7038AC_CACHE_CHECK([for BSD- or MS-compatible name lister (nm)], lt_cv_path_NM,
7039[if test -n "$NM"; then
7040  # Let the user override the test.
7041  lt_cv_path_NM=$NM
7042else
7043  lt_nm_to_check=${ac_tool_prefix}nm
7044  if test -n "$ac_tool_prefix" && test "$build" = "$host"; then
7045    lt_nm_to_check="$lt_nm_to_check nm"
7046  fi
7047  for lt_tmp_nm in $lt_nm_to_check; do
7048    lt_save_ifs=$IFS; IFS=$PATH_SEPARATOR
7049    for ac_dir in $PATH /usr/ccs/bin/elf /usr/ccs/bin /usr/ucb /bin; do
7050      IFS=$lt_save_ifs
7051      test -z "$ac_dir" && ac_dir=.
7052      tmp_nm=$ac_dir/$lt_tmp_nm
7053      if test -f "$tmp_nm" || test -f "$tmp_nm$ac_exeext"; then
7054	# Check to see if the nm accepts a BSD-compat flag.
7055	# Adding the 'sed 1q' prevents false positives on HP-UX, which says:
7056	#   nm: unknown option "B" ignored
7057	# Tru64's nm complains that /dev/null is an invalid object file
7058	# MSYS converts /dev/null to NUL, MinGW nm treats NUL as empty
7059	case $build_os in
7060	mingw*) lt_bad_file=conftest.nm/nofile ;;
7061	*) lt_bad_file=/dev/null ;;
7062	esac
7063	case `"$tmp_nm" -B $lt_bad_file 2>&1 | $SED '1q'` in
7064	*$lt_bad_file* | *'Invalid file or object type'*)
7065	  lt_cv_path_NM="$tmp_nm -B"
7066	  break 2
7067	  ;;
7068	*)
7069	  case `"$tmp_nm" -p /dev/null 2>&1 | $SED '1q'` in
7070	  */dev/null*)
7071	    lt_cv_path_NM="$tmp_nm -p"
7072	    break 2
7073	    ;;
7074	  *)
7075	    lt_cv_path_NM=${lt_cv_path_NM="$tmp_nm"} # keep the first match, but
7076	    continue # so that we can try to find one that supports BSD flags
7077	    ;;
7078	  esac
7079	  ;;
7080	esac
7081      fi
7082    done
7083    IFS=$lt_save_ifs
7084  done
7085  : ${lt_cv_path_NM=no}
7086fi])
7087if test no != "$lt_cv_path_NM"; then
7088  NM=$lt_cv_path_NM
7089else
7090  # Didn't find any BSD compatible name lister, look for dumpbin.
7091  if test -n "$DUMPBIN"; then :
7092    # Let the user override the test.
7093  else
7094    AC_CHECK_TOOLS(DUMPBIN, [dumpbin "link -dump"], :)
7095    case `$DUMPBIN -symbols -headers /dev/null 2>&1 | $SED '1q'` in
7096    *COFF*)
7097      DUMPBIN="$DUMPBIN -symbols -headers"
7098      ;;
7099    *)
7100      DUMPBIN=:
7101      ;;
7102    esac
7103  fi
7104  AC_SUBST([DUMPBIN])
7105  if test : != "$DUMPBIN"; then
7106    NM=$DUMPBIN
7107  fi
7108fi
7109test -z "$NM" && NM=nm
7110AC_SUBST([NM])
7111_LT_DECL([], [NM], [1], [A BSD- or MS-compatible name lister])dnl
7112
7113AC_CACHE_CHECK([the name lister ($NM) interface], [lt_cv_nm_interface],
7114  [lt_cv_nm_interface="BSD nm"
7115  echo "int some_variable = 0;" > conftest.$ac_ext
7116  (eval echo "\"\$as_me:$LINENO: $ac_compile\"" >&AS_MESSAGE_LOG_FD)
7117  (eval "$ac_compile" 2>conftest.err)
7118  cat conftest.err >&AS_MESSAGE_LOG_FD
7119  (eval echo "\"\$as_me:$LINENO: $NM \\\"conftest.$ac_objext\\\"\"" >&AS_MESSAGE_LOG_FD)
7120  (eval "$NM \"conftest.$ac_objext\"" 2>conftest.err > conftest.out)
7121  cat conftest.err >&AS_MESSAGE_LOG_FD
7122  (eval echo "\"\$as_me:$LINENO: output\"" >&AS_MESSAGE_LOG_FD)
7123  cat conftest.out >&AS_MESSAGE_LOG_FD
7124  if $GREP 'External.*some_variable' conftest.out > /dev/null; then
7125    lt_cv_nm_interface="MS dumpbin"
7126  fi
7127  rm -f conftest*])
7128])# LT_PATH_NM
7129
7130# Old names:
7131AU_ALIAS([AM_PROG_NM], [LT_PATH_NM])
7132AU_ALIAS([AC_PROG_NM], [LT_PATH_NM])
7133dnl aclocal-1.4 backwards compatibility:
7134dnl AC_DEFUN([AM_PROG_NM], [])
7135dnl AC_DEFUN([AC_PROG_NM], [])
7136
7137# _LT_CHECK_SHAREDLIB_FROM_LINKLIB
7138# --------------------------------
7139# how to determine the name of the shared library
7140# associated with a specific link library.
7141#  -- PORTME fill in with the dynamic library characteristics
7142m4_defun([_LT_CHECK_SHAREDLIB_FROM_LINKLIB],
7143[m4_require([_LT_DECL_EGREP])
7144m4_require([_LT_DECL_OBJDUMP])
7145m4_require([_LT_DECL_DLLTOOL])
7146AC_CACHE_CHECK([how to associate runtime and link libraries],
7147lt_cv_sharedlib_from_linklib_cmd,
7148[lt_cv_sharedlib_from_linklib_cmd='unknown'
7149
7150case $host_os in
7151cygwin* | mingw* | pw32* | cegcc*)
7152  # two different shell functions defined in ltmain.sh;
7153  # decide which one to use based on capabilities of $DLLTOOL
7154  case `$DLLTOOL --help 2>&1` in
7155  *--identify-strict*)
7156    lt_cv_sharedlib_from_linklib_cmd=func_cygming_dll_for_implib
7157    ;;
7158  *)
7159    lt_cv_sharedlib_from_linklib_cmd=func_cygming_dll_for_implib_fallback
7160    ;;
7161  esac
7162  ;;
7163*)
7164  # fallback: assume linklib IS sharedlib
7165  lt_cv_sharedlib_from_linklib_cmd=$ECHO
7166  ;;
7167esac
7168])
7169sharedlib_from_linklib_cmd=$lt_cv_sharedlib_from_linklib_cmd
7170test -z "$sharedlib_from_linklib_cmd" && sharedlib_from_linklib_cmd=$ECHO
7171
7172_LT_DECL([], [sharedlib_from_linklib_cmd], [1],
7173    [Command to associate shared and link libraries])
7174])# _LT_CHECK_SHAREDLIB_FROM_LINKLIB
7175
7176
7177# _LT_PATH_MANIFEST_TOOL
7178# ----------------------
7179# locate the manifest tool
7180m4_defun([_LT_PATH_MANIFEST_TOOL],
7181[AC_CHECK_TOOL(MANIFEST_TOOL, mt, :)
7182test -z "$MANIFEST_TOOL" && MANIFEST_TOOL=mt
7183AC_CACHE_CHECK([if $MANIFEST_TOOL is a manifest tool], [lt_cv_path_mainfest_tool],
7184  [lt_cv_path_mainfest_tool=no
7185  echo "$as_me:$LINENO: $MANIFEST_TOOL '-?'" >&AS_MESSAGE_LOG_FD
7186  $MANIFEST_TOOL '-?' 2>conftest.err > conftest.out
7187  cat conftest.err >&AS_MESSAGE_LOG_FD
7188  if $GREP 'Manifest Tool' conftest.out > /dev/null; then
7189    lt_cv_path_mainfest_tool=yes
7190  fi
7191  rm -f conftest*])
7192if test yes != "$lt_cv_path_mainfest_tool"; then
7193  MANIFEST_TOOL=:
7194fi
7195_LT_DECL([], [MANIFEST_TOOL], [1], [Manifest tool])dnl
7196])# _LT_PATH_MANIFEST_TOOL
7197
7198
7199# _LT_DLL_DEF_P([FILE])
7200# ---------------------
7201# True iff FILE is a Windows DLL '.def' file.
7202# Keep in sync with func_dll_def_p in the libtool script
7203AC_DEFUN([_LT_DLL_DEF_P],
7204[dnl
7205  test DEF = "`$SED -n dnl
7206    -e '\''s/^[[	 ]]*//'\'' dnl Strip leading whitespace
7207    -e '\''/^\(;.*\)*$/d'\'' dnl      Delete empty lines and comments
7208    -e '\''s/^\(EXPORTS\|LIBRARY\)\([[	 ]].*\)*$/DEF/p'\'' dnl
7209    -e q dnl                          Only consider the first "real" line
7210    $1`" dnl
7211])# _LT_DLL_DEF_P
7212
7213
7214# LT_LIB_M
7215# --------
7216# check for math library
7217AC_DEFUN([LT_LIB_M],
7218[AC_REQUIRE([AC_CANONICAL_HOST])dnl
7219LIBM=
7220case $host in
7221*-*-beos* | *-*-cegcc* | *-*-cygwin* | *-*-haiku* | *-*-pw32* | *-*-darwin*)
7222  # These system don't have libm, or don't need it
7223  ;;
7224*-ncr-sysv4.3*)
7225  AC_CHECK_LIB(mw, _mwvalidcheckl, LIBM=-lmw)
7226  AC_CHECK_LIB(m, cos, LIBM="$LIBM -lm")
7227  ;;
7228*)
7229  AC_CHECK_LIB(m, cos, LIBM=-lm)
7230  ;;
7231esac
7232AC_SUBST([LIBM])
7233])# LT_LIB_M
7234
7235# Old name:
7236AU_ALIAS([AC_CHECK_LIBM], [LT_LIB_M])
7237dnl aclocal-1.4 backwards compatibility:
7238dnl AC_DEFUN([AC_CHECK_LIBM], [])
7239
7240
7241# _LT_COMPILER_NO_RTTI([TAGNAME])
7242# -------------------------------
7243m4_defun([_LT_COMPILER_NO_RTTI],
7244[m4_require([_LT_TAG_COMPILER])dnl
7245
7246_LT_TAGVAR(lt_prog_compiler_no_builtin_flag, $1)=
7247
7248if test yes = "$GCC"; then
7249  case $cc_basename in
7250  nvcc*)
7251    _LT_TAGVAR(lt_prog_compiler_no_builtin_flag, $1)=' -Xcompiler -fno-builtin' ;;
7252  *)
7253    _LT_TAGVAR(lt_prog_compiler_no_builtin_flag, $1)=' -fno-builtin' ;;
7254  esac
7255
7256  _LT_COMPILER_OPTION([if $compiler supports -fno-rtti -fno-exceptions],
7257    lt_cv_prog_compiler_rtti_exceptions,
7258    [-fno-rtti -fno-exceptions], [],
7259    [_LT_TAGVAR(lt_prog_compiler_no_builtin_flag, $1)="$_LT_TAGVAR(lt_prog_compiler_no_builtin_flag, $1) -fno-rtti -fno-exceptions"])
7260fi
7261_LT_TAGDECL([no_builtin_flag], [lt_prog_compiler_no_builtin_flag], [1],
7262	[Compiler flag to turn off builtin functions])
7263])# _LT_COMPILER_NO_RTTI
7264
7265
7266# _LT_CMD_GLOBAL_SYMBOLS
7267# ----------------------
7268m4_defun([_LT_CMD_GLOBAL_SYMBOLS],
7269[AC_REQUIRE([AC_CANONICAL_HOST])dnl
7270AC_REQUIRE([AC_PROG_CC])dnl
7271AC_REQUIRE([AC_PROG_AWK])dnl
7272AC_REQUIRE([LT_PATH_NM])dnl
7273AC_REQUIRE([LT_PATH_LD])dnl
7274m4_require([_LT_DECL_SED])dnl
7275m4_require([_LT_DECL_EGREP])dnl
7276m4_require([_LT_TAG_COMPILER])dnl
7277
7278# Check for command to grab the raw symbol name followed by C symbol from nm.
7279AC_MSG_CHECKING([command to parse $NM output from $compiler object])
7280AC_CACHE_VAL([lt_cv_sys_global_symbol_pipe],
7281[
7282# These are sane defaults that work on at least a few old systems.
7283# [They come from Ultrix.  What could be older than Ultrix?!! ;)]
7284
7285# Character class describing NM global symbol codes.
7286symcode='[[BCDEGRST]]'
7287
7288# Regexp to match symbols that can be accessed directly from C.
7289sympat='\([[_A-Za-z]][[_A-Za-z0-9]]*\)'
7290
7291# Define system-specific variables.
7292case $host_os in
7293aix*)
7294  symcode='[[BCDT]]'
7295  ;;
7296cygwin* | mingw* | pw32* | cegcc*)
7297  symcode='[[ABCDGISTW]]'
7298  ;;
7299hpux*)
7300  if test ia64 = "$host_cpu"; then
7301    symcode='[[ABCDEGRST]]'
7302  fi
7303  ;;
7304irix* | nonstopux*)
7305  symcode='[[BCDEGRST]]'
7306  ;;
7307osf*)
7308  symcode='[[BCDEGQRST]]'
7309  ;;
7310solaris*)
7311  symcode='[[BDRT]]'
7312  ;;
7313sco3.2v5*)
7314  symcode='[[DT]]'
7315  ;;
7316sysv4.2uw2*)
7317  symcode='[[DT]]'
7318  ;;
7319sysv5* | sco5v6* | unixware* | OpenUNIX*)
7320  symcode='[[ABDT]]'
7321  ;;
7322sysv4)
7323  symcode='[[DFNSTU]]'
7324  ;;
7325esac
7326
7327# If we're using GNU nm, then use its standard symbol codes.
7328case `$NM -V 2>&1` in
7329*GNU* | *'with BFD'*)
7330  symcode='[[ABCDGIRSTW]]' ;;
7331esac
7332
7333if test "$lt_cv_nm_interface" = "MS dumpbin"; then
7334  # Gets list of data symbols to import.
7335  lt_cv_sys_global_symbol_to_import="$SED -n -e 's/^I .* \(.*\)$/\1/p'"
7336  # Adjust the below global symbol transforms to fixup imported variables.
7337  lt_cdecl_hook=" -e 's/^I .* \(.*\)$/extern __declspec(dllimport) char \1;/p'"
7338  lt_c_name_hook=" -e 's/^I .* \(.*\)$/  {\"\1\", (void *) 0},/p'"
7339  lt_c_name_lib_hook="\
7340  -e 's/^I .* \(lib.*\)$/  {\"\1\", (void *) 0},/p'\
7341  -e 's/^I .* \(.*\)$/  {\"lib\1\", (void *) 0},/p'"
7342else
7343  # Disable hooks by default.
7344  lt_cv_sys_global_symbol_to_import=
7345  lt_cdecl_hook=
7346  lt_c_name_hook=
7347  lt_c_name_lib_hook=
7348fi
7349
7350# Transform an extracted symbol line into a proper C declaration.
7351# Some systems (esp. on ia64) link data and code symbols differently,
7352# so use this general approach.
7353lt_cv_sys_global_symbol_to_cdecl="$SED -n"\
7354$lt_cdecl_hook\
7355" -e 's/^T .* \(.*\)$/extern int \1();/p'"\
7356" -e 's/^$symcode$symcode* .* \(.*\)$/extern char \1;/p'"
7357
7358# Transform an extracted symbol line into symbol name and symbol address
7359lt_cv_sys_global_symbol_to_c_name_address="$SED -n"\
7360$lt_c_name_hook\
7361" -e 's/^: \(.*\) .*$/  {\"\1\", (void *) 0},/p'"\
7362" -e 's/^$symcode$symcode* .* \(.*\)$/  {\"\1\", (void *) \&\1},/p'"
7363
7364# Transform an extracted symbol line into symbol name with lib prefix and
7365# symbol address.
7366lt_cv_sys_global_symbol_to_c_name_address_lib_prefix="$SED -n"\
7367$lt_c_name_lib_hook\
7368" -e 's/^: \(.*\) .*$/  {\"\1\", (void *) 0},/p'"\
7369" -e 's/^$symcode$symcode* .* \(lib.*\)$/  {\"\1\", (void *) \&\1},/p'"\
7370" -e 's/^$symcode$symcode* .* \(.*\)$/  {\"lib\1\", (void *) \&\1},/p'"
7371
7372# Handle CRLF in mingw tool chain
7373opt_cr=
7374case $build_os in
7375mingw*)
7376  opt_cr=`$ECHO 'x\{0,1\}' | tr x '\015'` # option cr in regexp
7377  ;;
7378esac
7379
7380# Try without a prefix underscore, then with it.
7381for ac_symprfx in "" "_"; do
7382
7383  # Transform symcode, sympat, and symprfx into a raw symbol and a C symbol.
7384  symxfrm="\\1 $ac_symprfx\\2 \\2"
7385
7386  # Write the raw and C identifiers.
7387  if test "$lt_cv_nm_interface" = "MS dumpbin"; then
7388    # Fake it for dumpbin and say T for any non-static function,
7389    # D for any global variable and I for any imported variable.
7390    # Also find C++ and __fastcall symbols from MSVC++ or ICC,
7391    # which start with @ or ?.
7392    lt_cv_sys_global_symbol_pipe="$AWK ['"\
7393"     {last_section=section; section=\$ 3};"\
7394"     /^COFF SYMBOL TABLE/{for(i in hide) delete hide[i]};"\
7395"     /Section length .*#relocs.*(pick any)/{hide[last_section]=1};"\
7396"     /^ *Symbol name *: /{split(\$ 0,sn,\":\"); si=substr(sn[2],2)};"\
7397"     /^ *Type *: code/{print \"T\",si,substr(si,length(prfx))};"\
7398"     /^ *Type *: data/{print \"I\",si,substr(si,length(prfx))};"\
7399"     \$ 0!~/External *\|/{next};"\
7400"     / 0+ UNDEF /{next}; / UNDEF \([^|]\)*()/{next};"\
7401"     {if(hide[section]) next};"\
7402"     {f=\"D\"}; \$ 0~/\(\).*\|/{f=\"T\"};"\
7403"     {split(\$ 0,a,/\||\r/); split(a[2],s)};"\
7404"     s[1]~/^[@?]/{print f,s[1],s[1]; next};"\
7405"     s[1]~prfx {split(s[1],t,\"@\"); print f,t[1],substr(t[1],length(prfx))}"\
7406"     ' prfx=^$ac_symprfx]"
7407  else
7408    lt_cv_sys_global_symbol_pipe="$SED -n -e 's/^.*[[	 ]]\($symcode$symcode*\)[[	 ]][[	 ]]*$ac_symprfx$sympat$opt_cr$/$symxfrm/p'"
7409  fi
7410  lt_cv_sys_global_symbol_pipe="$lt_cv_sys_global_symbol_pipe | $SED '/ __gnu_lto/d'"
7411
7412  # Check to see that the pipe works correctly.
7413  pipe_works=no
7414
7415  rm -f conftest*
7416  cat > conftest.$ac_ext <<_LT_EOF
7417#ifdef __cplusplus
7418extern "C" {
7419#endif
7420char nm_test_var;
7421void nm_test_func(void);
7422void nm_test_func(void){}
7423#ifdef __cplusplus
7424}
7425#endif
7426int main(){nm_test_var='a';nm_test_func();return(0);}
7427_LT_EOF
7428
7429  if AC_TRY_EVAL(ac_compile); then
7430    # Now try to grab the symbols.
7431    nlist=conftest.nm
7432    if AC_TRY_EVAL(NM conftest.$ac_objext \| "$lt_cv_sys_global_symbol_pipe" \> $nlist) && test -s "$nlist"; then
7433      # Try sorting and uniquifying the output.
7434      if sort "$nlist" | uniq > "$nlist"T; then
7435	mv -f "$nlist"T "$nlist"
7436      else
7437	rm -f "$nlist"T
7438      fi
7439
7440      # Make sure that we snagged all the symbols we need.
7441      if $GREP ' nm_test_var$' "$nlist" >/dev/null; then
7442	if $GREP ' nm_test_func$' "$nlist" >/dev/null; then
7443	  cat <<_LT_EOF > conftest.$ac_ext
7444/* Keep this code in sync between libtool.m4, ltmain, lt_system.h, and tests.  */
7445#if defined _WIN32 || defined __CYGWIN__ || defined _WIN32_WCE
7446/* DATA imports from DLLs on WIN32 can't be const, because runtime
7447   relocations are performed -- see ld's documentation on pseudo-relocs.  */
7448# define LT@&t@_DLSYM_CONST
7449#elif defined __osf__
7450/* This system does not cope well with relocations in const data.  */
7451# define LT@&t@_DLSYM_CONST
7452#else
7453# define LT@&t@_DLSYM_CONST const
7454#endif
7455
7456#ifdef __cplusplus
7457extern "C" {
7458#endif
7459
7460_LT_EOF
7461	  # Now generate the symbol file.
7462	  eval "$lt_cv_sys_global_symbol_to_cdecl"' < "$nlist" | $GREP -v main >> conftest.$ac_ext'
7463
7464	  cat <<_LT_EOF >> conftest.$ac_ext
7465
7466/* The mapping between symbol names and symbols.  */
7467LT@&t@_DLSYM_CONST struct {
7468  const char *name;
7469  void       *address;
7470}
7471lt__PROGRAM__LTX_preloaded_symbols[[]] =
7472{
7473  { "@PROGRAM@", (void *) 0 },
7474_LT_EOF
7475	  $SED "s/^$symcode$symcode* .* \(.*\)$/  {\"\1\", (void *) \&\1},/" < "$nlist" | $GREP -v main >> conftest.$ac_ext
7476	  cat <<\_LT_EOF >> conftest.$ac_ext
7477  {0, (void *) 0}
7478};
7479
7480/* This works around a problem in FreeBSD linker */
7481#ifdef FREEBSD_WORKAROUND
7482static const void *lt_preloaded_setup() {
7483  return lt__PROGRAM__LTX_preloaded_symbols;
7484}
7485#endif
7486
7487#ifdef __cplusplus
7488}
7489#endif
7490_LT_EOF
7491	  # Now try linking the two files.
7492	  mv conftest.$ac_objext conftstm.$ac_objext
7493	  lt_globsym_save_LIBS=$LIBS
7494	  lt_globsym_save_CFLAGS=$CFLAGS
7495	  LIBS=conftstm.$ac_objext
7496	  CFLAGS="$CFLAGS$_LT_TAGVAR(lt_prog_compiler_no_builtin_flag, $1)"
7497	  if AC_TRY_EVAL(ac_link) && test -s conftest$ac_exeext; then
7498	    pipe_works=yes
7499	  fi
7500	  LIBS=$lt_globsym_save_LIBS
7501	  CFLAGS=$lt_globsym_save_CFLAGS
7502	else
7503	  echo "cannot find nm_test_func in $nlist" >&AS_MESSAGE_LOG_FD
7504	fi
7505      else
7506	echo "cannot find nm_test_var in $nlist" >&AS_MESSAGE_LOG_FD
7507      fi
7508    else
7509      echo "cannot run $lt_cv_sys_global_symbol_pipe" >&AS_MESSAGE_LOG_FD
7510    fi
7511  else
7512    echo "$progname: failed program was:" >&AS_MESSAGE_LOG_FD
7513    cat conftest.$ac_ext >&5
7514  fi
7515  rm -rf conftest* conftst*
7516
7517  # Do not use the global_symbol_pipe unless it works.
7518  if test yes = "$pipe_works"; then
7519    break
7520  else
7521    lt_cv_sys_global_symbol_pipe=
7522  fi
7523done
7524])
7525if test -z "$lt_cv_sys_global_symbol_pipe"; then
7526  lt_cv_sys_global_symbol_to_cdecl=
7527fi
7528if test -z "$lt_cv_sys_global_symbol_pipe$lt_cv_sys_global_symbol_to_cdecl"; then
7529  AC_MSG_RESULT(failed)
7530else
7531  AC_MSG_RESULT(ok)
7532fi
7533
7534# Response file support.
7535if test "$lt_cv_nm_interface" = "MS dumpbin"; then
7536  nm_file_list_spec='@'
7537elif $NM --help 2>/dev/null | grep '[[@]]FILE' >/dev/null; then
7538  nm_file_list_spec='@'
7539fi
7540
7541_LT_DECL([global_symbol_pipe], [lt_cv_sys_global_symbol_pipe], [1],
7542    [Take the output of nm and produce a listing of raw symbols and C names])
7543_LT_DECL([global_symbol_to_cdecl], [lt_cv_sys_global_symbol_to_cdecl], [1],
7544    [Transform the output of nm in a proper C declaration])
7545_LT_DECL([global_symbol_to_import], [lt_cv_sys_global_symbol_to_import], [1],
7546    [Transform the output of nm into a list of symbols to manually relocate])
7547_LT_DECL([global_symbol_to_c_name_address],
7548    [lt_cv_sys_global_symbol_to_c_name_address], [1],
7549    [Transform the output of nm in a C name address pair])
7550_LT_DECL([global_symbol_to_c_name_address_lib_prefix],
7551    [lt_cv_sys_global_symbol_to_c_name_address_lib_prefix], [1],
7552    [Transform the output of nm in a C name address pair when lib prefix is needed])
7553_LT_DECL([nm_interface], [lt_cv_nm_interface], [1],
7554    [The name lister interface])
7555_LT_DECL([], [nm_file_list_spec], [1],
7556    [Specify filename containing input files for $NM])
7557]) # _LT_CMD_GLOBAL_SYMBOLS
7558
7559
7560# _LT_COMPILER_PIC([TAGNAME])
7561# ---------------------------
7562m4_defun([_LT_COMPILER_PIC],
7563[m4_require([_LT_TAG_COMPILER])dnl
7564_LT_TAGVAR(lt_prog_compiler_wl, $1)=
7565_LT_TAGVAR(lt_prog_compiler_pic, $1)=
7566_LT_TAGVAR(lt_prog_compiler_static, $1)=
7567
7568m4_if([$1], [CXX], [
7569  # C++ specific cases for pic, static, wl, etc.
7570  if test yes = "$GXX"; then
7571    _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
7572    _LT_TAGVAR(lt_prog_compiler_static, $1)='-static'
7573
7574    case $host_os in
7575    aix*)
7576      # All AIX code is PIC.
7577      if test ia64 = "$host_cpu"; then
7578	# AIX 5 now supports IA64 processor
7579	_LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic'
7580      fi
7581      _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fPIC'
7582      ;;
7583
7584    amigaos*)
7585      case $host_cpu in
7586      powerpc)
7587            # see comment about AmigaOS4 .so support
7588            _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fPIC'
7589        ;;
7590      m68k)
7591            # FIXME: we need at least 68020 code to build shared libraries, but
7592            # adding the '-m68020' flag to GCC prevents building anything better,
7593            # like '-m68040'.
7594            _LT_TAGVAR(lt_prog_compiler_pic, $1)='-m68020 -resident32 -malways-restore-a4'
7595        ;;
7596      esac
7597      ;;
7598
7599    beos* | irix5* | irix6* | nonstopux* | osf3* | osf4* | osf5*)
7600      # PIC is the default for these OSes.
7601      ;;
7602    mingw* | cygwin* | os2* | pw32* | cegcc*)
7603      # This hack is so that the source file can tell whether it is being
7604      # built for inclusion in a dll (and should export symbols for example).
7605      # Although the cygwin gcc ignores -fPIC, still need this for old-style
7606      # (--disable-auto-import) libraries
7607      m4_if([$1], [GCJ], [],
7608	[_LT_TAGVAR(lt_prog_compiler_pic, $1)='-DDLL_EXPORT'])
7609      case $host_os in
7610      os2*)
7611	_LT_TAGVAR(lt_prog_compiler_static, $1)='$wl-static'
7612	;;
7613      esac
7614      ;;
7615    darwin* | rhapsody*)
7616      # PIC is the default on this platform
7617      # Common symbols not allowed in MH_DYLIB files
7618      _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fno-common'
7619      ;;
7620    *djgpp*)
7621      # DJGPP does not support shared libraries at all
7622      _LT_TAGVAR(lt_prog_compiler_pic, $1)=
7623      ;;
7624    haiku*)
7625      # PIC is the default for Haiku.
7626      # The "-static" flag exists, but is broken.
7627      _LT_TAGVAR(lt_prog_compiler_static, $1)=
7628      ;;
7629    interix[[3-9]]*)
7630      # Interix 3.x gcc -fpic/-fPIC options generate broken code.
7631      # Instead, we relocate shared libraries at runtime.
7632      ;;
7633    sysv4*MP*)
7634      if test -d /usr/nec; then
7635	_LT_TAGVAR(lt_prog_compiler_pic, $1)=-Kconform_pic
7636      fi
7637      ;;
7638    hpux*)
7639      # PIC is the default for 64-bit PA HP-UX, but not for 32-bit
7640      # PA HP-UX.  On IA64 HP-UX, PIC is the default but the pic flag
7641      # sets the default TLS model and affects inlining.
7642      case $host_cpu in
7643      hppa*64*)
7644	;;
7645      *)
7646	_LT_TAGVAR(lt_prog_compiler_pic, $1)='-fPIC'
7647	;;
7648      esac
7649      ;;
7650    *qnx* | *nto*)
7651      # QNX uses GNU C++, but need to define -shared option too, otherwise
7652      # it will coredump.
7653      _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fPIC -shared'
7654      ;;
7655    *)
7656      _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fPIC'
7657      ;;
7658    esac
7659  else
7660    case $host_os in
7661      aix[[4-9]]*)
7662	# All AIX code is PIC.
7663	if test ia64 = "$host_cpu"; then
7664	  # AIX 5 now supports IA64 processor
7665	  _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic'
7666	else
7667	  _LT_TAGVAR(lt_prog_compiler_static, $1)='-bnso -bI:/lib/syscalls.exp'
7668	fi
7669	;;
7670      chorus*)
7671	case $cc_basename in
7672	cxch68*)
7673	  # Green Hills C++ Compiler
7674	  # _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"
7675	  ;;
7676	esac
7677	;;
7678      mingw* | cygwin* | os2* | pw32* | cegcc*)
7679	# This hack is so that the source file can tell whether it is being
7680	# built for inclusion in a dll (and should export symbols for example).
7681	m4_if([$1], [GCJ], [],
7682	  [_LT_TAGVAR(lt_prog_compiler_pic, $1)='-DDLL_EXPORT'])
7683	;;
7684      dgux*)
7685	case $cc_basename in
7686	  ec++*)
7687	    _LT_TAGVAR(lt_prog_compiler_pic, $1)='-KPIC'
7688	    ;;
7689	  ghcx*)
7690	    # Green Hills C++ Compiler
7691	    _LT_TAGVAR(lt_prog_compiler_pic, $1)='-pic'
7692	    ;;
7693	  *)
7694	    ;;
7695	esac
7696	;;
7697      freebsd* | dragonfly* | midnightbsd*)
7698	# FreeBSD uses GNU C++
7699	;;
7700      hpux9* | hpux10* | hpux11*)
7701	case $cc_basename in
7702	  CC*)
7703	    _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
7704	    _LT_TAGVAR(lt_prog_compiler_static, $1)='$wl-a ${wl}archive'
7705	    if test ia64 != "$host_cpu"; then
7706	      _LT_TAGVAR(lt_prog_compiler_pic, $1)='+Z'
7707	    fi
7708	    ;;
7709	  aCC*)
7710	    _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
7711	    _LT_TAGVAR(lt_prog_compiler_static, $1)='$wl-a ${wl}archive'
7712	    case $host_cpu in
7713	    hppa*64*|ia64*)
7714	      # +Z the default
7715	      ;;
7716	    *)
7717	      _LT_TAGVAR(lt_prog_compiler_pic, $1)='+Z'
7718	      ;;
7719	    esac
7720	    ;;
7721	  *)
7722	    ;;
7723	esac
7724	;;
7725      interix*)
7726	# This is c89, which is MS Visual C++ (no shared libs)
7727	# Anyone wants to do a port?
7728	;;
7729      irix5* | irix6* | nonstopux*)
7730	case $cc_basename in
7731	  CC*)
7732	    _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
7733	    _LT_TAGVAR(lt_prog_compiler_static, $1)='-non_shared'
7734	    # CC pic flag -KPIC is the default.
7735	    ;;
7736	  *)
7737	    ;;
7738	esac
7739	;;
7740      linux* | k*bsd*-gnu | kopensolaris*-gnu | gnu*)
7741	case $cc_basename in
7742	  KCC*)
7743	    # KAI C++ Compiler
7744	    _LT_TAGVAR(lt_prog_compiler_wl, $1)='--backend -Wl,'
7745	    _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fPIC'
7746	    ;;
7747	  ecpc* )
7748	    # old Intel C++ for x86_64, which still supported -KPIC.
7749	    _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
7750	    _LT_TAGVAR(lt_prog_compiler_pic, $1)='-KPIC'
7751	    _LT_TAGVAR(lt_prog_compiler_static, $1)='-static'
7752	    ;;
7753	  icpc* )
7754	    # Intel C++, used to be incompatible with GCC.
7755	    # ICC 10 doesn't accept -KPIC any more.
7756	    _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
7757	    _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fPIC'
7758	    _LT_TAGVAR(lt_prog_compiler_static, $1)='-static'
7759	    ;;
7760	  pgCC* | pgcpp*)
7761	    # Portland Group C++ compiler
7762	    _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
7763	    _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fpic'
7764	    _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic'
7765	    ;;
7766	  cxx*)
7767	    # Compaq C++
7768	    # Make sure the PIC flag is empty.  It appears that all Alpha
7769	    # Linux and Compaq Tru64 Unix objects are PIC.
7770	    _LT_TAGVAR(lt_prog_compiler_pic, $1)=
7771	    _LT_TAGVAR(lt_prog_compiler_static, $1)='-non_shared'
7772	    ;;
7773	  xlc* | xlC* | bgxl[[cC]]* | mpixl[[cC]]*)
7774	    # IBM XL 8.0, 9.0 on PPC and BlueGene
7775	    _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
7776	    _LT_TAGVAR(lt_prog_compiler_pic, $1)='-qpic'
7777	    _LT_TAGVAR(lt_prog_compiler_static, $1)='-qstaticlink'
7778	    ;;
7779	  *)
7780	    case `$CC -V 2>&1 | $SED 5q` in
7781	    *Sun\ C*)
7782	      # Sun C++ 5.9
7783	      _LT_TAGVAR(lt_prog_compiler_pic, $1)='-KPIC'
7784	      _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic'
7785	      _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Qoption ld '
7786	      ;;
7787	    esac
7788	    ;;
7789	esac
7790	;;
7791      lynxos*)
7792	;;
7793      m88k*)
7794	;;
7795      mvs*)
7796	case $cc_basename in
7797	  cxx*)
7798	    _LT_TAGVAR(lt_prog_compiler_pic, $1)='-W c,exportall'
7799	    ;;
7800	  *)
7801	    ;;
7802	esac
7803	;;
7804      netbsd*)
7805	;;
7806      *qnx* | *nto*)
7807        # QNX uses GNU C++, but need to define -shared option too, otherwise
7808        # it will coredump.
7809        _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fPIC -shared'
7810        ;;
7811      osf3* | osf4* | osf5*)
7812	case $cc_basename in
7813	  KCC*)
7814	    _LT_TAGVAR(lt_prog_compiler_wl, $1)='--backend -Wl,'
7815	    ;;
7816	  RCC*)
7817	    # Rational C++ 2.4.1
7818	    _LT_TAGVAR(lt_prog_compiler_pic, $1)='-pic'
7819	    ;;
7820	  cxx*)
7821	    # Digital/Compaq C++
7822	    _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
7823	    # Make sure the PIC flag is empty.  It appears that all Alpha
7824	    # Linux and Compaq Tru64 Unix objects are PIC.
7825	    _LT_TAGVAR(lt_prog_compiler_pic, $1)=
7826	    _LT_TAGVAR(lt_prog_compiler_static, $1)='-non_shared'
7827	    ;;
7828	  *)
7829	    ;;
7830	esac
7831	;;
7832      psos*)
7833	;;
7834      solaris*)
7835	case $cc_basename in
7836	  CC* | sunCC*)
7837	    # Sun C++ 4.2, 5.x and Centerline C++
7838	    _LT_TAGVAR(lt_prog_compiler_pic, $1)='-KPIC'
7839	    _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic'
7840	    _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Qoption ld '
7841	    ;;
7842	  gcx*)
7843	    # Green Hills C++ Compiler
7844	    _LT_TAGVAR(lt_prog_compiler_pic, $1)='-PIC'
7845	    ;;
7846	  *)
7847	    ;;
7848	esac
7849	;;
7850      sunos4*)
7851	case $cc_basename in
7852	  CC*)
7853	    # Sun C++ 4.x
7854	    _LT_TAGVAR(lt_prog_compiler_pic, $1)='-pic'
7855	    _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic'
7856	    ;;
7857	  lcc*)
7858	    # Lucid
7859	    _LT_TAGVAR(lt_prog_compiler_pic, $1)='-pic'
7860	    ;;
7861	  *)
7862	    ;;
7863	esac
7864	;;
7865      sysv5* | unixware* | sco3.2v5* | sco5v6* | OpenUNIX*)
7866	case $cc_basename in
7867	  CC*)
7868	    _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
7869	    _LT_TAGVAR(lt_prog_compiler_pic, $1)='-KPIC'
7870	    _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic'
7871	    ;;
7872	esac
7873	;;
7874      tandem*)
7875	case $cc_basename in
7876	  NCC*)
7877	    # NonStop-UX NCC 3.20
7878	    _LT_TAGVAR(lt_prog_compiler_pic, $1)='-KPIC'
7879	    ;;
7880	  *)
7881	    ;;
7882	esac
7883	;;
7884      vxworks*)
7885	;;
7886      *)
7887	_LT_TAGVAR(lt_prog_compiler_can_build_shared, $1)=no
7888	;;
7889    esac
7890  fi
7891],
7892[
7893  if test yes = "$GCC"; then
7894    _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
7895    _LT_TAGVAR(lt_prog_compiler_static, $1)='-static'
7896
7897    case $host_os in
7898      aix*)
7899      # All AIX code is PIC.
7900      if test ia64 = "$host_cpu"; then
7901	# AIX 5 now supports IA64 processor
7902	_LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic'
7903      fi
7904      _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fPIC'
7905      ;;
7906
7907    amigaos*)
7908      case $host_cpu in
7909      powerpc)
7910            # see comment about AmigaOS4 .so support
7911            _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fPIC'
7912        ;;
7913      m68k)
7914            # FIXME: we need at least 68020 code to build shared libraries, but
7915            # adding the '-m68020' flag to GCC prevents building anything better,
7916            # like '-m68040'.
7917            _LT_TAGVAR(lt_prog_compiler_pic, $1)='-m68020 -resident32 -malways-restore-a4'
7918        ;;
7919      esac
7920      ;;
7921
7922    beos* | irix5* | irix6* | nonstopux* | osf3* | osf4* | osf5*)
7923      # PIC is the default for these OSes.
7924      ;;
7925
7926    mingw* | cygwin* | pw32* | os2* | cegcc*)
7927      # This hack is so that the source file can tell whether it is being
7928      # built for inclusion in a dll (and should export symbols for example).
7929      # Although the cygwin gcc ignores -fPIC, still need this for old-style
7930      # (--disable-auto-import) libraries
7931      m4_if([$1], [GCJ], [],
7932	[_LT_TAGVAR(lt_prog_compiler_pic, $1)='-DDLL_EXPORT'])
7933      case $host_os in
7934      os2*)
7935	_LT_TAGVAR(lt_prog_compiler_static, $1)='$wl-static'
7936	;;
7937      esac
7938      ;;
7939
7940    darwin* | rhapsody*)
7941      # PIC is the default on this platform
7942      # Common symbols not allowed in MH_DYLIB files
7943      _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fno-common'
7944      ;;
7945
7946    haiku*)
7947      # PIC is the default for Haiku.
7948      # The "-static" flag exists, but is broken.
7949      _LT_TAGVAR(lt_prog_compiler_static, $1)=
7950      ;;
7951
7952    hpux*)
7953      # PIC is the default for 64-bit PA HP-UX, but not for 32-bit
7954      # PA HP-UX.  On IA64 HP-UX, PIC is the default but the pic flag
7955      # sets the default TLS model and affects inlining.
7956      case $host_cpu in
7957      hppa*64*)
7958	# +Z the default
7959	;;
7960      *)
7961	_LT_TAGVAR(lt_prog_compiler_pic, $1)='-fPIC'
7962	;;
7963      esac
7964      ;;
7965
7966    interix[[3-9]]*)
7967      # Interix 3.x gcc -fpic/-fPIC options generate broken code.
7968      # Instead, we relocate shared libraries at runtime.
7969      ;;
7970
7971    msdosdjgpp*)
7972      # Just because we use GCC doesn't mean we suddenly get shared libraries
7973      # on systems that don't support them.
7974      _LT_TAGVAR(lt_prog_compiler_can_build_shared, $1)=no
7975      enable_shared=no
7976      ;;
7977
7978    *nto* | *qnx*)
7979      # QNX uses GNU C++, but need to define -shared option too, otherwise
7980      # it will coredump.
7981      _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fPIC -shared'
7982      ;;
7983
7984    sysv4*MP*)
7985      if test -d /usr/nec; then
7986	_LT_TAGVAR(lt_prog_compiler_pic, $1)=-Kconform_pic
7987      fi
7988      ;;
7989
7990    *)
7991      _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fPIC'
7992      ;;
7993    esac
7994
7995    case $cc_basename in
7996    nvcc*) # Cuda Compiler Driver 2.2
7997      _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Xlinker '
7998      if test -n "$_LT_TAGVAR(lt_prog_compiler_pic, $1)"; then
7999        _LT_TAGVAR(lt_prog_compiler_pic, $1)="-Xcompiler $_LT_TAGVAR(lt_prog_compiler_pic, $1)"
8000      fi
8001      ;;
8002    esac
8003  else
8004    # PORTME Check for flag to pass linker flags through the system compiler.
8005    case $host_os in
8006    aix*)
8007      _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
8008      if test ia64 = "$host_cpu"; then
8009	# AIX 5 now supports IA64 processor
8010	_LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic'
8011      else
8012	_LT_TAGVAR(lt_prog_compiler_static, $1)='-bnso -bI:/lib/syscalls.exp'
8013      fi
8014      ;;
8015
8016    darwin* | rhapsody*)
8017      # PIC is the default on this platform
8018      # Common symbols not allowed in MH_DYLIB files
8019      _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fno-common'
8020      case $cc_basename in
8021      nagfor*)
8022        # NAG Fortran compiler
8023        _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,-Wl,,'
8024        _LT_TAGVAR(lt_prog_compiler_pic, $1)='-PIC'
8025        _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic'
8026        ;;
8027      esac
8028      ;;
8029
8030    mingw* | cygwin* | pw32* | os2* | cegcc*)
8031      # This hack is so that the source file can tell whether it is being
8032      # built for inclusion in a dll (and should export symbols for example).
8033      m4_if([$1], [GCJ], [],
8034	[_LT_TAGVAR(lt_prog_compiler_pic, $1)='-DDLL_EXPORT'])
8035      case $host_os in
8036      os2*)
8037	_LT_TAGVAR(lt_prog_compiler_static, $1)='$wl-static'
8038	;;
8039      esac
8040      ;;
8041
8042    hpux9* | hpux10* | hpux11*)
8043      _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
8044      # PIC is the default for IA64 HP-UX and 64-bit HP-UX, but
8045      # not for PA HP-UX.
8046      case $host_cpu in
8047      hppa*64*|ia64*)
8048	# +Z the default
8049	;;
8050      *)
8051	_LT_TAGVAR(lt_prog_compiler_pic, $1)='+Z'
8052	;;
8053      esac
8054      # Is there a better lt_prog_compiler_static that works with the bundled CC?
8055      _LT_TAGVAR(lt_prog_compiler_static, $1)='$wl-a ${wl}archive'
8056      ;;
8057
8058    irix5* | irix6* | nonstopux*)
8059      _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
8060      # PIC (with -KPIC) is the default.
8061      _LT_TAGVAR(lt_prog_compiler_static, $1)='-non_shared'
8062      ;;
8063
8064    linux* | k*bsd*-gnu | kopensolaris*-gnu | gnu*)
8065      case $cc_basename in
8066      # old Intel for x86_64, which still supported -KPIC.
8067      ecc*)
8068	_LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
8069	_LT_TAGVAR(lt_prog_compiler_pic, $1)='-KPIC'
8070	_LT_TAGVAR(lt_prog_compiler_static, $1)='-static'
8071        ;;
8072      # icc used to be incompatible with GCC.
8073      # ICC 10 doesn't accept -KPIC any more.
8074      icc* | ifort*)
8075	_LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
8076	_LT_TAGVAR(lt_prog_compiler_pic, $1)='-fPIC'
8077	_LT_TAGVAR(lt_prog_compiler_static, $1)='-static'
8078        ;;
8079      # Lahey Fortran 8.1.
8080      lf95*)
8081	_LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
8082	_LT_TAGVAR(lt_prog_compiler_pic, $1)='--shared'
8083	_LT_TAGVAR(lt_prog_compiler_static, $1)='--static'
8084	;;
8085      nagfor*)
8086	# NAG Fortran compiler
8087	_LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,-Wl,,'
8088	_LT_TAGVAR(lt_prog_compiler_pic, $1)='-PIC'
8089	_LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic'
8090	;;
8091      tcc*)
8092	# Fabrice Bellard et al's Tiny C Compiler
8093	_LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
8094	_LT_TAGVAR(lt_prog_compiler_pic, $1)='-fPIC'
8095	_LT_TAGVAR(lt_prog_compiler_static, $1)='-static'
8096	;;
8097      pgcc* | pgf77* | pgf90* | pgf95* | pgfortran*)
8098        # Portland Group compilers (*not* the Pentium gcc compiler,
8099	# which looks to be a dead project)
8100	_LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
8101	_LT_TAGVAR(lt_prog_compiler_pic, $1)='-fpic'
8102	_LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic'
8103        ;;
8104      ccc*)
8105        _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
8106        # All Alpha code is PIC.
8107        _LT_TAGVAR(lt_prog_compiler_static, $1)='-non_shared'
8108        ;;
8109      xl* | bgxl* | bgf* | mpixl*)
8110	# IBM XL C 8.0/Fortran 10.1, 11.1 on PPC and BlueGene
8111	_LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
8112	_LT_TAGVAR(lt_prog_compiler_pic, $1)='-qpic'
8113	_LT_TAGVAR(lt_prog_compiler_static, $1)='-qstaticlink'
8114	;;
8115      *)
8116	case `$CC -V 2>&1 | $SED 5q` in
8117	*Sun\ Ceres\ Fortran* | *Sun*Fortran*\ [[1-7]].* | *Sun*Fortran*\ 8.[[0-3]]*)
8118	  # Sun Fortran 8.3 passes all unrecognized flags to the linker
8119	  _LT_TAGVAR(lt_prog_compiler_pic, $1)='-KPIC'
8120	  _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic'
8121	  _LT_TAGVAR(lt_prog_compiler_wl, $1)=''
8122	  ;;
8123	*Sun\ F* | *Sun*Fortran*)
8124	  _LT_TAGVAR(lt_prog_compiler_pic, $1)='-KPIC'
8125	  _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic'
8126	  _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Qoption ld '
8127	  ;;
8128	*Sun\ C*)
8129	  # Sun C 5.9
8130	  _LT_TAGVAR(lt_prog_compiler_pic, $1)='-KPIC'
8131	  _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic'
8132	  _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
8133	  ;;
8134        *Intel*\ [[CF]]*Compiler*)
8135	  _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
8136	  _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fPIC'
8137	  _LT_TAGVAR(lt_prog_compiler_static, $1)='-static'
8138	  ;;
8139	*Portland\ Group*)
8140	  _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
8141	  _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fpic'
8142	  _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic'
8143	  ;;
8144	esac
8145	;;
8146      esac
8147      ;;
8148
8149    newsos6)
8150      _LT_TAGVAR(lt_prog_compiler_pic, $1)='-KPIC'
8151      _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic'
8152      ;;
8153
8154    *nto* | *qnx*)
8155      # QNX uses GNU C++, but need to define -shared option too, otherwise
8156      # it will coredump.
8157      _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fPIC -shared'
8158      ;;
8159
8160    osf3* | osf4* | osf5*)
8161      _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
8162      # All OSF/1 code is PIC.
8163      _LT_TAGVAR(lt_prog_compiler_static, $1)='-non_shared'
8164      ;;
8165
8166    rdos*)
8167      _LT_TAGVAR(lt_prog_compiler_static, $1)='-non_shared'
8168      ;;
8169
8170    solaris*)
8171      _LT_TAGVAR(lt_prog_compiler_pic, $1)='-KPIC'
8172      _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic'
8173      case $cc_basename in
8174      f77* | f90* | f95* | sunf77* | sunf90* | sunf95*)
8175	_LT_TAGVAR(lt_prog_compiler_wl, $1)='-Qoption ld ';;
8176      *)
8177	_LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,';;
8178      esac
8179      ;;
8180
8181    sunos4*)
8182      _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Qoption ld '
8183      _LT_TAGVAR(lt_prog_compiler_pic, $1)='-PIC'
8184      _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic'
8185      ;;
8186
8187    sysv4 | sysv4.2uw2* | sysv4.3*)
8188      _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
8189      _LT_TAGVAR(lt_prog_compiler_pic, $1)='-KPIC'
8190      _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic'
8191      ;;
8192
8193    sysv4*MP*)
8194      if test -d /usr/nec; then
8195	_LT_TAGVAR(lt_prog_compiler_pic, $1)='-Kconform_pic'
8196	_LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic'
8197      fi
8198      ;;
8199
8200    sysv5* | unixware* | sco3.2v5* | sco5v6* | OpenUNIX*)
8201      _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
8202      _LT_TAGVAR(lt_prog_compiler_pic, $1)='-KPIC'
8203      _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic'
8204      ;;
8205
8206    unicos*)
8207      _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
8208      _LT_TAGVAR(lt_prog_compiler_can_build_shared, $1)=no
8209      ;;
8210
8211    uts4*)
8212      _LT_TAGVAR(lt_prog_compiler_pic, $1)='-pic'
8213      _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic'
8214      ;;
8215
8216    *)
8217      _LT_TAGVAR(lt_prog_compiler_can_build_shared, $1)=no
8218      ;;
8219    esac
8220  fi
8221])
8222case $host_os in
8223  # For platforms that do not support PIC, -DPIC is meaningless:
8224  *djgpp*)
8225    _LT_TAGVAR(lt_prog_compiler_pic, $1)=
8226    ;;
8227  *)
8228    _LT_TAGVAR(lt_prog_compiler_pic, $1)="$_LT_TAGVAR(lt_prog_compiler_pic, $1)@&t@m4_if([$1],[],[ -DPIC],[m4_if([$1],[CXX],[ -DPIC],[])])"
8229    ;;
8230esac
8231
8232AC_CACHE_CHECK([for $compiler option to produce PIC],
8233  [_LT_TAGVAR(lt_cv_prog_compiler_pic, $1)],
8234  [_LT_TAGVAR(lt_cv_prog_compiler_pic, $1)=$_LT_TAGVAR(lt_prog_compiler_pic, $1)])
8235_LT_TAGVAR(lt_prog_compiler_pic, $1)=$_LT_TAGVAR(lt_cv_prog_compiler_pic, $1)
8236
8237#
8238# Check to make sure the PIC flag actually works.
8239#
8240if test -n "$_LT_TAGVAR(lt_prog_compiler_pic, $1)"; then
8241  _LT_COMPILER_OPTION([if $compiler PIC flag $_LT_TAGVAR(lt_prog_compiler_pic, $1) works],
8242    [_LT_TAGVAR(lt_cv_prog_compiler_pic_works, $1)],
8243    [$_LT_TAGVAR(lt_prog_compiler_pic, $1)@&t@m4_if([$1],[],[ -DPIC],[m4_if([$1],[CXX],[ -DPIC],[])])], [],
8244    [case $_LT_TAGVAR(lt_prog_compiler_pic, $1) in
8245     "" | " "*) ;;
8246     *) _LT_TAGVAR(lt_prog_compiler_pic, $1)=" $_LT_TAGVAR(lt_prog_compiler_pic, $1)" ;;
8247     esac],
8248    [_LT_TAGVAR(lt_prog_compiler_pic, $1)=
8249     _LT_TAGVAR(lt_prog_compiler_can_build_shared, $1)=no])
8250fi
8251_LT_TAGDECL([pic_flag], [lt_prog_compiler_pic], [1],
8252	[Additional compiler flags for building library objects])
8253
8254_LT_TAGDECL([wl], [lt_prog_compiler_wl], [1],
8255	[How to pass a linker flag through the compiler])
8256#
8257# Check to make sure the static flag actually works.
8258#
8259wl=$_LT_TAGVAR(lt_prog_compiler_wl, $1) eval lt_tmp_static_flag=\"$_LT_TAGVAR(lt_prog_compiler_static, $1)\"
8260_LT_LINKER_OPTION([if $compiler static flag $lt_tmp_static_flag works],
8261  _LT_TAGVAR(lt_cv_prog_compiler_static_works, $1),
8262  $lt_tmp_static_flag,
8263  [],
8264  [_LT_TAGVAR(lt_prog_compiler_static, $1)=])
8265_LT_TAGDECL([link_static_flag], [lt_prog_compiler_static], [1],
8266	[Compiler flag to prevent dynamic linking])
8267])# _LT_COMPILER_PIC
8268
8269
8270# _LT_LINKER_SHLIBS([TAGNAME])
8271# ----------------------------
8272# See if the linker supports building shared libraries.
8273m4_defun([_LT_LINKER_SHLIBS],
8274[AC_REQUIRE([LT_PATH_LD])dnl
8275AC_REQUIRE([LT_PATH_NM])dnl
8276m4_require([_LT_PATH_MANIFEST_TOOL])dnl
8277m4_require([_LT_FILEUTILS_DEFAULTS])dnl
8278m4_require([_LT_DECL_EGREP])dnl
8279m4_require([_LT_DECL_SED])dnl
8280m4_require([_LT_CMD_GLOBAL_SYMBOLS])dnl
8281m4_require([_LT_TAG_COMPILER])dnl
8282AC_MSG_CHECKING([whether the $compiler linker ($LD) supports shared libraries])
8283m4_if([$1], [CXX], [
8284  _LT_TAGVAR(export_symbols_cmds, $1)='$NM $libobjs $convenience | $global_symbol_pipe | $SED '\''s/.* //'\'' | sort | uniq > $export_symbols'
8285  _LT_TAGVAR(exclude_expsyms, $1)=['_GLOBAL_OFFSET_TABLE_|_GLOBAL__F[ID]_.*']
8286  case $host_os in
8287  aix[[4-9]]*)
8288    # If we're using GNU nm, then we don't want the "-C" option.
8289    # -C means demangle to GNU nm, but means don't demangle to AIX nm.
8290    # Without the "-l" option, or with the "-B" option, AIX nm treats
8291    # weak defined symbols like other global defined symbols, whereas
8292    # GNU nm marks them as "W".
8293    # While the 'weak' keyword is ignored in the Export File, we need
8294    # it in the Import File for the 'aix-soname' feature, so we have
8295    # to replace the "-B" option with "-P" for AIX nm.
8296    if $NM -V 2>&1 | $GREP 'GNU' > /dev/null; then
8297      _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'
8298    else
8299      _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 == "L") || (\$ 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'
8300    fi
8301    ;;
8302  pw32*)
8303    _LT_TAGVAR(export_symbols_cmds, $1)=$ltdll_cmds
8304    ;;
8305  cygwin* | mingw* | cegcc*)
8306    case $cc_basename in
8307    cl* | icl*)
8308      _LT_TAGVAR(exclude_expsyms, $1)='_NULL_IMPORT_DESCRIPTOR|_IMPORT_DESCRIPTOR_.*'
8309      ;;
8310    *)
8311      _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'
8312      _LT_TAGVAR(exclude_expsyms, $1)=['[_]+GLOBAL_OFFSET_TABLE_|[_]+GLOBAL__[FID]_.*|[_]+head_[A-Za-z0-9_]+_dll|[A-Za-z0-9_]+_dll_iname']
8313      ;;
8314    esac
8315    ;;
8316  *)
8317    _LT_TAGVAR(export_symbols_cmds, $1)='$NM $libobjs $convenience | $global_symbol_pipe | $SED '\''s/.* //'\'' | sort | uniq > $export_symbols'
8318    ;;
8319  esac
8320], [
8321  runpath_var=
8322  _LT_TAGVAR(allow_undefined_flag, $1)=
8323  _LT_TAGVAR(always_export_symbols, $1)=no
8324  _LT_TAGVAR(archive_cmds, $1)=
8325  _LT_TAGVAR(archive_expsym_cmds, $1)=
8326  _LT_TAGVAR(compiler_needs_object, $1)=no
8327  _LT_TAGVAR(enable_shared_with_static_runtimes, $1)=no
8328  _LT_TAGVAR(export_dynamic_flag_spec, $1)=
8329  _LT_TAGVAR(export_symbols_cmds, $1)='$NM $libobjs $convenience | $global_symbol_pipe | $SED '\''s/.* //'\'' | sort | uniq > $export_symbols'
8330  _LT_TAGVAR(hardcode_automatic, $1)=no
8331  _LT_TAGVAR(hardcode_direct, $1)=no
8332  _LT_TAGVAR(hardcode_direct_absolute, $1)=no
8333  _LT_TAGVAR(hardcode_libdir_flag_spec, $1)=
8334  _LT_TAGVAR(hardcode_libdir_separator, $1)=
8335  _LT_TAGVAR(hardcode_minus_L, $1)=no
8336  _LT_TAGVAR(hardcode_shlibpath_var, $1)=unsupported
8337  _LT_TAGVAR(inherit_rpath, $1)=no
8338  _LT_TAGVAR(link_all_deplibs, $1)=unknown
8339  _LT_TAGVAR(module_cmds, $1)=
8340  _LT_TAGVAR(module_expsym_cmds, $1)=
8341  _LT_TAGVAR(old_archive_from_new_cmds, $1)=
8342  _LT_TAGVAR(old_archive_from_expsyms_cmds, $1)=
8343  _LT_TAGVAR(thread_safe_flag_spec, $1)=
8344  _LT_TAGVAR(whole_archive_flag_spec, $1)=
8345  # include_expsyms should be a list of space-separated symbols to be *always*
8346  # included in the symbol list
8347  _LT_TAGVAR(include_expsyms, $1)=
8348  # exclude_expsyms can be an extended regexp of symbols to exclude
8349  # it will be wrapped by ' (' and ')$', so one must not match beginning or
8350  # end of line.  Example: 'a|bc|.*d.*' will exclude the symbols 'a' and 'bc',
8351  # as well as any symbol that contains 'd'.
8352  _LT_TAGVAR(exclude_expsyms, $1)=['_GLOBAL_OFFSET_TABLE_|_GLOBAL__F[ID]_.*']
8353  # Although _GLOBAL_OFFSET_TABLE_ is a valid symbol C name, most a.out
8354  # platforms (ab)use it in PIC code, but their linkers get confused if
8355  # the symbol is explicitly referenced.  Since portable code cannot
8356  # rely on this symbol name, it's probably fine to never include it in
8357  # preloaded symbol tables.
8358  # Exclude shared library initialization/finalization symbols.
8359dnl Note also adjust exclude_expsyms for C++ above.
8360  extract_expsyms_cmds=
8361
8362  case $host_os in
8363  cygwin* | mingw* | pw32* | cegcc*)
8364    # FIXME: the MSVC++ and ICC port hasn't been tested in a loooong time
8365    # When not using gcc, we currently assume that we are using
8366    # Microsoft Visual C++ or Intel C++ Compiler.
8367    if test yes != "$GCC"; then
8368      with_gnu_ld=no
8369    fi
8370    ;;
8371  interix*)
8372    # we just hope/assume this is gcc and not c89 (= MSVC++ or ICC)
8373    with_gnu_ld=yes
8374    ;;
8375  openbsd* | bitrig*)
8376    with_gnu_ld=no
8377    ;;
8378  esac
8379
8380  _LT_TAGVAR(ld_shlibs, $1)=yes
8381
8382  # On some targets, GNU ld is compatible enough with the native linker
8383  # that we're better off using the native interface for both.
8384  lt_use_gnu_ld_interface=no
8385  if test yes = "$with_gnu_ld"; then
8386    case $host_os in
8387      aix*)
8388	# The AIX port of GNU ld has always aspired to compatibility
8389	# with the native linker.  However, as the warning in the GNU ld
8390	# block says, versions before 2.19.5* couldn't really create working
8391	# shared libraries, regardless of the interface used.
8392	case `$LD -v 2>&1` in
8393	  *\ \(GNU\ Binutils\)\ 2.19.5*) ;;
8394	  *\ \(GNU\ Binutils\)\ 2.[[2-9]]*) ;;
8395	  *\ \(GNU\ Binutils\)\ [[3-9]]*) ;;
8396	  *)
8397	    lt_use_gnu_ld_interface=yes
8398	    ;;
8399	esac
8400	;;
8401      *)
8402	lt_use_gnu_ld_interface=yes
8403	;;
8404    esac
8405  fi
8406
8407  if test yes = "$lt_use_gnu_ld_interface"; then
8408    # If archive_cmds runs LD, not CC, wlarc should be empty
8409    wlarc='$wl'
8410
8411    # Set some defaults for GNU ld with shared library support. These
8412    # are reset later if shared libraries are not supported. Putting them
8413    # here allows them to be overridden if necessary.
8414    runpath_var=LD_RUN_PATH
8415    _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='$wl-rpath $wl$libdir'
8416    _LT_TAGVAR(export_dynamic_flag_spec, $1)='$wl--export-dynamic'
8417    # ancient GNU ld didn't support --whole-archive et. al.
8418    if $LD --help 2>&1 | $GREP 'no-whole-archive' > /dev/null; then
8419      _LT_TAGVAR(whole_archive_flag_spec, $1)=$wlarc'--whole-archive$convenience '$wlarc'--no-whole-archive'
8420    else
8421      _LT_TAGVAR(whole_archive_flag_spec, $1)=
8422    fi
8423    supports_anon_versioning=no
8424    case `$LD -v | $SED -e 's/([[^)]]\+)\s\+//' 2>&1` in
8425      *GNU\ gold*) supports_anon_versioning=yes ;;
8426      *\ [[01]].* | *\ 2.[[0-9]].* | *\ 2.10.*) ;; # catch versions < 2.11
8427      *\ 2.11.93.0.2\ *) supports_anon_versioning=yes ;; # RH7.3 ...
8428      *\ 2.11.92.0.12\ *) supports_anon_versioning=yes ;; # Mandrake 8.2 ...
8429      *\ 2.11.*) ;; # other 2.11 versions
8430      *) supports_anon_versioning=yes ;;
8431    esac
8432
8433    # See if GNU ld supports shared libraries.
8434    case $host_os in
8435    aix[[3-9]]*)
8436      # On AIX/PPC, the GNU linker is very broken
8437      if test ia64 != "$host_cpu"; then
8438	_LT_TAGVAR(ld_shlibs, $1)=no
8439	cat <<_LT_EOF 1>&2
8440
8441*** Warning: the GNU linker, at least up to release 2.19, is reported
8442*** to be unable to reliably create shared libraries on AIX.
8443*** Therefore, libtool is disabling shared libraries support.  If you
8444*** really care for shared libraries, you may want to install binutils
8445*** 2.20 or above, or modify your PATH so that a non-GNU linker is found.
8446*** You will then need to restart the configuration process.
8447
8448_LT_EOF
8449      fi
8450      ;;
8451
8452    amigaos*)
8453      case $host_cpu in
8454      powerpc)
8455            # see comment about AmigaOS4 .so support
8456            _LT_TAGVAR(archive_cmds, $1)='$CC -shared $libobjs $deplibs $compiler_flags $wl-soname $wl$soname -o $lib'
8457            _LT_TAGVAR(archive_expsym_cmds, $1)=''
8458        ;;
8459      m68k)
8460            _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)'
8461            _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-L$libdir'
8462            _LT_TAGVAR(hardcode_minus_L, $1)=yes
8463        ;;
8464      esac
8465      ;;
8466
8467    beos*)
8468      if $LD --help 2>&1 | $GREP ': supported targets:.* elf' > /dev/null; then
8469	_LT_TAGVAR(allow_undefined_flag, $1)=unsupported
8470	# Joseph Beckenbach <jrb3@best.com> says some releases of gcc
8471	# support --undefined.  This deserves some investigation.  FIXME
8472	_LT_TAGVAR(archive_cmds, $1)='$CC -nostart $libobjs $deplibs $compiler_flags $wl-soname $wl$soname -o $lib'
8473      else
8474	_LT_TAGVAR(ld_shlibs, $1)=no
8475      fi
8476      ;;
8477
8478    cygwin* | mingw* | pw32* | cegcc*)
8479      # _LT_TAGVAR(hardcode_libdir_flag_spec, $1) is actually meaningless,
8480      # as there is no search path for DLLs.
8481      _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-L$libdir'
8482      _LT_TAGVAR(export_dynamic_flag_spec, $1)='$wl--export-all-symbols'
8483      _LT_TAGVAR(allow_undefined_flag, $1)=unsupported
8484      _LT_TAGVAR(always_export_symbols, $1)=no
8485      _LT_TAGVAR(enable_shared_with_static_runtimes, $1)=yes
8486      _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'
8487      _LT_TAGVAR(exclude_expsyms, $1)=['[_]+GLOBAL_OFFSET_TABLE_|[_]+GLOBAL__[FID]_.*|[_]+head_[A-Za-z0-9_]+_dll|[A-Za-z0-9_]+_dll_iname']
8488
8489      if $LD --help 2>&1 | $GREP 'auto-import' > /dev/null; then
8490        _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'
8491	# If the export-symbols file already is a .def file, use it as
8492	# is; otherwise, prepend EXPORTS...
8493	_LT_TAGVAR(archive_expsym_cmds, $1)='if _LT_DLL_DEF_P([$export_symbols]); then
8494          cp $export_symbols $output_objdir/$soname.def;
8495        else
8496          echo EXPORTS > $output_objdir/$soname.def;
8497          cat $export_symbols >> $output_objdir/$soname.def;
8498        fi~
8499        $CC -shared $output_objdir/$soname.def $libobjs $deplibs $compiler_flags -o $output_objdir/$soname $wl--enable-auto-image-base -Xlinker --out-implib -Xlinker $lib'
8500      else
8501	_LT_TAGVAR(ld_shlibs, $1)=no
8502      fi
8503      ;;
8504
8505    haiku*)
8506      _LT_TAGVAR(archive_cmds, $1)='$CC -shared $libobjs $deplibs $compiler_flags $wl-soname $wl$soname -o $lib'
8507      _LT_TAGVAR(link_all_deplibs, $1)=yes
8508      ;;
8509
8510    os2*)
8511      _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-L$libdir'
8512      _LT_TAGVAR(hardcode_minus_L, $1)=yes
8513      _LT_TAGVAR(allow_undefined_flag, $1)=unsupported
8514      shrext_cmds=.dll
8515      _LT_TAGVAR(archive_cmds, $1)='$ECHO "LIBRARY ${soname%$shared_ext} INITINSTANCE TERMINSTANCE" > $output_objdir/$libname.def~
8516	$ECHO "DESCRIPTION \"$libname\"" >> $output_objdir/$libname.def~
8517	$ECHO "DATA MULTIPLE NONSHARED" >> $output_objdir/$libname.def~
8518	$ECHO EXPORTS >> $output_objdir/$libname.def~
8519	emxexp $libobjs | $SED /"_DLL_InitTerm"/d >> $output_objdir/$libname.def~
8520	$CC -Zdll -Zcrtdll -o $output_objdir/$soname $libobjs $deplibs $compiler_flags $output_objdir/$libname.def~
8521	emximp -o $lib $output_objdir/$libname.def'
8522      _LT_TAGVAR(archive_expsym_cmds, $1)='$ECHO "LIBRARY ${soname%$shared_ext} INITINSTANCE TERMINSTANCE" > $output_objdir/$libname.def~
8523	$ECHO "DESCRIPTION \"$libname\"" >> $output_objdir/$libname.def~
8524	$ECHO "DATA MULTIPLE NONSHARED" >> $output_objdir/$libname.def~
8525	$ECHO EXPORTS >> $output_objdir/$libname.def~
8526	prefix_cmds="$SED"~
8527	if test EXPORTS = "`$SED 1q $export_symbols`"; then
8528	  prefix_cmds="$prefix_cmds -e 1d";
8529	fi~
8530	prefix_cmds="$prefix_cmds -e \"s/^\(.*\)$/_\1/g\""~
8531	cat $export_symbols | $prefix_cmds >> $output_objdir/$libname.def~
8532	$CC -Zdll -Zcrtdll -o $output_objdir/$soname $libobjs $deplibs $compiler_flags $output_objdir/$libname.def~
8533	emximp -o $lib $output_objdir/$libname.def'
8534      _LT_TAGVAR(old_archive_From_new_cmds, $1)='emximp -o $output_objdir/${libname}_dll.a $output_objdir/$libname.def'
8535      _LT_TAGVAR(enable_shared_with_static_runtimes, $1)=yes
8536      _LT_TAGVAR(file_list_spec, $1)='@'
8537      ;;
8538
8539    interix[[3-9]]*)
8540      _LT_TAGVAR(hardcode_direct, $1)=no
8541      _LT_TAGVAR(hardcode_shlibpath_var, $1)=no
8542      _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='$wl-rpath,$libdir'
8543      _LT_TAGVAR(export_dynamic_flag_spec, $1)='$wl-E'
8544      # Hack: On Interix 3.x, we cannot compile PIC because of a broken gcc.
8545      # Instead, shared libraries are loaded at an image base (0x10000000 by
8546      # default) and relocated if they conflict, which is a slow very memory
8547      # consuming and fragmenting process.  To avoid this, we pick a random,
8548      # 256 KiB-aligned image base between 0x50000000 and 0x6FFC0000 at link
8549      # time.  Moving up from 0x10000000 also allows more sbrk(2) space.
8550      _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'
8551      _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'
8552      ;;
8553
8554    gnu* | linux* | tpf* | k*bsd*-gnu | kopensolaris*-gnu)
8555      tmp_diet=no
8556      if test linux-dietlibc = "$host_os"; then
8557	case $cc_basename in
8558	  diet\ *) tmp_diet=yes;;	# linux-dietlibc with static linking (!diet-dyn)
8559	esac
8560      fi
8561      if $LD --help 2>&1 | $EGREP ': supported targets:.* elf' > /dev/null \
8562	 && test no = "$tmp_diet"
8563      then
8564	tmp_addflag=' $pic_flag'
8565	tmp_sharedflag='-shared'
8566	case $cc_basename,$host_cpu in
8567        pgcc*)				# Portland Group C compiler
8568	  _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'
8569	  tmp_addflag=' $pic_flag'
8570	  ;;
8571	pgf77* | pgf90* | pgf95* | pgfortran*)
8572					# Portland Group f77 and f90 compilers
8573	  _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'
8574	  tmp_addflag=' $pic_flag -Mnomain' ;;
8575	ecc*,ia64* | icc*,ia64*)	# Intel C compiler on ia64
8576	  tmp_addflag=' -i_dynamic' ;;
8577	efc*,ia64* | ifort*,ia64*)	# Intel Fortran compiler on ia64
8578	  tmp_addflag=' -i_dynamic -nofor_main' ;;
8579	ifc* | ifort*)			# Intel Fortran compiler
8580	  tmp_addflag=' -nofor_main' ;;
8581	lf95*)				# Lahey Fortran 8.1
8582	  _LT_TAGVAR(whole_archive_flag_spec, $1)=
8583	  tmp_sharedflag='--shared' ;;
8584        nagfor*)                        # NAGFOR 5.3
8585          tmp_sharedflag='-Wl,-shared' ;;
8586	xl[[cC]]* | bgxl[[cC]]* | mpixl[[cC]]*) # IBM XL C 8.0 on PPC (deal with xlf below)
8587	  tmp_sharedflag='-qmkshrobj'
8588	  tmp_addflag= ;;
8589	nvcc*)	# Cuda Compiler Driver 2.2
8590	  _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'
8591	  _LT_TAGVAR(compiler_needs_object, $1)=yes
8592	  ;;
8593	esac
8594	case `$CC -V 2>&1 | $SED 5q` in
8595	*Sun\ C*)			# Sun C 5.9
8596	  _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'
8597	  _LT_TAGVAR(compiler_needs_object, $1)=yes
8598	  tmp_sharedflag='-G' ;;
8599	*Sun\ F*)			# Sun Fortran 8.3
8600	  tmp_sharedflag='-G' ;;
8601	esac
8602	_LT_TAGVAR(archive_cmds, $1)='$CC '"$tmp_sharedflag""$tmp_addflag"' $libobjs $deplibs $compiler_flags $wl-soname $wl$soname -o $lib'
8603
8604        if test yes = "$supports_anon_versioning"; then
8605          _LT_TAGVAR(archive_expsym_cmds, $1)='echo "{ global:" > $output_objdir/$libname.ver~
8606            cat $export_symbols | $SED -e "s/\(.*\)/\1;/" >> $output_objdir/$libname.ver~
8607            echo "local: *; };" >> $output_objdir/$libname.ver~
8608            $CC '"$tmp_sharedflag""$tmp_addflag"' $libobjs $deplibs $compiler_flags $wl-soname $wl$soname $wl-version-script $wl$output_objdir/$libname.ver -o $lib'
8609        fi
8610
8611	case $cc_basename in
8612	tcc*)
8613	  _LT_TAGVAR(export_dynamic_flag_spec, $1)='-rdynamic'
8614	  ;;
8615	xlf* | bgf* | bgxlf* | mpixlf*)
8616	  # IBM XL Fortran 10.1 on PPC cannot create shared libs itself
8617	  _LT_TAGVAR(whole_archive_flag_spec, $1)='--whole-archive$convenience --no-whole-archive'
8618	  _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='$wl-rpath $wl$libdir'
8619	  _LT_TAGVAR(archive_cmds, $1)='$LD -shared $libobjs $deplibs $linker_flags -soname $soname -o $lib'
8620	  if test yes = "$supports_anon_versioning"; then
8621	    _LT_TAGVAR(archive_expsym_cmds, $1)='echo "{ global:" > $output_objdir/$libname.ver~
8622              cat $export_symbols | $SED -e "s/\(.*\)/\1;/" >> $output_objdir/$libname.ver~
8623              echo "local: *; };" >> $output_objdir/$libname.ver~
8624              $LD -shared $libobjs $deplibs $linker_flags -soname $soname -version-script $output_objdir/$libname.ver -o $lib'
8625	  fi
8626	  ;;
8627	esac
8628      else
8629        _LT_TAGVAR(ld_shlibs, $1)=no
8630      fi
8631      ;;
8632
8633    netbsd*)
8634      if echo __ELF__ | $CC -E - | $GREP __ELF__ >/dev/null; then
8635	_LT_TAGVAR(archive_cmds, $1)='$LD -Bshareable $libobjs $deplibs $linker_flags -o $lib'
8636	wlarc=
8637      else
8638	_LT_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag $libobjs $deplibs $compiler_flags $wl-soname $wl$soname -o $lib'
8639	_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'
8640      fi
8641      ;;
8642
8643    solaris*)
8644      if $LD -v 2>&1 | $GREP 'BFD 2\.8' > /dev/null; then
8645	_LT_TAGVAR(ld_shlibs, $1)=no
8646	cat <<_LT_EOF 1>&2
8647
8648*** Warning: The releases 2.8.* of the GNU linker cannot reliably
8649*** create shared libraries on Solaris systems.  Therefore, libtool
8650*** is disabling shared libraries support.  We urge you to upgrade GNU
8651*** binutils to release 2.9.1 or newer.  Another option is to modify
8652*** your PATH or compiler configuration so that the native linker is
8653*** used, and then restart.
8654
8655_LT_EOF
8656      elif $LD --help 2>&1 | $GREP ': supported targets:.* elf' > /dev/null; then
8657	_LT_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag $libobjs $deplibs $compiler_flags $wl-soname $wl$soname -o $lib'
8658	_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'
8659      else
8660	_LT_TAGVAR(ld_shlibs, $1)=no
8661      fi
8662      ;;
8663
8664    sysv5* | sco3.2v5* | sco5v6* | unixware* | OpenUNIX*)
8665      case `$LD -v 2>&1` in
8666        *\ [[01]].* | *\ 2.[[0-9]].* | *\ 2.1[[0-5]].*)
8667	_LT_TAGVAR(ld_shlibs, $1)=no
8668	cat <<_LT_EOF 1>&2
8669
8670*** Warning: Releases of the GNU linker prior to 2.16.91.0.3 cannot
8671*** reliably create shared libraries on SCO systems.  Therefore, libtool
8672*** is disabling shared libraries support.  We urge you to upgrade GNU
8673*** binutils to release 2.16.91.0.3 or newer.  Another option is to modify
8674*** your PATH or compiler configuration so that the native linker is
8675*** used, and then restart.
8676
8677_LT_EOF
8678	;;
8679	*)
8680	  # For security reasons, it is highly recommended that you always
8681	  # use absolute paths for naming shared libraries, and exclude the
8682	  # DT_RUNPATH tag from executables and libraries.  But doing so
8683	  # requires that you compile everything twice, which is a pain.
8684	  if $LD --help 2>&1 | $GREP ': supported targets:.* elf' > /dev/null; then
8685	    _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='$wl-rpath $wl$libdir'
8686	    _LT_TAGVAR(archive_cmds, $1)='$CC -shared $libobjs $deplibs $compiler_flags $wl-soname $wl$soname -o $lib'
8687	    _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'
8688	  else
8689	    _LT_TAGVAR(ld_shlibs, $1)=no
8690	  fi
8691	;;
8692      esac
8693      ;;
8694
8695    sunos4*)
8696      _LT_TAGVAR(archive_cmds, $1)='$LD -assert pure-text -Bshareable -o $lib $libobjs $deplibs $linker_flags'
8697      wlarc=
8698      _LT_TAGVAR(hardcode_direct, $1)=yes
8699      _LT_TAGVAR(hardcode_shlibpath_var, $1)=no
8700      ;;
8701
8702    *)
8703      if $LD --help 2>&1 | $GREP ': supported targets:.* elf' > /dev/null; then
8704	_LT_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag $libobjs $deplibs $compiler_flags $wl-soname $wl$soname -o $lib'
8705	_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'
8706      else
8707	_LT_TAGVAR(ld_shlibs, $1)=no
8708      fi
8709      ;;
8710    esac
8711
8712    if test no = "$_LT_TAGVAR(ld_shlibs, $1)"; then
8713      runpath_var=
8714      _LT_TAGVAR(hardcode_libdir_flag_spec, $1)=
8715      _LT_TAGVAR(export_dynamic_flag_spec, $1)=
8716      _LT_TAGVAR(whole_archive_flag_spec, $1)=
8717    fi
8718  else
8719    # PORTME fill in a description of your system's linker (not GNU ld)
8720    case $host_os in
8721    aix3*)
8722      _LT_TAGVAR(allow_undefined_flag, $1)=unsupported
8723      _LT_TAGVAR(always_export_symbols, $1)=yes
8724      _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'
8725      # Note: this linker hardcodes the directories in LIBPATH if there
8726      # are no directories specified by -L.
8727      _LT_TAGVAR(hardcode_minus_L, $1)=yes
8728      if test yes = "$GCC" && test -z "$lt_prog_compiler_static"; then
8729	# Neither direct hardcoding nor static linking is supported with a
8730	# broken collect2.
8731	_LT_TAGVAR(hardcode_direct, $1)=unsupported
8732      fi
8733      ;;
8734
8735    aix[[4-9]]*)
8736      if test ia64 = "$host_cpu"; then
8737	# On IA64, the linker does run time linking by default, so we don't
8738	# have to do anything special.
8739	aix_use_runtimelinking=no
8740	exp_sym_flag='-Bexport'
8741	no_entry_flag=
8742      else
8743	# If we're using GNU nm, then we don't want the "-C" option.
8744	# -C means demangle to GNU nm, but means don't demangle to AIX nm.
8745	# Without the "-l" option, or with the "-B" option, AIX nm treats
8746	# weak defined symbols like other global defined symbols, whereas
8747	# GNU nm marks them as "W".
8748	# While the 'weak' keyword is ignored in the Export File, we need
8749	# it in the Import File for the 'aix-soname' feature, so we have
8750	# to replace the "-B" option with "-P" for AIX nm.
8751	if $NM -V 2>&1 | $GREP 'GNU' > /dev/null; then
8752	  _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'
8753	else
8754	  _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 == "L") || (\$ 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'
8755	fi
8756	aix_use_runtimelinking=no
8757
8758	# Test if we are trying to use run time linking or normal
8759	# AIX style linking. If -brtl is somewhere in LDFLAGS, we
8760	# have runtime linking enabled, and use it for executables.
8761	# For shared libraries, we enable/disable runtime linking
8762	# depending on the kind of the shared library created -
8763	# when "with_aix_soname,aix_use_runtimelinking" is:
8764	# "aix,no"   lib.a(lib.so.V) shared, rtl:no,  for executables
8765	# "aix,yes"  lib.so          shared, rtl:yes, for executables
8766	#            lib.a           static archive
8767	# "both,no"  lib.so.V(shr.o) shared, rtl:yes
8768	#            lib.a(lib.so.V) shared, rtl:no,  for executables
8769	# "both,yes" lib.so.V(shr.o) shared, rtl:yes, for executables
8770	#            lib.a(lib.so.V) shared, rtl:no
8771	# "svr4,*"   lib.so.V(shr.o) shared, rtl:yes, for executables
8772	#            lib.a           static archive
8773	case $host_os in aix4.[[23]]|aix4.[[23]].*|aix[[5-9]]*)
8774	  for ld_flag in $LDFLAGS; do
8775	  if (test x-brtl = "x$ld_flag" || test x-Wl,-brtl = "x$ld_flag"); then
8776	    aix_use_runtimelinking=yes
8777	    break
8778	  fi
8779	  done
8780	  if test svr4,no = "$with_aix_soname,$aix_use_runtimelinking"; then
8781	    # With aix-soname=svr4, we create the lib.so.V shared archives only,
8782	    # so we don't have lib.a shared libs to link our executables.
8783	    # We have to force runtime linking in this case.
8784	    aix_use_runtimelinking=yes
8785	    LDFLAGS="$LDFLAGS -Wl,-brtl"
8786	  fi
8787	  ;;
8788	esac
8789
8790	exp_sym_flag='-bexport'
8791	no_entry_flag='-bnoentry'
8792      fi
8793
8794      # When large executables or shared objects are built, AIX ld can
8795      # have problems creating the table of contents.  If linking a library
8796      # or program results in "error TOC overflow" add -mminimal-toc to
8797      # CXXFLAGS/CFLAGS for g++/gcc.  In the cases where that is not
8798      # enough to fix the problem, add -Wl,-bbigtoc to LDFLAGS.
8799
8800      _LT_TAGVAR(archive_cmds, $1)=''
8801      _LT_TAGVAR(hardcode_direct, $1)=yes
8802      _LT_TAGVAR(hardcode_direct_absolute, $1)=yes
8803      _LT_TAGVAR(hardcode_libdir_separator, $1)=':'
8804      _LT_TAGVAR(link_all_deplibs, $1)=yes
8805      _LT_TAGVAR(file_list_spec, $1)='$wl-f,'
8806      case $with_aix_soname,$aix_use_runtimelinking in
8807      aix,*) ;; # traditional, no import file
8808      svr4,* | *,yes) # use import file
8809	# The Import File defines what to hardcode.
8810	_LT_TAGVAR(hardcode_direct, $1)=no
8811	_LT_TAGVAR(hardcode_direct_absolute, $1)=no
8812	;;
8813      esac
8814
8815      if test yes = "$GCC"; then
8816	case $host_os in aix4.[[012]]|aix4.[[012]].*)
8817	# We only want to do this on AIX 4.2 and lower, the check
8818	# below for broken collect2 doesn't work under 4.3+
8819	  collect2name=`$CC -print-prog-name=collect2`
8820	  if test -f "$collect2name" &&
8821	   strings "$collect2name" | $GREP resolve_lib_name >/dev/null
8822	  then
8823	  # We have reworked collect2
8824	  :
8825	  else
8826	  # We have old collect2
8827	  _LT_TAGVAR(hardcode_direct, $1)=unsupported
8828	  # It fails to find uninstalled libraries when the uninstalled
8829	  # path is not listed in the libpath.  Setting hardcode_minus_L
8830	  # to unsupported forces relinking
8831	  _LT_TAGVAR(hardcode_minus_L, $1)=yes
8832	  _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-L$libdir'
8833	  _LT_TAGVAR(hardcode_libdir_separator, $1)=
8834	  fi
8835	  ;;
8836	esac
8837	shared_flag='-shared'
8838	if test yes = "$aix_use_runtimelinking"; then
8839	  shared_flag="$shared_flag "'$wl-G'
8840	fi
8841	# Need to ensure runtime linking is disabled for the traditional
8842	# shared library, or the linker may eventually find shared libraries
8843	# /with/ Import File - we do not want to mix them.
8844	shared_flag_aix='-shared'
8845	shared_flag_svr4='-shared $wl-G'
8846      else
8847	# not using gcc
8848	if test ia64 = "$host_cpu"; then
8849	# VisualAge C++, Version 5.5 for AIX 5L for IA-64, Beta 3 Release
8850	# chokes on -Wl,-G. The following line is correct:
8851	  shared_flag='-G'
8852	else
8853	  if test yes = "$aix_use_runtimelinking"; then
8854	    shared_flag='$wl-G'
8855	  else
8856	    shared_flag='$wl-bM:SRE'
8857	  fi
8858	  shared_flag_aix='$wl-bM:SRE'
8859	  shared_flag_svr4='$wl-G'
8860	fi
8861      fi
8862
8863      _LT_TAGVAR(export_dynamic_flag_spec, $1)='$wl-bexpall'
8864      # It seems that -bexpall does not export symbols beginning with
8865      # underscore (_), so it is better to generate a list of symbols to export.
8866      _LT_TAGVAR(always_export_symbols, $1)=yes
8867      if test aix,yes = "$with_aix_soname,$aix_use_runtimelinking"; then
8868	# Warning - without using the other runtime loading flags (-brtl),
8869	# -berok will link without error, but may produce a broken library.
8870	_LT_TAGVAR(allow_undefined_flag, $1)='-berok'
8871        # Determine the default libpath from the value encoded in an
8872        # empty executable.
8873        _LT_SYS_MODULE_PATH_AIX([$1])
8874        _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='$wl-blibpath:$libdir:'"$aix_libpath"
8875        _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
8876      else
8877	if test ia64 = "$host_cpu"; then
8878	  _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='$wl-R $libdir:/usr/lib:/lib'
8879	  _LT_TAGVAR(allow_undefined_flag, $1)="-z nodefs"
8880	  _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"
8881	else
8882	 # Determine the default libpath from the value encoded in an
8883	 # empty executable.
8884	 _LT_SYS_MODULE_PATH_AIX([$1])
8885	 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='$wl-blibpath:$libdir:'"$aix_libpath"
8886	  # Warning - without using the other run time loading flags,
8887	  # -berok will link without error, but may produce a broken library.
8888	  _LT_TAGVAR(no_undefined_flag, $1)=' $wl-bernotok'
8889	  _LT_TAGVAR(allow_undefined_flag, $1)=' $wl-berok'
8890	  if test yes = "$with_gnu_ld"; then
8891	    # We only use this code for GNU lds that support --whole-archive.
8892	    _LT_TAGVAR(whole_archive_flag_spec, $1)='$wl--whole-archive$convenience $wl--no-whole-archive'
8893	  else
8894	    # Exported symbols can be pulled into shared objects from archives
8895	    _LT_TAGVAR(whole_archive_flag_spec, $1)='$convenience'
8896	  fi
8897	  _LT_TAGVAR(archive_cmds_need_lc, $1)=yes
8898	  _LT_TAGVAR(archive_expsym_cmds, $1)='$RM -r $output_objdir/$realname.d~$MKDIR $output_objdir/$realname.d'
8899	  # -brtl affects multiple linker settings, -berok does not and is overridden later
8900	  compiler_flags_filtered='`func_echo_all "$compiler_flags " | $SED -e "s%-brtl\\([[, ]]\\)%-berok\\1%g"`'
8901	  if test svr4 != "$with_aix_soname"; then
8902	    # This is similar to how AIX traditionally builds its shared libraries.
8903	    _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'
8904	  fi
8905	  if test aix != "$with_aix_soname"; then
8906	    _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'
8907	  else
8908	    # used by -dlpreopen to get the symbols
8909	    _LT_TAGVAR(archive_expsym_cmds, $1)="$_LT_TAGVAR(archive_expsym_cmds, $1)"'~$MV  $output_objdir/$realname.d/$soname $output_objdir'
8910	  fi
8911	  _LT_TAGVAR(archive_expsym_cmds, $1)="$_LT_TAGVAR(archive_expsym_cmds, $1)"'~$RM -r $output_objdir/$realname.d'
8912	fi
8913      fi
8914      ;;
8915
8916    amigaos*)
8917      case $host_cpu in
8918      powerpc)
8919            # see comment about AmigaOS4 .so support
8920            _LT_TAGVAR(archive_cmds, $1)='$CC -shared $libobjs $deplibs $compiler_flags $wl-soname $wl$soname -o $lib'
8921            _LT_TAGVAR(archive_expsym_cmds, $1)=''
8922        ;;
8923      m68k)
8924            _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)'
8925            _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-L$libdir'
8926            _LT_TAGVAR(hardcode_minus_L, $1)=yes
8927        ;;
8928      esac
8929      ;;
8930
8931    bsdi[[45]]*)
8932      _LT_TAGVAR(export_dynamic_flag_spec, $1)=-rdynamic
8933      ;;
8934
8935    cygwin* | mingw* | pw32* | cegcc*)
8936      # When not using gcc, we currently assume that we are using
8937      # Microsoft Visual C++ or Intel C++ Compiler.
8938      # hardcode_libdir_flag_spec is actually meaningless, as there is
8939      # no search path for DLLs.
8940      case $cc_basename in
8941      cl* | icl*)
8942	# Native MSVC or ICC
8943	_LT_TAGVAR(hardcode_libdir_flag_spec, $1)=' '
8944	_LT_TAGVAR(allow_undefined_flag, $1)=unsupported
8945	_LT_TAGVAR(always_export_symbols, $1)=yes
8946	_LT_TAGVAR(file_list_spec, $1)='@'
8947	# Tell ltmain to make .lib files, not .a files.
8948	libext=lib
8949	# Tell ltmain to make .dll files, not .so files.
8950	shrext_cmds=.dll
8951	# FIXME: Setting linknames here is a bad hack.
8952	_LT_TAGVAR(archive_cmds, $1)='$CC -o $output_objdir/$soname $libobjs $compiler_flags $deplibs -Wl,-DLL,-IMPLIB:"$tool_output_objdir$libname.dll.lib"~linknames='
8953	_LT_TAGVAR(archive_expsym_cmds, $1)='if _LT_DLL_DEF_P([$export_symbols]); then
8954            cp "$export_symbols" "$output_objdir/$soname.def";
8955            echo "$tool_output_objdir$soname.def" > "$output_objdir/$soname.exp";
8956          else
8957            $SED -e '\''s/^/-link -EXPORT:/'\'' < $export_symbols > $output_objdir/$soname.exp;
8958          fi~
8959          $CC -o $tool_output_objdir$soname $libobjs $compiler_flags $deplibs "@$tool_output_objdir$soname.exp" -Wl,-DLL,-IMPLIB:"$tool_output_objdir$libname.dll.lib"~
8960          linknames='
8961	# The linker will not automatically build a static lib if we build a DLL.
8962	# _LT_TAGVAR(old_archive_from_new_cmds, $1)='true'
8963	_LT_TAGVAR(enable_shared_with_static_runtimes, $1)=yes
8964	_LT_TAGVAR(exclude_expsyms, $1)='_NULL_IMPORT_DESCRIPTOR|_IMPORT_DESCRIPTOR_.*'
8965	_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'
8966	# Don't use ranlib
8967	_LT_TAGVAR(old_postinstall_cmds, $1)='chmod 644 $oldlib'
8968	_LT_TAGVAR(postlink_cmds, $1)='lt_outputfile="@OUTPUT@"~
8969          lt_tool_outputfile="@TOOL_OUTPUT@"~
8970          case $lt_outputfile in
8971            *.exe|*.EXE) ;;
8972            *)
8973              lt_outputfile=$lt_outputfile.exe
8974              lt_tool_outputfile=$lt_tool_outputfile.exe
8975              ;;
8976          esac~
8977          if test : != "$MANIFEST_TOOL" && test -f "$lt_outputfile.manifest"; then
8978            $MANIFEST_TOOL -manifest "$lt_tool_outputfile.manifest" -outputresource:"$lt_tool_outputfile" || exit 1;
8979            $RM "$lt_outputfile.manifest";
8980          fi'
8981	;;
8982      *)
8983	# Assume MSVC and ICC wrapper
8984	_LT_TAGVAR(hardcode_libdir_flag_spec, $1)=' '
8985	_LT_TAGVAR(allow_undefined_flag, $1)=unsupported
8986	# Tell ltmain to make .lib files, not .a files.
8987	libext=lib
8988	# Tell ltmain to make .dll files, not .so files.
8989	shrext_cmds=.dll
8990	# FIXME: Setting linknames here is a bad hack.
8991	_LT_TAGVAR(archive_cmds, $1)='$CC -o $lib $libobjs $compiler_flags `func_echo_all "$deplibs" | $SED '\''s/ -lc$//'\''` -link -dll~linknames='
8992	# The linker will automatically build a .lib file if we build a DLL.
8993	_LT_TAGVAR(old_archive_from_new_cmds, $1)='true'
8994	# FIXME: Should let the user specify the lib program.
8995	_LT_TAGVAR(old_archive_cmds, $1)='lib -OUT:$oldlib$oldobjs$old_deplibs'
8996	_LT_TAGVAR(enable_shared_with_static_runtimes, $1)=yes
8997	;;
8998      esac
8999      ;;
9000
9001    darwin* | rhapsody*)
9002      _LT_DARWIN_LINKER_FEATURES($1)
9003      ;;
9004
9005    dgux*)
9006      _LT_TAGVAR(archive_cmds, $1)='$LD -G -h $soname -o $lib $libobjs $deplibs $linker_flags'
9007      _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-L$libdir'
9008      _LT_TAGVAR(hardcode_shlibpath_var, $1)=no
9009      ;;
9010
9011    # FreeBSD 2.2.[012] allows us to include c++rt0.o to get C++ constructor
9012    # support.  Future versions do this automatically, but an explicit c++rt0.o
9013    # does not break anything, and helps significantly (at the cost of a little
9014    # extra space).
9015    freebsd2.2*)
9016      _LT_TAGVAR(archive_cmds, $1)='$LD -Bshareable -o $lib $libobjs $deplibs $linker_flags /usr/lib/c++rt0.o'
9017      _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-R$libdir'
9018      _LT_TAGVAR(hardcode_direct, $1)=yes
9019      _LT_TAGVAR(hardcode_shlibpath_var, $1)=no
9020      ;;
9021
9022    # Unfortunately, older versions of FreeBSD 2 do not have this feature.
9023    freebsd2.*)
9024      _LT_TAGVAR(archive_cmds, $1)='$LD -Bshareable -o $lib $libobjs $deplibs $linker_flags'
9025      _LT_TAGVAR(hardcode_direct, $1)=yes
9026      _LT_TAGVAR(hardcode_minus_L, $1)=yes
9027      _LT_TAGVAR(hardcode_shlibpath_var, $1)=no
9028      ;;
9029
9030    # FreeBSD 3 and greater uses gcc -shared to do shared libraries.
9031    freebsd* | dragonfly* | midnightbsd*)
9032      _LT_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag -o $lib $libobjs $deplibs $compiler_flags'
9033      _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-R$libdir'
9034      _LT_TAGVAR(hardcode_direct, $1)=yes
9035      _LT_TAGVAR(hardcode_shlibpath_var, $1)=no
9036      ;;
9037
9038    hpux9*)
9039      if test yes = "$GCC"; then
9040	_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'
9041      else
9042	_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'
9043      fi
9044      _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='$wl+b $wl$libdir'
9045      _LT_TAGVAR(hardcode_libdir_separator, $1)=:
9046      _LT_TAGVAR(hardcode_direct, $1)=yes
9047
9048      # hardcode_minus_L: Not really in the search PATH,
9049      # but as the default location of the library.
9050      _LT_TAGVAR(hardcode_minus_L, $1)=yes
9051      _LT_TAGVAR(export_dynamic_flag_spec, $1)='$wl-E'
9052      ;;
9053
9054    hpux10*)
9055      if test yes,no = "$GCC,$with_gnu_ld"; then
9056	_LT_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag $wl+h $wl$soname $wl+b $wl$install_libdir -o $lib $libobjs $deplibs $compiler_flags'
9057      else
9058	_LT_TAGVAR(archive_cmds, $1)='$LD -b +h $soname +b $install_libdir -o $lib $libobjs $deplibs $linker_flags'
9059      fi
9060      if test no = "$with_gnu_ld"; then
9061	_LT_TAGVAR(hardcode_libdir_flag_spec, $1)='$wl+b $wl$libdir'
9062	_LT_TAGVAR(hardcode_libdir_separator, $1)=:
9063	_LT_TAGVAR(hardcode_direct, $1)=yes
9064	_LT_TAGVAR(hardcode_direct_absolute, $1)=yes
9065	_LT_TAGVAR(export_dynamic_flag_spec, $1)='$wl-E'
9066	# hardcode_minus_L: Not really in the search PATH,
9067	# but as the default location of the library.
9068	_LT_TAGVAR(hardcode_minus_L, $1)=yes
9069      fi
9070      ;;
9071
9072    hpux11*)
9073      if test yes,no = "$GCC,$with_gnu_ld"; then
9074	case $host_cpu in
9075	hppa*64*)
9076	  _LT_TAGVAR(archive_cmds, $1)='$CC -shared $wl+h $wl$soname -o $lib $libobjs $deplibs $compiler_flags'
9077	  ;;
9078	ia64*)
9079	  _LT_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag $wl+h $wl$soname $wl+nodefaultrpath -o $lib $libobjs $deplibs $compiler_flags'
9080	  ;;
9081	*)
9082	  _LT_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag $wl+h $wl$soname $wl+b $wl$install_libdir -o $lib $libobjs $deplibs $compiler_flags'
9083	  ;;
9084	esac
9085      else
9086	case $host_cpu in
9087	hppa*64*)
9088	  _LT_TAGVAR(archive_cmds, $1)='$CC -b $wl+h $wl$soname -o $lib $libobjs $deplibs $compiler_flags'
9089	  ;;
9090	ia64*)
9091	  _LT_TAGVAR(archive_cmds, $1)='$CC -b $wl+h $wl$soname $wl+nodefaultrpath -o $lib $libobjs $deplibs $compiler_flags'
9092	  ;;
9093	*)
9094	m4_if($1, [], [
9095	  # Older versions of the 11.00 compiler do not understand -b yet
9096	  # (HP92453-01 A.11.01.20 doesn't, HP92453-01 B.11.X.35175-35176.GP does)
9097	  _LT_LINKER_OPTION([if $CC understands -b],
9098	    _LT_TAGVAR(lt_cv_prog_compiler__b, $1), [-b],
9099	    [_LT_TAGVAR(archive_cmds, $1)='$CC -b $wl+h $wl$soname $wl+b $wl$install_libdir -o $lib $libobjs $deplibs $compiler_flags'],
9100	    [_LT_TAGVAR(archive_cmds, $1)='$LD -b +h $soname +b $install_libdir -o $lib $libobjs $deplibs $linker_flags'])],
9101	  [_LT_TAGVAR(archive_cmds, $1)='$CC -b $wl+h $wl$soname $wl+b $wl$install_libdir -o $lib $libobjs $deplibs $compiler_flags'])
9102	  ;;
9103	esac
9104      fi
9105      if test no = "$with_gnu_ld"; then
9106	_LT_TAGVAR(hardcode_libdir_flag_spec, $1)='$wl+b $wl$libdir'
9107	_LT_TAGVAR(hardcode_libdir_separator, $1)=:
9108
9109	case $host_cpu in
9110	hppa*64*|ia64*)
9111	  _LT_TAGVAR(hardcode_direct, $1)=no
9112	  _LT_TAGVAR(hardcode_shlibpath_var, $1)=no
9113	  ;;
9114	*)
9115	  _LT_TAGVAR(hardcode_direct, $1)=yes
9116	  _LT_TAGVAR(hardcode_direct_absolute, $1)=yes
9117	  _LT_TAGVAR(export_dynamic_flag_spec, $1)='$wl-E'
9118
9119	  # hardcode_minus_L: Not really in the search PATH,
9120	  # but as the default location of the library.
9121	  _LT_TAGVAR(hardcode_minus_L, $1)=yes
9122	  ;;
9123	esac
9124      fi
9125      ;;
9126
9127    irix5* | irix6* | nonstopux*)
9128      if test yes = "$GCC"; then
9129	_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'
9130	# Try to use the -exported_symbol ld option, if it does not
9131	# work, assume that -exports_file does not work either and
9132	# implicitly export all symbols.
9133	# This should be the same for all languages, so no per-tag cache variable.
9134	AC_CACHE_CHECK([whether the $host_os linker accepts -exported_symbol],
9135	  [lt_cv_irix_exported_symbol],
9136	  [save_LDFLAGS=$LDFLAGS
9137	   LDFLAGS="$LDFLAGS -shared $wl-exported_symbol ${wl}foo $wl-update_registry $wl/dev/null"
9138	   AC_LINK_IFELSE(
9139	     [AC_LANG_SOURCE(
9140	        [AC_LANG_CASE([C], [[int foo (void) { return 0; }]],
9141			      [C++], [[int foo (void) { return 0; }]],
9142			      [Fortran 77], [[
9143      subroutine foo
9144      end]],
9145			      [Fortran], [[
9146      subroutine foo
9147      end]])])],
9148	      [lt_cv_irix_exported_symbol=yes],
9149	      [lt_cv_irix_exported_symbol=no])
9150           LDFLAGS=$save_LDFLAGS])
9151	if test yes = "$lt_cv_irix_exported_symbol"; then
9152          _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'
9153	fi
9154      else
9155	_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'
9156	_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'
9157      fi
9158      _LT_TAGVAR(archive_cmds_need_lc, $1)='no'
9159      _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='$wl-rpath $wl$libdir'
9160      _LT_TAGVAR(hardcode_libdir_separator, $1)=:
9161      _LT_TAGVAR(inherit_rpath, $1)=yes
9162      _LT_TAGVAR(link_all_deplibs, $1)=yes
9163      ;;
9164
9165    linux*)
9166      case $cc_basename in
9167      tcc*)
9168	# Fabrice Bellard et al's Tiny C Compiler
9169	_LT_TAGVAR(ld_shlibs, $1)=yes
9170	_LT_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag -o $lib $libobjs $deplibs $compiler_flags'
9171	;;
9172      esac
9173      ;;
9174
9175    netbsd*)
9176      if echo __ELF__ | $CC -E - | $GREP __ELF__ >/dev/null; then
9177	_LT_TAGVAR(archive_cmds, $1)='$LD -Bshareable -o $lib $libobjs $deplibs $linker_flags'  # a.out
9178      else
9179	_LT_TAGVAR(archive_cmds, $1)='$LD -shared -o $lib $libobjs $deplibs $linker_flags'      # ELF
9180      fi
9181      _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-R$libdir'
9182      _LT_TAGVAR(hardcode_direct, $1)=yes
9183      _LT_TAGVAR(hardcode_shlibpath_var, $1)=no
9184      ;;
9185
9186    newsos6)
9187      _LT_TAGVAR(archive_cmds, $1)='$LD -G -h $soname -o $lib $libobjs $deplibs $linker_flags'
9188      _LT_TAGVAR(hardcode_direct, $1)=yes
9189      _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='$wl-rpath $wl$libdir'
9190      _LT_TAGVAR(hardcode_libdir_separator, $1)=:
9191      _LT_TAGVAR(hardcode_shlibpath_var, $1)=no
9192      ;;
9193
9194    *nto* | *qnx*)
9195      ;;
9196
9197    openbsd* | bitrig*)
9198      if test -f /usr/libexec/ld.so; then
9199	_LT_TAGVAR(hardcode_direct, $1)=yes
9200	_LT_TAGVAR(hardcode_shlibpath_var, $1)=no
9201	_LT_TAGVAR(hardcode_direct_absolute, $1)=yes
9202	if test -z "`echo __ELF__ | $CC -E - | $GREP __ELF__`"; then
9203	  _LT_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag -o $lib $libobjs $deplibs $compiler_flags'
9204	  _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -shared $pic_flag -o $lib $libobjs $deplibs $compiler_flags $wl-retain-symbols-file,$export_symbols'
9205	  _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='$wl-rpath,$libdir'
9206	  _LT_TAGVAR(export_dynamic_flag_spec, $1)='$wl-E'
9207	else
9208	  _LT_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag -o $lib $libobjs $deplibs $compiler_flags'
9209	  _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='$wl-rpath,$libdir'
9210	fi
9211      else
9212	_LT_TAGVAR(ld_shlibs, $1)=no
9213      fi
9214      ;;
9215
9216    os2*)
9217      _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-L$libdir'
9218      _LT_TAGVAR(hardcode_minus_L, $1)=yes
9219      _LT_TAGVAR(allow_undefined_flag, $1)=unsupported
9220      shrext_cmds=.dll
9221      _LT_TAGVAR(archive_cmds, $1)='$ECHO "LIBRARY ${soname%$shared_ext} INITINSTANCE TERMINSTANCE" > $output_objdir/$libname.def~
9222	$ECHO "DESCRIPTION \"$libname\"" >> $output_objdir/$libname.def~
9223	$ECHO "DATA MULTIPLE NONSHARED" >> $output_objdir/$libname.def~
9224	$ECHO EXPORTS >> $output_objdir/$libname.def~
9225	emxexp $libobjs | $SED /"_DLL_InitTerm"/d >> $output_objdir/$libname.def~
9226	$CC -Zdll -Zcrtdll -o $output_objdir/$soname $libobjs $deplibs $compiler_flags $output_objdir/$libname.def~
9227	emximp -o $lib $output_objdir/$libname.def'
9228      _LT_TAGVAR(archive_expsym_cmds, $1)='$ECHO "LIBRARY ${soname%$shared_ext} INITINSTANCE TERMINSTANCE" > $output_objdir/$libname.def~
9229	$ECHO "DESCRIPTION \"$libname\"" >> $output_objdir/$libname.def~
9230	$ECHO "DATA MULTIPLE NONSHARED" >> $output_objdir/$libname.def~
9231	$ECHO EXPORTS >> $output_objdir/$libname.def~
9232	prefix_cmds="$SED"~
9233	if test EXPORTS = "`$SED 1q $export_symbols`"; then
9234	  prefix_cmds="$prefix_cmds -e 1d";
9235	fi~
9236	prefix_cmds="$prefix_cmds -e \"s/^\(.*\)$/_\1/g\""~
9237	cat $export_symbols | $prefix_cmds >> $output_objdir/$libname.def~
9238	$CC -Zdll -Zcrtdll -o $output_objdir/$soname $libobjs $deplibs $compiler_flags $output_objdir/$libname.def~
9239	emximp -o $lib $output_objdir/$libname.def'
9240      _LT_TAGVAR(old_archive_From_new_cmds, $1)='emximp -o $output_objdir/${libname}_dll.a $output_objdir/$libname.def'
9241      _LT_TAGVAR(enable_shared_with_static_runtimes, $1)=yes
9242      _LT_TAGVAR(file_list_spec, $1)='@'
9243      ;;
9244
9245    osf3*)
9246      if test yes = "$GCC"; then
9247	_LT_TAGVAR(allow_undefined_flag, $1)=' $wl-expect_unresolved $wl\*'
9248	_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'
9249      else
9250	_LT_TAGVAR(allow_undefined_flag, $1)=' -expect_unresolved \*'
9251	_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'
9252      fi
9253      _LT_TAGVAR(archive_cmds_need_lc, $1)='no'
9254      _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='$wl-rpath $wl$libdir'
9255      _LT_TAGVAR(hardcode_libdir_separator, $1)=:
9256      ;;
9257
9258    osf4* | osf5*)	# as osf3* with the addition of -msym flag
9259      if test yes = "$GCC"; then
9260	_LT_TAGVAR(allow_undefined_flag, $1)=' $wl-expect_unresolved $wl\*'
9261	_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'
9262	_LT_TAGVAR(hardcode_libdir_flag_spec, $1)='$wl-rpath $wl$libdir'
9263      else
9264	_LT_TAGVAR(allow_undefined_flag, $1)=' -expect_unresolved \*'
9265	_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'
9266	_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~
9267          $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'
9268
9269	# Both c and cxx compiler support -rpath directly
9270	_LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-rpath $libdir'
9271      fi
9272      _LT_TAGVAR(archive_cmds_need_lc, $1)='no'
9273      _LT_TAGVAR(hardcode_libdir_separator, $1)=:
9274      ;;
9275
9276    solaris*)
9277      _LT_TAGVAR(no_undefined_flag, $1)=' -z defs'
9278      if test yes = "$GCC"; then
9279	wlarc='$wl'
9280	_LT_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag $wl-z ${wl}text $wl-h $wl$soname -o $lib $libobjs $deplibs $compiler_flags'
9281	_LT_TAGVAR(archive_expsym_cmds, $1)='echo "{ global:" > $lib.exp~cat $export_symbols | $SED -e "s/\(.*\)/\1;/" >> $lib.exp~echo "local: *; };" >> $lib.exp~
9282          $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'
9283      else
9284	case `$CC -V 2>&1` in
9285	*"Compilers 5.0"*)
9286	  wlarc=''
9287	  _LT_TAGVAR(archive_cmds, $1)='$LD -G$allow_undefined_flag -h $soname -o $lib $libobjs $deplibs $linker_flags'
9288	  _LT_TAGVAR(archive_expsym_cmds, $1)='echo "{ global:" > $lib.exp~cat $export_symbols | $SED -e "s/\(.*\)/\1;/" >> $lib.exp~echo "local: *; };" >> $lib.exp~
9289            $LD -G$allow_undefined_flag -M $lib.exp -h $soname -o $lib $libobjs $deplibs $linker_flags~$RM $lib.exp'
9290	  ;;
9291	*)
9292	  wlarc='$wl'
9293	  _LT_TAGVAR(archive_cmds, $1)='$CC -G$allow_undefined_flag -h $soname -o $lib $libobjs $deplibs $compiler_flags'
9294	  _LT_TAGVAR(archive_expsym_cmds, $1)='echo "{ global:" > $lib.exp~cat $export_symbols | $SED -e "s/\(.*\)/\1;/" >> $lib.exp~echo "local: *; };" >> $lib.exp~
9295            $CC -G$allow_undefined_flag -M $lib.exp -h $soname -o $lib $libobjs $deplibs $compiler_flags~$RM $lib.exp'
9296	  ;;
9297	esac
9298      fi
9299      _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-R$libdir'
9300      _LT_TAGVAR(hardcode_shlibpath_var, $1)=no
9301      case $host_os in
9302      solaris2.[[0-5]] | solaris2.[[0-5]].*) ;;
9303      *)
9304	# The compiler driver will combine and reorder linker options,
9305	# but understands '-z linker_flag'.  GCC discards it without '$wl',
9306	# but is careful enough not to reorder.
9307	# Supported since Solaris 2.6 (maybe 2.5.1?)
9308	if test yes = "$GCC"; then
9309	  _LT_TAGVAR(whole_archive_flag_spec, $1)='$wl-z ${wl}allextract$convenience $wl-z ${wl}defaultextract'
9310	else
9311	  _LT_TAGVAR(whole_archive_flag_spec, $1)='-z allextract$convenience -z defaultextract'
9312	fi
9313	;;
9314      esac
9315      _LT_TAGVAR(link_all_deplibs, $1)=yes
9316      ;;
9317
9318    sunos4*)
9319      if test sequent = "$host_vendor"; then
9320	# Use $CC to link under sequent, because it throws in some extra .o
9321	# files that make .init and .fini sections work.
9322	_LT_TAGVAR(archive_cmds, $1)='$CC -G $wl-h $soname -o $lib $libobjs $deplibs $compiler_flags'
9323      else
9324	_LT_TAGVAR(archive_cmds, $1)='$LD -assert pure-text -Bstatic -o $lib $libobjs $deplibs $linker_flags'
9325      fi
9326      _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-L$libdir'
9327      _LT_TAGVAR(hardcode_direct, $1)=yes
9328      _LT_TAGVAR(hardcode_minus_L, $1)=yes
9329      _LT_TAGVAR(hardcode_shlibpath_var, $1)=no
9330      ;;
9331
9332    sysv4)
9333      case $host_vendor in
9334	sni)
9335	  _LT_TAGVAR(archive_cmds, $1)='$LD -G -h $soname -o $lib $libobjs $deplibs $linker_flags'
9336	  _LT_TAGVAR(hardcode_direct, $1)=yes # is this really true???
9337	;;
9338	siemens)
9339	  ## LD is ld it makes a PLAMLIB
9340	  ## CC just makes a GrossModule.
9341	  _LT_TAGVAR(archive_cmds, $1)='$LD -G -o $lib $libobjs $deplibs $linker_flags'
9342	  _LT_TAGVAR(reload_cmds, $1)='$CC -r -o $output$reload_objs'
9343	  _LT_TAGVAR(hardcode_direct, $1)=no
9344        ;;
9345	motorola)
9346	  _LT_TAGVAR(archive_cmds, $1)='$LD -G -h $soname -o $lib $libobjs $deplibs $linker_flags'
9347	  _LT_TAGVAR(hardcode_direct, $1)=no #Motorola manual says yes, but my tests say they lie
9348	;;
9349      esac
9350      runpath_var='LD_RUN_PATH'
9351      _LT_TAGVAR(hardcode_shlibpath_var, $1)=no
9352      ;;
9353
9354    sysv4.3*)
9355      _LT_TAGVAR(archive_cmds, $1)='$LD -G -h $soname -o $lib $libobjs $deplibs $linker_flags'
9356      _LT_TAGVAR(hardcode_shlibpath_var, $1)=no
9357      _LT_TAGVAR(export_dynamic_flag_spec, $1)='-Bexport'
9358      ;;
9359
9360    sysv4*MP*)
9361      if test -d /usr/nec; then
9362	_LT_TAGVAR(archive_cmds, $1)='$LD -G -h $soname -o $lib $libobjs $deplibs $linker_flags'
9363	_LT_TAGVAR(hardcode_shlibpath_var, $1)=no
9364	runpath_var=LD_RUN_PATH
9365	hardcode_runpath_var=yes
9366	_LT_TAGVAR(ld_shlibs, $1)=yes
9367      fi
9368      ;;
9369
9370    sysv4*uw2* | sysv5OpenUNIX* | sysv5UnixWare7.[[01]].[[10]]* | unixware7* | sco3.2v5.0.[[024]]*)
9371      _LT_TAGVAR(no_undefined_flag, $1)='$wl-z,text'
9372      _LT_TAGVAR(archive_cmds_need_lc, $1)=no
9373      _LT_TAGVAR(hardcode_shlibpath_var, $1)=no
9374      runpath_var='LD_RUN_PATH'
9375
9376      if test yes = "$GCC"; then
9377	_LT_TAGVAR(archive_cmds, $1)='$CC -shared $wl-h,$soname -o $lib $libobjs $deplibs $compiler_flags'
9378	_LT_TAGVAR(archive_expsym_cmds, $1)='$CC -shared $wl-Bexport:$export_symbols $wl-h,$soname -o $lib $libobjs $deplibs $compiler_flags'
9379      else
9380	_LT_TAGVAR(archive_cmds, $1)='$CC -G $wl-h,$soname -o $lib $libobjs $deplibs $compiler_flags'
9381	_LT_TAGVAR(archive_expsym_cmds, $1)='$CC -G $wl-Bexport:$export_symbols $wl-h,$soname -o $lib $libobjs $deplibs $compiler_flags'
9382      fi
9383      ;;
9384
9385    sysv5* | sco3.2v5* | sco5v6*)
9386      # Note: We CANNOT use -z defs as we might desire, because we do not
9387      # link with -lc, and that would cause any symbols used from libc to
9388      # always be unresolved, which means just about no library would
9389      # ever link correctly.  If we're not using GNU ld we use -z text
9390      # though, which does catch some bad symbols but isn't as heavy-handed
9391      # as -z defs.
9392      _LT_TAGVAR(no_undefined_flag, $1)='$wl-z,text'
9393      _LT_TAGVAR(allow_undefined_flag, $1)='$wl-z,nodefs'
9394      _LT_TAGVAR(archive_cmds_need_lc, $1)=no
9395      _LT_TAGVAR(hardcode_shlibpath_var, $1)=no
9396      _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='$wl-R,$libdir'
9397      _LT_TAGVAR(hardcode_libdir_separator, $1)=':'
9398      _LT_TAGVAR(link_all_deplibs, $1)=yes
9399      _LT_TAGVAR(export_dynamic_flag_spec, $1)='$wl-Bexport'
9400      runpath_var='LD_RUN_PATH'
9401
9402      if test yes = "$GCC"; then
9403	_LT_TAGVAR(archive_cmds, $1)='$CC -shared $wl-h,$soname -o $lib $libobjs $deplibs $compiler_flags'
9404	_LT_TAGVAR(archive_expsym_cmds, $1)='$CC -shared $wl-Bexport:$export_symbols $wl-h,$soname -o $lib $libobjs $deplibs $compiler_flags'
9405      else
9406	_LT_TAGVAR(archive_cmds, $1)='$CC -G $wl-h,$soname -o $lib $libobjs $deplibs $compiler_flags'
9407	_LT_TAGVAR(archive_expsym_cmds, $1)='$CC -G $wl-Bexport:$export_symbols $wl-h,$soname -o $lib $libobjs $deplibs $compiler_flags'
9408      fi
9409      ;;
9410
9411    uts4*)
9412      _LT_TAGVAR(archive_cmds, $1)='$LD -G -h $soname -o $lib $libobjs $deplibs $linker_flags'
9413      _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-L$libdir'
9414      _LT_TAGVAR(hardcode_shlibpath_var, $1)=no
9415      ;;
9416
9417    *)
9418      _LT_TAGVAR(ld_shlibs, $1)=no
9419      ;;
9420    esac
9421
9422    if test sni = "$host_vendor"; then
9423      case $host in
9424      sysv4 | sysv4.2uw2* | sysv4.3* | sysv5*)
9425	_LT_TAGVAR(export_dynamic_flag_spec, $1)='$wl-Blargedynsym'
9426	;;
9427      esac
9428    fi
9429  fi
9430])
9431AC_MSG_RESULT([$_LT_TAGVAR(ld_shlibs, $1)])
9432test no = "$_LT_TAGVAR(ld_shlibs, $1)" && can_build_shared=no
9433
9434_LT_TAGVAR(with_gnu_ld, $1)=$with_gnu_ld
9435
9436_LT_DECL([], [libext], [0], [Old archive suffix (normally "a")])dnl
9437_LT_DECL([], [shrext_cmds], [1], [Shared library suffix (normally ".so")])dnl
9438_LT_DECL([], [extract_expsyms_cmds], [2],
9439    [The commands to extract the exported symbol list from a shared archive])
9440
9441#
9442# Do we need to explicitly link libc?
9443#
9444case "x$_LT_TAGVAR(archive_cmds_need_lc, $1)" in
9445x|xyes)
9446  # Assume -lc should be added
9447  _LT_TAGVAR(archive_cmds_need_lc, $1)=yes
9448
9449  if test yes,yes = "$GCC,$enable_shared"; then
9450    case $_LT_TAGVAR(archive_cmds, $1) in
9451    *'~'*)
9452      # FIXME: we may have to deal with multi-command sequences.
9453      ;;
9454    '$CC '*)
9455      # Test whether the compiler implicitly links with -lc since on some
9456      # systems, -lgcc has to come before -lc. If gcc already passes -lc
9457      # to ld, don't add -lc before -lgcc.
9458      AC_CACHE_CHECK([whether -lc should be explicitly linked in],
9459	[lt_cv_]_LT_TAGVAR(archive_cmds_need_lc, $1),
9460	[$RM conftest*
9461	echo "$lt_simple_compile_test_code" > conftest.$ac_ext
9462
9463	if AC_TRY_EVAL(ac_compile) 2>conftest.err; then
9464	  soname=conftest
9465	  lib=conftest
9466	  libobjs=conftest.$ac_objext
9467	  deplibs=
9468	  wl=$_LT_TAGVAR(lt_prog_compiler_wl, $1)
9469	  pic_flag=$_LT_TAGVAR(lt_prog_compiler_pic, $1)
9470	  compiler_flags=-v
9471	  linker_flags=-v
9472	  verstring=
9473	  output_objdir=.
9474	  libname=conftest
9475	  lt_save_allow_undefined_flag=$_LT_TAGVAR(allow_undefined_flag, $1)
9476	  _LT_TAGVAR(allow_undefined_flag, $1)=
9477	  if AC_TRY_EVAL(_LT_TAGVAR(archive_cmds, $1) 2\>\&1 \| $GREP \" -lc \" \>/dev/null 2\>\&1)
9478	  then
9479	    lt_cv_[]_LT_TAGVAR(archive_cmds_need_lc, $1)=no
9480	  else
9481	    lt_cv_[]_LT_TAGVAR(archive_cmds_need_lc, $1)=yes
9482	  fi
9483	  _LT_TAGVAR(allow_undefined_flag, $1)=$lt_save_allow_undefined_flag
9484	else
9485	  cat conftest.err 1>&5
9486	fi
9487	$RM conftest*
9488	])
9489      _LT_TAGVAR(archive_cmds_need_lc, $1)=$lt_cv_[]_LT_TAGVAR(archive_cmds_need_lc, $1)
9490      ;;
9491    esac
9492  fi
9493  ;;
9494esac
9495
9496_LT_TAGDECL([build_libtool_need_lc], [archive_cmds_need_lc], [0],
9497    [Whether or not to add -lc for building shared libraries])
9498_LT_TAGDECL([allow_libtool_libs_with_static_runtimes],
9499    [enable_shared_with_static_runtimes], [0],
9500    [Whether or not to disallow shared libs when runtime libs are static])
9501_LT_TAGDECL([], [export_dynamic_flag_spec], [1],
9502    [Compiler flag to allow reflexive dlopens])
9503_LT_TAGDECL([], [whole_archive_flag_spec], [1],
9504    [Compiler flag to generate shared objects directly from archives])
9505_LT_TAGDECL([], [compiler_needs_object], [1],
9506    [Whether the compiler copes with passing no objects directly])
9507_LT_TAGDECL([], [old_archive_from_new_cmds], [2],
9508    [Create an old-style archive from a shared archive])
9509_LT_TAGDECL([], [old_archive_from_expsyms_cmds], [2],
9510    [Create a temporary old-style archive to link instead of a shared archive])
9511_LT_TAGDECL([], [archive_cmds], [2], [Commands used to build a shared archive])
9512_LT_TAGDECL([], [archive_expsym_cmds], [2])
9513_LT_TAGDECL([], [module_cmds], [2],
9514    [Commands used to build a loadable module if different from building
9515    a shared archive.])
9516_LT_TAGDECL([], [module_expsym_cmds], [2])
9517_LT_TAGDECL([], [with_gnu_ld], [1],
9518    [Whether we are building with GNU ld or not])
9519_LT_TAGDECL([], [allow_undefined_flag], [1],
9520    [Flag that allows shared libraries with undefined symbols to be built])
9521_LT_TAGDECL([], [no_undefined_flag], [1],
9522    [Flag that enforces no undefined symbols])
9523_LT_TAGDECL([], [hardcode_libdir_flag_spec], [1],
9524    [Flag to hardcode $libdir into a binary during linking.
9525    This must work even if $libdir does not exist])
9526_LT_TAGDECL([], [hardcode_libdir_separator], [1],
9527    [Whether we need a single "-rpath" flag with a separated argument])
9528_LT_TAGDECL([], [hardcode_direct], [0],
9529    [Set to "yes" if using DIR/libNAME$shared_ext during linking hardcodes
9530    DIR into the resulting binary])
9531_LT_TAGDECL([], [hardcode_direct_absolute], [0],
9532    [Set to "yes" if using DIR/libNAME$shared_ext during linking hardcodes
9533    DIR into the resulting binary and the resulting library dependency is
9534    "absolute", i.e impossible to change by setting $shlibpath_var if the
9535    library is relocated])
9536_LT_TAGDECL([], [hardcode_minus_L], [0],
9537    [Set to "yes" if using the -LDIR flag during linking hardcodes DIR
9538    into the resulting binary])
9539_LT_TAGDECL([], [hardcode_shlibpath_var], [0],
9540    [Set to "yes" if using SHLIBPATH_VAR=DIR during linking hardcodes DIR
9541    into the resulting binary])
9542_LT_TAGDECL([], [hardcode_automatic], [0],
9543    [Set to "yes" if building a shared library automatically hardcodes DIR
9544    into the library and all subsequent libraries and executables linked
9545    against it])
9546_LT_TAGDECL([], [inherit_rpath], [0],
9547    [Set to yes if linker adds runtime paths of dependent libraries
9548    to runtime path list])
9549_LT_TAGDECL([], [link_all_deplibs], [0],
9550    [Whether libtool must link a program against all its dependency libraries])
9551_LT_TAGDECL([], [always_export_symbols], [0],
9552    [Set to "yes" if exported symbols are required])
9553_LT_TAGDECL([], [export_symbols_cmds], [2],
9554    [The commands to list exported symbols])
9555_LT_TAGDECL([], [exclude_expsyms], [1],
9556    [Symbols that should not be listed in the preloaded symbols])
9557_LT_TAGDECL([], [include_expsyms], [1],
9558    [Symbols that must always be exported])
9559_LT_TAGDECL([], [prelink_cmds], [2],
9560    [Commands necessary for linking programs (against libraries) with templates])
9561_LT_TAGDECL([], [postlink_cmds], [2],
9562    [Commands necessary for finishing linking programs])
9563_LT_TAGDECL([], [file_list_spec], [1],
9564    [Specify filename containing input files])
9565dnl FIXME: Not yet implemented
9566dnl _LT_TAGDECL([], [thread_safe_flag_spec], [1],
9567dnl    [Compiler flag to generate thread safe objects])
9568])# _LT_LINKER_SHLIBS
9569
9570
9571# _LT_LANG_C_CONFIG([TAG])
9572# ------------------------
9573# Ensure that the configuration variables for a C compiler are suitably
9574# defined.  These variables are subsequently used by _LT_CONFIG to write
9575# the compiler configuration to 'libtool'.
9576m4_defun([_LT_LANG_C_CONFIG],
9577[m4_require([_LT_DECL_EGREP])dnl
9578lt_save_CC=$CC
9579AC_LANG_PUSH(C)
9580
9581# Source file extension for C test sources.
9582ac_ext=c
9583
9584# Object file extension for compiled C test sources.
9585objext=o
9586_LT_TAGVAR(objext, $1)=$objext
9587
9588# Code to be used in simple compile tests
9589lt_simple_compile_test_code="int some_variable = 0;"
9590
9591# Code to be used in simple link tests
9592lt_simple_link_test_code='int main(){return(0);}'
9593
9594_LT_TAG_COMPILER
9595# Save the default compiler, since it gets overwritten when the other
9596# tags are being tested, and _LT_TAGVAR(compiler, []) is a NOP.
9597compiler_DEFAULT=$CC
9598
9599# save warnings/boilerplate of simple test code
9600_LT_COMPILER_BOILERPLATE
9601_LT_LINKER_BOILERPLATE
9602
9603if test -n "$compiler"; then
9604  _LT_COMPILER_NO_RTTI($1)
9605  _LT_COMPILER_PIC($1)
9606  _LT_COMPILER_C_O($1)
9607  _LT_COMPILER_FILE_LOCKS($1)
9608  _LT_LINKER_SHLIBS($1)
9609  _LT_SYS_DYNAMIC_LINKER($1)
9610  _LT_LINKER_HARDCODE_LIBPATH($1)
9611  LT_SYS_DLOPEN_SELF
9612  _LT_CMD_STRIPLIB
9613
9614  # Report what library types will actually be built
9615  AC_MSG_CHECKING([if libtool supports shared libraries])
9616  AC_MSG_RESULT([$can_build_shared])
9617
9618  AC_MSG_CHECKING([whether to build shared libraries])
9619  test no = "$can_build_shared" && enable_shared=no
9620
9621  # On AIX, shared libraries and static libraries use the same namespace, and
9622  # are all built from PIC.
9623  case $host_os in
9624  aix3*)
9625    test yes = "$enable_shared" && enable_static=no
9626    if test -n "$RANLIB"; then
9627      archive_cmds="$archive_cmds~\$RANLIB \$lib"
9628      postinstall_cmds='$RANLIB $lib'
9629    fi
9630    ;;
9631
9632  aix[[4-9]]*)
9633    if test ia64 != "$host_cpu"; then
9634      case $enable_shared,$with_aix_soname,$aix_use_runtimelinking in
9635      yes,aix,yes) ;;			# shared object as lib.so file only
9636      yes,svr4,*) ;;			# shared object as lib.so archive member only
9637      yes,*) enable_static=no ;;	# shared object in lib.a archive as well
9638      esac
9639    fi
9640    ;;
9641  esac
9642  AC_MSG_RESULT([$enable_shared])
9643
9644  AC_MSG_CHECKING([whether to build static libraries])
9645  # Make sure either enable_shared or enable_static is yes.
9646  test yes = "$enable_shared" || enable_static=yes
9647  AC_MSG_RESULT([$enable_static])
9648
9649  _LT_CONFIG($1)
9650fi
9651AC_LANG_POP
9652CC=$lt_save_CC
9653])# _LT_LANG_C_CONFIG
9654
9655
9656# _LT_LANG_CXX_CONFIG([TAG])
9657# --------------------------
9658# Ensure that the configuration variables for a C++ compiler are suitably
9659# defined.  These variables are subsequently used by _LT_CONFIG to write
9660# the compiler configuration to 'libtool'.
9661m4_defun([_LT_LANG_CXX_CONFIG],
9662[m4_require([_LT_FILEUTILS_DEFAULTS])dnl
9663m4_require([_LT_DECL_EGREP])dnl
9664m4_require([_LT_PATH_MANIFEST_TOOL])dnl
9665if test -n "$CXX" && ( test no != "$CXX" &&
9666    ( (test g++ = "$CXX" && `g++ -v >/dev/null 2>&1` ) ||
9667    (test g++ != "$CXX"))); then
9668  AC_PROG_CXXCPP
9669else
9670  _lt_caught_CXX_error=yes
9671fi
9672
9673AC_LANG_PUSH(C++)
9674_LT_TAGVAR(archive_cmds_need_lc, $1)=no
9675_LT_TAGVAR(allow_undefined_flag, $1)=
9676_LT_TAGVAR(always_export_symbols, $1)=no
9677_LT_TAGVAR(archive_expsym_cmds, $1)=
9678_LT_TAGVAR(compiler_needs_object, $1)=no
9679_LT_TAGVAR(export_dynamic_flag_spec, $1)=
9680_LT_TAGVAR(hardcode_direct, $1)=no
9681_LT_TAGVAR(hardcode_direct_absolute, $1)=no
9682_LT_TAGVAR(hardcode_libdir_flag_spec, $1)=
9683_LT_TAGVAR(hardcode_libdir_separator, $1)=
9684_LT_TAGVAR(hardcode_minus_L, $1)=no
9685_LT_TAGVAR(hardcode_shlibpath_var, $1)=unsupported
9686_LT_TAGVAR(hardcode_automatic, $1)=no
9687_LT_TAGVAR(inherit_rpath, $1)=no
9688_LT_TAGVAR(module_cmds, $1)=
9689_LT_TAGVAR(module_expsym_cmds, $1)=
9690_LT_TAGVAR(link_all_deplibs, $1)=unknown
9691_LT_TAGVAR(old_archive_cmds, $1)=$old_archive_cmds
9692_LT_TAGVAR(reload_flag, $1)=$reload_flag
9693_LT_TAGVAR(reload_cmds, $1)=$reload_cmds
9694_LT_TAGVAR(no_undefined_flag, $1)=
9695_LT_TAGVAR(whole_archive_flag_spec, $1)=
9696_LT_TAGVAR(enable_shared_with_static_runtimes, $1)=no
9697
9698# Source file extension for C++ test sources.
9699ac_ext=cpp
9700
9701# Object file extension for compiled C++ test sources.
9702objext=o
9703_LT_TAGVAR(objext, $1)=$objext
9704
9705# No sense in running all these tests if we already determined that
9706# the CXX compiler isn't working.  Some variables (like enable_shared)
9707# are currently assumed to apply to all compilers on this platform,
9708# and will be corrupted by setting them based on a non-working compiler.
9709if test yes != "$_lt_caught_CXX_error"; then
9710  # Code to be used in simple compile tests
9711  lt_simple_compile_test_code="int some_variable = 0;"
9712
9713  # Code to be used in simple link tests
9714  lt_simple_link_test_code='int main(int, char *[[]]) { return(0); }'
9715
9716  # ltmain only uses $CC for tagged configurations so make sure $CC is set.
9717  _LT_TAG_COMPILER
9718
9719  # save warnings/boilerplate of simple test code
9720  _LT_COMPILER_BOILERPLATE
9721  _LT_LINKER_BOILERPLATE
9722
9723  # Allow CC to be a program name with arguments.
9724  lt_save_CC=$CC
9725  lt_save_CFLAGS=$CFLAGS
9726  lt_save_LD=$LD
9727  lt_save_GCC=$GCC
9728  GCC=$GXX
9729  lt_save_with_gnu_ld=$with_gnu_ld
9730  lt_save_path_LD=$lt_cv_path_LD
9731  if test -n "${lt_cv_prog_gnu_ldcxx+set}"; then
9732    lt_cv_prog_gnu_ld=$lt_cv_prog_gnu_ldcxx
9733  else
9734    $as_unset lt_cv_prog_gnu_ld
9735  fi
9736  if test -n "${lt_cv_path_LDCXX+set}"; then
9737    lt_cv_path_LD=$lt_cv_path_LDCXX
9738  else
9739    $as_unset lt_cv_path_LD
9740  fi
9741  test -z "${LDCXX+set}" || LD=$LDCXX
9742  CC=${CXX-"c++"}
9743  CFLAGS=$CXXFLAGS
9744  compiler=$CC
9745  _LT_TAGVAR(compiler, $1)=$CC
9746  _LT_CC_BASENAME([$compiler])
9747
9748  if test -n "$compiler"; then
9749    # We don't want -fno-exception when compiling C++ code, so set the
9750    # no_builtin_flag separately
9751    if test yes = "$GXX"; then
9752      _LT_TAGVAR(lt_prog_compiler_no_builtin_flag, $1)=' -fno-builtin'
9753    else
9754      _LT_TAGVAR(lt_prog_compiler_no_builtin_flag, $1)=
9755    fi
9756
9757    if test yes = "$GXX"; then
9758      # Set up default GNU C++ configuration
9759
9760      LT_PATH_LD
9761
9762      # Check if GNU C++ uses GNU ld as the underlying linker, since the
9763      # archiving commands below assume that GNU ld is being used.
9764      if test yes = "$with_gnu_ld"; then
9765        _LT_TAGVAR(archive_cmds, $1)='$CC $pic_flag -shared -nostdlib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags $wl-soname $wl$soname -o $lib'
9766        _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'
9767
9768        _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='$wl-rpath $wl$libdir'
9769        _LT_TAGVAR(export_dynamic_flag_spec, $1)='$wl--export-dynamic'
9770
9771        # If archive_cmds runs LD, not CC, wlarc should be empty
9772        # XXX I think wlarc can be eliminated in ltcf-cxx, but I need to
9773        #     investigate it a little bit more. (MM)
9774        wlarc='$wl'
9775
9776        # ancient GNU ld didn't support --whole-archive et. al.
9777        if eval "`$CC -print-prog-name=ld` --help 2>&1" |
9778	  $GREP 'no-whole-archive' > /dev/null; then
9779          _LT_TAGVAR(whole_archive_flag_spec, $1)=$wlarc'--whole-archive$convenience '$wlarc'--no-whole-archive'
9780        else
9781          _LT_TAGVAR(whole_archive_flag_spec, $1)=
9782        fi
9783      else
9784        with_gnu_ld=no
9785        wlarc=
9786
9787        # A generic and very simple default shared library creation
9788        # command for GNU C++ for the case where it uses the native
9789        # linker, instead of GNU ld.  If possible, this setting should
9790        # overridden to take advantage of the native linker features on
9791        # the platform it is being used on.
9792        _LT_TAGVAR(archive_cmds, $1)='$CC -shared -nostdlib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags -o $lib'
9793      fi
9794
9795      # Commands to make compiler produce verbose output that lists
9796      # what "hidden" libraries, object files and flags are used when
9797      # linking a shared library.
9798      output_verbose_link_cmd='$CC -shared $CFLAGS -v conftest.$objext 2>&1 | $GREP -v "^Configured with:" | $GREP "\-L"'
9799
9800    else
9801      GXX=no
9802      with_gnu_ld=no
9803      wlarc=
9804    fi
9805
9806    # PORTME: fill in a description of your system's C++ link characteristics
9807    AC_MSG_CHECKING([whether the $compiler linker ($LD) supports shared libraries])
9808    _LT_TAGVAR(ld_shlibs, $1)=yes
9809    case $host_os in
9810      aix3*)
9811        # FIXME: insert proper C++ library support
9812        _LT_TAGVAR(ld_shlibs, $1)=no
9813        ;;
9814      aix[[4-9]]*)
9815        if test ia64 = "$host_cpu"; then
9816          # On IA64, the linker does run time linking by default, so we don't
9817          # have to do anything special.
9818          aix_use_runtimelinking=no
9819          exp_sym_flag='-Bexport'
9820          no_entry_flag=
9821        else
9822          aix_use_runtimelinking=no
9823
9824          # Test if we are trying to use run time linking or normal
9825          # AIX style linking. If -brtl is somewhere in LDFLAGS, we
9826          # have runtime linking enabled, and use it for executables.
9827          # For shared libraries, we enable/disable runtime linking
9828          # depending on the kind of the shared library created -
9829          # when "with_aix_soname,aix_use_runtimelinking" is:
9830          # "aix,no"   lib.a(lib.so.V) shared, rtl:no,  for executables
9831          # "aix,yes"  lib.so          shared, rtl:yes, for executables
9832          #            lib.a           static archive
9833          # "both,no"  lib.so.V(shr.o) shared, rtl:yes
9834          #            lib.a(lib.so.V) shared, rtl:no,  for executables
9835          # "both,yes" lib.so.V(shr.o) shared, rtl:yes, for executables
9836          #            lib.a(lib.so.V) shared, rtl:no
9837          # "svr4,*"   lib.so.V(shr.o) shared, rtl:yes, for executables
9838          #            lib.a           static archive
9839          case $host_os in aix4.[[23]]|aix4.[[23]].*|aix[[5-9]]*)
9840	    for ld_flag in $LDFLAGS; do
9841	      case $ld_flag in
9842	      *-brtl*)
9843	        aix_use_runtimelinking=yes
9844	        break
9845	        ;;
9846	      esac
9847	    done
9848	    if test svr4,no = "$with_aix_soname,$aix_use_runtimelinking"; then
9849	      # With aix-soname=svr4, we create the lib.so.V shared archives only,
9850	      # so we don't have lib.a shared libs to link our executables.
9851	      # We have to force runtime linking in this case.
9852	      aix_use_runtimelinking=yes
9853	      LDFLAGS="$LDFLAGS -Wl,-brtl"
9854	    fi
9855	    ;;
9856          esac
9857
9858          exp_sym_flag='-bexport'
9859          no_entry_flag='-bnoentry'
9860        fi
9861
9862        # When large executables or shared objects are built, AIX ld can
9863        # have problems creating the table of contents.  If linking a library
9864        # or program results in "error TOC overflow" add -mminimal-toc to
9865        # CXXFLAGS/CFLAGS for g++/gcc.  In the cases where that is not
9866        # enough to fix the problem, add -Wl,-bbigtoc to LDFLAGS.
9867
9868        _LT_TAGVAR(archive_cmds, $1)=''
9869        _LT_TAGVAR(hardcode_direct, $1)=yes
9870        _LT_TAGVAR(hardcode_direct_absolute, $1)=yes
9871        _LT_TAGVAR(hardcode_libdir_separator, $1)=':'
9872        _LT_TAGVAR(link_all_deplibs, $1)=yes
9873        _LT_TAGVAR(file_list_spec, $1)='$wl-f,'
9874        case $with_aix_soname,$aix_use_runtimelinking in
9875        aix,*) ;;	# no import file
9876        svr4,* | *,yes) # use import file
9877          # The Import File defines what to hardcode.
9878          _LT_TAGVAR(hardcode_direct, $1)=no
9879          _LT_TAGVAR(hardcode_direct_absolute, $1)=no
9880          ;;
9881        esac
9882
9883        if test yes = "$GXX"; then
9884          case $host_os in aix4.[[012]]|aix4.[[012]].*)
9885          # We only want to do this on AIX 4.2 and lower, the check
9886          # below for broken collect2 doesn't work under 4.3+
9887	  collect2name=`$CC -print-prog-name=collect2`
9888	  if test -f "$collect2name" &&
9889	     strings "$collect2name" | $GREP resolve_lib_name >/dev/null
9890	  then
9891	    # We have reworked collect2
9892	    :
9893	  else
9894	    # We have old collect2
9895	    _LT_TAGVAR(hardcode_direct, $1)=unsupported
9896	    # It fails to find uninstalled libraries when the uninstalled
9897	    # path is not listed in the libpath.  Setting hardcode_minus_L
9898	    # to unsupported forces relinking
9899	    _LT_TAGVAR(hardcode_minus_L, $1)=yes
9900	    _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-L$libdir'
9901	    _LT_TAGVAR(hardcode_libdir_separator, $1)=
9902	  fi
9903          esac
9904          shared_flag='-shared'
9905	  if test yes = "$aix_use_runtimelinking"; then
9906	    shared_flag=$shared_flag' $wl-G'
9907	  fi
9908	  # Need to ensure runtime linking is disabled for the traditional
9909	  # shared library, or the linker may eventually find shared libraries
9910	  # /with/ Import File - we do not want to mix them.
9911	  shared_flag_aix='-shared'
9912	  shared_flag_svr4='-shared $wl-G'
9913        else
9914          # not using gcc
9915          if test ia64 = "$host_cpu"; then
9916	  # VisualAge C++, Version 5.5 for AIX 5L for IA-64, Beta 3 Release
9917	  # chokes on -Wl,-G. The following line is correct:
9918	  shared_flag='-G'
9919          else
9920	    if test yes = "$aix_use_runtimelinking"; then
9921	      shared_flag='$wl-G'
9922	    else
9923	      shared_flag='$wl-bM:SRE'
9924	    fi
9925	    shared_flag_aix='$wl-bM:SRE'
9926	    shared_flag_svr4='$wl-G'
9927          fi
9928        fi
9929
9930        _LT_TAGVAR(export_dynamic_flag_spec, $1)='$wl-bexpall'
9931        # It seems that -bexpall does not export symbols beginning with
9932        # underscore (_), so it is better to generate a list of symbols to
9933	# export.
9934        _LT_TAGVAR(always_export_symbols, $1)=yes
9935	if test aix,yes = "$with_aix_soname,$aix_use_runtimelinking"; then
9936          # Warning - without using the other runtime loading flags (-brtl),
9937          # -berok will link without error, but may produce a broken library.
9938          # The "-G" linker flag allows undefined symbols.
9939          _LT_TAGVAR(no_undefined_flag, $1)='-bernotok'
9940          # Determine the default libpath from the value encoded in an empty
9941          # executable.
9942          _LT_SYS_MODULE_PATH_AIX([$1])
9943          _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='$wl-blibpath:$libdir:'"$aix_libpath"
9944
9945          _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
9946        else
9947          if test ia64 = "$host_cpu"; then
9948	    _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='$wl-R $libdir:/usr/lib:/lib'
9949	    _LT_TAGVAR(allow_undefined_flag, $1)="-z nodefs"
9950	    _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"
9951          else
9952	    # Determine the default libpath from the value encoded in an
9953	    # empty executable.
9954	    _LT_SYS_MODULE_PATH_AIX([$1])
9955	    _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='$wl-blibpath:$libdir:'"$aix_libpath"
9956	    # Warning - without using the other run time loading flags,
9957	    # -berok will link without error, but may produce a broken library.
9958	    _LT_TAGVAR(no_undefined_flag, $1)=' $wl-bernotok'
9959	    _LT_TAGVAR(allow_undefined_flag, $1)=' $wl-berok'
9960	    if test yes = "$with_gnu_ld"; then
9961	      # We only use this code for GNU lds that support --whole-archive.
9962	      _LT_TAGVAR(whole_archive_flag_spec, $1)='$wl--whole-archive$convenience $wl--no-whole-archive'
9963	    else
9964	      # Exported symbols can be pulled into shared objects from archives
9965	      _LT_TAGVAR(whole_archive_flag_spec, $1)='$convenience'
9966	    fi
9967	    _LT_TAGVAR(archive_cmds_need_lc, $1)=yes
9968	    _LT_TAGVAR(archive_expsym_cmds, $1)='$RM -r $output_objdir/$realname.d~$MKDIR $output_objdir/$realname.d'
9969	    # -brtl affects multiple linker settings, -berok does not and is overridden later
9970	    compiler_flags_filtered='`func_echo_all "$compiler_flags " | $SED -e "s%-brtl\\([[, ]]\\)%-berok\\1%g"`'
9971	    if test svr4 != "$with_aix_soname"; then
9972	      # This is similar to how AIX traditionally builds its shared
9973	      # libraries. Need -bnortl late, we may have -brtl in LDFLAGS.
9974	      _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'
9975	    fi
9976	    if test aix != "$with_aix_soname"; then
9977	      _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'
9978	    else
9979	      # used by -dlpreopen to get the symbols
9980	      _LT_TAGVAR(archive_expsym_cmds, $1)="$_LT_TAGVAR(archive_expsym_cmds, $1)"'~$MV  $output_objdir/$realname.d/$soname $output_objdir'
9981	    fi
9982	    _LT_TAGVAR(archive_expsym_cmds, $1)="$_LT_TAGVAR(archive_expsym_cmds, $1)"'~$RM -r $output_objdir/$realname.d'
9983          fi
9984        fi
9985        ;;
9986
9987      beos*)
9988	if $LD --help 2>&1 | $GREP ': supported targets:.* elf' > /dev/null; then
9989	  _LT_TAGVAR(allow_undefined_flag, $1)=unsupported
9990	  # Joseph Beckenbach <jrb3@best.com> says some releases of gcc
9991	  # support --undefined.  This deserves some investigation.  FIXME
9992	  _LT_TAGVAR(archive_cmds, $1)='$CC -nostart $libobjs $deplibs $compiler_flags $wl-soname $wl$soname -o $lib'
9993	else
9994	  _LT_TAGVAR(ld_shlibs, $1)=no
9995	fi
9996	;;
9997
9998      chorus*)
9999        case $cc_basename in
10000          *)
10001	  # FIXME: insert proper C++ library support
10002	  _LT_TAGVAR(ld_shlibs, $1)=no
10003	  ;;
10004        esac
10005        ;;
10006
10007      cygwin* | mingw* | pw32* | cegcc*)
10008	case $GXX,$cc_basename in
10009	,cl* | no,cl* | ,icl* | no,icl*)
10010	  # Native MSVC or ICC
10011	  # hardcode_libdir_flag_spec is actually meaningless, as there is
10012	  # no search path for DLLs.
10013	  _LT_TAGVAR(hardcode_libdir_flag_spec, $1)=' '
10014	  _LT_TAGVAR(allow_undefined_flag, $1)=unsupported
10015	  _LT_TAGVAR(always_export_symbols, $1)=yes
10016	  _LT_TAGVAR(file_list_spec, $1)='@'
10017	  # Tell ltmain to make .lib files, not .a files.
10018	  libext=lib
10019	  # Tell ltmain to make .dll files, not .so files.
10020	  shrext_cmds=.dll
10021	  # FIXME: Setting linknames here is a bad hack.
10022	  _LT_TAGVAR(archive_cmds, $1)='$CC -o $output_objdir/$soname $libobjs $compiler_flags $deplibs -Wl,-DLL,-IMPLIB:"$tool_output_objdir$libname.dll.lib"~linknames='
10023	  _LT_TAGVAR(archive_expsym_cmds, $1)='if _LT_DLL_DEF_P([$export_symbols]); then
10024              cp "$export_symbols" "$output_objdir/$soname.def";
10025              echo "$tool_output_objdir$soname.def" > "$output_objdir/$soname.exp";
10026            else
10027              $SED -e '\''s/^/-link -EXPORT:/'\'' < $export_symbols > $output_objdir/$soname.exp;
10028            fi~
10029            $CC -o $tool_output_objdir$soname $libobjs $compiler_flags $deplibs "@$tool_output_objdir$soname.exp" -Wl,-DLL,-IMPLIB:"$tool_output_objdir$libname.dll.lib"~
10030            linknames='
10031	  # The linker will not automatically build a static lib if we build a DLL.
10032	  # _LT_TAGVAR(old_archive_from_new_cmds, $1)='true'
10033	  _LT_TAGVAR(enable_shared_with_static_runtimes, $1)=yes
10034	  # Don't use ranlib
10035	  _LT_TAGVAR(old_postinstall_cmds, $1)='chmod 644 $oldlib'
10036	  _LT_TAGVAR(postlink_cmds, $1)='lt_outputfile="@OUTPUT@"~
10037            lt_tool_outputfile="@TOOL_OUTPUT@"~
10038            case $lt_outputfile in
10039              *.exe|*.EXE) ;;
10040              *)
10041                lt_outputfile=$lt_outputfile.exe
10042                lt_tool_outputfile=$lt_tool_outputfile.exe
10043                ;;
10044            esac~
10045            func_to_tool_file "$lt_outputfile"~
10046            if test : != "$MANIFEST_TOOL" && test -f "$lt_outputfile.manifest"; then
10047              $MANIFEST_TOOL -manifest "$lt_tool_outputfile.manifest" -outputresource:"$lt_tool_outputfile" || exit 1;
10048              $RM "$lt_outputfile.manifest";
10049            fi'
10050	  ;;
10051	*)
10052	  # g++
10053	  # _LT_TAGVAR(hardcode_libdir_flag_spec, $1) is actually meaningless,
10054	  # as there is no search path for DLLs.
10055	  _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-L$libdir'
10056	  _LT_TAGVAR(export_dynamic_flag_spec, $1)='$wl--export-all-symbols'
10057	  _LT_TAGVAR(allow_undefined_flag, $1)=unsupported
10058	  _LT_TAGVAR(always_export_symbols, $1)=no
10059	  _LT_TAGVAR(enable_shared_with_static_runtimes, $1)=yes
10060
10061	  if $LD --help 2>&1 | $GREP 'auto-import' > /dev/null; then
10062	    _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'
10063	    # If the export-symbols file already is a .def file, use it as
10064	    # is; otherwise, prepend EXPORTS...
10065	    _LT_TAGVAR(archive_expsym_cmds, $1)='if _LT_DLL_DEF_P([$export_symbols]); then
10066              cp $export_symbols $output_objdir/$soname.def;
10067            else
10068              echo EXPORTS > $output_objdir/$soname.def;
10069              cat $export_symbols >> $output_objdir/$soname.def;
10070            fi~
10071            $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'
10072	  else
10073	    _LT_TAGVAR(ld_shlibs, $1)=no
10074	  fi
10075	  ;;
10076	esac
10077	;;
10078      darwin* | rhapsody*)
10079        _LT_DARWIN_LINKER_FEATURES($1)
10080	;;
10081
10082      os2*)
10083	_LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-L$libdir'
10084	_LT_TAGVAR(hardcode_minus_L, $1)=yes
10085	_LT_TAGVAR(allow_undefined_flag, $1)=unsupported
10086	shrext_cmds=.dll
10087	_LT_TAGVAR(archive_cmds, $1)='$ECHO "LIBRARY ${soname%$shared_ext} INITINSTANCE TERMINSTANCE" > $output_objdir/$libname.def~
10088	  $ECHO "DESCRIPTION \"$libname\"" >> $output_objdir/$libname.def~
10089	  $ECHO "DATA MULTIPLE NONSHARED" >> $output_objdir/$libname.def~
10090	  $ECHO EXPORTS >> $output_objdir/$libname.def~
10091	  emxexp $libobjs | $SED /"_DLL_InitTerm"/d >> $output_objdir/$libname.def~
10092	  $CC -Zdll -Zcrtdll -o $output_objdir/$soname $libobjs $deplibs $compiler_flags $output_objdir/$libname.def~
10093	  emximp -o $lib $output_objdir/$libname.def'
10094	_LT_TAGVAR(archive_expsym_cmds, $1)='$ECHO "LIBRARY ${soname%$shared_ext} INITINSTANCE TERMINSTANCE" > $output_objdir/$libname.def~
10095	  $ECHO "DESCRIPTION \"$libname\"" >> $output_objdir/$libname.def~
10096	  $ECHO "DATA MULTIPLE NONSHARED" >> $output_objdir/$libname.def~
10097	  $ECHO EXPORTS >> $output_objdir/$libname.def~
10098	  prefix_cmds="$SED"~
10099	  if test EXPORTS = "`$SED 1q $export_symbols`"; then
10100	    prefix_cmds="$prefix_cmds -e 1d";
10101	  fi~
10102	  prefix_cmds="$prefix_cmds -e \"s/^\(.*\)$/_\1/g\""~
10103	  cat $export_symbols | $prefix_cmds >> $output_objdir/$libname.def~
10104	  $CC -Zdll -Zcrtdll -o $output_objdir/$soname $libobjs $deplibs $compiler_flags $output_objdir/$libname.def~
10105	  emximp -o $lib $output_objdir/$libname.def'
10106	_LT_TAGVAR(old_archive_From_new_cmds, $1)='emximp -o $output_objdir/${libname}_dll.a $output_objdir/$libname.def'
10107	_LT_TAGVAR(enable_shared_with_static_runtimes, $1)=yes
10108	_LT_TAGVAR(file_list_spec, $1)='@'
10109	;;
10110
10111      dgux*)
10112        case $cc_basename in
10113          ec++*)
10114	    # FIXME: insert proper C++ library support
10115	    _LT_TAGVAR(ld_shlibs, $1)=no
10116	    ;;
10117          ghcx*)
10118	    # Green Hills C++ Compiler
10119	    # FIXME: insert proper C++ library support
10120	    _LT_TAGVAR(ld_shlibs, $1)=no
10121	    ;;
10122          *)
10123	    # FIXME: insert proper C++ library support
10124	    _LT_TAGVAR(ld_shlibs, $1)=no
10125	    ;;
10126        esac
10127        ;;
10128
10129      freebsd2.*)
10130        # C++ shared libraries reported to be fairly broken before
10131	# switch to ELF
10132        _LT_TAGVAR(ld_shlibs, $1)=no
10133        ;;
10134
10135      freebsd-elf*)
10136        _LT_TAGVAR(archive_cmds_need_lc, $1)=no
10137        ;;
10138
10139      freebsd* | dragonfly* | midnightbsd*)
10140        # FreeBSD 3 and later use GNU C++ and GNU ld with standard ELF
10141        # conventions
10142        _LT_TAGVAR(ld_shlibs, $1)=yes
10143        ;;
10144
10145      haiku*)
10146        _LT_TAGVAR(archive_cmds, $1)='$CC -shared $libobjs $deplibs $compiler_flags $wl-soname $wl$soname -o $lib'
10147        _LT_TAGVAR(link_all_deplibs, $1)=yes
10148        ;;
10149
10150      hpux9*)
10151        _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='$wl+b $wl$libdir'
10152        _LT_TAGVAR(hardcode_libdir_separator, $1)=:
10153        _LT_TAGVAR(export_dynamic_flag_spec, $1)='$wl-E'
10154        _LT_TAGVAR(hardcode_direct, $1)=yes
10155        _LT_TAGVAR(hardcode_minus_L, $1)=yes # Not in the search PATH,
10156				             # but as the default
10157				             # location of the library.
10158
10159        case $cc_basename in
10160          CC*)
10161            # FIXME: insert proper C++ library support
10162            _LT_TAGVAR(ld_shlibs, $1)=no
10163            ;;
10164          aCC*)
10165            _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'
10166            # Commands to make compiler produce verbose output that lists
10167            # what "hidden" libraries, object files and flags are used when
10168            # linking a shared library.
10169            #
10170            # There doesn't appear to be a way to prevent this compiler from
10171            # explicitly linking system object files so we need to strip them
10172            # from the output so that they don't get included in the library
10173            # dependencies.
10174            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"'
10175            ;;
10176          *)
10177            if test yes = "$GXX"; then
10178              _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'
10179            else
10180              # FIXME: insert proper C++ library support
10181              _LT_TAGVAR(ld_shlibs, $1)=no
10182            fi
10183            ;;
10184        esac
10185        ;;
10186
10187      hpux10*|hpux11*)
10188        if test no = "$with_gnu_ld"; then
10189	  _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='$wl+b $wl$libdir'
10190	  _LT_TAGVAR(hardcode_libdir_separator, $1)=:
10191
10192          case $host_cpu in
10193            hppa*64*|ia64*)
10194              ;;
10195            *)
10196	      _LT_TAGVAR(export_dynamic_flag_spec, $1)='$wl-E'
10197              ;;
10198          esac
10199        fi
10200        case $host_cpu in
10201          hppa*64*|ia64*)
10202            _LT_TAGVAR(hardcode_direct, $1)=no
10203            _LT_TAGVAR(hardcode_shlibpath_var, $1)=no
10204            ;;
10205          *)
10206            _LT_TAGVAR(hardcode_direct, $1)=yes
10207            _LT_TAGVAR(hardcode_direct_absolute, $1)=yes
10208            _LT_TAGVAR(hardcode_minus_L, $1)=yes # Not in the search PATH,
10209					         # but as the default
10210					         # location of the library.
10211            ;;
10212        esac
10213
10214        case $cc_basename in
10215          CC*)
10216	    # FIXME: insert proper C++ library support
10217	    _LT_TAGVAR(ld_shlibs, $1)=no
10218	    ;;
10219          aCC*)
10220	    case $host_cpu in
10221	      hppa*64*)
10222	        _LT_TAGVAR(archive_cmds, $1)='$CC -b $wl+h $wl$soname -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags'
10223	        ;;
10224	      ia64*)
10225	        _LT_TAGVAR(archive_cmds, $1)='$CC -b $wl+h $wl$soname $wl+nodefaultrpath -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags'
10226	        ;;
10227	      *)
10228	        _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'
10229	        ;;
10230	    esac
10231	    # Commands to make compiler produce verbose output that lists
10232	    # what "hidden" libraries, object files and flags are used when
10233	    # linking a shared library.
10234	    #
10235	    # There doesn't appear to be a way to prevent this compiler from
10236	    # explicitly linking system object files so we need to strip them
10237	    # from the output so that they don't get included in the library
10238	    # dependencies.
10239	    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"'
10240	    ;;
10241          *)
10242	    if test yes = "$GXX"; then
10243	      if test no = "$with_gnu_ld"; then
10244	        case $host_cpu in
10245	          hppa*64*)
10246	            _LT_TAGVAR(archive_cmds, $1)='$CC -shared -nostdlib -fPIC $wl+h $wl$soname -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags'
10247	            ;;
10248	          ia64*)
10249	            _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'
10250	            ;;
10251	          *)
10252	            _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'
10253	            ;;
10254	        esac
10255	      fi
10256	    else
10257	      # FIXME: insert proper C++ library support
10258	      _LT_TAGVAR(ld_shlibs, $1)=no
10259	    fi
10260	    ;;
10261        esac
10262        ;;
10263
10264      interix[[3-9]]*)
10265	_LT_TAGVAR(hardcode_direct, $1)=no
10266	_LT_TAGVAR(hardcode_shlibpath_var, $1)=no
10267	_LT_TAGVAR(hardcode_libdir_flag_spec, $1)='$wl-rpath,$libdir'
10268	_LT_TAGVAR(export_dynamic_flag_spec, $1)='$wl-E'
10269	# Hack: On Interix 3.x, we cannot compile PIC because of a broken gcc.
10270	# Instead, shared libraries are loaded at an image base (0x10000000 by
10271	# default) and relocated if they conflict, which is a slow very memory
10272	# consuming and fragmenting process.  To avoid this, we pick a random,
10273	# 256 KiB-aligned image base between 0x50000000 and 0x6FFC0000 at link
10274	# time.  Moving up from 0x10000000 also allows more sbrk(2) space.
10275	_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'
10276	_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'
10277	;;
10278      irix5* | irix6*)
10279        case $cc_basename in
10280          CC*)
10281	    # SGI C++
10282	    _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'
10283
10284	    # Archives containing C++ object files must be created using
10285	    # "CC -ar", where "CC" is the IRIX C++ compiler.  This is
10286	    # necessary to make sure instantiated templates are included
10287	    # in the archive.
10288	    _LT_TAGVAR(old_archive_cmds, $1)='$CC -ar -WR,-u -o $oldlib $oldobjs'
10289	    ;;
10290          *)
10291	    if test yes = "$GXX"; then
10292	      if test no = "$with_gnu_ld"; then
10293	        _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'
10294	      else
10295	        _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'
10296	      fi
10297	    fi
10298	    _LT_TAGVAR(link_all_deplibs, $1)=yes
10299	    ;;
10300        esac
10301        _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='$wl-rpath $wl$libdir'
10302        _LT_TAGVAR(hardcode_libdir_separator, $1)=:
10303        _LT_TAGVAR(inherit_rpath, $1)=yes
10304        ;;
10305
10306      linux* | k*bsd*-gnu | kopensolaris*-gnu | gnu*)
10307        case $cc_basename in
10308          KCC*)
10309	    # Kuck and Associates, Inc. (KAI) C++ Compiler
10310
10311	    # KCC will only create a shared library if the output file
10312	    # ends with ".so" (or ".sl" for HP-UX), so rename the library
10313	    # to its proper name (with version) after linking.
10314	    _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'
10315	    _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'
10316	    # Commands to make compiler produce verbose output that lists
10317	    # what "hidden" libraries, object files and flags are used when
10318	    # linking a shared library.
10319	    #
10320	    # There doesn't appear to be a way to prevent this compiler from
10321	    # explicitly linking system object files so we need to strip them
10322	    # from the output so that they don't get included in the library
10323	    # dependencies.
10324	    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"'
10325
10326	    _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='$wl-rpath,$libdir'
10327	    _LT_TAGVAR(export_dynamic_flag_spec, $1)='$wl--export-dynamic'
10328
10329	    # Archives containing C++ object files must be created using
10330	    # "CC -Bstatic", where "CC" is the KAI C++ compiler.
10331	    _LT_TAGVAR(old_archive_cmds, $1)='$CC -Bstatic -o $oldlib $oldobjs'
10332	    ;;
10333	  icpc* | ecpc* )
10334	    # Intel C++
10335	    with_gnu_ld=yes
10336	    # version 8.0 and above of icpc choke on multiply defined symbols
10337	    # if we add $predep_objects and $postdep_objects, however 7.1 and
10338	    # earlier do not add the objects themselves.
10339	    case `$CC -V 2>&1` in
10340	      *"Version 7."*)
10341	        _LT_TAGVAR(archive_cmds, $1)='$CC -shared $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags $wl-soname $wl$soname -o $lib'
10342		_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'
10343		;;
10344	      *)  # Version 8.0 or newer
10345	        tmp_idyn=
10346	        case $host_cpu in
10347		  ia64*) tmp_idyn=' -i_dynamic';;
10348		esac
10349	        _LT_TAGVAR(archive_cmds, $1)='$CC -shared'"$tmp_idyn"' $libobjs $deplibs $compiler_flags $wl-soname $wl$soname -o $lib'
10350		_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'
10351		;;
10352	    esac
10353	    _LT_TAGVAR(archive_cmds_need_lc, $1)=no
10354	    _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='$wl-rpath,$libdir'
10355	    _LT_TAGVAR(export_dynamic_flag_spec, $1)='$wl--export-dynamic'
10356	    _LT_TAGVAR(whole_archive_flag_spec, $1)='$wl--whole-archive$convenience $wl--no-whole-archive'
10357	    ;;
10358          pgCC* | pgcpp*)
10359            # Portland Group C++ compiler
10360	    case `$CC -V` in
10361	    *pgCC\ [[1-5]].* | *pgcpp\ [[1-5]].*)
10362	      _LT_TAGVAR(prelink_cmds, $1)='tpldir=Template.dir~
10363               rm -rf $tpldir~
10364               $CC --prelink_objects --instantiation_dir $tpldir $objs $libobjs $compile_deplibs~
10365               compile_command="$compile_command `find $tpldir -name \*.o | sort | $NL2SP`"'
10366	      _LT_TAGVAR(old_archive_cmds, $1)='tpldir=Template.dir~
10367                rm -rf $tpldir~
10368                $CC --prelink_objects --instantiation_dir $tpldir $oldobjs$old_deplibs~
10369                $AR $AR_FLAGS $oldlib$oldobjs$old_deplibs `find $tpldir -name \*.o | sort | $NL2SP`~
10370                $RANLIB $oldlib'
10371	      _LT_TAGVAR(archive_cmds, $1)='tpldir=Template.dir~
10372                rm -rf $tpldir~
10373                $CC --prelink_objects --instantiation_dir $tpldir $predep_objects $libobjs $deplibs $convenience $postdep_objects~
10374                $CC -shared $pic_flag $predep_objects $libobjs $deplibs `find $tpldir -name \*.o | sort | $NL2SP` $postdep_objects $compiler_flags $wl-soname $wl$soname -o $lib'
10375	      _LT_TAGVAR(archive_expsym_cmds, $1)='tpldir=Template.dir~
10376                rm -rf $tpldir~
10377                $CC --prelink_objects --instantiation_dir $tpldir $predep_objects $libobjs $deplibs $convenience $postdep_objects~
10378                $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'
10379	      ;;
10380	    *) # Version 6 and above use weak symbols
10381	      _LT_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags $wl-soname $wl$soname -o $lib'
10382	      _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'
10383	      ;;
10384	    esac
10385
10386	    _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='$wl--rpath $wl$libdir'
10387	    _LT_TAGVAR(export_dynamic_flag_spec, $1)='$wl--export-dynamic'
10388	    _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'
10389            ;;
10390	  cxx*)
10391	    # Compaq C++
10392	    _LT_TAGVAR(archive_cmds, $1)='$CC -shared $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags $wl-soname $wl$soname -o $lib'
10393	    _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'
10394
10395	    runpath_var=LD_RUN_PATH
10396	    _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-rpath $libdir'
10397	    _LT_TAGVAR(hardcode_libdir_separator, $1)=:
10398
10399	    # Commands to make compiler produce verbose output that lists
10400	    # what "hidden" libraries, object files and flags are used when
10401	    # linking a shared library.
10402	    #
10403	    # There doesn't appear to be a way to prevent this compiler from
10404	    # explicitly linking system object files so we need to strip them
10405	    # from the output so that they don't get included in the library
10406	    # dependencies.
10407	    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'
10408	    ;;
10409	  xl* | mpixl* | bgxl*)
10410	    # IBM XL 8.0 on PPC, with GNU ld
10411	    _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='$wl-rpath $wl$libdir'
10412	    _LT_TAGVAR(export_dynamic_flag_spec, $1)='$wl--export-dynamic'
10413	    _LT_TAGVAR(archive_cmds, $1)='$CC -qmkshrobj $libobjs $deplibs $compiler_flags $wl-soname $wl$soname -o $lib'
10414	    if test yes = "$supports_anon_versioning"; then
10415	      _LT_TAGVAR(archive_expsym_cmds, $1)='echo "{ global:" > $output_objdir/$libname.ver~
10416                cat $export_symbols | $SED -e "s/\(.*\)/\1;/" >> $output_objdir/$libname.ver~
10417                echo "local: *; };" >> $output_objdir/$libname.ver~
10418                $CC -qmkshrobj $libobjs $deplibs $compiler_flags $wl-soname $wl$soname $wl-version-script $wl$output_objdir/$libname.ver -o $lib'
10419	    fi
10420	    ;;
10421	  *)
10422	    case `$CC -V 2>&1 | $SED 5q` in
10423	    *Sun\ C*)
10424	      # Sun C++ 5.9
10425	      _LT_TAGVAR(no_undefined_flag, $1)=' -zdefs'
10426	      _LT_TAGVAR(archive_cmds, $1)='$CC -G$allow_undefined_flag -h$soname -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags'
10427	      _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'
10428	      _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-R$libdir'
10429	      _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'
10430	      _LT_TAGVAR(compiler_needs_object, $1)=yes
10431
10432	      # Not sure whether something based on
10433	      # $CC $CFLAGS -v conftest.$objext -o libconftest$shared_ext 2>&1
10434	      # would be better.
10435	      output_verbose_link_cmd='func_echo_all'
10436
10437	      # Archives containing C++ object files must be created using
10438	      # "CC -xar", where "CC" is the Sun C++ compiler.  This is
10439	      # necessary to make sure instantiated templates are included
10440	      # in the archive.
10441	      _LT_TAGVAR(old_archive_cmds, $1)='$CC -xar -o $oldlib $oldobjs'
10442	      ;;
10443	    esac
10444	    ;;
10445	esac
10446	;;
10447
10448      lynxos*)
10449        # FIXME: insert proper C++ library support
10450	_LT_TAGVAR(ld_shlibs, $1)=no
10451	;;
10452
10453      m88k*)
10454        # FIXME: insert proper C++ library support
10455        _LT_TAGVAR(ld_shlibs, $1)=no
10456	;;
10457
10458      mvs*)
10459        case $cc_basename in
10460          cxx*)
10461	    # FIXME: insert proper C++ library support
10462	    _LT_TAGVAR(ld_shlibs, $1)=no
10463	    ;;
10464	  *)
10465	    # FIXME: insert proper C++ library support
10466	    _LT_TAGVAR(ld_shlibs, $1)=no
10467	    ;;
10468	esac
10469	;;
10470
10471      netbsd*)
10472        if echo __ELF__ | $CC -E - | $GREP __ELF__ >/dev/null; then
10473	  _LT_TAGVAR(archive_cmds, $1)='$LD -Bshareable  -o $lib $predep_objects $libobjs $deplibs $postdep_objects $linker_flags'
10474	  wlarc=
10475	  _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-R$libdir'
10476	  _LT_TAGVAR(hardcode_direct, $1)=yes
10477	  _LT_TAGVAR(hardcode_shlibpath_var, $1)=no
10478	fi
10479	# Workaround some broken pre-1.5 toolchains
10480	output_verbose_link_cmd='$CC -shared $CFLAGS -v conftest.$objext 2>&1 | $GREP conftest.$objext | $SED -e "s:-lgcc -lc -lgcc::"'
10481	;;
10482
10483      *nto* | *qnx*)
10484        _LT_TAGVAR(ld_shlibs, $1)=yes
10485	;;
10486
10487      openbsd* | bitrig*)
10488	if test -f /usr/libexec/ld.so; then
10489	  _LT_TAGVAR(hardcode_direct, $1)=yes
10490	  _LT_TAGVAR(hardcode_shlibpath_var, $1)=no
10491	  _LT_TAGVAR(hardcode_direct_absolute, $1)=yes
10492	  _LT_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags -o $lib'
10493	  _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='$wl-rpath,$libdir'
10494	  if test -z "`echo __ELF__ | $CC -E - | grep __ELF__`"; then
10495	    _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'
10496	    _LT_TAGVAR(export_dynamic_flag_spec, $1)='$wl-E'
10497	    _LT_TAGVAR(whole_archive_flag_spec, $1)=$wlarc'--whole-archive$convenience '$wlarc'--no-whole-archive'
10498	  fi
10499	  output_verbose_link_cmd=func_echo_all
10500	else
10501	  _LT_TAGVAR(ld_shlibs, $1)=no
10502	fi
10503	;;
10504
10505      osf3* | osf4* | osf5*)
10506        case $cc_basename in
10507          KCC*)
10508	    # Kuck and Associates, Inc. (KAI) C++ Compiler
10509
10510	    # KCC will only create a shared library if the output file
10511	    # ends with ".so" (or ".sl" for HP-UX), so rename the library
10512	    # to its proper name (with version) after linking.
10513	    _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'
10514
10515	    _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='$wl-rpath,$libdir'
10516	    _LT_TAGVAR(hardcode_libdir_separator, $1)=:
10517
10518	    # Archives containing C++ object files must be created using
10519	    # the KAI C++ compiler.
10520	    case $host in
10521	      osf3*) _LT_TAGVAR(old_archive_cmds, $1)='$CC -Bstatic -o $oldlib $oldobjs' ;;
10522	      *) _LT_TAGVAR(old_archive_cmds, $1)='$CC -o $oldlib $oldobjs' ;;
10523	    esac
10524	    ;;
10525          RCC*)
10526	    # Rational C++ 2.4.1
10527	    # FIXME: insert proper C++ library support
10528	    _LT_TAGVAR(ld_shlibs, $1)=no
10529	    ;;
10530          cxx*)
10531	    case $host in
10532	      osf3*)
10533	        _LT_TAGVAR(allow_undefined_flag, $1)=' $wl-expect_unresolved $wl\*'
10534	        _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'
10535	        _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='$wl-rpath $wl$libdir'
10536		;;
10537	      *)
10538	        _LT_TAGVAR(allow_undefined_flag, $1)=' -expect_unresolved \*'
10539	        _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'
10540	        _LT_TAGVAR(archive_expsym_cmds, $1)='for i in `cat $export_symbols`; do printf "%s %s\\n" -exported_symbol "\$i" >> $lib.exp; done~
10541                  echo "-hidden">> $lib.exp~
10542                  $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~
10543                  $RM $lib.exp'
10544	        _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-rpath $libdir'
10545		;;
10546	    esac
10547
10548	    _LT_TAGVAR(hardcode_libdir_separator, $1)=:
10549
10550	    # Commands to make compiler produce verbose output that lists
10551	    # what "hidden" libraries, object files and flags are used when
10552	    # linking a shared library.
10553	    #
10554	    # There doesn't appear to be a way to prevent this compiler from
10555	    # explicitly linking system object files so we need to strip them
10556	    # from the output so that they don't get included in the library
10557	    # dependencies.
10558	    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"'
10559	    ;;
10560	  *)
10561	    if test yes,no = "$GXX,$with_gnu_ld"; then
10562	      _LT_TAGVAR(allow_undefined_flag, $1)=' $wl-expect_unresolved $wl\*'
10563	      case $host in
10564	        osf3*)
10565	          _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'
10566		  ;;
10567	        *)
10568	          _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'
10569		  ;;
10570	      esac
10571
10572	      _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='$wl-rpath $wl$libdir'
10573	      _LT_TAGVAR(hardcode_libdir_separator, $1)=:
10574
10575	      # Commands to make compiler produce verbose output that lists
10576	      # what "hidden" libraries, object files and flags are used when
10577	      # linking a shared library.
10578	      output_verbose_link_cmd='$CC -shared $CFLAGS -v conftest.$objext 2>&1 | $GREP -v "^Configured with:" | $GREP "\-L"'
10579
10580	    else
10581	      # FIXME: insert proper C++ library support
10582	      _LT_TAGVAR(ld_shlibs, $1)=no
10583	    fi
10584	    ;;
10585        esac
10586        ;;
10587
10588      psos*)
10589        # FIXME: insert proper C++ library support
10590        _LT_TAGVAR(ld_shlibs, $1)=no
10591        ;;
10592
10593      sunos4*)
10594        case $cc_basename in
10595          CC*)
10596	    # Sun C++ 4.x
10597	    # FIXME: insert proper C++ library support
10598	    _LT_TAGVAR(ld_shlibs, $1)=no
10599	    ;;
10600          lcc*)
10601	    # Lucid
10602	    # FIXME: insert proper C++ library support
10603	    _LT_TAGVAR(ld_shlibs, $1)=no
10604	    ;;
10605          *)
10606	    # FIXME: insert proper C++ library support
10607	    _LT_TAGVAR(ld_shlibs, $1)=no
10608	    ;;
10609        esac
10610        ;;
10611
10612      solaris*)
10613        case $cc_basename in
10614          CC* | sunCC*)
10615	    # Sun C++ 4.2, 5.x and Centerline C++
10616            _LT_TAGVAR(archive_cmds_need_lc,$1)=yes
10617	    _LT_TAGVAR(no_undefined_flag, $1)=' -zdefs'
10618	    _LT_TAGVAR(archive_cmds, $1)='$CC -G$allow_undefined_flag -h$soname -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags'
10619	    _LT_TAGVAR(archive_expsym_cmds, $1)='echo "{ global:" > $lib.exp~cat $export_symbols | $SED -e "s/\(.*\)/\1;/" >> $lib.exp~echo "local: *; };" >> $lib.exp~
10620              $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'
10621
10622	    _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-R$libdir'
10623	    _LT_TAGVAR(hardcode_shlibpath_var, $1)=no
10624	    case $host_os in
10625	      solaris2.[[0-5]] | solaris2.[[0-5]].*) ;;
10626	      *)
10627		# The compiler driver will combine and reorder linker options,
10628		# but understands '-z linker_flag'.
10629	        # Supported since Solaris 2.6 (maybe 2.5.1?)
10630		_LT_TAGVAR(whole_archive_flag_spec, $1)='-z allextract$convenience -z defaultextract'
10631	        ;;
10632	    esac
10633	    _LT_TAGVAR(link_all_deplibs, $1)=yes
10634
10635	    output_verbose_link_cmd='func_echo_all'
10636
10637	    # Archives containing C++ object files must be created using
10638	    # "CC -xar", where "CC" is the Sun C++ compiler.  This is
10639	    # necessary to make sure instantiated templates are included
10640	    # in the archive.
10641	    _LT_TAGVAR(old_archive_cmds, $1)='$CC -xar -o $oldlib $oldobjs'
10642	    ;;
10643          gcx*)
10644	    # Green Hills C++ Compiler
10645	    _LT_TAGVAR(archive_cmds, $1)='$CC -shared $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags $wl-h $wl$soname -o $lib'
10646
10647	    # The C++ compiler must be used to create the archive.
10648	    _LT_TAGVAR(old_archive_cmds, $1)='$CC $LDFLAGS -archive -o $oldlib $oldobjs'
10649	    ;;
10650          *)
10651	    # GNU C++ compiler with Solaris linker
10652	    if test yes,no = "$GXX,$with_gnu_ld"; then
10653	      _LT_TAGVAR(no_undefined_flag, $1)=' $wl-z ${wl}defs'
10654	      if $CC --version | $GREP -v '^2\.7' > /dev/null; then
10655	        _LT_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag -nostdlib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags $wl-h $wl$soname -o $lib'
10656	        _LT_TAGVAR(archive_expsym_cmds, $1)='echo "{ global:" > $lib.exp~cat $export_symbols | $SED -e "s/\(.*\)/\1;/" >> $lib.exp~echo "local: *; };" >> $lib.exp~
10657                  $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'
10658
10659	        # Commands to make compiler produce verbose output that lists
10660	        # what "hidden" libraries, object files and flags are used when
10661	        # linking a shared library.
10662	        output_verbose_link_cmd='$CC -shared $CFLAGS -v conftest.$objext 2>&1 | $GREP -v "^Configured with:" | $GREP "\-L"'
10663	      else
10664	        # g++ 2.7 appears to require '-G' NOT '-shared' on this
10665	        # platform.
10666	        _LT_TAGVAR(archive_cmds, $1)='$CC -G -nostdlib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags $wl-h $wl$soname -o $lib'
10667	        _LT_TAGVAR(archive_expsym_cmds, $1)='echo "{ global:" > $lib.exp~cat $export_symbols | $SED -e "s/\(.*\)/\1;/" >> $lib.exp~echo "local: *; };" >> $lib.exp~
10668                  $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'
10669
10670	        # Commands to make compiler produce verbose output that lists
10671	        # what "hidden" libraries, object files and flags are used when
10672	        # linking a shared library.
10673	        output_verbose_link_cmd='$CC -G $CFLAGS -v conftest.$objext 2>&1 | $GREP -v "^Configured with:" | $GREP "\-L"'
10674	      fi
10675
10676	      _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='$wl-R $wl$libdir'
10677	      case $host_os in
10678		solaris2.[[0-5]] | solaris2.[[0-5]].*) ;;
10679		*)
10680		  _LT_TAGVAR(whole_archive_flag_spec, $1)='$wl-z ${wl}allextract$convenience $wl-z ${wl}defaultextract'
10681		  ;;
10682	      esac
10683	    fi
10684	    ;;
10685        esac
10686        ;;
10687
10688    sysv4*uw2* | sysv5OpenUNIX* | sysv5UnixWare7.[[01]].[[10]]* | unixware7* | sco3.2v5.0.[[024]]*)
10689      _LT_TAGVAR(no_undefined_flag, $1)='$wl-z,text'
10690      _LT_TAGVAR(archive_cmds_need_lc, $1)=no
10691      _LT_TAGVAR(hardcode_shlibpath_var, $1)=no
10692      runpath_var='LD_RUN_PATH'
10693
10694      case $cc_basename in
10695        CC*)
10696	  _LT_TAGVAR(archive_cmds, $1)='$CC -G $wl-h,$soname -o $lib $libobjs $deplibs $compiler_flags'
10697	  _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -G $wl-Bexport:$export_symbols $wl-h,$soname -o $lib $libobjs $deplibs $compiler_flags'
10698	  ;;
10699	*)
10700	  _LT_TAGVAR(archive_cmds, $1)='$CC -shared $wl-h,$soname -o $lib $libobjs $deplibs $compiler_flags'
10701	  _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -shared $wl-Bexport:$export_symbols $wl-h,$soname -o $lib $libobjs $deplibs $compiler_flags'
10702	  ;;
10703      esac
10704      ;;
10705
10706      sysv5* | sco3.2v5* | sco5v6*)
10707	# Note: We CANNOT use -z defs as we might desire, because we do not
10708	# link with -lc, and that would cause any symbols used from libc to
10709	# always be unresolved, which means just about no library would
10710	# ever link correctly.  If we're not using GNU ld we use -z text
10711	# though, which does catch some bad symbols but isn't as heavy-handed
10712	# as -z defs.
10713	_LT_TAGVAR(no_undefined_flag, $1)='$wl-z,text'
10714	_LT_TAGVAR(allow_undefined_flag, $1)='$wl-z,nodefs'
10715	_LT_TAGVAR(archive_cmds_need_lc, $1)=no
10716	_LT_TAGVAR(hardcode_shlibpath_var, $1)=no
10717	_LT_TAGVAR(hardcode_libdir_flag_spec, $1)='$wl-R,$libdir'
10718	_LT_TAGVAR(hardcode_libdir_separator, $1)=':'
10719	_LT_TAGVAR(link_all_deplibs, $1)=yes
10720	_LT_TAGVAR(export_dynamic_flag_spec, $1)='$wl-Bexport'
10721	runpath_var='LD_RUN_PATH'
10722
10723	case $cc_basename in
10724          CC*)
10725	    _LT_TAGVAR(archive_cmds, $1)='$CC -G $wl-h,$soname -o $lib $libobjs $deplibs $compiler_flags'
10726	    _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -G $wl-Bexport:$export_symbols $wl-h,$soname -o $lib $libobjs $deplibs $compiler_flags'
10727	    _LT_TAGVAR(old_archive_cmds, $1)='$CC -Tprelink_objects $oldobjs~
10728              '"$_LT_TAGVAR(old_archive_cmds, $1)"
10729	    _LT_TAGVAR(reload_cmds, $1)='$CC -Tprelink_objects $reload_objs~
10730              '"$_LT_TAGVAR(reload_cmds, $1)"
10731	    ;;
10732	  *)
10733	    _LT_TAGVAR(archive_cmds, $1)='$CC -shared $wl-h,$soname -o $lib $libobjs $deplibs $compiler_flags'
10734	    _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -shared $wl-Bexport:$export_symbols $wl-h,$soname -o $lib $libobjs $deplibs $compiler_flags'
10735	    ;;
10736	esac
10737      ;;
10738
10739      tandem*)
10740        case $cc_basename in
10741          NCC*)
10742	    # NonStop-UX NCC 3.20
10743	    # FIXME: insert proper C++ library support
10744	    _LT_TAGVAR(ld_shlibs, $1)=no
10745	    ;;
10746          *)
10747	    # FIXME: insert proper C++ library support
10748	    _LT_TAGVAR(ld_shlibs, $1)=no
10749	    ;;
10750        esac
10751        ;;
10752
10753      vxworks*)
10754        # FIXME: insert proper C++ library support
10755        _LT_TAGVAR(ld_shlibs, $1)=no
10756        ;;
10757
10758      *)
10759        # FIXME: insert proper C++ library support
10760        _LT_TAGVAR(ld_shlibs, $1)=no
10761        ;;
10762    esac
10763
10764    AC_MSG_RESULT([$_LT_TAGVAR(ld_shlibs, $1)])
10765    test no = "$_LT_TAGVAR(ld_shlibs, $1)" && can_build_shared=no
10766
10767    _LT_TAGVAR(GCC, $1)=$GXX
10768    _LT_TAGVAR(LD, $1)=$LD
10769
10770    ## CAVEAT EMPTOR:
10771    ## There is no encapsulation within the following macros, do not change
10772    ## the running order or otherwise move them around unless you know exactly
10773    ## what you are doing...
10774    _LT_SYS_HIDDEN_LIBDEPS($1)
10775    _LT_COMPILER_PIC($1)
10776    _LT_COMPILER_C_O($1)
10777    _LT_COMPILER_FILE_LOCKS($1)
10778    _LT_LINKER_SHLIBS($1)
10779    _LT_SYS_DYNAMIC_LINKER($1)
10780    _LT_LINKER_HARDCODE_LIBPATH($1)
10781
10782    _LT_CONFIG($1)
10783  fi # test -n "$compiler"
10784
10785  CC=$lt_save_CC
10786  CFLAGS=$lt_save_CFLAGS
10787  LDCXX=$LD
10788  LD=$lt_save_LD
10789  GCC=$lt_save_GCC
10790  with_gnu_ld=$lt_save_with_gnu_ld
10791  lt_cv_path_LDCXX=$lt_cv_path_LD
10792  lt_cv_path_LD=$lt_save_path_LD
10793  lt_cv_prog_gnu_ldcxx=$lt_cv_prog_gnu_ld
10794  lt_cv_prog_gnu_ld=$lt_save_with_gnu_ld
10795fi # test yes != "$_lt_caught_CXX_error"
10796
10797AC_LANG_POP
10798])# _LT_LANG_CXX_CONFIG
10799
10800
10801# _LT_FUNC_STRIPNAME_CNF
10802# ----------------------
10803# func_stripname_cnf prefix suffix name
10804# strip PREFIX and SUFFIX off of NAME.
10805# PREFIX and SUFFIX must not contain globbing or regex special
10806# characters, hashes, percent signs, but SUFFIX may contain a leading
10807# dot (in which case that matches only a dot).
10808#
10809# This function is identical to the (non-XSI) version of func_stripname,
10810# except this one can be used by m4 code that may be executed by configure,
10811# rather than the libtool script.
10812m4_defun([_LT_FUNC_STRIPNAME_CNF],[dnl
10813AC_REQUIRE([_LT_DECL_SED])
10814AC_REQUIRE([_LT_PROG_ECHO_BACKSLASH])
10815func_stripname_cnf ()
10816{
10817  case @S|@2 in
10818  .*) func_stripname_result=`$ECHO "@S|@3" | $SED "s%^@S|@1%%; s%\\\\@S|@2\$%%"`;;
10819  *)  func_stripname_result=`$ECHO "@S|@3" | $SED "s%^@S|@1%%; s%@S|@2\$%%"`;;
10820  esac
10821} # func_stripname_cnf
10822])# _LT_FUNC_STRIPNAME_CNF
10823
10824
10825# _LT_SYS_HIDDEN_LIBDEPS([TAGNAME])
10826# ---------------------------------
10827# Figure out "hidden" library dependencies from verbose
10828# compiler output when linking a shared library.
10829# Parse the compiler output and extract the necessary
10830# objects, libraries and library flags.
10831m4_defun([_LT_SYS_HIDDEN_LIBDEPS],
10832[m4_require([_LT_FILEUTILS_DEFAULTS])dnl
10833AC_REQUIRE([_LT_FUNC_STRIPNAME_CNF])dnl
10834# Dependencies to place before and after the object being linked:
10835_LT_TAGVAR(predep_objects, $1)=
10836_LT_TAGVAR(postdep_objects, $1)=
10837_LT_TAGVAR(predeps, $1)=
10838_LT_TAGVAR(postdeps, $1)=
10839_LT_TAGVAR(compiler_lib_search_path, $1)=
10840
10841dnl we can't use the lt_simple_compile_test_code here,
10842dnl because it contains code intended for an executable,
10843dnl not a library.  It's possible we should let each
10844dnl tag define a new lt_????_link_test_code variable,
10845dnl but it's only used here...
10846m4_if([$1], [], [cat > conftest.$ac_ext <<_LT_EOF
10847int a;
10848void foo (void) { a = 0; }
10849_LT_EOF
10850], [$1], [CXX], [cat > conftest.$ac_ext <<_LT_EOF
10851class Foo
10852{
10853public:
10854  Foo (void) { a = 0; }
10855private:
10856  int a;
10857};
10858_LT_EOF
10859], [$1], [F77], [cat > conftest.$ac_ext <<_LT_EOF
10860      subroutine foo
10861      implicit none
10862      integer*4 a
10863      a=0
10864      return
10865      end
10866_LT_EOF
10867], [$1], [FC], [cat > conftest.$ac_ext <<_LT_EOF
10868      subroutine foo
10869      implicit none
10870      integer a
10871      a=0
10872      return
10873      end
10874_LT_EOF
10875], [$1], [GCJ], [cat > conftest.$ac_ext <<_LT_EOF
10876public class foo {
10877  private int a;
10878  public void bar (void) {
10879    a = 0;
10880  }
10881};
10882_LT_EOF
10883], [$1], [GO], [cat > conftest.$ac_ext <<_LT_EOF
10884package foo
10885func foo() {
10886}
10887_LT_EOF
10888])
10889
10890_lt_libdeps_save_CFLAGS=$CFLAGS
10891case "$CC $CFLAGS " in #(
10892*\ -flto*\ *) CFLAGS="$CFLAGS -fno-lto" ;;
10893*\ -fwhopr*\ *) CFLAGS="$CFLAGS -fno-whopr" ;;
10894*\ -fuse-linker-plugin*\ *) CFLAGS="$CFLAGS -fno-use-linker-plugin" ;;
10895esac
10896
10897dnl Parse the compiler output and extract the necessary
10898dnl objects, libraries and library flags.
10899if AC_TRY_EVAL(ac_compile); then
10900  # Parse the compiler output and extract the necessary
10901  # objects, libraries and library flags.
10902
10903  # Sentinel used to keep track of whether or not we are before
10904  # the conftest object file.
10905  pre_test_object_deps_done=no
10906
10907  for p in `eval "$output_verbose_link_cmd"`; do
10908    case $prev$p in
10909
10910    -L* | -R* | -l*)
10911       # Some compilers place space between "-{L,R}" and the path.
10912       # Remove the space.
10913       if test x-L = "$p" ||
10914          test x-R = "$p"; then
10915	 prev=$p
10916	 continue
10917       fi
10918
10919       # Expand the sysroot to ease extracting the directories later.
10920       if test -z "$prev"; then
10921         case $p in
10922         -L*) func_stripname_cnf '-L' '' "$p"; prev=-L; p=$func_stripname_result ;;
10923         -R*) func_stripname_cnf '-R' '' "$p"; prev=-R; p=$func_stripname_result ;;
10924         -l*) func_stripname_cnf '-l' '' "$p"; prev=-l; p=$func_stripname_result ;;
10925         esac
10926       fi
10927       case $p in
10928       =*) func_stripname_cnf '=' '' "$p"; p=$lt_sysroot$func_stripname_result ;;
10929       esac
10930       if test no = "$pre_test_object_deps_done"; then
10931	 case $prev in
10932	 -L | -R)
10933	   # Internal compiler library paths should come after those
10934	   # provided the user.  The postdeps already come after the
10935	   # user supplied libs so there is no need to process them.
10936	   if test -z "$_LT_TAGVAR(compiler_lib_search_path, $1)"; then
10937	     _LT_TAGVAR(compiler_lib_search_path, $1)=$prev$p
10938	   else
10939	     _LT_TAGVAR(compiler_lib_search_path, $1)="${_LT_TAGVAR(compiler_lib_search_path, $1)} $prev$p"
10940	   fi
10941	   ;;
10942	 # The "-l" case would never come before the object being
10943	 # linked, so don't bother handling this case.
10944	 esac
10945       else
10946	 if test -z "$_LT_TAGVAR(postdeps, $1)"; then
10947	   _LT_TAGVAR(postdeps, $1)=$prev$p
10948	 else
10949	   _LT_TAGVAR(postdeps, $1)="${_LT_TAGVAR(postdeps, $1)} $prev$p"
10950	 fi
10951       fi
10952       prev=
10953       ;;
10954
10955    *.lto.$objext) ;; # Ignore GCC LTO objects
10956    *.$objext)
10957       # This assumes that the test object file only shows up
10958       # once in the compiler output.
10959       if test "$p" = "conftest.$objext"; then
10960	 pre_test_object_deps_done=yes
10961	 continue
10962       fi
10963
10964       if test no = "$pre_test_object_deps_done"; then
10965	 if test -z "$_LT_TAGVAR(predep_objects, $1)"; then
10966	   _LT_TAGVAR(predep_objects, $1)=$p
10967	 else
10968	   _LT_TAGVAR(predep_objects, $1)="$_LT_TAGVAR(predep_objects, $1) $p"
10969	 fi
10970       else
10971	 if test -z "$_LT_TAGVAR(postdep_objects, $1)"; then
10972	   _LT_TAGVAR(postdep_objects, $1)=$p
10973	 else
10974	   _LT_TAGVAR(postdep_objects, $1)="$_LT_TAGVAR(postdep_objects, $1) $p"
10975	 fi
10976       fi
10977       ;;
10978
10979    *) ;; # Ignore the rest.
10980
10981    esac
10982  done
10983
10984  # Clean up.
10985  rm -f a.out a.exe
10986else
10987  echo "libtool.m4: error: problem compiling $1 test program"
10988fi
10989
10990$RM -f confest.$objext
10991CFLAGS=$_lt_libdeps_save_CFLAGS
10992
10993# PORTME: override above test on systems where it is broken
10994m4_if([$1], [CXX],
10995[case $host_os in
10996interix[[3-9]]*)
10997  # Interix 3.5 installs completely hosed .la files for C++, so rather than
10998  # hack all around it, let's just trust "g++" to DTRT.
10999  _LT_TAGVAR(predep_objects,$1)=
11000  _LT_TAGVAR(postdep_objects,$1)=
11001  _LT_TAGVAR(postdeps,$1)=
11002  ;;
11003esac
11004])
11005
11006case " $_LT_TAGVAR(postdeps, $1) " in
11007*" -lc "*) _LT_TAGVAR(archive_cmds_need_lc, $1)=no ;;
11008esac
11009 _LT_TAGVAR(compiler_lib_search_dirs, $1)=
11010if test -n "${_LT_TAGVAR(compiler_lib_search_path, $1)}"; then
11011 _LT_TAGVAR(compiler_lib_search_dirs, $1)=`echo " ${_LT_TAGVAR(compiler_lib_search_path, $1)}" | $SED -e 's! -L! !g' -e 's!^ !!'`
11012fi
11013_LT_TAGDECL([], [compiler_lib_search_dirs], [1],
11014    [The directories searched by this compiler when creating a shared library])
11015_LT_TAGDECL([], [predep_objects], [1],
11016    [Dependencies to place before and after the objects being linked to
11017    create a shared library])
11018_LT_TAGDECL([], [postdep_objects], [1])
11019_LT_TAGDECL([], [predeps], [1])
11020_LT_TAGDECL([], [postdeps], [1])
11021_LT_TAGDECL([], [compiler_lib_search_path], [1],
11022    [The library search path used internally by the compiler when linking
11023    a shared library])
11024])# _LT_SYS_HIDDEN_LIBDEPS
11025
11026
11027# _LT_LANG_F77_CONFIG([TAG])
11028# --------------------------
11029# Ensure that the configuration variables for a Fortran 77 compiler are
11030# suitably defined.  These variables are subsequently used by _LT_CONFIG
11031# to write the compiler configuration to 'libtool'.
11032m4_defun([_LT_LANG_F77_CONFIG],
11033[AC_LANG_PUSH(Fortran 77)
11034if test -z "$F77" || test no = "$F77"; then
11035  _lt_disable_F77=yes
11036fi
11037
11038_LT_TAGVAR(archive_cmds_need_lc, $1)=no
11039_LT_TAGVAR(allow_undefined_flag, $1)=
11040_LT_TAGVAR(always_export_symbols, $1)=no
11041_LT_TAGVAR(archive_expsym_cmds, $1)=
11042_LT_TAGVAR(export_dynamic_flag_spec, $1)=
11043_LT_TAGVAR(hardcode_direct, $1)=no
11044_LT_TAGVAR(hardcode_direct_absolute, $1)=no
11045_LT_TAGVAR(hardcode_libdir_flag_spec, $1)=
11046_LT_TAGVAR(hardcode_libdir_separator, $1)=
11047_LT_TAGVAR(hardcode_minus_L, $1)=no
11048_LT_TAGVAR(hardcode_automatic, $1)=no
11049_LT_TAGVAR(inherit_rpath, $1)=no
11050_LT_TAGVAR(module_cmds, $1)=
11051_LT_TAGVAR(module_expsym_cmds, $1)=
11052_LT_TAGVAR(link_all_deplibs, $1)=unknown
11053_LT_TAGVAR(old_archive_cmds, $1)=$old_archive_cmds
11054_LT_TAGVAR(reload_flag, $1)=$reload_flag
11055_LT_TAGVAR(reload_cmds, $1)=$reload_cmds
11056_LT_TAGVAR(no_undefined_flag, $1)=
11057_LT_TAGVAR(whole_archive_flag_spec, $1)=
11058_LT_TAGVAR(enable_shared_with_static_runtimes, $1)=no
11059
11060# Source file extension for f77 test sources.
11061ac_ext=f
11062
11063# Object file extension for compiled f77 test sources.
11064objext=o
11065_LT_TAGVAR(objext, $1)=$objext
11066
11067# No sense in running all these tests if we already determined that
11068# the F77 compiler isn't working.  Some variables (like enable_shared)
11069# are currently assumed to apply to all compilers on this platform,
11070# and will be corrupted by setting them based on a non-working compiler.
11071if test yes != "$_lt_disable_F77"; then
11072  # Code to be used in simple compile tests
11073  lt_simple_compile_test_code="\
11074      subroutine t
11075      return
11076      end
11077"
11078
11079  # Code to be used in simple link tests
11080  lt_simple_link_test_code="\
11081      program t
11082      end
11083"
11084
11085  # ltmain only uses $CC for tagged configurations so make sure $CC is set.
11086  _LT_TAG_COMPILER
11087
11088  # save warnings/boilerplate of simple test code
11089  _LT_COMPILER_BOILERPLATE
11090  _LT_LINKER_BOILERPLATE
11091
11092  # Allow CC to be a program name with arguments.
11093  lt_save_CC=$CC
11094  lt_save_GCC=$GCC
11095  lt_save_CFLAGS=$CFLAGS
11096  CC=${F77-"f77"}
11097  CFLAGS=$FFLAGS
11098  compiler=$CC
11099  _LT_TAGVAR(compiler, $1)=$CC
11100  _LT_CC_BASENAME([$compiler])
11101  GCC=$G77
11102  if test -n "$compiler"; then
11103    AC_MSG_CHECKING([if libtool supports shared libraries])
11104    AC_MSG_RESULT([$can_build_shared])
11105
11106    AC_MSG_CHECKING([whether to build shared libraries])
11107    test no = "$can_build_shared" && enable_shared=no
11108
11109    # On AIX, shared libraries and static libraries use the same namespace, and
11110    # are all built from PIC.
11111    case $host_os in
11112      aix3*)
11113        test yes = "$enable_shared" && enable_static=no
11114        if test -n "$RANLIB"; then
11115          archive_cmds="$archive_cmds~\$RANLIB \$lib"
11116          postinstall_cmds='$RANLIB $lib'
11117        fi
11118        ;;
11119      aix[[4-9]]*)
11120	if test ia64 != "$host_cpu"; then
11121	  case $enable_shared,$with_aix_soname,$aix_use_runtimelinking in
11122	  yes,aix,yes) ;;		# shared object as lib.so file only
11123	  yes,svr4,*) ;;		# shared object as lib.so archive member only
11124	  yes,*) enable_static=no ;;	# shared object in lib.a archive as well
11125	  esac
11126	fi
11127        ;;
11128    esac
11129    AC_MSG_RESULT([$enable_shared])
11130
11131    AC_MSG_CHECKING([whether to build static libraries])
11132    # Make sure either enable_shared or enable_static is yes.
11133    test yes = "$enable_shared" || enable_static=yes
11134    AC_MSG_RESULT([$enable_static])
11135
11136    _LT_TAGVAR(GCC, $1)=$G77
11137    _LT_TAGVAR(LD, $1)=$LD
11138
11139    ## CAVEAT EMPTOR:
11140    ## There is no encapsulation within the following macros, do not change
11141    ## the running order or otherwise move them around unless you know exactly
11142    ## what you are doing...
11143    _LT_COMPILER_PIC($1)
11144    _LT_COMPILER_C_O($1)
11145    _LT_COMPILER_FILE_LOCKS($1)
11146    _LT_LINKER_SHLIBS($1)
11147    _LT_SYS_DYNAMIC_LINKER($1)
11148    _LT_LINKER_HARDCODE_LIBPATH($1)
11149
11150    _LT_CONFIG($1)
11151  fi # test -n "$compiler"
11152
11153  GCC=$lt_save_GCC
11154  CC=$lt_save_CC
11155  CFLAGS=$lt_save_CFLAGS
11156fi # test yes != "$_lt_disable_F77"
11157
11158AC_LANG_POP
11159])# _LT_LANG_F77_CONFIG
11160
11161
11162# _LT_LANG_FC_CONFIG([TAG])
11163# -------------------------
11164# Ensure that the configuration variables for a Fortran compiler are
11165# suitably defined.  These variables are subsequently used by _LT_CONFIG
11166# to write the compiler configuration to 'libtool'.
11167m4_defun([_LT_LANG_FC_CONFIG],
11168[AC_LANG_PUSH(Fortran)
11169
11170if test -z "$FC" || test no = "$FC"; then
11171  _lt_disable_FC=yes
11172fi
11173
11174_LT_TAGVAR(archive_cmds_need_lc, $1)=no
11175_LT_TAGVAR(allow_undefined_flag, $1)=
11176_LT_TAGVAR(always_export_symbols, $1)=no
11177_LT_TAGVAR(archive_expsym_cmds, $1)=
11178_LT_TAGVAR(export_dynamic_flag_spec, $1)=
11179_LT_TAGVAR(hardcode_direct, $1)=no
11180_LT_TAGVAR(hardcode_direct_absolute, $1)=no
11181_LT_TAGVAR(hardcode_libdir_flag_spec, $1)=
11182_LT_TAGVAR(hardcode_libdir_separator, $1)=
11183_LT_TAGVAR(hardcode_minus_L, $1)=no
11184_LT_TAGVAR(hardcode_automatic, $1)=no
11185_LT_TAGVAR(inherit_rpath, $1)=no
11186_LT_TAGVAR(module_cmds, $1)=
11187_LT_TAGVAR(module_expsym_cmds, $1)=
11188_LT_TAGVAR(link_all_deplibs, $1)=unknown
11189_LT_TAGVAR(old_archive_cmds, $1)=$old_archive_cmds
11190_LT_TAGVAR(reload_flag, $1)=$reload_flag
11191_LT_TAGVAR(reload_cmds, $1)=$reload_cmds
11192_LT_TAGVAR(no_undefined_flag, $1)=
11193_LT_TAGVAR(whole_archive_flag_spec, $1)=
11194_LT_TAGVAR(enable_shared_with_static_runtimes, $1)=no
11195
11196# Source file extension for fc test sources.
11197ac_ext=${ac_fc_srcext-f}
11198
11199# Object file extension for compiled fc test sources.
11200objext=o
11201_LT_TAGVAR(objext, $1)=$objext
11202
11203# No sense in running all these tests if we already determined that
11204# the FC compiler isn't working.  Some variables (like enable_shared)
11205# are currently assumed to apply to all compilers on this platform,
11206# and will be corrupted by setting them based on a non-working compiler.
11207if test yes != "$_lt_disable_FC"; then
11208  # Code to be used in simple compile tests
11209  lt_simple_compile_test_code="\
11210      subroutine t
11211      return
11212      end
11213"
11214
11215  # Code to be used in simple link tests
11216  lt_simple_link_test_code="\
11217      program t
11218      end
11219"
11220
11221  # ltmain only uses $CC for tagged configurations so make sure $CC is set.
11222  _LT_TAG_COMPILER
11223
11224  # save warnings/boilerplate of simple test code
11225  _LT_COMPILER_BOILERPLATE
11226  _LT_LINKER_BOILERPLATE
11227
11228  # Allow CC to be a program name with arguments.
11229  lt_save_CC=$CC
11230  lt_save_GCC=$GCC
11231  lt_save_CFLAGS=$CFLAGS
11232  CC=${FC-"f95"}
11233  CFLAGS=$FCFLAGS
11234  compiler=$CC
11235  GCC=$ac_cv_fc_compiler_gnu
11236
11237  _LT_TAGVAR(compiler, $1)=$CC
11238  _LT_CC_BASENAME([$compiler])
11239
11240  if test -n "$compiler"; then
11241    AC_MSG_CHECKING([if libtool supports shared libraries])
11242    AC_MSG_RESULT([$can_build_shared])
11243
11244    AC_MSG_CHECKING([whether to build shared libraries])
11245    test no = "$can_build_shared" && enable_shared=no
11246
11247    # On AIX, shared libraries and static libraries use the same namespace, and
11248    # are all built from PIC.
11249    case $host_os in
11250      aix3*)
11251        test yes = "$enable_shared" && enable_static=no
11252        if test -n "$RANLIB"; then
11253          archive_cmds="$archive_cmds~\$RANLIB \$lib"
11254          postinstall_cmds='$RANLIB $lib'
11255        fi
11256        ;;
11257      aix[[4-9]]*)
11258	if test ia64 != "$host_cpu"; then
11259	  case $enable_shared,$with_aix_soname,$aix_use_runtimelinking in
11260	  yes,aix,yes) ;;		# shared object as lib.so file only
11261	  yes,svr4,*) ;;		# shared object as lib.so archive member only
11262	  yes,*) enable_static=no ;;	# shared object in lib.a archive as well
11263	  esac
11264	fi
11265        ;;
11266    esac
11267    AC_MSG_RESULT([$enable_shared])
11268
11269    AC_MSG_CHECKING([whether to build static libraries])
11270    # Make sure either enable_shared or enable_static is yes.
11271    test yes = "$enable_shared" || enable_static=yes
11272    AC_MSG_RESULT([$enable_static])
11273
11274    _LT_TAGVAR(GCC, $1)=$ac_cv_fc_compiler_gnu
11275    _LT_TAGVAR(LD, $1)=$LD
11276
11277    ## CAVEAT EMPTOR:
11278    ## There is no encapsulation within the following macros, do not change
11279    ## the running order or otherwise move them around unless you know exactly
11280    ## what you are doing...
11281    _LT_SYS_HIDDEN_LIBDEPS($1)
11282    _LT_COMPILER_PIC($1)
11283    _LT_COMPILER_C_O($1)
11284    _LT_COMPILER_FILE_LOCKS($1)
11285    _LT_LINKER_SHLIBS($1)
11286    _LT_SYS_DYNAMIC_LINKER($1)
11287    _LT_LINKER_HARDCODE_LIBPATH($1)
11288
11289    _LT_CONFIG($1)
11290  fi # test -n "$compiler"
11291
11292  GCC=$lt_save_GCC
11293  CC=$lt_save_CC
11294  CFLAGS=$lt_save_CFLAGS
11295fi # test yes != "$_lt_disable_FC"
11296
11297AC_LANG_POP
11298])# _LT_LANG_FC_CONFIG
11299
11300
11301# _LT_LANG_GCJ_CONFIG([TAG])
11302# --------------------------
11303# Ensure that the configuration variables for the GNU Java Compiler compiler
11304# are suitably defined.  These variables are subsequently used by _LT_CONFIG
11305# to write the compiler configuration to 'libtool'.
11306m4_defun([_LT_LANG_GCJ_CONFIG],
11307[AC_REQUIRE([LT_PROG_GCJ])dnl
11308AC_LANG_SAVE
11309
11310# Source file extension for Java test sources.
11311ac_ext=java
11312
11313# Object file extension for compiled Java test sources.
11314objext=o
11315_LT_TAGVAR(objext, $1)=$objext
11316
11317# Code to be used in simple compile tests
11318lt_simple_compile_test_code="class foo {}"
11319
11320# Code to be used in simple link tests
11321lt_simple_link_test_code='public class conftest { public static void main(String[[]] argv) {}; }'
11322
11323# ltmain only uses $CC for tagged configurations so make sure $CC is set.
11324_LT_TAG_COMPILER
11325
11326# save warnings/boilerplate of simple test code
11327_LT_COMPILER_BOILERPLATE
11328_LT_LINKER_BOILERPLATE
11329
11330# Allow CC to be a program name with arguments.
11331lt_save_CC=$CC
11332lt_save_CFLAGS=$CFLAGS
11333lt_save_GCC=$GCC
11334GCC=yes
11335CC=${GCJ-"gcj"}
11336CFLAGS=$GCJFLAGS
11337compiler=$CC
11338_LT_TAGVAR(compiler, $1)=$CC
11339_LT_TAGVAR(LD, $1)=$LD
11340_LT_CC_BASENAME([$compiler])
11341
11342# GCJ did not exist at the time GCC didn't implicitly link libc in.
11343_LT_TAGVAR(archive_cmds_need_lc, $1)=no
11344
11345_LT_TAGVAR(old_archive_cmds, $1)=$old_archive_cmds
11346_LT_TAGVAR(reload_flag, $1)=$reload_flag
11347_LT_TAGVAR(reload_cmds, $1)=$reload_cmds
11348
11349if test -n "$compiler"; then
11350  _LT_COMPILER_NO_RTTI($1)
11351  _LT_COMPILER_PIC($1)
11352  _LT_COMPILER_C_O($1)
11353  _LT_COMPILER_FILE_LOCKS($1)
11354  _LT_LINKER_SHLIBS($1)
11355  _LT_LINKER_HARDCODE_LIBPATH($1)
11356
11357  _LT_CONFIG($1)
11358fi
11359
11360AC_LANG_RESTORE
11361
11362GCC=$lt_save_GCC
11363CC=$lt_save_CC
11364CFLAGS=$lt_save_CFLAGS
11365])# _LT_LANG_GCJ_CONFIG
11366
11367
11368# _LT_LANG_GO_CONFIG([TAG])
11369# --------------------------
11370# Ensure that the configuration variables for the GNU Go compiler
11371# are suitably defined.  These variables are subsequently used by _LT_CONFIG
11372# to write the compiler configuration to 'libtool'.
11373m4_defun([_LT_LANG_GO_CONFIG],
11374[AC_REQUIRE([LT_PROG_GO])dnl
11375AC_LANG_SAVE
11376
11377# Source file extension for Go test sources.
11378ac_ext=go
11379
11380# Object file extension for compiled Go test sources.
11381objext=o
11382_LT_TAGVAR(objext, $1)=$objext
11383
11384# Code to be used in simple compile tests
11385lt_simple_compile_test_code="package main; func main() { }"
11386
11387# Code to be used in simple link tests
11388lt_simple_link_test_code='package main; func main() { }'
11389
11390# ltmain only uses $CC for tagged configurations so make sure $CC is set.
11391_LT_TAG_COMPILER
11392
11393# save warnings/boilerplate of simple test code
11394_LT_COMPILER_BOILERPLATE
11395_LT_LINKER_BOILERPLATE
11396
11397# Allow CC to be a program name with arguments.
11398lt_save_CC=$CC
11399lt_save_CFLAGS=$CFLAGS
11400lt_save_GCC=$GCC
11401GCC=yes
11402CC=${GOC-"gccgo"}
11403CFLAGS=$GOFLAGS
11404compiler=$CC
11405_LT_TAGVAR(compiler, $1)=$CC
11406_LT_TAGVAR(LD, $1)=$LD
11407_LT_CC_BASENAME([$compiler])
11408
11409# Go did not exist at the time GCC didn't implicitly link libc in.
11410_LT_TAGVAR(archive_cmds_need_lc, $1)=no
11411
11412_LT_TAGVAR(old_archive_cmds, $1)=$old_archive_cmds
11413_LT_TAGVAR(reload_flag, $1)=$reload_flag
11414_LT_TAGVAR(reload_cmds, $1)=$reload_cmds
11415
11416if test -n "$compiler"; then
11417  _LT_COMPILER_NO_RTTI($1)
11418  _LT_COMPILER_PIC($1)
11419  _LT_COMPILER_C_O($1)
11420  _LT_COMPILER_FILE_LOCKS($1)
11421  _LT_LINKER_SHLIBS($1)
11422  _LT_LINKER_HARDCODE_LIBPATH($1)
11423
11424  _LT_CONFIG($1)
11425fi
11426
11427AC_LANG_RESTORE
11428
11429GCC=$lt_save_GCC
11430CC=$lt_save_CC
11431CFLAGS=$lt_save_CFLAGS
11432])# _LT_LANG_GO_CONFIG
11433
11434
11435# _LT_LANG_RC_CONFIG([TAG])
11436# -------------------------
11437# Ensure that the configuration variables for the Windows resource compiler
11438# are suitably defined.  These variables are subsequently used by _LT_CONFIG
11439# to write the compiler configuration to 'libtool'.
11440m4_defun([_LT_LANG_RC_CONFIG],
11441[AC_REQUIRE([LT_PROG_RC])dnl
11442AC_LANG_SAVE
11443
11444# Source file extension for RC test sources.
11445ac_ext=rc
11446
11447# Object file extension for compiled RC test sources.
11448objext=o
11449_LT_TAGVAR(objext, $1)=$objext
11450
11451# Code to be used in simple compile tests
11452lt_simple_compile_test_code='sample MENU { MENUITEM "&Soup", 100, CHECKED }'
11453
11454# Code to be used in simple link tests
11455lt_simple_link_test_code=$lt_simple_compile_test_code
11456
11457# ltmain only uses $CC for tagged configurations so make sure $CC is set.
11458_LT_TAG_COMPILER
11459
11460# save warnings/boilerplate of simple test code
11461_LT_COMPILER_BOILERPLATE
11462_LT_LINKER_BOILERPLATE
11463
11464# Allow CC to be a program name with arguments.
11465lt_save_CC=$CC
11466lt_save_CFLAGS=$CFLAGS
11467lt_save_GCC=$GCC
11468GCC=
11469CC=${RC-"windres"}
11470CFLAGS=
11471compiler=$CC
11472_LT_TAGVAR(compiler, $1)=$CC
11473_LT_CC_BASENAME([$compiler])
11474_LT_TAGVAR(lt_cv_prog_compiler_c_o, $1)=yes
11475
11476if test -n "$compiler"; then
11477  :
11478  _LT_CONFIG($1)
11479fi
11480
11481GCC=$lt_save_GCC
11482AC_LANG_RESTORE
11483CC=$lt_save_CC
11484CFLAGS=$lt_save_CFLAGS
11485])# _LT_LANG_RC_CONFIG
11486
11487
11488# LT_PROG_GCJ
11489# -----------
11490AC_DEFUN([LT_PROG_GCJ],
11491[m4_ifdef([AC_PROG_GCJ], [AC_PROG_GCJ],
11492  [m4_ifdef([A][M_PROG_GCJ], [A][M_PROG_GCJ],
11493    [AC_CHECK_TOOL(GCJ, gcj,)
11494      test set = "${GCJFLAGS+set}" || GCJFLAGS="-g -O2"
11495      AC_SUBST(GCJFLAGS)])])[]dnl
11496])
11497
11498# Old name:
11499AU_ALIAS([LT_AC_PROG_GCJ], [LT_PROG_GCJ])
11500dnl aclocal-1.4 backwards compatibility:
11501dnl AC_DEFUN([LT_AC_PROG_GCJ], [])
11502
11503
11504# LT_PROG_GO
11505# ----------
11506AC_DEFUN([LT_PROG_GO],
11507[AC_CHECK_TOOL(GOC, gccgo,)
11508])
11509
11510
11511# LT_PROG_RC
11512# ----------
11513AC_DEFUN([LT_PROG_RC],
11514[AC_CHECK_TOOL(RC, windres,)
11515])
11516
11517# Old name:
11518AU_ALIAS([LT_AC_PROG_RC], [LT_PROG_RC])
11519dnl aclocal-1.4 backwards compatibility:
11520dnl AC_DEFUN([LT_AC_PROG_RC], [])
11521
11522
11523# _LT_DECL_EGREP
11524# --------------
11525# If we don't have a new enough Autoconf to choose the best grep
11526# available, choose the one first in the user's PATH.
11527m4_defun([_LT_DECL_EGREP],
11528[AC_REQUIRE([AC_PROG_EGREP])dnl
11529AC_REQUIRE([AC_PROG_FGREP])dnl
11530test -z "$GREP" && GREP=grep
11531_LT_DECL([], [GREP], [1], [A grep program that handles long lines])
11532_LT_DECL([], [EGREP], [1], [An ERE matcher])
11533_LT_DECL([], [FGREP], [1], [A literal string matcher])
11534dnl Non-bleeding-edge autoconf doesn't subst GREP, so do it here too
11535AC_SUBST([GREP])
11536])
11537
11538
11539# _LT_DECL_OBJDUMP
11540# --------------
11541# If we don't have a new enough Autoconf to choose the best objdump
11542# available, choose the one first in the user's PATH.
11543m4_defun([_LT_DECL_OBJDUMP],
11544[AC_CHECK_TOOL(OBJDUMP, objdump, false)
11545test -z "$OBJDUMP" && OBJDUMP=objdump
11546_LT_DECL([], [OBJDUMP], [1], [An object symbol dumper])
11547AC_SUBST([OBJDUMP])
11548])
11549
11550# _LT_DECL_DLLTOOL
11551# ----------------
11552# Ensure DLLTOOL variable is set.
11553m4_defun([_LT_DECL_DLLTOOL],
11554[AC_CHECK_TOOL(DLLTOOL, dlltool, false)
11555test -z "$DLLTOOL" && DLLTOOL=dlltool
11556_LT_DECL([], [DLLTOOL], [1], [DLL creation program])
11557AC_SUBST([DLLTOOL])
11558])
11559
11560# _LT_DECL_FILECMD
11561# ----------------
11562# Check for a file(cmd) program that can be used to detect file type and magic
11563m4_defun([_LT_DECL_FILECMD],
11564[AC_CHECK_TOOL([FILECMD], [file], [:])
11565_LT_DECL([], [FILECMD], [1], [A file(cmd) program that detects file types])
11566])# _LD_DECL_FILECMD
11567
11568# _LT_DECL_SED
11569# ------------
11570# Check for a fully-functional sed program, that truncates
11571# as few characters as possible.  Prefer GNU sed if found.
11572m4_defun([_LT_DECL_SED],
11573[AC_PROG_SED
11574test -z "$SED" && SED=sed
11575Xsed="$SED -e 1s/^X//"
11576_LT_DECL([], [SED], [1], [A sed program that does not truncate output])
11577_LT_DECL([], [Xsed], ["\$SED -e 1s/^X//"],
11578    [Sed that helps us avoid accidentally triggering echo(1) options like -n])
11579])# _LT_DECL_SED
11580
11581m4_ifndef([AC_PROG_SED], [
11582# NOTE: This macro has been submitted for inclusion into   #
11583#  GNU Autoconf as AC_PROG_SED.  When it is available in   #
11584#  a released version of Autoconf we should remove this    #
11585#  macro and use it instead.                               #
11586
11587m4_defun([AC_PROG_SED],
11588[AC_MSG_CHECKING([for a sed that does not truncate output])
11589AC_CACHE_VAL(lt_cv_path_SED,
11590[# Loop through the user's path and test for sed and gsed.
11591# Then use that list of sed's as ones to test for truncation.
11592as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
11593for as_dir in $PATH
11594do
11595  IFS=$as_save_IFS
11596  test -z "$as_dir" && as_dir=.
11597  for lt_ac_prog in sed gsed; do
11598    for ac_exec_ext in '' $ac_executable_extensions; do
11599      if $as_executable_p "$as_dir/$lt_ac_prog$ac_exec_ext"; then
11600        lt_ac_sed_list="$lt_ac_sed_list $as_dir/$lt_ac_prog$ac_exec_ext"
11601      fi
11602    done
11603  done
11604done
11605IFS=$as_save_IFS
11606lt_ac_max=0
11607lt_ac_count=0
11608# Add /usr/xpg4/bin/sed as it is typically found on Solaris
11609# along with /bin/sed that truncates output.
11610for lt_ac_sed in $lt_ac_sed_list /usr/xpg4/bin/sed; do
11611  test ! -f "$lt_ac_sed" && continue
11612  cat /dev/null > conftest.in
11613  lt_ac_count=0
11614  echo $ECHO_N "0123456789$ECHO_C" >conftest.in
11615  # Check for GNU sed and select it if it is found.
11616  if "$lt_ac_sed" --version 2>&1 < /dev/null | grep 'GNU' > /dev/null; then
11617    lt_cv_path_SED=$lt_ac_sed
11618    break
11619  fi
11620  while true; do
11621    cat conftest.in conftest.in >conftest.tmp
11622    mv conftest.tmp conftest.in
11623    cp conftest.in conftest.nl
11624    echo >>conftest.nl
11625    $lt_ac_sed -e 's/a$//' < conftest.nl >conftest.out || break
11626    cmp -s conftest.out conftest.nl || break
11627    # 10000 chars as input seems more than enough
11628    test 10 -lt "$lt_ac_count" && break
11629    lt_ac_count=`expr $lt_ac_count + 1`
11630    if test "$lt_ac_count" -gt "$lt_ac_max"; then
11631      lt_ac_max=$lt_ac_count
11632      lt_cv_path_SED=$lt_ac_sed
11633    fi
11634  done
11635done
11636])
11637SED=$lt_cv_path_SED
11638AC_SUBST([SED])
11639AC_MSG_RESULT([$SED])
11640])#AC_PROG_SED
11641])#m4_ifndef
11642
11643# Old name:
11644AU_ALIAS([LT_AC_PROG_SED], [AC_PROG_SED])
11645dnl aclocal-1.4 backwards compatibility:
11646dnl AC_DEFUN([LT_AC_PROG_SED], [])
11647
11648
11649# _LT_CHECK_SHELL_FEATURES
11650# ------------------------
11651# Find out whether the shell is Bourne or XSI compatible,
11652# or has some other useful features.
11653m4_defun([_LT_CHECK_SHELL_FEATURES],
11654[if ( (MAIL=60; unset MAIL) || exit) >/dev/null 2>&1; then
11655  lt_unset=unset
11656else
11657  lt_unset=false
11658fi
11659_LT_DECL([], [lt_unset], [0], [whether the shell understands "unset"])dnl
11660
11661# test EBCDIC or ASCII
11662case `echo X|tr X '\101'` in
11663 A) # ASCII based system
11664    # \n is not interpreted correctly by Solaris 8 /usr/ucb/tr
11665  lt_SP2NL='tr \040 \012'
11666  lt_NL2SP='tr \015\012 \040\040'
11667  ;;
11668 *) # EBCDIC based system
11669  lt_SP2NL='tr \100 \n'
11670  lt_NL2SP='tr \r\n \100\100'
11671  ;;
11672esac
11673_LT_DECL([SP2NL], [lt_SP2NL], [1], [turn spaces into newlines])dnl
11674_LT_DECL([NL2SP], [lt_NL2SP], [1], [turn newlines into spaces])dnl
11675])# _LT_CHECK_SHELL_FEATURES
11676
11677
11678# _LT_PATH_CONVERSION_FUNCTIONS
11679# -----------------------------
11680# Determine what file name conversion functions should be used by
11681# func_to_host_file (and, implicitly, by func_to_host_path).  These are needed
11682# for certain cross-compile configurations and native mingw.
11683m4_defun([_LT_PATH_CONVERSION_FUNCTIONS],
11684[AC_REQUIRE([AC_CANONICAL_HOST])dnl
11685AC_REQUIRE([AC_CANONICAL_BUILD])dnl
11686AC_MSG_CHECKING([how to convert $build file names to $host format])
11687AC_CACHE_VAL(lt_cv_to_host_file_cmd,
11688[case $host in
11689  *-*-mingw* )
11690    case $build in
11691      *-*-mingw* ) # actually msys
11692        lt_cv_to_host_file_cmd=func_convert_file_msys_to_w32
11693        ;;
11694      *-*-cygwin* )
11695        lt_cv_to_host_file_cmd=func_convert_file_cygwin_to_w32
11696        ;;
11697      * ) # otherwise, assume *nix
11698        lt_cv_to_host_file_cmd=func_convert_file_nix_to_w32
11699        ;;
11700    esac
11701    ;;
11702  *-*-cygwin* )
11703    case $build in
11704      *-*-mingw* ) # actually msys
11705        lt_cv_to_host_file_cmd=func_convert_file_msys_to_cygwin
11706        ;;
11707      *-*-cygwin* )
11708        lt_cv_to_host_file_cmd=func_convert_file_noop
11709        ;;
11710      * ) # otherwise, assume *nix
11711        lt_cv_to_host_file_cmd=func_convert_file_nix_to_cygwin
11712        ;;
11713    esac
11714    ;;
11715  * ) # unhandled hosts (and "normal" native builds)
11716    lt_cv_to_host_file_cmd=func_convert_file_noop
11717    ;;
11718esac
11719])
11720to_host_file_cmd=$lt_cv_to_host_file_cmd
11721AC_MSG_RESULT([$lt_cv_to_host_file_cmd])
11722_LT_DECL([to_host_file_cmd], [lt_cv_to_host_file_cmd],
11723         [0], [convert $build file names to $host format])dnl
11724
11725AC_MSG_CHECKING([how to convert $build file names to toolchain format])
11726AC_CACHE_VAL(lt_cv_to_tool_file_cmd,
11727[#assume ordinary cross tools, or native build.
11728lt_cv_to_tool_file_cmd=func_convert_file_noop
11729case $host in
11730  *-*-mingw* )
11731    case $build in
11732      *-*-mingw* ) # actually msys
11733        lt_cv_to_tool_file_cmd=func_convert_file_msys_to_w32
11734        ;;
11735    esac
11736    ;;
11737esac
11738])
11739to_tool_file_cmd=$lt_cv_to_tool_file_cmd
11740AC_MSG_RESULT([$lt_cv_to_tool_file_cmd])
11741_LT_DECL([to_tool_file_cmd], [lt_cv_to_tool_file_cmd],
11742         [0], [convert $build files to toolchain format])dnl
11743])# _LT_PATH_CONVERSION_FUNCTIONS
11744
11745# Helper functions for option handling.                    -*- Autoconf -*-
11746#
11747#   Copyright (C) 2004-2005, 2007-2009, 2011-2019, 2021-2022 Free
11748#   Software Foundation, Inc.
11749#   Written by Gary V. Vaughan, 2004
11750#
11751# This file is free software; the Free Software Foundation gives
11752# unlimited permission to copy and/or distribute it, with or without
11753# modifications, as long as this notice is preserved.
11754
11755# serial 8 ltoptions.m4
11756
11757# This is to help aclocal find these macros, as it can't see m4_define.
11758AC_DEFUN([LTOPTIONS_VERSION], [m4_if([1])])
11759
11760
11761# _LT_MANGLE_OPTION(MACRO-NAME, OPTION-NAME)
11762# ------------------------------------------
11763m4_define([_LT_MANGLE_OPTION],
11764[[_LT_OPTION_]m4_bpatsubst($1__$2, [[^a-zA-Z0-9_]], [_])])
11765
11766
11767# _LT_SET_OPTION(MACRO-NAME, OPTION-NAME)
11768# ---------------------------------------
11769# Set option OPTION-NAME for macro MACRO-NAME, and if there is a
11770# matching handler defined, dispatch to it.  Other OPTION-NAMEs are
11771# saved as a flag.
11772m4_define([_LT_SET_OPTION],
11773[m4_define(_LT_MANGLE_OPTION([$1], [$2]))dnl
11774m4_ifdef(_LT_MANGLE_DEFUN([$1], [$2]),
11775        _LT_MANGLE_DEFUN([$1], [$2]),
11776    [m4_warning([Unknown $1 option '$2'])])[]dnl
11777])
11778
11779
11780# _LT_IF_OPTION(MACRO-NAME, OPTION-NAME, IF-SET, [IF-NOT-SET])
11781# ------------------------------------------------------------
11782# Execute IF-SET if OPTION is set, IF-NOT-SET otherwise.
11783m4_define([_LT_IF_OPTION],
11784[m4_ifdef(_LT_MANGLE_OPTION([$1], [$2]), [$3], [$4])])
11785
11786
11787# _LT_UNLESS_OPTIONS(MACRO-NAME, OPTION-LIST, IF-NOT-SET)
11788# -------------------------------------------------------
11789# Execute IF-NOT-SET unless all options in OPTION-LIST for MACRO-NAME
11790# are set.
11791m4_define([_LT_UNLESS_OPTIONS],
11792[m4_foreach([_LT_Option], m4_split(m4_normalize([$2])),
11793	    [m4_ifdef(_LT_MANGLE_OPTION([$1], _LT_Option),
11794		      [m4_define([$0_found])])])[]dnl
11795m4_ifdef([$0_found], [m4_undefine([$0_found])], [$3
11796])[]dnl
11797])
11798
11799
11800# _LT_SET_OPTIONS(MACRO-NAME, OPTION-LIST)
11801# ----------------------------------------
11802# OPTION-LIST is a space-separated list of Libtool options associated
11803# with MACRO-NAME.  If any OPTION has a matching handler declared with
11804# LT_OPTION_DEFINE, dispatch to that macro; otherwise complain about
11805# the unknown option and exit.
11806m4_defun([_LT_SET_OPTIONS],
11807[# Set options
11808m4_foreach([_LT_Option], m4_split(m4_normalize([$2])),
11809    [_LT_SET_OPTION([$1], _LT_Option)])
11810
11811m4_if([$1],[LT_INIT],[
11812  dnl
11813  dnl Simply set some default values (i.e off) if boolean options were not
11814  dnl specified:
11815  _LT_UNLESS_OPTIONS([LT_INIT], [dlopen], [enable_dlopen=no
11816  ])
11817  _LT_UNLESS_OPTIONS([LT_INIT], [win32-dll], [enable_win32_dll=no
11818  ])
11819  dnl
11820  dnl If no reference was made to various pairs of opposing options, then
11821  dnl we run the default mode handler for the pair.  For example, if neither
11822  dnl 'shared' nor 'disable-shared' was passed, we enable building of shared
11823  dnl archives by default:
11824  _LT_UNLESS_OPTIONS([LT_INIT], [shared disable-shared], [_LT_ENABLE_SHARED])
11825  _LT_UNLESS_OPTIONS([LT_INIT], [static disable-static], [_LT_ENABLE_STATIC])
11826  _LT_UNLESS_OPTIONS([LT_INIT], [pic-only no-pic], [_LT_WITH_PIC])
11827  _LT_UNLESS_OPTIONS([LT_INIT], [fast-install disable-fast-install],
11828		   [_LT_ENABLE_FAST_INSTALL])
11829  _LT_UNLESS_OPTIONS([LT_INIT], [aix-soname=aix aix-soname=both aix-soname=svr4],
11830		   [_LT_WITH_AIX_SONAME([aix])])
11831  ])
11832])# _LT_SET_OPTIONS
11833
11834
11835
11836# _LT_MANGLE_DEFUN(MACRO-NAME, OPTION-NAME)
11837# -----------------------------------------
11838m4_define([_LT_MANGLE_DEFUN],
11839[[_LT_OPTION_DEFUN_]m4_bpatsubst(m4_toupper([$1__$2]), [[^A-Z0-9_]], [_])])
11840
11841
11842# LT_OPTION_DEFINE(MACRO-NAME, OPTION-NAME, CODE)
11843# -----------------------------------------------
11844m4_define([LT_OPTION_DEFINE],
11845[m4_define(_LT_MANGLE_DEFUN([$1], [$2]), [$3])[]dnl
11846])# LT_OPTION_DEFINE
11847
11848
11849# dlopen
11850# ------
11851LT_OPTION_DEFINE([LT_INIT], [dlopen], [enable_dlopen=yes
11852])
11853
11854AU_DEFUN([AC_LIBTOOL_DLOPEN],
11855[_LT_SET_OPTION([LT_INIT], [dlopen])
11856AC_DIAGNOSE([obsolete],
11857[$0: Remove this warning and the call to _LT_SET_OPTION when you
11858put the 'dlopen' option into LT_INIT's first parameter.])
11859])
11860
11861dnl aclocal-1.4 backwards compatibility:
11862dnl AC_DEFUN([AC_LIBTOOL_DLOPEN], [])
11863
11864
11865# win32-dll
11866# ---------
11867# Declare package support for building win32 dll's.
11868LT_OPTION_DEFINE([LT_INIT], [win32-dll],
11869[enable_win32_dll=yes
11870
11871case $host in
11872*-*-cygwin* | *-*-mingw* | *-*-pw32* | *-*-cegcc*)
11873  AC_CHECK_TOOL(AS, as, false)
11874  AC_CHECK_TOOL(DLLTOOL, dlltool, false)
11875  AC_CHECK_TOOL(OBJDUMP, objdump, false)
11876  ;;
11877esac
11878
11879test -z "$AS" && AS=as
11880_LT_DECL([], [AS],      [1], [Assembler program])dnl
11881
11882test -z "$DLLTOOL" && DLLTOOL=dlltool
11883_LT_DECL([], [DLLTOOL], [1], [DLL creation program])dnl
11884
11885test -z "$OBJDUMP" && OBJDUMP=objdump
11886_LT_DECL([], [OBJDUMP], [1], [Object dumper program])dnl
11887])# win32-dll
11888
11889AU_DEFUN([AC_LIBTOOL_WIN32_DLL],
11890[AC_REQUIRE([AC_CANONICAL_HOST])dnl
11891_LT_SET_OPTION([LT_INIT], [win32-dll])
11892AC_DIAGNOSE([obsolete],
11893[$0: Remove this warning and the call to _LT_SET_OPTION when you
11894put the 'win32-dll' option into LT_INIT's first parameter.])
11895])
11896
11897dnl aclocal-1.4 backwards compatibility:
11898dnl AC_DEFUN([AC_LIBTOOL_WIN32_DLL], [])
11899
11900
11901# _LT_ENABLE_SHARED([DEFAULT])
11902# ----------------------------
11903# implement the --enable-shared flag, and supports the 'shared' and
11904# 'disable-shared' LT_INIT options.
11905# DEFAULT is either 'yes' or 'no'.  If omitted, it defaults to 'yes'.
11906m4_define([_LT_ENABLE_SHARED],
11907[m4_define([_LT_ENABLE_SHARED_DEFAULT], [m4_if($1, no, no, yes)])dnl
11908AC_ARG_ENABLE([shared],
11909    [AS_HELP_STRING([--enable-shared@<:@=PKGS@:>@],
11910	[build shared libraries @<:@default=]_LT_ENABLE_SHARED_DEFAULT[@:>@])],
11911    [p=${PACKAGE-default}
11912    case $enableval in
11913    yes) enable_shared=yes ;;
11914    no) enable_shared=no ;;
11915    *)
11916      enable_shared=no
11917      # Look at the argument we got.  We use all the common list separators.
11918      lt_save_ifs=$IFS; IFS=$IFS$PATH_SEPARATOR,
11919      for pkg in $enableval; do
11920	IFS=$lt_save_ifs
11921	if test "X$pkg" = "X$p"; then
11922	  enable_shared=yes
11923	fi
11924      done
11925      IFS=$lt_save_ifs
11926      ;;
11927    esac],
11928    [enable_shared=]_LT_ENABLE_SHARED_DEFAULT)
11929
11930    _LT_DECL([build_libtool_libs], [enable_shared], [0],
11931	[Whether or not to build shared libraries])
11932])# _LT_ENABLE_SHARED
11933
11934LT_OPTION_DEFINE([LT_INIT], [shared], [_LT_ENABLE_SHARED([yes])])
11935LT_OPTION_DEFINE([LT_INIT], [disable-shared], [_LT_ENABLE_SHARED([no])])
11936
11937# Old names:
11938AC_DEFUN([AC_ENABLE_SHARED],
11939[_LT_SET_OPTION([LT_INIT], m4_if([$1], [no], [disable-])[shared])
11940])
11941
11942AC_DEFUN([AC_DISABLE_SHARED],
11943[_LT_SET_OPTION([LT_INIT], [disable-shared])
11944])
11945
11946AU_DEFUN([AM_ENABLE_SHARED], [AC_ENABLE_SHARED($@)])
11947AU_DEFUN([AM_DISABLE_SHARED], [AC_DISABLE_SHARED($@)])
11948
11949dnl aclocal-1.4 backwards compatibility:
11950dnl AC_DEFUN([AM_ENABLE_SHARED], [])
11951dnl AC_DEFUN([AM_DISABLE_SHARED], [])
11952
11953
11954
11955# _LT_ENABLE_STATIC([DEFAULT])
11956# ----------------------------
11957# implement the --enable-static flag, and support the 'static' and
11958# 'disable-static' LT_INIT options.
11959# DEFAULT is either 'yes' or 'no'.  If omitted, it defaults to 'yes'.
11960m4_define([_LT_ENABLE_STATIC],
11961[m4_define([_LT_ENABLE_STATIC_DEFAULT], [m4_if($1, no, no, yes)])dnl
11962AC_ARG_ENABLE([static],
11963    [AS_HELP_STRING([--enable-static@<:@=PKGS@:>@],
11964	[build static libraries @<:@default=]_LT_ENABLE_STATIC_DEFAULT[@:>@])],
11965    [p=${PACKAGE-default}
11966    case $enableval in
11967    yes) enable_static=yes ;;
11968    no) enable_static=no ;;
11969    *)
11970     enable_static=no
11971      # Look at the argument we got.  We use all the common list separators.
11972      lt_save_ifs=$IFS; IFS=$IFS$PATH_SEPARATOR,
11973      for pkg in $enableval; do
11974	IFS=$lt_save_ifs
11975	if test "X$pkg" = "X$p"; then
11976	  enable_static=yes
11977	fi
11978      done
11979      IFS=$lt_save_ifs
11980      ;;
11981    esac],
11982    [enable_static=]_LT_ENABLE_STATIC_DEFAULT)
11983
11984    _LT_DECL([build_old_libs], [enable_static], [0],
11985	[Whether or not to build static libraries])
11986])# _LT_ENABLE_STATIC
11987
11988LT_OPTION_DEFINE([LT_INIT], [static], [_LT_ENABLE_STATIC([yes])])
11989LT_OPTION_DEFINE([LT_INIT], [disable-static], [_LT_ENABLE_STATIC([no])])
11990
11991# Old names:
11992AC_DEFUN([AC_ENABLE_STATIC],
11993[_LT_SET_OPTION([LT_INIT], m4_if([$1], [no], [disable-])[static])
11994])
11995
11996AC_DEFUN([AC_DISABLE_STATIC],
11997[_LT_SET_OPTION([LT_INIT], [disable-static])
11998])
11999
12000AU_DEFUN([AM_ENABLE_STATIC], [AC_ENABLE_STATIC($@)])
12001AU_DEFUN([AM_DISABLE_STATIC], [AC_DISABLE_STATIC($@)])
12002
12003dnl aclocal-1.4 backwards compatibility:
12004dnl AC_DEFUN([AM_ENABLE_STATIC], [])
12005dnl AC_DEFUN([AM_DISABLE_STATIC], [])
12006
12007
12008
12009# _LT_ENABLE_FAST_INSTALL([DEFAULT])
12010# ----------------------------------
12011# implement the --enable-fast-install flag, and support the 'fast-install'
12012# and 'disable-fast-install' LT_INIT options.
12013# DEFAULT is either 'yes' or 'no'.  If omitted, it defaults to 'yes'.
12014m4_define([_LT_ENABLE_FAST_INSTALL],
12015[m4_define([_LT_ENABLE_FAST_INSTALL_DEFAULT], [m4_if($1, no, no, yes)])dnl
12016AC_ARG_ENABLE([fast-install],
12017    [AS_HELP_STRING([--enable-fast-install@<:@=PKGS@:>@],
12018    [optimize for fast installation @<:@default=]_LT_ENABLE_FAST_INSTALL_DEFAULT[@:>@])],
12019    [p=${PACKAGE-default}
12020    case $enableval in
12021    yes) enable_fast_install=yes ;;
12022    no) enable_fast_install=no ;;
12023    *)
12024      enable_fast_install=no
12025      # Look at the argument we got.  We use all the common list separators.
12026      lt_save_ifs=$IFS; IFS=$IFS$PATH_SEPARATOR,
12027      for pkg in $enableval; do
12028	IFS=$lt_save_ifs
12029	if test "X$pkg" = "X$p"; then
12030	  enable_fast_install=yes
12031	fi
12032      done
12033      IFS=$lt_save_ifs
12034      ;;
12035    esac],
12036    [enable_fast_install=]_LT_ENABLE_FAST_INSTALL_DEFAULT)
12037
12038_LT_DECL([fast_install], [enable_fast_install], [0],
12039	 [Whether or not to optimize for fast installation])dnl
12040])# _LT_ENABLE_FAST_INSTALL
12041
12042LT_OPTION_DEFINE([LT_INIT], [fast-install], [_LT_ENABLE_FAST_INSTALL([yes])])
12043LT_OPTION_DEFINE([LT_INIT], [disable-fast-install], [_LT_ENABLE_FAST_INSTALL([no])])
12044
12045# Old names:
12046AU_DEFUN([AC_ENABLE_FAST_INSTALL],
12047[_LT_SET_OPTION([LT_INIT], m4_if([$1], [no], [disable-])[fast-install])
12048AC_DIAGNOSE([obsolete],
12049[$0: Remove this warning and the call to _LT_SET_OPTION when you put
12050the 'fast-install' option into LT_INIT's first parameter.])
12051])
12052
12053AU_DEFUN([AC_DISABLE_FAST_INSTALL],
12054[_LT_SET_OPTION([LT_INIT], [disable-fast-install])
12055AC_DIAGNOSE([obsolete],
12056[$0: Remove this warning and the call to _LT_SET_OPTION when you put
12057the 'disable-fast-install' option into LT_INIT's first parameter.])
12058])
12059
12060dnl aclocal-1.4 backwards compatibility:
12061dnl AC_DEFUN([AC_ENABLE_FAST_INSTALL], [])
12062dnl AC_DEFUN([AM_DISABLE_FAST_INSTALL], [])
12063
12064
12065# _LT_WITH_AIX_SONAME([DEFAULT])
12066# ----------------------------------
12067# implement the --with-aix-soname flag, and support the `aix-soname=aix'
12068# and `aix-soname=both' and `aix-soname=svr4' LT_INIT options. DEFAULT
12069# is either `aix', `both' or `svr4'.  If omitted, it defaults to `aix'.
12070m4_define([_LT_WITH_AIX_SONAME],
12071[m4_define([_LT_WITH_AIX_SONAME_DEFAULT], [m4_if($1, svr4, svr4, m4_if($1, both, both, aix))])dnl
12072shared_archive_member_spec=
12073case $host,$enable_shared in
12074power*-*-aix[[5-9]]*,yes)
12075  AC_MSG_CHECKING([which variant of shared library versioning to provide])
12076  AC_ARG_WITH([aix-soname],
12077    [AS_HELP_STRING([--with-aix-soname=aix|svr4|both],
12078      [shared library versioning (aka "SONAME") variant to provide on AIX, @<:@default=]_LT_WITH_AIX_SONAME_DEFAULT[@:>@.])],
12079    [case $withval in
12080    aix|svr4|both)
12081      ;;
12082    *)
12083      AC_MSG_ERROR([Unknown argument to --with-aix-soname])
12084      ;;
12085    esac
12086    lt_cv_with_aix_soname=$with_aix_soname],
12087    [AC_CACHE_VAL([lt_cv_with_aix_soname],
12088      [lt_cv_with_aix_soname=]_LT_WITH_AIX_SONAME_DEFAULT)
12089    with_aix_soname=$lt_cv_with_aix_soname])
12090  AC_MSG_RESULT([$with_aix_soname])
12091  if test aix != "$with_aix_soname"; then
12092    # For the AIX way of multilib, we name the shared archive member
12093    # based on the bitwidth used, traditionally 'shr.o' or 'shr_64.o',
12094    # and 'shr.imp' or 'shr_64.imp', respectively, for the Import File.
12095    # Even when GNU compilers ignore OBJECT_MODE but need '-maix64' flag,
12096    # the AIX toolchain works better with OBJECT_MODE set (default 32).
12097    if test 64 = "${OBJECT_MODE-32}"; then
12098      shared_archive_member_spec=shr_64
12099    else
12100      shared_archive_member_spec=shr
12101    fi
12102  fi
12103  ;;
12104*)
12105  with_aix_soname=aix
12106  ;;
12107esac
12108
12109_LT_DECL([], [shared_archive_member_spec], [0],
12110    [Shared archive member basename, for filename based shared library versioning on AIX])dnl
12111])# _LT_WITH_AIX_SONAME
12112
12113LT_OPTION_DEFINE([LT_INIT], [aix-soname=aix], [_LT_WITH_AIX_SONAME([aix])])
12114LT_OPTION_DEFINE([LT_INIT], [aix-soname=both], [_LT_WITH_AIX_SONAME([both])])
12115LT_OPTION_DEFINE([LT_INIT], [aix-soname=svr4], [_LT_WITH_AIX_SONAME([svr4])])
12116
12117
12118# _LT_WITH_PIC([MODE])
12119# --------------------
12120# implement the --with-pic flag, and support the 'pic-only' and 'no-pic'
12121# LT_INIT options.
12122# MODE is either 'yes' or 'no'.  If omitted, it defaults to 'both'.
12123m4_define([_LT_WITH_PIC],
12124[AC_ARG_WITH([pic],
12125    [AS_HELP_STRING([--with-pic@<:@=PKGS@:>@],
12126	[try to use only PIC/non-PIC objects @<:@default=use both@:>@])],
12127    [lt_p=${PACKAGE-default}
12128    case $withval in
12129    yes|no) pic_mode=$withval ;;
12130    *)
12131      pic_mode=default
12132      # Look at the argument we got.  We use all the common list separators.
12133      lt_save_ifs=$IFS; IFS=$IFS$PATH_SEPARATOR,
12134      for lt_pkg in $withval; do
12135	IFS=$lt_save_ifs
12136	if test "X$lt_pkg" = "X$lt_p"; then
12137	  pic_mode=yes
12138	fi
12139      done
12140      IFS=$lt_save_ifs
12141      ;;
12142    esac],
12143    [pic_mode=m4_default([$1], [default])])
12144
12145_LT_DECL([], [pic_mode], [0], [What type of objects to build])dnl
12146])# _LT_WITH_PIC
12147
12148LT_OPTION_DEFINE([LT_INIT], [pic-only], [_LT_WITH_PIC([yes])])
12149LT_OPTION_DEFINE([LT_INIT], [no-pic], [_LT_WITH_PIC([no])])
12150
12151# Old name:
12152AU_DEFUN([AC_LIBTOOL_PICMODE],
12153[_LT_SET_OPTION([LT_INIT], [pic-only])
12154AC_DIAGNOSE([obsolete],
12155[$0: Remove this warning and the call to _LT_SET_OPTION when you
12156put the 'pic-only' option into LT_INIT's first parameter.])
12157])
12158
12159dnl aclocal-1.4 backwards compatibility:
12160dnl AC_DEFUN([AC_LIBTOOL_PICMODE], [])
12161
12162
12163m4_define([_LTDL_MODE], [])
12164LT_OPTION_DEFINE([LTDL_INIT], [nonrecursive],
12165		 [m4_define([_LTDL_MODE], [nonrecursive])])
12166LT_OPTION_DEFINE([LTDL_INIT], [recursive],
12167		 [m4_define([_LTDL_MODE], [recursive])])
12168LT_OPTION_DEFINE([LTDL_INIT], [subproject],
12169		 [m4_define([_LTDL_MODE], [subproject])])
12170
12171m4_define([_LTDL_TYPE], [])
12172LT_OPTION_DEFINE([LTDL_INIT], [installable],
12173		 [m4_define([_LTDL_TYPE], [installable])])
12174LT_OPTION_DEFINE([LTDL_INIT], [convenience],
12175		 [m4_define([_LTDL_TYPE], [convenience])])
12176
12177# ltsugar.m4 -- libtool m4 base layer.                         -*-Autoconf-*-
12178#
12179# Copyright (C) 2004-2005, 2007-2008, 2011-2019, 2021-2022 Free Software
12180# Foundation, Inc.
12181# Written by Gary V. Vaughan, 2004
12182#
12183# This file is free software; the Free Software Foundation gives
12184# unlimited permission to copy and/or distribute it, with or without
12185# modifications, as long as this notice is preserved.
12186
12187# serial 6 ltsugar.m4
12188
12189# This is to help aclocal find these macros, as it can't see m4_define.
12190AC_DEFUN([LTSUGAR_VERSION], [m4_if([0.1])])
12191
12192
12193# lt_join(SEP, ARG1, [ARG2...])
12194# -----------------------------
12195# Produce ARG1SEPARG2...SEPARGn, omitting [] arguments and their
12196# associated separator.
12197# Needed until we can rely on m4_join from Autoconf 2.62, since all earlier
12198# versions in m4sugar had bugs.
12199m4_define([lt_join],
12200[m4_if([$#], [1], [],
12201       [$#], [2], [[$2]],
12202       [m4_if([$2], [], [], [[$2]_])$0([$1], m4_shift(m4_shift($@)))])])
12203m4_define([_lt_join],
12204[m4_if([$#$2], [2], [],
12205       [m4_if([$2], [], [], [[$1$2]])$0([$1], m4_shift(m4_shift($@)))])])
12206
12207
12208# lt_car(LIST)
12209# lt_cdr(LIST)
12210# ------------
12211# Manipulate m4 lists.
12212# These macros are necessary as long as will still need to support
12213# Autoconf-2.59, which quotes differently.
12214m4_define([lt_car], [[$1]])
12215m4_define([lt_cdr],
12216[m4_if([$#], 0, [m4_fatal([$0: cannot be called without arguments])],
12217       [$#], 1, [],
12218       [m4_dquote(m4_shift($@))])])
12219m4_define([lt_unquote], $1)
12220
12221
12222# lt_append(MACRO-NAME, STRING, [SEPARATOR])
12223# ------------------------------------------
12224# Redefine MACRO-NAME to hold its former content plus 'SEPARATOR''STRING'.
12225# Note that neither SEPARATOR nor STRING are expanded; they are appended
12226# to MACRO-NAME as is (leaving the expansion for when MACRO-NAME is invoked).
12227# No SEPARATOR is output if MACRO-NAME was previously undefined (different
12228# than defined and empty).
12229#
12230# This macro is needed until we can rely on Autoconf 2.62, since earlier
12231# versions of m4sugar mistakenly expanded SEPARATOR but not STRING.
12232m4_define([lt_append],
12233[m4_define([$1],
12234	   m4_ifdef([$1], [m4_defn([$1])[$3]])[$2])])
12235
12236
12237
12238# lt_combine(SEP, PREFIX-LIST, INFIX, SUFFIX1, [SUFFIX2...])
12239# ----------------------------------------------------------
12240# Produce a SEP delimited list of all paired combinations of elements of
12241# PREFIX-LIST with SUFFIX1 through SUFFIXn.  Each element of the list
12242# has the form PREFIXmINFIXSUFFIXn.
12243# Needed until we can rely on m4_combine added in Autoconf 2.62.
12244m4_define([lt_combine],
12245[m4_if(m4_eval([$# > 3]), [1],
12246       [m4_pushdef([_Lt_sep], [m4_define([_Lt_sep], m4_defn([lt_car]))])]]dnl
12247[[m4_foreach([_Lt_prefix], [$2],
12248	     [m4_foreach([_Lt_suffix],
12249		]m4_dquote(m4_dquote(m4_shift(m4_shift(m4_shift($@)))))[,
12250	[_Lt_sep([$1])[]m4_defn([_Lt_prefix])[$3]m4_defn([_Lt_suffix])])])])])
12251
12252
12253# lt_if_append_uniq(MACRO-NAME, VARNAME, [SEPARATOR], [UNIQ], [NOT-UNIQ])
12254# -----------------------------------------------------------------------
12255# Iff MACRO-NAME does not yet contain VARNAME, then append it (delimited
12256# by SEPARATOR if supplied) and expand UNIQ, else NOT-UNIQ.
12257m4_define([lt_if_append_uniq],
12258[m4_ifdef([$1],
12259	  [m4_if(m4_index([$3]m4_defn([$1])[$3], [$3$2$3]), [-1],
12260		 [lt_append([$1], [$2], [$3])$4],
12261		 [$5])],
12262	  [lt_append([$1], [$2], [$3])$4])])
12263
12264
12265# lt_dict_add(DICT, KEY, VALUE)
12266# -----------------------------
12267m4_define([lt_dict_add],
12268[m4_define([$1($2)], [$3])])
12269
12270
12271# lt_dict_add_subkey(DICT, KEY, SUBKEY, VALUE)
12272# --------------------------------------------
12273m4_define([lt_dict_add_subkey],
12274[m4_define([$1($2:$3)], [$4])])
12275
12276
12277# lt_dict_fetch(DICT, KEY, [SUBKEY])
12278# ----------------------------------
12279m4_define([lt_dict_fetch],
12280[m4_ifval([$3],
12281	m4_ifdef([$1($2:$3)], [m4_defn([$1($2:$3)])]),
12282    m4_ifdef([$1($2)], [m4_defn([$1($2)])]))])
12283
12284
12285# lt_if_dict_fetch(DICT, KEY, [SUBKEY], VALUE, IF-TRUE, [IF-FALSE])
12286# -----------------------------------------------------------------
12287m4_define([lt_if_dict_fetch],
12288[m4_if(lt_dict_fetch([$1], [$2], [$3]), [$4],
12289	[$5],
12290    [$6])])
12291
12292
12293# lt_dict_filter(DICT, [SUBKEY], VALUE, [SEPARATOR], KEY, [...])
12294# --------------------------------------------------------------
12295m4_define([lt_dict_filter],
12296[m4_if([$5], [], [],
12297  [lt_join(m4_quote(m4_default([$4], [[, ]])),
12298           lt_unquote(m4_split(m4_normalize(m4_foreach(_Lt_key, lt_car([m4_shiftn(4, $@)]),
12299		      [lt_if_dict_fetch([$1], _Lt_key, [$2], [$3], [_Lt_key ])])))))])[]dnl
12300])
12301
12302# ltversion.m4 -- version numbers			-*- Autoconf -*-
12303#
12304#   Copyright (C) 2004, 2011-2019, 2021-2022 Free Software Foundation,
12305#   Inc.
12306#   Written by Scott James Remnant, 2004
12307#
12308# This file is free software; the Free Software Foundation gives
12309# unlimited permission to copy and/or distribute it, with or without
12310# modifications, as long as this notice is preserved.
12311
12312# @configure_input@
12313
12314# serial 4245 ltversion.m4
12315# This file is part of GNU Libtool
12316
12317m4_define([LT_PACKAGE_VERSION], [2.4.7])
12318m4_define([LT_PACKAGE_REVISION], [2.4.7])
12319
12320AC_DEFUN([LTVERSION_VERSION],
12321[macro_version='2.4.7'
12322macro_revision='2.4.7'
12323_LT_DECL(, macro_version, 0, [Which release of libtool.m4 was used?])
12324_LT_DECL(, macro_revision, 0)
12325])
12326
12327# lt~obsolete.m4 -- aclocal satisfying obsolete definitions.    -*-Autoconf-*-
12328#
12329#   Copyright (C) 2004-2005, 2007, 2009, 2011-2019, 2021-2022 Free
12330#   Software Foundation, Inc.
12331#   Written by Scott James Remnant, 2004.
12332#
12333# This file is free software; the Free Software Foundation gives
12334# unlimited permission to copy and/or distribute it, with or without
12335# modifications, as long as this notice is preserved.
12336
12337# serial 5 lt~obsolete.m4
12338
12339# These exist entirely to fool aclocal when bootstrapping libtool.
12340#
12341# In the past libtool.m4 has provided macros via AC_DEFUN (or AU_DEFUN),
12342# which have later been changed to m4_define as they aren't part of the
12343# exported API, or moved to Autoconf or Automake where they belong.
12344#
12345# The trouble is, aclocal is a bit thick.  It'll see the old AC_DEFUN
12346# in /usr/share/aclocal/libtool.m4 and remember it, then when it sees us
12347# using a macro with the same name in our local m4/libtool.m4 it'll
12348# pull the old libtool.m4 in (it doesn't see our shiny new m4_define
12349# and doesn't know about Autoconf macros at all.)
12350#
12351# So we provide this file, which has a silly filename so it's always
12352# included after everything else.  This provides aclocal with the
12353# AC_DEFUNs it wants, but when m4 processes it, it doesn't do anything
12354# because those macros already exist, or will be overwritten later.
12355# We use AC_DEFUN over AU_DEFUN for compatibility with aclocal-1.6.
12356#
12357# Anytime we withdraw an AC_DEFUN or AU_DEFUN, remember to add it here.
12358# Yes, that means every name once taken will need to remain here until
12359# we give up compatibility with versions before 1.7, at which point
12360# we need to keep only those names which we still refer to.
12361
12362# This is to help aclocal find these macros, as it can't see m4_define.
12363AC_DEFUN([LTOBSOLETE_VERSION], [m4_if([1])])
12364
12365m4_ifndef([AC_LIBTOOL_LINKER_OPTION],	[AC_DEFUN([AC_LIBTOOL_LINKER_OPTION])])
12366m4_ifndef([AC_PROG_EGREP],		[AC_DEFUN([AC_PROG_EGREP])])
12367m4_ifndef([_LT_AC_PROG_ECHO_BACKSLASH],	[AC_DEFUN([_LT_AC_PROG_ECHO_BACKSLASH])])
12368m4_ifndef([_LT_AC_SHELL_INIT],		[AC_DEFUN([_LT_AC_SHELL_INIT])])
12369m4_ifndef([_LT_AC_SYS_LIBPATH_AIX],	[AC_DEFUN([_LT_AC_SYS_LIBPATH_AIX])])
12370m4_ifndef([_LT_PROG_LTMAIN],		[AC_DEFUN([_LT_PROG_LTMAIN])])
12371m4_ifndef([_LT_AC_TAGVAR],		[AC_DEFUN([_LT_AC_TAGVAR])])
12372m4_ifndef([AC_LTDL_ENABLE_INSTALL],	[AC_DEFUN([AC_LTDL_ENABLE_INSTALL])])
12373m4_ifndef([AC_LTDL_PREOPEN],		[AC_DEFUN([AC_LTDL_PREOPEN])])
12374m4_ifndef([_LT_AC_SYS_COMPILER],	[AC_DEFUN([_LT_AC_SYS_COMPILER])])
12375m4_ifndef([_LT_AC_LOCK],		[AC_DEFUN([_LT_AC_LOCK])])
12376m4_ifndef([AC_LIBTOOL_SYS_OLD_ARCHIVE],	[AC_DEFUN([AC_LIBTOOL_SYS_OLD_ARCHIVE])])
12377m4_ifndef([_LT_AC_TRY_DLOPEN_SELF],	[AC_DEFUN([_LT_AC_TRY_DLOPEN_SELF])])
12378m4_ifndef([AC_LIBTOOL_PROG_CC_C_O],	[AC_DEFUN([AC_LIBTOOL_PROG_CC_C_O])])
12379m4_ifndef([AC_LIBTOOL_SYS_HARD_LINK_LOCKS], [AC_DEFUN([AC_LIBTOOL_SYS_HARD_LINK_LOCKS])])
12380m4_ifndef([AC_LIBTOOL_OBJDIR],		[AC_DEFUN([AC_LIBTOOL_OBJDIR])])
12381m4_ifndef([AC_LTDL_OBJDIR],		[AC_DEFUN([AC_LTDL_OBJDIR])])
12382m4_ifndef([AC_LIBTOOL_PROG_LD_HARDCODE_LIBPATH], [AC_DEFUN([AC_LIBTOOL_PROG_LD_HARDCODE_LIBPATH])])
12383m4_ifndef([AC_LIBTOOL_SYS_LIB_STRIP],	[AC_DEFUN([AC_LIBTOOL_SYS_LIB_STRIP])])
12384m4_ifndef([AC_PATH_MAGIC],		[AC_DEFUN([AC_PATH_MAGIC])])
12385m4_ifndef([AC_PROG_LD_GNU],		[AC_DEFUN([AC_PROG_LD_GNU])])
12386m4_ifndef([AC_PROG_LD_RELOAD_FLAG],	[AC_DEFUN([AC_PROG_LD_RELOAD_FLAG])])
12387m4_ifndef([AC_DEPLIBS_CHECK_METHOD],	[AC_DEFUN([AC_DEPLIBS_CHECK_METHOD])])
12388m4_ifndef([AC_LIBTOOL_PROG_COMPILER_NO_RTTI], [AC_DEFUN([AC_LIBTOOL_PROG_COMPILER_NO_RTTI])])
12389m4_ifndef([AC_LIBTOOL_SYS_GLOBAL_SYMBOL_PIPE], [AC_DEFUN([AC_LIBTOOL_SYS_GLOBAL_SYMBOL_PIPE])])
12390m4_ifndef([AC_LIBTOOL_PROG_COMPILER_PIC], [AC_DEFUN([AC_LIBTOOL_PROG_COMPILER_PIC])])
12391m4_ifndef([AC_LIBTOOL_PROG_LD_SHLIBS],	[AC_DEFUN([AC_LIBTOOL_PROG_LD_SHLIBS])])
12392m4_ifndef([AC_LIBTOOL_POSTDEP_PREDEP],	[AC_DEFUN([AC_LIBTOOL_POSTDEP_PREDEP])])
12393m4_ifndef([LT_AC_PROG_EGREP],		[AC_DEFUN([LT_AC_PROG_EGREP])])
12394m4_ifndef([LT_AC_PROG_SED],		[AC_DEFUN([LT_AC_PROG_SED])])
12395m4_ifndef([_LT_CC_BASENAME],		[AC_DEFUN([_LT_CC_BASENAME])])
12396m4_ifndef([_LT_COMPILER_BOILERPLATE],	[AC_DEFUN([_LT_COMPILER_BOILERPLATE])])
12397m4_ifndef([_LT_LINKER_BOILERPLATE],	[AC_DEFUN([_LT_LINKER_BOILERPLATE])])
12398m4_ifndef([_AC_PROG_LIBTOOL],		[AC_DEFUN([_AC_PROG_LIBTOOL])])
12399m4_ifndef([AC_LIBTOOL_SETUP],		[AC_DEFUN([AC_LIBTOOL_SETUP])])
12400m4_ifndef([_LT_AC_CHECK_DLFCN],		[AC_DEFUN([_LT_AC_CHECK_DLFCN])])
12401m4_ifndef([AC_LIBTOOL_SYS_DYNAMIC_LINKER],	[AC_DEFUN([AC_LIBTOOL_SYS_DYNAMIC_LINKER])])
12402m4_ifndef([_LT_AC_TAGCONFIG],		[AC_DEFUN([_LT_AC_TAGCONFIG])])
12403m4_ifndef([AC_DISABLE_FAST_INSTALL],	[AC_DEFUN([AC_DISABLE_FAST_INSTALL])])
12404m4_ifndef([_LT_AC_LANG_CXX],		[AC_DEFUN([_LT_AC_LANG_CXX])])
12405m4_ifndef([_LT_AC_LANG_F77],		[AC_DEFUN([_LT_AC_LANG_F77])])
12406m4_ifndef([_LT_AC_LANG_GCJ],		[AC_DEFUN([_LT_AC_LANG_GCJ])])
12407m4_ifndef([AC_LIBTOOL_LANG_C_CONFIG],	[AC_DEFUN([AC_LIBTOOL_LANG_C_CONFIG])])
12408m4_ifndef([_LT_AC_LANG_C_CONFIG],	[AC_DEFUN([_LT_AC_LANG_C_CONFIG])])
12409m4_ifndef([AC_LIBTOOL_LANG_CXX_CONFIG],	[AC_DEFUN([AC_LIBTOOL_LANG_CXX_CONFIG])])
12410m4_ifndef([_LT_AC_LANG_CXX_CONFIG],	[AC_DEFUN([_LT_AC_LANG_CXX_CONFIG])])
12411m4_ifndef([AC_LIBTOOL_LANG_F77_CONFIG],	[AC_DEFUN([AC_LIBTOOL_LANG_F77_CONFIG])])
12412m4_ifndef([_LT_AC_LANG_F77_CONFIG],	[AC_DEFUN([_LT_AC_LANG_F77_CONFIG])])
12413m4_ifndef([AC_LIBTOOL_LANG_GCJ_CONFIG],	[AC_DEFUN([AC_LIBTOOL_LANG_GCJ_CONFIG])])
12414m4_ifndef([_LT_AC_LANG_GCJ_CONFIG],	[AC_DEFUN([_LT_AC_LANG_GCJ_CONFIG])])
12415m4_ifndef([AC_LIBTOOL_LANG_RC_CONFIG],	[AC_DEFUN([AC_LIBTOOL_LANG_RC_CONFIG])])
12416m4_ifndef([_LT_AC_LANG_RC_CONFIG],	[AC_DEFUN([_LT_AC_LANG_RC_CONFIG])])
12417m4_ifndef([AC_LIBTOOL_CONFIG],		[AC_DEFUN([AC_LIBTOOL_CONFIG])])
12418m4_ifndef([_LT_AC_FILE_LTDLL_C],	[AC_DEFUN([_LT_AC_FILE_LTDLL_C])])
12419m4_ifndef([_LT_REQUIRED_DARWIN_CHECKS],	[AC_DEFUN([_LT_REQUIRED_DARWIN_CHECKS])])
12420m4_ifndef([_LT_AC_PROG_CXXCPP],		[AC_DEFUN([_LT_AC_PROG_CXXCPP])])
12421m4_ifndef([_LT_PREPARE_SED_QUOTE_VARS],	[AC_DEFUN([_LT_PREPARE_SED_QUOTE_VARS])])
12422m4_ifndef([_LT_PROG_ECHO_BACKSLASH],	[AC_DEFUN([_LT_PROG_ECHO_BACKSLASH])])
12423m4_ifndef([_LT_PROG_F77],		[AC_DEFUN([_LT_PROG_F77])])
12424m4_ifndef([_LT_PROG_FC],		[AC_DEFUN([_LT_PROG_FC])])
12425m4_ifndef([_LT_PROG_CXX],		[AC_DEFUN([_LT_PROG_CXX])])
12426
12427