packages feed

libffi-clib 3.5.2 → 3.6.0

raw patch · 65 files changed

+32472/−30784 lines, 65 files

Files

aclocal.m4 view
@@ -1,785 +1,2132 @@-# generated automatically by aclocal 1.18.1 -*- Autoconf -*---# Copyright (C) 1996-2025 Free Software Foundation, Inc.--# This file is free software; the Free Software Foundation-# gives unlimited permission to copy and/or distribute it,-# with or without modifications, as long as this notice is preserved.--# This program is distributed in the hope that it will be useful,-# but WITHOUT ANY WARRANTY, to the extent permitted by law; without-# even the implied warranty of MERCHANTABILITY or FITNESS FOR A-# PARTICULAR PURPOSE.--m4_ifndef([AC_CONFIG_MACRO_DIRS], [m4_defun([_AM_CONFIG_MACRO_DIRS], [])m4_defun([AC_CONFIG_MACRO_DIRS], [_AM_CONFIG_MACRO_DIRS($@)])])-# Figure out how to run the assembler.                      -*- Autoconf -*---# Copyright (C) 2001-2025 Free Software Foundation, Inc.-#-# This file is free software; the Free Software Foundation-# gives unlimited permission to copy and/or distribute it,-# with or without modifications, as long as this notice is preserved.--# AM_PROG_AS-# -----------AC_DEFUN([AM_PROG_AS],-[# By default we simply use the C compiler to build assembly code.-AC_REQUIRE([AC_PROG_CC])-test "${CCAS+set}" = set || CCAS=$CC-test "${CCASFLAGS+set}" = set || CCASFLAGS=$CFLAGS-AC_ARG_VAR([CCAS],      [assembler compiler command (defaults to CC)])-AC_ARG_VAR([CCASFLAGS], [assembler compiler flags (defaults to CFLAGS)])-_AM_IF_OPTION([no-dependencies],, [_AM_DEPENDENCIES([CCAS])])dnl-])--# AM_AUX_DIR_EXPAND                                         -*- Autoconf -*---# Copyright (C) 2001-2025 Free Software Foundation, Inc.-#-# This file is free software; the Free Software Foundation-# gives unlimited permission to copy and/or distribute it,-# with or without modifications, as long as this notice is preserved.--# For projects using AC_CONFIG_AUX_DIR([foo]), Autoconf sets-# $ac_aux_dir to '$srcdir/foo'.  In other projects, it is set to-# '$srcdir', '$srcdir/..', or '$srcdir/../..'.-#-# Of course, Automake must honor this variable whenever it calls a-# tool from the auxiliary directory.  The problem is that $srcdir (and-# therefore $ac_aux_dir as well) can be either absolute or relative,-# depending on how configure is run.  This is pretty annoying, since-# it makes $ac_aux_dir quite unusable in subdirectories: in the top-# source directory, any form will work fine, but in subdirectories a-# relative path needs to be adjusted first.-#-# $ac_aux_dir/missing-#    fails when called from a subdirectory if $ac_aux_dir is relative-# $top_srcdir/$ac_aux_dir/missing-#    fails if $ac_aux_dir is absolute,-#    fails when called from a subdirectory in a VPATH build with-#          a relative $ac_aux_dir-#-# The reason of the latter failure is that $top_srcdir and $ac_aux_dir-# are both prefixed by $srcdir.  In an in-source build this is usually-# harmless because $srcdir is '.', but things will broke when you-# start a VPATH build or use an absolute $srcdir.-#-# So we could use something similar to $top_srcdir/$ac_aux_dir/missing,-# iff we strip the leading $srcdir from $ac_aux_dir.  That would be:-#   am_aux_dir='\$(top_srcdir)/'`expr "$ac_aux_dir" : "$srcdir//*\(.*\)"`-# and then we would define $MISSING as-#   MISSING="\${SHELL} $am_aux_dir/missing"-# This will work as long as MISSING is not called from configure, because-# unfortunately $(top_srcdir) has no meaning in configure.-# However there are other variables, like CC, which are often used in-# configure, and could therefore not use this "fixed" $ac_aux_dir.-#-# Another solution, used here, is to always expand $ac_aux_dir to an-# absolute PATH.  The drawback is that using absolute paths prevent a-# configured tree to be moved without reconfiguration.--AC_DEFUN([AM_AUX_DIR_EXPAND],-[AC_REQUIRE([AC_CONFIG_AUX_DIR_DEFAULT])dnl-# Expand $ac_aux_dir to an absolute path.-am_aux_dir=`cd "$ac_aux_dir" && pwd`-])--# AM_CONDITIONAL                                            -*- Autoconf -*---# Copyright (C) 1997-2025 Free Software Foundation, Inc.-#-# This file is free software; the Free Software Foundation-# gives unlimited permission to copy and/or distribute it,-# with or without modifications, as long as this notice is preserved.--# AM_CONDITIONAL(NAME, SHELL-CONDITION)-# --------------------------------------# Define a conditional.-AC_DEFUN([AM_CONDITIONAL],-[AC_PREREQ([2.52])dnl- m4_if([$1], [TRUE],  [AC_FATAL([$0: invalid condition: $1])],-       [$1], [FALSE], [AC_FATAL([$0: invalid condition: $1])])dnl-AC_SUBST([$1_TRUE])dnl-AC_SUBST([$1_FALSE])dnl-_AM_SUBST_NOTMAKE([$1_TRUE])dnl-_AM_SUBST_NOTMAKE([$1_FALSE])dnl-m4_define([_AM_COND_VALUE_$1], [$2])dnl-if $2; then-  $1_TRUE=-  $1_FALSE='#'-else-  $1_TRUE='#'-  $1_FALSE=-fi-AC_CONFIG_COMMANDS_PRE(-[if test -z "${$1_TRUE}" && test -z "${$1_FALSE}"; then-  AC_MSG_ERROR([[conditional "$1" was never defined.-Usually this means the macro was only invoked conditionally.]])-fi])])--# Copyright (C) 1999-2025 Free Software Foundation, Inc.-#-# This file is free software; the Free Software Foundation-# gives unlimited permission to copy and/or distribute it,-# with or without modifications, as long as this notice is preserved.---# There are a few dirty hacks below to avoid letting 'AC_PROG_CC' be-# written in clear, in which case automake, when reading aclocal.m4,-# will think it sees a *use*, and therefore will trigger all it's-# C support machinery.  Also note that it means that autoscan, seeing-# CC etc. in the Makefile, will ask for an AC_PROG_CC use...---# _AM_DEPENDENCIES(NAME)-# -----------------------# See how the compiler implements dependency checking.-# NAME is "CC", "CXX", "OBJC", "OBJCXX", "UPC", or "GJC".-# We try a few techniques and use that to set a single cache variable.-#-# We don't AC_REQUIRE the corresponding AC_PROG_CC since the latter was-# modified to invoke _AM_DEPENDENCIES(CC); we would have a circular-# dependency, and given that the user is not expected to run this macro,-# just rely on AC_PROG_CC.-AC_DEFUN([_AM_DEPENDENCIES],-[AC_REQUIRE([AM_SET_DEPDIR])dnl-AC_REQUIRE([AM_OUTPUT_DEPENDENCY_COMMANDS])dnl-AC_REQUIRE([AM_MAKE_INCLUDE])dnl-AC_REQUIRE([AM_DEP_TRACK])dnl--m4_if([$1], [CC],   [depcc="$CC"   am_compiler_list=],-      [$1], [CXX],  [depcc="$CXX"  am_compiler_list=],-      [$1], [OBJC], [depcc="$OBJC" am_compiler_list='gcc3 gcc'],-      [$1], [OBJCXX], [depcc="$OBJCXX" am_compiler_list='gcc3 gcc'],-      [$1], [UPC],  [depcc="$UPC"  am_compiler_list=],-      [$1], [GCJ],  [depcc="$GCJ"  am_compiler_list='gcc3 gcc'],-                    [depcc="$$1"   am_compiler_list=])--AC_CACHE_CHECK([dependency style of $depcc],-               [am_cv_$1_dependencies_compiler_type],-[if test -z "$AMDEP_TRUE" && test -f "$am_depcomp"; then-  # We make a subdir and do the tests there.  Otherwise we can end up-  # making bogus files that we don't know about and never remove.  For-  # instance it was reported that on HP-UX the gcc test will end up-  # making a dummy file named 'D' -- because '-MD' means "put the output-  # in D".-  rm -rf conftest.dir-  mkdir conftest.dir-  # Copy depcomp to subdir because otherwise we won't find it if we're-  # using a relative directory.-  cp "$am_depcomp" conftest.dir-  cd conftest.dir-  # We will build objects and dependencies in a subdirectory because-  # it helps to detect inapplicable dependency modes.  For instance-  # both Tru64's cc and ICC support -MD to output dependencies as a-  # side effect of compilation, but ICC will put the dependencies in-  # the current directory while Tru64 will put them in the object-  # directory.-  mkdir sub--  am_cv_$1_dependencies_compiler_type=none-  if test "$am_compiler_list" = ""; then-     am_compiler_list=`sed -n ['s/^#*\([a-zA-Z0-9]*\))$/\1/p'] < ./depcomp`-  fi-  am__universal=false-  m4_case([$1], [CC],-    [case " $depcc " in #(-     *\ -arch\ *\ -arch\ *) am__universal=true ;;-     esac],-    [CXX],-    [case " $depcc " in #(-     *\ -arch\ *\ -arch\ *) am__universal=true ;;-     esac])--  for depmode in $am_compiler_list; do-    # Setup a source with many dependencies, because some compilers-    # like to wrap large dependency lists on column 80 (with \), and-    # we should not choose a depcomp mode which is confused by this.-    #-    # We need to recreate these files for each test, as the compiler may-    # overwrite some of them when testing with obscure command lines.-    # This happens at least with the AIX C compiler.-    : > sub/conftest.c-    for i in 1 2 3 4 5 6; do-      echo '#include "conftst'$i'.h"' >> sub/conftest.c-      # Using ": > sub/conftst$i.h" creates only sub/conftst1.h with-      # Solaris 10 /bin/sh.-      echo '/* dummy */' > sub/conftst$i.h-    done-    echo "${am__include} ${am__quote}sub/conftest.Po${am__quote}" > confmf--    # We check with '-c' and '-o' for the sake of the "dashmstdout"-    # mode.  It turns out that the SunPro C++ compiler does not properly-    # handle '-M -o', and we need to detect this.  Also, some Intel-    # versions had trouble with output in subdirs.-    am__obj=sub/conftest.${OBJEXT-o}-    am__minus_obj="-o $am__obj"-    case $depmode in-    gcc)-      # This depmode causes a compiler race in universal mode.-      test "$am__universal" = false || continue-      ;;-    nosideeffect)-      # After this tag, mechanisms are not by side-effect, so they'll-      # only be used when explicitly requested.-      if test "x$enable_dependency_tracking" = xyes; then-	continue-      else-	break-      fi-      ;;-    msvc7 | msvc7msys | msvisualcpp | msvcmsys)-      # This compiler won't grok '-c -o', but also, the minuso test has-      # not run yet.  These depmodes are late enough in the game, and-      # so weak that their functioning should not be impacted.-      am__obj=conftest.${OBJEXT-o}-      am__minus_obj=-      ;;-    none) break ;;-    esac-    if depmode=$depmode \-       source=sub/conftest.c object=$am__obj \-       depfile=sub/conftest.Po tmpdepfile=sub/conftest.TPo \-       $SHELL ./depcomp $depcc -c $am__minus_obj sub/conftest.c \-         >/dev/null 2>conftest.err &&-       grep sub/conftst1.h sub/conftest.Po > /dev/null 2>&1 &&-       grep sub/conftst6.h sub/conftest.Po > /dev/null 2>&1 &&-       grep $am__obj sub/conftest.Po > /dev/null 2>&1 &&-       ${MAKE-make} -s -f confmf > /dev/null 2>&1; then-      # icc doesn't choke on unknown options, it will just issue warnings-      # or remarks (even with -Werror).  So we grep stderr for any message-      # that says an option was ignored or not supported.-      # When given -MP, icc 7.0 and 7.1 complain thus:-      #   icc: Command line warning: ignoring option '-M'; no argument required-      # The diagnosis changed in icc 8.0:-      #   icc: Command line remark: option '-MP' not supported-      if (grep 'ignoring option' conftest.err ||-          grep 'not supported' conftest.err) >/dev/null 2>&1; then :; else-        am_cv_$1_dependencies_compiler_type=$depmode-        break-      fi-    fi-  done--  cd ..-  rm -rf conftest.dir-else-  am_cv_$1_dependencies_compiler_type=none-fi-])-AC_SUBST([$1DEPMODE], [depmode=$am_cv_$1_dependencies_compiler_type])-AM_CONDITIONAL([am__fastdep$1], [-  test "x$enable_dependency_tracking" != xno \-  && test "$am_cv_$1_dependencies_compiler_type" = gcc3])-])---# AM_SET_DEPDIR-# --------------# Choose a directory name for dependency files.-# This macro is AC_REQUIREd in _AM_DEPENDENCIES.-AC_DEFUN([AM_SET_DEPDIR],-[AC_REQUIRE([AM_SET_LEADING_DOT])dnl-AC_SUBST([DEPDIR], ["${am__leading_dot}deps"])dnl-])---# AM_DEP_TRACK-# -------------AC_DEFUN([AM_DEP_TRACK],-[AC_ARG_ENABLE([dependency-tracking], [dnl-AS_HELP_STRING(-  [--enable-dependency-tracking],-  [do not reject slow dependency extractors])-AS_HELP_STRING(-  [--disable-dependency-tracking],-  [speeds up one-time build])])-if test "x$enable_dependency_tracking" != xno; then-  am_depcomp="$ac_aux_dir/depcomp"-  AMDEPBACKSLASH='\'-  am__nodep='_no'-fi-AM_CONDITIONAL([AMDEP], [test "x$enable_dependency_tracking" != xno])-AC_SUBST([AMDEPBACKSLASH])dnl-_AM_SUBST_NOTMAKE([AMDEPBACKSLASH])dnl-AC_SUBST([am__nodep])dnl-_AM_SUBST_NOTMAKE([am__nodep])dnl-])--# Generate code to set up dependency tracking.              -*- Autoconf -*---# Copyright (C) 1999-2025 Free Software Foundation, Inc.-#-# This file is free software; the Free Software Foundation-# gives unlimited permission to copy and/or distribute it,-# with or without modifications, as long as this notice is preserved.--# _AM_OUTPUT_DEPENDENCY_COMMANDS-# -------------------------------AC_DEFUN([_AM_OUTPUT_DEPENDENCY_COMMANDS],-[{-  # Older Autoconf quotes --file arguments for eval, but not when files-  # are listed without --file.  Let's play safe and only enable the eval-  # if we detect the quoting.-  # TODO: see whether this extra hack can be removed once we start-  # requiring Autoconf 2.70 or later.-  AS_CASE([$CONFIG_FILES],-          [*\'*], [eval set x "$CONFIG_FILES"],-          [*], [set x $CONFIG_FILES])-  shift-  # Used to flag and report bootstrapping failures.-  am_rc=0-  for am_mf-  do-    # Strip MF so we end up with the name of the file.-    am_mf=`AS_ECHO(["$am_mf"]) | sed -e 's/:.*$//'`-    # Check whether this is an Automake generated Makefile which includes-    # dependency-tracking related rules and includes.-    # Grep'ing the whole file directly is not great: AIX grep has a line-    # limit of 2048, but all sed's we know have understand at least 4000.-    sed -n 's,^am--depfiles:.*,X,p' "$am_mf" | grep X >/dev/null 2>&1 \-      || continue-    am_dirpart=`AS_DIRNAME(["$am_mf"])`-    am_filepart=`AS_BASENAME(["$am_mf"])`-    AM_RUN_LOG([cd "$am_dirpart" \-      && sed -e '/# am--include-marker/d' "$am_filepart" \-        | $MAKE -f - am--depfiles]) || am_rc=$?-  done-  if test $am_rc -ne 0; then-    AC_MSG_FAILURE([Something went wrong bootstrapping makefile fragments-    for automatic dependency tracking.  If GNU make was not used, consider-    re-running the configure script with MAKE="gmake" (or whatever is-    necessary).  You can also try re-running configure with the-    '--disable-dependency-tracking' option to at least be able to build-    the package (albeit without support for automatic dependency tracking).])-  fi-  AS_UNSET([am_dirpart])-  AS_UNSET([am_filepart])-  AS_UNSET([am_mf])-  AS_UNSET([am_rc])-  rm -f conftest-deps.mk-}-])# _AM_OUTPUT_DEPENDENCY_COMMANDS---# AM_OUTPUT_DEPENDENCY_COMMANDS-# ------------------------------# This macro should only be invoked once -- use via AC_REQUIRE.-#-# This code is only required when automatic dependency tracking is enabled.-# This creates each '.Po' and '.Plo' makefile fragment that we'll need in-# order to bootstrap the dependency handling code.-AC_DEFUN([AM_OUTPUT_DEPENDENCY_COMMANDS],-[AC_CONFIG_COMMANDS([depfiles],-     [test x"$AMDEP_TRUE" != x"" || _AM_OUTPUT_DEPENDENCY_COMMANDS],-     [AMDEP_TRUE="$AMDEP_TRUE" MAKE="${MAKE-make}"])])--# Do all the work for Automake.                             -*- Autoconf -*---# Copyright (C) 1996-2025 Free Software Foundation, Inc.-#-# This file is free software; the Free Software Foundation-# gives unlimited permission to copy and/or distribute it,-# with or without modifications, as long as this notice is preserved.--# This macro actually does too much.  Some checks are only needed if-# your package does certain things.  But this isn't really a big deal.--dnl Redefine AC_PROG_CC to automatically invoke _AM_PROG_CC_C_O.-m4_define([AC_PROG_CC],-m4_defn([AC_PROG_CC])-[_AM_PROG_CC_C_O-])--# AM_INIT_AUTOMAKE(PACKAGE, VERSION, [NO-DEFINE])-# AM_INIT_AUTOMAKE([OPTIONS])-# ------------------------------------------------# The call with PACKAGE and VERSION arguments is the old style-# call (pre autoconf-2.50), which is being phased out.  PACKAGE-# and VERSION should now be passed to AC_INIT and removed from-# the call to AM_INIT_AUTOMAKE.-# We support both call styles for the transition.  After-# the next Automake release, Autoconf can make the AC_INIT-# arguments mandatory, and then we can depend on a new Autoconf-# release and drop the old call support.-AC_DEFUN([AM_INIT_AUTOMAKE],-[AC_PREREQ([2.65])dnl-m4_ifdef([_$0_ALREADY_INIT],-  [m4_fatal([$0 expanded multiple times-]m4_defn([_$0_ALREADY_INIT]))],-  [m4_define([_$0_ALREADY_INIT], m4_expansion_stack)])dnl-dnl Autoconf wants to disallow AM_ names.  We explicitly allow-dnl the ones we care about.-m4_pattern_allow([^AM_[A-Z]+FLAGS$])dnl-AC_REQUIRE([AM_SET_CURRENT_AUTOMAKE_VERSION])dnl-AC_REQUIRE([AC_PROG_INSTALL])dnl-if test "`cd $srcdir && pwd`" != "`pwd`"; then-  # Use -I$(srcdir) only when $(srcdir) != ., so that make's output-  # is not polluted with repeated "-I."-  AC_SUBST([am__isrc], [' -I$(srcdir)'])_AM_SUBST_NOTMAKE([am__isrc])dnl-  # test to see if srcdir already configured-  if test -f $srcdir/config.status; then-    AC_MSG_ERROR([source directory already configured; run "make distclean" there first])-  fi-fi--# test whether we have cygpath-if test -z "$CYGPATH_W"; then-  if (cygpath --version) >/dev/null 2>/dev/null; then-    CYGPATH_W='cygpath -w'-  else-    CYGPATH_W=echo-  fi-fi-AC_SUBST([CYGPATH_W])--# Define the identity of the package.-dnl Distinguish between old-style and new-style calls.-m4_ifval([$2],-[AC_DIAGNOSE([obsolete],-             [$0: two- and three-arguments forms are deprecated.])-m4_ifval([$3], [_AM_SET_OPTION([no-define])])dnl- AC_SUBST([PACKAGE], [$1])dnl- AC_SUBST([VERSION], [$2])],-[_AM_SET_OPTIONS([$1])dnl-dnl Diagnose old-style AC_INIT with new-style AM_AUTOMAKE_INIT.-m4_if(-  m4_ifset([AC_PACKAGE_NAME], [ok]):m4_ifset([AC_PACKAGE_VERSION], [ok]),-  [ok:ok],,-  [m4_fatal([AC_INIT should be called with package and version arguments])])dnl- AC_SUBST([PACKAGE], ['AC_PACKAGE_TARNAME'])dnl- AC_SUBST([VERSION], ['AC_PACKAGE_VERSION'])])dnl--_AM_IF_OPTION([no-define],,-[AC_DEFINE_UNQUOTED([PACKAGE], ["$PACKAGE"], [Name of package])- AC_DEFINE_UNQUOTED([VERSION], ["$VERSION"], [Version number of package])])dnl--# Some tools Automake needs.-AC_REQUIRE([AM_SANITY_CHECK])dnl-AC_REQUIRE([AC_ARG_PROGRAM])dnl-AM_MISSING_PROG([ACLOCAL], [aclocal-${am__api_version}])-AM_MISSING_PROG([AUTOCONF], [autoconf])-AM_MISSING_PROG([AUTOMAKE], [automake-${am__api_version}])-AM_MISSING_PROG([AUTOHEADER], [autoheader])-AM_MISSING_PROG([MAKEINFO], [makeinfo])-AC_REQUIRE([AM_PROG_INSTALL_SH])dnl-AC_REQUIRE([AM_PROG_INSTALL_STRIP])dnl-AC_REQUIRE([AC_PROG_MKDIR_P])dnl-# For better backward compatibility.  To be removed once Automake 1.9.x-# dies out for good.  For more background, see:-# <https://lists.gnu.org/archive/html/automake/2012-07/msg00001.html>-# <https://lists.gnu.org/archive/html/automake/2012-07/msg00014.html>-AC_SUBST([mkdir_p], ['$(MKDIR_P)'])-# We need awk for the "check" target (and possibly the TAP driver).  The-# system "awk" is bad on some platforms.-AC_REQUIRE([AC_PROG_AWK])dnl-AC_REQUIRE([AC_PROG_MAKE_SET])dnl-AC_REQUIRE([AM_SET_LEADING_DOT])dnl-_AM_IF_OPTION([tar-ustar], [_AM_PROG_TAR([ustar])],-  [_AM_IF_OPTION([tar-pax], [_AM_PROG_TAR([pax])],-    [_AM_IF_OPTION([tar-v7], [_AM_PROG_TAR([v7])],-      [_AM_PROG_TAR([ustar])])])])-_AM_IF_OPTION([no-dependencies],,-[AC_PROVIDE_IFELSE([AC_PROG_CC],-		  [_AM_DEPENDENCIES([CC])],-		  [m4_define([AC_PROG_CC],-			     m4_defn([AC_PROG_CC])[_AM_DEPENDENCIES([CC])])])dnl-AC_PROVIDE_IFELSE([AC_PROG_CXX],-		  [_AM_DEPENDENCIES([CXX])],-		  [m4_define([AC_PROG_CXX],-			     m4_defn([AC_PROG_CXX])[_AM_DEPENDENCIES([CXX])])])dnl-AC_PROVIDE_IFELSE([AC_PROG_OBJC],-		  [_AM_DEPENDENCIES([OBJC])],-		  [m4_define([AC_PROG_OBJC],-			     m4_defn([AC_PROG_OBJC])[_AM_DEPENDENCIES([OBJC])])])dnl-AC_PROVIDE_IFELSE([AC_PROG_OBJCXX],-		  [_AM_DEPENDENCIES([OBJCXX])],-		  [m4_define([AC_PROG_OBJCXX],-			     m4_defn([AC_PROG_OBJCXX])[_AM_DEPENDENCIES([OBJCXX])])])dnl-])-# Variables for tags utilities; see am/tags.am-if test -z "$CTAGS"; then-  CTAGS=ctags-fi-AC_SUBST([CTAGS])-if test -z "$ETAGS"; then-  ETAGS=etags-fi-AC_SUBST([ETAGS])-if test -z "$CSCOPE"; then-  CSCOPE=cscope-fi-AC_SUBST([CSCOPE])--AC_REQUIRE([_AM_SILENT_RULES])dnl-dnl The testsuite driver may need to know about EXEEXT, so add the-dnl 'am__EXEEXT' conditional if _AM_COMPILER_EXEEXT was seen.  This-dnl macro is hooked onto _AC_COMPILER_EXEEXT early, see below.-AC_CONFIG_COMMANDS_PRE(dnl-[m4_provide_if([_AM_COMPILER_EXEEXT],-  [AM_CONDITIONAL([am__EXEEXT], [test -n "$EXEEXT"])])])dnl--AC_REQUIRE([_AM_PROG_RM_F])-AC_REQUIRE([_AM_PROG_XARGS_N])--dnl The trailing newline in this macro's definition is deliberate, for-dnl backward compatibility and to allow trailing 'dnl'-style comments-dnl after the AM_INIT_AUTOMAKE invocation. See automake bug#16841.-])--dnl Hook into '_AC_COMPILER_EXEEXT' early to learn its expansion.  Do not-dnl add the conditional right here, as _AC_COMPILER_EXEEXT may be further-dnl mangled by Autoconf and run in a shell conditional statement.-m4_define([_AC_COMPILER_EXEEXT],-m4_defn([_AC_COMPILER_EXEEXT])[m4_provide([_AM_COMPILER_EXEEXT])])--# When config.status generates a header, we must update the stamp-h file.-# This file resides in the same directory as the config header-# that is generated.  The stamp files are numbered to have different names.--# Autoconf calls _AC_AM_CONFIG_HEADER_HOOK (when defined) in the-# loop where config.status creates the headers, so we can generate-# our stamp files there.-AC_DEFUN([_AC_AM_CONFIG_HEADER_HOOK],-[# Compute $1's index in $config_headers.-_am_arg=$1-_am_stamp_count=1-for _am_header in $config_headers :; do-  case $_am_header in-    $_am_arg | $_am_arg:* )-      break ;;-    * )-      _am_stamp_count=`expr $_am_stamp_count + 1` ;;-  esac-done-echo "timestamp for $_am_arg" >`AS_DIRNAME(["$_am_arg"])`/stamp-h[]$_am_stamp_count])--# Copyright (C) 2003-2025 Free Software Foundation, Inc.-#-# This file is free software; the Free Software Foundation-# gives unlimited permission to copy and/or distribute it,-# with or without modifications, as long as this notice is preserved.--# Check whether the underlying file-system supports filenames-# with a leading dot.  For instance MS-DOS doesn't.-AC_DEFUN([AM_SET_LEADING_DOT],-[rm -rf .tst 2>/dev/null-mkdir .tst 2>/dev/null-if test -d .tst; then-  am__leading_dot=.-else-  am__leading_dot=_-fi-rmdir .tst 2>/dev/null-AC_SUBST([am__leading_dot])])--# Add --enable-maintainer-mode option to configure.         -*- Autoconf -*--# From Jim Meyering--# Copyright (C) 1996-2025 Free Software Foundation, Inc.-#-# This file is free software; the Free Software Foundation-# gives unlimited permission to copy and/or distribute it,-# with or without modifications, as long as this notice is preserved.--# AM_MAINTAINER_MODE([DEFAULT-MODE])-# -----------------------------------# Control maintainer-specific portions of Makefiles.-# Default is to disable them, unless 'enable' is passed literally.-# For symmetry, 'disable' may be passed as well.  Anyway, the user-# can override the default with the --enable/--disable switch.-AC_DEFUN([AM_MAINTAINER_MODE],-[m4_case(m4_default([$1], [disable]),-       [enable], [m4_define([am_maintainer_other], [disable])],-       [disable], [m4_define([am_maintainer_other], [enable])],-       [m4_define([am_maintainer_other], [enable])-        m4_warn([syntax], [unexpected argument to AM@&t@_MAINTAINER_MODE: $1])])-AC_MSG_CHECKING([whether to enable maintainer-specific portions of Makefiles])-  dnl maintainer-mode's default is 'disable' unless 'enable' is passed-  AC_ARG_ENABLE([maintainer-mode],-    [AS_HELP_STRING([--]am_maintainer_other[-maintainer-mode],-      am_maintainer_other[ make rules and dependencies not useful-      (and sometimes confusing) to the casual installer])],-    [USE_MAINTAINER_MODE=$enableval],-    [USE_MAINTAINER_MODE=]m4_if(am_maintainer_other, [enable], [no], [yes]))-  AC_MSG_RESULT([$USE_MAINTAINER_MODE])-  AM_CONDITIONAL([MAINTAINER_MODE], [test $USE_MAINTAINER_MODE = yes])-  MAINT=$MAINTAINER_MODE_TRUE-  AC_SUBST([MAINT])dnl-]-)--# Check to see how 'make' treats includes.	            -*- Autoconf -*---# Copyright (C) 2001-2025 Free Software Foundation, Inc.-#-# This file is free software; the Free Software Foundation-# gives unlimited permission to copy and/or distribute it,-# with or without modifications, as long as this notice is preserved.--# AM_MAKE_INCLUDE()-# ------------------# Check whether make has an 'include' directive that can support all-# the idioms we need for our automatic dependency tracking code.-AC_DEFUN([AM_MAKE_INCLUDE],-[AC_MSG_CHECKING([whether ${MAKE-make} supports the include directive])-cat > confinc.mk << 'END'-am__doit:-	@echo this is the am__doit target >confinc.out-.PHONY: am__doit-END-am__include="#"-am__quote=-# BSD make does it like this.-echo '.include "confinc.mk" # ignored' > confmf.BSD-# Other make implementations (GNU, Solaris 10, AIX) do it like this.-echo 'include confinc.mk # ignored' > confmf.GNU-_am_result=no-for s in GNU BSD; do-  AM_RUN_LOG([${MAKE-make} -f confmf.$s && cat confinc.out])-  AS_CASE([$?:`cat confinc.out 2>/dev/null`],-      ['0:this is the am__doit target'],-      [AS_CASE([$s],-          [BSD], [am__include='.include' am__quote='"'],-          [am__include='include' am__quote=''])])-  if test "$am__include" != "#"; then-    _am_result="yes ($s style)"-    break-  fi-done-rm -f confinc.* confmf.*-AC_MSG_RESULT([${_am_result}])-AC_SUBST([am__include])])-AC_SUBST([am__quote])])--# Helper functions for option handling.                     -*- Autoconf -*---# Copyright (C) 2001-2025 Free Software Foundation, Inc.-#-# This file is free software; the Free Software Foundation-# gives unlimited permission to copy and/or distribute it,-# with or without modifications, as long as this notice is preserved.--# _AM_MANGLE_OPTION(NAME)-# ------------------------AC_DEFUN([_AM_MANGLE_OPTION],-[[_AM_OPTION_]m4_bpatsubst($1, [[^a-zA-Z0-9_]], [_])])--# _AM_SET_OPTION(NAME)-# ---------------------# Set option NAME.  Presently that only means defining a flag for this option.-AC_DEFUN([_AM_SET_OPTION],-[m4_define(_AM_MANGLE_OPTION([$1]), [1])])--# _AM_SET_OPTIONS(OPTIONS)-# -------------------------# OPTIONS is a space-separated list of Automake options.-AC_DEFUN([_AM_SET_OPTIONS],-[m4_foreach_w([_AM_Option], [$1], [_AM_SET_OPTION(_AM_Option)])])--# _AM_IF_OPTION(OPTION, IF-SET, [IF-NOT-SET])-# --------------------------------------------# Execute IF-SET if OPTION is set, IF-NOT-SET otherwise.-AC_DEFUN([_AM_IF_OPTION],-[m4_ifset(_AM_MANGLE_OPTION([$1]), [$2], [$3])])--# Copyright (C) 1999-2025 Free Software Foundation, Inc.-#-# This file is free software; the Free Software Foundation-# gives unlimited permission to copy and/or distribute it,-# with or without modifications, as long as this notice is preserved.--# _AM_PROG_CC_C_O-# ----------------# Like AC_PROG_CC_C_O, but changed for automake.  We rewrite AC_PROG_CC-# to automatically call this.-AC_DEFUN([_AM_PROG_CC_C_O],-[AC_REQUIRE([AM_AUX_DIR_EXPAND])dnl-AC_REQUIRE_AUX_FILE([compile])dnl-AC_LANG_PUSH([C])dnl-AC_CACHE_CHECK(-  [whether $CC understands -c and -o together],-  [am_cv_prog_cc_c_o],-  [AC_LANG_CONFTEST([AC_LANG_PROGRAM([])])-  # Make sure it works both with $CC and with simple cc.-  # Following AC_PROG_CC_C_O, we do the test twice because some-  # compilers refuse to overwrite an existing .o file with -o,-  # though they will create one.-  am_cv_prog_cc_c_o=yes-  for am_i in 1 2; do-    if AM_RUN_LOG([$CC -c conftest.$ac_ext -o conftest2.$ac_objext]) \-         && test -f conftest2.$ac_objext; then-      : OK-    else-      am_cv_prog_cc_c_o=no-      break-    fi-  done-  # aligned with autoconf, so not including core; see bug#72225.-  rm -f -r a.out a.exe b.out conftest.$ac_ext conftest.$ac_objext \-    conftest.dSYM conftest1.$ac_ext conftest1.$ac_objext conftest1.dSYM \-    conftest2.$ac_ext conftest2.$ac_objext conftest2.dSYM-  unset am_i])-if test "$am_cv_prog_cc_c_o" != yes; then-   # Losing compiler, so override with the script.-   # FIXME: It is wrong to rewrite CC.-   # But if we don't then we get into trouble of one sort or another.-   # A longer-term fix would be to have automake use am__CC in this case,-   # and then we could set am__CC="\$(top_srcdir)/compile \$(CC)"-   CC="$am_aux_dir/compile $CC"-fi-AC_LANG_POP([C])])--# For backward compatibility.-AC_DEFUN_ONCE([AM_PROG_CC_C_O], [AC_REQUIRE([AC_PROG_CC])])--# Copyright (C) 2001-2025 Free Software Foundation, Inc.-#-# This file is free software; the Free Software Foundation-# gives unlimited permission to copy and/or distribute it,-# with or without modifications, as long as this notice is preserved.--# AM_RUN_LOG(COMMAND)-# --------------------# Run COMMAND, save the exit status in ac_status, and log it.-# (This has been adapted from Autoconf's _AC_RUN_LOG macro.)-AC_DEFUN([AM_RUN_LOG],-[{ echo "$as_me:$LINENO: $1" >&AS_MESSAGE_LOG_FD-   ($1) >&AS_MESSAGE_LOG_FD 2>&AS_MESSAGE_LOG_FD-   ac_status=$?-   echo "$as_me:$LINENO: \$? = $ac_status" >&AS_MESSAGE_LOG_FD-   (exit $ac_status); }])--# Copyright (C) 2006-2025 Free Software Foundation, Inc.-#-# This file is free software; the Free Software Foundation-# gives unlimited permission to copy and/or distribute it,-# with or without modifications, as long as this notice is preserved.--# _AM_SUBST_NOTMAKE(VARIABLE)-# ----------------------------# Prevent Automake from outputting VARIABLE = @VARIABLE@ in Makefile.in.-# This macro is traced by Automake.-AC_DEFUN([_AM_SUBST_NOTMAKE])--# AM_SUBST_NOTMAKE(VARIABLE)-# ---------------------------# Public sister of _AM_SUBST_NOTMAKE.-AC_DEFUN([AM_SUBST_NOTMAKE], [_AM_SUBST_NOTMAKE($@)])--m4_include([m4/asmcfi.m4])-m4_include([m4/ax_cc_maxopt.m4])-m4_include([m4/ax_cflags_warn_all.m4])-m4_include([m4/ax_check_compile_flag.m4])-m4_include([m4/ax_compiler_vendor.m4])-m4_include([m4/ax_configure_args.m4])-m4_include([m4/ax_enable_builddir.m4])-m4_include([m4/ax_gcc_archflag.m4])-m4_include([m4/ax_gcc_x86_cpuid.m4])-m4_include([m4/ax_prepend_flag.m4])-m4_include([m4/ax_require_defined.m4])-m4_include([m4/libtool.m4])-m4_include([m4/lt_undescore.m4])+# generated automatically by aclocal 1.16.5 -*- Autoconf -*-++# Copyright (C) 1996-2021 Free Software Foundation, Inc.++# This file is free software; the Free Software Foundation+# gives unlimited permission to copy and/or distribute it,+# with or without modifications, as long as this notice is preserved.++# This program is distributed in the hope that it will be useful,+# but WITHOUT ANY WARRANTY, to the extent permitted by law; without+# even the implied warranty of MERCHANTABILITY or FITNESS FOR A+# PARTICULAR PURPOSE.++m4_ifndef([AC_CONFIG_MACRO_DIRS], [m4_defun([_AM_CONFIG_MACRO_DIRS], [])m4_defun([AC_CONFIG_MACRO_DIRS], [_AM_CONFIG_MACRO_DIRS($@)])])+m4_ifndef([AC_AUTOCONF_VERSION],+  [m4_copy([m4_PACKAGE_VERSION], [AC_AUTOCONF_VERSION])])dnl+m4_if(m4_defn([AC_AUTOCONF_VERSION]), [2.71],,+[m4_warning([this file was generated for autoconf 2.71.+You have another version of autoconf.  It may work, but is not guaranteed to.+If you have problems, you may need to regenerate the build system entirely.+To do so, use the procedure documented by the package, typically 'autoreconf'.])])++# ltdl.m4 - Configure ltdl for the target system. -*-Autoconf-*-+#+#   Copyright (C) 1999-2008, 2011-2019, 2021-2022 Free Software+#   Foundation, Inc.+#   Written by Thomas Tanner, 1999+#+# This file is free software; the Free Software Foundation gives+# unlimited permission to copy and/or distribute it, with or without+# modifications, as long as this notice is preserved.++# serial 21 LTDL_INIT++# LT_CONFIG_LTDL_DIR(DIRECTORY, [LTDL-MODE])+# ------------------------------------------+# DIRECTORY contains the libltdl sources.  It is okay to call this+# function multiple times, as long as the same DIRECTORY is always given.+AC_DEFUN([LT_CONFIG_LTDL_DIR],+[AC_BEFORE([$0], [LTDL_INIT])+_$0($*)+])# LT_CONFIG_LTDL_DIR++# We break this out into a separate macro, so that we can call it safely+# internally without being caught accidentally by the sed scan in libtoolize.+m4_defun([_LT_CONFIG_LTDL_DIR],+[dnl remove trailing slashes+m4_pushdef([_ARG_DIR], m4_bpatsubst([$1], [/*$]))+m4_case(_LTDL_DIR,+	[], [dnl only set lt_ltdl_dir if _ARG_DIR is not simply '.'+	     m4_if(_ARG_DIR, [.],+	             [],+		 [m4_define([_LTDL_DIR], _ARG_DIR)+	          _LT_SHELL_INIT([lt_ltdl_dir=']_ARG_DIR['])])],+    [m4_if(_ARG_DIR, _LTDL_DIR,+	    [],+	[m4_fatal([multiple libltdl directories: ']_LTDL_DIR[', ']_ARG_DIR['])])])+m4_popdef([_ARG_DIR])+])# _LT_CONFIG_LTDL_DIR++# Initialise:+m4_define([_LTDL_DIR], [])+++# _LT_BUILD_PREFIX+# ----------------+# If Autoconf is new enough, expand to '$(top_build_prefix)', otherwise+# to '$(top_builddir)/'.+m4_define([_LT_BUILD_PREFIX],+[m4_ifdef([AC_AUTOCONF_VERSION],+   [m4_if(m4_version_compare(m4_defn([AC_AUTOCONF_VERSION]), [2.62]),+	  [-1], [m4_ifdef([_AC_HAVE_TOP_BUILD_PREFIX],+			  [$(top_build_prefix)],+			  [$(top_builddir)/])],+	  [$(top_build_prefix)])],+   [$(top_builddir)/])[]dnl+])+++# LTDL_CONVENIENCE+# ----------------+# sets LIBLTDL to the link flags for the libltdl convenience library and+# LTDLINCL to the include flags for the libltdl header and adds+# --enable-ltdl-convenience to the configure arguments.  Note that+# AC_CONFIG_SUBDIRS is not called here.  LIBLTDL will be prefixed with+# '$(top_build_prefix)' if available, otherwise with '$(top_builddir)/',+# and LTDLINCL will be prefixed with '$(top_srcdir)/' (note the single+# quotes!).  If your package is not flat and you're not using automake,+# define top_build_prefix, top_builddir, and top_srcdir appropriately+# in your Makefiles.+AC_DEFUN([LTDL_CONVENIENCE],+[AC_BEFORE([$0], [LTDL_INIT])dnl+dnl Although the argument is deprecated and no longer documented,+dnl LTDL_CONVENIENCE used to take a DIRECTORY orgument, if we have one+dnl here make sure it is the same as any other declaration of libltdl's+dnl location!  This also ensures lt_ltdl_dir is set when configure.ac is+dnl not yet using an explicit LT_CONFIG_LTDL_DIR.+m4_ifval([$1], [_LT_CONFIG_LTDL_DIR([$1])])dnl+_$0()+])# LTDL_CONVENIENCE++# AC_LIBLTDL_CONVENIENCE accepted a directory argument in older libtools,+# now we have LT_CONFIG_LTDL_DIR:+AU_DEFUN([AC_LIBLTDL_CONVENIENCE],+[_LT_CONFIG_LTDL_DIR([m4_default([$1], [libltdl])])+_LTDL_CONVENIENCE])++dnl aclocal-1.4 backwards compatibility:+dnl AC_DEFUN([AC_LIBLTDL_CONVENIENCE], [])+++# _LTDL_CONVENIENCE+# -----------------+# Code shared by LTDL_CONVENIENCE and LTDL_INIT([convenience]).+m4_defun([_LTDL_CONVENIENCE],+[case $enable_ltdl_convenience in+  no) AC_MSG_ERROR([this package needs a convenience libltdl]) ;;+  "") enable_ltdl_convenience=yes+      ac_configure_args="$ac_configure_args --enable-ltdl-convenience" ;;+esac+LIBLTDL='_LT_BUILD_PREFIX'"${lt_ltdl_dir+$lt_ltdl_dir/}libltdlc.la"+LTDLDEPS=$LIBLTDL+LTDLINCL='-I$(top_srcdir)'"${lt_ltdl_dir+/$lt_ltdl_dir}"++AC_SUBST([LIBLTDL])+AC_SUBST([LTDLDEPS])+AC_SUBST([LTDLINCL])++# For backwards non-gettext consistent compatibility...+INCLTDL=$LTDLINCL+AC_SUBST([INCLTDL])+])# _LTDL_CONVENIENCE+++# LTDL_INSTALLABLE+# ----------------+# sets LIBLTDL to the link flags for the libltdl installable library+# and LTDLINCL to the include flags for the libltdl header and adds+# --enable-ltdl-install to the configure arguments.  Note that+# AC_CONFIG_SUBDIRS is not called from here.  If an installed libltdl+# is not found, LIBLTDL will be prefixed with '$(top_build_prefix)' if+# available, otherwise with '$(top_builddir)/', and LTDLINCL will be+# prefixed with '$(top_srcdir)/' (note the single quotes!).  If your+# package is not flat and you're not using automake, define top_build_prefix,+# top_builddir, and top_srcdir appropriately in your Makefiles.+# In the future, this macro may have to be called after LT_INIT.+AC_DEFUN([LTDL_INSTALLABLE],+[AC_BEFORE([$0], [LTDL_INIT])dnl+dnl Although the argument is deprecated and no longer documented,+dnl LTDL_INSTALLABLE used to take a DIRECTORY orgument, if we have one+dnl here make sure it is the same as any other declaration of libltdl's+dnl location!  This also ensures lt_ltdl_dir is set when configure.ac is+dnl not yet using an explicit LT_CONFIG_LTDL_DIR.+m4_ifval([$1], [_LT_CONFIG_LTDL_DIR([$1])])dnl+_$0()+])# LTDL_INSTALLABLE++# AC_LIBLTDL_INSTALLABLE accepted a directory argument in older libtools,+# now we have LT_CONFIG_LTDL_DIR:+AU_DEFUN([AC_LIBLTDL_INSTALLABLE],+[_LT_CONFIG_LTDL_DIR([m4_default([$1], [libltdl])])+_LTDL_INSTALLABLE])++dnl aclocal-1.4 backwards compatibility:+dnl AC_DEFUN([AC_LIBLTDL_INSTALLABLE], [])+++# _LTDL_INSTALLABLE+# -----------------+# Code shared by LTDL_INSTALLABLE and LTDL_INIT([installable]).+m4_defun([_LTDL_INSTALLABLE],+[if test -f "$prefix/lib/libltdl.la"; then+  lt_save_LDFLAGS=$LDFLAGS+  LDFLAGS="-L$prefix/lib $LDFLAGS"+  AC_CHECK_LIB([ltdl], [lt_dlinit], [lt_lib_ltdl=yes])+  LDFLAGS=$lt_save_LDFLAGS+  if test yes = "${lt_lib_ltdl-no}"; then+    if test yes != "$enable_ltdl_install"; then+      # Don't overwrite $prefix/lib/libltdl.la without --enable-ltdl-install+      AC_MSG_WARN([not overwriting libltdl at $prefix, force with '--enable-ltdl-install'])+      enable_ltdl_install=no+    fi+  elif test no = "$enable_ltdl_install"; then+    AC_MSG_WARN([libltdl not installed, but installation disabled])+  fi+fi++# If configure.ac declared an installable ltdl, and the user didn't override+# with --disable-ltdl-install, we will install the shipped libltdl.+case $enable_ltdl_install in+  no) ac_configure_args="$ac_configure_args --enable-ltdl-install=no"+      LIBLTDL=-lltdl+      LTDLDEPS=+      LTDLINCL=+      ;;+  *)  enable_ltdl_install=yes+      ac_configure_args="$ac_configure_args --enable-ltdl-install"+      LIBLTDL='_LT_BUILD_PREFIX'"${lt_ltdl_dir+$lt_ltdl_dir/}libltdl.la"+      LTDLDEPS=$LIBLTDL+      LTDLINCL='-I$(top_srcdir)'"${lt_ltdl_dir+/$lt_ltdl_dir}"+      ;;+esac++AC_SUBST([LIBLTDL])+AC_SUBST([LTDLDEPS])+AC_SUBST([LTDLINCL])++# For backwards non-gettext consistent compatibility...+INCLTDL=$LTDLINCL+AC_SUBST([INCLTDL])+])# LTDL_INSTALLABLE+++# _LTDL_MODE_DISPATCH+# -------------------+m4_define([_LTDL_MODE_DISPATCH],+[dnl If _LTDL_DIR is '.', then we are configuring libltdl itself:+m4_if(_LTDL_DIR, [],+	[],+    dnl if _LTDL_MODE was not set already, the default value is 'subproject':+    [m4_case(m4_default(_LTDL_MODE, [subproject]),+	  [subproject], [AC_CONFIG_SUBDIRS(_LTDL_DIR)+			  _LT_SHELL_INIT([lt_dlopen_dir=$lt_ltdl_dir])],+	  [nonrecursive], [_LT_SHELL_INIT([lt_dlopen_dir=$lt_ltdl_dir; lt_libobj_prefix=$lt_ltdl_dir/])],+	  [recursive], [],+	[m4_fatal([unknown libltdl mode: ]_LTDL_MODE)])])dnl+dnl Be careful not to expand twice:+m4_define([$0], [])+])# _LTDL_MODE_DISPATCH+++# _LT_LIBOBJ(MODULE_NAME)+# -----------------------+# Like AC_LIBOBJ, except that MODULE_NAME goes into _LT_LIBOBJS instead+# of into LIBOBJS.+AC_DEFUN([_LT_LIBOBJ], [+  m4_pattern_allow([^_LT_LIBOBJS$])+  _LT_LIBOBJS="$_LT_LIBOBJS $1.$ac_objext"+])# _LT_LIBOBJS+++# LTDL_INIT([OPTIONS])+# --------------------+# Clients of libltdl can use this macro to allow the installer to+# choose between a shipped copy of the ltdl sources or a preinstalled+# version of the library.  If the shipped ltdl sources are not in a+# subdirectory named libltdl, the directory name must be given by+# LT_CONFIG_LTDL_DIR.+AC_DEFUN([LTDL_INIT],+[dnl Parse OPTIONS+_LT_SET_OPTIONS([$0], [$1])++dnl We need to keep our own list of libobjs separate from our parent project,+dnl and the easiest way to do that is redefine the AC_LIBOBJs macro while+dnl we look for our own LIBOBJs.+m4_pushdef([AC_LIBOBJ], m4_defn([_LT_LIBOBJ]))+m4_pushdef([AC_LIBSOURCES])++dnl If not otherwise defined, default to the 1.5.x compatible subproject mode:+m4_if(_LTDL_MODE, [],+        [m4_define([_LTDL_MODE], m4_default([$2], [subproject]))+        m4_if([-1], [m4_bregexp(_LTDL_MODE, [\(subproject\|\(non\)?recursive\)])],+                [m4_fatal([unknown libltdl mode: ]_LTDL_MODE)])])++AC_ARG_WITH([included_ltdl],+    [AS_HELP_STRING([--with-included-ltdl],+                    [use the GNU ltdl sources included here])])++if test yes != "$with_included_ltdl"; then+  # We are not being forced to use the included libltdl sources, so+  # decide whether there is a useful installed version we can use.+  AC_CHECK_HEADER([ltdl.h],+      [AC_CHECK_DECL([lt_dlinterface_register],+	   [AC_CHECK_LIB([ltdl], [lt_dladvise_preload],+	       [with_included_ltdl=no],+	       [with_included_ltdl=yes])],+	   [with_included_ltdl=yes],+	   [AC_INCLUDES_DEFAULT+	    #include <ltdl.h>])],+      [with_included_ltdl=yes],+      [AC_INCLUDES_DEFAULT]+  )+fi++dnl If neither LT_CONFIG_LTDL_DIR, LTDL_CONVENIENCE nor LTDL_INSTALLABLE+dnl was called yet, then for old times' sake, we assume libltdl is in an+dnl eponymous directory:+AC_PROVIDE_IFELSE([LT_CONFIG_LTDL_DIR], [], [_LT_CONFIG_LTDL_DIR([libltdl])])++AC_ARG_WITH([ltdl_include],+    [AS_HELP_STRING([--with-ltdl-include=DIR],+                    [use the ltdl headers installed in DIR])])++if test -n "$with_ltdl_include"; then+  if test -f "$with_ltdl_include/ltdl.h"; then :+  else+    AC_MSG_ERROR([invalid ltdl include directory: '$with_ltdl_include'])+  fi+else+  with_ltdl_include=no+fi++AC_ARG_WITH([ltdl_lib],+    [AS_HELP_STRING([--with-ltdl-lib=DIR],+                    [use the libltdl.la installed in DIR])])++if test -n "$with_ltdl_lib"; then+  if test -f "$with_ltdl_lib/libltdl.la"; then :+  else+    AC_MSG_ERROR([invalid ltdl library directory: '$with_ltdl_lib'])+  fi+else+  with_ltdl_lib=no+fi++case ,$with_included_ltdl,$with_ltdl_include,$with_ltdl_lib, in+  ,yes,no,no,)+	m4_case(m4_default(_LTDL_TYPE, [convenience]),+	    [convenience], [_LTDL_CONVENIENCE],+	    [installable], [_LTDL_INSTALLABLE],+	  [m4_fatal([unknown libltdl build type: ]_LTDL_TYPE)])+	;;+  ,no,no,no,)+	# If the included ltdl is not to be used, then use the+	# preinstalled libltdl we found.+	AC_DEFINE([HAVE_LTDL], [1],+	  [Define this if a modern libltdl is already installed])+	LIBLTDL=-lltdl+	LTDLDEPS=+	LTDLINCL=+	;;+  ,no*,no,*)+	AC_MSG_ERROR(['--with-ltdl-include' and '--with-ltdl-lib' options must be used together])+	;;+  *)	with_included_ltdl=no+	LIBLTDL="-L$with_ltdl_lib -lltdl"+	LTDLDEPS=+	LTDLINCL=-I$with_ltdl_include+	;;+esac+INCLTDL=$LTDLINCL++# Report our decision...+AC_MSG_CHECKING([where to find libltdl headers])+AC_MSG_RESULT([$LTDLINCL])+AC_MSG_CHECKING([where to find libltdl library])+AC_MSG_RESULT([$LIBLTDL])++_LTDL_SETUP++dnl restore autoconf definition.+m4_popdef([AC_LIBOBJ])+m4_popdef([AC_LIBSOURCES])++AC_CONFIG_COMMANDS_PRE([+    _ltdl_libobjs=+    _ltdl_ltlibobjs=+    if test -n "$_LT_LIBOBJS"; then+      # Remove the extension.+      _lt_sed_drop_objext='s/\.o$//;s/\.obj$//'+      for i in `for i in $_LT_LIBOBJS; do echo "$i"; done | $SED "$_lt_sed_drop_objext" | sort -u`; do+        _ltdl_libobjs="$_ltdl_libobjs $lt_libobj_prefix$i.$ac_objext"+        _ltdl_ltlibobjs="$_ltdl_ltlibobjs $lt_libobj_prefix$i.lo"+      done+    fi+    AC_SUBST([ltdl_LIBOBJS], [$_ltdl_libobjs])+    AC_SUBST([ltdl_LTLIBOBJS], [$_ltdl_ltlibobjs])+])++# Only expand once:+m4_define([LTDL_INIT])+])# LTDL_INIT++# Old names:+AU_DEFUN([AC_LIB_LTDL], [LTDL_INIT($@)])+AU_DEFUN([AC_WITH_LTDL], [LTDL_INIT($@)])+AU_DEFUN([LT_WITH_LTDL], [LTDL_INIT($@)])+dnl aclocal-1.4 backwards compatibility:+dnl AC_DEFUN([AC_LIB_LTDL], [])+dnl AC_DEFUN([AC_WITH_LTDL], [])+dnl AC_DEFUN([LT_WITH_LTDL], [])+++# _LTDL_SETUP+# -----------+# Perform all the checks necessary for compilation of the ltdl objects+#  -- including compiler checks and header checks.  This is a public+# interface  mainly for the benefit of libltdl's own configure.ac, most+# other users should call LTDL_INIT instead.+AC_DEFUN([_LTDL_SETUP],+[AC_REQUIRE([AC_PROG_CC])dnl+AC_REQUIRE([LT_SYS_MODULE_EXT])dnl+AC_REQUIRE([LT_SYS_MODULE_PATH])dnl+AC_REQUIRE([LT_SYS_DLSEARCH_PATH])dnl+AC_REQUIRE([LT_LIB_DLLOAD])dnl+AC_REQUIRE([LT_SYS_SYMBOL_USCORE])dnl+AC_REQUIRE([LT_FUNC_DLSYM_USCORE])dnl+AC_REQUIRE([LT_SYS_DLOPEN_DEPLIBS])dnl+AC_REQUIRE([LT_FUNC_ARGZ])dnl++m4_require([_LT_CHECK_OBJDIR])dnl+m4_require([_LT_HEADER_DLFCN])dnl+m4_require([_LT_CHECK_DLPREOPEN])dnl+m4_require([_LT_DECL_SED])dnl++dnl Don't require this, or it will be expanded earlier than the code+dnl that sets the variables it relies on:+_LT_ENABLE_INSTALL++dnl _LTDL_MODE specific code must be called at least once:+_LTDL_MODE_DISPATCH++# In order that ltdl.c can compile, find out the first AC_CONFIG_HEADERS+# the user used.  This is so that ltdl.h can pick up the parent projects+# config.h file, The first file in AC_CONFIG_HEADERS must contain the+# definitions required by ltdl.c.+# FIXME: Remove use of undocumented AC_LIST_HEADERS (2.59 compatibility).+AC_CONFIG_COMMANDS_PRE([dnl+m4_pattern_allow([^LT_CONFIG_H$])dnl+m4_ifset([AH_HEADER],+    [LT_CONFIG_H=AH_HEADER],+    [m4_ifset([AC_LIST_HEADERS],+	    [LT_CONFIG_H=`echo "AC_LIST_HEADERS" | $SED 's|^[[      ]]*||;s|[[ :]].*$||'`],+	[])])])+AC_SUBST([LT_CONFIG_H])++AC_CHECK_HEADERS([unistd.h dl.h sys/dl.h dld.h mach-o/dyld.h dirent.h],+	[], [], [AC_INCLUDES_DEFAULT])++AC_CHECK_FUNCS([closedir opendir readdir], [], [AC_LIBOBJ([lt__dirent])])+AC_CHECK_FUNCS([strlcat strlcpy], [], [AC_LIBOBJ([lt__strl])])++m4_pattern_allow([LT_LIBEXT])dnl+AC_DEFINE_UNQUOTED([LT_LIBEXT],["$libext"],[The archive extension])++name=+eval "lt_libprefix=\"$libname_spec\""+m4_pattern_allow([LT_LIBPREFIX])dnl+AC_DEFINE_UNQUOTED([LT_LIBPREFIX],["$lt_libprefix"],[The archive prefix])++name=ltdl+eval "LTDLOPEN=\"$libname_spec\""+AC_SUBST([LTDLOPEN])+])# _LTDL_SETUP+++# _LT_ENABLE_INSTALL+# ------------------+m4_define([_LT_ENABLE_INSTALL],+[AC_ARG_ENABLE([ltdl-install],+    [AS_HELP_STRING([--enable-ltdl-install], [install libltdl])])++case ,$enable_ltdl_install,$enable_ltdl_convenience in+  *yes*) ;;+  *) enable_ltdl_convenience=yes ;;+esac++m4_ifdef([AM_CONDITIONAL],+[AM_CONDITIONAL(INSTALL_LTDL, test no != "${enable_ltdl_install-no}")+ AM_CONDITIONAL(CONVENIENCE_LTDL, test no != "${enable_ltdl_convenience-no}")])+])# _LT_ENABLE_INSTALL+++# LT_SYS_DLOPEN_DEPLIBS+# ---------------------+AC_DEFUN([LT_SYS_DLOPEN_DEPLIBS],+[AC_REQUIRE([AC_CANONICAL_HOST])dnl+AC_CACHE_CHECK([whether deplibs are loaded by dlopen],+  [lt_cv_sys_dlopen_deplibs],+  [# PORTME does your system automatically load deplibs for dlopen?+  # or its logical equivalent (e.g. shl_load for HP-UX < 11)+  # For now, we just catch OSes we know something about -- in the+  # future, we'll try test this programmatically.+  lt_cv_sys_dlopen_deplibs=unknown+  case $host_os in+  aix3*|aix4.1.*|aix4.2.*)+    # Unknown whether this is true for these versions of AIX, but+    # we want this 'case' here to explicitly catch those versions.+    lt_cv_sys_dlopen_deplibs=unknown+    ;;+  aix[[4-9]]*)+    lt_cv_sys_dlopen_deplibs=yes+    ;;+  amigaos*)+    case $host_cpu in+    powerpc)+      lt_cv_sys_dlopen_deplibs=no+      ;;+    esac+    ;;+  bitrig*)+    lt_cv_sys_dlopen_deplibs=yes+    ;;+  darwin*)+    # Assuming the user has installed a libdl from somewhere, this is true+    # If you are looking for one http://www.opendarwin.org/projects/dlcompat+    lt_cv_sys_dlopen_deplibs=yes+    ;;+  freebsd* | dragonfly* | midnightbsd*)+    lt_cv_sys_dlopen_deplibs=yes+    ;;+  gnu* | linux* | k*bsd*-gnu | kopensolaris*-gnu)+    # GNU and its variants, using gnu ld.so (Glibc)+    lt_cv_sys_dlopen_deplibs=yes+    ;;+  hpux10*|hpux11*)+    lt_cv_sys_dlopen_deplibs=yes+    ;;+  interix*)+    lt_cv_sys_dlopen_deplibs=yes+    ;;+  irix[[12345]]*|irix6.[[01]]*)+    # Catch all versions of IRIX before 6.2, and indicate that we don't+    # know how it worked for any of those versions.+    lt_cv_sys_dlopen_deplibs=unknown+    ;;+  irix*)+    # The case above catches anything before 6.2, and it's known that+    # at 6.2 and later dlopen does load deplibs.+    lt_cv_sys_dlopen_deplibs=yes+    ;;+  netbsd* | netbsdelf*-gnu)+    lt_cv_sys_dlopen_deplibs=yes+    ;;+  openbsd*)+    lt_cv_sys_dlopen_deplibs=yes+    ;;+  osf[[1234]]*)+    # dlopen did load deplibs (at least at 4.x), but until the 5.x series,+    # it did *not* use an RPATH in a shared library to find objects the+    # library depends on, so we explicitly say 'no'.+    lt_cv_sys_dlopen_deplibs=no+    ;;+  osf5.0|osf5.0a|osf5.1)+    # dlopen *does* load deplibs and with the right loader patch applied+    # it even uses RPATH in a shared library to search for shared objects+    # that the library depends on, but there's no easy way to know if that+    # patch is installed.  Since this is the case, all we can really+    # say is unknown -- it depends on the patch being installed.  If+    # it is, this changes to 'yes'.  Without it, it would be 'no'.+    lt_cv_sys_dlopen_deplibs=unknown+    ;;+  osf*)+    # the two cases above should catch all versions of osf <= 5.1.  Read+    # the comments above for what we know about them.+    # At > 5.1, deplibs are loaded *and* any RPATH in a shared library+    # is used to find them so we can finally say 'yes'.+    lt_cv_sys_dlopen_deplibs=yes+    ;;+  qnx*)+    lt_cv_sys_dlopen_deplibs=yes+    ;;+  solaris*)+    lt_cv_sys_dlopen_deplibs=yes+    ;;+  sysv5* | sco3.2v5* | sco5v6* | unixware* | OpenUNIX* | sysv4*uw2*)+    libltdl_cv_sys_dlopen_deplibs=yes+    ;;+  esac+  ])+if test yes != "$lt_cv_sys_dlopen_deplibs"; then+ AC_DEFINE([LTDL_DLOPEN_DEPLIBS], [1],+    [Define if the OS needs help to load dependent libraries for dlopen().])+fi+])# LT_SYS_DLOPEN_DEPLIBS++# Old name:+AU_ALIAS([AC_LTDL_SYS_DLOPEN_DEPLIBS], [LT_SYS_DLOPEN_DEPLIBS])+dnl aclocal-1.4 backwards compatibility:+dnl AC_DEFUN([AC_LTDL_SYS_DLOPEN_DEPLIBS], [])+++# LT_SYS_MODULE_EXT+# -----------------+AC_DEFUN([LT_SYS_MODULE_EXT],+[m4_require([_LT_SYS_DYNAMIC_LINKER])dnl+AC_CACHE_CHECK([what extension is used for runtime loadable modules],+  [libltdl_cv_shlibext],+[+module=yes+eval libltdl_cv_shlibext=$shrext_cmds+module=no+eval libltdl_cv_shrext=$shrext_cmds+  ])+if test -n "$libltdl_cv_shlibext"; then+  m4_pattern_allow([LT_MODULE_EXT])dnl+  AC_DEFINE_UNQUOTED([LT_MODULE_EXT], ["$libltdl_cv_shlibext"],+    [Define to the extension used for runtime loadable modules, say, ".so".])+fi+if test "$libltdl_cv_shrext" != "$libltdl_cv_shlibext"; then+  m4_pattern_allow([LT_SHARED_EXT])dnl+  AC_DEFINE_UNQUOTED([LT_SHARED_EXT], ["$libltdl_cv_shrext"],+    [Define to the shared library suffix, say, ".dylib".])+fi+if test -n "$shared_archive_member_spec"; then+  m4_pattern_allow([LT_SHARED_LIB_MEMBER])dnl+  AC_DEFINE_UNQUOTED([LT_SHARED_LIB_MEMBER], ["($shared_archive_member_spec.o)"],+    [Define to the shared archive member specification, say "(shr.o)".])+fi+])# LT_SYS_MODULE_EXT++# Old name:+AU_ALIAS([AC_LTDL_SHLIBEXT], [LT_SYS_MODULE_EXT])+dnl aclocal-1.4 backwards compatibility:+dnl AC_DEFUN([AC_LTDL_SHLIBEXT], [])+++# LT_SYS_MODULE_PATH+# ------------------+AC_DEFUN([LT_SYS_MODULE_PATH],+[m4_require([_LT_SYS_DYNAMIC_LINKER])dnl+AC_CACHE_CHECK([what variable specifies run-time module search path],+  [lt_cv_module_path_var], [lt_cv_module_path_var=$shlibpath_var])+if test -n "$lt_cv_module_path_var"; then+  m4_pattern_allow([LT_MODULE_PATH_VAR])dnl+  AC_DEFINE_UNQUOTED([LT_MODULE_PATH_VAR], ["$lt_cv_module_path_var"],+    [Define to the name of the environment variable that determines the run-time module search path.])+fi+])# LT_SYS_MODULE_PATH++# Old name:+AU_ALIAS([AC_LTDL_SHLIBPATH], [LT_SYS_MODULE_PATH])+dnl aclocal-1.4 backwards compatibility:+dnl AC_DEFUN([AC_LTDL_SHLIBPATH], [])+++# LT_SYS_DLSEARCH_PATH+# --------------------+AC_DEFUN([LT_SYS_DLSEARCH_PATH],+[m4_require([_LT_SYS_DYNAMIC_LINKER])dnl+AC_CACHE_CHECK([for the default library search path],+  [lt_cv_sys_dlsearch_path],+  [lt_cv_sys_dlsearch_path=$sys_lib_dlsearch_path_spec])+if test -n "$lt_cv_sys_dlsearch_path"; then+  sys_dlsearch_path=+  for dir in $lt_cv_sys_dlsearch_path; do+    if test -z "$sys_dlsearch_path"; then+      sys_dlsearch_path=$dir+    else+      sys_dlsearch_path=$sys_dlsearch_path$PATH_SEPARATOR$dir+    fi+  done+  m4_pattern_allow([LT_DLSEARCH_PATH])dnl+  AC_DEFINE_UNQUOTED([LT_DLSEARCH_PATH], ["$sys_dlsearch_path"],+    [Define to the system default library search path.])+fi+])# LT_SYS_DLSEARCH_PATH++# Old name:+AU_ALIAS([AC_LTDL_SYSSEARCHPATH], [LT_SYS_DLSEARCH_PATH])+dnl aclocal-1.4 backwards compatibility:+dnl AC_DEFUN([AC_LTDL_SYSSEARCHPATH], [])+++# _LT_CHECK_DLPREOPEN+# -------------------+m4_defun([_LT_CHECK_DLPREOPEN],+[m4_require([_LT_CMD_GLOBAL_SYMBOLS])dnl+AC_CACHE_CHECK([whether libtool supports -dlopen/-dlpreopen],+  [libltdl_cv_preloaded_symbols],+  [if test -n "$lt_cv_sys_global_symbol_pipe"; then+    libltdl_cv_preloaded_symbols=yes+  else+    libltdl_cv_preloaded_symbols=no+  fi+  ])+if test yes = "$libltdl_cv_preloaded_symbols"; then+  AC_DEFINE([HAVE_PRELOADED_SYMBOLS], [1],+    [Define if libtool can extract symbol lists from object files.])+fi+])# _LT_CHECK_DLPREOPEN+++# LT_LIB_DLLOAD+# -------------+AC_DEFUN([LT_LIB_DLLOAD],+[m4_pattern_allow([^LT_DLLOADERS$])+LT_DLLOADERS=+AC_SUBST([LT_DLLOADERS])++AC_LANG_PUSH([C])+lt_dlload_save_LIBS=$LIBS++LIBADD_DLOPEN=+AC_SEARCH_LIBS([dlopen], [dl],+	[AC_DEFINE([HAVE_LIBDL], [1],+		   [Define if you have the libdl library or equivalent.])+	if test "$ac_cv_search_dlopen" != "none required"; then+	  LIBADD_DLOPEN=-ldl+	fi+	libltdl_cv_lib_dl_dlopen=yes+	LT_DLLOADERS="$LT_DLLOADERS ${lt_dlopen_dir+$lt_dlopen_dir/}dlopen.la"],+    [AC_LINK_IFELSE([AC_LANG_PROGRAM([[#if HAVE_DLFCN_H+#  include <dlfcn.h>+#endif+    ]], [[dlopen(0, 0);]])],+	    [AC_DEFINE([HAVE_LIBDL], [1],+		       [Define if you have the libdl library or equivalent.])+	    libltdl_cv_func_dlopen=yes+	    LT_DLLOADERS="$LT_DLLOADERS ${lt_dlopen_dir+$lt_dlopen_dir/}dlopen.la"],+	[AC_CHECK_LIB([svld], [dlopen],+		[AC_DEFINE([HAVE_LIBDL], [1],+			 [Define if you have the libdl library or equivalent.])+	        LIBADD_DLOPEN=-lsvld libltdl_cv_func_dlopen=yes+		LT_DLLOADERS="$LT_DLLOADERS ${lt_dlopen_dir+$lt_dlopen_dir/}dlopen.la"])])])+if test yes = "$libltdl_cv_func_dlopen" || test yes = "$libltdl_cv_lib_dl_dlopen"+then+  lt_save_LIBS=$LIBS+  LIBS="$LIBS $LIBADD_DLOPEN"+  AC_CHECK_FUNCS([dlerror])+  LIBS=$lt_save_LIBS+fi+AC_SUBST([LIBADD_DLOPEN])++LIBADD_SHL_LOAD=+AC_CHECK_FUNC([shl_load],+	[AC_DEFINE([HAVE_SHL_LOAD], [1],+		   [Define if you have the shl_load function.])+	LT_DLLOADERS="$LT_DLLOADERS ${lt_dlopen_dir+$lt_dlopen_dir/}shl_load.la"],+    [AC_CHECK_LIB([dld], [shl_load],+	    [AC_DEFINE([HAVE_SHL_LOAD], [1],+		       [Define if you have the shl_load function.])+	    LT_DLLOADERS="$LT_DLLOADERS ${lt_dlopen_dir+$lt_dlopen_dir/}shl_load.la"+	    LIBADD_SHL_LOAD=-ldld])])+AC_SUBST([LIBADD_SHL_LOAD])++case $host_os in+darwin[[1567]].*)+# We only want this for pre-Mac OS X 10.4.+  AC_CHECK_FUNC([_dyld_func_lookup],+	[AC_DEFINE([HAVE_DYLD], [1],+		   [Define if you have the _dyld_func_lookup function.])+	LT_DLLOADERS="$LT_DLLOADERS ${lt_dlopen_dir+$lt_dlopen_dir/}dyld.la"])+  ;;+beos*)+  LT_DLLOADERS="$LT_DLLOADERS ${lt_dlopen_dir+$lt_dlopen_dir/}load_add_on.la"+  ;;+cygwin* | mingw* | pw32*)+  AC_CHECK_DECLS([cygwin_conv_path], [], [], [[#include <sys/cygwin.h>]])+  LT_DLLOADERS="$LT_DLLOADERS ${lt_dlopen_dir+$lt_dlopen_dir/}loadlibrary.la"+  ;;+esac++AC_CHECK_LIB([dld], [dld_link],+	[AC_DEFINE([HAVE_DLD], [1],+		   [Define if you have the GNU dld library.])+		LT_DLLOADERS="$LT_DLLOADERS ${lt_dlopen_dir+$lt_dlopen_dir/}dld_link.la"])+AC_SUBST([LIBADD_DLD_LINK])++m4_pattern_allow([^LT_DLPREOPEN$])+LT_DLPREOPEN=+if test -n "$LT_DLLOADERS"+then+  for lt_loader in $LT_DLLOADERS; do+    LT_DLPREOPEN="$LT_DLPREOPEN-dlpreopen $lt_loader "+  done+  AC_DEFINE([HAVE_LIBDLLOADER], [1],+            [Define if libdlloader will be built on this platform])+fi+AC_SUBST([LT_DLPREOPEN])++dnl This isn't used anymore, but set it for backwards compatibility+LIBADD_DL="$LIBADD_DLOPEN $LIBADD_SHL_LOAD"+AC_SUBST([LIBADD_DL])++LIBS=$lt_dlload_save_LIBS+AC_LANG_POP+])# LT_LIB_DLLOAD++# Old name:+AU_ALIAS([AC_LTDL_DLLIB], [LT_LIB_DLLOAD])+dnl aclocal-1.4 backwards compatibility:+dnl AC_DEFUN([AC_LTDL_DLLIB], [])+++# LT_SYS_SYMBOL_USCORE+# --------------------+# does the compiler prefix global symbols with an underscore?+AC_DEFUN([LT_SYS_SYMBOL_USCORE],+[m4_require([_LT_CMD_GLOBAL_SYMBOLS])dnl+AC_CACHE_CHECK([for _ prefix in compiled symbols],+  [lt_cv_sys_symbol_underscore],+  [lt_cv_sys_symbol_underscore=no+  cat > conftest.$ac_ext <<_LT_EOF+void nm_test_func(){}+int main(){nm_test_func;return 0;}+_LT_EOF+  if AC_TRY_EVAL(ac_compile); then+    # Now try to grab the symbols.+    ac_nlist=conftest.nm+    if AC_TRY_EVAL(NM conftest.$ac_objext \| $lt_cv_sys_global_symbol_pipe \> $ac_nlist) && test -s "$ac_nlist"; then+      # See whether the symbols have a leading underscore.+      if grep '^. _nm_test_func' "$ac_nlist" >/dev/null; then+        lt_cv_sys_symbol_underscore=yes+      else+        if grep '^. nm_test_func ' "$ac_nlist" >/dev/null; then+	  :+        else+	  echo "configure: cannot find nm_test_func in $ac_nlist" >&AS_MESSAGE_LOG_FD+        fi+      fi+    else+      echo "configure: cannot run $lt_cv_sys_global_symbol_pipe" >&AS_MESSAGE_LOG_FD+    fi+  else+    echo "configure: failed program was:" >&AS_MESSAGE_LOG_FD+    cat conftest.c >&AS_MESSAGE_LOG_FD+  fi+  rm -rf conftest*+  ])+  sys_symbol_underscore=$lt_cv_sys_symbol_underscore+  AC_SUBST([sys_symbol_underscore])+])# LT_SYS_SYMBOL_USCORE++# Old name:+AU_ALIAS([AC_LTDL_SYMBOL_USCORE], [LT_SYS_SYMBOL_USCORE])+dnl aclocal-1.4 backwards compatibility:+dnl AC_DEFUN([AC_LTDL_SYMBOL_USCORE], [])+++# LT_FUNC_DLSYM_USCORE+# --------------------+AC_DEFUN([LT_FUNC_DLSYM_USCORE],+[AC_REQUIRE([_LT_COMPILER_PIC])dnl	for lt_prog_compiler_wl+AC_REQUIRE([LT_SYS_SYMBOL_USCORE])dnl	for lt_cv_sys_symbol_underscore+AC_REQUIRE([LT_SYS_MODULE_EXT])dnl	for libltdl_cv_shlibext+if test yes = "$lt_cv_sys_symbol_underscore"; then+  if test yes = "$libltdl_cv_func_dlopen" || test yes = "$libltdl_cv_lib_dl_dlopen"; then+    AC_CACHE_CHECK([whether we have to add an underscore for dlsym],+      [libltdl_cv_need_uscore],+      [libltdl_cv_need_uscore=unknown+      dlsym_uscore_save_LIBS=$LIBS+      LIBS="$LIBS $LIBADD_DLOPEN"+      libname=conftmod # stay within 8.3 filename limits!+      cat >$libname.$ac_ext <<_LT_EOF+[#line $LINENO "configure"+#include "confdefs.h"+/* When -fvisibility=hidden is used, assume the code has been annotated+   correspondingly for the symbols needed.  */+#if defined __GNUC__ && (((__GNUC__ == 3) && (__GNUC_MINOR__ >= 3)) || (__GNUC__ > 3))+int fnord () __attribute__((visibility("default")));+#endif+int fnord () { return 42; }]+_LT_EOF++      # ltfn_module_cmds module_cmds+      # Execute tilde-delimited MODULE_CMDS with environment primed for+      # $module_cmds or $archive_cmds type content.+      ltfn_module_cmds ()+      {( # subshell avoids polluting parent global environment+          module_cmds_save_ifs=$IFS; IFS='~'+          for cmd in @S|@1; do+            IFS=$module_cmds_save_ifs+            libobjs=$libname.$ac_objext; lib=$libname$libltdl_cv_shlibext+            rpath=/not-exists; soname=$libname$libltdl_cv_shlibext; output_objdir=.+            major=; versuffix=; verstring=; deplibs=+            ECHO=echo; wl=$lt_prog_compiler_wl; allow_undefined_flag=+            eval $cmd+          done+          IFS=$module_cmds_save_ifs+      )}++      # Compile a loadable module using libtool macro expansion results.+      $CC $pic_flag -c $libname.$ac_ext+      ltfn_module_cmds "${module_cmds:-$archive_cmds}"++      # Try to fetch fnord with dlsym().+      libltdl_dlunknown=0; libltdl_dlnouscore=1; libltdl_dluscore=2+      cat >conftest.$ac_ext <<_LT_EOF+[#line $LINENO "configure"+#include "confdefs.h"+#if HAVE_DLFCN_H+#include <dlfcn.h>+#endif+#include <stdio.h>+#ifndef RTLD_GLOBAL+#  ifdef DL_GLOBAL+#    define RTLD_GLOBAL DL_GLOBAL+#  else+#    define RTLD_GLOBAL 0+#  endif+#endif+#ifndef RTLD_NOW+#  ifdef DL_NOW+#    define RTLD_NOW DL_NOW+#  else+#    define RTLD_NOW 0+#  endif+#endif+int main () {+  void *handle = dlopen ("`pwd`/$libname$libltdl_cv_shlibext", RTLD_GLOBAL|RTLD_NOW);+  int status = $libltdl_dlunknown;+  if (handle) {+    if (dlsym (handle, "fnord"))+      status = $libltdl_dlnouscore;+    else {+      if (dlsym (handle, "_fnord"))+        status = $libltdl_dluscore;+      else+	puts (dlerror ());+    }+    dlclose (handle);+  } else+    puts (dlerror ());+  return status;+}]+_LT_EOF+      if AC_TRY_EVAL(ac_link) && test -s "conftest$ac_exeext" 2>/dev/null; then+        (./conftest; exit; ) >&AS_MESSAGE_LOG_FD 2>/dev/null+        libltdl_status=$?+        case x$libltdl_status in+          x$libltdl_dlnouscore) libltdl_cv_need_uscore=no ;;+	  x$libltdl_dluscore) libltdl_cv_need_uscore=yes ;;+	  x*) libltdl_cv_need_uscore=unknown ;;+        esac+      fi+      rm -rf conftest* $libname*+      LIBS=$dlsym_uscore_save_LIBS+    ])+  fi+fi++if test yes = "$libltdl_cv_need_uscore"; then+  AC_DEFINE([NEED_USCORE], [1],+    [Define if dlsym() requires a leading underscore in symbol names.])+fi+])# LT_FUNC_DLSYM_USCORE++# Old name:+AU_ALIAS([AC_LTDL_DLSYM_USCORE], [LT_FUNC_DLSYM_USCORE])+dnl aclocal-1.4 backwards compatibility:+dnl AC_DEFUN([AC_LTDL_DLSYM_USCORE], [])++# Copyright (C) 2002-2021 Free Software Foundation, Inc.+#+# This file is free software; the Free Software Foundation+# gives unlimited permission to copy and/or distribute it,+# with or without modifications, as long as this notice is preserved.++# AM_AUTOMAKE_VERSION(VERSION)+# ----------------------------+# Automake X.Y traces this macro to ensure aclocal.m4 has been+# generated from the m4 files accompanying Automake X.Y.+# (This private macro should not be called outside this file.)+AC_DEFUN([AM_AUTOMAKE_VERSION],+[am__api_version='1.16'+dnl Some users find AM_AUTOMAKE_VERSION and mistake it for a way to+dnl require some minimum version.  Point them to the right macro.+m4_if([$1], [1.16.5], [],+      [AC_FATAL([Do not call $0, use AM_INIT_AUTOMAKE([$1]).])])dnl+])++# _AM_AUTOCONF_VERSION(VERSION)+# -----------------------------+# aclocal traces this macro to find the Autoconf version.+# This is a private macro too.  Using m4_define simplifies+# the logic in aclocal, which can simply ignore this definition.+m4_define([_AM_AUTOCONF_VERSION], [])++# AM_SET_CURRENT_AUTOMAKE_VERSION+# -------------------------------+# Call AM_AUTOMAKE_VERSION and AM_AUTOMAKE_VERSION so they can be traced.+# This function is AC_REQUIREd by AM_INIT_AUTOMAKE.+AC_DEFUN([AM_SET_CURRENT_AUTOMAKE_VERSION],+[AM_AUTOMAKE_VERSION([1.16.5])dnl+m4_ifndef([AC_AUTOCONF_VERSION],+  [m4_copy([m4_PACKAGE_VERSION], [AC_AUTOCONF_VERSION])])dnl+_AM_AUTOCONF_VERSION(m4_defn([AC_AUTOCONF_VERSION]))])++# Figure out how to run the assembler.                      -*- Autoconf -*-++# Copyright (C) 2001-2021 Free Software Foundation, Inc.+#+# This file is free software; the Free Software Foundation+# gives unlimited permission to copy and/or distribute it,+# with or without modifications, as long as this notice is preserved.++# AM_PROG_AS+# ----------+AC_DEFUN([AM_PROG_AS],+[# By default we simply use the C compiler to build assembly code.+AC_REQUIRE([AC_PROG_CC])+test "${CCAS+set}" = set || CCAS=$CC+test "${CCASFLAGS+set}" = set || CCASFLAGS=$CFLAGS+AC_ARG_VAR([CCAS],      [assembler compiler command (defaults to CC)])+AC_ARG_VAR([CCASFLAGS], [assembler compiler flags (defaults to CFLAGS)])+_AM_IF_OPTION([no-dependencies],, [_AM_DEPENDENCIES([CCAS])])dnl+])++# AM_AUX_DIR_EXPAND                                         -*- Autoconf -*-++# Copyright (C) 2001-2021 Free Software Foundation, Inc.+#+# This file is free software; the Free Software Foundation+# gives unlimited permission to copy and/or distribute it,+# with or without modifications, as long as this notice is preserved.++# For projects using AC_CONFIG_AUX_DIR([foo]), Autoconf sets+# $ac_aux_dir to '$srcdir/foo'.  In other projects, it is set to+# '$srcdir', '$srcdir/..', or '$srcdir/../..'.+#+# Of course, Automake must honor this variable whenever it calls a+# tool from the auxiliary directory.  The problem is that $srcdir (and+# therefore $ac_aux_dir as well) can be either absolute or relative,+# depending on how configure is run.  This is pretty annoying, since+# it makes $ac_aux_dir quite unusable in subdirectories: in the top+# source directory, any form will work fine, but in subdirectories a+# relative path needs to be adjusted first.+#+# $ac_aux_dir/missing+#    fails when called from a subdirectory if $ac_aux_dir is relative+# $top_srcdir/$ac_aux_dir/missing+#    fails if $ac_aux_dir is absolute,+#    fails when called from a subdirectory in a VPATH build with+#          a relative $ac_aux_dir+#+# The reason of the latter failure is that $top_srcdir and $ac_aux_dir+# are both prefixed by $srcdir.  In an in-source build this is usually+# harmless because $srcdir is '.', but things will broke when you+# start a VPATH build or use an absolute $srcdir.+#+# So we could use something similar to $top_srcdir/$ac_aux_dir/missing,+# iff we strip the leading $srcdir from $ac_aux_dir.  That would be:+#   am_aux_dir='\$(top_srcdir)/'`expr "$ac_aux_dir" : "$srcdir//*\(.*\)"`+# and then we would define $MISSING as+#   MISSING="\${SHELL} $am_aux_dir/missing"+# This will work as long as MISSING is not called from configure, because+# unfortunately $(top_srcdir) has no meaning in configure.+# However there are other variables, like CC, which are often used in+# configure, and could therefore not use this "fixed" $ac_aux_dir.+#+# Another solution, used here, is to always expand $ac_aux_dir to an+# absolute PATH.  The drawback is that using absolute paths prevent a+# configured tree to be moved without reconfiguration.++AC_DEFUN([AM_AUX_DIR_EXPAND],+[AC_REQUIRE([AC_CONFIG_AUX_DIR_DEFAULT])dnl+# Expand $ac_aux_dir to an absolute path.+am_aux_dir=`cd "$ac_aux_dir" && pwd`+])++# AM_CONDITIONAL                                            -*- Autoconf -*-++# Copyright (C) 1997-2021 Free Software Foundation, Inc.+#+# This file is free software; the Free Software Foundation+# gives unlimited permission to copy and/or distribute it,+# with or without modifications, as long as this notice is preserved.++# AM_CONDITIONAL(NAME, SHELL-CONDITION)+# -------------------------------------+# Define a conditional.+AC_DEFUN([AM_CONDITIONAL],+[AC_PREREQ([2.52])dnl+ m4_if([$1], [TRUE],  [AC_FATAL([$0: invalid condition: $1])],+       [$1], [FALSE], [AC_FATAL([$0: invalid condition: $1])])dnl+AC_SUBST([$1_TRUE])dnl+AC_SUBST([$1_FALSE])dnl+_AM_SUBST_NOTMAKE([$1_TRUE])dnl+_AM_SUBST_NOTMAKE([$1_FALSE])dnl+m4_define([_AM_COND_VALUE_$1], [$2])dnl+if $2; then+  $1_TRUE=+  $1_FALSE='#'+else+  $1_TRUE='#'+  $1_FALSE=+fi+AC_CONFIG_COMMANDS_PRE(+[if test -z "${$1_TRUE}" && test -z "${$1_FALSE}"; then+  AC_MSG_ERROR([[conditional "$1" was never defined.+Usually this means the macro was only invoked conditionally.]])+fi])])++# Copyright (C) 1999-2021 Free Software Foundation, Inc.+#+# This file is free software; the Free Software Foundation+# gives unlimited permission to copy and/or distribute it,+# with or without modifications, as long as this notice is preserved.+++# There are a few dirty hacks below to avoid letting 'AC_PROG_CC' be+# written in clear, in which case automake, when reading aclocal.m4,+# will think it sees a *use*, and therefore will trigger all it's+# C support machinery.  Also note that it means that autoscan, seeing+# CC etc. in the Makefile, will ask for an AC_PROG_CC use...+++# _AM_DEPENDENCIES(NAME)+# ----------------------+# See how the compiler implements dependency checking.+# NAME is "CC", "CXX", "OBJC", "OBJCXX", "UPC", or "GJC".+# We try a few techniques and use that to set a single cache variable.+#+# We don't AC_REQUIRE the corresponding AC_PROG_CC since the latter was+# modified to invoke _AM_DEPENDENCIES(CC); we would have a circular+# dependency, and given that the user is not expected to run this macro,+# just rely on AC_PROG_CC.+AC_DEFUN([_AM_DEPENDENCIES],+[AC_REQUIRE([AM_SET_DEPDIR])dnl+AC_REQUIRE([AM_OUTPUT_DEPENDENCY_COMMANDS])dnl+AC_REQUIRE([AM_MAKE_INCLUDE])dnl+AC_REQUIRE([AM_DEP_TRACK])dnl++m4_if([$1], [CC],   [depcc="$CC"   am_compiler_list=],+      [$1], [CXX],  [depcc="$CXX"  am_compiler_list=],+      [$1], [OBJC], [depcc="$OBJC" am_compiler_list='gcc3 gcc'],+      [$1], [OBJCXX], [depcc="$OBJCXX" am_compiler_list='gcc3 gcc'],+      [$1], [UPC],  [depcc="$UPC"  am_compiler_list=],+      [$1], [GCJ],  [depcc="$GCJ"  am_compiler_list='gcc3 gcc'],+                    [depcc="$$1"   am_compiler_list=])++AC_CACHE_CHECK([dependency style of $depcc],+               [am_cv_$1_dependencies_compiler_type],+[if test -z "$AMDEP_TRUE" && test -f "$am_depcomp"; then+  # We make a subdir and do the tests there.  Otherwise we can end up+  # making bogus files that we don't know about and never remove.  For+  # instance it was reported that on HP-UX the gcc test will end up+  # making a dummy file named 'D' -- because '-MD' means "put the output+  # in D".+  rm -rf conftest.dir+  mkdir conftest.dir+  # Copy depcomp to subdir because otherwise we won't find it if we're+  # using a relative directory.+  cp "$am_depcomp" conftest.dir+  cd conftest.dir+  # We will build objects and dependencies in a subdirectory because+  # it helps to detect inapplicable dependency modes.  For instance+  # both Tru64's cc and ICC support -MD to output dependencies as a+  # side effect of compilation, but ICC will put the dependencies in+  # the current directory while Tru64 will put them in the object+  # directory.+  mkdir sub++  am_cv_$1_dependencies_compiler_type=none+  if test "$am_compiler_list" = ""; then+     am_compiler_list=`sed -n ['s/^#*\([a-zA-Z0-9]*\))$/\1/p'] < ./depcomp`+  fi+  am__universal=false+  m4_case([$1], [CC],+    [case " $depcc " in #(+     *\ -arch\ *\ -arch\ *) am__universal=true ;;+     esac],+    [CXX],+    [case " $depcc " in #(+     *\ -arch\ *\ -arch\ *) am__universal=true ;;+     esac])++  for depmode in $am_compiler_list; do+    # Setup a source with many dependencies, because some compilers+    # like to wrap large dependency lists on column 80 (with \), and+    # we should not choose a depcomp mode which is confused by this.+    #+    # We need to recreate these files for each test, as the compiler may+    # overwrite some of them when testing with obscure command lines.+    # This happens at least with the AIX C compiler.+    : > sub/conftest.c+    for i in 1 2 3 4 5 6; do+      echo '#include "conftst'$i'.h"' >> sub/conftest.c+      # Using ": > sub/conftst$i.h" creates only sub/conftst1.h with+      # Solaris 10 /bin/sh.+      echo '/* dummy */' > sub/conftst$i.h+    done+    echo "${am__include} ${am__quote}sub/conftest.Po${am__quote}" > confmf++    # We check with '-c' and '-o' for the sake of the "dashmstdout"+    # mode.  It turns out that the SunPro C++ compiler does not properly+    # handle '-M -o', and we need to detect this.  Also, some Intel+    # versions had trouble with output in subdirs.+    am__obj=sub/conftest.${OBJEXT-o}+    am__minus_obj="-o $am__obj"+    case $depmode in+    gcc)+      # This depmode causes a compiler race in universal mode.+      test "$am__universal" = false || continue+      ;;+    nosideeffect)+      # After this tag, mechanisms are not by side-effect, so they'll+      # only be used when explicitly requested.+      if test "x$enable_dependency_tracking" = xyes; then+	continue+      else+	break+      fi+      ;;+    msvc7 | msvc7msys | msvisualcpp | msvcmsys)+      # This compiler won't grok '-c -o', but also, the minuso test has+      # not run yet.  These depmodes are late enough in the game, and+      # so weak that their functioning should not be impacted.+      am__obj=conftest.${OBJEXT-o}+      am__minus_obj=+      ;;+    none) break ;;+    esac+    if depmode=$depmode \+       source=sub/conftest.c object=$am__obj \+       depfile=sub/conftest.Po tmpdepfile=sub/conftest.TPo \+       $SHELL ./depcomp $depcc -c $am__minus_obj sub/conftest.c \+         >/dev/null 2>conftest.err &&+       grep sub/conftst1.h sub/conftest.Po > /dev/null 2>&1 &&+       grep sub/conftst6.h sub/conftest.Po > /dev/null 2>&1 &&+       grep $am__obj sub/conftest.Po > /dev/null 2>&1 &&+       ${MAKE-make} -s -f confmf > /dev/null 2>&1; then+      # icc doesn't choke on unknown options, it will just issue warnings+      # or remarks (even with -Werror).  So we grep stderr for any message+      # that says an option was ignored or not supported.+      # When given -MP, icc 7.0 and 7.1 complain thusly:+      #   icc: Command line warning: ignoring option '-M'; no argument required+      # The diagnosis changed in icc 8.0:+      #   icc: Command line remark: option '-MP' not supported+      if (grep 'ignoring option' conftest.err ||+          grep 'not supported' conftest.err) >/dev/null 2>&1; then :; else+        am_cv_$1_dependencies_compiler_type=$depmode+        break+      fi+    fi+  done++  cd ..+  rm -rf conftest.dir+else+  am_cv_$1_dependencies_compiler_type=none+fi+])+AC_SUBST([$1DEPMODE], [depmode=$am_cv_$1_dependencies_compiler_type])+AM_CONDITIONAL([am__fastdep$1], [+  test "x$enable_dependency_tracking" != xno \+  && test "$am_cv_$1_dependencies_compiler_type" = gcc3])+])+++# AM_SET_DEPDIR+# -------------+# Choose a directory name for dependency files.+# This macro is AC_REQUIREd in _AM_DEPENDENCIES.+AC_DEFUN([AM_SET_DEPDIR],+[AC_REQUIRE([AM_SET_LEADING_DOT])dnl+AC_SUBST([DEPDIR], ["${am__leading_dot}deps"])dnl+])+++# AM_DEP_TRACK+# ------------+AC_DEFUN([AM_DEP_TRACK],+[AC_ARG_ENABLE([dependency-tracking], [dnl+AS_HELP_STRING(+  [--enable-dependency-tracking],+  [do not reject slow dependency extractors])+AS_HELP_STRING(+  [--disable-dependency-tracking],+  [speeds up one-time build])])+if test "x$enable_dependency_tracking" != xno; then+  am_depcomp="$ac_aux_dir/depcomp"+  AMDEPBACKSLASH='\'+  am__nodep='_no'+fi+AM_CONDITIONAL([AMDEP], [test "x$enable_dependency_tracking" != xno])+AC_SUBST([AMDEPBACKSLASH])dnl+_AM_SUBST_NOTMAKE([AMDEPBACKSLASH])dnl+AC_SUBST([am__nodep])dnl+_AM_SUBST_NOTMAKE([am__nodep])dnl+])++# Generate code to set up dependency tracking.              -*- Autoconf -*-++# Copyright (C) 1999-2021 Free Software Foundation, Inc.+#+# This file is free software; the Free Software Foundation+# gives unlimited permission to copy and/or distribute it,+# with or without modifications, as long as this notice is preserved.++# _AM_OUTPUT_DEPENDENCY_COMMANDS+# ------------------------------+AC_DEFUN([_AM_OUTPUT_DEPENDENCY_COMMANDS],+[{+  # Older Autoconf quotes --file arguments for eval, but not when files+  # are listed without --file.  Let's play safe and only enable the eval+  # if we detect the quoting.+  # TODO: see whether this extra hack can be removed once we start+  # requiring Autoconf 2.70 or later.+  AS_CASE([$CONFIG_FILES],+          [*\'*], [eval set x "$CONFIG_FILES"],+          [*], [set x $CONFIG_FILES])+  shift+  # Used to flag and report bootstrapping failures.+  am_rc=0+  for am_mf+  do+    # Strip MF so we end up with the name of the file.+    am_mf=`AS_ECHO(["$am_mf"]) | sed -e 's/:.*$//'`+    # Check whether this is an Automake generated Makefile which includes+    # dependency-tracking related rules and includes.+    # Grep'ing the whole file directly is not great: AIX grep has a line+    # limit of 2048, but all sed's we know have understand at least 4000.+    sed -n 's,^am--depfiles:.*,X,p' "$am_mf" | grep X >/dev/null 2>&1 \+      || continue+    am_dirpart=`AS_DIRNAME(["$am_mf"])`+    am_filepart=`AS_BASENAME(["$am_mf"])`+    AM_RUN_LOG([cd "$am_dirpart" \+      && sed -e '/# am--include-marker/d' "$am_filepart" \+        | $MAKE -f - am--depfiles]) || am_rc=$?+  done+  if test $am_rc -ne 0; then+    AC_MSG_FAILURE([Something went wrong bootstrapping makefile fragments+    for automatic dependency tracking.  If GNU make was not used, consider+    re-running the configure script with MAKE="gmake" (or whatever is+    necessary).  You can also try re-running configure with the+    '--disable-dependency-tracking' option to at least be able to build+    the package (albeit without support for automatic dependency tracking).])+  fi+  AS_UNSET([am_dirpart])+  AS_UNSET([am_filepart])+  AS_UNSET([am_mf])+  AS_UNSET([am_rc])+  rm -f conftest-deps.mk+}+])# _AM_OUTPUT_DEPENDENCY_COMMANDS+++# AM_OUTPUT_DEPENDENCY_COMMANDS+# -----------------------------+# This macro should only be invoked once -- use via AC_REQUIRE.+#+# This code is only required when automatic dependency tracking is enabled.+# This creates each '.Po' and '.Plo' makefile fragment that we'll need in+# order to bootstrap the dependency handling code.+AC_DEFUN([AM_OUTPUT_DEPENDENCY_COMMANDS],+[AC_CONFIG_COMMANDS([depfiles],+     [test x"$AMDEP_TRUE" != x"" || _AM_OUTPUT_DEPENDENCY_COMMANDS],+     [AMDEP_TRUE="$AMDEP_TRUE" MAKE="${MAKE-make}"])])++# Do all the work for Automake.                             -*- Autoconf -*-++# Copyright (C) 1996-2021 Free Software Foundation, Inc.+#+# This file is free software; the Free Software Foundation+# gives unlimited permission to copy and/or distribute it,+# with or without modifications, as long as this notice is preserved.++# This macro actually does too much.  Some checks are only needed if+# your package does certain things.  But this isn't really a big deal.++dnl Redefine AC_PROG_CC to automatically invoke _AM_PROG_CC_C_O.+m4_define([AC_PROG_CC],+m4_defn([AC_PROG_CC])+[_AM_PROG_CC_C_O+])++# AM_INIT_AUTOMAKE(PACKAGE, VERSION, [NO-DEFINE])+# AM_INIT_AUTOMAKE([OPTIONS])+# -----------------------------------------------+# The call with PACKAGE and VERSION arguments is the old style+# call (pre autoconf-2.50), which is being phased out.  PACKAGE+# and VERSION should now be passed to AC_INIT and removed from+# the call to AM_INIT_AUTOMAKE.+# We support both call styles for the transition.  After+# the next Automake release, Autoconf can make the AC_INIT+# arguments mandatory, and then we can depend on a new Autoconf+# release and drop the old call support.+AC_DEFUN([AM_INIT_AUTOMAKE],+[AC_PREREQ([2.65])dnl+m4_ifdef([_$0_ALREADY_INIT],+  [m4_fatal([$0 expanded multiple times+]m4_defn([_$0_ALREADY_INIT]))],+  [m4_define([_$0_ALREADY_INIT], m4_expansion_stack)])dnl+dnl Autoconf wants to disallow AM_ names.  We explicitly allow+dnl the ones we care about.+m4_pattern_allow([^AM_[A-Z]+FLAGS$])dnl+AC_REQUIRE([AM_SET_CURRENT_AUTOMAKE_VERSION])dnl+AC_REQUIRE([AC_PROG_INSTALL])dnl+if test "`cd $srcdir && pwd`" != "`pwd`"; then+  # Use -I$(srcdir) only when $(srcdir) != ., so that make's output+  # is not polluted with repeated "-I."+  AC_SUBST([am__isrc], [' -I$(srcdir)'])_AM_SUBST_NOTMAKE([am__isrc])dnl+  # test to see if srcdir already configured+  if test -f $srcdir/config.status; then+    AC_MSG_ERROR([source directory already configured; run "make distclean" there first])+  fi+fi++# test whether we have cygpath+if test -z "$CYGPATH_W"; then+  if (cygpath --version) >/dev/null 2>/dev/null; then+    CYGPATH_W='cygpath -w'+  else+    CYGPATH_W=echo+  fi+fi+AC_SUBST([CYGPATH_W])++# Define the identity of the package.+dnl Distinguish between old-style and new-style calls.+m4_ifval([$2],+[AC_DIAGNOSE([obsolete],+             [$0: two- and three-arguments forms are deprecated.])+m4_ifval([$3], [_AM_SET_OPTION([no-define])])dnl+ AC_SUBST([PACKAGE], [$1])dnl+ AC_SUBST([VERSION], [$2])],+[_AM_SET_OPTIONS([$1])dnl+dnl Diagnose old-style AC_INIT with new-style AM_AUTOMAKE_INIT.+m4_if(+  m4_ifset([AC_PACKAGE_NAME], [ok]):m4_ifset([AC_PACKAGE_VERSION], [ok]),+  [ok:ok],,+  [m4_fatal([AC_INIT should be called with package and version arguments])])dnl+ AC_SUBST([PACKAGE], ['AC_PACKAGE_TARNAME'])dnl+ AC_SUBST([VERSION], ['AC_PACKAGE_VERSION'])])dnl++_AM_IF_OPTION([no-define],,+[AC_DEFINE_UNQUOTED([PACKAGE], ["$PACKAGE"], [Name of package])+ AC_DEFINE_UNQUOTED([VERSION], ["$VERSION"], [Version number of package])])dnl++# Some tools Automake needs.+AC_REQUIRE([AM_SANITY_CHECK])dnl+AC_REQUIRE([AC_ARG_PROGRAM])dnl+AM_MISSING_PROG([ACLOCAL], [aclocal-${am__api_version}])+AM_MISSING_PROG([AUTOCONF], [autoconf])+AM_MISSING_PROG([AUTOMAKE], [automake-${am__api_version}])+AM_MISSING_PROG([AUTOHEADER], [autoheader])+AM_MISSING_PROG([MAKEINFO], [makeinfo])+AC_REQUIRE([AM_PROG_INSTALL_SH])dnl+AC_REQUIRE([AM_PROG_INSTALL_STRIP])dnl+AC_REQUIRE([AC_PROG_MKDIR_P])dnl+# For better backward compatibility.  To be removed once Automake 1.9.x+# dies out for good.  For more background, see:+# <https://lists.gnu.org/archive/html/automake/2012-07/msg00001.html>+# <https://lists.gnu.org/archive/html/automake/2012-07/msg00014.html>+AC_SUBST([mkdir_p], ['$(MKDIR_P)'])+# We need awk for the "check" target (and possibly the TAP driver).  The+# system "awk" is bad on some platforms.+AC_REQUIRE([AC_PROG_AWK])dnl+AC_REQUIRE([AC_PROG_MAKE_SET])dnl+AC_REQUIRE([AM_SET_LEADING_DOT])dnl+_AM_IF_OPTION([tar-ustar], [_AM_PROG_TAR([ustar])],+	      [_AM_IF_OPTION([tar-pax], [_AM_PROG_TAR([pax])],+			     [_AM_PROG_TAR([v7])])])+_AM_IF_OPTION([no-dependencies],,+[AC_PROVIDE_IFELSE([AC_PROG_CC],+		  [_AM_DEPENDENCIES([CC])],+		  [m4_define([AC_PROG_CC],+			     m4_defn([AC_PROG_CC])[_AM_DEPENDENCIES([CC])])])dnl+AC_PROVIDE_IFELSE([AC_PROG_CXX],+		  [_AM_DEPENDENCIES([CXX])],+		  [m4_define([AC_PROG_CXX],+			     m4_defn([AC_PROG_CXX])[_AM_DEPENDENCIES([CXX])])])dnl+AC_PROVIDE_IFELSE([AC_PROG_OBJC],+		  [_AM_DEPENDENCIES([OBJC])],+		  [m4_define([AC_PROG_OBJC],+			     m4_defn([AC_PROG_OBJC])[_AM_DEPENDENCIES([OBJC])])])dnl+AC_PROVIDE_IFELSE([AC_PROG_OBJCXX],+		  [_AM_DEPENDENCIES([OBJCXX])],+		  [m4_define([AC_PROG_OBJCXX],+			     m4_defn([AC_PROG_OBJCXX])[_AM_DEPENDENCIES([OBJCXX])])])dnl+])+# Variables for tags utilities; see am/tags.am+if test -z "$CTAGS"; then+  CTAGS=ctags+fi+AC_SUBST([CTAGS])+if test -z "$ETAGS"; then+  ETAGS=etags+fi+AC_SUBST([ETAGS])+if test -z "$CSCOPE"; then+  CSCOPE=cscope+fi+AC_SUBST([CSCOPE])++AC_REQUIRE([AM_SILENT_RULES])dnl+dnl The testsuite driver may need to know about EXEEXT, so add the+dnl 'am__EXEEXT' conditional if _AM_COMPILER_EXEEXT was seen.  This+dnl macro is hooked onto _AC_COMPILER_EXEEXT early, see below.+AC_CONFIG_COMMANDS_PRE(dnl+[m4_provide_if([_AM_COMPILER_EXEEXT],+  [AM_CONDITIONAL([am__EXEEXT], [test -n "$EXEEXT"])])])dnl++# POSIX will say in a future version that running "rm -f" with no argument+# is OK; and we want to be able to make that assumption in our Makefile+# recipes.  So use an aggressive probe to check that the usage we want is+# actually supported "in the wild" to an acceptable degree.+# See automake bug#10828.+# To make any issue more visible, cause the running configure to be aborted+# by default if the 'rm' program in use doesn't match our expectations; the+# user can still override this though.+if rm -f && rm -fr && rm -rf; then : OK; else+  cat >&2 <<'END'+Oops!++Your 'rm' program seems unable to run without file operands specified+on the command line, even when the '-f' option is present.  This is contrary+to the behaviour of most rm programs out there, and not conforming with+the upcoming POSIX standard: <http://austingroupbugs.net/view.php?id=542>++Please tell bug-automake@gnu.org about your system, including the value+of your $PATH and any error possibly output before this message.  This+can help us improve future automake versions.++END+  if test x"$ACCEPT_INFERIOR_RM_PROGRAM" = x"yes"; then+    echo 'Configuration will proceed anyway, since you have set the' >&2+    echo 'ACCEPT_INFERIOR_RM_PROGRAM variable to "yes"' >&2+    echo >&2+  else+    cat >&2 <<'END'+Aborting the configuration process, to ensure you take notice of the issue.++You can download and install GNU coreutils to get an 'rm' implementation+that behaves properly: <https://www.gnu.org/software/coreutils/>.++If you want to complete the configuration process using your problematic+'rm' anyway, export the environment variable ACCEPT_INFERIOR_RM_PROGRAM+to "yes", and re-run configure.++END+    AC_MSG_ERROR([Your 'rm' program is bad, sorry.])+  fi+fi+dnl The trailing newline in this macro's definition is deliberate, for+dnl backward compatibility and to allow trailing 'dnl'-style comments+dnl after the AM_INIT_AUTOMAKE invocation. See automake bug#16841.+])++dnl Hook into '_AC_COMPILER_EXEEXT' early to learn its expansion.  Do not+dnl add the conditional right here, as _AC_COMPILER_EXEEXT may be further+dnl mangled by Autoconf and run in a shell conditional statement.+m4_define([_AC_COMPILER_EXEEXT],+m4_defn([_AC_COMPILER_EXEEXT])[m4_provide([_AM_COMPILER_EXEEXT])])++# When config.status generates a header, we must update the stamp-h file.+# This file resides in the same directory as the config header+# that is generated.  The stamp files are numbered to have different names.++# Autoconf calls _AC_AM_CONFIG_HEADER_HOOK (when defined) in the+# loop where config.status creates the headers, so we can generate+# our stamp files there.+AC_DEFUN([_AC_AM_CONFIG_HEADER_HOOK],+[# Compute $1's index in $config_headers.+_am_arg=$1+_am_stamp_count=1+for _am_header in $config_headers :; do+  case $_am_header in+    $_am_arg | $_am_arg:* )+      break ;;+    * )+      _am_stamp_count=`expr $_am_stamp_count + 1` ;;+  esac+done+echo "timestamp for $_am_arg" >`AS_DIRNAME(["$_am_arg"])`/stamp-h[]$_am_stamp_count])++# Copyright (C) 2001-2021 Free Software Foundation, Inc.+#+# This file is free software; the Free Software Foundation+# gives unlimited permission to copy and/or distribute it,+# with or without modifications, as long as this notice is preserved.++# AM_PROG_INSTALL_SH+# ------------------+# Define $install_sh.+AC_DEFUN([AM_PROG_INSTALL_SH],+[AC_REQUIRE([AM_AUX_DIR_EXPAND])dnl+if test x"${install_sh+set}" != xset; then+  case $am_aux_dir in+  *\ * | *\	*)+    install_sh="\${SHELL} '$am_aux_dir/install-sh'" ;;+  *)+    install_sh="\${SHELL} $am_aux_dir/install-sh"+  esac+fi+AC_SUBST([install_sh])])++# Copyright (C) 2003-2021 Free Software Foundation, Inc.+#+# This file is free software; the Free Software Foundation+# gives unlimited permission to copy and/or distribute it,+# with or without modifications, as long as this notice is preserved.++# Check whether the underlying file-system supports filenames+# with a leading dot.  For instance MS-DOS doesn't.+AC_DEFUN([AM_SET_LEADING_DOT],+[rm -rf .tst 2>/dev/null+mkdir .tst 2>/dev/null+if test -d .tst; then+  am__leading_dot=.+else+  am__leading_dot=_+fi+rmdir .tst 2>/dev/null+AC_SUBST([am__leading_dot])])++# Add --enable-maintainer-mode option to configure.         -*- Autoconf -*-+# From Jim Meyering++# Copyright (C) 1996-2021 Free Software Foundation, Inc.+#+# This file is free software; the Free Software Foundation+# gives unlimited permission to copy and/or distribute it,+# with or without modifications, as long as this notice is preserved.++# AM_MAINTAINER_MODE([DEFAULT-MODE])+# ----------------------------------+# Control maintainer-specific portions of Makefiles.+# Default is to disable them, unless 'enable' is passed literally.+# For symmetry, 'disable' may be passed as well.  Anyway, the user+# can override the default with the --enable/--disable switch.+AC_DEFUN([AM_MAINTAINER_MODE],+[m4_case(m4_default([$1], [disable]),+       [enable], [m4_define([am_maintainer_other], [disable])],+       [disable], [m4_define([am_maintainer_other], [enable])],+       [m4_define([am_maintainer_other], [enable])+        m4_warn([syntax], [unexpected argument to AM@&t@_MAINTAINER_MODE: $1])])+AC_MSG_CHECKING([whether to enable maintainer-specific portions of Makefiles])+  dnl maintainer-mode's default is 'disable' unless 'enable' is passed+  AC_ARG_ENABLE([maintainer-mode],+    [AS_HELP_STRING([--]am_maintainer_other[-maintainer-mode],+      am_maintainer_other[ make rules and dependencies not useful+      (and sometimes confusing) to the casual installer])],+    [USE_MAINTAINER_MODE=$enableval],+    [USE_MAINTAINER_MODE=]m4_if(am_maintainer_other, [enable], [no], [yes]))+  AC_MSG_RESULT([$USE_MAINTAINER_MODE])+  AM_CONDITIONAL([MAINTAINER_MODE], [test $USE_MAINTAINER_MODE = yes])+  MAINT=$MAINTAINER_MODE_TRUE+  AC_SUBST([MAINT])dnl+]+)++# Check to see how 'make' treats includes.	            -*- Autoconf -*-++# Copyright (C) 2001-2021 Free Software Foundation, Inc.+#+# This file is free software; the Free Software Foundation+# gives unlimited permission to copy and/or distribute it,+# with or without modifications, as long as this notice is preserved.++# AM_MAKE_INCLUDE()+# -----------------+# Check whether make has an 'include' directive that can support all+# the idioms we need for our automatic dependency tracking code.+AC_DEFUN([AM_MAKE_INCLUDE],+[AC_MSG_CHECKING([whether ${MAKE-make} supports the include directive])+cat > confinc.mk << 'END'+am__doit:+	@echo this is the am__doit target >confinc.out+.PHONY: am__doit+END+am__include="#"+am__quote=+# BSD make does it like this.+echo '.include "confinc.mk" # ignored' > confmf.BSD+# Other make implementations (GNU, Solaris 10, AIX) do it like this.+echo 'include confinc.mk # ignored' > confmf.GNU+_am_result=no+for s in GNU BSD; do+  AM_RUN_LOG([${MAKE-make} -f confmf.$s && cat confinc.out])+  AS_CASE([$?:`cat confinc.out 2>/dev/null`],+      ['0:this is the am__doit target'],+      [AS_CASE([$s],+          [BSD], [am__include='.include' am__quote='"'],+          [am__include='include' am__quote=''])])+  if test "$am__include" != "#"; then+    _am_result="yes ($s style)"+    break+  fi+done+rm -f confinc.* confmf.*+AC_MSG_RESULT([${_am_result}])+AC_SUBST([am__include])])+AC_SUBST([am__quote])])++# Fake the existence of programs that GNU maintainers use.  -*- Autoconf -*-++# Copyright (C) 1997-2021 Free Software Foundation, Inc.+#+# This file is free software; the Free Software Foundation+# gives unlimited permission to copy and/or distribute it,+# with or without modifications, as long as this notice is preserved.++# AM_MISSING_PROG(NAME, PROGRAM)+# ------------------------------+AC_DEFUN([AM_MISSING_PROG],+[AC_REQUIRE([AM_MISSING_HAS_RUN])+$1=${$1-"${am_missing_run}$2"}+AC_SUBST($1)])++# AM_MISSING_HAS_RUN+# ------------------+# Define MISSING if not defined so far and test if it is modern enough.+# If it is, set am_missing_run to use it, otherwise, to nothing.+AC_DEFUN([AM_MISSING_HAS_RUN],+[AC_REQUIRE([AM_AUX_DIR_EXPAND])dnl+AC_REQUIRE_AUX_FILE([missing])dnl+if test x"${MISSING+set}" != xset; then+  MISSING="\${SHELL} '$am_aux_dir/missing'"+fi+# Use eval to expand $SHELL+if eval "$MISSING --is-lightweight"; then+  am_missing_run="$MISSING "+else+  am_missing_run=+  AC_MSG_WARN(['missing' script is too old or missing])+fi+])++# Helper functions for option handling.                     -*- Autoconf -*-++# Copyright (C) 2001-2021 Free Software Foundation, Inc.+#+# This file is free software; the Free Software Foundation+# gives unlimited permission to copy and/or distribute it,+# with or without modifications, as long as this notice is preserved.++# _AM_MANGLE_OPTION(NAME)+# -----------------------+AC_DEFUN([_AM_MANGLE_OPTION],+[[_AM_OPTION_]m4_bpatsubst($1, [[^a-zA-Z0-9_]], [_])])++# _AM_SET_OPTION(NAME)+# --------------------+# Set option NAME.  Presently that only means defining a flag for this option.+AC_DEFUN([_AM_SET_OPTION],+[m4_define(_AM_MANGLE_OPTION([$1]), [1])])++# _AM_SET_OPTIONS(OPTIONS)+# ------------------------+# OPTIONS is a space-separated list of Automake options.+AC_DEFUN([_AM_SET_OPTIONS],+[m4_foreach_w([_AM_Option], [$1], [_AM_SET_OPTION(_AM_Option)])])++# _AM_IF_OPTION(OPTION, IF-SET, [IF-NOT-SET])+# -------------------------------------------+# Execute IF-SET if OPTION is set, IF-NOT-SET otherwise.+AC_DEFUN([_AM_IF_OPTION],+[m4_ifset(_AM_MANGLE_OPTION([$1]), [$2], [$3])])++# Copyright (C) 1999-2021 Free Software Foundation, Inc.+#+# This file is free software; the Free Software Foundation+# gives unlimited permission to copy and/or distribute it,+# with or without modifications, as long as this notice is preserved.++# _AM_PROG_CC_C_O+# ---------------+# Like AC_PROG_CC_C_O, but changed for automake.  We rewrite AC_PROG_CC+# to automatically call this.+AC_DEFUN([_AM_PROG_CC_C_O],+[AC_REQUIRE([AM_AUX_DIR_EXPAND])dnl+AC_REQUIRE_AUX_FILE([compile])dnl+AC_LANG_PUSH([C])dnl+AC_CACHE_CHECK(+  [whether $CC understands -c and -o together],+  [am_cv_prog_cc_c_o],+  [AC_LANG_CONFTEST([AC_LANG_PROGRAM([])])+  # Make sure it works both with $CC and with simple cc.+  # Following AC_PROG_CC_C_O, we do the test twice because some+  # compilers refuse to overwrite an existing .o file with -o,+  # though they will create one.+  am_cv_prog_cc_c_o=yes+  for am_i in 1 2; do+    if AM_RUN_LOG([$CC -c conftest.$ac_ext -o conftest2.$ac_objext]) \+         && test -f conftest2.$ac_objext; then+      : OK+    else+      am_cv_prog_cc_c_o=no+      break+    fi+  done+  rm -f core conftest*+  unset am_i])+if test "$am_cv_prog_cc_c_o" != yes; then+   # Losing compiler, so override with the script.+   # FIXME: It is wrong to rewrite CC.+   # But if we don't then we get into trouble of one sort or another.+   # A longer-term fix would be to have automake use am__CC in this case,+   # and then we could set am__CC="\$(top_srcdir)/compile \$(CC)"+   CC="$am_aux_dir/compile $CC"+fi+AC_LANG_POP([C])])++# For backward compatibility.+AC_DEFUN_ONCE([AM_PROG_CC_C_O], [AC_REQUIRE([AC_PROG_CC])])++# Copyright (C) 2001-2021 Free Software Foundation, Inc.+#+# This file is free software; the Free Software Foundation+# gives unlimited permission to copy and/or distribute it,+# with or without modifications, as long as this notice is preserved.++# AM_RUN_LOG(COMMAND)+# -------------------+# Run COMMAND, save the exit status in ac_status, and log it.+# (This has been adapted from Autoconf's _AC_RUN_LOG macro.)+AC_DEFUN([AM_RUN_LOG],+[{ echo "$as_me:$LINENO: $1" >&AS_MESSAGE_LOG_FD+   ($1) >&AS_MESSAGE_LOG_FD 2>&AS_MESSAGE_LOG_FD+   ac_status=$?+   echo "$as_me:$LINENO: \$? = $ac_status" >&AS_MESSAGE_LOG_FD+   (exit $ac_status); }])++# Check to make sure that the build environment is sane.    -*- Autoconf -*-++# Copyright (C) 1996-2021 Free Software Foundation, Inc.+#+# This file is free software; the Free Software Foundation+# gives unlimited permission to copy and/or distribute it,+# with or without modifications, as long as this notice is preserved.++# AM_SANITY_CHECK+# ---------------+AC_DEFUN([AM_SANITY_CHECK],+[AC_MSG_CHECKING([whether build environment is sane])+# Reject unsafe characters in $srcdir or the absolute working directory+# name.  Accept space and tab only in the latter.+am_lf='+'+case `pwd` in+  *[[\\\"\#\$\&\'\`$am_lf]]*)+    AC_MSG_ERROR([unsafe absolute working directory name]);;+esac+case $srcdir in+  *[[\\\"\#\$\&\'\`$am_lf\ \	]]*)+    AC_MSG_ERROR([unsafe srcdir value: '$srcdir']);;+esac++# Do 'set' in a subshell so we don't clobber the current shell's+# arguments.  Must try -L first in case configure is actually a+# symlink; some systems play weird games with the mod time of symlinks+# (eg FreeBSD returns the mod time of the symlink's containing+# directory).+if (+   am_has_slept=no+   for am_try in 1 2; do+     echo "timestamp, slept: $am_has_slept" > conftest.file+     set X `ls -Lt "$srcdir/configure" conftest.file 2> /dev/null`+     if test "$[*]" = "X"; then+	# -L didn't work.+	set X `ls -t "$srcdir/configure" conftest.file`+     fi+     if test "$[*]" != "X $srcdir/configure conftest.file" \+	&& test "$[*]" != "X conftest.file $srcdir/configure"; then++	# If neither matched, then we have a broken ls.  This can happen+	# if, for instance, CONFIG_SHELL is bash and it inherits a+	# broken ls alias from the environment.  This has actually+	# happened.  Such a system could not be considered "sane".+	AC_MSG_ERROR([ls -t appears to fail.  Make sure there is not a broken+  alias in your environment])+     fi+     if test "$[2]" = conftest.file || test $am_try -eq 2; then+       break+     fi+     # Just in case.+     sleep 1+     am_has_slept=yes+   done+   test "$[2]" = conftest.file+   )+then+   # Ok.+   :+else+   AC_MSG_ERROR([newly created file is older than distributed files!+Check your system clock])+fi+AC_MSG_RESULT([yes])+# If we didn't sleep, we still need to ensure time stamps of config.status and+# generated files are strictly newer.+am_sleep_pid=+if grep 'slept: no' conftest.file >/dev/null 2>&1; then+  ( sleep 1 ) &+  am_sleep_pid=$!+fi+AC_CONFIG_COMMANDS_PRE(+  [AC_MSG_CHECKING([that generated files are newer than configure])+   if test -n "$am_sleep_pid"; then+     # Hide warnings about reused PIDs.+     wait $am_sleep_pid 2>/dev/null+   fi+   AC_MSG_RESULT([done])])+rm -f conftest.file+])++# Copyright (C) 2009-2021 Free Software Foundation, Inc.+#+# This file is free software; the Free Software Foundation+# gives unlimited permission to copy and/or distribute it,+# with or without modifications, as long as this notice is preserved.++# AM_SILENT_RULES([DEFAULT])+# --------------------------+# Enable less verbose build rules; with the default set to DEFAULT+# ("yes" being less verbose, "no" or empty being verbose).+AC_DEFUN([AM_SILENT_RULES],+[AC_ARG_ENABLE([silent-rules], [dnl+AS_HELP_STRING(+  [--enable-silent-rules],+  [less verbose build output (undo: "make V=1")])+AS_HELP_STRING(+  [--disable-silent-rules],+  [verbose build output (undo: "make V=0")])dnl+])+case $enable_silent_rules in @%:@ (((+  yes) AM_DEFAULT_VERBOSITY=0;;+   no) AM_DEFAULT_VERBOSITY=1;;+    *) AM_DEFAULT_VERBOSITY=m4_if([$1], [yes], [0], [1]);;+esac+dnl+dnl A few 'make' implementations (e.g., NonStop OS and NextStep)+dnl do not support nested variable expansions.+dnl See automake bug#9928 and bug#10237.+am_make=${MAKE-make}+AC_CACHE_CHECK([whether $am_make supports nested variables],+   [am_cv_make_support_nested_variables],+   [if AS_ECHO([['TRUE=$(BAR$(V))+BAR0=false+BAR1=true+V=1+am__doit:+	@$(TRUE)+.PHONY: am__doit']]) | $am_make -f - >/dev/null 2>&1; then+  am_cv_make_support_nested_variables=yes+else+  am_cv_make_support_nested_variables=no+fi])+if test $am_cv_make_support_nested_variables = yes; then+  dnl Using '$V' instead of '$(V)' breaks IRIX make.+  AM_V='$(V)'+  AM_DEFAULT_V='$(AM_DEFAULT_VERBOSITY)'+else+  AM_V=$AM_DEFAULT_VERBOSITY+  AM_DEFAULT_V=$AM_DEFAULT_VERBOSITY+fi+AC_SUBST([AM_V])dnl+AM_SUBST_NOTMAKE([AM_V])dnl+AC_SUBST([AM_DEFAULT_V])dnl+AM_SUBST_NOTMAKE([AM_DEFAULT_V])dnl+AC_SUBST([AM_DEFAULT_VERBOSITY])dnl+AM_BACKSLASH='\'+AC_SUBST([AM_BACKSLASH])dnl+_AM_SUBST_NOTMAKE([AM_BACKSLASH])dnl+])++# Copyright (C) 2001-2021 Free Software Foundation, Inc.+#+# This file is free software; the Free Software Foundation+# gives unlimited permission to copy and/or distribute it,+# with or without modifications, as long as this notice is preserved.++# AM_PROG_INSTALL_STRIP+# ---------------------+# One issue with vendor 'install' (even GNU) is that you can't+# specify the program used to strip binaries.  This is especially+# annoying in cross-compiling environments, where the build's strip+# is unlikely to handle the host's binaries.+# Fortunately install-sh will honor a STRIPPROG variable, so we+# always use install-sh in "make install-strip", and initialize+# STRIPPROG with the value of the STRIP variable (set by the user).+AC_DEFUN([AM_PROG_INSTALL_STRIP],+[AC_REQUIRE([AM_PROG_INSTALL_SH])dnl+# Installed binaries are usually stripped using 'strip' when the user+# run "make install-strip".  However 'strip' might not be the right+# tool to use in cross-compilation environments, therefore Automake+# will honor the 'STRIP' environment variable to overrule this program.+dnl Don't test for $cross_compiling = yes, because it might be 'maybe'.+if test "$cross_compiling" != no; then+  AC_CHECK_TOOL([STRIP], [strip], :)+fi+INSTALL_STRIP_PROGRAM="\$(install_sh) -c -s"+AC_SUBST([INSTALL_STRIP_PROGRAM])])++# Copyright (C) 2006-2021 Free Software Foundation, Inc.+#+# This file is free software; the Free Software Foundation+# gives unlimited permission to copy and/or distribute it,+# with or without modifications, as long as this notice is preserved.++# _AM_SUBST_NOTMAKE(VARIABLE)+# ---------------------------+# Prevent Automake from outputting VARIABLE = @VARIABLE@ in Makefile.in.+# This macro is traced by Automake.+AC_DEFUN([_AM_SUBST_NOTMAKE])++# AM_SUBST_NOTMAKE(VARIABLE)+# --------------------------+# Public sister of _AM_SUBST_NOTMAKE.+AC_DEFUN([AM_SUBST_NOTMAKE], [_AM_SUBST_NOTMAKE($@)])++# Check how to create a tarball.                            -*- Autoconf -*-++# Copyright (C) 2004-2021 Free Software Foundation, Inc.+#+# This file is free software; the Free Software Foundation+# gives unlimited permission to copy and/or distribute it,+# with or without modifications, as long as this notice is preserved.++# _AM_PROG_TAR(FORMAT)+# --------------------+# Check how to create a tarball in format FORMAT.+# FORMAT should be one of 'v7', 'ustar', or 'pax'.+#+# Substitute a variable $(am__tar) that is a command+# writing to stdout a FORMAT-tarball containing the directory+# $tardir.+#     tardir=directory && $(am__tar) > result.tar+#+# Substitute a variable $(am__untar) that extract such+# a tarball read from stdin.+#     $(am__untar) < result.tar+#+AC_DEFUN([_AM_PROG_TAR],+[# Always define AMTAR for backward compatibility.  Yes, it's still used+# in the wild :-(  We should find a proper way to deprecate it ...+AC_SUBST([AMTAR], ['$${TAR-tar}'])++# We'll loop over all known methods to create a tar archive until one works.+_am_tools='gnutar m4_if([$1], [ustar], [plaintar]) pax cpio none'++m4_if([$1], [v7],+  [am__tar='$${TAR-tar} chof - "$$tardir"' am__untar='$${TAR-tar} xf -'],++  [m4_case([$1],+    [ustar],+     [# The POSIX 1988 'ustar' format is defined with fixed-size fields.+      # There is notably a 21 bits limit for the UID and the GID.  In fact,+      # the 'pax' utility can hang on bigger UID/GID (see automake bug#8343+      # and bug#13588).+      am_max_uid=2097151 # 2^21 - 1+      am_max_gid=$am_max_uid+      # The $UID and $GID variables are not portable, so we need to resort+      # to the POSIX-mandated id(1) utility.  Errors in the 'id' calls+      # below are definitely unexpected, so allow the users to see them+      # (that is, avoid stderr redirection).+      am_uid=`id -u || echo unknown`+      am_gid=`id -g || echo unknown`+      AC_MSG_CHECKING([whether UID '$am_uid' is supported by ustar format])+      if test $am_uid -le $am_max_uid; then+         AC_MSG_RESULT([yes])+      else+         AC_MSG_RESULT([no])+         _am_tools=none+      fi+      AC_MSG_CHECKING([whether GID '$am_gid' is supported by ustar format])+      if test $am_gid -le $am_max_gid; then+         AC_MSG_RESULT([yes])+      else+        AC_MSG_RESULT([no])+        _am_tools=none+      fi],++  [pax],+    [],++  [m4_fatal([Unknown tar format])])++  AC_MSG_CHECKING([how to create a $1 tar archive])++  # Go ahead even if we have the value already cached.  We do so because we+  # need to set the values for the 'am__tar' and 'am__untar' variables.+  _am_tools=${am_cv_prog_tar_$1-$_am_tools}++  for _am_tool in $_am_tools; do+    case $_am_tool in+    gnutar)+      for _am_tar in tar gnutar gtar; do+        AM_RUN_LOG([$_am_tar --version]) && break+      done+      am__tar="$_am_tar --format=m4_if([$1], [pax], [posix], [$1]) -chf - "'"$$tardir"'+      am__tar_="$_am_tar --format=m4_if([$1], [pax], [posix], [$1]) -chf - "'"$tardir"'+      am__untar="$_am_tar -xf -"+      ;;+    plaintar)+      # Must skip GNU tar: if it does not support --format= it doesn't create+      # ustar tarball either.+      (tar --version) >/dev/null 2>&1 && continue+      am__tar='tar chf - "$$tardir"'+      am__tar_='tar chf - "$tardir"'+      am__untar='tar xf -'+      ;;+    pax)+      am__tar='pax -L -x $1 -w "$$tardir"'+      am__tar_='pax -L -x $1 -w "$tardir"'+      am__untar='pax -r'+      ;;+    cpio)+      am__tar='find "$$tardir" -print | cpio -o -H $1 -L'+      am__tar_='find "$tardir" -print | cpio -o -H $1 -L'+      am__untar='cpio -i -H $1 -d'+      ;;+    none)+      am__tar=false+      am__tar_=false+      am__untar=false+      ;;+    esac++    # If the value was cached, stop now.  We just wanted to have am__tar+    # and am__untar set.+    test -n "${am_cv_prog_tar_$1}" && break++    # tar/untar a dummy directory, and stop if the command works.+    rm -rf conftest.dir+    mkdir conftest.dir+    echo GrepMe > conftest.dir/file+    AM_RUN_LOG([tardir=conftest.dir && eval $am__tar_ >conftest.tar])+    rm -rf conftest.dir+    if test -s conftest.tar; then+      AM_RUN_LOG([$am__untar <conftest.tar])+      AM_RUN_LOG([cat conftest.dir/file])+      grep GrepMe conftest.dir/file >/dev/null 2>&1 && break+    fi+  done+  rm -rf conftest.dir++  AC_CACHE_VAL([am_cv_prog_tar_$1], [am_cv_prog_tar_$1=$_am_tool])+  AC_MSG_RESULT([$am_cv_prog_tar_$1])])++AC_SUBST([am__tar])+AC_SUBST([am__untar])+]) # _AM_PROG_TAR++m4_include([m4/asmcfi.m4])+m4_include([m4/ax_cc_maxopt.m4])+m4_include([m4/ax_cflags_warn_all.m4])+m4_include([m4/ax_check_compile_flag.m4])+m4_include([m4/ax_compiler_vendor.m4])+m4_include([m4/ax_configure_args.m4])+m4_include([m4/ax_enable_builddir.m4])+m4_include([m4/ax_gcc_archflag.m4])+m4_include([m4/ax_gcc_x86_cpuid.m4])+m4_include([m4/ax_prepend_flag.m4])+m4_include([m4/ax_require_defined.m4])+m4_include([m4/libtool.m4]) m4_include([m4/ltoptions.m4]) m4_include([m4/ltsugar.m4]) m4_include([m4/ltversion.m4])
compile view
@@ -1,9 +1,9 @@ #! /bin/sh # Wrapper for compilers which do not understand '-c -o'. -scriptversion=2024-06-19.01; # UTC+scriptversion=2018-03-07.03; # UTC -# Copyright (C) 1999-2024 Free Software Foundation, Inc.+# Copyright (C) 1999-2021 Free Software Foundation, Inc. # Written by Tom Tromey <tromey@cygnus.com>. # # This program is free software; you can redistribute it and/or modify@@ -143,7 +143,7 @@ 	  # configure might choose to run compile as 'compile cc -o foo foo.c'. 	  eat=1 	  case $2 in-	    *.o | *.lo | *.[oO][bB][jJ])+	    *.o | *.[oO][bB][jJ]) 	      func_file_conv "$2" 	      set x "$@" -Fo"$file" 	      shift@@ -248,17 +248,14 @@ right script to run: please start by reading the file 'INSTALL'.  Report bugs to <bug-automake@gnu.org>.-GNU Automake home page: <https://www.gnu.org/software/automake/>.-General help using GNU software: <https://www.gnu.org/gethelp/>. EOF     exit $?     ;;   -v | --v*)-    echo "compile (GNU Automake) $scriptversion"+    echo "compile $scriptversion"     exit $?     ;;   cl | *[/\\]cl | cl.exe | *[/\\]cl.exe | \-  clang-cl | *[/\\]clang-cl | clang-cl.exe | *[/\\]clang-cl.exe | \   icl | *[/\\]icl | icl.exe | *[/\\]icl.exe )     func_cl_wrapper "$@"      # Doesn't return...     ;;
config.guess view
@@ -1,10 +1,10 @@ #! /bin/sh # Attempt to guess a canonical system name.-#   Copyright 1992-2024 Free Software Foundation, Inc.+#   Copyright 1992-2022 Free Software Foundation, Inc.  # shellcheck disable=SC2006,SC2268 # see below for rationale -timestamp='2024-01-01'+timestamp='2022-01-09'  # This file is free software; you can redistribute it and/or modify it # under the terms of the GNU General Public License as published by@@ -47,7 +47,7 @@ usage="\ Usage: $0 [OPTION] -Output the configuration name of the system '$me' is run on.+Output the configuration name of the system \`$me' is run on.  Options:   -h, --help         print this help, then exit@@ -60,13 +60,13 @@ GNU config.guess ($timestamp)  Originally written by Per Bothner.-Copyright 1992-2024 Free Software Foundation, Inc.+Copyright 1992-2022 Free Software Foundation, Inc.  This is free software; see the source for copying conditions.  There is NO warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE."  help="-Try '$me --help' for more information."+Try \`$me --help' for more information."  # Parse command line while test $# -gt 0 ; do@@ -102,8 +102,8 @@ # temporary files to be created and, as you can see below, it is a # headache to deal with in a portable fashion. -# Historically, 'CC_FOR_BUILD' used to be named 'HOST_CC'. We still-# use 'HOST_CC' if defined, but it is deprecated.+# Historically, `CC_FOR_BUILD' used to be named `HOST_CC'. We still+# use `HOST_CC' if defined, but it is deprecated.  # Portable tmp directory creation inspired by the Autoconf team. @@ -155,9 +155,6 @@  	set_cc_for_build 	cat <<-EOF > "$dummy.c"-	#if defined(__ANDROID__)-	LIBC=android-	#else 	#include <features.h> 	#if defined(__UCLIBC__) 	LIBC=uclibc@@ -165,8 +162,6 @@ 	LIBC=dietlibc 	#elif defined(__GLIBC__) 	LIBC=gnu-	#elif defined(__LLVM_LIBC__)-	LIBC=llvm 	#else 	#include <stdarg.h> 	/* First heuristic to detect musl libc.  */@@ -174,7 +169,6 @@ 	LIBC=musl 	#endif 	#endif-	#endif 	EOF 	cc_set_libc=`$CC_FOR_BUILD -E "$dummy.c" 2>/dev/null | grep '^LIBC' | sed 's, ,,g'` 	eval "$cc_set_libc"@@ -465,7 +459,7 @@ 		UNAME_RELEASE=`uname -v` 		;; 	esac-	# Japanese Language versions have a version number like '4.1.3-JL'.+	# Japanese Language versions have a version number like `4.1.3-JL'. 	SUN_REL=`echo "$UNAME_RELEASE" | sed -e 's/-/_/'` 	GUESS=sparc-sun-sunos$SUN_REL 	;;@@ -910,7 +904,7 @@ 	fi 	;;     *:FreeBSD:*:*)-	UNAME_PROCESSOR=`uname -p`+	UNAME_PROCESSOR=`/usr/bin/uname -p` 	case $UNAME_PROCESSOR in 	    amd64) 		UNAME_PROCESSOR=x86_64 ;;@@ -972,37 +966,11 @@ 	GNU_REL=`echo "$UNAME_RELEASE" | sed -e 's/[-(].*//'` 	GUESS=$UNAME_MACHINE-unknown-$GNU_SYS$GNU_REL-$LIBC 	;;-    x86_64:[Mm]anagarm:*:*|i?86:[Mm]anagarm:*:*)-	GUESS="$UNAME_MACHINE-pc-managarm-mlibc"-	;;-    *:[Mm]anagarm:*:*)-	GUESS="$UNAME_MACHINE-unknown-managarm-mlibc"-	;;     *:Minix:*:*) 	GUESS=$UNAME_MACHINE-unknown-minix 	;;     aarch64:Linux:*:*)-	set_cc_for_build-	CPU=$UNAME_MACHINE-	LIBCABI=$LIBC-	if test "$CC_FOR_BUILD" != no_compiler_found; then-	    ABI=64-	    sed 's/^	    //' << EOF > "$dummy.c"-	    #ifdef __ARM_EABI__-	    #ifdef __ARM_PCS_VFP-	    ABI=eabihf-	    #else-	    ABI=eabi-	    #endif-	    #endif-EOF-	    cc_set_abi=`$CC_FOR_BUILD -E "$dummy.c" 2>/dev/null | grep '^ABI' | sed 's, ,,g'`-	    eval "$cc_set_abi"-	    case $ABI in-		eabi | eabihf) CPU=armv8l; LIBCABI=$LIBC$ABI ;;-	    esac-	fi-	GUESS=$CPU-unknown-linux-$LIBCABI+	GUESS=$UNAME_MACHINE-unknown-linux-$LIBC 	;;     aarch64_be:Linux:*:*) 	UNAME_MACHINE=aarch64_be@@ -1068,16 +1036,7 @@     k1om:Linux:*:*) 	GUESS=$UNAME_MACHINE-unknown-linux-$LIBC 	;;-    kvx:Linux:*:*)-	GUESS=$UNAME_MACHINE-unknown-linux-$LIBC-	;;-    kvx:cos:*:*)-	GUESS=$UNAME_MACHINE-unknown-cos-	;;-    kvx:mbr:*:*)-	GUESS=$UNAME_MACHINE-unknown-mbr-	;;-    loongarch32:Linux:*:* | loongarch64:Linux:*:*)+    loongarch32:Linux:*:* | loongarch64:Linux:*:* | loongarchx32:Linux:*:*) 	GUESS=$UNAME_MACHINE-unknown-linux-$LIBC 	;;     m32r*:Linux:*:*)@@ -1192,27 +1151,16 @@ 	;;     x86_64:Linux:*:*) 	set_cc_for_build-	CPU=$UNAME_MACHINE 	LIBCABI=$LIBC 	if test "$CC_FOR_BUILD" != no_compiler_found; then-	    ABI=64-	    sed 's/^	    //' << EOF > "$dummy.c"-	    #ifdef __i386__-	    ABI=x86-	    #else-	    #ifdef __ILP32__-	    ABI=x32-	    #endif-	    #endif-EOF-	    cc_set_abi=`$CC_FOR_BUILD -E "$dummy.c" 2>/dev/null | grep '^ABI' | sed 's, ,,g'`-	    eval "$cc_set_abi"-	    case $ABI in-		x86) CPU=i686 ;;-		x32) LIBCABI=${LIBC}x32 ;;-	    esac+	    if (echo '#ifdef __ILP32__'; echo IS_X32; echo '#endif') | \+		(CCOPTS="" $CC_FOR_BUILD -E - 2>/dev/null) | \+		grep IS_X32 >/dev/null+	    then+		LIBCABI=${LIBC}x32+	    fi 	fi-	GUESS=$CPU-pc-linux-$LIBCABI+	GUESS=$UNAME_MACHINE-pc-linux-$LIBCABI 	;;     xtensa*:Linux:*:*) 	GUESS=$UNAME_MACHINE-unknown-linux-$LIBC@@ -1232,7 +1180,7 @@ 	GUESS=$UNAME_MACHINE-pc-sysv4.2uw$UNAME_VERSION 	;;     i*86:OS/2:*:*)-	# If we were able to find 'uname', then EMX Unix compatibility+	# If we were able to find `uname', then EMX Unix compatibility 	# is probably installed. 	GUESS=$UNAME_MACHINE-pc-os2-emx 	;;@@ -1373,7 +1321,7 @@ 		GUESS=ns32k-sni-sysv 	fi 	;;-    PENTIUM:*:4.0*:*)	# Unisys 'ClearPath HMP IX 4000' SVR4/MP effort+    PENTIUM:*:4.0*:*)	# Unisys `ClearPath HMP IX 4000' SVR4/MP effort 			# says <Richard.M.Bartel@ccMail.Census.GOV> 	GUESS=i586-unisys-sysv4 	;;@@ -1419,11 +1367,8 @@     BePC:Haiku:*:*)	# Haiku running on Intel PC compatible. 	GUESS=i586-pc-haiku 	;;-    ppc:Haiku:*:*)	# Haiku running on Apple PowerPC-	GUESS=powerpc-apple-haiku-	;;-    *:Haiku:*:*)	# Haiku modern gcc (not bound by BeOS compat)-	GUESS=$UNAME_MACHINE-unknown-haiku+    x86_64:Haiku:*:*)+	GUESS=x86_64-unknown-haiku 	;;     SX-4:SUPER-UX:*:*) 	GUESS=sx4-nec-superux$UNAME_RELEASE@@ -1594,9 +1539,6 @@ 	;;     *:Unleashed:*:*) 	GUESS=$UNAME_MACHINE-unknown-unleashed$UNAME_RELEASE-	;;-    *:Ironclad:*:*)-	GUESS=$UNAME_MACHINE-unknown-ironclad 	;; esac 
config.sub view
@@ -1,10 +1,10 @@ #! /bin/sh # Configuration validation subroutine script.-#   Copyright 1992-2024 Free Software Foundation, Inc.+#   Copyright 1992-2022 Free Software Foundation, Inc.  # shellcheck disable=SC2006,SC2268 # see below for rationale -timestamp='2024-01-01'+timestamp='2022-01-03'  # This file is free software; you can redistribute it and/or modify it # under the terms of the GNU General Public License as published by@@ -76,13 +76,13 @@ version="\ GNU config.sub ($timestamp) -Copyright 1992-2024 Free Software Foundation, Inc.+Copyright 1992-2022 Free Software Foundation, Inc.  This is free software; see the source for copying conditions.  There is NO warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE."  help="-Try '$me --help' for more information."+Try \`$me --help' for more information."  # Parse command line while test $# -gt 0 ; do@@ -130,7 +130,7 @@ # Separate into logical components for further validation case $1 in 	*-*-*-*-*)-		echo "Invalid configuration '$1': more than four components" >&2+		echo Invalid configuration \`"$1"\': more than four components >&2 		exit 1 		;; 	*-*-*-*)@@ -145,8 +145,7 @@ 			nto-qnx* | linux-* | uclinux-uclibc* \ 			| uclinux-gnu* | kfreebsd*-gnu* | knetbsd*-gnu* | netbsd*-gnu* \ 			| netbsd*-eabi* | kopensolaris*-gnu* | cloudabi*-eabi* \-			| storm-chaos* | os2-emx* | rtmk-nova* | managarm-* \-			| windows-* )+			| storm-chaos* | os2-emx* | rtmk-nova*) 				basic_machine=$field1 				basic_os=$maybe_os 				;;@@ -944,7 +943,7 @@ EOF 		IFS=$saved_IFS 		;;-	# We use 'pc' rather than 'unknown'+	# We use `pc' rather than `unknown' 	# because (1) that's what they normally are, and 	# (2) the word "unknown" tends to confuse beginning users. 	i*86 | x86_64)@@ -1076,7 +1075,7 @@ 	pentium-* | p5-* | k5-* | k6-* | nexgen-* | viac3-*) 		cpu=i586 		;;-	pentiumpro-* | p6-* | 6x86-* | athlon-* | athlon_*-*)+	pentiumpro-* | p6-* | 6x86-* | athlon-* | athalon_*-*) 		cpu=i686 		;; 	pentiumii-* | pentium2-* | pentiumiii-* | pentium3-*)@@ -1127,7 +1126,7 @@ 	xscale-* | xscalee[bl]-*) 		cpu=`echo "$cpu" | sed 's/^xscale/arm/'` 		;;-	arm64-* | arm64_32-* | aarch64le-*)+	arm64-* | aarch64le-*) 		cpu=aarch64 		;; @@ -1181,7 +1180,7 @@ 		case $cpu in 			1750a | 580 \ 			| a29k \-			| aarch64 | aarch64_be | aarch64c | arm64ec \+			| aarch64 | aarch64_be \ 			| abacus \ 			| alpha | alphaev[4-8] | alphaev56 | alphaev6[78] \ 			| alpha64 | alpha64ev[4-8] | alpha64ev56 | alpha64ev6[78] \@@ -1200,29 +1199,50 @@ 			| d10v | d30v | dlx | dsp16xx \ 			| e2k | elxsi | epiphany \ 			| f30[01] | f700 | fido | fr30 | frv | ft32 | fx80 \-			| javascript \ 			| h8300 | h8500 \ 			| hppa | hppa1.[01] | hppa2.0 | hppa2.0[nw] | hppa64 \ 			| hexagon \ 			| i370 | i*86 | i860 | i960 | ia16 | ia64 \ 			| ip2k | iq2000 \ 			| k1om \-			| kvx \ 			| le32 | le64 \ 			| lm32 \-			| loongarch32 | loongarch64 \+			| loongarch32 | loongarch64 | loongarchx32 \ 			| m32c | m32r | m32rle \ 			| m5200 | m68000 | m680[012346]0 | m68360 | m683?2 | m68k \ 			| m6811 | m68hc11 | m6812 | m68hc12 | m68hcs12x \ 			| m88110 | m88k | maxq | mb | mcore | mep | metag \ 			| microblaze | microblazeel \-			| mips* \+			| mips | mipsbe | mipseb | mipsel | mipsle \+			| mips16 \+			| mips64 | mips64eb | mips64el \+			| mips64octeon | mips64octeonel \+			| mips64orion | mips64orionel \+			| mips64r5900 | mips64r5900el \+			| mips64vr | mips64vrel \+			| mips64vr4100 | mips64vr4100el \+			| mips64vr4300 | mips64vr4300el \+			| mips64vr5000 | mips64vr5000el \+			| mips64vr5900 | mips64vr5900el \+			| mipsisa32 | mipsisa32el \+			| mipsisa32r2 | mipsisa32r2el \+			| mipsisa32r3 | mipsisa32r3el \+			| mipsisa32r5 | mipsisa32r5el \+			| mipsisa32r6 | mipsisa32r6el \+			| mipsisa64 | mipsisa64el \+			| mipsisa64r2 | mipsisa64r2el \+			| mipsisa64r3 | mipsisa64r3el \+			| mipsisa64r5 | mipsisa64r5el \+			| mipsisa64r6 | mipsisa64r6el \+			| mipsisa64sb1 | mipsisa64sb1el \+			| mipsisa64sr71k | mipsisa64sr71kel \+			| mipsr5900 | mipsr5900el \+			| mipstx39 | mipstx39el \ 			| mmix \ 			| mn10200 | mn10300 \ 			| moxie \ 			| mt \ 			| msp430 \-			| nanomips* \ 			| nds32 | nds32le | nds32be \ 			| nfp \ 			| nios | nios2 | nios2eb | nios2el \@@ -1254,7 +1274,6 @@ 			| ubicom32 \ 			| v70 | v850 | v850e | v850e1 | v850es | v850e2 | v850e2v3 \ 			| vax \-			| vc4 \ 			| visium \ 			| w65 \ 			| wasm32 | wasm64 \@@ -1266,7 +1285,7 @@ 				;;  			*)-				echo "Invalid configuration '$1': machine '$cpu-$vendor' not recognized" 1>&2+				echo Invalid configuration \`"$1"\': machine \`"$cpu-$vendor"\' not recognized 1>&2 				exit 1 				;; 		esac@@ -1287,12 +1306,11 @@  # Decode manufacturer-specific aliases for certain operating systems. -if test x"$basic_os" != x+if test x$basic_os != x then  # First recognize some ad-hoc cases, or perhaps split kernel-os, or else just # set os.-obj= case $basic_os in 	gnu/linux*) 		kernel=linux@@ -1323,10 +1341,6 @@ 		kernel=linux 		os=`echo "$basic_os" | sed -e 's|linux|gnu|'` 		;;-	managarm*)-		kernel=managarm-		os=`echo "$basic_os" | sed -e 's|managarm|mlibc|'`-		;; 	*) 		kernel= 		os=$basic_os@@ -1492,16 +1506,10 @@ 			os=eabi 			;; 		    *)-			os=-			obj=elf+			os=elf 			;; 		esac 		;;-	aout* | coff* | elf* | pe*)-		# These are machine code file formats, not OSes-		obj=$os-		os=-		;; 	*) 		# No normalization, but not necessarily accepted, that comes below. 		;;@@ -1520,15 +1528,12 @@ # system, and we'll never get to this point.  kernel=-obj= case $cpu-$vendor in 	score-*)-		os=-		obj=elf+		os=elf 		;; 	spu-*)-		os=-		obj=elf+		os=elf 		;; 	*-acorn) 		os=riscix1.2@@ -1538,35 +1543,28 @@ 		os=gnu 		;; 	arm*-semi)-		os=-		obj=aout+		os=aout 		;; 	c4x-* | tic4x-*)-		os=-		obj=coff+		os=coff 		;; 	c8051-*)-		os=-		obj=elf+		os=elf 		;; 	clipper-intergraph) 		os=clix 		;; 	hexagon-*)-		os=-		obj=elf+		os=elf 		;; 	tic54x-*)-		os=-		obj=coff+		os=coff 		;; 	tic55x-*)-		os=-		obj=coff+		os=coff 		;; 	tic6x-*)-		os=-		obj=coff+		os=coff 		;; 	# This must come before the *-dec entry. 	pdp10-*)@@ -1588,24 +1586,19 @@ 		os=sunos3 		;; 	m68*-cisco)-		os=-		obj=aout+		os=aout 		;; 	mep-*)-		os=-		obj=elf+		os=elf 		;; 	mips*-cisco)-		os=-		obj=elf+		os=elf 		;;-	mips*-*|nanomips*-*)-		os=-		obj=elf+	mips*-*)+		os=elf 		;; 	or32-*)-		os=-		obj=coff+		os=coff 		;; 	*-tti)	# must be before sparc entry or we get the wrong os. 		os=sysv3@@ -1614,8 +1607,7 @@ 		os=sunos4.1.1 		;; 	pru-*)-		os=-		obj=elf+		os=elf 		;; 	*-be) 		os=beos@@ -1696,12 +1688,10 @@ 		os=uxpv 		;; 	*-rom68k)-		os=-		obj=coff+		os=coff 		;; 	*-*bug)-		os=-		obj=coff+		os=coff 		;; 	*-apple) 		os=macos@@ -1719,11 +1709,10 @@  fi -# Now, validate our (potentially fixed-up) individual pieces (OS, OBJ).-+# Now, validate our (potentially fixed-up) OS. case $os in 	# Sometimes we do "kernel-libc", so those need to count as OSes.-	llvm* | musl* | newlib* | relibc* | uclibc*)+	musl* | newlib* | relibc* | uclibc*) 		;; 	# Likewise for "kernel-abi" 	eabi* | gnueabi*)@@ -1731,9 +1720,6 @@ 	# VxWorks passes extra cpu info in the 4th filed. 	simlinux | simwindows | spe) 		;;-	# See `case $cpu-$os` validation below-	ghcjs)-		;; 	# Now accept the basic system types. 	# The portable systems comes first. 	# Each alternative MUST end in a * to match a version number.@@ -1742,7 +1728,7 @@ 	     | hpux* | unos* | osf* | luna* | dgux* | auroraux* | solaris* \ 	     | sym* |  plan9* | psp* | sim* | xray* | os68k* | v88r* \ 	     | hiux* | abug | nacl* | netware* | windows* \-	     | os9* | macos* | osx* | ios* | tvos* | watchos* \+	     | os9* | macos* | osx* | ios* \ 	     | mpw* | magic* | mmixware* | mon960* | lnews* \ 	     | amigaos* | amigados* | msdos* | newsos* | unicos* | aof* \ 	     | aos* | aros* | cloudabi* | sortix* | twizzler* \@@ -1751,11 +1737,11 @@ 	     | mirbsd* | netbsd* | dicos* | openedition* | ose* \ 	     | bitrig* | openbsd* | secbsd* | solidbsd* | libertybsd* | os108* \ 	     | ekkobsd* | freebsd* | riscix* | lynxos* | os400* \-	     | bosx* | nextstep* | cxux* | oabi* \-	     | ptx* | ecoff* | winnt* | domain* | vsta* \+	     | bosx* | nextstep* | cxux* | aout* | elf* | oabi* \+	     | ptx* | coff* | ecoff* | winnt* | domain* | vsta* \ 	     | udi* | lites* | ieee* | go32* | aux* | hcos* \ 	     | chorusrdb* | cegcc* | glidix* | serenity* \-	     | cygwin* | msys* | moss* | proelf* | rtems* \+	     | cygwin* | msys* | pe* | moss* | proelf* | rtems* \ 	     | midipix* | mingw32* | mingw64* | mint* \ 	     | uxpv* | beos* | mpeix* | udk* | moxiebox* \ 	     | interix* | uwin* | mks* | rhapsody* | darwin* \@@ -1768,118 +1754,49 @@ 	     | onefs* | tirtos* | phoenix* | fuchsia* | redox* | bme* \ 	     | midnightbsd* | amdhsa* | unleashed* | emscripten* | wasi* \ 	     | nsk* | powerunix* | genode* | zvmoe* | qnx* | emx* | zephyr* \-	     | fiwix* | mlibc* | cos* | mbr* | ironclad* )+	     | fiwix* ) 		;; 	# This one is extra strict with allowed versions 	sco3.2v2 | sco3.2v[4-9]* | sco5v6*) 		# Don't forget version if it is 3.2v4 or newer. 		;;-	# This refers to builds using the UEFI calling convention-	# (which depends on the architecture) and PE file format.-	# Note that this is both a different calling convention and-	# different file format than that of GNU-EFI-	# (x86_64-w64-mingw32).-	uefi)-		;; 	none) 		;;-	kernel* | msvc* )-		# Restricted further below-		;;-	'')-		if test x"$obj" = x-		then-			echo "Invalid configuration '$1': Blank OS only allowed with explicit machine code file format" 1>&2-		fi-		;; 	*)-		echo "Invalid configuration '$1': OS '$os' not recognized" 1>&2-		exit 1-		;;-esac--case $obj in-	aout* | coff* | elf* | pe*)-		;;-	'')-		# empty is fine-		;;-	*)-		echo "Invalid configuration '$1': Machine code format '$obj' not recognized" 1>&2-		exit 1-		;;-esac--# Here we handle the constraint that a (synthetic) cpu and os are-# valid only in combination with each other and nowhere else.-case $cpu-$os in-	# The "javascript-unknown-ghcjs" triple is used by GHC; we-	# accept it here in order to tolerate that, but reject any-	# variations.-	javascript-ghcjs)-		;;-	javascript-* | *-ghcjs)-		echo "Invalid configuration '$1': cpu '$cpu' is not valid with os '$os$obj'" 1>&2+		echo Invalid configuration \`"$1"\': OS \`"$os"\' not recognized 1>&2 		exit 1 		;; esac  # As a final step for OS-related things, validate the OS-kernel combination # (given a valid OS), if there is a kernel.-case $kernel-$os-$obj in-	linux-gnu*- | linux-android*- | linux-dietlibc*- | linux-llvm*- \-		    | linux-mlibc*- | linux-musl*- | linux-newlib*- \-		    | linux-relibc*- | linux-uclibc*- )-		;;-	uclinux-uclibc*- )-		;;-	managarm-mlibc*- | managarm-kernel*- )+case $kernel-$os in+	linux-gnu* | linux-dietlibc* | linux-android* | linux-newlib* \+		   | linux-musl* | linux-relibc* | linux-uclibc* ) 		;;-	windows*-msvc*-)+	uclinux-uclibc* ) 		;;-	-dietlibc*- | -llvm*- | -mlibc*- | -musl*- | -newlib*- | -relibc*- \-		    | -uclibc*- )+	-dietlibc* | -newlib* | -musl* | -relibc* | -uclibc* ) 		# These are just libc implementations, not actual OSes, and thus 		# require a kernel.-		echo "Invalid configuration '$1': libc '$os' needs explicit kernel." 1>&2-		exit 1-		;;-	-kernel*- )-		echo "Invalid configuration '$1': '$os' needs explicit kernel." 1>&2-		exit 1-		;;-	*-kernel*- )-		echo "Invalid configuration '$1': '$kernel' does not support '$os'." 1>&2-		exit 1-		;;-	*-msvc*- )-		echo "Invalid configuration '$1': '$os' needs 'windows'." 1>&2+		echo "Invalid configuration \`$1': libc \`$os' needs explicit kernel." 1>&2 		exit 1 		;;-	kfreebsd*-gnu*- | kopensolaris*-gnu*-)-		;;-	vxworks-simlinux- | vxworks-simwindows- | vxworks-spe-)+	kfreebsd*-gnu* | kopensolaris*-gnu*) 		;;-	nto-qnx*-)+	vxworks-simlinux | vxworks-simwindows | vxworks-spe) 		;;-	os2-emx-)+	nto-qnx*) 		;;-	ios*-simulator* | tvos*-simulator* | watchos*-simulator*)-		;;	-	*-eabi*- | *-gnueabi*-)+	os2-emx) 		;;-	none--*)-		# None (no kernel, i.e. freestanding / bare metal),-		# can be paired with an machine code file format+	*-eabi* | *-gnueabi*) 		;;-	-*-)+	-*) 		# Blank kernel with real OS is always fine. 		;;-	--*)-		# Blank kernel and OS with real machine code file format is always fine.-		;;-	*-*-*)-		echo "Invalid configuration '$1': Kernel '$kernel' not known to work with OS '$os'." 1>&2+	*-*)+		echo "Invalid configuration \`$1': Kernel \`$kernel' not known to work with OS \`$os'." 1>&2 		exit 1 		;; esac@@ -1962,7 +1879,7 @@ 		;; esac -echo "$cpu-$vendor${kernel:+-$kernel}${os:+-$os}${obj:+-$obj}"+echo "$cpu-$vendor-${kernel:+$kernel-}$os" exit  # Local variables:
configure view
@@ -1,23128 +1,20822 @@ #! /bin/sh # Guess values for system-dependent variables and create Makefiles.-# Generated by GNU Autoconf 2.72 for libffi 3.5.2.-#-# Report bugs to <http://github.com/libffi/libffi/issues>.-#-#-# Copyright (C) 1992-1996, 1998-2017, 2020-2023 Free Software Foundation,-# Inc.-#-#-# This configure script is free software; the Free Software Foundation-# gives unlimited permission to copy, distribute and modify it.-## -------------------- ##-## M4sh Initialization. ##-## -------------------- ##--# Be more Bourne compatible-DUALCASE=1; export DUALCASE # for MKS sh-if test ${ZSH_VERSION+y} && (emulate sh) >/dev/null 2>&1-then :-  emulate sh-  NULLCMD=:-  # Pre-4.2 versions of Zsh do word splitting on ${1+"$@"}, which-  # is contrary to our usage.  Disable this feature.-  alias -g '${1+"$@"}'='"$@"'-  setopt NO_GLOB_SUBST-else case e in #(-  e) case `(set -o) 2>/dev/null` in #(-  *posix*) :-    set -o posix ;; #(-  *) :-     ;;-esac ;;-esac-fi----# Reset variables that may have inherited troublesome values from-# the environment.--# IFS needs to be set, to space, tab, and newline, in precisely that order.-# (If _AS_PATH_WALK were called with IFS unset, it would have the-# side effect of setting IFS to empty, thus disabling word splitting.)-# Quoting is to prevent editors from complaining about space-tab.-as_nl='-'-export as_nl-IFS=" ""	$as_nl"--PS1='$ '-PS2='> '-PS4='+ '--# Ensure predictable behavior from utilities with locale-dependent output.-LC_ALL=C-export LC_ALL-LANGUAGE=C-export LANGUAGE--# We cannot yet rely on "unset" to work, but we need these variables-# to be unset--not just set to an empty or harmless value--now, to-# avoid bugs in old shells (e.g. pre-3.0 UWIN ksh).  This construct-# also avoids known problems related to "unset" and subshell syntax-# in other old shells (e.g. bash 2.01 and pdksh 5.2.14).-for as_var in BASH_ENV ENV MAIL MAILPATH CDPATH-do eval test \${$as_var+y} \-  && ( (unset $as_var) || exit 1) >/dev/null 2>&1 && unset $as_var || :-done--# Ensure that fds 0, 1, and 2 are open.-if (exec 3>&0) 2>/dev/null; then :; else exec 0</dev/null; fi-if (exec 3>&1) 2>/dev/null; then :; else exec 1>/dev/null; fi-if (exec 3>&2)            ; then :; else exec 2>/dev/null; fi--# The user is always right.-if ${PATH_SEPARATOR+false} :; then-  PATH_SEPARATOR=:-  (PATH='/bin;/bin'; FPATH=$PATH; sh -c :) >/dev/null 2>&1 && {-    (PATH='/bin:/bin'; FPATH=$PATH; sh -c :) >/dev/null 2>&1 ||-      PATH_SEPARATOR=';'-  }-fi---# Find who we are.  Look in the path if we contain no directory separator.-as_myself=-case $0 in #((-  *[\\/]* ) as_myself=$0 ;;-  *) as_save_IFS=$IFS; IFS=$PATH_SEPARATOR-for as_dir in $PATH-do-  IFS=$as_save_IFS-  case $as_dir in #(((-    '') as_dir=./ ;;-    */) ;;-    *) as_dir=$as_dir/ ;;-  esac-    test -r "$as_dir$0" && as_myself=$as_dir$0 && break-  done-IFS=$as_save_IFS--     ;;-esac-# We did not find ourselves, most probably we were run as 'sh COMMAND'-# in which case we are not to be found in the path.-if test "x$as_myself" = x; then-  as_myself=$0-fi-if test ! -f "$as_myself"; then-  printf "%s\n" "$as_myself: error: cannot find myself; rerun with an absolute file name" >&2-  exit 1-fi---# Use a proper internal environment variable to ensure we don't fall-  # into an infinite loop, continuously re-executing ourselves.-  if test x"${_as_can_reexec}" != xno && test "x$CONFIG_SHELL" != x; then-    _as_can_reexec=no; export _as_can_reexec;-    # We cannot yet assume a decent shell, so we have to provide a-# neutralization value for shells without unset; and this also-# works around shells that cannot unset nonexistent variables.-# Preserve -v and -x to the replacement shell.-BASH_ENV=/dev/null-ENV=/dev/null-(unset BASH_ENV) >/dev/null 2>&1 && unset BASH_ENV ENV-case $- in # ((((-  *v*x* | *x*v* ) as_opts=-vx ;;-  *v* ) as_opts=-v ;;-  *x* ) as_opts=-x ;;-  * ) as_opts= ;;-esac-exec $CONFIG_SHELL $as_opts "$as_myself" ${1+"$@"}-# Admittedly, this is quite paranoid, since all the known shells bail-# out after a failed 'exec'.-printf "%s\n" "$0: could not re-execute with $CONFIG_SHELL" >&2-exit 255-  fi-  # We don't want this to propagate to other subprocesses.-          { _as_can_reexec=; unset _as_can_reexec;}-if test "x$CONFIG_SHELL" = x; then-  as_bourne_compatible="if test \${ZSH_VERSION+y} && (emulate sh) >/dev/null 2>&1-then :-  emulate sh-  NULLCMD=:-  # Pre-4.2 versions of Zsh do word splitting on \${1+\"\$@\"}, which-  # is contrary to our usage.  Disable this feature.-  alias -g '\${1+\"\$@\"}'='\"\$@\"'-  setopt NO_GLOB_SUBST-else case e in #(-  e) case \`(set -o) 2>/dev/null\` in #(-  *posix*) :-    set -o posix ;; #(-  *) :-     ;;-esac ;;-esac-fi-"-  as_required="as_fn_return () { (exit \$1); }-as_fn_success () { as_fn_return 0; }-as_fn_failure () { as_fn_return 1; }-as_fn_ret_success () { return 0; }-as_fn_ret_failure () { return 1; }--exitcode=0-as_fn_success || { exitcode=1; echo as_fn_success failed.; }-as_fn_failure && { exitcode=1; echo as_fn_failure succeeded.; }-as_fn_ret_success || { exitcode=1; echo as_fn_ret_success failed.; }-as_fn_ret_failure && { exitcode=1; echo as_fn_ret_failure succeeded.; }-if ( set x; as_fn_ret_success y && test x = \"\$1\" )-then :--else case e in #(-  e) exitcode=1; echo positional parameters were not saved. ;;-esac-fi-test x\$exitcode = x0 || exit 1-blah=\$(echo \$(echo blah))-test x\"\$blah\" = xblah || exit 1-test -x / || exit 1"-  as_suggested="  as_lineno_1=";as_suggested=$as_suggested$LINENO;as_suggested=$as_suggested" as_lineno_1a=\$LINENO-  as_lineno_2=";as_suggested=$as_suggested$LINENO;as_suggested=$as_suggested" as_lineno_2a=\$LINENO-  eval 'test \"x\$as_lineno_1'\$as_run'\" != \"x\$as_lineno_2'\$as_run'\" &&-  test \"x\`expr \$as_lineno_1'\$as_run' + 1\`\" = \"x\$as_lineno_2'\$as_run'\"' || exit 1-test \$(( 1 + 1 )) = 2 || exit 1--  test -n \"\${ZSH_VERSION+set}\${BASH_VERSION+set}\" || (-    ECHO='\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\'-    ECHO=\$ECHO\$ECHO\$ECHO\$ECHO\$ECHO-    ECHO=\$ECHO\$ECHO\$ECHO\$ECHO\$ECHO\$ECHO-    PATH=/empty FPATH=/empty; export PATH FPATH-    test \"X\`printf %s \$ECHO\`\" = \"X\$ECHO\" \\-      || test \"X\`print -r -- \$ECHO\`\" = \"X\$ECHO\" ) || exit 1"-  if (eval "$as_required") 2>/dev/null-then :-  as_have_required=yes-else case e in #(-  e) as_have_required=no ;;-esac-fi-  if test x$as_have_required = xyes && (eval "$as_suggested") 2>/dev/null-then :--else case e in #(-  e) as_save_IFS=$IFS; IFS=$PATH_SEPARATOR-as_found=false-for as_dir in /bin$PATH_SEPARATOR/usr/bin$PATH_SEPARATOR$PATH-do-  IFS=$as_save_IFS-  case $as_dir in #(((-    '') as_dir=./ ;;-    */) ;;-    *) as_dir=$as_dir/ ;;-  esac-  as_found=:-  case $as_dir in #(-	 /*)-	   for as_base in sh bash ksh sh5; do-	     # Try only shells that exist, to save several forks.-	     as_shell=$as_dir$as_base-	     if { test -f "$as_shell" || test -f "$as_shell.exe"; } &&-		    as_run=a "$as_shell" -c "$as_bourne_compatible""$as_required" 2>/dev/null-then :-  CONFIG_SHELL=$as_shell as_have_required=yes-		   if as_run=a "$as_shell" -c "$as_bourne_compatible""$as_suggested" 2>/dev/null-then :-  break 2-fi-fi-	   done;;-       esac-  as_found=false-done-IFS=$as_save_IFS-if $as_found-then :--else case e in #(-  e) if { test -f "$SHELL" || test -f "$SHELL.exe"; } &&-	      as_run=a "$SHELL" -c "$as_bourne_compatible""$as_required" 2>/dev/null-then :-  CONFIG_SHELL=$SHELL as_have_required=yes-fi ;;-esac-fi---      if test "x$CONFIG_SHELL" != x-then :-  export CONFIG_SHELL-             # We cannot yet assume a decent shell, so we have to provide a-# neutralization value for shells without unset; and this also-# works around shells that cannot unset nonexistent variables.-# Preserve -v and -x to the replacement shell.-BASH_ENV=/dev/null-ENV=/dev/null-(unset BASH_ENV) >/dev/null 2>&1 && unset BASH_ENV ENV-case $- in # ((((-  *v*x* | *x*v* ) as_opts=-vx ;;-  *v* ) as_opts=-v ;;-  *x* ) as_opts=-x ;;-  * ) as_opts= ;;-esac-exec $CONFIG_SHELL $as_opts "$as_myself" ${1+"$@"}-# Admittedly, this is quite paranoid, since all the known shells bail-# out after a failed 'exec'.-printf "%s\n" "$0: could not re-execute with $CONFIG_SHELL" >&2-exit 255-fi--    if test x$as_have_required = xno-then :-  printf "%s\n" "$0: This script requires a shell more modern than all"-  printf "%s\n" "$0: the shells that I found on your system."-  if test ${ZSH_VERSION+y} ; then-    printf "%s\n" "$0: In particular, zsh $ZSH_VERSION has bugs and should"-    printf "%s\n" "$0: be upgraded to zsh 4.3.4 or later."-  else-    printf "%s\n" "$0: Please tell bug-autoconf@gnu.org and-$0: http://github.com/libffi/libffi/issues about your-$0: system, including any error possibly output before this-$0: message. Then install a modern shell, or manually run-$0: the script under such a shell if you do have one."-  fi-  exit 1-fi ;;-esac-fi-fi-SHELL=${CONFIG_SHELL-/bin/sh}-export SHELL-# Unset more variables known to interfere with behavior of common tools.-CLICOLOR_FORCE= GREP_OPTIONS=-unset CLICOLOR_FORCE GREP_OPTIONS--## --------------------- ##-## M4sh Shell Functions. ##-## --------------------- ##-# as_fn_unset VAR-# ----------------# Portably unset VAR.-as_fn_unset ()-{-  { eval $1=; unset $1;}-}-as_unset=as_fn_unset---# as_fn_set_status STATUS-# ------------------------# Set $? to STATUS, without forking.-as_fn_set_status ()-{-  return $1-} # as_fn_set_status--# as_fn_exit STATUS-# ------------------# Exit the shell with STATUS, even in a "trap 0" or "set -e" context.-as_fn_exit ()-{-  set +e-  as_fn_set_status $1-  exit $1-} # as_fn_exit--# as_fn_mkdir_p-# --------------# Create "$as_dir" as a directory, including parents if necessary.-as_fn_mkdir_p ()-{--  case $as_dir in #(-  -*) as_dir=./$as_dir;;-  esac-  test -d "$as_dir" || eval $as_mkdir_p || {-    as_dirs=-    while :; do-      case $as_dir in #(-      *\'*) as_qdir=`printf "%s\n" "$as_dir" | sed "s/'/'\\\\\\\\''/g"`;; #'(-      *) as_qdir=$as_dir;;-      esac-      as_dirs="'$as_qdir' $as_dirs"-      as_dir=`$as_dirname -- "$as_dir" ||-$as_expr X"$as_dir" : 'X\(.*[^/]\)//*[^/][^/]*/*$' \| \-	 X"$as_dir" : 'X\(//\)[^/]' \| \-	 X"$as_dir" : 'X\(//\)$' \| \-	 X"$as_dir" : 'X\(/\)' \| . 2>/dev/null ||-printf "%s\n" X"$as_dir" |-    sed '/^X\(.*[^/]\)\/\/*[^/][^/]*\/*$/{-	    s//\1/-	    q-	  }-	  /^X\(\/\/\)[^/].*/{-	    s//\1/-	    q-	  }-	  /^X\(\/\/\)$/{-	    s//\1/-	    q-	  }-	  /^X\(\/\).*/{-	    s//\1/-	    q-	  }-	  s/.*/./; q'`-      test -d "$as_dir" && break-    done-    test -z "$as_dirs" || eval "mkdir $as_dirs"-  } || test -d "$as_dir" || as_fn_error $? "cannot create directory $as_dir"---} # as_fn_mkdir_p--# as_fn_executable_p FILE-# ------------------------# Test if FILE is an executable regular file.-as_fn_executable_p ()-{-  test -f "$1" && test -x "$1"-} # as_fn_executable_p-# as_fn_append VAR VALUE-# -----------------------# Append the text in VALUE to the end of the definition contained in VAR. Take-# advantage of any shell optimizations that allow amortized linear growth over-# repeated appends, instead of the typical quadratic growth present in naive-# implementations.-if (eval "as_var=1; as_var+=2; test x\$as_var = x12") 2>/dev/null-then :-  eval 'as_fn_append ()-  {-    eval $1+=\$2-  }'-else case e in #(-  e) as_fn_append ()-  {-    eval $1=\$$1\$2-  } ;;-esac-fi # as_fn_append--# as_fn_arith ARG...-# -------------------# Perform arithmetic evaluation on the ARGs, and store the result in the-# global $as_val. Take advantage of shells that can avoid forks. The arguments-# must be portable across $(()) and expr.-if (eval "test \$(( 1 + 1 )) = 2") 2>/dev/null-then :-  eval 'as_fn_arith ()-  {-    as_val=$(( $* ))-  }'-else case e in #(-  e) as_fn_arith ()-  {-    as_val=`expr "$@" || test $? -eq 1`-  } ;;-esac-fi # as_fn_arith---# as_fn_error STATUS ERROR [LINENO LOG_FD]-# -----------------------------------------# Output "`basename $0`: error: ERROR" to stderr. If LINENO and LOG_FD are-# provided, also output the error to LOG_FD, referencing LINENO. Then exit the-# script with STATUS, using 1 if that was 0.-as_fn_error ()-{-  as_status=$1; test $as_status -eq 0 && as_status=1-  if test "$4"; then-    as_lineno=${as_lineno-"$3"} as_lineno_stack=as_lineno_stack=$as_lineno_stack-    printf "%s\n" "$as_me:${as_lineno-$LINENO}: error: $2" >&$4-  fi-  printf "%s\n" "$as_me: error: $2" >&2-  as_fn_exit $as_status-} # as_fn_error--if expr a : '\(a\)' >/dev/null 2>&1 &&-   test "X`expr 00001 : '.*\(...\)'`" = X001; then-  as_expr=expr-else-  as_expr=false-fi--if (basename -- /) >/dev/null 2>&1 && test "X`basename -- / 2>&1`" = "X/"; then-  as_basename=basename-else-  as_basename=false-fi--if (as_dir=`dirname -- /` && test "X$as_dir" = X/) >/dev/null 2>&1; then-  as_dirname=dirname-else-  as_dirname=false-fi--as_me=`$as_basename -- "$0" ||-$as_expr X/"$0" : '.*/\([^/][^/]*\)/*$' \| \-	 X"$0" : 'X\(//\)$' \| \-	 X"$0" : 'X\(/\)' \| . 2>/dev/null ||-printf "%s\n" X/"$0" |-    sed '/^.*\/\([^/][^/]*\)\/*$/{-	    s//\1/-	    q-	  }-	  /^X\/\(\/\/\)$/{-	    s//\1/-	    q-	  }-	  /^X\/\(\/\).*/{-	    s//\1/-	    q-	  }-	  s/.*/./; q'`--# Avoid depending upon Character Ranges.-as_cr_letters='abcdefghijklmnopqrstuvwxyz'-as_cr_LETTERS='ABCDEFGHIJKLMNOPQRSTUVWXYZ'-as_cr_Letters=$as_cr_letters$as_cr_LETTERS-as_cr_digits='0123456789'-as_cr_alnum=$as_cr_Letters$as_cr_digits---  as_lineno_1=$LINENO as_lineno_1a=$LINENO-  as_lineno_2=$LINENO as_lineno_2a=$LINENO-  eval 'test "x$as_lineno_1'$as_run'" != "x$as_lineno_2'$as_run'" &&-  test "x`expr $as_lineno_1'$as_run' + 1`" = "x$as_lineno_2'$as_run'"' || {-  # Blame Lee E. McMahon (1931-1989) for sed's syntax.  :-)-  sed -n '-    p-    /[$]LINENO/=-  ' <$as_myself |-    sed '-      t clear-      :clear-      s/[$]LINENO.*/&-/-      t lineno-      b-      :lineno-      N-      :loop-      s/[$]LINENO\([^'$as_cr_alnum'_].*\n\)\(.*\)/\2\1\2/-      t loop-      s/-\n.*//-    ' >$as_me.lineno &&-  chmod +x "$as_me.lineno" ||-    { printf "%s\n" "$as_me: error: cannot create $as_me.lineno; rerun with a POSIX shell" >&2; as_fn_exit 1; }--  # If we had to re-execute with $CONFIG_SHELL, we're ensured to have-  # already done that, so ensure we don't try to do so again and fall-  # in an infinite loop.  This has already happened in practice.-  _as_can_reexec=no; export _as_can_reexec-  # Don't try to exec as it changes $[0], causing all sort of problems-  # (the dirname of $[0] is not the place where we might find the-  # original and so on.  Autoconf is especially sensitive to this).-  . "./$as_me.lineno"-  # Exit status is that of the last command.-  exit-}---# Determine whether it's possible to make 'echo' print without a newline.-# These variables are no longer used directly by Autoconf, but are AC_SUBSTed-# for compatibility with existing Makefiles.-ECHO_C= ECHO_N= ECHO_T=-case `echo -n x` in #(((((--n*)-  case `echo 'xy\c'` in-  *c*) ECHO_T='	';;	# ECHO_T is single tab character.-  xy)  ECHO_C='\c';;-  *)   echo `echo ksh88 bug on AIX 6.1` > /dev/null-       ECHO_T='	';;-  esac;;-*)-  ECHO_N='-n';;-esac--# For backward compatibility with old third-party macros, we provide-# the shell variables $as_echo and $as_echo_n.  New code should use-# AS_ECHO(["message"]) and AS_ECHO_N(["message"]), respectively.-as_echo='printf %s\n'-as_echo_n='printf %s'--rm -f conf$$ conf$$.exe conf$$.file-if test -d conf$$.dir; then-  rm -f conf$$.dir/conf$$.file-else-  rm -f conf$$.dir-  mkdir conf$$.dir 2>/dev/null-fi-if (echo >conf$$.file) 2>/dev/null; then-  if ln -s conf$$.file conf$$ 2>/dev/null; then-    as_ln_s='ln -s'-    # ... but there are two gotchas:-    # 1) On MSYS, both 'ln -s file dir' and 'ln file dir' fail.-    # 2) DJGPP < 2.04 has no symlinks; 'ln -s' creates a wrapper executable.-    # In both cases, we have to default to 'cp -pR'.-    ln -s conf$$.file conf$$.dir 2>/dev/null && test ! -f conf$$.exe ||-      as_ln_s='cp -pR'-  elif ln conf$$.file conf$$ 2>/dev/null; then-    as_ln_s=ln-  else-    as_ln_s='cp -pR'-  fi-else-  as_ln_s='cp -pR'-fi-rm -f conf$$ conf$$.exe conf$$.dir/conf$$.file conf$$.file-rmdir conf$$.dir 2>/dev/null--if mkdir -p . 2>/dev/null; then-  as_mkdir_p='mkdir -p "$as_dir"'-else-  test -d ./-p && rmdir ./-p-  as_mkdir_p=false-fi--as_test_x='test -x'-as_executable_p=as_fn_executable_p--# Sed expression to map a string onto a valid CPP name.-as_sed_cpp="y%*$as_cr_letters%P$as_cr_LETTERS%;s%[^_$as_cr_alnum]%_%g"-as_tr_cpp="eval sed '$as_sed_cpp'" # deprecated--# Sed expression to map a string onto a valid variable name.-as_sed_sh="y%*+%pp%;s%[^_$as_cr_alnum]%_%g"-as_tr_sh="eval sed '$as_sed_sh'" # deprecated--SHELL=${CONFIG_SHELL-/bin/sh}---test -n "$DJDIR" || exec 7<&0 </dev/null-exec 6>&1--# Name of the host.-# hostname on some systems (SVR3.2, old GNU/Linux) returns a bogus exit status,-# so uname gets run too.-ac_hostname=`(hostname || uname -n) 2>/dev/null | sed 1q`--#-# Initializations.-#-ac_default_prefix=/usr/local-ac_clean_files=-ac_config_libobj_dir=.-LIBOBJS=-cross_compiling=no-subdirs=-MFLAGS=-MAKEFLAGS=--# Identity of this package.-PACKAGE_NAME='libffi'-PACKAGE_TARNAME='libffi'-PACKAGE_VERSION='3.5.2'-PACKAGE_STRING='libffi 3.5.2'-PACKAGE_BUGREPORT='http://github.com/libffi/libffi/issues'-PACKAGE_URL=''--# Factoring default headers for most tests.-ac_includes_default="\-#include <stddef.h>-#ifdef HAVE_STDIO_H-# include <stdio.h>-#endif-#ifdef HAVE_STDLIB_H-# include <stdlib.h>-#endif-#ifdef HAVE_STRING_H-# include <string.h>-#endif-#ifdef HAVE_INTTYPES_H-# include <inttypes.h>-#endif-#ifdef HAVE_STDINT_H-# include <stdint.h>-#endif-#ifdef HAVE_STRINGS_H-# include <strings.h>-#endif-#ifdef HAVE_SYS_TYPES_H-# include <sys/types.h>-#endif-#ifdef HAVE_SYS_STAT_H-# include <sys/stat.h>-#endif-#ifdef HAVE_UNISTD_H-# include <unistd.h>-#endif"--ac_header_c_list=-ac_subst_vars='LTLIBOBJS-LIBOBJS-EXTRA_LIBS-LIBFFI_BUILD_VERSIONED_SHLIB_SUN_FALSE-LIBFFI_BUILD_VERSIONED_SHLIB_SUN_TRUE-LIBFFI_BUILD_VERSIONED_SHLIB_GNU_FALSE-LIBFFI_BUILD_VERSIONED_SHLIB_GNU_TRUE-LIBFFI_BUILD_VERSIONED_SHLIB_FALSE-LIBFFI_BUILD_VERSIONED_SHLIB_TRUE-OPT_LDFLAGS-SECTION_LDFLAGS-FFI_DEBUG_FALSE-FFI_DEBUG_TRUE-EXTRA_ASM_SOURCES-EXTRA_SOURCES-TARGETDIR-TARGET-FFI_EXEC_TRAMPOLINE_TABLE-FFI_EXEC_TRAMPOLINE_TABLE_FALSE-FFI_EXEC_TRAMPOLINE_TABLE_TRUE-sys_symbol_underscore-WASM64_MEMORY64-HAVE_LONG_DOUBLE_VARIANT-HAVE_LONG_DOUBLE-AM_LTLDFLAGS-AM_RUNTESTFLAGS-MAINT-MAINTAINER_MODE_FALSE-MAINTAINER_MODE_TRUE-PRTDIAG-CXXCPP-LT_SYS_LIBRARY_PATH-OTOOL64-OTOOL-LIPO-NMEDIT-DSYMUTIL-MANIFEST_TOOL-AWK-RANLIB-STRIP-ac_ct_AR-AR-DLLTOOL-OBJDUMP-FILECMD-LN_S-NM-ac_ct_DUMPBIN-DUMPBIN-LD-FGREP-SED-LIBTOOL-EGREP-GREP-am__fastdepCCAS_FALSE-am__fastdepCCAS_TRUE-CCASDEPMODE-am__nodep-AMDEPBACKSLASH-AMDEP_FALSE-AMDEP_TRUE-am__include-DEPDIR-am__leading_dot-CCASFLAGS-CCAS-ac_ct_CXX-CXXFLAGS-CXX-OBJEXT-EXEEXT-ac_ct_CC-CPPFLAGS-LDFLAGS-CFLAGS-CC-ax_enable_builddir_sed-target_os-target_vendor-target_cpu-target-host_os-host_vendor-host_cpu-host-build_os-build_vendor-build_cpu-build-FFI_VERSION_NUMBER-FFI_VERSION_STRING-target_alias-host_alias-build_alias-LIBS-ECHO_T-ECHO_N-ECHO_C-DEFS-mandir-localedir-libdir-psdir-pdfdir-dvidir-htmldir-infodir-docdir-oldincludedir-includedir-runstatedir-localstatedir-sharedstatedir-sysconfdir-datadir-datarootdir-libexecdir-sbindir-bindir-program_transform_name-prefix-exec_prefix-PACKAGE_URL-PACKAGE_BUGREPORT-PACKAGE_STRING-PACKAGE_VERSION-PACKAGE_TARNAME-PACKAGE_NAME-PATH_SEPARATOR-SHELL-am__quote'-ac_subst_files=''-ac_user_opts='-enable_option_checking-enable_builddir-enable_dependency_tracking-enable_shared-enable_static-enable_pic-with_pic-enable_fast_install-enable_aix_soname-with_aix_soname-with_gnu_ld-with_sysroot-enable_libtool_lock-enable_portable_binary-with_gcc_arch-enable_maintainer_mode-enable_pax_emutramp-enable_debug-enable_structs-enable_raw_api-enable_exec_static_tramp-enable_purify_safety-enable_symvers-'-      ac_precious_vars='build_alias-host_alias-target_alias-CCAS-CCASFLAGS-LT_SYS_LIBRARY_PATH-CXXCPP-CPPFLAGS-WASM64_MEMORY64'---# Initialize some variables set by options.-ac_init_help=-ac_init_version=false-ac_unrecognized_opts=-ac_unrecognized_sep=-# The variables have the same names as the options, with-# dashes changed to underlines.-cache_file=/dev/null-exec_prefix=NONE-no_create=-no_recursion=-prefix=NONE-program_prefix=NONE-program_suffix=NONE-program_transform_name=s,x,x,-silent=-site=-srcdir=-verbose=-x_includes=NONE-x_libraries=NONE--# Installation directory options.-# These are left unexpanded so users can "make install exec_prefix=/foo"-# and all the variables that are supposed to be based on exec_prefix-# by default will actually change.-# Use braces instead of parens because sh, perl, etc. also accept them.-# (The list follows the same order as the GNU Coding Standards.)-bindir='${exec_prefix}/bin'-sbindir='${exec_prefix}/sbin'-libexecdir='${exec_prefix}/libexec'-datarootdir='${prefix}/share'-datadir='${datarootdir}'-sysconfdir='${prefix}/etc'-sharedstatedir='${prefix}/com'-localstatedir='${prefix}/var'-runstatedir='${localstatedir}/run'-includedir='${prefix}/include'-oldincludedir='/usr/include'-docdir='${datarootdir}/doc/${PACKAGE_TARNAME}'-infodir='${datarootdir}/info'-htmldir='${docdir}'-dvidir='${docdir}'-pdfdir='${docdir}'-psdir='${docdir}'-libdir='${exec_prefix}/lib'-localedir='${datarootdir}/locale'-mandir='${datarootdir}/man'--ac_prev=-ac_dashdash=-for ac_option-do-  # If the previous option needs an argument, assign it.-  if test -n "$ac_prev"; then-    eval $ac_prev=\$ac_option-    ac_prev=-    continue-  fi--  case $ac_option in-  *=?*) ac_optarg=`expr "X$ac_option" : '[^=]*=\(.*\)'` ;;-  *=)   ac_optarg= ;;-  *)    ac_optarg=yes ;;-  esac--  case $ac_dashdash$ac_option in-  --)-    ac_dashdash=yes ;;--  -bindir | --bindir | --bindi | --bind | --bin | --bi)-    ac_prev=bindir ;;-  -bindir=* | --bindir=* | --bindi=* | --bind=* | --bin=* | --bi=*)-    bindir=$ac_optarg ;;--  -build | --build | --buil | --bui | --bu)-    ac_prev=build_alias ;;-  -build=* | --build=* | --buil=* | --bui=* | --bu=*)-    build_alias=$ac_optarg ;;--  -cache-file | --cache-file | --cache-fil | --cache-fi \-  | --cache-f | --cache- | --cache | --cach | --cac | --ca | --c)-    ac_prev=cache_file ;;-  -cache-file=* | --cache-file=* | --cache-fil=* | --cache-fi=* \-  | --cache-f=* | --cache-=* | --cache=* | --cach=* | --cac=* | --ca=* | --c=*)-    cache_file=$ac_optarg ;;--  --config-cache | -C)-    cache_file=config.cache ;;--  -datadir | --datadir | --datadi | --datad)-    ac_prev=datadir ;;-  -datadir=* | --datadir=* | --datadi=* | --datad=*)-    datadir=$ac_optarg ;;--  -datarootdir | --datarootdir | --datarootdi | --datarootd | --dataroot \-  | --dataroo | --dataro | --datar)-    ac_prev=datarootdir ;;-  -datarootdir=* | --datarootdir=* | --datarootdi=* | --datarootd=* \-  | --dataroot=* | --dataroo=* | --dataro=* | --datar=*)-    datarootdir=$ac_optarg ;;--  -disable-* | --disable-*)-    ac_useropt=`expr "x$ac_option" : 'x-*disable-\(.*\)'`-    # Reject names that are not valid shell variable names.-    expr "x$ac_useropt" : ".*[^-+._$as_cr_alnum]" >/dev/null &&-      as_fn_error $? "invalid feature name: '$ac_useropt'"-    ac_useropt_orig=$ac_useropt-    ac_useropt=`printf "%s\n" "$ac_useropt" | sed 's/[-+.]/_/g'`-    case $ac_user_opts in-      *"-"enable_$ac_useropt"-"*) ;;-      *) ac_unrecognized_opts="$ac_unrecognized_opts$ac_unrecognized_sep--disable-$ac_useropt_orig"-	 ac_unrecognized_sep=', ';;-    esac-    eval enable_$ac_useropt=no ;;--  -docdir | --docdir | --docdi | --doc | --do)-    ac_prev=docdir ;;-  -docdir=* | --docdir=* | --docdi=* | --doc=* | --do=*)-    docdir=$ac_optarg ;;--  -dvidir | --dvidir | --dvidi | --dvid | --dvi | --dv)-    ac_prev=dvidir ;;-  -dvidir=* | --dvidir=* | --dvidi=* | --dvid=* | --dvi=* | --dv=*)-    dvidir=$ac_optarg ;;--  -enable-* | --enable-*)-    ac_useropt=`expr "x$ac_option" : 'x-*enable-\([^=]*\)'`-    # Reject names that are not valid shell variable names.-    expr "x$ac_useropt" : ".*[^-+._$as_cr_alnum]" >/dev/null &&-      as_fn_error $? "invalid feature name: '$ac_useropt'"-    ac_useropt_orig=$ac_useropt-    ac_useropt=`printf "%s\n" "$ac_useropt" | sed 's/[-+.]/_/g'`-    case $ac_user_opts in-      *"-"enable_$ac_useropt"-"*) ;;-      *) ac_unrecognized_opts="$ac_unrecognized_opts$ac_unrecognized_sep--enable-$ac_useropt_orig"-	 ac_unrecognized_sep=', ';;-    esac-    eval enable_$ac_useropt=\$ac_optarg ;;--  -exec-prefix | --exec_prefix | --exec-prefix | --exec-prefi \-  | --exec-pref | --exec-pre | --exec-pr | --exec-p | --exec- \-  | --exec | --exe | --ex)-    ac_prev=exec_prefix ;;-  -exec-prefix=* | --exec_prefix=* | --exec-prefix=* | --exec-prefi=* \-  | --exec-pref=* | --exec-pre=* | --exec-pr=* | --exec-p=* | --exec-=* \-  | --exec=* | --exe=* | --ex=*)-    exec_prefix=$ac_optarg ;;--  -gas | --gas | --ga | --g)-    # Obsolete; use --with-gas.-    with_gas=yes ;;--  -help | --help | --hel | --he | -h)-    ac_init_help=long ;;-  -help=r* | --help=r* | --hel=r* | --he=r* | -hr*)-    ac_init_help=recursive ;;-  -help=s* | --help=s* | --hel=s* | --he=s* | -hs*)-    ac_init_help=short ;;--  -host | --host | --hos | --ho)-    ac_prev=host_alias ;;-  -host=* | --host=* | --hos=* | --ho=*)-    host_alias=$ac_optarg ;;--  -htmldir | --htmldir | --htmldi | --htmld | --html | --htm | --ht)-    ac_prev=htmldir ;;-  -htmldir=* | --htmldir=* | --htmldi=* | --htmld=* | --html=* | --htm=* \-  | --ht=*)-    htmldir=$ac_optarg ;;--  -includedir | --includedir | --includedi | --included | --include \-  | --includ | --inclu | --incl | --inc)-    ac_prev=includedir ;;-  -includedir=* | --includedir=* | --includedi=* | --included=* | --include=* \-  | --includ=* | --inclu=* | --incl=* | --inc=*)-    includedir=$ac_optarg ;;--  -infodir | --infodir | --infodi | --infod | --info | --inf)-    ac_prev=infodir ;;-  -infodir=* | --infodir=* | --infodi=* | --infod=* | --info=* | --inf=*)-    infodir=$ac_optarg ;;--  -libdir | --libdir | --libdi | --libd)-    ac_prev=libdir ;;-  -libdir=* | --libdir=* | --libdi=* | --libd=*)-    libdir=$ac_optarg ;;--  -libexecdir | --libexecdir | --libexecdi | --libexecd | --libexec \-  | --libexe | --libex | --libe)-    ac_prev=libexecdir ;;-  -libexecdir=* | --libexecdir=* | --libexecdi=* | --libexecd=* | --libexec=* \-  | --libexe=* | --libex=* | --libe=*)-    libexecdir=$ac_optarg ;;--  -localedir | --localedir | --localedi | --localed | --locale)-    ac_prev=localedir ;;-  -localedir=* | --localedir=* | --localedi=* | --localed=* | --locale=*)-    localedir=$ac_optarg ;;--  -localstatedir | --localstatedir | --localstatedi | --localstated \-  | --localstate | --localstat | --localsta | --localst | --locals)-    ac_prev=localstatedir ;;-  -localstatedir=* | --localstatedir=* | --localstatedi=* | --localstated=* \-  | --localstate=* | --localstat=* | --localsta=* | --localst=* | --locals=*)-    localstatedir=$ac_optarg ;;--  -mandir | --mandir | --mandi | --mand | --man | --ma | --m)-    ac_prev=mandir ;;-  -mandir=* | --mandir=* | --mandi=* | --mand=* | --man=* | --ma=* | --m=*)-    mandir=$ac_optarg ;;--  -nfp | --nfp | --nf)-    # Obsolete; use --without-fp.-    with_fp=no ;;--  -no-create | --no-create | --no-creat | --no-crea | --no-cre \-  | --no-cr | --no-c | -n)-    no_create=yes ;;--  -no-recursion | --no-recursion | --no-recursio | --no-recursi \-  | --no-recurs | --no-recur | --no-recu | --no-rec | --no-re | --no-r)-    no_recursion=yes ;;--  -oldincludedir | --oldincludedir | --oldincludedi | --oldincluded \-  | --oldinclude | --oldinclud | --oldinclu | --oldincl | --oldinc \-  | --oldin | --oldi | --old | --ol | --o)-    ac_prev=oldincludedir ;;-  -oldincludedir=* | --oldincludedir=* | --oldincludedi=* | --oldincluded=* \-  | --oldinclude=* | --oldinclud=* | --oldinclu=* | --oldincl=* | --oldinc=* \-  | --oldin=* | --oldi=* | --old=* | --ol=* | --o=*)-    oldincludedir=$ac_optarg ;;--  -prefix | --prefix | --prefi | --pref | --pre | --pr | --p)-    ac_prev=prefix ;;-  -prefix=* | --prefix=* | --prefi=* | --pref=* | --pre=* | --pr=* | --p=*)-    prefix=$ac_optarg ;;--  -program-prefix | --program-prefix | --program-prefi | --program-pref \-  | --program-pre | --program-pr | --program-p)-    ac_prev=program_prefix ;;-  -program-prefix=* | --program-prefix=* | --program-prefi=* \-  | --program-pref=* | --program-pre=* | --program-pr=* | --program-p=*)-    program_prefix=$ac_optarg ;;--  -program-suffix | --program-suffix | --program-suffi | --program-suff \-  | --program-suf | --program-su | --program-s)-    ac_prev=program_suffix ;;-  -program-suffix=* | --program-suffix=* | --program-suffi=* \-  | --program-suff=* | --program-suf=* | --program-su=* | --program-s=*)-    program_suffix=$ac_optarg ;;--  -program-transform-name | --program-transform-name \-  | --program-transform-nam | --program-transform-na \-  | --program-transform-n | --program-transform- \-  | --program-transform | --program-transfor \-  | --program-transfo | --program-transf \-  | --program-trans | --program-tran \-  | --progr-tra | --program-tr | --program-t)-    ac_prev=program_transform_name ;;-  -program-transform-name=* | --program-transform-name=* \-  | --program-transform-nam=* | --program-transform-na=* \-  | --program-transform-n=* | --program-transform-=* \-  | --program-transform=* | --program-transfor=* \-  | --program-transfo=* | --program-transf=* \-  | --program-trans=* | --program-tran=* \-  | --progr-tra=* | --program-tr=* | --program-t=*)-    program_transform_name=$ac_optarg ;;--  -pdfdir | --pdfdir | --pdfdi | --pdfd | --pdf | --pd)-    ac_prev=pdfdir ;;-  -pdfdir=* | --pdfdir=* | --pdfdi=* | --pdfd=* | --pdf=* | --pd=*)-    pdfdir=$ac_optarg ;;--  -psdir | --psdir | --psdi | --psd | --ps)-    ac_prev=psdir ;;-  -psdir=* | --psdir=* | --psdi=* | --psd=* | --ps=*)-    psdir=$ac_optarg ;;--  -q | -quiet | --quiet | --quie | --qui | --qu | --q \-  | -silent | --silent | --silen | --sile | --sil)-    silent=yes ;;--  -runstatedir | --runstatedir | --runstatedi | --runstated \-  | --runstate | --runstat | --runsta | --runst | --runs \-  | --run | --ru | --r)-    ac_prev=runstatedir ;;-  -runstatedir=* | --runstatedir=* | --runstatedi=* | --runstated=* \-  | --runstate=* | --runstat=* | --runsta=* | --runst=* | --runs=* \-  | --run=* | --ru=* | --r=*)-    runstatedir=$ac_optarg ;;--  -sbindir | --sbindir | --sbindi | --sbind | --sbin | --sbi | --sb)-    ac_prev=sbindir ;;-  -sbindir=* | --sbindir=* | --sbindi=* | --sbind=* | --sbin=* \-  | --sbi=* | --sb=*)-    sbindir=$ac_optarg ;;--  -sharedstatedir | --sharedstatedir | --sharedstatedi \-  | --sharedstated | --sharedstate | --sharedstat | --sharedsta \-  | --sharedst | --shareds | --shared | --share | --shar \-  | --sha | --sh)-    ac_prev=sharedstatedir ;;-  -sharedstatedir=* | --sharedstatedir=* | --sharedstatedi=* \-  | --sharedstated=* | --sharedstate=* | --sharedstat=* | --sharedsta=* \-  | --sharedst=* | --shareds=* | --shared=* | --share=* | --shar=* \-  | --sha=* | --sh=*)-    sharedstatedir=$ac_optarg ;;--  -site | --site | --sit)-    ac_prev=site ;;-  -site=* | --site=* | --sit=*)-    site=$ac_optarg ;;--  -srcdir | --srcdir | --srcdi | --srcd | --src | --sr)-    ac_prev=srcdir ;;-  -srcdir=* | --srcdir=* | --srcdi=* | --srcd=* | --src=* | --sr=*)-    srcdir=$ac_optarg ;;--  -sysconfdir | --sysconfdir | --sysconfdi | --sysconfd | --sysconf \-  | --syscon | --sysco | --sysc | --sys | --sy)-    ac_prev=sysconfdir ;;-  -sysconfdir=* | --sysconfdir=* | --sysconfdi=* | --sysconfd=* | --sysconf=* \-  | --syscon=* | --sysco=* | --sysc=* | --sys=* | --sy=*)-    sysconfdir=$ac_optarg ;;--  -target | --target | --targe | --targ | --tar | --ta | --t)-    ac_prev=target_alias ;;-  -target=* | --target=* | --targe=* | --targ=* | --tar=* | --ta=* | --t=*)-    target_alias=$ac_optarg ;;--  -v | -verbose | --verbose | --verbos | --verbo | --verb)-    verbose=yes ;;--  -version | --version | --versio | --versi | --vers | -V)-    ac_init_version=: ;;--  -with-* | --with-*)-    ac_useropt=`expr "x$ac_option" : 'x-*with-\([^=]*\)'`-    # Reject names that are not valid shell variable names.-    expr "x$ac_useropt" : ".*[^-+._$as_cr_alnum]" >/dev/null &&-      as_fn_error $? "invalid package name: '$ac_useropt'"-    ac_useropt_orig=$ac_useropt-    ac_useropt=`printf "%s\n" "$ac_useropt" | sed 's/[-+.]/_/g'`-    case $ac_user_opts in-      *"-"with_$ac_useropt"-"*) ;;-      *) ac_unrecognized_opts="$ac_unrecognized_opts$ac_unrecognized_sep--with-$ac_useropt_orig"-	 ac_unrecognized_sep=', ';;-    esac-    eval with_$ac_useropt=\$ac_optarg ;;--  -without-* | --without-*)-    ac_useropt=`expr "x$ac_option" : 'x-*without-\(.*\)'`-    # Reject names that are not valid shell variable names.-    expr "x$ac_useropt" : ".*[^-+._$as_cr_alnum]" >/dev/null &&-      as_fn_error $? "invalid package name: '$ac_useropt'"-    ac_useropt_orig=$ac_useropt-    ac_useropt=`printf "%s\n" "$ac_useropt" | sed 's/[-+.]/_/g'`-    case $ac_user_opts in-      *"-"with_$ac_useropt"-"*) ;;-      *) ac_unrecognized_opts="$ac_unrecognized_opts$ac_unrecognized_sep--without-$ac_useropt_orig"-	 ac_unrecognized_sep=', ';;-    esac-    eval with_$ac_useropt=no ;;--  --x)-    # Obsolete; use --with-x.-    with_x=yes ;;--  -x-includes | --x-includes | --x-include | --x-includ | --x-inclu \-  | --x-incl | --x-inc | --x-in | --x-i)-    ac_prev=x_includes ;;-  -x-includes=* | --x-includes=* | --x-include=* | --x-includ=* | --x-inclu=* \-  | --x-incl=* | --x-inc=* | --x-in=* | --x-i=*)-    x_includes=$ac_optarg ;;--  -x-libraries | --x-libraries | --x-librarie | --x-librari \-  | --x-librar | --x-libra | --x-libr | --x-lib | --x-li | --x-l)-    ac_prev=x_libraries ;;-  -x-libraries=* | --x-libraries=* | --x-librarie=* | --x-librari=* \-  | --x-librar=* | --x-libra=* | --x-libr=* | --x-lib=* | --x-li=* | --x-l=*)-    x_libraries=$ac_optarg ;;--  -*) as_fn_error $? "unrecognized option: '$ac_option'-Try '$0 --help' for more information"-    ;;--  *=*)-    ac_envvar=`expr "x$ac_option" : 'x\([^=]*\)='`-    # Reject names that are not valid shell variable names.-    case $ac_envvar in #(-      '' | [0-9]* | *[!_$as_cr_alnum]* )-      as_fn_error $? "invalid variable name: '$ac_envvar'" ;;-    esac-    eval $ac_envvar=\$ac_optarg-    export $ac_envvar ;;--  *)-    # FIXME: should be removed in autoconf 3.0.-    printf "%s\n" "$as_me: WARNING: you should use --build, --host, --target" >&2-    expr "x$ac_option" : ".*[^-._$as_cr_alnum]" >/dev/null &&-      printf "%s\n" "$as_me: WARNING: invalid host type: $ac_option" >&2-    : "${build_alias=$ac_option} ${host_alias=$ac_option} ${target_alias=$ac_option}"-    ;;--  esac-done--if test -n "$ac_prev"; then-  ac_option=--`echo $ac_prev | sed 's/_/-/g'`-  as_fn_error $? "missing argument to $ac_option"-fi--if test -n "$ac_unrecognized_opts"; then-  case $enable_option_checking in-    no) ;;-    fatal) as_fn_error $? "unrecognized options: $ac_unrecognized_opts" ;;-    *)     printf "%s\n" "$as_me: WARNING: unrecognized options: $ac_unrecognized_opts" >&2 ;;-  esac-fi--# Check all directory arguments for consistency.-for ac_var in	exec_prefix prefix bindir sbindir libexecdir datarootdir \-		datadir sysconfdir sharedstatedir localstatedir includedir \-		oldincludedir docdir infodir htmldir dvidir pdfdir psdir \-		libdir localedir mandir runstatedir-do-  eval ac_val=\$$ac_var-  # Remove trailing slashes.-  case $ac_val in-    */ )-      ac_val=`expr "X$ac_val" : 'X\(.*[^/]\)' \| "X$ac_val" : 'X\(.*\)'`-      eval $ac_var=\$ac_val;;-  esac-  # Be sure to have absolute directory names.-  case $ac_val in-    [\\/$]* | ?:[\\/]* )  continue;;-    NONE | '' ) case $ac_var in *prefix ) continue;; esac;;-  esac-  as_fn_error $? "expected an absolute directory name for --$ac_var: $ac_val"-done--# There might be people who depend on the old broken behavior: '$host'-# used to hold the argument of --host etc.-# FIXME: To remove some day.-build=$build_alias-host=$host_alias-target=$target_alias--# FIXME: To remove some day.-if test "x$host_alias" != x; then-  if test "x$build_alias" = x; then-    cross_compiling=maybe-  elif test "x$build_alias" != "x$host_alias"; then-    cross_compiling=yes-  fi-fi--ac_tool_prefix=-test -n "$host_alias" && ac_tool_prefix=$host_alias---test "$silent" = yes && exec 6>/dev/null---ac_pwd=`pwd` && test -n "$ac_pwd" &&-ac_ls_di=`ls -di .` &&-ac_pwd_ls_di=`cd "$ac_pwd" && ls -di .` ||-  as_fn_error $? "working directory cannot be determined"-test "X$ac_ls_di" = "X$ac_pwd_ls_di" ||-  as_fn_error $? "pwd does not report name of working directory"---# Find the source files, if location was not specified.-if test -z "$srcdir"; then-  ac_srcdir_defaulted=yes-  # Try the directory containing this script, then the parent directory.-  ac_confdir=`$as_dirname -- "$as_myself" ||-$as_expr X"$as_myself" : 'X\(.*[^/]\)//*[^/][^/]*/*$' \| \-	 X"$as_myself" : 'X\(//\)[^/]' \| \-	 X"$as_myself" : 'X\(//\)$' \| \-	 X"$as_myself" : 'X\(/\)' \| . 2>/dev/null ||-printf "%s\n" X"$as_myself" |-    sed '/^X\(.*[^/]\)\/\/*[^/][^/]*\/*$/{-	    s//\1/-	    q-	  }-	  /^X\(\/\/\)[^/].*/{-	    s//\1/-	    q-	  }-	  /^X\(\/\/\)$/{-	    s//\1/-	    q-	  }-	  /^X\(\/\).*/{-	    s//\1/-	    q-	  }-	  s/.*/./; q'`-  srcdir=$ac_confdir-  if test ! -r "$srcdir/$ac_unique_file"; then-    srcdir=..-  fi-else-  ac_srcdir_defaulted=no-fi-if test ! -r "$srcdir/$ac_unique_file"; then-  test "$ac_srcdir_defaulted" = yes && srcdir="$ac_confdir or .."-  as_fn_error $? "cannot find sources ($ac_unique_file) in $srcdir"-fi-ac_msg="sources are in $srcdir, but 'cd $srcdir' does not work"-ac_abs_confdir=`(-	cd "$srcdir" && test -r "./$ac_unique_file" || as_fn_error $? "$ac_msg"-	pwd)`-# When building in place, set srcdir=.-if test "$ac_abs_confdir" = "$ac_pwd"; then-  srcdir=.-fi-# Remove unnecessary trailing slashes from srcdir.-# Double slashes in file names in object file debugging info-# mess up M-x gdb in Emacs.-case $srcdir in-*/) srcdir=`expr "X$srcdir" : 'X\(.*[^/]\)' \| "X$srcdir" : 'X\(.*\)'`;;-esac-for ac_var in $ac_precious_vars; do-  eval ac_env_${ac_var}_set=\${${ac_var}+set}-  eval ac_env_${ac_var}_value=\$${ac_var}-  eval ac_cv_env_${ac_var}_set=\${${ac_var}+set}-  eval ac_cv_env_${ac_var}_value=\$${ac_var}-done--#-# Report the --help message.-#-if test "$ac_init_help" = "long"; then-  # Omit some internal or obsolete options to make the list less imposing.-  # This message is too long to be a string in the A/UX 3.1 sh.-  cat <<_ACEOF-'configure' configures libffi 3.5.2 to adapt to many kinds of systems.--Usage: $0 [OPTION]... [VAR=VALUE]...--To assign environment variables (e.g., CC, CFLAGS...), specify them as-VAR=VALUE.  See below for descriptions of some of the useful variables.--Defaults for the options are specified in brackets.--Configuration:-  -h, --help              display this help and exit-      --help=short        display options specific to this package-      --help=recursive    display the short help of all the included packages-  -V, --version           display version information and exit-  -q, --quiet, --silent   do not print 'checking ...' messages-      --cache-file=FILE   cache test results in FILE [disabled]-  -C, --config-cache      alias for '--cache-file=config.cache'-  -n, --no-create         do not create output files-      --srcdir=DIR        find the sources in DIR [configure dir or '..']--Installation directories:-  --prefix=PREFIX         install architecture-independent files in PREFIX-                          [$ac_default_prefix]-  --exec-prefix=EPREFIX   install architecture-dependent files in EPREFIX-                          [PREFIX]--By default, 'make install' will install all the files in-'$ac_default_prefix/bin', '$ac_default_prefix/lib' etc.  You can specify-an installation prefix other than '$ac_default_prefix' using '--prefix',-for instance '--prefix=\$HOME'.--For better control, use the options below.--Fine tuning of the installation directories:-  --bindir=DIR            user executables [EPREFIX/bin]-  --sbindir=DIR           system admin executables [EPREFIX/sbin]-  --libexecdir=DIR        program executables [EPREFIX/libexec]-  --sysconfdir=DIR        read-only single-machine data [PREFIX/etc]-  --sharedstatedir=DIR    modifiable architecture-independent data [PREFIX/com]-  --localstatedir=DIR     modifiable single-machine data [PREFIX/var]-  --runstatedir=DIR       modifiable per-process data [LOCALSTATEDIR/run]-  --libdir=DIR            object code libraries [EPREFIX/lib]-  --includedir=DIR        C header files [PREFIX/include]-  --oldincludedir=DIR     C header files for non-gcc [/usr/include]-  --datarootdir=DIR       read-only arch.-independent data root [PREFIX/share]-  --datadir=DIR           read-only architecture-independent data [DATAROOTDIR]-  --infodir=DIR           info documentation [DATAROOTDIR/info]-  --localedir=DIR         locale-dependent data [DATAROOTDIR/locale]-  --mandir=DIR            man documentation [DATAROOTDIR/man]-  --docdir=DIR            documentation root [DATAROOTDIR/doc/libffi]-  --htmldir=DIR           html documentation [DOCDIR]-  --dvidir=DIR            dvi documentation [DOCDIR]-  --pdfdir=DIR            pdf documentation [DOCDIR]-  --psdir=DIR             ps documentation [DOCDIR]-_ACEOF--  cat <<\_ACEOF--System types:-  --build=BUILD     configure for building on BUILD [guessed]-  --host=HOST       cross-compile to build programs to run on HOST [BUILD]-  --target=TARGET   configure for building compilers for TARGET [HOST]-_ACEOF-fi--if test -n "$ac_init_help"; then-  case $ac_init_help in-     short | recursive ) echo "Configuration of libffi 3.5.2:";;-   esac-  cat <<\_ACEOF--Optional Features:-  --disable-option-checking  ignore unrecognized --enable/--with options-  --disable-FEATURE       do not include FEATURE (same as --enable-FEATURE=no)-  --enable-FEATURE[=ARG]  include FEATURE [ARG=yes]-  --disable-builddir      disable automatic build in subdir of sources--  --enable-dependency-tracking-                          do not reject slow dependency extractors-  --disable-dependency-tracking-                          speeds up one-time build-  --enable-shared[=PKGS]  build shared libraries [default=yes]-  --enable-static[=PKGS]  build static libraries [default=yes]-  --enable-pic[=PKGS]     try to use only PIC/non-PIC objects [default=use-                          both]-  --enable-fast-install[=PKGS]-                          optimize for fast installation [default=yes]-  --enable-aix-soname=aix|svr4|both-                          shared library versioning (aka "SONAME") variant to-                          provide on AIX, [default=aix].-  --disable-libtool-lock  avoid locking (might break parallel builds)-  --enable-portable-binary-                          disable compiler optimizations that would produce-                          unportable binaries-  --enable-maintainer-mode-                          enable make rules and dependencies not useful (and-                          sometimes confusing) to the casual installer-  --enable-pax_emutramp       enable pax emulated trampolines (experimental)-  --enable-debug          debugging mode-  --disable-structs       omit code for struct support-  --disable-raw-api       make the raw api unavailable-  --disable-exec-static-tramp  disable use of static exec trampolines (enabled by default)-  --enable-purify-safety  purify-safe mode-  --enable-symvers=STYLE  enables symbol versioning of the shared library-                          [default=yes]--Optional Packages:-  --with-PACKAGE[=ARG]    use PACKAGE [ARG=yes]-  --without-PACKAGE       do not use PACKAGE (same as --with-PACKAGE=no)-  --with-gnu-ld           assume the C compiler uses GNU ld [default=no]-  --with-sysroot[=DIR]    Search for dependent libraries within DIR (or the-                          compiler's sysroot if not specified).-  --with-gcc-arch=<arch>  use architecture <arch> for gcc -march/-mtune,-                          instead of guessing--Some influential environment variables:-  CC          C compiler command-  CFLAGS      C compiler flags-  LDFLAGS     linker flags, e.g. -L<lib dir> if you have libraries in a-              nonstandard directory <lib dir>-  LIBS        libraries to pass to the linker, e.g. -l<library>-  CPPFLAGS    (Objective) C/C++ preprocessor flags, e.g. -I<include dir> if-              you have headers in a nonstandard directory <include dir>-  CXX         C++ compiler command-  CXXFLAGS    C++ compiler flags-  CCAS        assembler compiler command (defaults to CC)-  CCASFLAGS   assembler compiler flags (defaults to CFLAGS)-  LT_SYS_LIBRARY_PATH-              User-defined run-time library search path.-  CXXCPP      C++ preprocessor-  WASM64_MEMORY64-              Used only for the wasm64 target. Set to 1 (default) or 2 for-              Emscripten's -sMEMORY64 mode--Use these variables to override the choices made by 'configure' or to help-it to find libraries and programs with nonstandard names/locations.--Report bugs to <http://github.com/libffi/libffi/issues>.-_ACEOF-ac_status=$?-fi--if test "$ac_init_help" = "recursive"; then-  # If there are subdirs, report their specific --help.-  for ac_dir in : $ac_subdirs_all; do test "x$ac_dir" = x: && continue-    test -d "$ac_dir" ||-      { cd "$srcdir" && ac_pwd=`pwd` && srcdir=. && test -d "$ac_dir"; } ||-      continue-    ac_builddir=.--case "$ac_dir" in-.) ac_dir_suffix= ac_top_builddir_sub=. ac_top_build_prefix= ;;-*)-  ac_dir_suffix=/`printf "%s\n" "$ac_dir" | sed 's|^\.[\\/]||'`-  # A ".." for each directory in $ac_dir_suffix.-  ac_top_builddir_sub=`printf "%s\n" "$ac_dir_suffix" | sed 's|/[^\\/]*|/..|g;s|/||'`-  case $ac_top_builddir_sub in-  "") ac_top_builddir_sub=. ac_top_build_prefix= ;;-  *)  ac_top_build_prefix=$ac_top_builddir_sub/ ;;-  esac ;;-esac-ac_abs_top_builddir=$ac_pwd-ac_abs_builddir=$ac_pwd$ac_dir_suffix-# for backward compatibility:-ac_top_builddir=$ac_top_build_prefix--case $srcdir in-  .)  # We are building in place.-    ac_srcdir=.-    ac_top_srcdir=$ac_top_builddir_sub-    ac_abs_top_srcdir=$ac_pwd ;;-  [\\/]* | ?:[\\/]* )  # Absolute name.-    ac_srcdir=$srcdir$ac_dir_suffix;-    ac_top_srcdir=$srcdir-    ac_abs_top_srcdir=$srcdir ;;-  *) # Relative name.-    ac_srcdir=$ac_top_build_prefix$srcdir$ac_dir_suffix-    ac_top_srcdir=$ac_top_build_prefix$srcdir-    ac_abs_top_srcdir=$ac_pwd/$srcdir ;;-esac-ac_abs_srcdir=$ac_abs_top_srcdir$ac_dir_suffix--    cd "$ac_dir" || { ac_status=$?; continue; }-    # Check for configure.gnu first; this name is used for a wrapper for-    # Metaconfig's "Configure" on case-insensitive file systems.-    if test -f "$ac_srcdir/configure.gnu"; then-      echo &&-      $SHELL "$ac_srcdir/configure.gnu" --help=recursive-    elif test -f "$ac_srcdir/configure"; then-      echo &&-      $SHELL "$ac_srcdir/configure" --help=recursive-    else-      printf "%s\n" "$as_me: WARNING: no configuration information is in $ac_dir" >&2-    fi || ac_status=$?-    cd "$ac_pwd" || { ac_status=$?; break; }-  done-fi--test -n "$ac_init_help" && exit $ac_status-if $ac_init_version; then-  cat <<\_ACEOF-libffi configure 3.5.2-generated by GNU Autoconf 2.72--Copyright (C) 2023 Free Software Foundation, Inc.-This configure script is free software; the Free Software Foundation-gives unlimited permission to copy, distribute and modify it.-_ACEOF-  exit-fi--## ------------------------ ##-## Autoconf initialization. ##-## ------------------------ ##--# ac_fn_c_try_compile LINENO-# ---------------------------# Try to compile conftest.$ac_ext, and return whether this succeeded.-ac_fn_c_try_compile ()-{-  as_lineno=${as_lineno-"$1"} as_lineno_stack=as_lineno_stack=$as_lineno_stack-  rm -f conftest.$ac_objext conftest.beam-  if { { ac_try="$ac_compile"-case "(($ac_try" in-  *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;-  *) ac_try_echo=$ac_try;;-esac-eval ac_try_echo="\"\$as_me:${as_lineno-$LINENO}: $ac_try_echo\""-printf "%s\n" "$ac_try_echo"; } >&5-  (eval "$ac_compile") 2>conftest.err-  ac_status=$?-  if test -s conftest.err; then-    grep -v '^ *+' conftest.err >conftest.er1-    cat conftest.er1 >&5-    mv -f conftest.er1 conftest.err-  fi-  printf "%s\n" "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5-  test $ac_status = 0; } && {-	 test -z "$ac_c_werror_flag" ||-	 test ! -s conftest.err-       } && test -s conftest.$ac_objext-then :-  ac_retval=0-else case e in #(-  e) printf "%s\n" "$as_me: failed program was:" >&5-sed 's/^/| /' conftest.$ac_ext >&5--	ac_retval=1 ;;-esac-fi-  eval $as_lineno_stack; ${as_lineno_stack:+:} unset as_lineno-  as_fn_set_status $ac_retval--} # ac_fn_c_try_compile--# ac_fn_cxx_try_compile LINENO-# -----------------------------# Try to compile conftest.$ac_ext, and return whether this succeeded.-ac_fn_cxx_try_compile ()-{-  as_lineno=${as_lineno-"$1"} as_lineno_stack=as_lineno_stack=$as_lineno_stack-  rm -f conftest.$ac_objext conftest.beam-  if { { ac_try="$ac_compile"-case "(($ac_try" in-  *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;-  *) ac_try_echo=$ac_try;;-esac-eval ac_try_echo="\"\$as_me:${as_lineno-$LINENO}: $ac_try_echo\""-printf "%s\n" "$ac_try_echo"; } >&5-  (eval "$ac_compile") 2>conftest.err-  ac_status=$?-  if test -s conftest.err; then-    grep -v '^ *+' conftest.err >conftest.er1-    cat conftest.er1 >&5-    mv -f conftest.er1 conftest.err-  fi-  printf "%s\n" "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5-  test $ac_status = 0; } && {-	 test -z "$ac_cxx_werror_flag" ||-	 test ! -s conftest.err-       } && test -s conftest.$ac_objext-then :-  ac_retval=0-else case e in #(-  e) printf "%s\n" "$as_me: failed program was:" >&5-sed 's/^/| /' conftest.$ac_ext >&5--	ac_retval=1 ;;-esac-fi-  eval $as_lineno_stack; ${as_lineno_stack:+:} unset as_lineno-  as_fn_set_status $ac_retval--} # ac_fn_cxx_try_compile--# ac_fn_c_try_link LINENO-# ------------------------# Try to link conftest.$ac_ext, and return whether this succeeded.-ac_fn_c_try_link ()-{-  as_lineno=${as_lineno-"$1"} as_lineno_stack=as_lineno_stack=$as_lineno_stack-  rm -f conftest.$ac_objext conftest.beam conftest$ac_exeext-  if { { ac_try="$ac_link"-case "(($ac_try" in-  *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;-  *) ac_try_echo=$ac_try;;-esac-eval ac_try_echo="\"\$as_me:${as_lineno-$LINENO}: $ac_try_echo\""-printf "%s\n" "$ac_try_echo"; } >&5-  (eval "$ac_link") 2>conftest.err-  ac_status=$?-  if test -s conftest.err; then-    grep -v '^ *+' conftest.err >conftest.er1-    cat conftest.er1 >&5-    mv -f conftest.er1 conftest.err-  fi-  printf "%s\n" "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5-  test $ac_status = 0; } && {-	 test -z "$ac_c_werror_flag" ||-	 test ! -s conftest.err-       } && test -s conftest$ac_exeext && {-	 test "$cross_compiling" = yes ||-	 test -x conftest$ac_exeext-       }-then :-  ac_retval=0-else case e in #(-  e) printf "%s\n" "$as_me: failed program was:" >&5-sed 's/^/| /' conftest.$ac_ext >&5--	ac_retval=1 ;;-esac-fi-  # Delete the IPA/IPO (Inter Procedural Analysis/Optimization) information-  # created by the PGI compiler (conftest_ipa8_conftest.oo), as it would-  # interfere with the next link command; also delete a directory that is-  # left behind by Apple's compiler.  We do this before executing the actions.-  rm -rf conftest.dSYM conftest_ipa8_conftest.oo-  eval $as_lineno_stack; ${as_lineno_stack:+:} unset as_lineno-  as_fn_set_status $ac_retval--} # ac_fn_c_try_link--# ac_fn_c_check_header_compile LINENO HEADER VAR INCLUDES-# --------------------------------------------------------# Tests whether HEADER exists and can be compiled using the include files in-# INCLUDES, setting the cache variable VAR accordingly.-ac_fn_c_check_header_compile ()-{-  as_lineno=${as_lineno-"$1"} as_lineno_stack=as_lineno_stack=$as_lineno_stack-  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for $2" >&5-printf %s "checking for $2... " >&6; }-if eval test \${$3+y}-then :-  printf %s "(cached) " >&6-else case e in #(-  e) cat confdefs.h - <<_ACEOF >conftest.$ac_ext-/* end confdefs.h.  */-$4-#include <$2>-_ACEOF-if ac_fn_c_try_compile "$LINENO"-then :-  eval "$3=yes"-else case e in #(-  e) eval "$3=no" ;;-esac-fi-rm -f core conftest.err conftest.$ac_objext conftest.beam conftest.$ac_ext ;;-esac-fi-eval ac_res=\$$3-	       { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_res" >&5-printf "%s\n" "$ac_res" >&6; }-  eval $as_lineno_stack; ${as_lineno_stack:+:} unset as_lineno--} # ac_fn_c_check_header_compile--# ac_fn_c_check_func LINENO FUNC VAR-# -----------------------------------# Tests whether FUNC exists, setting the cache variable VAR accordingly-ac_fn_c_check_func ()-{-  as_lineno=${as_lineno-"$1"} as_lineno_stack=as_lineno_stack=$as_lineno_stack-  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for $2" >&5-printf %s "checking for $2... " >&6; }-if eval test \${$3+y}-then :-  printf %s "(cached) " >&6-else case e in #(-  e) cat confdefs.h - <<_ACEOF >conftest.$ac_ext-/* end confdefs.h.  */-/* Define $2 to an innocuous variant, in case <limits.h> declares $2.-   For example, HP-UX 11i <limits.h> declares gettimeofday.  */-#define $2 innocuous_$2--/* System header to define __stub macros and hopefully few prototypes,-   which can conflict with char $2 (void); below.  */--#include <limits.h>-#undef $2--/* Override any GCC internal prototype to avoid an error.-   Use char because int might match the return type of a GCC-   builtin and then its argument prototype would still apply.  */-#ifdef __cplusplus-extern "C"-#endif-char $2 (void);-/* The GNU C library defines this for functions which it implements-    to always fail with ENOSYS.  Some functions are actually named-    something starting with __ and the normal name is an alias.  */-#if defined __stub_$2 || defined __stub___$2-choke me-#endif--int-main (void)-{-return $2 ();-  ;-  return 0;-}-_ACEOF-if ac_fn_c_try_link "$LINENO"-then :-  eval "$3=yes"-else case e in #(-  e) eval "$3=no" ;;-esac-fi-rm -f core conftest.err conftest.$ac_objext conftest.beam \-    conftest$ac_exeext conftest.$ac_ext ;;-esac-fi-eval ac_res=\$$3-	       { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_res" >&5-printf "%s\n" "$ac_res" >&6; }-  eval $as_lineno_stack; ${as_lineno_stack:+:} unset as_lineno--} # ac_fn_c_check_func--# ac_fn_cxx_try_cpp LINENO-# -------------------------# Try to preprocess conftest.$ac_ext, and return whether this succeeded.-ac_fn_cxx_try_cpp ()-{-  as_lineno=${as_lineno-"$1"} as_lineno_stack=as_lineno_stack=$as_lineno_stack-  if { { ac_try="$ac_cpp conftest.$ac_ext"-case "(($ac_try" in-  *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;-  *) ac_try_echo=$ac_try;;-esac-eval ac_try_echo="\"\$as_me:${as_lineno-$LINENO}: $ac_try_echo\""-printf "%s\n" "$ac_try_echo"; } >&5-  (eval "$ac_cpp conftest.$ac_ext") 2>conftest.err-  ac_status=$?-  if test -s conftest.err; then-    grep -v '^ *+' conftest.err >conftest.er1-    cat conftest.er1 >&5-    mv -f conftest.er1 conftest.err-  fi-  printf "%s\n" "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5-  test $ac_status = 0; } > conftest.i && {-	 test -z "$ac_cxx_preproc_warn_flag$ac_cxx_werror_flag" ||-	 test ! -s conftest.err-       }-then :-  ac_retval=0-else case e in #(-  e) printf "%s\n" "$as_me: failed program was:" >&5-sed 's/^/| /' conftest.$ac_ext >&5--    ac_retval=1 ;;-esac-fi-  eval $as_lineno_stack; ${as_lineno_stack:+:} unset as_lineno-  as_fn_set_status $ac_retval--} # ac_fn_cxx_try_cpp--# ac_fn_cxx_try_link LINENO-# --------------------------# Try to link conftest.$ac_ext, and return whether this succeeded.-ac_fn_cxx_try_link ()-{-  as_lineno=${as_lineno-"$1"} as_lineno_stack=as_lineno_stack=$as_lineno_stack-  rm -f conftest.$ac_objext conftest.beam conftest$ac_exeext-  if { { ac_try="$ac_link"-case "(($ac_try" in-  *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;-  *) ac_try_echo=$ac_try;;-esac-eval ac_try_echo="\"\$as_me:${as_lineno-$LINENO}: $ac_try_echo\""-printf "%s\n" "$ac_try_echo"; } >&5-  (eval "$ac_link") 2>conftest.err-  ac_status=$?-  if test -s conftest.err; then-    grep -v '^ *+' conftest.err >conftest.er1-    cat conftest.er1 >&5-    mv -f conftest.er1 conftest.err-  fi-  printf "%s\n" "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5-  test $ac_status = 0; } && {-	 test -z "$ac_cxx_werror_flag" ||-	 test ! -s conftest.err-       } && test -s conftest$ac_exeext && {-	 test "$cross_compiling" = yes ||-	 test -x conftest$ac_exeext-       }-then :-  ac_retval=0-else case e in #(-  e) printf "%s\n" "$as_me: failed program was:" >&5-sed 's/^/| /' conftest.$ac_ext >&5--	ac_retval=1 ;;-esac-fi-  # Delete the IPA/IPO (Inter Procedural Analysis/Optimization) information-  # created by the PGI compiler (conftest_ipa8_conftest.oo), as it would-  # interfere with the next link command; also delete a directory that is-  # left behind by Apple's compiler.  We do this before executing the actions.-  rm -rf conftest.dSYM conftest_ipa8_conftest.oo-  eval $as_lineno_stack; ${as_lineno_stack:+:} unset as_lineno-  as_fn_set_status $ac_retval--} # ac_fn_cxx_try_link--# ac_fn_c_try_run LINENO-# -----------------------# Try to run conftest.$ac_ext, and return whether this succeeded. Assumes that-# executables *can* be run.-ac_fn_c_try_run ()-{-  as_lineno=${as_lineno-"$1"} as_lineno_stack=as_lineno_stack=$as_lineno_stack-  if { { ac_try="$ac_link"-case "(($ac_try" in-  *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;-  *) ac_try_echo=$ac_try;;-esac-eval ac_try_echo="\"\$as_me:${as_lineno-$LINENO}: $ac_try_echo\""-printf "%s\n" "$ac_try_echo"; } >&5-  (eval "$ac_link") 2>&5-  ac_status=$?-  printf "%s\n" "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5-  test $ac_status = 0; } && { ac_try='./conftest$ac_exeext'-  { { case "(($ac_try" in-  *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;-  *) ac_try_echo=$ac_try;;-esac-eval ac_try_echo="\"\$as_me:${as_lineno-$LINENO}: $ac_try_echo\""-printf "%s\n" "$ac_try_echo"; } >&5-  (eval "$ac_try") 2>&5-  ac_status=$?-  printf "%s\n" "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5-  test $ac_status = 0; }; }-then :-  ac_retval=0-else case e in #(-  e) printf "%s\n" "$as_me: program exited with status $ac_status" >&5-       printf "%s\n" "$as_me: failed program was:" >&5-sed 's/^/| /' conftest.$ac_ext >&5--       ac_retval=$ac_status ;;-esac-fi-  rm -rf conftest.dSYM conftest_ipa8_conftest.oo-  eval $as_lineno_stack; ${as_lineno_stack:+:} unset as_lineno-  as_fn_set_status $ac_retval--} # ac_fn_c_try_run--# ac_fn_c_compute_int LINENO EXPR VAR INCLUDES-# ---------------------------------------------# Tries to find the compile-time value of EXPR in a program that includes-# INCLUDES, setting VAR accordingly. Returns whether the value could be-# computed-ac_fn_c_compute_int ()-{-  as_lineno=${as_lineno-"$1"} as_lineno_stack=as_lineno_stack=$as_lineno_stack-  if test "$cross_compiling" = yes; then-    # Depending upon the size, compute the lo and hi bounds.-cat confdefs.h - <<_ACEOF >conftest.$ac_ext-/* end confdefs.h.  */-$4-int-main (void)-{-static int test_array [1 - 2 * !(($2) >= 0)];-test_array [0] = 0;-return test_array [0];--  ;-  return 0;-}-_ACEOF-if ac_fn_c_try_compile "$LINENO"-then :-  ac_lo=0 ac_mid=0-  while :; do-    cat confdefs.h - <<_ACEOF >conftest.$ac_ext-/* end confdefs.h.  */-$4-int-main (void)-{-static int test_array [1 - 2 * !(($2) <= $ac_mid)];-test_array [0] = 0;-return test_array [0];--  ;-  return 0;-}-_ACEOF-if ac_fn_c_try_compile "$LINENO"-then :-  ac_hi=$ac_mid; break-else case e in #(-  e) as_fn_arith $ac_mid + 1 && ac_lo=$as_val-			if test $ac_lo -le $ac_mid; then-			  ac_lo= ac_hi=-			  break-			fi-			as_fn_arith 2 '*' $ac_mid + 1 && ac_mid=$as_val ;;-esac-fi-rm -f core conftest.err conftest.$ac_objext conftest.beam conftest.$ac_ext-  done-else case e in #(-  e) cat confdefs.h - <<_ACEOF >conftest.$ac_ext-/* end confdefs.h.  */-$4-int-main (void)-{-static int test_array [1 - 2 * !(($2) < 0)];-test_array [0] = 0;-return test_array [0];--  ;-  return 0;-}-_ACEOF-if ac_fn_c_try_compile "$LINENO"-then :-  ac_hi=-1 ac_mid=-1-  while :; do-    cat confdefs.h - <<_ACEOF >conftest.$ac_ext-/* end confdefs.h.  */-$4-int-main (void)-{-static int test_array [1 - 2 * !(($2) >= $ac_mid)];-test_array [0] = 0;-return test_array [0];--  ;-  return 0;-}-_ACEOF-if ac_fn_c_try_compile "$LINENO"-then :-  ac_lo=$ac_mid; break-else case e in #(-  e) as_fn_arith '(' $ac_mid ')' - 1 && ac_hi=$as_val-			if test $ac_mid -le $ac_hi; then-			  ac_lo= ac_hi=-			  break-			fi-			as_fn_arith 2 '*' $ac_mid && ac_mid=$as_val ;;-esac-fi-rm -f core conftest.err conftest.$ac_objext conftest.beam conftest.$ac_ext-  done-else case e in #(-  e) ac_lo= ac_hi= ;;-esac-fi-rm -f core conftest.err conftest.$ac_objext conftest.beam conftest.$ac_ext ;;-esac-fi-rm -f core conftest.err conftest.$ac_objext conftest.beam conftest.$ac_ext-# Binary search between lo and hi bounds.-while test "x$ac_lo" != "x$ac_hi"; do-  as_fn_arith '(' $ac_hi - $ac_lo ')' / 2 + $ac_lo && ac_mid=$as_val-  cat confdefs.h - <<_ACEOF >conftest.$ac_ext-/* end confdefs.h.  */-$4-int-main (void)-{-static int test_array [1 - 2 * !(($2) <= $ac_mid)];-test_array [0] = 0;-return test_array [0];--  ;-  return 0;-}-_ACEOF-if ac_fn_c_try_compile "$LINENO"-then :-  ac_hi=$ac_mid-else case e in #(-  e) as_fn_arith '(' $ac_mid ')' + 1 && ac_lo=$as_val ;;-esac-fi-rm -f core conftest.err conftest.$ac_objext conftest.beam conftest.$ac_ext-done-case $ac_lo in #((-?*) eval "$3=\$ac_lo"; ac_retval=0 ;;-'') ac_retval=1 ;;-esac-  else-    cat confdefs.h - <<_ACEOF >conftest.$ac_ext-/* end confdefs.h.  */-$4-static long int longval (void) { return $2; }-static unsigned long int ulongval (void) { return $2; }-#include <stdio.h>-#include <stdlib.h>-int-main (void)-{--  FILE *f = fopen ("conftest.val", "w");-  if (! f)-    return 1;-  if (($2) < 0)-    {-      long int i = longval ();-      if (i != ($2))-	return 1;-      fprintf (f, "%ld", i);-    }-  else-    {-      unsigned long int i = ulongval ();-      if (i != ($2))-	return 1;-      fprintf (f, "%lu", i);-    }-  /* Do not output a trailing newline, as this causes \r\n confusion-     on some platforms.  */-  return ferror (f) || fclose (f) != 0;--  ;-  return 0;-}-_ACEOF-if ac_fn_c_try_run "$LINENO"-then :-  echo >>conftest.val; read $3 <conftest.val; ac_retval=0-else case e in #(-  e) ac_retval=1 ;;-esac-fi-rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \-  conftest.$ac_objext conftest.beam conftest.$ac_ext-rm -f conftest.val--  fi-  eval $as_lineno_stack; ${as_lineno_stack:+:} unset as_lineno-  as_fn_set_status $ac_retval--} # ac_fn_c_compute_int-ac_configure_args_raw=-for ac_arg-do-  case $ac_arg in-  *\'*)-    ac_arg=`printf "%s\n" "$ac_arg" | sed "s/'/'\\\\\\\\''/g"` ;;-  esac-  as_fn_append ac_configure_args_raw " '$ac_arg'"-done--case $ac_configure_args_raw in-  *$as_nl*)-    ac_safe_unquote= ;;-  *)-    ac_unsafe_z='|&;<>()$`\\"*?[ ''	' # This string ends in space, tab.-    ac_unsafe_a="$ac_unsafe_z#~"-    ac_safe_unquote="s/ '\\([^$ac_unsafe_a][^$ac_unsafe_z]*\\)'/ \\1/g"-    ac_configure_args_raw=`      printf "%s\n" "$ac_configure_args_raw" | sed "$ac_safe_unquote"`;;-esac--cat >config.log <<_ACEOF-This file contains any messages produced by compilers while-running configure, to aid debugging if configure makes a mistake.--It was created by libffi $as_me 3.5.2, which was-generated by GNU Autoconf 2.72.  Invocation command line was--  $ $0$ac_configure_args_raw--_ACEOF-exec 5>>config.log-{-cat <<_ASUNAME-## --------- ##-## Platform. ##-## --------- ##--hostname = `(hostname || uname -n) 2>/dev/null | sed 1q`-uname -m = `(uname -m) 2>/dev/null || echo unknown`-uname -r = `(uname -r) 2>/dev/null || echo unknown`-uname -s = `(uname -s) 2>/dev/null || echo unknown`-uname -v = `(uname -v) 2>/dev/null || echo unknown`--/usr/bin/uname -p = `(/usr/bin/uname -p) 2>/dev/null || echo unknown`-/bin/uname -X     = `(/bin/uname -X) 2>/dev/null     || echo unknown`--/bin/arch              = `(/bin/arch) 2>/dev/null              || echo unknown`-/usr/bin/arch -k       = `(/usr/bin/arch -k) 2>/dev/null       || echo unknown`-/usr/convex/getsysinfo = `(/usr/convex/getsysinfo) 2>/dev/null || echo unknown`-/usr/bin/hostinfo      = `(/usr/bin/hostinfo) 2>/dev/null      || echo unknown`-/bin/machine           = `(/bin/machine) 2>/dev/null           || echo unknown`-/usr/bin/oslevel       = `(/usr/bin/oslevel) 2>/dev/null       || echo unknown`-/bin/universe          = `(/bin/universe) 2>/dev/null          || echo unknown`--_ASUNAME--as_save_IFS=$IFS; IFS=$PATH_SEPARATOR-for as_dir in $PATH-do-  IFS=$as_save_IFS-  case $as_dir in #(((-    '') as_dir=./ ;;-    */) ;;-    *) as_dir=$as_dir/ ;;-  esac-    printf "%s\n" "PATH: $as_dir"-  done-IFS=$as_save_IFS--} >&5--cat >&5 <<_ACEOF---## ----------- ##-## Core tests. ##-## ----------- ##--_ACEOF---# Keep a trace of the command line.-# Strip out --no-create and --no-recursion so they do not pile up.-# Strip out --silent because we don't want to record it for future runs.-# Also quote any args containing shell meta-characters.-# Make two passes to allow for proper duplicate-argument suppression.-ac_configure_args=-ac_configure_args0=-ac_configure_args1=-ac_must_keep_next=false-for ac_pass in 1 2-do-  for ac_arg-  do-    case $ac_arg in-    -no-create | --no-c* | -n | -no-recursion | --no-r*) continue ;;-    -q | -quiet | --quiet | --quie | --qui | --qu | --q \-    | -silent | --silent | --silen | --sile | --sil)-      continue ;;-    *\'*)-      ac_arg=`printf "%s\n" "$ac_arg" | sed "s/'/'\\\\\\\\''/g"` ;;-    esac-    case $ac_pass in-    1) as_fn_append ac_configure_args0 " '$ac_arg'" ;;-    2)-      as_fn_append ac_configure_args1 " '$ac_arg'"-      if test $ac_must_keep_next = true; then-	ac_must_keep_next=false # Got value, back to normal.-      else-	case $ac_arg in-	  *=* | --config-cache | -C | -disable-* | --disable-* \-	  | -enable-* | --enable-* | -gas | --g* | -nfp | --nf* \-	  | -q | -quiet | --q* | -silent | --sil* | -v | -verb* \-	  | -with-* | --with-* | -without-* | --without-* | --x)-	    case "$ac_configure_args0 " in-	      "$ac_configure_args1"*" '$ac_arg' "* ) continue ;;-	    esac-	    ;;-	  -* ) ac_must_keep_next=true ;;-	esac-      fi-      as_fn_append ac_configure_args " '$ac_arg'"-      ;;-    esac-  done-done-{ ac_configure_args0=; unset ac_configure_args0;}-{ ac_configure_args1=; unset ac_configure_args1;}--# When interrupted or exit'd, cleanup temporary files, and complete-# config.log.  We remove comments because anyway the quotes in there-# would cause problems or look ugly.-# WARNING: Use '\'' to represent an apostrophe within the trap.-# WARNING: Do not start the trap code with a newline, due to a FreeBSD 4.0 bug.-trap 'exit_status=$?-  # Sanitize IFS.-  IFS=" ""	$as_nl"-  # Save into config.log some information that might help in debugging.-  {-    echo--    printf "%s\n" "## ---------------- ##-## Cache variables. ##-## ---------------- ##"-    echo-    # The following way of writing the cache mishandles newlines in values,-(-  for ac_var in `(set) 2>&1 | sed -n '\''s/^\([a-zA-Z_][a-zA-Z0-9_]*\)=.*/\1/p'\''`; do-    eval ac_val=\$$ac_var-    case $ac_val in #(-    *${as_nl}*)-      case $ac_var in #(-      *_cv_*) { printf "%s\n" "$as_me:${as_lineno-$LINENO}: WARNING: cache variable $ac_var contains a newline" >&5-printf "%s\n" "$as_me: WARNING: cache variable $ac_var contains a newline" >&2;} ;;-      esac-      case $ac_var in #(-      _ | IFS | as_nl) ;; #(-      BASH_ARGV | BASH_SOURCE) eval $ac_var= ;; #(-      *) { eval $ac_var=; unset $ac_var;} ;;-      esac ;;-    esac-  done-  (set) 2>&1 |-    case $as_nl`(ac_space='\'' '\''; set) 2>&1` in #(-    *${as_nl}ac_space=\ *)-      sed -n \-	"s/'\''/'\''\\\\'\'''\''/g;-	  s/^\\([_$as_cr_alnum]*_cv_[_$as_cr_alnum]*\\)=\\(.*\\)/\\1='\''\\2'\''/p"-      ;; #(-    *)-      sed -n "/^[_$as_cr_alnum]*_cv_[_$as_cr_alnum]*=/p"-      ;;-    esac |-    sort-)-    echo--    printf "%s\n" "## ----------------- ##-## Output variables. ##-## ----------------- ##"-    echo-    for ac_var in $ac_subst_vars-    do-      eval ac_val=\$$ac_var-      case $ac_val in-      *\'\''*) ac_val=`printf "%s\n" "$ac_val" | sed "s/'\''/'\''\\\\\\\\'\'''\''/g"`;;-      esac-      printf "%s\n" "$ac_var='\''$ac_val'\''"-    done | sort-    echo--    if test -n "$ac_subst_files"; then-      printf "%s\n" "## ------------------- ##-## File substitutions. ##-## ------------------- ##"-      echo-      for ac_var in $ac_subst_files-      do-	eval ac_val=\$$ac_var-	case $ac_val in-	*\'\''*) ac_val=`printf "%s\n" "$ac_val" | sed "s/'\''/'\''\\\\\\\\'\'''\''/g"`;;-	esac-	printf "%s\n" "$ac_var='\''$ac_val'\''"-      done | sort-      echo-    fi--    if test -s confdefs.h; then-      printf "%s\n" "## ----------- ##-## confdefs.h. ##-## ----------- ##"-      echo-      cat confdefs.h-      echo-    fi-    test "$ac_signal" != 0 &&-      printf "%s\n" "$as_me: caught signal $ac_signal"-    printf "%s\n" "$as_me: exit $exit_status"-  } >&5-  rm -f core *.core core.conftest.* &&-    rm -f -r conftest* confdefs* conf$$* $ac_clean_files &&-    exit $exit_status-' 0-for ac_signal in 1 2 13 15; do-  trap 'ac_signal='$ac_signal'; as_fn_exit 1' $ac_signal-done-ac_signal=0--# confdefs.h avoids OS command line length limits that DEFS can exceed.-rm -f -r conftest* confdefs.h--printf "%s\n" "/* confdefs.h */" > confdefs.h--# Predefined preprocessor variables.--printf "%s\n" "#define PACKAGE_NAME \"$PACKAGE_NAME\"" >>confdefs.h--printf "%s\n" "#define PACKAGE_TARNAME \"$PACKAGE_TARNAME\"" >>confdefs.h--printf "%s\n" "#define PACKAGE_VERSION \"$PACKAGE_VERSION\"" >>confdefs.h--printf "%s\n" "#define PACKAGE_STRING \"$PACKAGE_STRING\"" >>confdefs.h--printf "%s\n" "#define PACKAGE_BUGREPORT \"$PACKAGE_BUGREPORT\"" >>confdefs.h--printf "%s\n" "#define PACKAGE_URL \"$PACKAGE_URL\"" >>confdefs.h---# Let the site file select an alternate cache file if it wants to.-# Prefer an explicitly selected file to automatically selected ones.-if test -n "$CONFIG_SITE"; then-  ac_site_files="$CONFIG_SITE"-elif test "x$prefix" != xNONE; then-  ac_site_files="$prefix/share/config.site $prefix/etc/config.site"-else-  ac_site_files="$ac_default_prefix/share/config.site $ac_default_prefix/etc/config.site"-fi--for ac_site_file in $ac_site_files-do-  case $ac_site_file in #(-  */*) :-     ;; #(-  *) :-    ac_site_file=./$ac_site_file ;;-esac-  if test -f "$ac_site_file" && test -r "$ac_site_file"; then-    { printf "%s\n" "$as_me:${as_lineno-$LINENO}: loading site script $ac_site_file" >&5-printf "%s\n" "$as_me: loading site script $ac_site_file" >&6;}-    sed 's/^/| /' "$ac_site_file" >&5-    . "$ac_site_file" \-      || { { printf "%s\n" "$as_me:${as_lineno-$LINENO}: error: in '$ac_pwd':" >&5-printf "%s\n" "$as_me: error: in '$ac_pwd':" >&2;}-as_fn_error $? "failed to load site script $ac_site_file-See 'config.log' for more details" "$LINENO" 5; }-  fi-done--if test -r "$cache_file"; then-  # Some versions of bash will fail to source /dev/null (special files-  # actually), so we avoid doing that.  DJGPP emulates it as a regular file.-  if test /dev/null != "$cache_file" && test -f "$cache_file"; then-    { printf "%s\n" "$as_me:${as_lineno-$LINENO}: loading cache $cache_file" >&5-printf "%s\n" "$as_me: loading cache $cache_file" >&6;}-    case $cache_file in-      [\\/]* | ?:[\\/]* ) . "$cache_file";;-      *)                      . "./$cache_file";;-    esac-  fi-else-  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: creating cache $cache_file" >&5-printf "%s\n" "$as_me: creating cache $cache_file" >&6;}-  >$cache_file-fi--# Test code for whether the C compiler supports C89 (global declarations)-ac_c_conftest_c89_globals='-/* Does the compiler advertise C89 conformance?-   Do not test the value of __STDC__, because some compilers set it to 0-   while being otherwise adequately conformant. */-#if !defined __STDC__-# error "Compiler does not advertise C89 conformance"-#endif--#include <stddef.h>-#include <stdarg.h>-struct stat;-/* Most of the following tests are stolen from RCS 5.7 src/conf.sh.  */-struct buf { int x; };-struct buf * (*rcsopen) (struct buf *, struct stat *, int);-static char *e (char **p, int i)-{-  return p[i];-}-static char *f (char * (*g) (char **, int), char **p, ...)-{-  char *s;-  va_list v;-  va_start (v,p);-  s = g (p, va_arg (v,int));-  va_end (v);-  return s;-}--/* C89 style stringification. */-#define noexpand_stringify(a) #a-const char *stringified = noexpand_stringify(arbitrary+token=sequence);--/* C89 style token pasting.  Exercises some of the corner cases that-   e.g. old MSVC gets wrong, but not very hard. */-#define noexpand_concat(a,b) a##b-#define expand_concat(a,b) noexpand_concat(a,b)-extern int vA;-extern int vbee;-#define aye A-#define bee B-int *pvA = &expand_concat(v,aye);-int *pvbee = &noexpand_concat(v,bee);--/* OSF 4.0 Compaq cc is some sort of almost-ANSI by default.  It has-   function prototypes and stuff, but not \xHH hex character constants.-   These do not provoke an error unfortunately, instead are silently treated-   as an "x".  The following induces an error, until -std is added to get-   proper ANSI mode.  Curiously \x00 != x always comes out true, for an-   array size at least.  It is necessary to write \x00 == 0 to get something-   that is true only with -std.  */-int osf4_cc_array ['\''\x00'\'' == 0 ? 1 : -1];--/* IBM C 6 for AIX is almost-ANSI by default, but it replaces macro parameters-   inside strings and character constants.  */-#define FOO(x) '\''x'\''-int xlc6_cc_array[FOO(a) == '\''x'\'' ? 1 : -1];--int test (int i, double x);-struct s1 {int (*f) (int a);};-struct s2 {int (*f) (double a);};-int pairnames (int, char **, int *(*)(struct buf *, struct stat *, int),-               int, int);'--# Test code for whether the C compiler supports C89 (body of main).-ac_c_conftest_c89_main='-ok |= (argc == 0 || f (e, argv, 0) != argv[0] || f (e, argv, 1) != argv[1]);-'--# Test code for whether the C compiler supports C99 (global declarations)-ac_c_conftest_c99_globals='-/* Does the compiler advertise C99 conformance? */-#if !defined __STDC_VERSION__ || __STDC_VERSION__ < 199901L-# error "Compiler does not advertise C99 conformance"-#endif--// See if C++-style comments work.--#include <stdbool.h>-extern int puts (const char *);-extern int printf (const char *, ...);-extern int dprintf (int, const char *, ...);-extern void *malloc (size_t);-extern void free (void *);--// Check varargs macros.  These examples are taken from C99 6.10.3.5.-// dprintf is used instead of fprintf to avoid needing to declare-// FILE and stderr.-#define debug(...) dprintf (2, __VA_ARGS__)-#define showlist(...) puts (#__VA_ARGS__)-#define report(test,...) ((test) ? puts (#test) : printf (__VA_ARGS__))-static void-test_varargs_macros (void)-{-  int x = 1234;-  int y = 5678;-  debug ("Flag");-  debug ("X = %d\n", x);-  showlist (The first, second, and third items.);-  report (x>y, "x is %d but y is %d", x, y);-}--// Check long long types.-#define BIG64 18446744073709551615ull-#define BIG32 4294967295ul-#define BIG_OK (BIG64 / BIG32 == 4294967297ull && BIG64 % BIG32 == 0)-#if !BIG_OK-  #error "your preprocessor is broken"-#endif-#if BIG_OK-#else-  #error "your preprocessor is broken"-#endif-static long long int bignum = -9223372036854775807LL;-static unsigned long long int ubignum = BIG64;--struct incomplete_array-{-  int datasize;-  double data[];-};--struct named_init {-  int number;-  const wchar_t *name;-  double average;-};--typedef const char *ccp;--static inline int-test_restrict (ccp restrict text)-{-  // Iterate through items via the restricted pointer.-  // Also check for declarations in for loops.-  for (unsigned int i = 0; *(text+i) != '\''\0'\''; ++i)-    continue;-  return 0;-}--// Check varargs and va_copy.-static bool-test_varargs (const char *format, ...)-{-  va_list args;-  va_start (args, format);-  va_list args_copy;-  va_copy (args_copy, args);--  const char *str = "";-  int number = 0;-  float fnumber = 0;--  while (*format)-    {-      switch (*format++)-	{-	case '\''s'\'': // string-	  str = va_arg (args_copy, const char *);-	  break;-	case '\''d'\'': // int-	  number = va_arg (args_copy, int);-	  break;-	case '\''f'\'': // float-	  fnumber = va_arg (args_copy, double);-	  break;-	default:-	  break;-	}-    }-  va_end (args_copy);-  va_end (args);--  return *str && number && fnumber;-}-'--# Test code for whether the C compiler supports C99 (body of main).-ac_c_conftest_c99_main='-  // Check bool.-  _Bool success = false;-  success |= (argc != 0);--  // Check restrict.-  if (test_restrict ("String literal") == 0)-    success = true;-  char *restrict newvar = "Another string";--  // Check varargs.-  success &= test_varargs ("s, d'\'' f .", "string", 65, 34.234);-  test_varargs_macros ();--  // Check flexible array members.-  struct incomplete_array *ia =-    malloc (sizeof (struct incomplete_array) + (sizeof (double) * 10));-  ia->datasize = 10;-  for (int i = 0; i < ia->datasize; ++i)-    ia->data[i] = i * 1.234;-  // Work around memory leak warnings.-  free (ia);--  // Check named initializers.-  struct named_init ni = {-    .number = 34,-    .name = L"Test wide string",-    .average = 543.34343,-  };--  ni.number = 58;--  int dynamic_array[ni.number];-  dynamic_array[0] = argv[0][0];-  dynamic_array[ni.number - 1] = 543;--  // work around unused variable warnings-  ok |= (!success || bignum == 0LL || ubignum == 0uLL || newvar[0] == '\''x'\''-	 || dynamic_array[ni.number - 1] != 543);-'--# Test code for whether the C compiler supports C11 (global declarations)-ac_c_conftest_c11_globals='-/* Does the compiler advertise C11 conformance? */-#if !defined __STDC_VERSION__ || __STDC_VERSION__ < 201112L-# error "Compiler does not advertise C11 conformance"-#endif--// Check _Alignas.-char _Alignas (double) aligned_as_double;-char _Alignas (0) no_special_alignment;-extern char aligned_as_int;-char _Alignas (0) _Alignas (int) aligned_as_int;--// Check _Alignof.-enum-{-  int_alignment = _Alignof (int),-  int_array_alignment = _Alignof (int[100]),-  char_alignment = _Alignof (char)-};-_Static_assert (0 < -_Alignof (int), "_Alignof is signed");--// Check _Noreturn.-int _Noreturn does_not_return (void) { for (;;) continue; }--// Check _Static_assert.-struct test_static_assert-{-  int x;-  _Static_assert (sizeof (int) <= sizeof (long int),-                  "_Static_assert does not work in struct");-  long int y;-};--// Check UTF-8 literals.-#define u8 syntax error!-char const utf8_literal[] = u8"happens to be ASCII" "another string";--// Check duplicate typedefs.-typedef long *long_ptr;-typedef long int *long_ptr;-typedef long_ptr long_ptr;--// Anonymous structures and unions -- taken from C11 6.7.2.1 Example 1.-struct anonymous-{-  union {-    struct { int i; int j; };-    struct { int k; long int l; } w;-  };-  int m;-} v1;-'--# Test code for whether the C compiler supports C11 (body of main).-ac_c_conftest_c11_main='-  _Static_assert ((offsetof (struct anonymous, i)-		   == offsetof (struct anonymous, w.k)),-		  "Anonymous union alignment botch");-  v1.i = 2;-  v1.w.k = 5;-  ok |= v1.i != 5;-'--# Test code for whether the C compiler supports C11 (complete).-ac_c_conftest_c11_program="${ac_c_conftest_c89_globals}-${ac_c_conftest_c99_globals}-${ac_c_conftest_c11_globals}--int-main (int argc, char **argv)-{-  int ok = 0;-  ${ac_c_conftest_c89_main}-  ${ac_c_conftest_c99_main}-  ${ac_c_conftest_c11_main}-  return ok;-}-"--# Test code for whether the C compiler supports C99 (complete).-ac_c_conftest_c99_program="${ac_c_conftest_c89_globals}-${ac_c_conftest_c99_globals}--int-main (int argc, char **argv)-{-  int ok = 0;-  ${ac_c_conftest_c89_main}-  ${ac_c_conftest_c99_main}-  return ok;-}-"--# Test code for whether the C compiler supports C89 (complete).-ac_c_conftest_c89_program="${ac_c_conftest_c89_globals}--int-main (int argc, char **argv)-{-  int ok = 0;-  ${ac_c_conftest_c89_main}-  return ok;-}-"--# Test code for whether the C++ compiler supports C++98 (global declarations)-ac_cxx_conftest_cxx98_globals='-// Does the compiler advertise C++98 conformance?-#if !defined __cplusplus || __cplusplus < 199711L-# error "Compiler does not advertise C++98 conformance"-#endif--// These inclusions are to reject old compilers that-// lack the unsuffixed header files.-#include <cstdlib>-#include <exception>--// <cassert> and <cstring> are *not* freestanding headers in C++98.-extern void assert (int);-namespace std {-  extern int strcmp (const char *, const char *);-}--// Namespaces, exceptions, and templates were all added after "C++ 2.0".-using std::exception;-using std::strcmp;--namespace {--void test_exception_syntax()-{-  try {-    throw "test";-  } catch (const char *s) {-    // Extra parentheses suppress a warning when building autoconf itself,-    // due to lint rules shared with more typical C programs.-    assert (!(strcmp) (s, "test"));-  }-}--template <typename T> struct test_template-{-  T const val;-  explicit test_template(T t) : val(t) {}-  template <typename U> T add(U u) { return static_cast<T>(u) + val; }-};--} // anonymous namespace-'--# Test code for whether the C++ compiler supports C++98 (body of main)-ac_cxx_conftest_cxx98_main='-  assert (argc);-  assert (! argv[0]);-{-  test_exception_syntax ();-  test_template<double> tt (2.0);-  assert (tt.add (4) == 6.0);-  assert (true && !false);-}-'--# Test code for whether the C++ compiler supports C++11 (global declarations)-ac_cxx_conftest_cxx11_globals='-// Does the compiler advertise C++ 2011 conformance?-#if !defined __cplusplus || __cplusplus < 201103L-# error "Compiler does not advertise C++11 conformance"-#endif--namespace cxx11test-{-  constexpr int get_val() { return 20; }--  struct testinit-  {-    int i;-    double d;-  };--  class delegate-  {-  public:-    delegate(int n) : n(n) {}-    delegate(): delegate(2354) {}--    virtual int getval() { return this->n; };-  protected:-    int n;-  };--  class overridden : public delegate-  {-  public:-    overridden(int n): delegate(n) {}-    virtual int getval() override final { return this->n * 2; }-  };--  class nocopy-  {-  public:-    nocopy(int i): i(i) {}-    nocopy() = default;-    nocopy(const nocopy&) = delete;-    nocopy & operator=(const nocopy&) = delete;-  private:-    int i;-  };--  // for testing lambda expressions-  template <typename Ret, typename Fn> Ret eval(Fn f, Ret v)-  {-    return f(v);-  }--  // for testing variadic templates and trailing return types-  template <typename V> auto sum(V first) -> V-  {-    return first;-  }-  template <typename V, typename... Args> auto sum(V first, Args... rest) -> V-  {-    return first + sum(rest...);-  }-}-'--# Test code for whether the C++ compiler supports C++11 (body of main)-ac_cxx_conftest_cxx11_main='-{-  // Test auto and decltype-  auto a1 = 6538;-  auto a2 = 48573953.4;-  auto a3 = "String literal";--  int total = 0;-  for (auto i = a3; *i; ++i) { total += *i; }--  decltype(a2) a4 = 34895.034;-}-{-  // Test constexpr-  short sa[cxx11test::get_val()] = { 0 };-}-{-  // Test initializer lists-  cxx11test::testinit il = { 4323, 435234.23544 };-}-{-  // Test range-based for-  int array[] = {9, 7, 13, 15, 4, 18, 12, 10, 5, 3,-                 14, 19, 17, 8, 6, 20, 16, 2, 11, 1};-  for (auto &x : array) { x += 23; }-}-{-  // Test lambda expressions-  using cxx11test::eval;-  assert (eval ([](int x) { return x*2; }, 21) == 42);-  double d = 2.0;-  assert (eval ([&](double x) { return d += x; }, 3.0) == 5.0);-  assert (d == 5.0);-  assert (eval ([=](double x) mutable { return d += x; }, 4.0) == 9.0);-  assert (d == 5.0);-}-{-  // Test use of variadic templates-  using cxx11test::sum;-  auto a = sum(1);-  auto b = sum(1, 2);-  auto c = sum(1.0, 2.0, 3.0);-}-{-  // Test constructor delegation-  cxx11test::delegate d1;-  cxx11test::delegate d2();-  cxx11test::delegate d3(45);-}-{-  // Test override and final-  cxx11test::overridden o1(55464);-}-{-  // Test nullptr-  char *c = nullptr;-}-{-  // Test template brackets-  test_template<::test_template<int>> v(test_template<int>(12));-}-{-  // Unicode literals-  char const *utf8 = u8"UTF-8 string \u2500";-  char16_t const *utf16 = u"UTF-8 string \u2500";-  char32_t const *utf32 = U"UTF-32 string \u2500";-}-'--# Test code for whether the C compiler supports C++11 (complete).-ac_cxx_conftest_cxx11_program="${ac_cxx_conftest_cxx98_globals}-${ac_cxx_conftest_cxx11_globals}--int-main (int argc, char **argv)-{-  int ok = 0;-  ${ac_cxx_conftest_cxx98_main}-  ${ac_cxx_conftest_cxx11_main}-  return ok;-}-"--# Test code for whether the C compiler supports C++98 (complete).-ac_cxx_conftest_cxx98_program="${ac_cxx_conftest_cxx98_globals}-int-main (int argc, char **argv)-{-  int ok = 0;-  ${ac_cxx_conftest_cxx98_main}-  return ok;-}-"--as_fn_append ac_header_c_list " stdio.h stdio_h HAVE_STDIO_H"-as_fn_append ac_header_c_list " stdlib.h stdlib_h HAVE_STDLIB_H"-as_fn_append ac_header_c_list " string.h string_h HAVE_STRING_H"-as_fn_append ac_header_c_list " inttypes.h inttypes_h HAVE_INTTYPES_H"-as_fn_append ac_header_c_list " stdint.h stdint_h HAVE_STDINT_H"-as_fn_append ac_header_c_list " strings.h strings_h HAVE_STRINGS_H"-as_fn_append ac_header_c_list " sys/stat.h sys_stat_h HAVE_SYS_STAT_H"-as_fn_append ac_header_c_list " sys/types.h sys_types_h HAVE_SYS_TYPES_H"-as_fn_append ac_header_c_list " unistd.h unistd_h HAVE_UNISTD_H"--# Auxiliary files required by this configure script.-ac_aux_files="ltmain.sh compile config.guess config.sub"--# Locations in which to look for auxiliary files.-ac_aux_dir_candidates="${srcdir}${PATH_SEPARATOR}${srcdir}/..${PATH_SEPARATOR}${srcdir}/../.."--# Search for a directory containing all of the required auxiliary files,-# $ac_aux_files, from the $PATH-style list $ac_aux_dir_candidates.-# If we don't find one directory that contains all the files we need,-# we report the set of missing files from the *first* directory in-# $ac_aux_dir_candidates and give up.-ac_missing_aux_files=""-ac_first_candidate=:-printf "%s\n" "$as_me:${as_lineno-$LINENO}: looking for aux files: $ac_aux_files" >&5-as_save_IFS=$IFS; IFS=$PATH_SEPARATOR-as_found=false-for as_dir in $ac_aux_dir_candidates-do-  IFS=$as_save_IFS-  case $as_dir in #(((-    '') as_dir=./ ;;-    */) ;;-    *) as_dir=$as_dir/ ;;-  esac-  as_found=:--  printf "%s\n" "$as_me:${as_lineno-$LINENO}:  trying $as_dir" >&5-  ac_aux_dir_found=yes-  ac_install_sh=-  for ac_aux in $ac_aux_files-  do-    # As a special case, if "install-sh" is required, that requirement-    # can be satisfied by any of "install-sh", "install.sh", or "shtool",-    # and $ac_install_sh is set appropriately for whichever one is found.-    if test x"$ac_aux" = x"install-sh"-    then-      if test -f "${as_dir}install-sh"; then-        printf "%s\n" "$as_me:${as_lineno-$LINENO}:   ${as_dir}install-sh found" >&5-        ac_install_sh="${as_dir}install-sh -c"-      elif test -f "${as_dir}install.sh"; then-        printf "%s\n" "$as_me:${as_lineno-$LINENO}:   ${as_dir}install.sh found" >&5-        ac_install_sh="${as_dir}install.sh -c"-      elif test -f "${as_dir}shtool"; then-        printf "%s\n" "$as_me:${as_lineno-$LINENO}:   ${as_dir}shtool found" >&5-        ac_install_sh="${as_dir}shtool install -c"-      else-        ac_aux_dir_found=no-        if $ac_first_candidate; then-          ac_missing_aux_files="${ac_missing_aux_files} install-sh"-        else-          break-        fi-      fi-    else-      if test -f "${as_dir}${ac_aux}"; then-        printf "%s\n" "$as_me:${as_lineno-$LINENO}:   ${as_dir}${ac_aux} found" >&5-      else-        ac_aux_dir_found=no-        if $ac_first_candidate; then-          ac_missing_aux_files="${ac_missing_aux_files} ${ac_aux}"-        else-          break-        fi-      fi-    fi-  done-  if test "$ac_aux_dir_found" = yes; then-    ac_aux_dir="$as_dir"-    break-  fi-  ac_first_candidate=false--  as_found=false-done-IFS=$as_save_IFS-if $as_found-then :--else case e in #(-  e) as_fn_error $? "cannot find required auxiliary files:$ac_missing_aux_files" "$LINENO" 5 ;;-esac-fi---# These three variables are undocumented and unsupported,-# and are intended to be withdrawn in a future Autoconf release.-# They can cause serious problems if a builder's source tree is in a directory-# whose full name contains unusual characters.-if test -f "${ac_aux_dir}config.guess"; then-  ac_config_guess="$SHELL ${ac_aux_dir}config.guess"-fi-if test -f "${ac_aux_dir}config.sub"; then-  ac_config_sub="$SHELL ${ac_aux_dir}config.sub"-fi-if test -f "$ac_aux_dir/configure"; then-  ac_configure="$SHELL ${ac_aux_dir}configure"-fi--# Check that the precious variables saved in the cache have kept the same-# value.-ac_cache_corrupted=false-for ac_var in $ac_precious_vars; do-  eval ac_old_set=\$ac_cv_env_${ac_var}_set-  eval ac_new_set=\$ac_env_${ac_var}_set-  eval ac_old_val=\$ac_cv_env_${ac_var}_value-  eval ac_new_val=\$ac_env_${ac_var}_value-  case $ac_old_set,$ac_new_set in-    set,)-      { printf "%s\n" "$as_me:${as_lineno-$LINENO}: error: '$ac_var' was set to '$ac_old_val' in the previous run" >&5-printf "%s\n" "$as_me: error: '$ac_var' was set to '$ac_old_val' in the previous run" >&2;}-      ac_cache_corrupted=: ;;-    ,set)-      { printf "%s\n" "$as_me:${as_lineno-$LINENO}: error: '$ac_var' was not set in the previous run" >&5-printf "%s\n" "$as_me: error: '$ac_var' was not set in the previous run" >&2;}-      ac_cache_corrupted=: ;;-    ,);;-    *)-      if test "x$ac_old_val" != "x$ac_new_val"; then-	# differences in whitespace do not lead to failure.-	ac_old_val_w=`echo x $ac_old_val`-	ac_new_val_w=`echo x $ac_new_val`-	if test "$ac_old_val_w" != "$ac_new_val_w"; then-	  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: error: '$ac_var' has changed since the previous run:" >&5-printf "%s\n" "$as_me: error: '$ac_var' has changed since the previous run:" >&2;}-	  ac_cache_corrupted=:-	else-	  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: warning: ignoring whitespace changes in '$ac_var' since the previous run:" >&5-printf "%s\n" "$as_me: warning: ignoring whitespace changes in '$ac_var' since the previous run:" >&2;}-	  eval $ac_var=\$ac_old_val-	fi-	{ printf "%s\n" "$as_me:${as_lineno-$LINENO}:   former value:  '$ac_old_val'" >&5-printf "%s\n" "$as_me:   former value:  '$ac_old_val'" >&2;}-	{ printf "%s\n" "$as_me:${as_lineno-$LINENO}:   current value: '$ac_new_val'" >&5-printf "%s\n" "$as_me:   current value: '$ac_new_val'" >&2;}-      fi;;-  esac-  # Pass precious variables to config.status.-  if test "$ac_new_set" = set; then-    case $ac_new_val in-    *\'*) ac_arg=$ac_var=`printf "%s\n" "$ac_new_val" | sed "s/'/'\\\\\\\\''/g"` ;;-    *) ac_arg=$ac_var=$ac_new_val ;;-    esac-    case " $ac_configure_args " in-      *" '$ac_arg' "*) ;; # Avoid dups.  Use of quotes ensures accuracy.-      *) as_fn_append ac_configure_args " '$ac_arg'" ;;-    esac-  fi-done-if $ac_cache_corrupted; then-  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: error: in '$ac_pwd':" >&5-printf "%s\n" "$as_me: error: in '$ac_pwd':" >&2;}-  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: error: changes in the environment can compromise the build" >&5-printf "%s\n" "$as_me: error: changes in the environment can compromise the build" >&2;}-  as_fn_error $? "run '${MAKE-make} distclean' and/or 'rm $cache_file'-	    and start over" "$LINENO" 5-fi-## -------------------- ##-## Main body of script. ##-## -------------------- ##--ac_ext=c-ac_cpp='$CPP $CPPFLAGS'-ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5'-ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5'-ac_compiler_gnu=$ac_cv_c_compiler_gnu---ac_config_headers="$ac_config_headers fficonfig.h"---FFI_VERSION_STRING="3.5.2"-FFI_VERSION_NUMBER=30502-------  # Make sure we can run config.sub.-$SHELL "${ac_aux_dir}config.sub" sun4 >/dev/null 2>&1 ||-  as_fn_error $? "cannot run $SHELL ${ac_aux_dir}config.sub" "$LINENO" 5--{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking build system type" >&5-printf %s "checking build system type... " >&6; }-if test ${ac_cv_build+y}-then :-  printf %s "(cached) " >&6-else case e in #(-  e) ac_build_alias=$build_alias-test "x$ac_build_alias" = x &&-  ac_build_alias=`$SHELL "${ac_aux_dir}config.guess"`-test "x$ac_build_alias" = x &&-  as_fn_error $? "cannot guess build type; you must specify one" "$LINENO" 5-ac_cv_build=`$SHELL "${ac_aux_dir}config.sub" $ac_build_alias` ||-  as_fn_error $? "$SHELL ${ac_aux_dir}config.sub $ac_build_alias failed" "$LINENO" 5- ;;-esac-fi-{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_cv_build" >&5-printf "%s\n" "$ac_cv_build" >&6; }-case $ac_cv_build in-*-*-*) ;;-*) as_fn_error $? "invalid value of canonical build" "$LINENO" 5;;-esac-build=$ac_cv_build-ac_save_IFS=$IFS; IFS='-'-set x $ac_cv_build-shift-build_cpu=$1-build_vendor=$2-shift; shift-# Remember, the first character of IFS is used to create $*,-# except with old shells:-build_os=$*-IFS=$ac_save_IFS-case $build_os in *\ *) build_os=`echo "$build_os" | sed 's/ /-/g'`;; esac---{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking host system type" >&5-printf %s "checking host system type... " >&6; }-if test ${ac_cv_host+y}-then :-  printf %s "(cached) " >&6-else case e in #(-  e) if test "x$host_alias" = x; then-  ac_cv_host=$ac_cv_build-else-  ac_cv_host=`$SHELL "${ac_aux_dir}config.sub" $host_alias` ||-    as_fn_error $? "$SHELL ${ac_aux_dir}config.sub $host_alias failed" "$LINENO" 5-fi- ;;-esac-fi-{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_cv_host" >&5-printf "%s\n" "$ac_cv_host" >&6; }-case $ac_cv_host in-*-*-*) ;;-*) as_fn_error $? "invalid value of canonical host" "$LINENO" 5;;-esac-host=$ac_cv_host-ac_save_IFS=$IFS; IFS='-'-set x $ac_cv_host-shift-host_cpu=$1-host_vendor=$2-shift; shift-# Remember, the first character of IFS is used to create $*,-# except with old shells:-host_os=$*-IFS=$ac_save_IFS-case $host_os in *\ *) host_os=`echo "$host_os" | sed 's/ /-/g'`;; esac---{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking target system type" >&5-printf %s "checking target system type... " >&6; }-if test ${ac_cv_target+y}-then :-  printf %s "(cached) " >&6-else case e in #(-  e) if test "x$target_alias" = x; then-  ac_cv_target=$ac_cv_host-else-  ac_cv_target=`$SHELL "${ac_aux_dir}config.sub" $target_alias` ||-    as_fn_error $? "$SHELL ${ac_aux_dir}config.sub $target_alias failed" "$LINENO" 5-fi- ;;-esac-fi-{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_cv_target" >&5-printf "%s\n" "$ac_cv_target" >&6; }-case $ac_cv_target in-*-*-*) ;;-*) as_fn_error $? "invalid value of canonical target" "$LINENO" 5;;-esac-target=$ac_cv_target-ac_save_IFS=$IFS; IFS='-'-set x $ac_cv_target-shift-target_cpu=$1-target_vendor=$2-shift; shift-# Remember, the first character of IFS is used to create $*,-# except with old shells:-target_os=$*-IFS=$ac_save_IFS-case $target_os in *\ *) target_os=`echo "$target_os" | sed 's/ /-/g'`;; esac---# The aliases save the names the user supplied, while $host etc.-# will get canonicalized.-test -n "$target_alias" &&-  test "$program_prefix$program_suffix$program_transform_name" = \-    NONENONEs,x,x, &&-  program_prefix=${target_alias}--target_alias=${target_alias-$host_alias}--case "${host}" in-  frv*-elf)-    LDFLAGS=`echo $LDFLAGS | sed "s/\-B^ *libgloss\/frv\///"`\ -B`pwd`/../libgloss/frv/-    ;;-esac---   # [$]@ is unusable in 2.60+ but earlier autoconf had no ac_configure_args-   if test "${ac_configure_args+set}" != "set" ; then-      ac_configure_args=-      for ac_arg in ${1+"$@"}; do-         ac_configure_args="$ac_configure_args '$ac_arg'"-      done-   fi---# Expand $ac_aux_dir to an absolute path.-am_aux_dir=`cd "$ac_aux_dir" && pwd`---ax_enable_builddir="."-# Check whether --enable-builddir was given.-if test ${enable_builddir+y}-then :-  enableval=$enable_builddir; ax_enable_builddir="$enableval"-else case e in #(-  e) ax_enable_builddir="auto" ;;-esac-fi--if test ".$ac_srcdir_defaulted" != ".no" ; then-if test ".$srcdir" = ".." ; then-  if test -f config.status ; then-    { printf "%s\n" "$as_me:${as_lineno-$LINENO}: toplevel srcdir already configured... skipping subdir build" >&5-printf "%s\n" "$as_me: toplevel srcdir already configured... skipping subdir build" >&6;}-  else-    test ".$ax_enable_builddir" = "."  && ax_enable_builddir="."-    test ".$ax_enable_builddir" = ".no"  && ax_enable_builddir="."-    test ".$TARGET" = "." && TARGET="$target"-    test ".$ax_enable_builddir" = ".auto" && ax_enable_builddir="$TARGET"-    if test ".$ax_enable_builddir" != ".." ; then    # we know where to go and-      as_dir=$ax_enable_builddir; as_fn_mkdir_p-      echo __.$ax_enable_builddir.__ > $ax_enable_builddir/conftest.tmp-      cd $ax_enable_builddir-      if grep __.$ax_enable_builddir.__ conftest.tmp >/dev/null 2>/dev/null ; then-        rm conftest.tmp-        { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: continue configure in default builddir \"./$ax_enable_builddir\"" >&5-printf "%s\n" "continue configure in default builddir \"./$ax_enable_builddir\"" >&6; }-      else-        as_fn_error $? "could not change to default builddir \"./$ax_enable_builddir\"" "$LINENO" 5-      fi-      srcdir=`echo "$ax_enable_builddir" |-              sed -e 's,^\./,,;s,[^/]$,&/,;s,[^/]*/,../,g;s,[/]$,,;'`-      # going to restart from subdirectory location-      test -f $srcdir/config.log   && mv $srcdir/config.log   .-      test -f $srcdir/confdefs.h   && mv $srcdir/confdefs.h   .-      test -f $srcdir/conftest.log && mv $srcdir/conftest.log .-      test -f $srcdir/$cache_file  && mv $srcdir/$cache_file  .-      { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: ....exec $SHELL $srcdir/$0 \"--srcdir=$srcdir\" \"--enable-builddir=$ax_enable_builddir\" ${1+\"$@\"}" >&5-printf "%s\n" "....exec $SHELL $srcdir/$0 \"--srcdir=$srcdir\" \"--enable-builddir=$ax_enable_builddir\" ${1+\"$@\"}" >&6; }-      case "$0" in # restart-       [\\/]* | ?:[\\/]*) # Absolute name-         eval $SHELL "'$0'" "'--srcdir=$srcdir'" "'--enable-builddir=$ax_enable_builddir'" $ac_configure_args ;;-       *) eval $SHELL "'$srcdir/$0'" "'--srcdir=$srcdir'" "'--enable-builddir=$ax_enable_builddir'" $ac_configure_args ;;-      esac ; exit $?-    fi-  fi-fi fi-test ".$ax_enable_builddir" = ".auto" && ax_enable_builddir="."-# Extract the first word of "gsed sed", so it can be a program name with args.-set dummy gsed sed; ac_word=$2-{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5-printf %s "checking for $ac_word... " >&6; }-if test ${ac_cv_path_ax_enable_builddir_sed+y}-then :-  printf %s "(cached) " >&6-else case e in #(-  e) case $ax_enable_builddir_sed in-  [\\/]* | ?:[\\/]*)-  ac_cv_path_ax_enable_builddir_sed="$ax_enable_builddir_sed" # Let the user override the test with a path.-  ;;-  *)-  as_save_IFS=$IFS; IFS=$PATH_SEPARATOR-for as_dir in $PATH-do-  IFS=$as_save_IFS-  case $as_dir in #(((-    '') as_dir=./ ;;-    */) ;;-    *) as_dir=$as_dir/ ;;-  esac-    for ac_exec_ext in '' $ac_executable_extensions; do-  if as_fn_executable_p "$as_dir$ac_word$ac_exec_ext"; then-    ac_cv_path_ax_enable_builddir_sed="$as_dir$ac_word$ac_exec_ext"-    printf "%s\n" "$as_me:${as_lineno-$LINENO}: found $as_dir$ac_word$ac_exec_ext" >&5-    break 2-  fi-done-  done-IFS=$as_save_IFS--  test -z "$ac_cv_path_ax_enable_builddir_sed" && ac_cv_path_ax_enable_builddir_sed="sed"-  ;;-esac ;;-esac-fi-ax_enable_builddir_sed=$ac_cv_path_ax_enable_builddir_sed-if test -n "$ax_enable_builddir_sed"; then-  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ax_enable_builddir_sed" >&5-printf "%s\n" "$ax_enable_builddir_sed" >&6; }-else-  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5-printf "%s\n" "no" >&6; }-fi---ax_enable_builddir_auxdir="$am_aux_dir"-ac_config_commands="$ac_config_commands buildir"---# The same as in boehm-gc and libstdc++. Have to borrow it from there.-# We must force CC to /not/ be precious variables; otherwise-# the wrong, non-multilib-adjusted value will be used in multilibs.-# As a side effect, we have to subst CFLAGS ourselves.-# Also save and restore CFLAGS, since AC_PROG_CC will come up with-# defaults of its own if none are provided.----save_CFLAGS=$CFLAGS----------ac_ext=c-ac_cpp='$CPP $CPPFLAGS'-ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5'-ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5'-ac_compiler_gnu=$ac_cv_c_compiler_gnu-if test -n "$ac_tool_prefix"; then-  # Extract the first word of "${ac_tool_prefix}gcc", so it can be a program name with args.-set dummy ${ac_tool_prefix}gcc; ac_word=$2-{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5-printf %s "checking for $ac_word... " >&6; }-if test ${ac_cv_prog_CC+y}-then :-  printf %s "(cached) " >&6-else case e in #(-  e) if test -n "$CC"; then-  ac_cv_prog_CC="$CC" # Let the user override the test.-else-as_save_IFS=$IFS; IFS=$PATH_SEPARATOR-for as_dir in $PATH-do-  IFS=$as_save_IFS-  case $as_dir in #(((-    '') as_dir=./ ;;-    */) ;;-    *) as_dir=$as_dir/ ;;-  esac-    for ac_exec_ext in '' $ac_executable_extensions; do-  if as_fn_executable_p "$as_dir$ac_word$ac_exec_ext"; then-    ac_cv_prog_CC="${ac_tool_prefix}gcc"-    printf "%s\n" "$as_me:${as_lineno-$LINENO}: found $as_dir$ac_word$ac_exec_ext" >&5-    break 2-  fi-done-  done-IFS=$as_save_IFS--fi ;;-esac-fi-CC=$ac_cv_prog_CC-if test -n "$CC"; then-  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $CC" >&5-printf "%s\n" "$CC" >&6; }-else-  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5-printf "%s\n" "no" >&6; }-fi---fi-if test -z "$ac_cv_prog_CC"; then-  ac_ct_CC=$CC-  # Extract the first word of "gcc", so it can be a program name with args.-set dummy gcc; ac_word=$2-{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5-printf %s "checking for $ac_word... " >&6; }-if test ${ac_cv_prog_ac_ct_CC+y}-then :-  printf %s "(cached) " >&6-else case e in #(-  e) if test -n "$ac_ct_CC"; then-  ac_cv_prog_ac_ct_CC="$ac_ct_CC" # Let the user override the test.-else-as_save_IFS=$IFS; IFS=$PATH_SEPARATOR-for as_dir in $PATH-do-  IFS=$as_save_IFS-  case $as_dir in #(((-    '') as_dir=./ ;;-    */) ;;-    *) as_dir=$as_dir/ ;;-  esac-    for ac_exec_ext in '' $ac_executable_extensions; do-  if as_fn_executable_p "$as_dir$ac_word$ac_exec_ext"; then-    ac_cv_prog_ac_ct_CC="gcc"-    printf "%s\n" "$as_me:${as_lineno-$LINENO}: found $as_dir$ac_word$ac_exec_ext" >&5-    break 2-  fi-done-  done-IFS=$as_save_IFS--fi ;;-esac-fi-ac_ct_CC=$ac_cv_prog_ac_ct_CC-if test -n "$ac_ct_CC"; then-  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_ct_CC" >&5-printf "%s\n" "$ac_ct_CC" >&6; }-else-  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5-printf "%s\n" "no" >&6; }-fi--  if test "x$ac_ct_CC" = x; then-    CC=""-  else-    case $cross_compiling:$ac_tool_warned in-yes:)-{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: WARNING: using cross tools not prefixed with host triplet" >&5-printf "%s\n" "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;}-ac_tool_warned=yes ;;-esac-    CC=$ac_ct_CC-  fi-else-  CC="$ac_cv_prog_CC"-fi--if test -z "$CC"; then-          if test -n "$ac_tool_prefix"; then-    # Extract the first word of "${ac_tool_prefix}cc", so it can be a program name with args.-set dummy ${ac_tool_prefix}cc; ac_word=$2-{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5-printf %s "checking for $ac_word... " >&6; }-if test ${ac_cv_prog_CC+y}-then :-  printf %s "(cached) " >&6-else case e in #(-  e) if test -n "$CC"; then-  ac_cv_prog_CC="$CC" # Let the user override the test.-else-as_save_IFS=$IFS; IFS=$PATH_SEPARATOR-for as_dir in $PATH-do-  IFS=$as_save_IFS-  case $as_dir in #(((-    '') as_dir=./ ;;-    */) ;;-    *) as_dir=$as_dir/ ;;-  esac-    for ac_exec_ext in '' $ac_executable_extensions; do-  if as_fn_executable_p "$as_dir$ac_word$ac_exec_ext"; then-    ac_cv_prog_CC="${ac_tool_prefix}cc"-    printf "%s\n" "$as_me:${as_lineno-$LINENO}: found $as_dir$ac_word$ac_exec_ext" >&5-    break 2-  fi-done-  done-IFS=$as_save_IFS--fi ;;-esac-fi-CC=$ac_cv_prog_CC-if test -n "$CC"; then-  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $CC" >&5-printf "%s\n" "$CC" >&6; }-else-  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5-printf "%s\n" "no" >&6; }-fi---  fi-fi-if test -z "$CC"; then-  # Extract the first word of "cc", so it can be a program name with args.-set dummy cc; ac_word=$2-{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5-printf %s "checking for $ac_word... " >&6; }-if test ${ac_cv_prog_CC+y}-then :-  printf %s "(cached) " >&6-else case e in #(-  e) if test -n "$CC"; then-  ac_cv_prog_CC="$CC" # Let the user override the test.-else-  ac_prog_rejected=no-as_save_IFS=$IFS; IFS=$PATH_SEPARATOR-for as_dir in $PATH-do-  IFS=$as_save_IFS-  case $as_dir in #(((-    '') as_dir=./ ;;-    */) ;;-    *) as_dir=$as_dir/ ;;-  esac-    for ac_exec_ext in '' $ac_executable_extensions; do-  if as_fn_executable_p "$as_dir$ac_word$ac_exec_ext"; then-    if test "$as_dir$ac_word$ac_exec_ext" = "/usr/ucb/cc"; then-       ac_prog_rejected=yes-       continue-     fi-    ac_cv_prog_CC="cc"-    printf "%s\n" "$as_me:${as_lineno-$LINENO}: found $as_dir$ac_word$ac_exec_ext" >&5-    break 2-  fi-done-  done-IFS=$as_save_IFS--if test $ac_prog_rejected = yes; then-  # We found a bogon in the path, so make sure we never use it.-  set dummy $ac_cv_prog_CC-  shift-  if test $# != 0; then-    # We chose a different compiler from the bogus one.-    # However, it has the same basename, so the bogon will be chosen-    # first if we set CC to just the basename; use the full file name.-    shift-    ac_cv_prog_CC="$as_dir$ac_word${1+' '}$@"-  fi-fi-fi ;;-esac-fi-CC=$ac_cv_prog_CC-if test -n "$CC"; then-  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $CC" >&5-printf "%s\n" "$CC" >&6; }-else-  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5-printf "%s\n" "no" >&6; }-fi---fi-if test -z "$CC"; then-  if test -n "$ac_tool_prefix"; then-  for ac_prog in cl.exe-  do-    # Extract the first word of "$ac_tool_prefix$ac_prog", so it can be a program name with args.-set dummy $ac_tool_prefix$ac_prog; ac_word=$2-{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5-printf %s "checking for $ac_word... " >&6; }-if test ${ac_cv_prog_CC+y}-then :-  printf %s "(cached) " >&6-else case e in #(-  e) if test -n "$CC"; then-  ac_cv_prog_CC="$CC" # Let the user override the test.-else-as_save_IFS=$IFS; IFS=$PATH_SEPARATOR-for as_dir in $PATH-do-  IFS=$as_save_IFS-  case $as_dir in #(((-    '') as_dir=./ ;;-    */) ;;-    *) as_dir=$as_dir/ ;;-  esac-    for ac_exec_ext in '' $ac_executable_extensions; do-  if as_fn_executable_p "$as_dir$ac_word$ac_exec_ext"; then-    ac_cv_prog_CC="$ac_tool_prefix$ac_prog"-    printf "%s\n" "$as_me:${as_lineno-$LINENO}: found $as_dir$ac_word$ac_exec_ext" >&5-    break 2-  fi-done-  done-IFS=$as_save_IFS--fi ;;-esac-fi-CC=$ac_cv_prog_CC-if test -n "$CC"; then-  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $CC" >&5-printf "%s\n" "$CC" >&6; }-else-  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5-printf "%s\n" "no" >&6; }-fi---    test -n "$CC" && break-  done-fi-if test -z "$CC"; then-  ac_ct_CC=$CC-  for ac_prog in cl.exe-do-  # Extract the first word of "$ac_prog", so it can be a program name with args.-set dummy $ac_prog; ac_word=$2-{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5-printf %s "checking for $ac_word... " >&6; }-if test ${ac_cv_prog_ac_ct_CC+y}-then :-  printf %s "(cached) " >&6-else case e in #(-  e) if test -n "$ac_ct_CC"; then-  ac_cv_prog_ac_ct_CC="$ac_ct_CC" # Let the user override the test.-else-as_save_IFS=$IFS; IFS=$PATH_SEPARATOR-for as_dir in $PATH-do-  IFS=$as_save_IFS-  case $as_dir in #(((-    '') as_dir=./ ;;-    */) ;;-    *) as_dir=$as_dir/ ;;-  esac-    for ac_exec_ext in '' $ac_executable_extensions; do-  if as_fn_executable_p "$as_dir$ac_word$ac_exec_ext"; then-    ac_cv_prog_ac_ct_CC="$ac_prog"-    printf "%s\n" "$as_me:${as_lineno-$LINENO}: found $as_dir$ac_word$ac_exec_ext" >&5-    break 2-  fi-done-  done-IFS=$as_save_IFS--fi ;;-esac-fi-ac_ct_CC=$ac_cv_prog_ac_ct_CC-if test -n "$ac_ct_CC"; then-  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_ct_CC" >&5-printf "%s\n" "$ac_ct_CC" >&6; }-else-  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5-printf "%s\n" "no" >&6; }-fi---  test -n "$ac_ct_CC" && break-done--  if test "x$ac_ct_CC" = x; then-    CC=""-  else-    case $cross_compiling:$ac_tool_warned in-yes:)-{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: WARNING: using cross tools not prefixed with host triplet" >&5-printf "%s\n" "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;}-ac_tool_warned=yes ;;-esac-    CC=$ac_ct_CC-  fi-fi--fi-if test -z "$CC"; then-  if test -n "$ac_tool_prefix"; then-  # Extract the first word of "${ac_tool_prefix}clang", so it can be a program name with args.-set dummy ${ac_tool_prefix}clang; ac_word=$2-{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5-printf %s "checking for $ac_word... " >&6; }-if test ${ac_cv_prog_CC+y}-then :-  printf %s "(cached) " >&6-else case e in #(-  e) if test -n "$CC"; then-  ac_cv_prog_CC="$CC" # Let the user override the test.-else-as_save_IFS=$IFS; IFS=$PATH_SEPARATOR-for as_dir in $PATH-do-  IFS=$as_save_IFS-  case $as_dir in #(((-    '') as_dir=./ ;;-    */) ;;-    *) as_dir=$as_dir/ ;;-  esac-    for ac_exec_ext in '' $ac_executable_extensions; do-  if as_fn_executable_p "$as_dir$ac_word$ac_exec_ext"; then-    ac_cv_prog_CC="${ac_tool_prefix}clang"-    printf "%s\n" "$as_me:${as_lineno-$LINENO}: found $as_dir$ac_word$ac_exec_ext" >&5-    break 2-  fi-done-  done-IFS=$as_save_IFS--fi ;;-esac-fi-CC=$ac_cv_prog_CC-if test -n "$CC"; then-  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $CC" >&5-printf "%s\n" "$CC" >&6; }-else-  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5-printf "%s\n" "no" >&6; }-fi---fi-if test -z "$ac_cv_prog_CC"; then-  ac_ct_CC=$CC-  # Extract the first word of "clang", so it can be a program name with args.-set dummy clang; ac_word=$2-{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5-printf %s "checking for $ac_word... " >&6; }-if test ${ac_cv_prog_ac_ct_CC+y}-then :-  printf %s "(cached) " >&6-else case e in #(-  e) if test -n "$ac_ct_CC"; then-  ac_cv_prog_ac_ct_CC="$ac_ct_CC" # Let the user override the test.-else-as_save_IFS=$IFS; IFS=$PATH_SEPARATOR-for as_dir in $PATH-do-  IFS=$as_save_IFS-  case $as_dir in #(((-    '') as_dir=./ ;;-    */) ;;-    *) as_dir=$as_dir/ ;;-  esac-    for ac_exec_ext in '' $ac_executable_extensions; do-  if as_fn_executable_p "$as_dir$ac_word$ac_exec_ext"; then-    ac_cv_prog_ac_ct_CC="clang"-    printf "%s\n" "$as_me:${as_lineno-$LINENO}: found $as_dir$ac_word$ac_exec_ext" >&5-    break 2-  fi-done-  done-IFS=$as_save_IFS--fi ;;-esac-fi-ac_ct_CC=$ac_cv_prog_ac_ct_CC-if test -n "$ac_ct_CC"; then-  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_ct_CC" >&5-printf "%s\n" "$ac_ct_CC" >&6; }-else-  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5-printf "%s\n" "no" >&6; }-fi--  if test "x$ac_ct_CC" = x; then-    CC=""-  else-    case $cross_compiling:$ac_tool_warned in-yes:)-{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: WARNING: using cross tools not prefixed with host triplet" >&5-printf "%s\n" "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;}-ac_tool_warned=yes ;;-esac-    CC=$ac_ct_CC-  fi-else-  CC="$ac_cv_prog_CC"-fi--fi---test -z "$CC" && { { printf "%s\n" "$as_me:${as_lineno-$LINENO}: error: in '$ac_pwd':" >&5-printf "%s\n" "$as_me: error: in '$ac_pwd':" >&2;}-as_fn_error $? "no acceptable C compiler found in \$PATH-See 'config.log' for more details" "$LINENO" 5; }--# Provide some information about the compiler.-printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for C compiler version" >&5-set X $ac_compile-ac_compiler=$2-for ac_option in --version -v -V -qversion -version; do-  { { ac_try="$ac_compiler $ac_option >&5"-case "(($ac_try" in-  *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;-  *) ac_try_echo=$ac_try;;-esac-eval ac_try_echo="\"\$as_me:${as_lineno-$LINENO}: $ac_try_echo\""-printf "%s\n" "$ac_try_echo"; } >&5-  (eval "$ac_compiler $ac_option >&5") 2>conftest.err-  ac_status=$?-  if test -s conftest.err; then-    sed '10a\-... rest of stderr output deleted ...-         10q' conftest.err >conftest.er1-    cat conftest.er1 >&5-  fi-  rm -f conftest.er1 conftest.err-  printf "%s\n" "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5-  test $ac_status = 0; }-done--cat confdefs.h - <<_ACEOF >conftest.$ac_ext-/* end confdefs.h.  */--int-main (void)-{--  ;-  return 0;-}-_ACEOF-ac_clean_files_save=$ac_clean_files-ac_clean_files="$ac_clean_files a.out a.out.dSYM a.exe b.out"-# Try to create an executable without -o first, disregard a.out.-# It will help us diagnose broken compilers, and finding out an intuition-# of exeext.-{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking whether the C compiler works" >&5-printf %s "checking whether the C compiler works... " >&6; }-ac_link_default=`printf "%s\n" "$ac_link" | sed 's/ -o *conftest[^ ]*//'`--# The possible output files:-ac_files="a.out conftest.exe conftest a.exe a_out.exe b.out conftest.*"--ac_rmfiles=-for ac_file in $ac_files-do-  case $ac_file in-    *.$ac_ext | *.xcoff | *.tds | *.d | *.pdb | *.xSYM | *.bb | *.bbg | *.map | *.inf | *.dSYM | *.o | *.obj ) ;;-    * ) ac_rmfiles="$ac_rmfiles $ac_file";;-  esac-done-rm -f $ac_rmfiles--if { { ac_try="$ac_link_default"-case "(($ac_try" in-  *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;-  *) ac_try_echo=$ac_try;;-esac-eval ac_try_echo="\"\$as_me:${as_lineno-$LINENO}: $ac_try_echo\""-printf "%s\n" "$ac_try_echo"; } >&5-  (eval "$ac_link_default") 2>&5-  ac_status=$?-  printf "%s\n" "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5-  test $ac_status = 0; }-then :-  # Autoconf-2.13 could set the ac_cv_exeext variable to 'no'.-# So ignore a value of 'no', otherwise this would lead to 'EXEEXT = no'-# in a Makefile.  We should not override ac_cv_exeext if it was cached,-# so that the user can short-circuit this test for compilers unknown to-# Autoconf.-for ac_file in $ac_files ''-do-  test -f "$ac_file" || continue-  case $ac_file in-    *.$ac_ext | *.xcoff | *.tds | *.d | *.pdb | *.xSYM | *.bb | *.bbg | *.map | *.inf | *.dSYM | *.o | *.obj )-	;;-    [ab].out )-	# We found the default executable, but exeext='' is most-	# certainly right.-	break;;-    *.* )-	if test ${ac_cv_exeext+y} && test "$ac_cv_exeext" != no;-	then :; else-	   ac_cv_exeext=`expr "$ac_file" : '[^.]*\(\..*\)'`-	fi-	# We set ac_cv_exeext here because the later test for it is not-	# safe: cross compilers may not add the suffix if given an '-o'-	# argument, so we may need to know it at that point already.-	# Even if this section looks crufty: it has the advantage of-	# actually working.-	break;;-    * )-	break;;-  esac-done-test "$ac_cv_exeext" = no && ac_cv_exeext=--else case e in #(-  e) ac_file='' ;;-esac-fi-if test -z "$ac_file"-then :-  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5-printf "%s\n" "no" >&6; }-printf "%s\n" "$as_me: failed program was:" >&5-sed 's/^/| /' conftest.$ac_ext >&5--{ { printf "%s\n" "$as_me:${as_lineno-$LINENO}: error: in '$ac_pwd':" >&5-printf "%s\n" "$as_me: error: in '$ac_pwd':" >&2;}-as_fn_error 77 "C compiler cannot create executables-See 'config.log' for more details" "$LINENO" 5; }-else case e in #(-  e) { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: yes" >&5-printf "%s\n" "yes" >&6; } ;;-esac-fi-{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for C compiler default output file name" >&5-printf %s "checking for C compiler default output file name... " >&6; }-{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_file" >&5-printf "%s\n" "$ac_file" >&6; }-ac_exeext=$ac_cv_exeext--rm -f -r a.out a.out.dSYM a.exe conftest$ac_cv_exeext b.out-ac_clean_files=$ac_clean_files_save-{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for suffix of executables" >&5-printf %s "checking for suffix of executables... " >&6; }-if { { ac_try="$ac_link"-case "(($ac_try" in-  *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;-  *) ac_try_echo=$ac_try;;-esac-eval ac_try_echo="\"\$as_me:${as_lineno-$LINENO}: $ac_try_echo\""-printf "%s\n" "$ac_try_echo"; } >&5-  (eval "$ac_link") 2>&5-  ac_status=$?-  printf "%s\n" "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5-  test $ac_status = 0; }-then :-  # If both 'conftest.exe' and 'conftest' are 'present' (well, observable)-# catch 'conftest.exe'.  For instance with Cygwin, 'ls conftest' will-# work properly (i.e., refer to 'conftest.exe'), while it won't with-# 'rm'.-for ac_file in conftest.exe conftest conftest.*; do-  test -f "$ac_file" || continue-  case $ac_file in-    *.$ac_ext | *.xcoff | *.tds | *.d | *.pdb | *.xSYM | *.bb | *.bbg | *.map | *.inf | *.dSYM | *.o | *.obj ) ;;-    *.* ) ac_cv_exeext=`expr "$ac_file" : '[^.]*\(\..*\)'`-	  break;;-    * ) break;;-  esac-done-else case e in #(-  e) { { printf "%s\n" "$as_me:${as_lineno-$LINENO}: error: in '$ac_pwd':" >&5-printf "%s\n" "$as_me: error: in '$ac_pwd':" >&2;}-as_fn_error $? "cannot compute suffix of executables: cannot compile and link-See 'config.log' for more details" "$LINENO" 5; } ;;-esac-fi-rm -f conftest conftest$ac_cv_exeext-{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_cv_exeext" >&5-printf "%s\n" "$ac_cv_exeext" >&6; }--rm -f conftest.$ac_ext-EXEEXT=$ac_cv_exeext-ac_exeext=$EXEEXT-cat confdefs.h - <<_ACEOF >conftest.$ac_ext-/* end confdefs.h.  */-#include <stdio.h>-int-main (void)-{-FILE *f = fopen ("conftest.out", "w");- if (!f)-  return 1;- return ferror (f) || fclose (f) != 0;--  ;-  return 0;-}-_ACEOF-ac_clean_files="$ac_clean_files conftest.out"-# Check that the compiler produces executables we can run.  If not, either-# the compiler is broken, or we cross compile.-{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking whether we are cross compiling" >&5-printf %s "checking whether we are cross compiling... " >&6; }-if test "$cross_compiling" != yes; then-  { { ac_try="$ac_link"-case "(($ac_try" in-  *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;-  *) ac_try_echo=$ac_try;;-esac-eval ac_try_echo="\"\$as_me:${as_lineno-$LINENO}: $ac_try_echo\""-printf "%s\n" "$ac_try_echo"; } >&5-  (eval "$ac_link") 2>&5-  ac_status=$?-  printf "%s\n" "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5-  test $ac_status = 0; }-  if { ac_try='./conftest$ac_cv_exeext'-  { { case "(($ac_try" in-  *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;-  *) ac_try_echo=$ac_try;;-esac-eval ac_try_echo="\"\$as_me:${as_lineno-$LINENO}: $ac_try_echo\""-printf "%s\n" "$ac_try_echo"; } >&5-  (eval "$ac_try") 2>&5-  ac_status=$?-  printf "%s\n" "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5-  test $ac_status = 0; }; }; then-    cross_compiling=no-  else-    if test "$cross_compiling" = maybe; then-	cross_compiling=yes-    else-	{ { printf "%s\n" "$as_me:${as_lineno-$LINENO}: error: in '$ac_pwd':" >&5-printf "%s\n" "$as_me: error: in '$ac_pwd':" >&2;}-as_fn_error 77 "cannot run C compiled programs.-If you meant to cross compile, use '--host'.-See 'config.log' for more details" "$LINENO" 5; }-    fi-  fi-fi-{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $cross_compiling" >&5-printf "%s\n" "$cross_compiling" >&6; }--rm -f conftest.$ac_ext conftest$ac_cv_exeext \-  conftest.o conftest.obj conftest.out-ac_clean_files=$ac_clean_files_save-{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for suffix of object files" >&5-printf %s "checking for suffix of object files... " >&6; }-if test ${ac_cv_objext+y}-then :-  printf %s "(cached) " >&6-else case e in #(-  e) cat confdefs.h - <<_ACEOF >conftest.$ac_ext-/* end confdefs.h.  */--int-main (void)-{--  ;-  return 0;-}-_ACEOF-rm -f conftest.o conftest.obj-if { { ac_try="$ac_compile"-case "(($ac_try" in-  *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;-  *) ac_try_echo=$ac_try;;-esac-eval ac_try_echo="\"\$as_me:${as_lineno-$LINENO}: $ac_try_echo\""-printf "%s\n" "$ac_try_echo"; } >&5-  (eval "$ac_compile") 2>&5-  ac_status=$?-  printf "%s\n" "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5-  test $ac_status = 0; }-then :-  for ac_file in conftest.o conftest.obj conftest.*; do-  test -f "$ac_file" || continue;-  case $ac_file in-    *.$ac_ext | *.xcoff | *.tds | *.d | *.pdb | *.xSYM | *.bb | *.bbg | *.map | *.inf | *.dSYM ) ;;-    *) ac_cv_objext=`expr "$ac_file" : '.*\.\(.*\)'`-       break;;-  esac-done-else case e in #(-  e) printf "%s\n" "$as_me: failed program was:" >&5-sed 's/^/| /' conftest.$ac_ext >&5--{ { printf "%s\n" "$as_me:${as_lineno-$LINENO}: error: in '$ac_pwd':" >&5-printf "%s\n" "$as_me: error: in '$ac_pwd':" >&2;}-as_fn_error $? "cannot compute suffix of object files: cannot compile-See 'config.log' for more details" "$LINENO" 5; } ;;-esac-fi-rm -f conftest.$ac_cv_objext conftest.$ac_ext ;;-esac-fi-{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_cv_objext" >&5-printf "%s\n" "$ac_cv_objext" >&6; }-OBJEXT=$ac_cv_objext-ac_objext=$OBJEXT-{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking whether the compiler supports GNU C" >&5-printf %s "checking whether the compiler supports GNU C... " >&6; }-if test ${ac_cv_c_compiler_gnu+y}-then :-  printf %s "(cached) " >&6-else case e in #(-  e) cat confdefs.h - <<_ACEOF >conftest.$ac_ext-/* end confdefs.h.  */--int-main (void)-{-#ifndef __GNUC__-       choke me-#endif--  ;-  return 0;-}-_ACEOF-if ac_fn_c_try_compile "$LINENO"-then :-  ac_compiler_gnu=yes-else case e in #(-  e) ac_compiler_gnu=no ;;-esac-fi-rm -f core conftest.err conftest.$ac_objext conftest.beam conftest.$ac_ext-ac_cv_c_compiler_gnu=$ac_compiler_gnu- ;;-esac-fi-{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_cv_c_compiler_gnu" >&5-printf "%s\n" "$ac_cv_c_compiler_gnu" >&6; }-ac_compiler_gnu=$ac_cv_c_compiler_gnu--if test $ac_compiler_gnu = yes; then-  GCC=yes-else-  GCC=-fi-ac_test_CFLAGS=${CFLAGS+y}-ac_save_CFLAGS=$CFLAGS-{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking whether $CC accepts -g" >&5-printf %s "checking whether $CC accepts -g... " >&6; }-if test ${ac_cv_prog_cc_g+y}-then :-  printf %s "(cached) " >&6-else case e in #(-  e) ac_save_c_werror_flag=$ac_c_werror_flag-   ac_c_werror_flag=yes-   ac_cv_prog_cc_g=no-   CFLAGS="-g"-   cat confdefs.h - <<_ACEOF >conftest.$ac_ext-/* end confdefs.h.  */--int-main (void)-{--  ;-  return 0;-}-_ACEOF-if ac_fn_c_try_compile "$LINENO"-then :-  ac_cv_prog_cc_g=yes-else case e in #(-  e) CFLAGS=""-      cat confdefs.h - <<_ACEOF >conftest.$ac_ext-/* end confdefs.h.  */--int-main (void)-{--  ;-  return 0;-}-_ACEOF-if ac_fn_c_try_compile "$LINENO"-then :--else case e in #(-  e) ac_c_werror_flag=$ac_save_c_werror_flag-	 CFLAGS="-g"-	 cat confdefs.h - <<_ACEOF >conftest.$ac_ext-/* end confdefs.h.  */--int-main (void)-{--  ;-  return 0;-}-_ACEOF-if ac_fn_c_try_compile "$LINENO"-then :-  ac_cv_prog_cc_g=yes-fi-rm -f core conftest.err conftest.$ac_objext conftest.beam conftest.$ac_ext ;;-esac-fi-rm -f core conftest.err conftest.$ac_objext conftest.beam conftest.$ac_ext ;;-esac-fi-rm -f core conftest.err conftest.$ac_objext conftest.beam conftest.$ac_ext-   ac_c_werror_flag=$ac_save_c_werror_flag ;;-esac-fi-{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_cv_prog_cc_g" >&5-printf "%s\n" "$ac_cv_prog_cc_g" >&6; }-if test $ac_test_CFLAGS; then-  CFLAGS=$ac_save_CFLAGS-elif test $ac_cv_prog_cc_g = yes; then-  if test "$GCC" = yes; then-    CFLAGS="-g -O2"-  else-    CFLAGS="-g"-  fi-else-  if test "$GCC" = yes; then-    CFLAGS="-O2"-  else-    CFLAGS=-  fi-fi-ac_prog_cc_stdc=no-if test x$ac_prog_cc_stdc = xno-then :-  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for $CC option to enable C11 features" >&5-printf %s "checking for $CC option to enable C11 features... " >&6; }-if test ${ac_cv_prog_cc_c11+y}-then :-  printf %s "(cached) " >&6-else case e in #(-  e) ac_cv_prog_cc_c11=no-ac_save_CC=$CC-cat confdefs.h - <<_ACEOF >conftest.$ac_ext-/* end confdefs.h.  */-$ac_c_conftest_c11_program-_ACEOF-for ac_arg in '' -std=gnu11-do-  CC="$ac_save_CC $ac_arg"-  if ac_fn_c_try_compile "$LINENO"-then :-  ac_cv_prog_cc_c11=$ac_arg-fi-rm -f core conftest.err conftest.$ac_objext conftest.beam-  test "x$ac_cv_prog_cc_c11" != "xno" && break-done-rm -f conftest.$ac_ext-CC=$ac_save_CC ;;-esac-fi--if test "x$ac_cv_prog_cc_c11" = xno-then :-  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: unsupported" >&5-printf "%s\n" "unsupported" >&6; }-else case e in #(-  e) if test "x$ac_cv_prog_cc_c11" = x-then :-  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: none needed" >&5-printf "%s\n" "none needed" >&6; }-else case e in #(-  e) { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_cv_prog_cc_c11" >&5-printf "%s\n" "$ac_cv_prog_cc_c11" >&6; }-     CC="$CC $ac_cv_prog_cc_c11" ;;-esac-fi-  ac_cv_prog_cc_stdc=$ac_cv_prog_cc_c11-  ac_prog_cc_stdc=c11 ;;-esac-fi-fi-if test x$ac_prog_cc_stdc = xno-then :-  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for $CC option to enable C99 features" >&5-printf %s "checking for $CC option to enable C99 features... " >&6; }-if test ${ac_cv_prog_cc_c99+y}-then :-  printf %s "(cached) " >&6-else case e in #(-  e) ac_cv_prog_cc_c99=no-ac_save_CC=$CC-cat confdefs.h - <<_ACEOF >conftest.$ac_ext-/* end confdefs.h.  */-$ac_c_conftest_c99_program-_ACEOF-for ac_arg in '' -std=gnu99 -std=c99 -c99 -qlanglvl=extc1x -qlanglvl=extc99 -AC99 -D_STDC_C99=-do-  CC="$ac_save_CC $ac_arg"-  if ac_fn_c_try_compile "$LINENO"-then :-  ac_cv_prog_cc_c99=$ac_arg-fi-rm -f core conftest.err conftest.$ac_objext conftest.beam-  test "x$ac_cv_prog_cc_c99" != "xno" && break-done-rm -f conftest.$ac_ext-CC=$ac_save_CC ;;-esac-fi--if test "x$ac_cv_prog_cc_c99" = xno-then :-  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: unsupported" >&5-printf "%s\n" "unsupported" >&6; }-else case e in #(-  e) if test "x$ac_cv_prog_cc_c99" = x-then :-  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: none needed" >&5-printf "%s\n" "none needed" >&6; }-else case e in #(-  e) { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_cv_prog_cc_c99" >&5-printf "%s\n" "$ac_cv_prog_cc_c99" >&6; }-     CC="$CC $ac_cv_prog_cc_c99" ;;-esac-fi-  ac_cv_prog_cc_stdc=$ac_cv_prog_cc_c99-  ac_prog_cc_stdc=c99 ;;-esac-fi-fi-if test x$ac_prog_cc_stdc = xno-then :-  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for $CC option to enable C89 features" >&5-printf %s "checking for $CC option to enable C89 features... " >&6; }-if test ${ac_cv_prog_cc_c89+y}-then :-  printf %s "(cached) " >&6-else case e in #(-  e) ac_cv_prog_cc_c89=no-ac_save_CC=$CC-cat confdefs.h - <<_ACEOF >conftest.$ac_ext-/* end confdefs.h.  */-$ac_c_conftest_c89_program-_ACEOF-for ac_arg in '' -qlanglvl=extc89 -qlanglvl=ansi -std -Ae "-Aa -D_HPUX_SOURCE" "-Xc -D__EXTENSIONS__"-do-  CC="$ac_save_CC $ac_arg"-  if ac_fn_c_try_compile "$LINENO"-then :-  ac_cv_prog_cc_c89=$ac_arg-fi-rm -f core conftest.err conftest.$ac_objext conftest.beam-  test "x$ac_cv_prog_cc_c89" != "xno" && break-done-rm -f conftest.$ac_ext-CC=$ac_save_CC ;;-esac-fi--if test "x$ac_cv_prog_cc_c89" = xno-then :-  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: unsupported" >&5-printf "%s\n" "unsupported" >&6; }-else case e in #(-  e) if test "x$ac_cv_prog_cc_c89" = x-then :-  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: none needed" >&5-printf "%s\n" "none needed" >&6; }-else case e in #(-  e) { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_cv_prog_cc_c89" >&5-printf "%s\n" "$ac_cv_prog_cc_c89" >&6; }-     CC="$CC $ac_cv_prog_cc_c89" ;;-esac-fi-  ac_cv_prog_cc_stdc=$ac_cv_prog_cc_c89-  ac_prog_cc_stdc=c89 ;;-esac-fi-fi--ac_ext=c-ac_cpp='$CPP $CPPFLAGS'-ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5'-ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5'-ac_compiler_gnu=$ac_cv_c_compiler_gnu---  ac_ext=c-ac_cpp='$CPP $CPPFLAGS'-ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5'-ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5'-ac_compiler_gnu=$ac_cv_c_compiler_gnu-{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking whether $CC understands -c and -o together" >&5-printf %s "checking whether $CC understands -c and -o together... " >&6; }-if test ${am_cv_prog_cc_c_o+y}-then :-  printf %s "(cached) " >&6-else case e in #(-  e) cat confdefs.h - <<_ACEOF >conftest.$ac_ext-/* end confdefs.h.  */--int-main (void)-{--  ;-  return 0;-}-_ACEOF-  # Make sure it works both with $CC and with simple cc.-  # Following AC_PROG_CC_C_O, we do the test twice because some-  # compilers refuse to overwrite an existing .o file with -o,-  # though they will create one.-  am_cv_prog_cc_c_o=yes-  for am_i in 1 2; do-    if { echo "$as_me:$LINENO: $CC -c conftest.$ac_ext -o conftest2.$ac_objext" >&5-   ($CC -c conftest.$ac_ext -o conftest2.$ac_objext) >&5 2>&5-   ac_status=$?-   echo "$as_me:$LINENO: \$? = $ac_status" >&5-   (exit $ac_status); } \-         && test -f conftest2.$ac_objext; then-      : OK-    else-      am_cv_prog_cc_c_o=no-      break-    fi-  done-  # aligned with autoconf, so not including core; see bug#72225.-  rm -f -r a.out a.exe b.out conftest.$ac_ext conftest.$ac_objext \-    conftest.dSYM conftest1.$ac_ext conftest1.$ac_objext conftest1.dSYM \-    conftest2.$ac_ext conftest2.$ac_objext conftest2.dSYM-  unset am_i ;;-esac-fi-{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $am_cv_prog_cc_c_o" >&5-printf "%s\n" "$am_cv_prog_cc_c_o" >&6; }-if test "$am_cv_prog_cc_c_o" != yes; then-   # Losing compiler, so override with the script.-   # FIXME: It is wrong to rewrite CC.-   # But if we don't then we get into trouble of one sort or another.-   # A longer-term fix would be to have automake use am__CC in this case,-   # and then we could set am__CC="\$(top_srcdir)/compile \$(CC)"-   CC="$am_aux_dir/compile $CC"-fi-ac_ext=c-ac_cpp='$CPP $CPPFLAGS'-ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5'-ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5'-ac_compiler_gnu=$ac_cv_c_compiler_gnu---------ac_ext=cpp-ac_cpp='$CXXCPP $CPPFLAGS'-ac_compile='$CXX -c $CXXFLAGS $CPPFLAGS conftest.$ac_ext >&5'-ac_link='$CXX -o conftest$ac_exeext $CXXFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5'-ac_compiler_gnu=$ac_cv_cxx_compiler_gnu-if test -z "$CXX"; then-  if test -n "$CCC"; then-    CXX=$CCC-  else-    if test -n "$ac_tool_prefix"; then-  for ac_prog in g++ c++ gpp aCC CC cxx cc++ cl.exe FCC KCC RCC xlC_r xlC clang++-  do-    # Extract the first word of "$ac_tool_prefix$ac_prog", so it can be a program name with args.-set dummy $ac_tool_prefix$ac_prog; ac_word=$2-{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5-printf %s "checking for $ac_word... " >&6; }-if test ${ac_cv_prog_CXX+y}-then :-  printf %s "(cached) " >&6-else case e in #(-  e) if test -n "$CXX"; then-  ac_cv_prog_CXX="$CXX" # Let the user override the test.-else-as_save_IFS=$IFS; IFS=$PATH_SEPARATOR-for as_dir in $PATH-do-  IFS=$as_save_IFS-  case $as_dir in #(((-    '') as_dir=./ ;;-    */) ;;-    *) as_dir=$as_dir/ ;;-  esac-    for ac_exec_ext in '' $ac_executable_extensions; do-  if as_fn_executable_p "$as_dir$ac_word$ac_exec_ext"; then-    ac_cv_prog_CXX="$ac_tool_prefix$ac_prog"-    printf "%s\n" "$as_me:${as_lineno-$LINENO}: found $as_dir$ac_word$ac_exec_ext" >&5-    break 2-  fi-done-  done-IFS=$as_save_IFS--fi ;;-esac-fi-CXX=$ac_cv_prog_CXX-if test -n "$CXX"; then-  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $CXX" >&5-printf "%s\n" "$CXX" >&6; }-else-  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5-printf "%s\n" "no" >&6; }-fi---    test -n "$CXX" && break-  done-fi-if test -z "$CXX"; then-  ac_ct_CXX=$CXX-  for ac_prog in g++ c++ gpp aCC CC cxx cc++ cl.exe FCC KCC RCC xlC_r xlC clang++-do-  # Extract the first word of "$ac_prog", so it can be a program name with args.-set dummy $ac_prog; ac_word=$2-{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5-printf %s "checking for $ac_word... " >&6; }-if test ${ac_cv_prog_ac_ct_CXX+y}-then :-  printf %s "(cached) " >&6-else case e in #(-  e) if test -n "$ac_ct_CXX"; then-  ac_cv_prog_ac_ct_CXX="$ac_ct_CXX" # Let the user override the test.-else-as_save_IFS=$IFS; IFS=$PATH_SEPARATOR-for as_dir in $PATH-do-  IFS=$as_save_IFS-  case $as_dir in #(((-    '') as_dir=./ ;;-    */) ;;-    *) as_dir=$as_dir/ ;;-  esac-    for ac_exec_ext in '' $ac_executable_extensions; do-  if as_fn_executable_p "$as_dir$ac_word$ac_exec_ext"; then-    ac_cv_prog_ac_ct_CXX="$ac_prog"-    printf "%s\n" "$as_me:${as_lineno-$LINENO}: found $as_dir$ac_word$ac_exec_ext" >&5-    break 2-  fi-done-  done-IFS=$as_save_IFS--fi ;;-esac-fi-ac_ct_CXX=$ac_cv_prog_ac_ct_CXX-if test -n "$ac_ct_CXX"; then-  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_ct_CXX" >&5-printf "%s\n" "$ac_ct_CXX" >&6; }-else-  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5-printf "%s\n" "no" >&6; }-fi---  test -n "$ac_ct_CXX" && break-done--  if test "x$ac_ct_CXX" = x; then-    CXX="g++"-  else-    case $cross_compiling:$ac_tool_warned in-yes:)-{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: WARNING: using cross tools not prefixed with host triplet" >&5-printf "%s\n" "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;}-ac_tool_warned=yes ;;-esac-    CXX=$ac_ct_CXX-  fi-fi--  fi-fi-# Provide some information about the compiler.-printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for C++ compiler version" >&5-set X $ac_compile-ac_compiler=$2-for ac_option in --version -v -V -qversion; do-  { { ac_try="$ac_compiler $ac_option >&5"-case "(($ac_try" in-  *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;-  *) ac_try_echo=$ac_try;;-esac-eval ac_try_echo="\"\$as_me:${as_lineno-$LINENO}: $ac_try_echo\""-printf "%s\n" "$ac_try_echo"; } >&5-  (eval "$ac_compiler $ac_option >&5") 2>conftest.err-  ac_status=$?-  if test -s conftest.err; then-    sed '10a\-... rest of stderr output deleted ...-         10q' conftest.err >conftest.er1-    cat conftest.er1 >&5-  fi-  rm -f conftest.er1 conftest.err-  printf "%s\n" "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5-  test $ac_status = 0; }-done--{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking whether the compiler supports GNU C++" >&5-printf %s "checking whether the compiler supports GNU C++... " >&6; }-if test ${ac_cv_cxx_compiler_gnu+y}-then :-  printf %s "(cached) " >&6-else case e in #(-  e) cat confdefs.h - <<_ACEOF >conftest.$ac_ext-/* end confdefs.h.  */--int-main (void)-{-#ifndef __GNUC__-       choke me-#endif--  ;-  return 0;-}-_ACEOF-if ac_fn_cxx_try_compile "$LINENO"-then :-  ac_compiler_gnu=yes-else case e in #(-  e) ac_compiler_gnu=no ;;-esac-fi-rm -f core conftest.err conftest.$ac_objext conftest.beam conftest.$ac_ext-ac_cv_cxx_compiler_gnu=$ac_compiler_gnu- ;;-esac-fi-{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_cv_cxx_compiler_gnu" >&5-printf "%s\n" "$ac_cv_cxx_compiler_gnu" >&6; }-ac_compiler_gnu=$ac_cv_cxx_compiler_gnu--if test $ac_compiler_gnu = yes; then-  GXX=yes-else-  GXX=-fi-ac_test_CXXFLAGS=${CXXFLAGS+y}-ac_save_CXXFLAGS=$CXXFLAGS-{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking whether $CXX accepts -g" >&5-printf %s "checking whether $CXX accepts -g... " >&6; }-if test ${ac_cv_prog_cxx_g+y}-then :-  printf %s "(cached) " >&6-else case e in #(-  e) ac_save_cxx_werror_flag=$ac_cxx_werror_flag-   ac_cxx_werror_flag=yes-   ac_cv_prog_cxx_g=no-   CXXFLAGS="-g"-   cat confdefs.h - <<_ACEOF >conftest.$ac_ext-/* end confdefs.h.  */--int-main (void)-{--  ;-  return 0;-}-_ACEOF-if ac_fn_cxx_try_compile "$LINENO"-then :-  ac_cv_prog_cxx_g=yes-else case e in #(-  e) CXXFLAGS=""-      cat confdefs.h - <<_ACEOF >conftest.$ac_ext-/* end confdefs.h.  */--int-main (void)-{--  ;-  return 0;-}-_ACEOF-if ac_fn_cxx_try_compile "$LINENO"-then :--else case e in #(-  e) ac_cxx_werror_flag=$ac_save_cxx_werror_flag-	 CXXFLAGS="-g"-	 cat confdefs.h - <<_ACEOF >conftest.$ac_ext-/* end confdefs.h.  */--int-main (void)-{--  ;-  return 0;-}-_ACEOF-if ac_fn_cxx_try_compile "$LINENO"-then :-  ac_cv_prog_cxx_g=yes-fi-rm -f core conftest.err conftest.$ac_objext conftest.beam conftest.$ac_ext ;;-esac-fi-rm -f core conftest.err conftest.$ac_objext conftest.beam conftest.$ac_ext ;;-esac-fi-rm -f core conftest.err conftest.$ac_objext conftest.beam conftest.$ac_ext-   ac_cxx_werror_flag=$ac_save_cxx_werror_flag ;;-esac-fi-{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_cv_prog_cxx_g" >&5-printf "%s\n" "$ac_cv_prog_cxx_g" >&6; }-if test $ac_test_CXXFLAGS; then-  CXXFLAGS=$ac_save_CXXFLAGS-elif test $ac_cv_prog_cxx_g = yes; then-  if test "$GXX" = yes; then-    CXXFLAGS="-g -O2"-  else-    CXXFLAGS="-g"-  fi-else-  if test "$GXX" = yes; then-    CXXFLAGS="-O2"-  else-    CXXFLAGS=-  fi-fi-ac_prog_cxx_stdcxx=no-if test x$ac_prog_cxx_stdcxx = xno-then :-  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for $CXX option to enable C++11 features" >&5-printf %s "checking for $CXX option to enable C++11 features... " >&6; }-if test ${ac_cv_prog_cxx_cxx11+y}-then :-  printf %s "(cached) " >&6-else case e in #(-  e) ac_cv_prog_cxx_cxx11=no-ac_save_CXX=$CXX-cat confdefs.h - <<_ACEOF >conftest.$ac_ext-/* end confdefs.h.  */-$ac_cxx_conftest_cxx11_program-_ACEOF-for ac_arg in '' -std=gnu++11 -std=gnu++0x -std=c++11 -std=c++0x -qlanglvl=extended0x -AA-do-  CXX="$ac_save_CXX $ac_arg"-  if ac_fn_cxx_try_compile "$LINENO"-then :-  ac_cv_prog_cxx_cxx11=$ac_arg-fi-rm -f core conftest.err conftest.$ac_objext conftest.beam-  test "x$ac_cv_prog_cxx_cxx11" != "xno" && break-done-rm -f conftest.$ac_ext-CXX=$ac_save_CXX ;;-esac-fi--if test "x$ac_cv_prog_cxx_cxx11" = xno-then :-  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: unsupported" >&5-printf "%s\n" "unsupported" >&6; }-else case e in #(-  e) if test "x$ac_cv_prog_cxx_cxx11" = x-then :-  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: none needed" >&5-printf "%s\n" "none needed" >&6; }-else case e in #(-  e) { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_cv_prog_cxx_cxx11" >&5-printf "%s\n" "$ac_cv_prog_cxx_cxx11" >&6; }-     CXX="$CXX $ac_cv_prog_cxx_cxx11" ;;-esac-fi-  ac_cv_prog_cxx_stdcxx=$ac_cv_prog_cxx_cxx11-  ac_prog_cxx_stdcxx=cxx11 ;;-esac-fi-fi-if test x$ac_prog_cxx_stdcxx = xno-then :-  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for $CXX option to enable C++98 features" >&5-printf %s "checking for $CXX option to enable C++98 features... " >&6; }-if test ${ac_cv_prog_cxx_cxx98+y}-then :-  printf %s "(cached) " >&6-else case e in #(-  e) ac_cv_prog_cxx_cxx98=no-ac_save_CXX=$CXX-cat confdefs.h - <<_ACEOF >conftest.$ac_ext-/* end confdefs.h.  */-$ac_cxx_conftest_cxx98_program-_ACEOF-for ac_arg in '' -std=gnu++98 -std=c++98 -qlanglvl=extended -AA-do-  CXX="$ac_save_CXX $ac_arg"-  if ac_fn_cxx_try_compile "$LINENO"-then :-  ac_cv_prog_cxx_cxx98=$ac_arg-fi-rm -f core conftest.err conftest.$ac_objext conftest.beam-  test "x$ac_cv_prog_cxx_cxx98" != "xno" && break-done-rm -f conftest.$ac_ext-CXX=$ac_save_CXX ;;-esac-fi--if test "x$ac_cv_prog_cxx_cxx98" = xno-then :-  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: unsupported" >&5-printf "%s\n" "unsupported" >&6; }-else case e in #(-  e) if test "x$ac_cv_prog_cxx_cxx98" = x-then :-  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: none needed" >&5-printf "%s\n" "none needed" >&6; }-else case e in #(-  e) { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_cv_prog_cxx_cxx98" >&5-printf "%s\n" "$ac_cv_prog_cxx_cxx98" >&6; }-     CXX="$CXX $ac_cv_prog_cxx_cxx98" ;;-esac-fi-  ac_cv_prog_cxx_stdcxx=$ac_cv_prog_cxx_cxx98-  ac_prog_cxx_stdcxx=cxx98 ;;-esac-fi-fi--ac_ext=c-ac_cpp='$CPP $CPPFLAGS'-ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5'-ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5'-ac_compiler_gnu=$ac_cv_c_compiler_gnu--CFLAGS=$save_CFLAGS------rm -rf .tst 2>/dev/null-mkdir .tst 2>/dev/null-if test -d .tst; then-  am__leading_dot=.-else-  am__leading_dot=_-fi-rmdir .tst 2>/dev/null--DEPDIR="${am__leading_dot}deps"--ac_config_commands="$ac_config_commands depfiles"--{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking whether ${MAKE-make} supports the include directive" >&5-printf %s "checking whether ${MAKE-make} supports the include directive... " >&6; }-cat > confinc.mk << 'END'-am__doit:-	@echo this is the am__doit target >confinc.out-.PHONY: am__doit-END-am__include="#"-am__quote=-# BSD make does it like this.-echo '.include "confinc.mk" # ignored' > confmf.BSD-# Other make implementations (GNU, Solaris 10, AIX) do it like this.-echo 'include confinc.mk # ignored' > confmf.GNU-_am_result=no-for s in GNU BSD; do-  { echo "$as_me:$LINENO: ${MAKE-make} -f confmf.$s && cat confinc.out" >&5-   (${MAKE-make} -f confmf.$s && cat confinc.out) >&5 2>&5-   ac_status=$?-   echo "$as_me:$LINENO: \$? = $ac_status" >&5-   (exit $ac_status); }-  case $?:`cat confinc.out 2>/dev/null` in #(-  '0:this is the am__doit target') :-    case $s in #(-  BSD) :-    am__include='.include' am__quote='"' ;; #(-  *) :-    am__include='include' am__quote='' ;;-esac ;; #(-  *) :-     ;;-esac-  if test "$am__include" != "#"; then-    _am_result="yes ($s style)"-    break-  fi-done-rm -f confinc.* confmf.*-{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: ${_am_result}" >&5-printf "%s\n" "${_am_result}" >&6; }--# Check whether --enable-dependency-tracking was given.-if test ${enable_dependency_tracking+y}-then :-  enableval=$enable_dependency_tracking;-fi--if test "x$enable_dependency_tracking" != xno; then-  am_depcomp="$ac_aux_dir/depcomp"-  AMDEPBACKSLASH='\'-  am__nodep='_no'-fi- if test "x$enable_dependency_tracking" != xno; then-  AMDEP_TRUE=-  AMDEP_FALSE='#'-else-  AMDEP_TRUE='#'-  AMDEP_FALSE=-fi---# By default we simply use the C compiler to build assembly code.--test "${CCAS+set}" = set || CCAS=$CC-test "${CCASFLAGS+set}" = set || CCASFLAGS=$CFLAGS----depcc="$CCAS"   am_compiler_list=--{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking dependency style of $depcc" >&5-printf %s "checking dependency style of $depcc... " >&6; }-if test ${am_cv_CCAS_dependencies_compiler_type+y}-then :-  printf %s "(cached) " >&6-else case e in #(-  e) if test -z "$AMDEP_TRUE" && test -f "$am_depcomp"; then-  # We make a subdir and do the tests there.  Otherwise we can end up-  # making bogus files that we don't know about and never remove.  For-  # instance it was reported that on HP-UX the gcc test will end up-  # making a dummy file named 'D' -- because '-MD' means "put the output-  # in D".-  rm -rf conftest.dir-  mkdir conftest.dir-  # Copy depcomp to subdir because otherwise we won't find it if we're-  # using a relative directory.-  cp "$am_depcomp" conftest.dir-  cd conftest.dir-  # We will build objects and dependencies in a subdirectory because-  # it helps to detect inapplicable dependency modes.  For instance-  # both Tru64's cc and ICC support -MD to output dependencies as a-  # side effect of compilation, but ICC will put the dependencies in-  # the current directory while Tru64 will put them in the object-  # directory.-  mkdir sub--  am_cv_CCAS_dependencies_compiler_type=none-  if test "$am_compiler_list" = ""; then-     am_compiler_list=`sed -n 's/^#*\([a-zA-Z0-9]*\))$/\1/p' < ./depcomp`-  fi-  am__universal=false---  for depmode in $am_compiler_list; do-    # Setup a source with many dependencies, because some compilers-    # like to wrap large dependency lists on column 80 (with \), and-    # we should not choose a depcomp mode which is confused by this.-    #-    # We need to recreate these files for each test, as the compiler may-    # overwrite some of them when testing with obscure command lines.-    # This happens at least with the AIX C compiler.-    : > sub/conftest.c-    for i in 1 2 3 4 5 6; do-      echo '#include "conftst'$i'.h"' >> sub/conftest.c-      # Using ": > sub/conftst$i.h" creates only sub/conftst1.h with-      # Solaris 10 /bin/sh.-      echo '/* dummy */' > sub/conftst$i.h-    done-    echo "${am__include} ${am__quote}sub/conftest.Po${am__quote}" > confmf--    # We check with '-c' and '-o' for the sake of the "dashmstdout"-    # mode.  It turns out that the SunPro C++ compiler does not properly-    # handle '-M -o', and we need to detect this.  Also, some Intel-    # versions had trouble with output in subdirs.-    am__obj=sub/conftest.${OBJEXT-o}-    am__minus_obj="-o $am__obj"-    case $depmode in-    gcc)-      # This depmode causes a compiler race in universal mode.-      test "$am__universal" = false || continue-      ;;-    nosideeffect)-      # After this tag, mechanisms are not by side-effect, so they'll-      # only be used when explicitly requested.-      if test "x$enable_dependency_tracking" = xyes; then-	continue-      else-	break-      fi-      ;;-    msvc7 | msvc7msys | msvisualcpp | msvcmsys)-      # This compiler won't grok '-c -o', but also, the minuso test has-      # not run yet.  These depmodes are late enough in the game, and-      # so weak that their functioning should not be impacted.-      am__obj=conftest.${OBJEXT-o}-      am__minus_obj=-      ;;-    none) break ;;-    esac-    if depmode=$depmode \-       source=sub/conftest.c object=$am__obj \-       depfile=sub/conftest.Po tmpdepfile=sub/conftest.TPo \-       $SHELL ./depcomp $depcc -c $am__minus_obj sub/conftest.c \-         >/dev/null 2>conftest.err &&-       grep sub/conftst1.h sub/conftest.Po > /dev/null 2>&1 &&-       grep sub/conftst6.h sub/conftest.Po > /dev/null 2>&1 &&-       grep $am__obj sub/conftest.Po > /dev/null 2>&1 &&-       ${MAKE-make} -s -f confmf > /dev/null 2>&1; then-      # icc doesn't choke on unknown options, it will just issue warnings-      # or remarks (even with -Werror).  So we grep stderr for any message-      # that says an option was ignored or not supported.-      # When given -MP, icc 7.0 and 7.1 complain thus:-      #   icc: Command line warning: ignoring option '-M'; no argument required-      # The diagnosis changed in icc 8.0:-      #   icc: Command line remark: option '-MP' not supported-      if (grep 'ignoring option' conftest.err ||-          grep 'not supported' conftest.err) >/dev/null 2>&1; then :; else-        am_cv_CCAS_dependencies_compiler_type=$depmode-        break-      fi-    fi-  done--  cd ..-  rm -rf conftest.dir-else-  am_cv_CCAS_dependencies_compiler_type=none-fi- ;;-esac-fi-{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $am_cv_CCAS_dependencies_compiler_type" >&5-printf "%s\n" "$am_cv_CCAS_dependencies_compiler_type" >&6; }-CCASDEPMODE=depmode=$am_cv_CCAS_dependencies_compiler_type-- if-  test "x$enable_dependency_tracking" != xno \-  && test "$am_cv_CCAS_dependencies_compiler_type" = gcc3; then-  am__fastdepCCAS_TRUE=-  am__fastdepCCAS_FALSE='#'-else-  am__fastdepCCAS_TRUE='#'-  am__fastdepCCAS_FALSE=-fi----{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for grep that handles long lines and -e" >&5-printf %s "checking for grep that handles long lines and -e... " >&6; }-if test ${ac_cv_path_GREP+y}-then :-  printf %s "(cached) " >&6-else case e in #(-  e) if test -z "$GREP"; then-  ac_path_GREP_found=false-  # Loop through the user's path and test for each of PROGNAME-LIST-  as_save_IFS=$IFS; IFS=$PATH_SEPARATOR-for as_dir in $PATH$PATH_SEPARATOR/usr/xpg4/bin-do-  IFS=$as_save_IFS-  case $as_dir in #(((-    '') as_dir=./ ;;-    */) ;;-    *) as_dir=$as_dir/ ;;-  esac-    for ac_prog in grep ggrep-   do-    for ac_exec_ext in '' $ac_executable_extensions; do-      ac_path_GREP="$as_dir$ac_prog$ac_exec_ext"-      as_fn_executable_p "$ac_path_GREP" || continue-# Check for GNU ac_path_GREP and select it if it is found.-  # Check for GNU $ac_path_GREP-case `"$ac_path_GREP" --version 2>&1` in #(-*GNU*)-  ac_cv_path_GREP="$ac_path_GREP" ac_path_GREP_found=:;;-#(-*)-  ac_count=0-  printf %s 0123456789 >"conftest.in"-  while :-  do-    cat "conftest.in" "conftest.in" >"conftest.tmp"-    mv "conftest.tmp" "conftest.in"-    cp "conftest.in" "conftest.nl"-    printf "%s\n" 'GREP' >> "conftest.nl"-    "$ac_path_GREP" -e 'GREP$' -e '-(cannot match)-' < "conftest.nl" >"conftest.out" 2>/dev/null || break-    diff "conftest.out" "conftest.nl" >/dev/null 2>&1 || break-    as_fn_arith $ac_count + 1 && ac_count=$as_val-    if test $ac_count -gt ${ac_path_GREP_max-0}; then-      # Best one so far, save it but keep looking for a better one-      ac_cv_path_GREP="$ac_path_GREP"-      ac_path_GREP_max=$ac_count-    fi-    # 10*(2^10) chars as input seems more than enough-    test $ac_count -gt 10 && break-  done-  rm -f conftest.in conftest.tmp conftest.nl conftest.out;;-esac--      $ac_path_GREP_found && break 3-    done-  done-  done-IFS=$as_save_IFS-  if test -z "$ac_cv_path_GREP"; then-    as_fn_error $? "no acceptable grep could be found in $PATH$PATH_SEPARATOR/usr/xpg4/bin" "$LINENO" 5-  fi-else-  ac_cv_path_GREP=$GREP-fi- ;;-esac-fi-{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_cv_path_GREP" >&5-printf "%s\n" "$ac_cv_path_GREP" >&6; }- GREP="$ac_cv_path_GREP"---{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for egrep" >&5-printf %s "checking for egrep... " >&6; }-if test ${ac_cv_path_EGREP+y}-then :-  printf %s "(cached) " >&6-else case e in #(-  e) if echo a | $GREP -E '(a|b)' >/dev/null 2>&1-   then ac_cv_path_EGREP="$GREP -E"-   else-     if test -z "$EGREP"; then-  ac_path_EGREP_found=false-  # Loop through the user's path and test for each of PROGNAME-LIST-  as_save_IFS=$IFS; IFS=$PATH_SEPARATOR-for as_dir in $PATH$PATH_SEPARATOR/usr/xpg4/bin-do-  IFS=$as_save_IFS-  case $as_dir in #(((-    '') as_dir=./ ;;-    */) ;;-    *) as_dir=$as_dir/ ;;-  esac-    for ac_prog in egrep-   do-    for ac_exec_ext in '' $ac_executable_extensions; do-      ac_path_EGREP="$as_dir$ac_prog$ac_exec_ext"-      as_fn_executable_p "$ac_path_EGREP" || continue-# Check for GNU ac_path_EGREP and select it if it is found.-  # Check for GNU $ac_path_EGREP-case `"$ac_path_EGREP" --version 2>&1` in #(-*GNU*)-  ac_cv_path_EGREP="$ac_path_EGREP" ac_path_EGREP_found=:;;-#(-*)-  ac_count=0-  printf %s 0123456789 >"conftest.in"-  while :-  do-    cat "conftest.in" "conftest.in" >"conftest.tmp"-    mv "conftest.tmp" "conftest.in"-    cp "conftest.in" "conftest.nl"-    printf "%s\n" 'EGREP' >> "conftest.nl"-    "$ac_path_EGREP" 'EGREP$' < "conftest.nl" >"conftest.out" 2>/dev/null || break-    diff "conftest.out" "conftest.nl" >/dev/null 2>&1 || break-    as_fn_arith $ac_count + 1 && ac_count=$as_val-    if test $ac_count -gt ${ac_path_EGREP_max-0}; then-      # Best one so far, save it but keep looking for a better one-      ac_cv_path_EGREP="$ac_path_EGREP"-      ac_path_EGREP_max=$ac_count-    fi-    # 10*(2^10) chars as input seems more than enough-    test $ac_count -gt 10 && break-  done-  rm -f conftest.in conftest.tmp conftest.nl conftest.out;;-esac--      $ac_path_EGREP_found && break 3-    done-  done-  done-IFS=$as_save_IFS-  if test -z "$ac_cv_path_EGREP"; then-    as_fn_error $? "no acceptable egrep could be found in $PATH$PATH_SEPARATOR/usr/xpg4/bin" "$LINENO" 5-  fi-else-  ac_cv_path_EGREP=$EGREP-fi--   fi ;;-esac-fi-{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_cv_path_EGREP" >&5-printf "%s\n" "$ac_cv_path_EGREP" >&6; }- EGREP="$ac_cv_path_EGREP"--         EGREP_TRADITIONAL=$EGREP- ac_cv_path_EGREP_TRADITIONAL=$EGREP--case `pwd` in-  *\ * | *\	*)-    { printf "%s\n" "$as_me:${as_lineno-$LINENO}: WARNING: Libtool does not cope well with whitespace in \`pwd\`" >&5-printf "%s\n" "$as_me: WARNING: Libtool does not cope well with whitespace in \`pwd\`" >&2;} ;;-esac----macro_version='2.5.4'-macro_revision='2.5.4'---------------ltmain=$ac_aux_dir/ltmain.sh--# Backslashify metacharacters that are still active within-# double-quoted strings.-sed_quote_subst='s/\(["`$\\]\)/\\\1/g'--# Same as above, but do not quote variable references.-double_quote_subst='s/\(["`\\]\)/\\\1/g'--# Sed substitution to delay expansion of an escaped shell variable in a-# double_quote_subst'ed string.-delay_variable_subst='s/\\\\\\\\\\\$/\\\\\\$/g'--# Sed substitution to delay expansion of an escaped single quote.-delay_single_quote_subst='s/'\''/'\'\\\\\\\'\''/g'--# Sed substitution to avoid accidental globbing in evaled expressions-no_glob_subst='s/\*/\\\*/g'--ECHO='\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\'-ECHO=$ECHO$ECHO$ECHO$ECHO$ECHO-ECHO=$ECHO$ECHO$ECHO$ECHO$ECHO$ECHO--{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking how to print strings" >&5-printf %s "checking how to print strings... " >&6; }-# Test print first, because it will be a builtin if present.-if test "X`( print -r -- -n ) 2>/dev/null`" = X-n && \-   test "X`print -r -- $ECHO 2>/dev/null`" = "X$ECHO"; then-  ECHO='print -r --'-elif test "X`printf %s $ECHO 2>/dev/null`" = "X$ECHO"; then-  ECHO='printf %s\n'-else-  # Use this function as a fallback that always works.-  func_fallback_echo ()-  {-    eval 'cat <<_LTECHO_EOF-$1-_LTECHO_EOF'-  }-  ECHO='func_fallback_echo'-fi--# func_echo_all arg...-# Invoke $ECHO with all args, space-separated.-func_echo_all ()-{-    $ECHO ""-}--case $ECHO in-  printf*) { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: printf" >&5-printf "%s\n" "printf" >&6; } ;;-  print*) { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: print -r" >&5-printf "%s\n" "print -r" >&6; } ;;-  *) { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: cat" >&5-printf "%s\n" "cat" >&6; } ;;-esac---------------{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for a sed that does not truncate output" >&5-printf %s "checking for a sed that does not truncate output... " >&6; }-if test ${ac_cv_path_SED+y}-then :-  printf %s "(cached) " >&6-else case e in #(-  e)           ac_script=s/aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa/bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb/-     for ac_i in 1 2 3 4 5 6 7; do-       ac_script="$ac_script$as_nl$ac_script"-     done-     echo "$ac_script" 2>/dev/null | sed 99q >conftest.sed-     { ac_script=; unset ac_script;}-     if test -z "$SED"; then-  ac_path_SED_found=false-  # Loop through the user's path and test for each of PROGNAME-LIST-  as_save_IFS=$IFS; IFS=$PATH_SEPARATOR-for as_dir in $PATH-do-  IFS=$as_save_IFS-  case $as_dir in #(((-    '') as_dir=./ ;;-    */) ;;-    *) as_dir=$as_dir/ ;;-  esac-    for ac_prog in sed gsed-   do-    for ac_exec_ext in '' $ac_executable_extensions; do-      ac_path_SED="$as_dir$ac_prog$ac_exec_ext"-      as_fn_executable_p "$ac_path_SED" || continue-# Check for GNU ac_path_SED and select it if it is found.-  # Check for GNU $ac_path_SED-case `"$ac_path_SED" --version 2>&1` in #(-*GNU*)-  ac_cv_path_SED="$ac_path_SED" ac_path_SED_found=:;;-#(-*)-  ac_count=0-  printf %s 0123456789 >"conftest.in"-  while :-  do-    cat "conftest.in" "conftest.in" >"conftest.tmp"-    mv "conftest.tmp" "conftest.in"-    cp "conftest.in" "conftest.nl"-    printf "%s\n" '' >> "conftest.nl"-    "$ac_path_SED" -f conftest.sed < "conftest.nl" >"conftest.out" 2>/dev/null || break-    diff "conftest.out" "conftest.nl" >/dev/null 2>&1 || break-    as_fn_arith $ac_count + 1 && ac_count=$as_val-    if test $ac_count -gt ${ac_path_SED_max-0}; then-      # Best one so far, save it but keep looking for a better one-      ac_cv_path_SED="$ac_path_SED"-      ac_path_SED_max=$ac_count-    fi-    # 10*(2^10) chars as input seems more than enough-    test $ac_count -gt 10 && break-  done-  rm -f conftest.in conftest.tmp conftest.nl conftest.out;;-esac--      $ac_path_SED_found && break 3-    done-  done-  done-IFS=$as_save_IFS-  if test -z "$ac_cv_path_SED"; then-    as_fn_error $? "no acceptable sed could be found in \$PATH" "$LINENO" 5-  fi-else-  ac_cv_path_SED=$SED-fi- ;;-esac-fi-{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_cv_path_SED" >&5-printf "%s\n" "$ac_cv_path_SED" >&6; }- SED="$ac_cv_path_SED"-  rm -f conftest.sed--test -z "$SED" && SED=sed-Xsed="$SED -e 1s/^X//"------------{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for fgrep" >&5-printf %s "checking for fgrep... " >&6; }-if test ${ac_cv_path_FGREP+y}-then :-  printf %s "(cached) " >&6-else case e in #(-  e) if echo 'ab*c' | $GREP -F 'ab*c' >/dev/null 2>&1-   then ac_cv_path_FGREP="$GREP -F"-   else-     if test -z "$FGREP"; then-  ac_path_FGREP_found=false-  # Loop through the user's path and test for each of PROGNAME-LIST-  as_save_IFS=$IFS; IFS=$PATH_SEPARATOR-for as_dir in $PATH$PATH_SEPARATOR/usr/xpg4/bin-do-  IFS=$as_save_IFS-  case $as_dir in #(((-    '') as_dir=./ ;;-    */) ;;-    *) as_dir=$as_dir/ ;;-  esac-    for ac_prog in fgrep-   do-    for ac_exec_ext in '' $ac_executable_extensions; do-      ac_path_FGREP="$as_dir$ac_prog$ac_exec_ext"-      as_fn_executable_p "$ac_path_FGREP" || continue-# Check for GNU ac_path_FGREP and select it if it is found.-  # Check for GNU $ac_path_FGREP-case `"$ac_path_FGREP" --version 2>&1` in #(-*GNU*)-  ac_cv_path_FGREP="$ac_path_FGREP" ac_path_FGREP_found=:;;-#(-*)-  ac_count=0-  printf %s 0123456789 >"conftest.in"-  while :-  do-    cat "conftest.in" "conftest.in" >"conftest.tmp"-    mv "conftest.tmp" "conftest.in"-    cp "conftest.in" "conftest.nl"-    printf "%s\n" 'FGREP' >> "conftest.nl"-    "$ac_path_FGREP" FGREP < "conftest.nl" >"conftest.out" 2>/dev/null || break-    diff "conftest.out" "conftest.nl" >/dev/null 2>&1 || break-    as_fn_arith $ac_count + 1 && ac_count=$as_val-    if test $ac_count -gt ${ac_path_FGREP_max-0}; then-      # Best one so far, save it but keep looking for a better one-      ac_cv_path_FGREP="$ac_path_FGREP"-      ac_path_FGREP_max=$ac_count-    fi-    # 10*(2^10) chars as input seems more than enough-    test $ac_count -gt 10 && break-  done-  rm -f conftest.in conftest.tmp conftest.nl conftest.out;;-esac--      $ac_path_FGREP_found && break 3-    done-  done-  done-IFS=$as_save_IFS-  if test -z "$ac_cv_path_FGREP"; then-    as_fn_error $? "no acceptable fgrep could be found in $PATH$PATH_SEPARATOR/usr/xpg4/bin" "$LINENO" 5-  fi-else-  ac_cv_path_FGREP=$FGREP-fi--   fi ;;-esac-fi-{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_cv_path_FGREP" >&5-printf "%s\n" "$ac_cv_path_FGREP" >&6; }- FGREP="$ac_cv_path_FGREP"---test -z "$GREP" && GREP=grep--------------------# Check whether --with-gnu-ld was given.-if test ${with_gnu_ld+y}-then :-  withval=$with_gnu_ld; test no = "$withval" || with_gnu_ld=yes-else case e in #(-  e) with_gnu_ld=no ;;-esac-fi--ac_prog=ld-if test yes = "$GCC"; then-  # Check if gcc -print-prog-name=ld gives a path.-  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for ld used by $CC" >&5-printf %s "checking for ld used by $CC... " >&6; }-  case $host in-  *-*-mingw* | *-*-windows*)-    # gcc leaves a trailing carriage return, which upsets mingw-    ac_prog=`($CC -print-prog-name=ld) 2>&5 | tr -d '\015'` ;;-  *)-    ac_prog=`($CC -print-prog-name=ld) 2>&5` ;;-  esac-  case $ac_prog in-    # Accept absolute paths.-    [\\/]* | ?:[\\/]*)-      re_direlt='/[^/][^/]*/\.\./'-      # Canonicalize the pathname of ld-      ac_prog=`$ECHO "$ac_prog"| $SED 's%\\\\%/%g'`-      while $ECHO "$ac_prog" | $GREP "$re_direlt" > /dev/null 2>&1; do-	ac_prog=`$ECHO $ac_prog| $SED "s%$re_direlt%/%"`-      done-      test -z "$LD" && LD=$ac_prog-      ;;-  "")-    # If it fails, then pretend we aren't using GCC.-    ac_prog=ld-    ;;-  *)-    # If it is relative, then search for the first ld in PATH.-    with_gnu_ld=unknown-    ;;-  esac-elif test yes = "$with_gnu_ld"; then-  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for GNU ld" >&5-printf %s "checking for GNU ld... " >&6; }-else-  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for non-GNU ld" >&5-printf %s "checking for non-GNU ld... " >&6; }-fi-if test ${lt_cv_path_LD+y}-then :-  printf %s "(cached) " >&6-else case e in #(-  e) if test -z "$LD"; then-  lt_save_ifs=$IFS; IFS=$PATH_SEPARATOR-  for ac_dir in $PATH; do-    IFS=$lt_save_ifs-    test -z "$ac_dir" && ac_dir=.-    if test -f "$ac_dir/$ac_prog" || test -f "$ac_dir/$ac_prog$ac_exeext"; then-      lt_cv_path_LD=$ac_dir/$ac_prog-      # Check to see if the program is GNU ld.  I'd rather use --version,-      # but apparently some variants of GNU ld only accept -v.-      # Break only if it was the GNU/non-GNU ld that we prefer.-      case `"$lt_cv_path_LD" -v 2>&1 </dev/null` in-      *GNU* | *'with BFD'*)-	test no != "$with_gnu_ld" && break-	;;-      *)-	test yes != "$with_gnu_ld" && break-	;;-      esac-    fi-  done-  IFS=$lt_save_ifs-else-  lt_cv_path_LD=$LD # Let the user override the test with a path.-fi ;;-esac-fi--LD=$lt_cv_path_LD-if test -n "$LD"; then-  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $LD" >&5-printf "%s\n" "$LD" >&6; }-else-  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5-printf "%s\n" "no" >&6; }-fi-test -z "$LD" && as_fn_error $? "no acceptable ld found in \$PATH" "$LINENO" 5-{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking if the linker ($LD) is GNU ld" >&5-printf %s "checking if the linker ($LD) is GNU ld... " >&6; }-if test ${lt_cv_prog_gnu_ld+y}-then :-  printf %s "(cached) " >&6-else case e in #(-  e) # I'd rather use --version here, but apparently some GNU lds only accept -v.-case `$LD -v 2>&1 </dev/null` in-*GNU* | *'with BFD'*)-  lt_cv_prog_gnu_ld=yes-  ;;-*)-  lt_cv_prog_gnu_ld=no-  ;;-esac ;;-esac-fi-{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $lt_cv_prog_gnu_ld" >&5-printf "%s\n" "$lt_cv_prog_gnu_ld" >&6; }-with_gnu_ld=$lt_cv_prog_gnu_ld----------{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for BSD- or MS-compatible name lister (nm)" >&5-printf %s "checking for BSD- or MS-compatible name lister (nm)... " >&6; }-if test ${lt_cv_path_NM+y}-then :-  printf %s "(cached) " >&6-else case e in #(-  e) if test -n "$NM"; then-  # Let the user override the test.-  lt_cv_path_NM=$NM-else-  lt_nm_to_check=${ac_tool_prefix}nm-  if test -n "$ac_tool_prefix" && test "$build" = "$host"; then-    lt_nm_to_check="$lt_nm_to_check nm"-  fi-  for lt_tmp_nm in $lt_nm_to_check; do-    lt_save_ifs=$IFS; IFS=$PATH_SEPARATOR-    for ac_dir in $PATH /usr/ccs/bin/elf /usr/ccs/bin /usr/ucb /bin; do-      IFS=$lt_save_ifs-      test -z "$ac_dir" && ac_dir=.-      tmp_nm=$ac_dir/$lt_tmp_nm-      if test -f "$tmp_nm" || test -f "$tmp_nm$ac_exeext"; then-	# Check to see if the nm accepts a BSD-compat flag.-	# Adding the 'sed 1q' prevents false positives on HP-UX, which says:-	#   nm: unknown option "B" ignored-	# Tru64's nm complains that /dev/null is an invalid object file-	# MSYS converts /dev/null to NUL, MinGW nm treats NUL as empty-	case $build_os in-	mingw* | windows*) lt_bad_file=conftest.nm/nofile ;;-	*) lt_bad_file=/dev/null ;;-	esac-	case `"$tmp_nm" -B $lt_bad_file 2>&1 | $SED '1q'` in-	*$lt_bad_file* | *'Invalid file or object type'*)-	  lt_cv_path_NM="$tmp_nm -B"-	  break 2-	  ;;-	*)-	  case `"$tmp_nm" -p /dev/null 2>&1 | $SED '1q'` in-	  */dev/null*)-	    lt_cv_path_NM="$tmp_nm -p"-	    break 2-	    ;;-	  *)-	    lt_cv_path_NM=${lt_cv_path_NM="$tmp_nm"} # keep the first match, but-	    continue # so that we can try to find one that supports BSD flags-	    ;;-	  esac-	  ;;-	esac-      fi-    done-    IFS=$lt_save_ifs-  done-  : ${lt_cv_path_NM=no}-fi ;;-esac-fi-{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $lt_cv_path_NM" >&5-printf "%s\n" "$lt_cv_path_NM" >&6; }-if test no != "$lt_cv_path_NM"; then-  NM=$lt_cv_path_NM-else-  # Didn't find any BSD compatible name lister, look for dumpbin.-  if test -n "$DUMPBIN"; then :-    # Let the user override the test.-  else-    if test -n "$ac_tool_prefix"; then-  for ac_prog in dumpbin "link -dump"-  do-    # Extract the first word of "$ac_tool_prefix$ac_prog", so it can be a program name with args.-set dummy $ac_tool_prefix$ac_prog; ac_word=$2-{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5-printf %s "checking for $ac_word... " >&6; }-if test ${ac_cv_prog_DUMPBIN+y}-then :-  printf %s "(cached) " >&6-else case e in #(-  e) if test -n "$DUMPBIN"; then-  ac_cv_prog_DUMPBIN="$DUMPBIN" # Let the user override the test.-else-as_save_IFS=$IFS; IFS=$PATH_SEPARATOR-for as_dir in $PATH-do-  IFS=$as_save_IFS-  case $as_dir in #(((-    '') as_dir=./ ;;-    */) ;;-    *) as_dir=$as_dir/ ;;-  esac-    for ac_exec_ext in '' $ac_executable_extensions; do-  if as_fn_executable_p "$as_dir$ac_word$ac_exec_ext"; then-    ac_cv_prog_DUMPBIN="$ac_tool_prefix$ac_prog"-    printf "%s\n" "$as_me:${as_lineno-$LINENO}: found $as_dir$ac_word$ac_exec_ext" >&5-    break 2-  fi-done-  done-IFS=$as_save_IFS--fi ;;-esac-fi-DUMPBIN=$ac_cv_prog_DUMPBIN-if test -n "$DUMPBIN"; then-  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $DUMPBIN" >&5-printf "%s\n" "$DUMPBIN" >&6; }-else-  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5-printf "%s\n" "no" >&6; }-fi---    test -n "$DUMPBIN" && break-  done-fi-if test -z "$DUMPBIN"; then-  ac_ct_DUMPBIN=$DUMPBIN-  for ac_prog in dumpbin "link -dump"-do-  # Extract the first word of "$ac_prog", so it can be a program name with args.-set dummy $ac_prog; ac_word=$2-{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5-printf %s "checking for $ac_word... " >&6; }-if test ${ac_cv_prog_ac_ct_DUMPBIN+y}-then :-  printf %s "(cached) " >&6-else case e in #(-  e) if test -n "$ac_ct_DUMPBIN"; then-  ac_cv_prog_ac_ct_DUMPBIN="$ac_ct_DUMPBIN" # Let the user override the test.-else-as_save_IFS=$IFS; IFS=$PATH_SEPARATOR-for as_dir in $PATH-do-  IFS=$as_save_IFS-  case $as_dir in #(((-    '') as_dir=./ ;;-    */) ;;-    *) as_dir=$as_dir/ ;;-  esac-    for ac_exec_ext in '' $ac_executable_extensions; do-  if as_fn_executable_p "$as_dir$ac_word$ac_exec_ext"; then-    ac_cv_prog_ac_ct_DUMPBIN="$ac_prog"-    printf "%s\n" "$as_me:${as_lineno-$LINENO}: found $as_dir$ac_word$ac_exec_ext" >&5-    break 2-  fi-done-  done-IFS=$as_save_IFS--fi ;;-esac-fi-ac_ct_DUMPBIN=$ac_cv_prog_ac_ct_DUMPBIN-if test -n "$ac_ct_DUMPBIN"; then-  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_ct_DUMPBIN" >&5-printf "%s\n" "$ac_ct_DUMPBIN" >&6; }-else-  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5-printf "%s\n" "no" >&6; }-fi---  test -n "$ac_ct_DUMPBIN" && break-done--  if test "x$ac_ct_DUMPBIN" = x; then-    DUMPBIN=":"-  else-    case $cross_compiling:$ac_tool_warned in-yes:)-{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: WARNING: using cross tools not prefixed with host triplet" >&5-printf "%s\n" "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;}-ac_tool_warned=yes ;;-esac-    DUMPBIN=$ac_ct_DUMPBIN-  fi-fi--    case `$DUMPBIN -symbols -headers /dev/null 2>&1 | $SED '1q'` in-    *COFF*)-      DUMPBIN="$DUMPBIN -symbols -headers"-      ;;-    *)-      DUMPBIN=:-      ;;-    esac-  fi--  if test : != "$DUMPBIN"; then-    NM=$DUMPBIN-  fi-fi-test -z "$NM" && NM=nm-------{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking the name lister ($NM) interface" >&5-printf %s "checking the name lister ($NM) interface... " >&6; }-if test ${lt_cv_nm_interface+y}-then :-  printf %s "(cached) " >&6-else case e in #(-  e) lt_cv_nm_interface="BSD nm"-  echo "int some_variable = 0;" > conftest.$ac_ext-  (eval echo "\"\$as_me:$LINENO: $ac_compile\"" >&5)-  (eval "$ac_compile" 2>conftest.err)-  cat conftest.err >&5-  (eval echo "\"\$as_me:$LINENO: $NM \\\"conftest.$ac_objext\\\"\"" >&5)-  (eval "$NM \"conftest.$ac_objext\"" 2>conftest.err > conftest.out)-  cat conftest.err >&5-  (eval echo "\"\$as_me:$LINENO: output\"" >&5)-  cat conftest.out >&5-  if $GREP 'External.*some_variable' conftest.out > /dev/null; then-    lt_cv_nm_interface="MS dumpbin"-  fi-  rm -f conftest* ;;-esac-fi-{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $lt_cv_nm_interface" >&5-printf "%s\n" "$lt_cv_nm_interface" >&6; }--{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking whether ln -s works" >&5-printf %s "checking whether ln -s works... " >&6; }-LN_S=$as_ln_s-if test "$LN_S" = "ln -s"; then-  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: yes" >&5-printf "%s\n" "yes" >&6; }-else-  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no, using $LN_S" >&5-printf "%s\n" "no, using $LN_S" >&6; }-fi--# find the maximum length of command line arguments-{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking the maximum length of command line arguments" >&5-printf %s "checking the maximum length of command line arguments... " >&6; }-if test ${lt_cv_sys_max_cmd_len+y}-then :-  printf %s "(cached) " >&6-else case e in #(-  e)   i=0-  teststring=ABCD--  case $build_os in-  msdosdjgpp*)-    # On DJGPP, this test can blow up pretty badly due to problems in libc-    # (any single argument exceeding 2000 bytes causes a buffer overrun-    # during glob expansion).  Even if it were fixed, the result of this-    # check would be larger than it should be.-    lt_cv_sys_max_cmd_len=12288;    # 12K is about right-    ;;--  gnu* | ironclad*)-    # Under GNU Hurd and Ironclad, this test is not required because there-    # is no limit to the length of command line arguments.-    # Libtool will interpret -1 as no limit whatsoever-    lt_cv_sys_max_cmd_len=-1;-    ;;--  cygwin* | mingw* | windows* | cegcc*)-    # On Win9x/ME, this test blows up -- it succeeds, but takes-    # about 5 minutes as the teststring grows exponentially.-    # Worse, since 9x/ME are not pre-emptively multitasking,-    # you end up with a "frozen" computer, even though with patience-    # the test eventually succeeds (with a max line length of 256k).-    # Instead, let's just punt: use the minimum linelength reported by-    # all of the supported platforms: 8192 (on NT/2K/XP).-    lt_cv_sys_max_cmd_len=8192;-    ;;--  mint*)-    # On MiNT this can take a long time and run out of memory.-    lt_cv_sys_max_cmd_len=8192;-    ;;--  amigaos*)-    # On AmigaOS with pdksh, this test takes hours, literally.-    # So we just punt and use a minimum line length of 8192.-    lt_cv_sys_max_cmd_len=8192;-    ;;--  darwin* | dragonfly* | freebsd* | midnightbsd* | netbsd* | openbsd*)-    # This has been around since 386BSD, at least.  Likely further.-    if test -x /sbin/sysctl; then-      lt_cv_sys_max_cmd_len=`/sbin/sysctl -n kern.argmax`-    elif test -x /usr/sbin/sysctl; then-      lt_cv_sys_max_cmd_len=`/usr/sbin/sysctl -n kern.argmax`-    else-      lt_cv_sys_max_cmd_len=65536	# usable default for all BSDs-    fi-    # And add a safety zone-    lt_cv_sys_max_cmd_len=`expr $lt_cv_sys_max_cmd_len \/ 4`-    lt_cv_sys_max_cmd_len=`expr $lt_cv_sys_max_cmd_len \* 3`-    ;;--  interix*)-    # We know the value 262144 and hardcode it with a safety zone (like BSD)-    lt_cv_sys_max_cmd_len=196608-    ;;--  os2*)-    # The test takes a long time on OS/2.-    lt_cv_sys_max_cmd_len=8192-    ;;--  osf*)-    # Dr. Hans Ekkehard Plesser reports seeing a kernel panic running configure-    # due to this test when exec_disable_arg_limit is 1 on Tru64. It is not-    # nice to cause kernel panics so lets avoid the loop below.-    # First set a reasonable default.-    lt_cv_sys_max_cmd_len=16384-    #-    if test -x /sbin/sysconfig; then-      case `/sbin/sysconfig -q proc exec_disable_arg_limit` in-        *1*) lt_cv_sys_max_cmd_len=-1 ;;-      esac-    fi-    ;;-  sco3.2v5*)-    lt_cv_sys_max_cmd_len=102400-    ;;-  sysv5* | sco5v6* | sysv4.2uw2*)-    kargmax=`grep ARG_MAX /etc/conf/cf.d/stune 2>/dev/null`-    if test -n "$kargmax"; then-      lt_cv_sys_max_cmd_len=`echo $kargmax | $SED 's/.*[	 ]//'`-    else-      lt_cv_sys_max_cmd_len=32768-    fi-    ;;-  *)-    lt_cv_sys_max_cmd_len=`(getconf ARG_MAX) 2> /dev/null`-    if test -n "$lt_cv_sys_max_cmd_len" && \-       test undefined != "$lt_cv_sys_max_cmd_len"; then-      lt_cv_sys_max_cmd_len=`expr $lt_cv_sys_max_cmd_len \/ 4`-      lt_cv_sys_max_cmd_len=`expr $lt_cv_sys_max_cmd_len \* 3`-    else-      # Make teststring a little bigger before we do anything with it.-      # a 1K string should be a reasonable start.-      for i in 1 2 3 4 5 6 7 8; do-        teststring=$teststring$teststring-      done-      SHELL=${SHELL-${CONFIG_SHELL-/bin/sh}}-      # If test is not a shell built-in, we'll probably end up computing a-      # maximum length that is only half of the actual maximum length, but-      # we can't tell.-      while { test X`env echo "$teststring$teststring" 2>/dev/null` \-	         = "X$teststring$teststring"; } >/dev/null 2>&1 &&-	      test 17 != "$i" # 1/2 MB should be enough-      do-        i=`expr $i + 1`-        teststring=$teststring$teststring-      done-      # Only check the string length outside the loop.-      lt_cv_sys_max_cmd_len=`expr "X$teststring" : ".*" 2>&1`-      teststring=-      # Add a significant safety factor because C++ compilers can tack on-      # massive amounts of additional arguments before passing them to the-      # linker.  It appears as though 1/2 is a usable value.-      lt_cv_sys_max_cmd_len=`expr $lt_cv_sys_max_cmd_len \/ 2`-    fi-    ;;-  esac- ;;-esac-fi--if test -n "$lt_cv_sys_max_cmd_len"; then-  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $lt_cv_sys_max_cmd_len" >&5-printf "%s\n" "$lt_cv_sys_max_cmd_len" >&6; }-else-  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: none" >&5-printf "%s\n" "none" >&6; }-fi-max_cmd_len=$lt_cv_sys_max_cmd_len-------: ${CP="cp -f"}-: ${MV="mv -f"}-: ${RM="rm -f"}--if ( (MAIL=60; unset MAIL) || exit) >/dev/null 2>&1; then-  lt_unset=unset-else-  lt_unset=false-fi------# test EBCDIC or ASCII-case `echo X|tr X '\101'` in- A) # ASCII based system-    # \n is not interpreted correctly by Solaris 8 /usr/ucb/tr-  lt_SP2NL='tr \040 \012'-  lt_NL2SP='tr \015\012 \040\040'-  ;;- *) # EBCDIC based system-  lt_SP2NL='tr \100 \n'-  lt_NL2SP='tr \r\n \100\100'-  ;;-esac----------{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking how to convert $build file names to $host format" >&5-printf %s "checking how to convert $build file names to $host format... " >&6; }-if test ${lt_cv_to_host_file_cmd+y}-then :-  printf %s "(cached) " >&6-else case e in #(-  e) case $host in-  *-*-mingw* )-    case $build in-      *-*-mingw* | *-*-windows* ) # actually msys-        lt_cv_to_host_file_cmd=func_convert_file_msys_to_w32-        ;;-      *-*-cygwin* )-        lt_cv_to_host_file_cmd=func_convert_file_cygwin_to_w32-        ;;-      * ) # otherwise, assume *nix-        lt_cv_to_host_file_cmd=func_convert_file_nix_to_w32-        ;;-    esac-    ;;-  *-*-cygwin* )-    case $build in-      *-*-mingw* | *-*-windows* ) # actually msys-        lt_cv_to_host_file_cmd=func_convert_file_msys_to_cygwin-        ;;-      *-*-cygwin* )-        lt_cv_to_host_file_cmd=func_convert_file_noop-        ;;-      * ) # otherwise, assume *nix-        lt_cv_to_host_file_cmd=func_convert_file_nix_to_cygwin-        ;;-    esac-    ;;-  * ) # unhandled hosts (and "normal" native builds)-    lt_cv_to_host_file_cmd=func_convert_file_noop-    ;;-esac- ;;-esac-fi--to_host_file_cmd=$lt_cv_to_host_file_cmd-{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $lt_cv_to_host_file_cmd" >&5-printf "%s\n" "$lt_cv_to_host_file_cmd" >&6; }------{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking how to convert $build file names to toolchain format" >&5-printf %s "checking how to convert $build file names to toolchain format... " >&6; }-if test ${lt_cv_to_tool_file_cmd+y}-then :-  printf %s "(cached) " >&6-else case e in #(-  e) #assume ordinary cross tools, or native build.-lt_cv_to_tool_file_cmd=func_convert_file_noop-case $host in-  *-*-mingw* | *-*-windows* )-    case $build in-      *-*-mingw* | *-*-windows* ) # actually msys-        lt_cv_to_tool_file_cmd=func_convert_file_msys_to_w32-        ;;-    esac-    ;;-esac- ;;-esac-fi--to_tool_file_cmd=$lt_cv_to_tool_file_cmd-{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $lt_cv_to_tool_file_cmd" >&5-printf "%s\n" "$lt_cv_to_tool_file_cmd" >&6; }------{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for $LD option to reload object files" >&5-printf %s "checking for $LD option to reload object files... " >&6; }-if test ${lt_cv_ld_reload_flag+y}-then :-  printf %s "(cached) " >&6-else case e in #(-  e) lt_cv_ld_reload_flag='-r' ;;-esac-fi-{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $lt_cv_ld_reload_flag" >&5-printf "%s\n" "$lt_cv_ld_reload_flag" >&6; }-reload_flag=$lt_cv_ld_reload_flag-case $reload_flag in-"" | " "*) ;;-*) reload_flag=" $reload_flag" ;;-esac-reload_cmds='$LD$reload_flag -o $output$reload_objs'-case $host_os in-  cygwin* | mingw* | windows* | pw32* | cegcc*)-    if test yes != "$GCC"; then-      reload_cmds=false-    fi-    ;;-  darwin*)-    if test yes = "$GCC"; then-      reload_cmds='$LTCC $LTCFLAGS -nostdlib $wl-r -o $output$reload_objs'-    else-      reload_cmds='$LD$reload_flag -o $output$reload_objs'-    fi-    ;;-esac----------# Extract the first word of "file", so it can be a program name with args.-set dummy file; ac_word=$2-{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5-printf %s "checking for $ac_word... " >&6; }-if test ${ac_cv_prog_FILECMD+y}-then :-  printf %s "(cached) " >&6-else case e in #(-  e) if test -n "$FILECMD"; then-  ac_cv_prog_FILECMD="$FILECMD" # Let the user override the test.-else-as_save_IFS=$IFS; IFS=$PATH_SEPARATOR-for as_dir in $PATH-do-  IFS=$as_save_IFS-  case $as_dir in #(((-    '') as_dir=./ ;;-    */) ;;-    *) as_dir=$as_dir/ ;;-  esac-    for ac_exec_ext in '' $ac_executable_extensions; do-  if as_fn_executable_p "$as_dir$ac_word$ac_exec_ext"; then-    ac_cv_prog_FILECMD="file"-    printf "%s\n" "$as_me:${as_lineno-$LINENO}: found $as_dir$ac_word$ac_exec_ext" >&5-    break 2-  fi-done-  done-IFS=$as_save_IFS--  test -z "$ac_cv_prog_FILECMD" && ac_cv_prog_FILECMD=":"-fi ;;-esac-fi-FILECMD=$ac_cv_prog_FILECMD-if test -n "$FILECMD"; then-  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $FILECMD" >&5-printf "%s\n" "$FILECMD" >&6; }-else-  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5-printf "%s\n" "no" >&6; }-fi---------if test -n "$ac_tool_prefix"; then-  # Extract the first word of "${ac_tool_prefix}objdump", so it can be a program name with args.-set dummy ${ac_tool_prefix}objdump; ac_word=$2-{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5-printf %s "checking for $ac_word... " >&6; }-if test ${ac_cv_prog_OBJDUMP+y}-then :-  printf %s "(cached) " >&6-else case e in #(-  e) if test -n "$OBJDUMP"; then-  ac_cv_prog_OBJDUMP="$OBJDUMP" # Let the user override the test.-else-as_save_IFS=$IFS; IFS=$PATH_SEPARATOR-for as_dir in $PATH-do-  IFS=$as_save_IFS-  case $as_dir in #(((-    '') as_dir=./ ;;-    */) ;;-    *) as_dir=$as_dir/ ;;-  esac-    for ac_exec_ext in '' $ac_executable_extensions; do-  if as_fn_executable_p "$as_dir$ac_word$ac_exec_ext"; then-    ac_cv_prog_OBJDUMP="${ac_tool_prefix}objdump"-    printf "%s\n" "$as_me:${as_lineno-$LINENO}: found $as_dir$ac_word$ac_exec_ext" >&5-    break 2-  fi-done-  done-IFS=$as_save_IFS--fi ;;-esac-fi-OBJDUMP=$ac_cv_prog_OBJDUMP-if test -n "$OBJDUMP"; then-  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $OBJDUMP" >&5-printf "%s\n" "$OBJDUMP" >&6; }-else-  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5-printf "%s\n" "no" >&6; }-fi---fi-if test -z "$ac_cv_prog_OBJDUMP"; then-  ac_ct_OBJDUMP=$OBJDUMP-  # Extract the first word of "objdump", so it can be a program name with args.-set dummy objdump; ac_word=$2-{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5-printf %s "checking for $ac_word... " >&6; }-if test ${ac_cv_prog_ac_ct_OBJDUMP+y}-then :-  printf %s "(cached) " >&6-else case e in #(-  e) if test -n "$ac_ct_OBJDUMP"; then-  ac_cv_prog_ac_ct_OBJDUMP="$ac_ct_OBJDUMP" # Let the user override the test.-else-as_save_IFS=$IFS; IFS=$PATH_SEPARATOR-for as_dir in $PATH-do-  IFS=$as_save_IFS-  case $as_dir in #(((-    '') as_dir=./ ;;-    */) ;;-    *) as_dir=$as_dir/ ;;-  esac-    for ac_exec_ext in '' $ac_executable_extensions; do-  if as_fn_executable_p "$as_dir$ac_word$ac_exec_ext"; then-    ac_cv_prog_ac_ct_OBJDUMP="objdump"-    printf "%s\n" "$as_me:${as_lineno-$LINENO}: found $as_dir$ac_word$ac_exec_ext" >&5-    break 2-  fi-done-  done-IFS=$as_save_IFS--fi ;;-esac-fi-ac_ct_OBJDUMP=$ac_cv_prog_ac_ct_OBJDUMP-if test -n "$ac_ct_OBJDUMP"; then-  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_ct_OBJDUMP" >&5-printf "%s\n" "$ac_ct_OBJDUMP" >&6; }-else-  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5-printf "%s\n" "no" >&6; }-fi--  if test "x$ac_ct_OBJDUMP" = x; then-    OBJDUMP="false"-  else-    case $cross_compiling:$ac_tool_warned in-yes:)-{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: WARNING: using cross tools not prefixed with host triplet" >&5-printf "%s\n" "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;}-ac_tool_warned=yes ;;-esac-    OBJDUMP=$ac_ct_OBJDUMP-  fi-else-  OBJDUMP="$ac_cv_prog_OBJDUMP"-fi--test -z "$OBJDUMP" && OBJDUMP=objdump----------{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking how to recognize dependent libraries" >&5-printf %s "checking how to recognize dependent libraries... " >&6; }-if test ${lt_cv_deplibs_check_method+y}-then :-  printf %s "(cached) " >&6-else case e in #(-  e) lt_cv_file_magic_cmd='$MAGIC_CMD'-lt_cv_file_magic_test_file=-lt_cv_deplibs_check_method='unknown'-# Need to set the preceding variable on all platforms that support-# interlibrary dependencies.-# 'none' -- dependencies not supported.-# 'unknown' -- same as none, but documents that we really don't know.-# 'pass_all' -- all dependencies passed with no checks.-# 'file_magic [[regex]]' -- check by looking for files in library path-# that responds to the $file_magic_cmd with a given extended regex.-# If you have 'file' or equivalent on your system and you're not sure-# whether 'pass_all' will *always* work, you probably want this one.--case $host_os in-aix[4-9]*)-  lt_cv_deplibs_check_method=pass_all-  ;;--beos*)-  lt_cv_deplibs_check_method=pass_all-  ;;--bsdi[45]*)-  lt_cv_deplibs_check_method='file_magic ELF [0-9][0-9]*-bit [ML]SB (shared object|dynamic lib)'-  lt_cv_file_magic_cmd='$FILECMD -L'-  lt_cv_file_magic_test_file=/shlib/libc.so-  ;;--cygwin*)-  # func_win32_libid is a shell function defined in ltmain.sh-  lt_cv_deplibs_check_method='file_magic ^x86 archive import|^x86 DLL'-  lt_cv_file_magic_cmd='func_win32_libid'-  ;;--mingw* | windows* | pw32*)-  # Base MSYS/MinGW do not provide the 'file' command needed by-  # func_win32_libid shell function, so use a weaker test based on 'objdump',-  # unless we find 'file', for example because we are cross-compiling.-  if ( file / ) >/dev/null 2>&1; then-    lt_cv_deplibs_check_method='file_magic ^x86 archive import|^x86 DLL'-    lt_cv_file_magic_cmd='func_win32_libid'-  else-    # Keep this pattern in sync with the one in func_win32_libid.-    lt_cv_deplibs_check_method='file_magic file format (pei*-i386(.*architecture: i386)?|pe-arm-wince|pe-x86-64|pe-aarch64)'-    lt_cv_file_magic_cmd='$OBJDUMP -f'-  fi-  ;;--cegcc*)-  # use the weaker test based on 'objdump'. See mingw*.-  lt_cv_deplibs_check_method='file_magic file format pe-arm-.*little(.*architecture: arm)?'-  lt_cv_file_magic_cmd='$OBJDUMP -f'-  ;;--darwin* | rhapsody*)-  lt_cv_deplibs_check_method=pass_all-  ;;--freebsd* | dragonfly* | midnightbsd*)-  if echo __ELF__ | $CC -E - | $GREP __ELF__ > /dev/null; then-    case $host_cpu in-    i*86 )-      # Not sure whether the presence of OpenBSD here was a mistake.-      # Let's accept both of them until this is cleared up.-      lt_cv_deplibs_check_method='file_magic (FreeBSD|OpenBSD|DragonFly)/i[3-9]86 (compact )?demand paged shared library'-      lt_cv_file_magic_cmd=$FILECMD-      lt_cv_file_magic_test_file=`echo /usr/lib/libc.so.*`-      ;;-    esac-  else-    lt_cv_deplibs_check_method=pass_all-  fi-  ;;--haiku*)-  lt_cv_deplibs_check_method=pass_all-  ;;--hpux10.20* | hpux11*)-  lt_cv_file_magic_cmd=$FILECMD-  case $host_cpu in-  ia64*)-    lt_cv_deplibs_check_method='file_magic (s[0-9][0-9][0-9]|ELF-[0-9][0-9]) shared object file - IA64'-    lt_cv_file_magic_test_file=/usr/lib/hpux32/libc.so-    ;;-  hppa*64*)-    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]'-    lt_cv_file_magic_test_file=/usr/lib/pa20_64/libc.sl-    ;;-  *)-    lt_cv_deplibs_check_method='file_magic (s[0-9][0-9][0-9]|PA-RISC[0-9]\.[0-9]) shared library'-    lt_cv_file_magic_test_file=/usr/lib/libc.sl-    ;;-  esac-  ;;--interix[3-9]*)-  # PIC code is broken on Interix 3.x, that's why |\.a not |_pic\.a here-  lt_cv_deplibs_check_method='match_pattern /lib[^/]+(\.so|\.a)$'-  ;;--irix5* | irix6* | nonstopux*)-  case $LD in-  *-32|*"-32 ") libmagic=32-bit;;-  *-n32|*"-n32 ") libmagic=N32;;-  *-64|*"-64 ") libmagic=64-bit;;-  *) libmagic=never-match;;-  esac-  lt_cv_deplibs_check_method=pass_all-  ;;--# This must be glibc/ELF.-linux* | k*bsd*-gnu | kopensolaris*-gnu | gnu*)-  lt_cv_deplibs_check_method=pass_all-  ;;--*-mlibc)-  lt_cv_deplibs_check_method=pass_all-  ;;--netbsd* | netbsdelf*-gnu)-  if echo __ELF__ | $CC -E - | $GREP __ELF__ > /dev/null; then-    lt_cv_deplibs_check_method='match_pattern /lib[^/]+(\.so\.[0-9]+\.[0-9]+|_pic\.a)$'-  else-    lt_cv_deplibs_check_method='match_pattern /lib[^/]+(\.so|_pic\.a)$'-  fi-  ;;--newos6*)-  lt_cv_deplibs_check_method='file_magic ELF [0-9][0-9]*-bit [ML]SB (executable|dynamic lib)'-  lt_cv_file_magic_cmd=$FILECMD-  lt_cv_file_magic_test_file=/usr/lib/libnls.so-  ;;--*nto* | *qnx*)-  lt_cv_deplibs_check_method=pass_all-  ;;--openbsd*)-  if test -z "`echo __ELF__ | $CC -E - | $GREP __ELF__`"; then-    lt_cv_deplibs_check_method='match_pattern /lib[^/]+(\.so\.[0-9]+\.[0-9]+|\.so|_pic\.a)$'-  else-    lt_cv_deplibs_check_method='match_pattern /lib[^/]+(\.so\.[0-9]+\.[0-9]+|_pic\.a)$'-  fi-  ;;--osf3* | osf4* | osf5*)-  lt_cv_deplibs_check_method=pass_all-  ;;--rdos*)-  lt_cv_deplibs_check_method=pass_all-  ;;--serenity*)-  lt_cv_deplibs_check_method=pass_all-  ;;--solaris*)-  lt_cv_deplibs_check_method=pass_all-  ;;--sysv5* | sco3.2v5* | sco5v6* | unixware* | OpenUNIX* | sysv4*uw2*)-  lt_cv_deplibs_check_method=pass_all-  ;;--sysv4 | sysv4.3*)-  case $host_vendor in-  motorola)-    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]'-    lt_cv_file_magic_test_file=`echo /usr/lib/libc.so*`-    ;;-  ncr)-    lt_cv_deplibs_check_method=pass_all-    ;;-  sequent)-    lt_cv_file_magic_cmd='/bin/file'-    lt_cv_deplibs_check_method='file_magic ELF [0-9][0-9]*-bit [LM]SB (shared object|dynamic lib )'-    ;;-  sni)-    lt_cv_file_magic_cmd='/bin/file'-    lt_cv_deplibs_check_method="file_magic ELF [0-9][0-9]*-bit [LM]SB dynamic lib"-    lt_cv_file_magic_test_file=/lib/libc.so-    ;;-  siemens)-    lt_cv_deplibs_check_method=pass_all-    ;;-  pc)-    lt_cv_deplibs_check_method=pass_all-    ;;-  esac-  ;;--tpf*)-  lt_cv_deplibs_check_method=pass_all-  ;;-os2*)-  lt_cv_deplibs_check_method=pass_all-  ;;-esac- ;;-esac-fi-{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $lt_cv_deplibs_check_method" >&5-printf "%s\n" "$lt_cv_deplibs_check_method" >&6; }--file_magic_glob=-want_nocaseglob=no-if test "$build" = "$host"; then-  case $host_os in-  mingw* | windows* | pw32*)-    if ( shopt | grep nocaseglob ) >/dev/null 2>&1; then-      want_nocaseglob=yes-    else-      file_magic_glob=`echo aAbBcCdDeEfFgGhHiIjJkKlLmMnNoOpPqQrRsStTuUvVwWxXyYzZ | $SED -e "s/\(..\)/s\/[\1]\/[\1]\/g;/g"`-    fi-    ;;-  esac-fi--file_magic_cmd=$lt_cv_file_magic_cmd-deplibs_check_method=$lt_cv_deplibs_check_method-test -z "$deplibs_check_method" && deplibs_check_method=unknown-----------------------if test -n "$ac_tool_prefix"; then-  # Extract the first word of "${ac_tool_prefix}dlltool", so it can be a program name with args.-set dummy ${ac_tool_prefix}dlltool; ac_word=$2-{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5-printf %s "checking for $ac_word... " >&6; }-if test ${ac_cv_prog_DLLTOOL+y}-then :-  printf %s "(cached) " >&6-else case e in #(-  e) if test -n "$DLLTOOL"; then-  ac_cv_prog_DLLTOOL="$DLLTOOL" # Let the user override the test.-else-as_save_IFS=$IFS; IFS=$PATH_SEPARATOR-for as_dir in $PATH-do-  IFS=$as_save_IFS-  case $as_dir in #(((-    '') as_dir=./ ;;-    */) ;;-    *) as_dir=$as_dir/ ;;-  esac-    for ac_exec_ext in '' $ac_executable_extensions; do-  if as_fn_executable_p "$as_dir$ac_word$ac_exec_ext"; then-    ac_cv_prog_DLLTOOL="${ac_tool_prefix}dlltool"-    printf "%s\n" "$as_me:${as_lineno-$LINENO}: found $as_dir$ac_word$ac_exec_ext" >&5-    break 2-  fi-done-  done-IFS=$as_save_IFS--fi ;;-esac-fi-DLLTOOL=$ac_cv_prog_DLLTOOL-if test -n "$DLLTOOL"; then-  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $DLLTOOL" >&5-printf "%s\n" "$DLLTOOL" >&6; }-else-  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5-printf "%s\n" "no" >&6; }-fi---fi-if test -z "$ac_cv_prog_DLLTOOL"; then-  ac_ct_DLLTOOL=$DLLTOOL-  # Extract the first word of "dlltool", so it can be a program name with args.-set dummy dlltool; ac_word=$2-{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5-printf %s "checking for $ac_word... " >&6; }-if test ${ac_cv_prog_ac_ct_DLLTOOL+y}-then :-  printf %s "(cached) " >&6-else case e in #(-  e) if test -n "$ac_ct_DLLTOOL"; then-  ac_cv_prog_ac_ct_DLLTOOL="$ac_ct_DLLTOOL" # Let the user override the test.-else-as_save_IFS=$IFS; IFS=$PATH_SEPARATOR-for as_dir in $PATH-do-  IFS=$as_save_IFS-  case $as_dir in #(((-    '') as_dir=./ ;;-    */) ;;-    *) as_dir=$as_dir/ ;;-  esac-    for ac_exec_ext in '' $ac_executable_extensions; do-  if as_fn_executable_p "$as_dir$ac_word$ac_exec_ext"; then-    ac_cv_prog_ac_ct_DLLTOOL="dlltool"-    printf "%s\n" "$as_me:${as_lineno-$LINENO}: found $as_dir$ac_word$ac_exec_ext" >&5-    break 2-  fi-done-  done-IFS=$as_save_IFS--fi ;;-esac-fi-ac_ct_DLLTOOL=$ac_cv_prog_ac_ct_DLLTOOL-if test -n "$ac_ct_DLLTOOL"; then-  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_ct_DLLTOOL" >&5-printf "%s\n" "$ac_ct_DLLTOOL" >&6; }-else-  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5-printf "%s\n" "no" >&6; }-fi--  if test "x$ac_ct_DLLTOOL" = x; then-    DLLTOOL="false"-  else-    case $cross_compiling:$ac_tool_warned in-yes:)-{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: WARNING: using cross tools not prefixed with host triplet" >&5-printf "%s\n" "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;}-ac_tool_warned=yes ;;-esac-    DLLTOOL=$ac_ct_DLLTOOL-  fi-else-  DLLTOOL="$ac_cv_prog_DLLTOOL"-fi--test -z "$DLLTOOL" && DLLTOOL=dlltool-----------{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking how to associate runtime and link libraries" >&5-printf %s "checking how to associate runtime and link libraries... " >&6; }-if test ${lt_cv_sharedlib_from_linklib_cmd+y}-then :-  printf %s "(cached) " >&6-else case e in #(-  e) lt_cv_sharedlib_from_linklib_cmd='unknown'--case $host_os in-cygwin* | mingw* | windows* | pw32* | cegcc*)-  # two different shell functions defined in ltmain.sh;-  # decide which one to use based on capabilities of $DLLTOOL-  case `$DLLTOOL --help 2>&1` in-  *--identify-strict*)-    lt_cv_sharedlib_from_linklib_cmd=func_cygming_dll_for_implib-    ;;-  *)-    lt_cv_sharedlib_from_linklib_cmd=func_cygming_dll_for_implib_fallback-    ;;-  esac-  ;;-*)-  # fallback: assume linklib IS sharedlib-  lt_cv_sharedlib_from_linklib_cmd=$ECHO-  ;;-esac- ;;-esac-fi-{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $lt_cv_sharedlib_from_linklib_cmd" >&5-printf "%s\n" "$lt_cv_sharedlib_from_linklib_cmd" >&6; }-sharedlib_from_linklib_cmd=$lt_cv_sharedlib_from_linklib_cmd-test -z "$sharedlib_from_linklib_cmd" && sharedlib_from_linklib_cmd=$ECHO---------if test -n "$ac_tool_prefix"; then-  # Extract the first word of "${ac_tool_prefix}ranlib", so it can be a program name with args.-set dummy ${ac_tool_prefix}ranlib; ac_word=$2-{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5-printf %s "checking for $ac_word... " >&6; }-if test ${ac_cv_prog_RANLIB+y}-then :-  printf %s "(cached) " >&6-else case e in #(-  e) if test -n "$RANLIB"; then-  ac_cv_prog_RANLIB="$RANLIB" # Let the user override the test.-else-as_save_IFS=$IFS; IFS=$PATH_SEPARATOR-for as_dir in $PATH-do-  IFS=$as_save_IFS-  case $as_dir in #(((-    '') as_dir=./ ;;-    */) ;;-    *) as_dir=$as_dir/ ;;-  esac-    for ac_exec_ext in '' $ac_executable_extensions; do-  if as_fn_executable_p "$as_dir$ac_word$ac_exec_ext"; then-    ac_cv_prog_RANLIB="${ac_tool_prefix}ranlib"-    printf "%s\n" "$as_me:${as_lineno-$LINENO}: found $as_dir$ac_word$ac_exec_ext" >&5-    break 2-  fi-done-  done-IFS=$as_save_IFS--fi ;;-esac-fi-RANLIB=$ac_cv_prog_RANLIB-if test -n "$RANLIB"; then-  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $RANLIB" >&5-printf "%s\n" "$RANLIB" >&6; }-else-  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5-printf "%s\n" "no" >&6; }-fi---fi-if test -z "$ac_cv_prog_RANLIB"; then-  ac_ct_RANLIB=$RANLIB-  # Extract the first word of "ranlib", so it can be a program name with args.-set dummy ranlib; ac_word=$2-{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5-printf %s "checking for $ac_word... " >&6; }-if test ${ac_cv_prog_ac_ct_RANLIB+y}-then :-  printf %s "(cached) " >&6-else case e in #(-  e) if test -n "$ac_ct_RANLIB"; then-  ac_cv_prog_ac_ct_RANLIB="$ac_ct_RANLIB" # Let the user override the test.-else-as_save_IFS=$IFS; IFS=$PATH_SEPARATOR-for as_dir in $PATH-do-  IFS=$as_save_IFS-  case $as_dir in #(((-    '') as_dir=./ ;;-    */) ;;-    *) as_dir=$as_dir/ ;;-  esac-    for ac_exec_ext in '' $ac_executable_extensions; do-  if as_fn_executable_p "$as_dir$ac_word$ac_exec_ext"; then-    ac_cv_prog_ac_ct_RANLIB="ranlib"-    printf "%s\n" "$as_me:${as_lineno-$LINENO}: found $as_dir$ac_word$ac_exec_ext" >&5-    break 2-  fi-done-  done-IFS=$as_save_IFS--fi ;;-esac-fi-ac_ct_RANLIB=$ac_cv_prog_ac_ct_RANLIB-if test -n "$ac_ct_RANLIB"; then-  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_ct_RANLIB" >&5-printf "%s\n" "$ac_ct_RANLIB" >&6; }-else-  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5-printf "%s\n" "no" >&6; }-fi--  if test "x$ac_ct_RANLIB" = x; then-    RANLIB=":"-  else-    case $cross_compiling:$ac_tool_warned in-yes:)-{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: WARNING: using cross tools not prefixed with host triplet" >&5-printf "%s\n" "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;}-ac_tool_warned=yes ;;-esac-    RANLIB=$ac_ct_RANLIB-  fi-else-  RANLIB="$ac_cv_prog_RANLIB"-fi--if test -n "$ac_tool_prefix"; then-  for ac_prog in ar-  do-    # Extract the first word of "$ac_tool_prefix$ac_prog", so it can be a program name with args.-set dummy $ac_tool_prefix$ac_prog; ac_word=$2-{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5-printf %s "checking for $ac_word... " >&6; }-if test ${ac_cv_prog_AR+y}-then :-  printf %s "(cached) " >&6-else case e in #(-  e) if test -n "$AR"; then-  ac_cv_prog_AR="$AR" # Let the user override the test.-else-as_save_IFS=$IFS; IFS=$PATH_SEPARATOR-for as_dir in $PATH-do-  IFS=$as_save_IFS-  case $as_dir in #(((-    '') as_dir=./ ;;-    */) ;;-    *) as_dir=$as_dir/ ;;-  esac-    for ac_exec_ext in '' $ac_executable_extensions; do-  if as_fn_executable_p "$as_dir$ac_word$ac_exec_ext"; then-    ac_cv_prog_AR="$ac_tool_prefix$ac_prog"-    printf "%s\n" "$as_me:${as_lineno-$LINENO}: found $as_dir$ac_word$ac_exec_ext" >&5-    break 2-  fi-done-  done-IFS=$as_save_IFS--fi ;;-esac-fi-AR=$ac_cv_prog_AR-if test -n "$AR"; then-  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $AR" >&5-printf "%s\n" "$AR" >&6; }-else-  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5-printf "%s\n" "no" >&6; }-fi---    test -n "$AR" && break-  done-fi-if test -z "$AR"; then-  ac_ct_AR=$AR-  for ac_prog in ar-do-  # Extract the first word of "$ac_prog", so it can be a program name with args.-set dummy $ac_prog; ac_word=$2-{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5-printf %s "checking for $ac_word... " >&6; }-if test ${ac_cv_prog_ac_ct_AR+y}-then :-  printf %s "(cached) " >&6-else case e in #(-  e) if test -n "$ac_ct_AR"; then-  ac_cv_prog_ac_ct_AR="$ac_ct_AR" # Let the user override the test.-else-as_save_IFS=$IFS; IFS=$PATH_SEPARATOR-for as_dir in $PATH-do-  IFS=$as_save_IFS-  case $as_dir in #(((-    '') as_dir=./ ;;-    */) ;;-    *) as_dir=$as_dir/ ;;-  esac-    for ac_exec_ext in '' $ac_executable_extensions; do-  if as_fn_executable_p "$as_dir$ac_word$ac_exec_ext"; then-    ac_cv_prog_ac_ct_AR="$ac_prog"-    printf "%s\n" "$as_me:${as_lineno-$LINENO}: found $as_dir$ac_word$ac_exec_ext" >&5-    break 2-  fi-done-  done-IFS=$as_save_IFS--fi ;;-esac-fi-ac_ct_AR=$ac_cv_prog_ac_ct_AR-if test -n "$ac_ct_AR"; then-  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_ct_AR" >&5-printf "%s\n" "$ac_ct_AR" >&6; }-else-  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5-printf "%s\n" "no" >&6; }-fi---  test -n "$ac_ct_AR" && break-done--  if test "x$ac_ct_AR" = x; then-    AR="false"-  else-    case $cross_compiling:$ac_tool_warned in-yes:)-{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: WARNING: using cross tools not prefixed with host triplet" >&5-printf "%s\n" "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;}-ac_tool_warned=yes ;;-esac-    AR=$ac_ct_AR-  fi-fi--: ${AR=ar}-------# Use ARFLAGS variable as AR's operation code to sync the variable naming with-# Automake.  If both AR_FLAGS and ARFLAGS are specified, AR_FLAGS should have-# higher priority because that's what people were doing historically (setting-# ARFLAGS for automake and AR_FLAGS for libtool).  FIXME: Make the AR_FLAGS-# variable obsoleted/removed.--test ${AR_FLAGS+y} || AR_FLAGS=${ARFLAGS-cr}-lt_ar_flags=$AR_FLAGS-------# Make AR_FLAGS overridable by 'make ARFLAGS='.  Don't try to run-time override-# by AR_FLAGS because that was never working and AR_FLAGS is about to die.-------{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for archiver @FILE support" >&5-printf %s "checking for archiver @FILE support... " >&6; }-if test ${lt_cv_ar_at_file+y}-then :-  printf %s "(cached) " >&6-else case e in #(-  e) lt_cv_ar_at_file=no-   cat confdefs.h - <<_ACEOF >conftest.$ac_ext-/* end confdefs.h.  */--int-main (void)-{--  ;-  return 0;-}-_ACEOF-if ac_fn_c_try_compile "$LINENO"-then :-  echo conftest.$ac_objext > conftest.lst-      lt_ar_try='$AR $AR_FLAGS libconftest.a @conftest.lst >&5'-      { { eval echo "\"\$as_me\":${as_lineno-$LINENO}: \"$lt_ar_try\""; } >&5-  (eval $lt_ar_try) 2>&5-  ac_status=$?-  printf "%s\n" "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5-  test $ac_status = 0; }-      if test 0 -eq "$ac_status"; then-	# Ensure the archiver fails upon bogus file names.-	rm -f conftest.$ac_objext libconftest.a-	{ { eval echo "\"\$as_me\":${as_lineno-$LINENO}: \"$lt_ar_try\""; } >&5-  (eval $lt_ar_try) 2>&5-  ac_status=$?-  printf "%s\n" "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5-  test $ac_status = 0; }-	if test 0 -ne "$ac_status"; then-          lt_cv_ar_at_file=@-        fi-      fi-      rm -f conftest.* libconftest.a--fi-rm -f core conftest.err conftest.$ac_objext conftest.beam conftest.$ac_ext-   ;;-esac-fi-{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $lt_cv_ar_at_file" >&5-printf "%s\n" "$lt_cv_ar_at_file" >&6; }--if test no = "$lt_cv_ar_at_file"; then-  archiver_list_spec=-else-  archiver_list_spec=$lt_cv_ar_at_file-fi--------if test -n "$ac_tool_prefix"; then-  # Extract the first word of "${ac_tool_prefix}strip", so it can be a program name with args.-set dummy ${ac_tool_prefix}strip; ac_word=$2-{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5-printf %s "checking for $ac_word... " >&6; }-if test ${ac_cv_prog_STRIP+y}-then :-  printf %s "(cached) " >&6-else case e in #(-  e) if test -n "$STRIP"; then-  ac_cv_prog_STRIP="$STRIP" # Let the user override the test.-else-as_save_IFS=$IFS; IFS=$PATH_SEPARATOR-for as_dir in $PATH-do-  IFS=$as_save_IFS-  case $as_dir in #(((-    '') as_dir=./ ;;-    */) ;;-    *) as_dir=$as_dir/ ;;-  esac-    for ac_exec_ext in '' $ac_executable_extensions; do-  if as_fn_executable_p "$as_dir$ac_word$ac_exec_ext"; then-    ac_cv_prog_STRIP="${ac_tool_prefix}strip"-    printf "%s\n" "$as_me:${as_lineno-$LINENO}: found $as_dir$ac_word$ac_exec_ext" >&5-    break 2-  fi-done-  done-IFS=$as_save_IFS--fi ;;-esac-fi-STRIP=$ac_cv_prog_STRIP-if test -n "$STRIP"; then-  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $STRIP" >&5-printf "%s\n" "$STRIP" >&6; }-else-  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5-printf "%s\n" "no" >&6; }-fi---fi-if test -z "$ac_cv_prog_STRIP"; then-  ac_ct_STRIP=$STRIP-  # Extract the first word of "strip", so it can be a program name with args.-set dummy strip; ac_word=$2-{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5-printf %s "checking for $ac_word... " >&6; }-if test ${ac_cv_prog_ac_ct_STRIP+y}-then :-  printf %s "(cached) " >&6-else case e in #(-  e) if test -n "$ac_ct_STRIP"; then-  ac_cv_prog_ac_ct_STRIP="$ac_ct_STRIP" # Let the user override the test.-else-as_save_IFS=$IFS; IFS=$PATH_SEPARATOR-for as_dir in $PATH-do-  IFS=$as_save_IFS-  case $as_dir in #(((-    '') as_dir=./ ;;-    */) ;;-    *) as_dir=$as_dir/ ;;-  esac-    for ac_exec_ext in '' $ac_executable_extensions; do-  if as_fn_executable_p "$as_dir$ac_word$ac_exec_ext"; then-    ac_cv_prog_ac_ct_STRIP="strip"-    printf "%s\n" "$as_me:${as_lineno-$LINENO}: found $as_dir$ac_word$ac_exec_ext" >&5-    break 2-  fi-done-  done-IFS=$as_save_IFS--fi ;;-esac-fi-ac_ct_STRIP=$ac_cv_prog_ac_ct_STRIP-if test -n "$ac_ct_STRIP"; then-  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_ct_STRIP" >&5-printf "%s\n" "$ac_ct_STRIP" >&6; }-else-  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5-printf "%s\n" "no" >&6; }-fi--  if test "x$ac_ct_STRIP" = x; then-    STRIP=":"-  else-    case $cross_compiling:$ac_tool_warned in-yes:)-{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: WARNING: using cross tools not prefixed with host triplet" >&5-printf "%s\n" "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;}-ac_tool_warned=yes ;;-esac-    STRIP=$ac_ct_STRIP-  fi-else-  STRIP="$ac_cv_prog_STRIP"-fi--test -z "$STRIP" && STRIP=:--------test -z "$RANLIB" && RANLIB=:-------# Determine commands to create old-style static archives.-old_archive_cmds='$AR $AR_FLAGS $oldlib$oldobjs'-old_postinstall_cmds='chmod 644 $oldlib'-old_postuninstall_cmds=--if test -n "$RANLIB"; then-  old_archive_cmds="$old_archive_cmds~\$RANLIB \$tool_oldlib"-  old_postinstall_cmds="$old_postinstall_cmds~\$RANLIB \$tool_oldlib"-fi--case $host_os in-  darwin*)-    lock_old_archive_extraction=yes ;;-  *)-    lock_old_archive_extraction=no ;;-esac----------------------for ac_prog in gawk mawk nawk awk-do-  # Extract the first word of "$ac_prog", so it can be a program name with args.-set dummy $ac_prog; ac_word=$2-{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5-printf %s "checking for $ac_word... " >&6; }-if test ${ac_cv_prog_AWK+y}-then :-  printf %s "(cached) " >&6-else case e in #(-  e) if test -n "$AWK"; then-  ac_cv_prog_AWK="$AWK" # Let the user override the test.-else-as_save_IFS=$IFS; IFS=$PATH_SEPARATOR-for as_dir in $PATH-do-  IFS=$as_save_IFS-  case $as_dir in #(((-    '') as_dir=./ ;;-    */) ;;-    *) as_dir=$as_dir/ ;;-  esac-    for ac_exec_ext in '' $ac_executable_extensions; do-  if as_fn_executable_p "$as_dir$ac_word$ac_exec_ext"; then-    ac_cv_prog_AWK="$ac_prog"-    printf "%s\n" "$as_me:${as_lineno-$LINENO}: found $as_dir$ac_word$ac_exec_ext" >&5-    break 2-  fi-done-  done-IFS=$as_save_IFS--fi ;;-esac-fi-AWK=$ac_cv_prog_AWK-if test -n "$AWK"; then-  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $AWK" >&5-printf "%s\n" "$AWK" >&6; }-else-  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5-printf "%s\n" "no" >&6; }-fi---  test -n "$AWK" && break-done--------------------# If no C compiler was specified, use CC.-LTCC=${LTCC-"$CC"}--# If no C compiler flags were specified, use CFLAGS.-LTCFLAGS=${LTCFLAGS-"$CFLAGS"}--# Allow CC to be a program name with arguments.-compiler=$CC---# Check for command to grab the raw symbol name followed by C symbol from nm.-{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking command to parse $NM output from $compiler object" >&5-printf %s "checking command to parse $NM output from $compiler object... " >&6; }-if test ${lt_cv_sys_global_symbol_pipe+y}-then :-  printf %s "(cached) " >&6-else case e in #(-  e)-# These are sane defaults that work on at least a few old systems.-# [They come from Ultrix.  What could be older than Ultrix?!! ;)]--# Character class describing NM global symbol codes.-symcode='[BCDEGRST]'--# Regexp to match symbols that can be accessed directly from C.-sympat='\([_A-Za-z][_A-Za-z0-9]*\)'--# Define system-specific variables.-case $host_os in-aix*)-  symcode='[BCDT]'-  ;;-cygwin* | mingw* | windows* | pw32* | cegcc*)-  symcode='[ABCDGISTW]'-  ;;-hpux*)-  if test ia64 = "$host_cpu"; then-    symcode='[ABCDEGRST]'-  fi-  ;;-irix* | nonstopux*)-  symcode='[BCDEGRST]'-  ;;-osf*)-  symcode='[BCDEGQRST]'-  ;;-solaris*)-  symcode='[BCDRT]'-  ;;-sco3.2v5*)-  symcode='[DT]'-  ;;-sysv4.2uw2*)-  symcode='[DT]'-  ;;-sysv5* | sco5v6* | unixware* | OpenUNIX*)-  symcode='[ABDT]'-  ;;-sysv4)-  symcode='[DFNSTU]'-  ;;-esac--# If we're using GNU nm, then use its standard symbol codes.-case `$NM -V 2>&1` in-*GNU* | *'with BFD'*)-  symcode='[ABCDGIRSTW]' ;;-esac--if test "$lt_cv_nm_interface" = "MS dumpbin"; then-  # Gets list of data symbols to import.-  lt_cv_sys_global_symbol_to_import="$SED -n -e 's/^I .* \(.*\)$/\1/p'"-  # Adjust the below global symbol transforms to fixup imported variables.-  lt_cdecl_hook=" -e 's/^I .* \(.*\)$/extern __declspec(dllimport) char \1;/p'"-  lt_c_name_hook=" -e 's/^I .* \(.*\)$/  {\"\1\", (void *) 0},/p'"-  lt_c_name_lib_hook="\-  -e 's/^I .* \(lib.*\)$/  {\"\1\", (void *) 0},/p'\-  -e 's/^I .* \(.*\)$/  {\"lib\1\", (void *) 0},/p'"-else-  # Disable hooks by default.-  lt_cv_sys_global_symbol_to_import=-  lt_cdecl_hook=-  lt_c_name_hook=-  lt_c_name_lib_hook=-fi--# Transform an extracted symbol line into a proper C declaration.-# Some systems (esp. on ia64) link data and code symbols differently,-# so use this general approach.-lt_cv_sys_global_symbol_to_cdecl="$SED -n"\-$lt_cdecl_hook\-" -e 's/^T .* \(.*\)$/extern int \1();/p'"\-" -e 's/^$symcode$symcode* .* \(.*\)$/extern char \1;/p'"--# Transform an extracted symbol line into symbol name and symbol address-lt_cv_sys_global_symbol_to_c_name_address="$SED -n"\-$lt_c_name_hook\-" -e 's/^: \(.*\) .*$/  {\"\1\", (void *) 0},/p'"\-" -e 's/^$symcode$symcode* .* \(.*\)$/  {\"\1\", (void *) \&\1},/p'"--# Transform an extracted symbol line into symbol name with lib prefix and-# symbol address.-lt_cv_sys_global_symbol_to_c_name_address_lib_prefix="$SED -n"\-$lt_c_name_lib_hook\-" -e 's/^: \(.*\) .*$/  {\"\1\", (void *) 0},/p'"\-" -e 's/^$symcode$symcode* .* \(lib.*\)$/  {\"\1\", (void *) \&\1},/p'"\-" -e 's/^$symcode$symcode* .* \(.*\)$/  {\"lib\1\", (void *) \&\1},/p'"--# Handle CRLF in mingw tool chain-opt_cr=-case $build_os in-mingw* | windows*)-  opt_cr=`$ECHO 'x\{0,1\}' | tr x '\015'` # option cr in regexp-  ;;-esac--# Try without a prefix underscore, then with it.-for ac_symprfx in "" "_"; do--  # Transform symcode, sympat, and symprfx into a raw symbol and a C symbol.-  symxfrm="\\1 $ac_symprfx\\2 \\2"--  # Write the raw and C identifiers.-  if test "$lt_cv_nm_interface" = "MS dumpbin"; then-    # Fake it for dumpbin and say T for any non-static function,-    # D for any global variable and I for any imported variable.-    # Also find C++ and __fastcall symbols from MSVC++ or ICC,-    # which start with @ or ?.-    lt_cv_sys_global_symbol_pipe="$AWK '"\-"     {last_section=section; section=\$ 3};"\-"     /^COFF SYMBOL TABLE/{for(i in hide) delete hide[i]};"\-"     /Section length .*#relocs.*(pick any)/{hide[last_section]=1};"\-"     /^ *Symbol name *: /{split(\$ 0,sn,\":\"); si=substr(sn[2],2)};"\-"     /^ *Type *: code/{print \"T\",si,substr(si,length(prfx))};"\-"     /^ *Type *: data/{print \"I\",si,substr(si,length(prfx))};"\-"     \$ 0!~/External *\|/{next};"\-"     / 0+ UNDEF /{next}; / UNDEF \([^|]\)*()/{next};"\-"     {if(hide[section]) next};"\-"     {f=\"D\"}; \$ 0~/\(\).*\|/{f=\"T\"};"\-"     {split(\$ 0,a,/\||\r/); split(a[2],s)};"\-"     s[1]~/^[@?]/{print f,s[1],s[1]; next};"\-"     s[1]~prfx {split(s[1],t,\"@\"); print f,t[1],substr(t[1],length(prfx))}"\-"     ' prfx=^$ac_symprfx"-  else-    lt_cv_sys_global_symbol_pipe="$SED -n -e 's/^.*[	 ]\($symcode$symcode*\)[	 ][	 ]*$ac_symprfx$sympat$opt_cr$/$symxfrm/p'"-  fi-  lt_cv_sys_global_symbol_pipe="$lt_cv_sys_global_symbol_pipe | $SED '/ __gnu_lto/d'"--  # Check to see that the pipe works correctly.-  pipe_works=no--  rm -f conftest*-  cat > conftest.$ac_ext <<_LT_EOF-#ifdef __cplusplus-extern "C" {-#endif-char nm_test_var;-void nm_test_func(void);-void nm_test_func(void){}-#ifdef __cplusplus-}-#endif-int main(void){nm_test_var='a';nm_test_func();return(0);}-_LT_EOF--  if { { eval echo "\"\$as_me\":${as_lineno-$LINENO}: \"$ac_compile\""; } >&5-  (eval $ac_compile) 2>&5-  ac_status=$?-  printf "%s\n" "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5-  test $ac_status = 0; }; then-    # Now try to grab the symbols.-    nlist=conftest.nm-    $ECHO "$as_me:$LINENO: $NM conftest.$ac_objext | $lt_cv_sys_global_symbol_pipe > $nlist" >&5-    if eval "$NM" conftest.$ac_objext \| "$lt_cv_sys_global_symbol_pipe" \> $nlist 2>&5 && test -s "$nlist"; then-      # Try sorting and uniquifying the output.-      if sort "$nlist" | uniq > "$nlist"T; then-	mv -f "$nlist"T "$nlist"-      else-	rm -f "$nlist"T-      fi--      # Make sure that we snagged all the symbols we need.-      if $GREP ' nm_test_var$' "$nlist" >/dev/null; then-	if $GREP ' nm_test_func$' "$nlist" >/dev/null; then-	  cat <<_LT_EOF > conftest.$ac_ext-/* Keep this code in sync between libtool.m4, ltmain, lt_system.h, and tests.  */-#if defined _WIN32 || defined __CYGWIN__ || defined _WIN32_WCE-/* DATA imports from DLLs on WIN32 can't be const, because runtime-   relocations are performed -- see ld's documentation on pseudo-relocs.  */-# define LT_DLSYM_CONST-#elif defined __osf__-/* This system does not cope well with relocations in const data.  */-# define LT_DLSYM_CONST-#else-# define LT_DLSYM_CONST const-#endif--#ifdef __cplusplus-extern "C" {-#endif--_LT_EOF-	  # Now generate the symbol file.-	  eval "$lt_cv_sys_global_symbol_to_cdecl"' < "$nlist" | $GREP -v main >> conftest.$ac_ext'--	  cat <<_LT_EOF >> conftest.$ac_ext--/* The mapping between symbol names and symbols.  */-LT_DLSYM_CONST struct {-  const char *name;-  void       *address;-}-lt__PROGRAM__LTX_preloaded_symbols[] =-{-  { "@PROGRAM@", (void *) 0 },-_LT_EOF-	  $SED "s/^$symcode$symcode* .* \(.*\)$/  {\"\1\", (void *) \&\1},/" < "$nlist" | $GREP -v main >> conftest.$ac_ext-	  cat <<\_LT_EOF >> conftest.$ac_ext-  {0, (void *) 0}-};--/* This works around a problem in FreeBSD linker */-#ifdef FREEBSD_WORKAROUND-static const void *lt_preloaded_setup() {-  return lt__PROGRAM__LTX_preloaded_symbols;-}-#endif--#ifdef __cplusplus-}-#endif-_LT_EOF-	  # Now try linking the two files.-	  mv conftest.$ac_objext conftstm.$ac_objext-	  lt_globsym_save_LIBS=$LIBS-	  lt_globsym_save_CFLAGS=$CFLAGS-	  LIBS=conftstm.$ac_objext-	  CFLAGS="$CFLAGS$lt_prog_compiler_no_builtin_flag"-	  if { { eval echo "\"\$as_me\":${as_lineno-$LINENO}: \"$ac_link\""; } >&5-  (eval $ac_link) 2>&5-  ac_status=$?-  printf "%s\n" "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5-  test $ac_status = 0; } && test -s conftest$ac_exeext; then-	    pipe_works=yes-	  fi-	  LIBS=$lt_globsym_save_LIBS-	  CFLAGS=$lt_globsym_save_CFLAGS-	else-	  echo "cannot find nm_test_func in $nlist" >&5-	fi-      else-	echo "cannot find nm_test_var in $nlist" >&5-      fi-    else-      echo "cannot run $lt_cv_sys_global_symbol_pipe" >&5-    fi-  else-    echo "$progname: failed program was:" >&5-    cat conftest.$ac_ext >&5-  fi-  rm -rf conftest* conftst*--  # Do not use the global_symbol_pipe unless it works.-  if test yes = "$pipe_works"; then-    break-  else-    lt_cv_sys_global_symbol_pipe=-  fi-done- ;;-esac-fi--if test -z "$lt_cv_sys_global_symbol_pipe"; then-  lt_cv_sys_global_symbol_to_cdecl=-fi-if test -z "$lt_cv_sys_global_symbol_pipe$lt_cv_sys_global_symbol_to_cdecl"; then-  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: failed" >&5-printf "%s\n" "failed" >&6; }-else-  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: ok" >&5-printf "%s\n" "ok" >&6; }-fi--# Response file support.-if test "$lt_cv_nm_interface" = "MS dumpbin"; then-  nm_file_list_spec='@'-elif $NM --help 2>/dev/null | grep '[@]FILE' >/dev/null; then-  nm_file_list_spec='@'-fi--------------------------------------{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for sysroot" >&5-printf %s "checking for sysroot... " >&6; }--# Check whether --with-sysroot was given.-if test ${with_sysroot+y}-then :-  withval=$with_sysroot;-else case e in #(-  e) with_sysroot=no ;;-esac-fi---lt_sysroot=-case $with_sysroot in #(- yes)-   if test yes = "$GCC"; then-     # Trim trailing / since we'll always append absolute paths and we want-     # to avoid //, if only for less confusing output for the user.-     lt_sysroot=`$CC --print-sysroot 2>/dev/null | $SED 's:/\+$::'`-   fi-   ;; #(- /*)-   lt_sysroot=`echo "$with_sysroot" | $SED -e "$sed_quote_subst"`-   ;; #(- no|'')-   ;; #(- *)-   { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $with_sysroot" >&5-printf "%s\n" "$with_sysroot" >&6; }-   as_fn_error $? "The sysroot must be an absolute path." "$LINENO" 5-   ;;-esac-- { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: ${lt_sysroot:-no}" >&5-printf "%s\n" "${lt_sysroot:-no}" >&6; }------{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for a working dd" >&5-printf %s "checking for a working dd... " >&6; }-if test ${ac_cv_path_lt_DD+y}-then :-  printf %s "(cached) " >&6-else case e in #(-  e) printf 0123456789abcdef0123456789abcdef >conftest.i-cat conftest.i conftest.i >conftest2.i-: ${lt_DD:=$DD}-if test -z "$lt_DD"; then-  ac_path_lt_DD_found=false-  # Loop through the user's path and test for each of PROGNAME-LIST-  as_save_IFS=$IFS; IFS=$PATH_SEPARATOR-for as_dir in $PATH-do-  IFS=$as_save_IFS-  case $as_dir in #(((-    '') as_dir=./ ;;-    */) ;;-    *) as_dir=$as_dir/ ;;-  esac-    for ac_prog in dd-   do-    for ac_exec_ext in '' $ac_executable_extensions; do-      ac_path_lt_DD="$as_dir$ac_prog$ac_exec_ext"-      as_fn_executable_p "$ac_path_lt_DD" || continue-if "$ac_path_lt_DD" bs=32 count=1 <conftest2.i >conftest.out 2>/dev/null; then-  cmp -s conftest.i conftest.out \-  && ac_cv_path_lt_DD="$ac_path_lt_DD" ac_path_lt_DD_found=:-fi-      $ac_path_lt_DD_found && break 3-    done-  done-  done-IFS=$as_save_IFS-  if test -z "$ac_cv_path_lt_DD"; then-    :-  fi-else-  ac_cv_path_lt_DD=$lt_DD-fi--rm -f conftest.i conftest2.i conftest.out ;;-esac-fi-{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_cv_path_lt_DD" >&5-printf "%s\n" "$ac_cv_path_lt_DD" >&6; }---{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking how to truncate binary pipes" >&5-printf %s "checking how to truncate binary pipes... " >&6; }-if test ${lt_cv_truncate_bin+y}-then :-  printf %s "(cached) " >&6-else case e in #(-  e) printf 0123456789abcdef0123456789abcdef >conftest.i-cat conftest.i conftest.i >conftest2.i-lt_cv_truncate_bin=-if "$ac_cv_path_lt_DD" bs=32 count=1 <conftest2.i >conftest.out 2>/dev/null; then-  cmp -s conftest.i conftest.out \-  && lt_cv_truncate_bin="$ac_cv_path_lt_DD bs=4096 count=1"-fi-rm -f conftest.i conftest2.i conftest.out-test -z "$lt_cv_truncate_bin" && lt_cv_truncate_bin="$SED -e 4q" ;;-esac-fi-{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $lt_cv_truncate_bin" >&5-printf "%s\n" "$lt_cv_truncate_bin" >&6; }--------# Calculate cc_basename.  Skip known compiler wrappers and cross-prefix.-func_cc_basename ()-{-    for cc_temp in $*""; do-      case $cc_temp in-        compile | *[\\/]compile | ccache | *[\\/]ccache ) ;;-        distcc | *[\\/]distcc | purify | *[\\/]purify ) ;;-        \-*) ;;-        *) break;;-      esac-    done-    func_cc_basename_result=`$ECHO "$cc_temp" | $SED "s%.*/%%; s%^$host_alias-%%"`-}--# Check whether --enable-libtool-lock was given.-if test ${enable_libtool_lock+y}-then :-  enableval=$enable_libtool_lock;-fi--test no = "$enable_libtool_lock" || enable_libtool_lock=yes--# Some flags need to be propagated to the compiler or linker for good-# libtool support.-case $host in-ia64-*-hpux*)-  # Find out what ABI is being produced by ac_compile, and set mode-  # options accordingly.-  echo 'int i;' > conftest.$ac_ext-  if { { eval echo "\"\$as_me\":${as_lineno-$LINENO}: \"$ac_compile\""; } >&5-  (eval $ac_compile) 2>&5-  ac_status=$?-  printf "%s\n" "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5-  test $ac_status = 0; }; then-    case `$FILECMD conftest.$ac_objext` in-      *ELF-32*)-	HPUX_IA64_MODE=32-	;;-      *ELF-64*)-	HPUX_IA64_MODE=64-	;;-    esac-  fi-  rm -rf conftest*-  ;;-*-*-irix6*)-  # Find out what ABI is being produced by ac_compile, and set linker-  # options accordingly.-  echo '#line '$LINENO' "configure"' > conftest.$ac_ext-  if { { eval echo "\"\$as_me\":${as_lineno-$LINENO}: \"$ac_compile\""; } >&5-  (eval $ac_compile) 2>&5-  ac_status=$?-  printf "%s\n" "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5-  test $ac_status = 0; }; then-    if test yes = "$lt_cv_prog_gnu_ld"; then-      case `$FILECMD conftest.$ac_objext` in-	*32-bit*)-	  LD="${LD-ld} -melf32bsmip"-	  ;;-	*N32*)-	  LD="${LD-ld} -melf32bmipn32"-	  ;;-	*64-bit*)-	  LD="${LD-ld} -melf64bmip"-	;;-      esac-    else-      case `$FILECMD conftest.$ac_objext` in-	*32-bit*)-	  LD="${LD-ld} -32"-	  ;;-	*N32*)-	  LD="${LD-ld} -n32"-	  ;;-	*64-bit*)-	  LD="${LD-ld} -64"-	  ;;-      esac-    fi-  fi-  rm -rf conftest*-  ;;--mips64*-*linux*)-  # Find out what ABI is being produced by ac_compile, and set linker-  # options accordingly.-  echo '#line '$LINENO' "configure"' > conftest.$ac_ext-  if { { eval echo "\"\$as_me\":${as_lineno-$LINENO}: \"$ac_compile\""; } >&5-  (eval $ac_compile) 2>&5-  ac_status=$?-  printf "%s\n" "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5-  test $ac_status = 0; }; then-    emul=elf-    case `$FILECMD conftest.$ac_objext` in-      *32-bit*)-	emul="${emul}32"-	;;-      *64-bit*)-	emul="${emul}64"-	;;-    esac-    case `$FILECMD conftest.$ac_objext` in-      *MSB*)-	emul="${emul}btsmip"-	;;-      *LSB*)-	emul="${emul}ltsmip"-	;;-    esac-    case `$FILECMD conftest.$ac_objext` in-      *N32*)-	emul="${emul}n32"-	;;-    esac-    LD="${LD-ld} -m $emul"-  fi-  rm -rf conftest*-  ;;--x86_64-*kfreebsd*-gnu|x86_64-*linux*|powerpc*-*linux*| \-s390*-*linux*|s390*-*tpf*|sparc*-*linux*|x86_64-gnu*)-  # Find out what ABI is being produced by ac_compile, and set linker-  # options accordingly.  Note that the listed cases only cover the-  # situations where additional linker options are needed (such as when-  # doing 32-bit compilation for a host where ld defaults to 64-bit, or-  # vice versa); the common cases where no linker options are needed do-  # not appear in the list.-  echo 'int i;' > conftest.$ac_ext-  if { { eval echo "\"\$as_me\":${as_lineno-$LINENO}: \"$ac_compile\""; } >&5-  (eval $ac_compile) 2>&5-  ac_status=$?-  printf "%s\n" "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5-  test $ac_status = 0; }; then-    case `$FILECMD conftest.o` in-      *32-bit*)-	case $host in-	  x86_64-*kfreebsd*-gnu)-	    LD="${LD-ld} -m elf_i386_fbsd"-	    ;;-	  x86_64-*linux*|x86_64-gnu*)-	    case `$FILECMD conftest.o` in-	      *x86-64*)-		LD="${LD-ld} -m elf32_x86_64"-		;;-	      *)-		LD="${LD-ld} -m elf_i386"-		;;-	    esac-	    ;;-	  powerpc64le-*linux*)-	    LD="${LD-ld} -m elf32lppclinux"-	    ;;-	  powerpc64-*linux*)-	    LD="${LD-ld} -m elf32ppclinux"-	    ;;-	  s390x-*linux*)-	    LD="${LD-ld} -m elf_s390"-	    ;;-	  sparc64-*linux*)-	    LD="${LD-ld} -m elf32_sparc"-	    ;;-	esac-	;;-      *64-bit*)-	case $host in-	  x86_64-*kfreebsd*-gnu)-	    LD="${LD-ld} -m elf_x86_64_fbsd"-	    ;;-	  x86_64-*linux*|x86_64-gnu*)-	    LD="${LD-ld} -m elf_x86_64"-	    ;;-	  powerpcle-*linux*)-	    LD="${LD-ld} -m elf64lppc"-	    ;;-	  powerpc-*linux*)-	    LD="${LD-ld} -m elf64ppc"-	    ;;-	  s390*-*linux*|s390*-*tpf*)-	    LD="${LD-ld} -m elf64_s390"-	    ;;-	  sparc*-*linux*)-	    LD="${LD-ld} -m elf64_sparc"-	    ;;-	esac-	;;-    esac-  fi-  rm -rf conftest*-  ;;--*-*-sco3.2v5*)-  # On SCO OpenServer 5, we need -belf to get full-featured binaries.-  SAVE_CFLAGS=$CFLAGS-  CFLAGS="$CFLAGS -belf"-  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking whether the C compiler needs -belf" >&5-printf %s "checking whether the C compiler needs -belf... " >&6; }-if test ${lt_cv_cc_needs_belf+y}-then :-  printf %s "(cached) " >&6-else case e in #(-  e) ac_ext=c-ac_cpp='$CPP $CPPFLAGS'-ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5'-ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5'-ac_compiler_gnu=$ac_cv_c_compiler_gnu--     cat confdefs.h - <<_ACEOF >conftest.$ac_ext-/* end confdefs.h.  */--int-main (void)-{--  ;-  return 0;-}-_ACEOF-if ac_fn_c_try_link "$LINENO"-then :-  lt_cv_cc_needs_belf=yes-else case e in #(-  e) lt_cv_cc_needs_belf=no ;;-esac-fi-rm -f core conftest.err conftest.$ac_objext conftest.beam \-    conftest$ac_exeext conftest.$ac_ext-     ac_ext=c-ac_cpp='$CPP $CPPFLAGS'-ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5'-ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5'-ac_compiler_gnu=$ac_cv_c_compiler_gnu- ;;-esac-fi-{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $lt_cv_cc_needs_belf" >&5-printf "%s\n" "$lt_cv_cc_needs_belf" >&6; }-  if test yes != "$lt_cv_cc_needs_belf"; then-    # this is probably gcc 2.8.0, egcs 1.0 or newer; no need for -belf-    CFLAGS=$SAVE_CFLAGS-  fi-  ;;-*-*solaris*)-  # Find out what ABI is being produced by ac_compile, and set linker-  # options accordingly.-  echo 'int i;' > conftest.$ac_ext-  if { { eval echo "\"\$as_me\":${as_lineno-$LINENO}: \"$ac_compile\""; } >&5-  (eval $ac_compile) 2>&5-  ac_status=$?-  printf "%s\n" "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5-  test $ac_status = 0; }; then-    case `$FILECMD conftest.o` in-    *64-bit*)-      case $lt_cv_prog_gnu_ld in-      yes*)-        case $host in-        i?86-*-solaris*|x86_64-*-solaris*)-          LD="${LD-ld} -m elf_x86_64"-          ;;-        sparc*-*-solaris*)-          LD="${LD-ld} -m elf64_sparc"-          ;;-        esac-        # GNU ld 2.21 introduced _sol2 emulations.  Use them if available.-        if ${LD-ld} -V | grep _sol2 >/dev/null 2>&1; then-          LD=${LD-ld}_sol2-        fi-        ;;-      *)-	if ${LD-ld} -64 -r -o conftest2.o conftest.o >/dev/null 2>&1; then-	  LD="${LD-ld} -64"-	fi-	;;-      esac-      ;;-    esac-  fi-  rm -rf conftest*-  ;;-esac--need_locks=$enable_libtool_lock--if test -n "$ac_tool_prefix"; then-  # Extract the first word of "${ac_tool_prefix}mt", so it can be a program name with args.-set dummy ${ac_tool_prefix}mt; ac_word=$2-{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5-printf %s "checking for $ac_word... " >&6; }-if test ${ac_cv_prog_MANIFEST_TOOL+y}-then :-  printf %s "(cached) " >&6-else case e in #(-  e) if test -n "$MANIFEST_TOOL"; then-  ac_cv_prog_MANIFEST_TOOL="$MANIFEST_TOOL" # Let the user override the test.-else-as_save_IFS=$IFS; IFS=$PATH_SEPARATOR-for as_dir in $PATH-do-  IFS=$as_save_IFS-  case $as_dir in #(((-    '') as_dir=./ ;;-    */) ;;-    *) as_dir=$as_dir/ ;;-  esac-    for ac_exec_ext in '' $ac_executable_extensions; do-  if as_fn_executable_p "$as_dir$ac_word$ac_exec_ext"; then-    ac_cv_prog_MANIFEST_TOOL="${ac_tool_prefix}mt"-    printf "%s\n" "$as_me:${as_lineno-$LINENO}: found $as_dir$ac_word$ac_exec_ext" >&5-    break 2-  fi-done-  done-IFS=$as_save_IFS--fi ;;-esac-fi-MANIFEST_TOOL=$ac_cv_prog_MANIFEST_TOOL-if test -n "$MANIFEST_TOOL"; then-  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $MANIFEST_TOOL" >&5-printf "%s\n" "$MANIFEST_TOOL" >&6; }-else-  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5-printf "%s\n" "no" >&6; }-fi---fi-if test -z "$ac_cv_prog_MANIFEST_TOOL"; then-  ac_ct_MANIFEST_TOOL=$MANIFEST_TOOL-  # Extract the first word of "mt", so it can be a program name with args.-set dummy mt; ac_word=$2-{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5-printf %s "checking for $ac_word... " >&6; }-if test ${ac_cv_prog_ac_ct_MANIFEST_TOOL+y}-then :-  printf %s "(cached) " >&6-else case e in #(-  e) if test -n "$ac_ct_MANIFEST_TOOL"; then-  ac_cv_prog_ac_ct_MANIFEST_TOOL="$ac_ct_MANIFEST_TOOL" # Let the user override the test.-else-as_save_IFS=$IFS; IFS=$PATH_SEPARATOR-for as_dir in $PATH-do-  IFS=$as_save_IFS-  case $as_dir in #(((-    '') as_dir=./ ;;-    */) ;;-    *) as_dir=$as_dir/ ;;-  esac-    for ac_exec_ext in '' $ac_executable_extensions; do-  if as_fn_executable_p "$as_dir$ac_word$ac_exec_ext"; then-    ac_cv_prog_ac_ct_MANIFEST_TOOL="mt"-    printf "%s\n" "$as_me:${as_lineno-$LINENO}: found $as_dir$ac_word$ac_exec_ext" >&5-    break 2-  fi-done-  done-IFS=$as_save_IFS--fi ;;-esac-fi-ac_ct_MANIFEST_TOOL=$ac_cv_prog_ac_ct_MANIFEST_TOOL-if test -n "$ac_ct_MANIFEST_TOOL"; then-  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_ct_MANIFEST_TOOL" >&5-printf "%s\n" "$ac_ct_MANIFEST_TOOL" >&6; }-else-  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5-printf "%s\n" "no" >&6; }-fi--  if test "x$ac_ct_MANIFEST_TOOL" = x; then-    MANIFEST_TOOL=":"-  else-    case $cross_compiling:$ac_tool_warned in-yes:)-{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: WARNING: using cross tools not prefixed with host triplet" >&5-printf "%s\n" "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;}-ac_tool_warned=yes ;;-esac-    MANIFEST_TOOL=$ac_ct_MANIFEST_TOOL-  fi-else-  MANIFEST_TOOL="$ac_cv_prog_MANIFEST_TOOL"-fi--test -z "$MANIFEST_TOOL" && MANIFEST_TOOL=mt-{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking if $MANIFEST_TOOL is a manifest tool" >&5-printf %s "checking if $MANIFEST_TOOL is a manifest tool... " >&6; }-if test ${lt_cv_path_manifest_tool+y}-then :-  printf %s "(cached) " >&6-else case e in #(-  e) lt_cv_path_manifest_tool=no-  echo "$as_me:$LINENO: $MANIFEST_TOOL '-?'" >&5-  $MANIFEST_TOOL '-?' 2>conftest.err > conftest.out-  cat conftest.err >&5-  if $GREP 'Manifest Tool' conftest.out > /dev/null; then-    lt_cv_path_manifest_tool=yes-  fi-  rm -f conftest* ;;-esac-fi-{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $lt_cv_path_manifest_tool" >&5-printf "%s\n" "$lt_cv_path_manifest_tool" >&6; }-if test yes != "$lt_cv_path_manifest_tool"; then-  MANIFEST_TOOL=:-fi-------  case $host_os in-    rhapsody* | darwin*)-    if test -n "$ac_tool_prefix"; then-  # Extract the first word of "${ac_tool_prefix}dsymutil", so it can be a program name with args.-set dummy ${ac_tool_prefix}dsymutil; ac_word=$2-{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5-printf %s "checking for $ac_word... " >&6; }-if test ${ac_cv_prog_DSYMUTIL+y}-then :-  printf %s "(cached) " >&6-else case e in #(-  e) if test -n "$DSYMUTIL"; then-  ac_cv_prog_DSYMUTIL="$DSYMUTIL" # Let the user override the test.-else-as_save_IFS=$IFS; IFS=$PATH_SEPARATOR-for as_dir in $PATH-do-  IFS=$as_save_IFS-  case $as_dir in #(((-    '') as_dir=./ ;;-    */) ;;-    *) as_dir=$as_dir/ ;;-  esac-    for ac_exec_ext in '' $ac_executable_extensions; do-  if as_fn_executable_p "$as_dir$ac_word$ac_exec_ext"; then-    ac_cv_prog_DSYMUTIL="${ac_tool_prefix}dsymutil"-    printf "%s\n" "$as_me:${as_lineno-$LINENO}: found $as_dir$ac_word$ac_exec_ext" >&5-    break 2-  fi-done-  done-IFS=$as_save_IFS--fi ;;-esac-fi-DSYMUTIL=$ac_cv_prog_DSYMUTIL-if test -n "$DSYMUTIL"; then-  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $DSYMUTIL" >&5-printf "%s\n" "$DSYMUTIL" >&6; }-else-  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5-printf "%s\n" "no" >&6; }-fi---fi-if test -z "$ac_cv_prog_DSYMUTIL"; then-  ac_ct_DSYMUTIL=$DSYMUTIL-  # Extract the first word of "dsymutil", so it can be a program name with args.-set dummy dsymutil; ac_word=$2-{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5-printf %s "checking for $ac_word... " >&6; }-if test ${ac_cv_prog_ac_ct_DSYMUTIL+y}-then :-  printf %s "(cached) " >&6-else case e in #(-  e) if test -n "$ac_ct_DSYMUTIL"; then-  ac_cv_prog_ac_ct_DSYMUTIL="$ac_ct_DSYMUTIL" # Let the user override the test.-else-as_save_IFS=$IFS; IFS=$PATH_SEPARATOR-for as_dir in $PATH-do-  IFS=$as_save_IFS-  case $as_dir in #(((-    '') as_dir=./ ;;-    */) ;;-    *) as_dir=$as_dir/ ;;-  esac-    for ac_exec_ext in '' $ac_executable_extensions; do-  if as_fn_executable_p "$as_dir$ac_word$ac_exec_ext"; then-    ac_cv_prog_ac_ct_DSYMUTIL="dsymutil"-    printf "%s\n" "$as_me:${as_lineno-$LINENO}: found $as_dir$ac_word$ac_exec_ext" >&5-    break 2-  fi-done-  done-IFS=$as_save_IFS--fi ;;-esac-fi-ac_ct_DSYMUTIL=$ac_cv_prog_ac_ct_DSYMUTIL-if test -n "$ac_ct_DSYMUTIL"; then-  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_ct_DSYMUTIL" >&5-printf "%s\n" "$ac_ct_DSYMUTIL" >&6; }-else-  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5-printf "%s\n" "no" >&6; }-fi--  if test "x$ac_ct_DSYMUTIL" = x; then-    DSYMUTIL=":"-  else-    case $cross_compiling:$ac_tool_warned in-yes:)-{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: WARNING: using cross tools not prefixed with host triplet" >&5-printf "%s\n" "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;}-ac_tool_warned=yes ;;-esac-    DSYMUTIL=$ac_ct_DSYMUTIL-  fi-else-  DSYMUTIL="$ac_cv_prog_DSYMUTIL"-fi--    if test -n "$ac_tool_prefix"; then-  # Extract the first word of "${ac_tool_prefix}nmedit", so it can be a program name with args.-set dummy ${ac_tool_prefix}nmedit; ac_word=$2-{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5-printf %s "checking for $ac_word... " >&6; }-if test ${ac_cv_prog_NMEDIT+y}-then :-  printf %s "(cached) " >&6-else case e in #(-  e) if test -n "$NMEDIT"; then-  ac_cv_prog_NMEDIT="$NMEDIT" # Let the user override the test.-else-as_save_IFS=$IFS; IFS=$PATH_SEPARATOR-for as_dir in $PATH-do-  IFS=$as_save_IFS-  case $as_dir in #(((-    '') as_dir=./ ;;-    */) ;;-    *) as_dir=$as_dir/ ;;-  esac-    for ac_exec_ext in '' $ac_executable_extensions; do-  if as_fn_executable_p "$as_dir$ac_word$ac_exec_ext"; then-    ac_cv_prog_NMEDIT="${ac_tool_prefix}nmedit"-    printf "%s\n" "$as_me:${as_lineno-$LINENO}: found $as_dir$ac_word$ac_exec_ext" >&5-    break 2-  fi-done-  done-IFS=$as_save_IFS--fi ;;-esac-fi-NMEDIT=$ac_cv_prog_NMEDIT-if test -n "$NMEDIT"; then-  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $NMEDIT" >&5-printf "%s\n" "$NMEDIT" >&6; }-else-  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5-printf "%s\n" "no" >&6; }-fi---fi-if test -z "$ac_cv_prog_NMEDIT"; then-  ac_ct_NMEDIT=$NMEDIT-  # Extract the first word of "nmedit", so it can be a program name with args.-set dummy nmedit; ac_word=$2-{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5-printf %s "checking for $ac_word... " >&6; }-if test ${ac_cv_prog_ac_ct_NMEDIT+y}-then :-  printf %s "(cached) " >&6-else case e in #(-  e) if test -n "$ac_ct_NMEDIT"; then-  ac_cv_prog_ac_ct_NMEDIT="$ac_ct_NMEDIT" # Let the user override the test.-else-as_save_IFS=$IFS; IFS=$PATH_SEPARATOR-for as_dir in $PATH-do-  IFS=$as_save_IFS-  case $as_dir in #(((-    '') as_dir=./ ;;-    */) ;;-    *) as_dir=$as_dir/ ;;-  esac-    for ac_exec_ext in '' $ac_executable_extensions; do-  if as_fn_executable_p "$as_dir$ac_word$ac_exec_ext"; then-    ac_cv_prog_ac_ct_NMEDIT="nmedit"-    printf "%s\n" "$as_me:${as_lineno-$LINENO}: found $as_dir$ac_word$ac_exec_ext" >&5-    break 2-  fi-done-  done-IFS=$as_save_IFS--fi ;;-esac-fi-ac_ct_NMEDIT=$ac_cv_prog_ac_ct_NMEDIT-if test -n "$ac_ct_NMEDIT"; then-  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_ct_NMEDIT" >&5-printf "%s\n" "$ac_ct_NMEDIT" >&6; }-else-  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5-printf "%s\n" "no" >&6; }-fi--  if test "x$ac_ct_NMEDIT" = x; then-    NMEDIT=":"-  else-    case $cross_compiling:$ac_tool_warned in-yes:)-{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: WARNING: using cross tools not prefixed with host triplet" >&5-printf "%s\n" "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;}-ac_tool_warned=yes ;;-esac-    NMEDIT=$ac_ct_NMEDIT-  fi-else-  NMEDIT="$ac_cv_prog_NMEDIT"-fi--    if test -n "$ac_tool_prefix"; then-  # Extract the first word of "${ac_tool_prefix}lipo", so it can be a program name with args.-set dummy ${ac_tool_prefix}lipo; ac_word=$2-{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5-printf %s "checking for $ac_word... " >&6; }-if test ${ac_cv_prog_LIPO+y}-then :-  printf %s "(cached) " >&6-else case e in #(-  e) if test -n "$LIPO"; then-  ac_cv_prog_LIPO="$LIPO" # Let the user override the test.-else-as_save_IFS=$IFS; IFS=$PATH_SEPARATOR-for as_dir in $PATH-do-  IFS=$as_save_IFS-  case $as_dir in #(((-    '') as_dir=./ ;;-    */) ;;-    *) as_dir=$as_dir/ ;;-  esac-    for ac_exec_ext in '' $ac_executable_extensions; do-  if as_fn_executable_p "$as_dir$ac_word$ac_exec_ext"; then-    ac_cv_prog_LIPO="${ac_tool_prefix}lipo"-    printf "%s\n" "$as_me:${as_lineno-$LINENO}: found $as_dir$ac_word$ac_exec_ext" >&5-    break 2-  fi-done-  done-IFS=$as_save_IFS--fi ;;-esac-fi-LIPO=$ac_cv_prog_LIPO-if test -n "$LIPO"; then-  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $LIPO" >&5-printf "%s\n" "$LIPO" >&6; }-else-  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5-printf "%s\n" "no" >&6; }-fi---fi-if test -z "$ac_cv_prog_LIPO"; then-  ac_ct_LIPO=$LIPO-  # Extract the first word of "lipo", so it can be a program name with args.-set dummy lipo; ac_word=$2-{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5-printf %s "checking for $ac_word... " >&6; }-if test ${ac_cv_prog_ac_ct_LIPO+y}-then :-  printf %s "(cached) " >&6-else case e in #(-  e) if test -n "$ac_ct_LIPO"; then-  ac_cv_prog_ac_ct_LIPO="$ac_ct_LIPO" # Let the user override the test.-else-as_save_IFS=$IFS; IFS=$PATH_SEPARATOR-for as_dir in $PATH-do-  IFS=$as_save_IFS-  case $as_dir in #(((-    '') as_dir=./ ;;-    */) ;;-    *) as_dir=$as_dir/ ;;-  esac-    for ac_exec_ext in '' $ac_executable_extensions; do-  if as_fn_executable_p "$as_dir$ac_word$ac_exec_ext"; then-    ac_cv_prog_ac_ct_LIPO="lipo"-    printf "%s\n" "$as_me:${as_lineno-$LINENO}: found $as_dir$ac_word$ac_exec_ext" >&5-    break 2-  fi-done-  done-IFS=$as_save_IFS--fi ;;-esac-fi-ac_ct_LIPO=$ac_cv_prog_ac_ct_LIPO-if test -n "$ac_ct_LIPO"; then-  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_ct_LIPO" >&5-printf "%s\n" "$ac_ct_LIPO" >&6; }-else-  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5-printf "%s\n" "no" >&6; }-fi--  if test "x$ac_ct_LIPO" = x; then-    LIPO=":"-  else-    case $cross_compiling:$ac_tool_warned in-yes:)-{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: WARNING: using cross tools not prefixed with host triplet" >&5-printf "%s\n" "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;}-ac_tool_warned=yes ;;-esac-    LIPO=$ac_ct_LIPO-  fi-else-  LIPO="$ac_cv_prog_LIPO"-fi--    if test -n "$ac_tool_prefix"; then-  # Extract the first word of "${ac_tool_prefix}otool", so it can be a program name with args.-set dummy ${ac_tool_prefix}otool; ac_word=$2-{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5-printf %s "checking for $ac_word... " >&6; }-if test ${ac_cv_prog_OTOOL+y}-then :-  printf %s "(cached) " >&6-else case e in #(-  e) if test -n "$OTOOL"; then-  ac_cv_prog_OTOOL="$OTOOL" # Let the user override the test.-else-as_save_IFS=$IFS; IFS=$PATH_SEPARATOR-for as_dir in $PATH-do-  IFS=$as_save_IFS-  case $as_dir in #(((-    '') as_dir=./ ;;-    */) ;;-    *) as_dir=$as_dir/ ;;-  esac-    for ac_exec_ext in '' $ac_executable_extensions; do-  if as_fn_executable_p "$as_dir$ac_word$ac_exec_ext"; then-    ac_cv_prog_OTOOL="${ac_tool_prefix}otool"-    printf "%s\n" "$as_me:${as_lineno-$LINENO}: found $as_dir$ac_word$ac_exec_ext" >&5-    break 2-  fi-done-  done-IFS=$as_save_IFS--fi ;;-esac-fi-OTOOL=$ac_cv_prog_OTOOL-if test -n "$OTOOL"; then-  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $OTOOL" >&5-printf "%s\n" "$OTOOL" >&6; }-else-  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5-printf "%s\n" "no" >&6; }-fi---fi-if test -z "$ac_cv_prog_OTOOL"; then-  ac_ct_OTOOL=$OTOOL-  # Extract the first word of "otool", so it can be a program name with args.-set dummy otool; ac_word=$2-{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5-printf %s "checking for $ac_word... " >&6; }-if test ${ac_cv_prog_ac_ct_OTOOL+y}-then :-  printf %s "(cached) " >&6-else case e in #(-  e) if test -n "$ac_ct_OTOOL"; then-  ac_cv_prog_ac_ct_OTOOL="$ac_ct_OTOOL" # Let the user override the test.-else-as_save_IFS=$IFS; IFS=$PATH_SEPARATOR-for as_dir in $PATH-do-  IFS=$as_save_IFS-  case $as_dir in #(((-    '') as_dir=./ ;;-    */) ;;-    *) as_dir=$as_dir/ ;;-  esac-    for ac_exec_ext in '' $ac_executable_extensions; do-  if as_fn_executable_p "$as_dir$ac_word$ac_exec_ext"; then-    ac_cv_prog_ac_ct_OTOOL="otool"-    printf "%s\n" "$as_me:${as_lineno-$LINENO}: found $as_dir$ac_word$ac_exec_ext" >&5-    break 2-  fi-done-  done-IFS=$as_save_IFS--fi ;;-esac-fi-ac_ct_OTOOL=$ac_cv_prog_ac_ct_OTOOL-if test -n "$ac_ct_OTOOL"; then-  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_ct_OTOOL" >&5-printf "%s\n" "$ac_ct_OTOOL" >&6; }-else-  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5-printf "%s\n" "no" >&6; }-fi--  if test "x$ac_ct_OTOOL" = x; then-    OTOOL=":"-  else-    case $cross_compiling:$ac_tool_warned in-yes:)-{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: WARNING: using cross tools not prefixed with host triplet" >&5-printf "%s\n" "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;}-ac_tool_warned=yes ;;-esac-    OTOOL=$ac_ct_OTOOL-  fi-else-  OTOOL="$ac_cv_prog_OTOOL"-fi--    if test -n "$ac_tool_prefix"; then-  # Extract the first word of "${ac_tool_prefix}otool64", so it can be a program name with args.-set dummy ${ac_tool_prefix}otool64; ac_word=$2-{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5-printf %s "checking for $ac_word... " >&6; }-if test ${ac_cv_prog_OTOOL64+y}-then :-  printf %s "(cached) " >&6-else case e in #(-  e) if test -n "$OTOOL64"; then-  ac_cv_prog_OTOOL64="$OTOOL64" # Let the user override the test.-else-as_save_IFS=$IFS; IFS=$PATH_SEPARATOR-for as_dir in $PATH-do-  IFS=$as_save_IFS-  case $as_dir in #(((-    '') as_dir=./ ;;-    */) ;;-    *) as_dir=$as_dir/ ;;-  esac-    for ac_exec_ext in '' $ac_executable_extensions; do-  if as_fn_executable_p "$as_dir$ac_word$ac_exec_ext"; then-    ac_cv_prog_OTOOL64="${ac_tool_prefix}otool64"-    printf "%s\n" "$as_me:${as_lineno-$LINENO}: found $as_dir$ac_word$ac_exec_ext" >&5-    break 2-  fi-done-  done-IFS=$as_save_IFS--fi ;;-esac-fi-OTOOL64=$ac_cv_prog_OTOOL64-if test -n "$OTOOL64"; then-  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $OTOOL64" >&5-printf "%s\n" "$OTOOL64" >&6; }-else-  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5-printf "%s\n" "no" >&6; }-fi---fi-if test -z "$ac_cv_prog_OTOOL64"; then-  ac_ct_OTOOL64=$OTOOL64-  # Extract the first word of "otool64", so it can be a program name with args.-set dummy otool64; ac_word=$2-{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5-printf %s "checking for $ac_word... " >&6; }-if test ${ac_cv_prog_ac_ct_OTOOL64+y}-then :-  printf %s "(cached) " >&6-else case e in #(-  e) if test -n "$ac_ct_OTOOL64"; then-  ac_cv_prog_ac_ct_OTOOL64="$ac_ct_OTOOL64" # Let the user override the test.-else-as_save_IFS=$IFS; IFS=$PATH_SEPARATOR-for as_dir in $PATH-do-  IFS=$as_save_IFS-  case $as_dir in #(((-    '') as_dir=./ ;;-    */) ;;-    *) as_dir=$as_dir/ ;;-  esac-    for ac_exec_ext in '' $ac_executable_extensions; do-  if as_fn_executable_p "$as_dir$ac_word$ac_exec_ext"; then-    ac_cv_prog_ac_ct_OTOOL64="otool64"-    printf "%s\n" "$as_me:${as_lineno-$LINENO}: found $as_dir$ac_word$ac_exec_ext" >&5-    break 2-  fi-done-  done-IFS=$as_save_IFS--fi ;;-esac-fi-ac_ct_OTOOL64=$ac_cv_prog_ac_ct_OTOOL64-if test -n "$ac_ct_OTOOL64"; then-  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_ct_OTOOL64" >&5-printf "%s\n" "$ac_ct_OTOOL64" >&6; }-else-  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5-printf "%s\n" "no" >&6; }-fi--  if test "x$ac_ct_OTOOL64" = x; then-    OTOOL64=":"-  else-    case $cross_compiling:$ac_tool_warned in-yes:)-{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: WARNING: using cross tools not prefixed with host triplet" >&5-printf "%s\n" "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;}-ac_tool_warned=yes ;;-esac-    OTOOL64=$ac_ct_OTOOL64-  fi-else-  OTOOL64="$ac_cv_prog_OTOOL64"-fi----------------------------    { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for -single_module linker flag" >&5-printf %s "checking for -single_module linker flag... " >&6; }-if test ${lt_cv_apple_cc_single_mod+y}-then :-  printf %s "(cached) " >&6-else case e in #(-  e) lt_cv_apple_cc_single_mod=no-      if test -z "$LT_MULTI_MODULE"; then-	# By default we will add the -single_module flag. You can override-	# by either setting the environment variable LT_MULTI_MODULE-	# non-empty at configure time, or by adding -multi_module to the-	# link flags.-	rm -rf libconftest.dylib*-	echo "int foo(void){return 1;}" > conftest.c-	echo "$LTCC $LTCFLAGS $LDFLAGS -o libconftest.dylib \--dynamiclib -Wl,-single_module conftest.c" >&5-	$LTCC $LTCFLAGS $LDFLAGS -o libconftest.dylib \-	  -dynamiclib -Wl,-single_module conftest.c 2>conftest.err-        _lt_result=$?-	# If there is a non-empty error log, and "single_module"-	# appears in it, assume the flag caused a linker warning-        if test -s conftest.err && $GREP single_module conftest.err; then-	  cat conftest.err >&5-	# Otherwise, if the output was created with a 0 exit code from-	# the compiler, it worked.-	elif test -f libconftest.dylib && test 0 = "$_lt_result"; then-	  lt_cv_apple_cc_single_mod=yes-	else-	  cat conftest.err >&5-	fi-	rm -rf libconftest.dylib*-	rm -f conftest.*-      fi ;;-esac-fi-{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $lt_cv_apple_cc_single_mod" >&5-printf "%s\n" "$lt_cv_apple_cc_single_mod" >&6; }--    # Feature test to disable chained fixups since it is not-    # compatible with '-undefined dynamic_lookup'-    { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for -no_fixup_chains linker flag" >&5-printf %s "checking for -no_fixup_chains linker flag... " >&6; }-if test ${lt_cv_support_no_fixup_chains+y}-then :-  printf %s "(cached) " >&6-else case e in #(-  e)  save_LDFLAGS=$LDFLAGS-        LDFLAGS="$LDFLAGS -Wl,-no_fixup_chains"-        cat confdefs.h - <<_ACEOF >conftest.$ac_ext-/* end confdefs.h.  */--int-main (void)-{--  ;-  return 0;-}-_ACEOF-if ac_fn_c_try_link "$LINENO"-then :-  lt_cv_support_no_fixup_chains=yes-else case e in #(-  e) lt_cv_support_no_fixup_chains=no-         ;;-esac-fi-rm -f core conftest.err conftest.$ac_objext conftest.beam \-    conftest$ac_exeext conftest.$ac_ext-        LDFLAGS=$save_LDFLAGS--     ;;-esac-fi-{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $lt_cv_support_no_fixup_chains" >&5-printf "%s\n" "$lt_cv_support_no_fixup_chains" >&6; }--    { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for -exported_symbols_list linker flag" >&5-printf %s "checking for -exported_symbols_list linker flag... " >&6; }-if test ${lt_cv_ld_exported_symbols_list+y}-then :-  printf %s "(cached) " >&6-else case e in #(-  e) lt_cv_ld_exported_symbols_list=no-      save_LDFLAGS=$LDFLAGS-      echo "_main" > conftest.sym-      LDFLAGS="$LDFLAGS -Wl,-exported_symbols_list,conftest.sym"-      cat confdefs.h - <<_ACEOF >conftest.$ac_ext-/* end confdefs.h.  */--int-main (void)-{--  ;-  return 0;-}-_ACEOF-if ac_fn_c_try_link "$LINENO"-then :-  lt_cv_ld_exported_symbols_list=yes-else case e in #(-  e) lt_cv_ld_exported_symbols_list=no ;;-esac-fi-rm -f core conftest.err conftest.$ac_objext conftest.beam \-    conftest$ac_exeext conftest.$ac_ext-	LDFLAGS=$save_LDFLAGS-     ;;-esac-fi-{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $lt_cv_ld_exported_symbols_list" >&5-printf "%s\n" "$lt_cv_ld_exported_symbols_list" >&6; }--    { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for -force_load linker flag" >&5-printf %s "checking for -force_load linker flag... " >&6; }-if test ${lt_cv_ld_force_load+y}-then :-  printf %s "(cached) " >&6-else case e in #(-  e) lt_cv_ld_force_load=no-      cat > conftest.c << _LT_EOF-int forced_loaded() { return 2;}-_LT_EOF-      echo "$LTCC $LTCFLAGS -c -o conftest.o conftest.c" >&5-      $LTCC $LTCFLAGS -c -o conftest.o conftest.c 2>&5-      echo "$AR $AR_FLAGS libconftest.a conftest.o" >&5-      $AR $AR_FLAGS libconftest.a conftest.o 2>&5-      echo "$RANLIB libconftest.a" >&5-      $RANLIB libconftest.a 2>&5-      cat > conftest.c << _LT_EOF-int main(void) { return 0;}-_LT_EOF-      echo "$LTCC $LTCFLAGS $LDFLAGS -o conftest conftest.c -Wl,-force_load,./libconftest.a" >&5-      $LTCC $LTCFLAGS $LDFLAGS -o conftest conftest.c -Wl,-force_load,./libconftest.a 2>conftest.err-      _lt_result=$?-      if test -s conftest.err && $GREP force_load conftest.err; then-	cat conftest.err >&5-      elif test -f conftest && test 0 = "$_lt_result" && $GREP forced_load conftest >/dev/null 2>&1; then-	lt_cv_ld_force_load=yes-      else-	cat conftest.err >&5-      fi-        rm -f conftest.err libconftest.a conftest conftest.c-        rm -rf conftest.dSYM-     ;;-esac-fi-{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $lt_cv_ld_force_load" >&5-printf "%s\n" "$lt_cv_ld_force_load" >&6; }-    case $host_os in-    rhapsody* | darwin1.[012])-      _lt_dar_allow_undefined='$wl-undefined ${wl}suppress' ;;-    darwin1.*)-      _lt_dar_allow_undefined='$wl-flat_namespace $wl-undefined ${wl}suppress' ;;-    darwin*)-      case $MACOSX_DEPLOYMENT_TARGET,$host in-        10.[012],*|,*powerpc*-darwin[5-8]*)-          _lt_dar_allow_undefined='$wl-flat_namespace $wl-undefined ${wl}suppress' ;;-        *)-          _lt_dar_allow_undefined='$wl-undefined ${wl}dynamic_lookup'-          if test yes = "$lt_cv_support_no_fixup_chains"; then-            as_fn_append _lt_dar_allow_undefined ' $wl-no_fixup_chains'-          fi-        ;;-      esac-    ;;-  esac-    if test yes = "$lt_cv_apple_cc_single_mod"; then-      _lt_dar_single_mod='$single_module'-    fi-    _lt_dar_needs_single_mod=no-    case $host_os in-    rhapsody* | darwin1.*)-      _lt_dar_needs_single_mod=yes ;;-    darwin*)-      # When targeting Mac OS X 10.4 (darwin 8) or later,-      # -single_module is the default and -multi_module is unsupported.-      # The toolchain on macOS 10.14 (darwin 18) and later cannot-      # target any OS version that needs -single_module.-      case ${MACOSX_DEPLOYMENT_TARGET-10.0},$host in-      10.0,*-darwin[567].*|10.[0-3],*-darwin[5-9].*|10.[0-3],*-darwin1[0-7].*)-        _lt_dar_needs_single_mod=yes ;;-      esac-    ;;-    esac-    if test yes = "$lt_cv_ld_exported_symbols_list"; then-      _lt_dar_export_syms=' $wl-exported_symbols_list,$output_objdir/$libname-symbols.expsym'-    else-      _lt_dar_export_syms='~$NMEDIT -s $output_objdir/$libname-symbols.expsym $lib'-    fi-    if test : != "$DSYMUTIL" && test no = "$lt_cv_ld_force_load"; then-      _lt_dsymutil='~$DSYMUTIL $lib || :'-    else-      _lt_dsymutil=-    fi-    ;;-  esac--# func_munge_path_list VARIABLE PATH-# ------------------------------------# VARIABLE is name of variable containing _space_ separated list of-# directories to be munged by the contents of PATH, which is string-# having a format:-# "DIR[:DIR]:"-#       string "DIR[ DIR]" will be prepended to VARIABLE-# ":DIR[:DIR]"-#       string "DIR[ DIR]" will be appended to VARIABLE-# "DIRP[:DIRP]::[DIRA:]DIRA"-#       string "DIRP[ DIRP]" will be prepended to VARIABLE and string-#       "DIRA[ DIRA]" will be appended to VARIABLE-# "DIR[:DIR]"-#       VARIABLE will be replaced by "DIR[ DIR]"-func_munge_path_list ()-{-    case x$2 in-    x)-        ;;-    *:)-        eval $1=\"`$ECHO $2 | $SED 's/:/ /g'` \$$1\"-        ;;-    x:*)-        eval $1=\"\$$1 `$ECHO $2 | $SED 's/:/ /g'`\"-        ;;-    *::*)-        eval $1=\"\$$1\ `$ECHO $2 | $SED -e 's/.*:://' -e 's/:/ /g'`\"-        eval $1=\"`$ECHO $2 | $SED -e 's/::.*//' -e 's/:/ /g'`\ \$$1\"-        ;;-    *)-        eval $1=\"`$ECHO $2 | $SED 's/:/ /g'`\"-        ;;-    esac-}--ac_header= ac_cache=-for ac_item in $ac_header_c_list-do-  if test $ac_cache; then-    ac_fn_c_check_header_compile "$LINENO" $ac_header ac_cv_header_$ac_cache "$ac_includes_default"-    if eval test \"x\$ac_cv_header_$ac_cache\" = xyes; then-      printf "%s\n" "#define $ac_item 1" >> confdefs.h-    fi-    ac_header= ac_cache=-  elif test $ac_header; then-    ac_cache=$ac_item-  else-    ac_header=$ac_item-  fi-done---------if test $ac_cv_header_stdlib_h = yes && test $ac_cv_header_string_h = yes-then :--printf "%s\n" "#define STDC_HEADERS 1" >>confdefs.h--fi-ac_fn_c_check_header_compile "$LINENO" "dlfcn.h" "ac_cv_header_dlfcn_h" "$ac_includes_default-"-if test "x$ac_cv_header_dlfcn_h" = xyes-then :-  printf "%s\n" "#define HAVE_DLFCN_H 1" >>confdefs.h--fi-----func_stripname_cnf ()-{-  case $2 in-  .*) func_stripname_result=`$ECHO "$3" | $SED "s%^$1%%; s%\\\\$2\$%%"`;;-  *)  func_stripname_result=`$ECHO "$3" | $SED "s%^$1%%; s%$2\$%%"`;;-  esac-} # func_stripname_cnf------# Set options----        enable_dlopen=no---  enable_win32_dll=no---            # Check whether --enable-shared was given.-if test ${enable_shared+y}-then :-  enableval=$enable_shared; p=${PACKAGE-default}-    case $enableval in-    yes) enable_shared=yes ;;-    no) enable_shared=no ;;-    *)-      enable_shared=no-      # Look at the argument we got.  We use all the common list separators.-      lt_save_ifs=$IFS; IFS=$IFS$PATH_SEPARATOR,-      for pkg in $enableval; do-	IFS=$lt_save_ifs-	if test "X$pkg" = "X$p"; then-	  enable_shared=yes-	fi-      done-      IFS=$lt_save_ifs-      ;;-    esac-else case e in #(-  e) enable_shared=yes ;;-esac-fi----------  # Check whether --enable-static was given.-if test ${enable_static+y}-then :-  enableval=$enable_static; p=${PACKAGE-default}-    case $enableval in-    yes) enable_static=yes ;;-    no) enable_static=no ;;-    *)-     enable_static=no-      # Look at the argument we got.  We use all the common list separators.-      lt_save_ifs=$IFS; IFS=$IFS$PATH_SEPARATOR,-      for pkg in $enableval; do-	IFS=$lt_save_ifs-	if test "X$pkg" = "X$p"; then-	  enable_static=yes-	fi-      done-      IFS=$lt_save_ifs-      ;;-    esac-else case e in #(-  e) enable_static=yes ;;-esac-fi----------  # Check whether --enable-pic was given.-if test ${enable_pic+y}-then :-  enableval=$enable_pic; lt_p=${PACKAGE-default}-     case $enableval in-     yes|no) pic_mode=$enableval ;;-     *)-       pic_mode=default-       # Look at the argument we got.  We use all the common list separators.-       lt_save_ifs=$IFS; IFS=$IFS$PATH_SEPARATOR,-       for lt_pkg in $enableval; do-	 IFS=$lt_save_ifs-	 if test "X$lt_pkg" = "X$lt_p"; then-	   pic_mode=yes-	 fi-       done-       IFS=$lt_save_ifs-       ;;-     esac-else case e in #(-  e)           # Check whether --with-pic was given.-if test ${with_pic+y}-then :-  withval=$with_pic; lt_p=${PACKAGE-default}-	 case $withval in-	 yes|no) pic_mode=$withval ;;-	 *)-	   pic_mode=default-	   # Look at the argument we got.  We use all the common list separators.-	   lt_save_ifs=$IFS; IFS=$IFS$PATH_SEPARATOR,-	   for lt_pkg in $withval; do-	     IFS=$lt_save_ifs-	     if test "X$lt_pkg" = "X$lt_p"; then-	       pic_mode=yes-	     fi-	   done-	   IFS=$lt_save_ifs-	   ;;-	 esac-else case e in #(-  e) pic_mode=default ;;-esac-fi--     ;;-esac-fi---------  # Check whether --enable-fast-install was given.-if test ${enable_fast_install+y}-then :-  enableval=$enable_fast_install; p=${PACKAGE-default}-    case $enableval in-    yes) enable_fast_install=yes ;;-    no) enable_fast_install=no ;;-    *)-      enable_fast_install=no-      # Look at the argument we got.  We use all the common list separators.-      lt_save_ifs=$IFS; IFS=$IFS$PATH_SEPARATOR,-      for pkg in $enableval; do-	IFS=$lt_save_ifs-	if test "X$pkg" = "X$p"; then-	  enable_fast_install=yes-	fi-      done-      IFS=$lt_save_ifs-      ;;-    esac-else case e in #(-  e) enable_fast_install=yes ;;-esac-fi---------  shared_archive_member_spec=-case $host,$enable_shared in-power*-*-aix[5-9]*,yes)-  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking which variant of shared library versioning to provide" >&5-printf %s "checking which variant of shared library versioning to provide... " >&6; }-  # Check whether --enable-aix-soname was given.-if test ${enable_aix_soname+y}-then :-  enableval=$enable_aix_soname; case $enableval in-     aix|svr4|both)-       ;;-     *)-       as_fn_error $? "Unknown argument to --enable-aix-soname" "$LINENO" 5-       ;;-     esac-     lt_cv_with_aix_soname=$enable_aix_soname-else case e in #(-  e) # Check whether --with-aix-soname was given.-if test ${with_aix_soname+y}-then :-  withval=$with_aix_soname; case $withval in-         aix|svr4|both)-           ;;-         *)-           as_fn_error $? "Unknown argument to --with-aix-soname" "$LINENO" 5-           ;;-         esac-         lt_cv_with_aix_soname=$with_aix_soname-else case e in #(-  e) if test ${lt_cv_with_aix_soname+y}-then :-  printf %s "(cached) " >&6-else case e in #(-  e) lt_cv_with_aix_soname=aix ;;-esac-fi- ;;-esac-fi--     enable_aix_soname=$lt_cv_with_aix_soname ;;-esac-fi--  with_aix_soname=$enable_aix_soname-  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $with_aix_soname" >&5-printf "%s\n" "$with_aix_soname" >&6; }-  if test aix != "$with_aix_soname"; then-    # For the AIX way of multilib, we name the shared archive member-    # based on the bitwidth used, traditionally 'shr.o' or 'shr_64.o',-    # and 'shr.imp' or 'shr_64.imp', respectively, for the Import File.-    # Even when GNU compilers ignore OBJECT_MODE but need '-maix64' flag,-    # the AIX toolchain works better with OBJECT_MODE set (default 32).-    if test 64 = "${OBJECT_MODE-32}"; then-      shared_archive_member_spec=shr_64-    else-      shared_archive_member_spec=shr-    fi-  fi-  ;;-*)-  with_aix_soname=aix-  ;;-esac-----------# This can be used to rebuild libtool when needed-LIBTOOL_DEPS=$ltmain--# Always use our own libtool.-LIBTOOL='$(SHELL) $(top_builddir)/libtool'-------------------------------test -z "$LN_S" && LN_S="ln -s"---------------if test -n "${ZSH_VERSION+set}"; then-   setopt NO_GLOB_SUBST-fi--{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for objdir" >&5-printf %s "checking for objdir... " >&6; }-if test ${lt_cv_objdir+y}-then :-  printf %s "(cached) " >&6-else case e in #(-  e) rm -f .libs 2>/dev/null-mkdir .libs 2>/dev/null-if test -d .libs; then-  lt_cv_objdir=.libs-else-  # MS-DOS does not allow filenames that begin with a dot.-  lt_cv_objdir=_libs-fi-rmdir .libs 2>/dev/null ;;-esac-fi-{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $lt_cv_objdir" >&5-printf "%s\n" "$lt_cv_objdir" >&6; }-objdir=$lt_cv_objdir------printf "%s\n" "#define LT_OBJDIR \"$lt_cv_objdir/\"" >>confdefs.h-----case $host_os in-aix3*)-  # AIX sometimes has problems with the GCC collect2 program.  For some-  # reason, if we set the COLLECT_NAMES environment variable, the problems-  # vanish in a puff of smoke.-  if test set != "${COLLECT_NAMES+set}"; then-    COLLECT_NAMES=-    export COLLECT_NAMES-  fi-  ;;-esac--# Global variables:-ofile=libtool-can_build_shared=yes--# All known linkers require a '.a' archive for static linking (except MSVC and-# ICC, which need '.lib').-libext=a--with_gnu_ld=$lt_cv_prog_gnu_ld--old_CC=$CC-old_CFLAGS=$CFLAGS--# Set sane defaults for various variables-test -z "$CC" && CC=cc-test -z "$LTCC" && LTCC=$CC-test -z "$LTCFLAGS" && LTCFLAGS=$CFLAGS-test -z "$LD" && LD=ld-test -z "$ac_objext" && ac_objext=o--func_cc_basename $compiler-cc_basename=$func_cc_basename_result---# Only perform the check for file, if the check method requires it-test -z "$MAGIC_CMD" && MAGIC_CMD=file-case $deplibs_check_method in-file_magic*)-  if test "$file_magic_cmd" = '$MAGIC_CMD'; then-    { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for ${ac_tool_prefix}file" >&5-printf %s "checking for ${ac_tool_prefix}file... " >&6; }-if test ${lt_cv_path_MAGIC_CMD+y}-then :-  printf %s "(cached) " >&6-else case e in #(-  e) case $MAGIC_CMD in-[\\/*] |  ?:[\\/]*)-  lt_cv_path_MAGIC_CMD=$MAGIC_CMD # Let the user override the test with a path.-  ;;-*)-  lt_save_MAGIC_CMD=$MAGIC_CMD-  lt_save_ifs=$IFS; IFS=$PATH_SEPARATOR-  ac_dummy="/usr/bin$PATH_SEPARATOR$PATH"-  for ac_dir in $ac_dummy; do-    IFS=$lt_save_ifs-    test -z "$ac_dir" && ac_dir=.-    if test -f "$ac_dir/${ac_tool_prefix}file"; then-      lt_cv_path_MAGIC_CMD=$ac_dir/"${ac_tool_prefix}file"-      if test -n "$file_magic_test_file"; then-	case $deplibs_check_method in-	"file_magic "*)-	  file_magic_regex=`expr "$deplibs_check_method" : "file_magic \(.*\)"`-	  MAGIC_CMD=$lt_cv_path_MAGIC_CMD-	  if eval $file_magic_cmd \$file_magic_test_file 2> /dev/null |-	    $EGREP "$file_magic_regex" > /dev/null; then-	    :-	  else-	    cat <<_LT_EOF 1>&2--*** Warning: the command libtool uses to detect shared libraries,-*** $file_magic_cmd, produces output that libtool cannot recognize.-*** The result is that libtool may fail to recognize shared libraries-*** as such.  This will affect the creation of libtool libraries that-*** depend on shared libraries, but programs linked with such libtool-*** libraries will work regardless of this problem.  Nevertheless, you-*** may want to report the problem to your system manager and/or to-*** bug-libtool@gnu.org--_LT_EOF-	  fi ;;-	esac-      fi-      break-    fi-  done-  IFS=$lt_save_ifs-  MAGIC_CMD=$lt_save_MAGIC_CMD-  ;;-esac ;;-esac-fi--MAGIC_CMD=$lt_cv_path_MAGIC_CMD-if test -n "$MAGIC_CMD"; then-  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $MAGIC_CMD" >&5-printf "%s\n" "$MAGIC_CMD" >&6; }-else-  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5-printf "%s\n" "no" >&6; }-fi------if test -z "$lt_cv_path_MAGIC_CMD"; then-  if test -n "$ac_tool_prefix"; then-    { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for file" >&5-printf %s "checking for file... " >&6; }-if test ${lt_cv_path_MAGIC_CMD+y}-then :-  printf %s "(cached) " >&6-else case e in #(-  e) case $MAGIC_CMD in-[\\/*] |  ?:[\\/]*)-  lt_cv_path_MAGIC_CMD=$MAGIC_CMD # Let the user override the test with a path.-  ;;-*)-  lt_save_MAGIC_CMD=$MAGIC_CMD-  lt_save_ifs=$IFS; IFS=$PATH_SEPARATOR-  ac_dummy="/usr/bin$PATH_SEPARATOR$PATH"-  for ac_dir in $ac_dummy; do-    IFS=$lt_save_ifs-    test -z "$ac_dir" && ac_dir=.-    if test -f "$ac_dir/file"; then-      lt_cv_path_MAGIC_CMD=$ac_dir/"file"-      if test -n "$file_magic_test_file"; then-	case $deplibs_check_method in-	"file_magic "*)-	  file_magic_regex=`expr "$deplibs_check_method" : "file_magic \(.*\)"`-	  MAGIC_CMD=$lt_cv_path_MAGIC_CMD-	  if eval $file_magic_cmd \$file_magic_test_file 2> /dev/null |-	    $EGREP "$file_magic_regex" > /dev/null; then-	    :-	  else-	    cat <<_LT_EOF 1>&2--*** Warning: the command libtool uses to detect shared libraries,-*** $file_magic_cmd, produces output that libtool cannot recognize.-*** The result is that libtool may fail to recognize shared libraries-*** as such.  This will affect the creation of libtool libraries that-*** depend on shared libraries, but programs linked with such libtool-*** libraries will work regardless of this problem.  Nevertheless, you-*** may want to report the problem to your system manager and/or to-*** bug-libtool@gnu.org--_LT_EOF-	  fi ;;-	esac-      fi-      break-    fi-  done-  IFS=$lt_save_ifs-  MAGIC_CMD=$lt_save_MAGIC_CMD-  ;;-esac ;;-esac-fi--MAGIC_CMD=$lt_cv_path_MAGIC_CMD-if test -n "$MAGIC_CMD"; then-  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $MAGIC_CMD" >&5-printf "%s\n" "$MAGIC_CMD" >&6; }-else-  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5-printf "%s\n" "no" >&6; }-fi---  else-    MAGIC_CMD=:-  fi-fi--  fi-  ;;-esac--# Use C for the default configuration in the libtool script--lt_save_CC=$CC-ac_ext=c-ac_cpp='$CPP $CPPFLAGS'-ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5'-ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5'-ac_compiler_gnu=$ac_cv_c_compiler_gnu---# Source file extension for C test sources.-ac_ext=c--# Object file extension for compiled C test sources.-objext=o-objext=$objext--# Code to be used in simple compile tests-lt_simple_compile_test_code="int some_variable = 0;"--# Code to be used in simple link tests-lt_simple_link_test_code='int main(void){return(0);}'--------# If no C compiler was specified, use CC.-LTCC=${LTCC-"$CC"}--# If no C compiler flags were specified, use CFLAGS.-LTCFLAGS=${LTCFLAGS-"$CFLAGS"}--# Allow CC to be a program name with arguments.-compiler=$CC--# Save the default compiler, since it gets overwritten when the other-# tags are being tested, and _LT_TAGVAR(compiler, []) is a NOP.-compiler_DEFAULT=$CC--# save warnings/boilerplate of simple test code-ac_outfile=conftest.$ac_objext-echo "$lt_simple_compile_test_code" >conftest.$ac_ext-eval "$ac_compile" 2>&1 >/dev/null | $SED '/^$/d; /^ *+/d' >conftest.err-_lt_compiler_boilerplate=`cat conftest.err`-$RM conftest*--ac_outfile=conftest.$ac_objext-echo "$lt_simple_link_test_code" >conftest.$ac_ext-eval "$ac_link" 2>&1 >/dev/null | $SED '/^$/d; /^ *+/d' >conftest.err-_lt_linker_boilerplate=`cat conftest.err`-$RM -r conftest*---## CAVEAT EMPTOR:-## There is no encapsulation within the following macros, do not change-## the running order or otherwise move them around unless you know exactly-## what you are doing...-if test -n "$compiler"; then--lt_prog_compiler_no_builtin_flag=--if test yes = "$GCC"; then-  case $cc_basename in-  nvcc*)-    lt_prog_compiler_no_builtin_flag=' -Xcompiler -fno-builtin' ;;-  *)-    lt_prog_compiler_no_builtin_flag=' -fno-builtin' ;;-  esac--  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking if $compiler supports -fno-rtti -fno-exceptions" >&5-printf %s "checking if $compiler supports -fno-rtti -fno-exceptions... " >&6; }-if test ${lt_cv_prog_compiler_rtti_exceptions+y}-then :-  printf %s "(cached) " >&6-else case e in #(-  e) lt_cv_prog_compiler_rtti_exceptions=no-   ac_outfile=conftest.$ac_objext-   echo "$lt_simple_compile_test_code" > conftest.$ac_ext-   lt_compiler_flag="-fno-rtti -fno-exceptions"  ## exclude from sc_useless_quotes_in_assignment-   # Insert the option either (1) after the last *FLAGS variable, or-   # (2) before a word containing "conftest.", or (3) at the end.-   # Note that $ac_compile itself does not contain backslashes and begins-   # with a dollar sign (not a hyphen), so the echo should work correctly.-   # The option is referenced via a variable to avoid confusing sed.-   lt_compile=`echo "$ac_compile" | $SED \-   -e 's:.*FLAGS}\{0,1\} :&$lt_compiler_flag :; t' \-   -e 's: [^ ]*conftest\.: $lt_compiler_flag&:; t' \-   -e 's:$: $lt_compiler_flag:'`-   (eval echo "\"\$as_me:$LINENO: $lt_compile\"" >&5)-   (eval "$lt_compile" 2>conftest.err)-   ac_status=$?-   cat conftest.err >&5-   echo "$as_me:$LINENO: \$? = $ac_status" >&5-   if (exit $ac_status) && test -s "$ac_outfile"; then-     # The compiler can only warn and ignore the option if not recognized-     # So say no if there are warnings other than the usual output.-     $ECHO "$_lt_compiler_boilerplate" | $SED '/^$/d' >conftest.exp-     $SED '/^$/d; /^ *+/d' conftest.err >conftest.er2-     if test ! -s conftest.er2 || diff conftest.exp conftest.er2 >/dev/null; then-       lt_cv_prog_compiler_rtti_exceptions=yes-     fi-   fi-   $RM conftest*- ;;-esac-fi-{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $lt_cv_prog_compiler_rtti_exceptions" >&5-printf "%s\n" "$lt_cv_prog_compiler_rtti_exceptions" >&6; }--if test yes = "$lt_cv_prog_compiler_rtti_exceptions"; then-    lt_prog_compiler_no_builtin_flag="$lt_prog_compiler_no_builtin_flag -fno-rtti -fno-exceptions"-else-    :-fi--fi-------  lt_prog_compiler_wl=-lt_prog_compiler_pic=-lt_prog_compiler_static=---  if test yes = "$GCC"; then-    lt_prog_compiler_wl='-Wl,'-    lt_prog_compiler_static='-static'--    case $host_os in-      aix*)-      # All AIX code is PIC.-      if test ia64 = "$host_cpu"; then-	# AIX 5 now supports IA64 processor-	lt_prog_compiler_static='-Bstatic'-      fi-      lt_prog_compiler_pic='-fPIC'-      ;;--    amigaos*)-      case $host_cpu in-      powerpc)-            # see comment about AmigaOS4 .so support-            lt_prog_compiler_pic='-fPIC'-        ;;-      m68k)-            # FIXME: we need at least 68020 code to build shared libraries, but-            # adding the '-m68020' flag to GCC prevents building anything better,-            # like '-m68040'.-            lt_prog_compiler_pic='-m68020 -resident32 -malways-restore-a4'-        ;;-      esac-      ;;--    beos* | irix5* | irix6* | nonstopux* | osf3* | osf4* | osf5*)-      # PIC is the default for these OSes.-      ;;--    mingw* | windows* | cygwin* | pw32* | os2* | cegcc*)-      # This hack is so that the source file can tell whether it is being-      # built for inclusion in a dll (and should export symbols for example).-      # Although the cygwin gcc ignores -fPIC, still need this for old-style-      # (--disable-auto-import) libraries-      lt_prog_compiler_pic='-DDLL_EXPORT'-      case $host_os in-      os2*)-	lt_prog_compiler_static='$wl-static'-	;;-      esac-      ;;--    darwin* | rhapsody*)-      # PIC is the default on this platform-      # Common symbols not allowed in MH_DYLIB files-      lt_prog_compiler_pic='-fno-common'-      ;;--    haiku*)-      # PIC is the default for Haiku.-      # The "-static" flag exists, but is broken.-      lt_prog_compiler_static=-      ;;--    hpux*)-      # PIC is the default for 64-bit PA HP-UX, but not for 32-bit-      # PA HP-UX.  On IA64 HP-UX, PIC is the default but the pic flag-      # sets the default TLS model and affects inlining.-      case $host_cpu in-      hppa*64*)-	# +Z the default-	;;-      *)-	lt_prog_compiler_pic='-fPIC'-	;;-      esac-      ;;--    interix[3-9]*)-      # Interix 3.x gcc -fpic/-fPIC options generate broken code.-      # Instead, we relocate shared libraries at runtime.-      ;;--    msdosdjgpp*)-      # Just because we use GCC doesn't mean we suddenly get shared libraries-      # on systems that don't support them.-      lt_prog_compiler_can_build_shared=no-      enable_shared=no-      ;;--    *nto* | *qnx*)-      # QNX uses GNU C++, but need to define -shared option too, otherwise-      # it will coredump.-      lt_prog_compiler_pic='-fPIC -shared'-      ;;--    sysv4*MP*)-      if test -d /usr/nec; then-	lt_prog_compiler_pic=-Kconform_pic-      fi-      ;;--    *)-      lt_prog_compiler_pic='-fPIC'-      ;;-    esac--    case $cc_basename in-    nvcc*) # Cuda Compiler Driver 2.2-      lt_prog_compiler_wl='-Xlinker '-      if test -n "$lt_prog_compiler_pic"; then-        lt_prog_compiler_pic="-Xcompiler $lt_prog_compiler_pic"-      fi-      ;;-    esac-  else-    # PORTME Check for flag to pass linker flags through the system compiler.-    case $host_os in-    aix*)-      lt_prog_compiler_wl='-Wl,'-      if test ia64 = "$host_cpu"; then-	# AIX 5 now supports IA64 processor-	lt_prog_compiler_static='-Bstatic'-      else-	lt_prog_compiler_static='-bnso -bI:/lib/syscalls.exp'-      fi-      ;;--    darwin* | rhapsody*)-      # PIC is the default on this platform-      # Common symbols not allowed in MH_DYLIB files-      lt_prog_compiler_pic='-fno-common'-      case $cc_basename in-      nagfor*)-        # NAG Fortran compiler-        lt_prog_compiler_wl='-Wl,-Wl,,'-        lt_prog_compiler_pic='-PIC'-        lt_prog_compiler_static='-Bstatic'-        ;;-      esac-      ;;--    mingw* | windows* | cygwin* | pw32* | os2* | cegcc*)-      # This hack is so that the source file can tell whether it is being-      # built for inclusion in a dll (and should export symbols for example).-      lt_prog_compiler_pic='-DDLL_EXPORT'-      case $host_os in-      os2*)-	lt_prog_compiler_static='$wl-static'-	;;-      esac-      ;;--    hpux9* | hpux10* | hpux11*)-      lt_prog_compiler_wl='-Wl,'-      # PIC is the default for IA64 HP-UX and 64-bit HP-UX, but-      # not for PA HP-UX.-      case $host_cpu in-      hppa*64*|ia64*)-	# +Z the default-	;;-      *)-	lt_prog_compiler_pic='+Z'-	;;-      esac-      # Is there a better lt_prog_compiler_static that works with the bundled CC?-      lt_prog_compiler_static='$wl-a ${wl}archive'-      ;;--    irix5* | irix6* | nonstopux*)-      lt_prog_compiler_wl='-Wl,'-      # PIC (with -KPIC) is the default.-      lt_prog_compiler_static='-non_shared'-      ;;--    linux* | k*bsd*-gnu | kopensolaris*-gnu | gnu*)-      case $cc_basename in-      # old Intel for x86_64, which still supported -KPIC.-      ecc*)-	lt_prog_compiler_wl='-Wl,'-	lt_prog_compiler_pic='-KPIC'-	lt_prog_compiler_static='-static'-        ;;-      *flang* | ftn | f18* | f95*)-        # Flang compiler.-	lt_prog_compiler_wl='-Wl,'-	lt_prog_compiler_pic='-fPIC'-	lt_prog_compiler_static='-static'-        ;;-      # icc used to be incompatible with GCC.-      # ICC 10 doesn't accept -KPIC any more.-      icc* | ifort*)-	lt_prog_compiler_wl='-Wl,'-	lt_prog_compiler_pic='-fPIC'-	lt_prog_compiler_static='-static'-        ;;-      # Lahey Fortran 8.1.-      lf95*)-	lt_prog_compiler_wl='-Wl,'-	lt_prog_compiler_pic='--shared'-	lt_prog_compiler_static='--static'-	;;-      nagfor*)-	# NAG Fortran compiler-	lt_prog_compiler_wl='-Wl,-Wl,,'-	lt_prog_compiler_pic='-PIC'-	lt_prog_compiler_static='-Bstatic'-	;;-      tcc*)-	# Fabrice Bellard et al's Tiny C Compiler-	lt_prog_compiler_wl='-Wl,'-	lt_prog_compiler_pic='-fPIC'-	lt_prog_compiler_static='-static'-	;;-      pgcc* | pgf77* | pgf90* | pgf95* | pgfortran*)-        # Portland Group compilers (*not* the Pentium gcc compiler,-	# which looks to be a dead project)-	lt_prog_compiler_wl='-Wl,'-	lt_prog_compiler_pic='-fpic'-	lt_prog_compiler_static='-Bstatic'-        ;;-      ccc*)-        lt_prog_compiler_wl='-Wl,'-        # All Alpha code is PIC.-        lt_prog_compiler_static='-non_shared'-        ;;-      xl* | bgxl* | bgf* | mpixl*)-	# IBM XL C 8.0/Fortran 10.1, 11.1 on PPC and BlueGene-	lt_prog_compiler_wl='-Wl,'-	lt_prog_compiler_pic='-qpic'-	lt_prog_compiler_static='-qstaticlink'-	;;-      *)-	case `$CC -V 2>&1 | $SED 5q` in-	*Sun\ Ceres\ Fortran* | *Sun*Fortran*\ [1-7].* | *Sun*Fortran*\ 8.[0-3]*)-	  # Sun Fortran 8.3 passes all unrecognized flags to the linker-	  lt_prog_compiler_pic='-KPIC'-	  lt_prog_compiler_static='-Bstatic'-	  lt_prog_compiler_wl=''-	  ;;-	*Sun\ F* | *Sun*Fortran*)-	  lt_prog_compiler_pic='-KPIC'-	  lt_prog_compiler_static='-Bstatic'-	  lt_prog_compiler_wl='-Qoption ld '-	  ;;-	*Sun\ C*)-	  # Sun C 5.9-	  lt_prog_compiler_pic='-KPIC'-	  lt_prog_compiler_static='-Bstatic'-	  lt_prog_compiler_wl='-Wl,'-	  ;;-        *Intel*\ [CF]*Compiler*)-	  lt_prog_compiler_wl='-Wl,'-	  lt_prog_compiler_pic='-fPIC'-	  lt_prog_compiler_static='-static'-	  ;;-	*Portland\ Group*)-	  lt_prog_compiler_wl='-Wl,'-	  lt_prog_compiler_pic='-fpic'-	  lt_prog_compiler_static='-Bstatic'-	  ;;-	esac-	;;-      esac-      ;;--    newsos6)-      lt_prog_compiler_pic='-KPIC'-      lt_prog_compiler_static='-Bstatic'-      ;;--    *-mlibc)-      lt_prog_compiler_wl='-Wl,'-      lt_prog_compiler_pic='-fPIC'-      lt_prog_compiler_static='-static'-      ;;--    *nto* | *qnx*)-      # QNX uses GNU C++, but need to define -shared option too, otherwise-      # it will coredump.-      lt_prog_compiler_pic='-fPIC -shared'-      ;;--    osf3* | osf4* | osf5*)-      lt_prog_compiler_wl='-Wl,'-      # All OSF/1 code is PIC.-      lt_prog_compiler_static='-non_shared'-      ;;--    rdos*)-      lt_prog_compiler_static='-non_shared'-      ;;--    serenity*)-      ;;--    solaris*)-      lt_prog_compiler_pic='-KPIC'-      lt_prog_compiler_static='-Bstatic'-      case $cc_basename in-      f77* | f90* | f95* | sunf77* | sunf90* | sunf95*)-	lt_prog_compiler_wl='-Qoption ld ';;-      *)-	lt_prog_compiler_wl='-Wl,';;-      esac-      ;;--    sunos4*)-      lt_prog_compiler_wl='-Qoption ld '-      lt_prog_compiler_pic='-PIC'-      lt_prog_compiler_static='-Bstatic'-      ;;--    sysv4 | sysv4.2uw2* | sysv4.3*)-      lt_prog_compiler_wl='-Wl,'-      lt_prog_compiler_pic='-KPIC'-      lt_prog_compiler_static='-Bstatic'-      ;;--    sysv4*MP*)-      if test -d /usr/nec; then-	lt_prog_compiler_pic='-Kconform_pic'-	lt_prog_compiler_static='-Bstatic'-      fi-      ;;--    sysv5* | unixware* | sco3.2v5* | sco5v6* | OpenUNIX*)-      lt_prog_compiler_wl='-Wl,'-      lt_prog_compiler_pic='-KPIC'-      lt_prog_compiler_static='-Bstatic'-      ;;--    unicos*)-      lt_prog_compiler_wl='-Wl,'-      lt_prog_compiler_can_build_shared=no-      ;;--    uts4*)-      lt_prog_compiler_pic='-pic'-      lt_prog_compiler_static='-Bstatic'-      ;;--    *)-      lt_prog_compiler_can_build_shared=no-      ;;-    esac-  fi--case $host_os in-  # For platforms that do not support PIC, -DPIC is meaningless:-  *djgpp*)-    lt_prog_compiler_pic=-    ;;-  *)-    lt_prog_compiler_pic="$lt_prog_compiler_pic -DPIC"-    ;;-esac--{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for $compiler option to produce PIC" >&5-printf %s "checking for $compiler option to produce PIC... " >&6; }-if test ${lt_cv_prog_compiler_pic+y}-then :-  printf %s "(cached) " >&6-else case e in #(-  e) lt_cv_prog_compiler_pic=$lt_prog_compiler_pic ;;-esac-fi-{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $lt_cv_prog_compiler_pic" >&5-printf "%s\n" "$lt_cv_prog_compiler_pic" >&6; }-lt_prog_compiler_pic=$lt_cv_prog_compiler_pic--#-# Check to make sure the PIC flag actually works.-#-if test -n "$lt_prog_compiler_pic"; then-  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking if $compiler PIC flag $lt_prog_compiler_pic works" >&5-printf %s "checking if $compiler PIC flag $lt_prog_compiler_pic works... " >&6; }-if test ${lt_cv_prog_compiler_pic_works+y}-then :-  printf %s "(cached) " >&6-else case e in #(-  e) lt_cv_prog_compiler_pic_works=no-   ac_outfile=conftest.$ac_objext-   echo "$lt_simple_compile_test_code" > conftest.$ac_ext-   lt_compiler_flag="$lt_prog_compiler_pic -DPIC"  ## exclude from sc_useless_quotes_in_assignment-   # Insert the option either (1) after the last *FLAGS variable, or-   # (2) before a word containing "conftest.", or (3) at the end.-   # Note that $ac_compile itself does not contain backslashes and begins-   # with a dollar sign (not a hyphen), so the echo should work correctly.-   # The option is referenced via a variable to avoid confusing sed.-   lt_compile=`echo "$ac_compile" | $SED \-   -e 's:.*FLAGS}\{0,1\} :&$lt_compiler_flag :; t' \-   -e 's: [^ ]*conftest\.: $lt_compiler_flag&:; t' \-   -e 's:$: $lt_compiler_flag:'`-   (eval echo "\"\$as_me:$LINENO: $lt_compile\"" >&5)-   (eval "$lt_compile" 2>conftest.err)-   ac_status=$?-   cat conftest.err >&5-   echo "$as_me:$LINENO: \$? = $ac_status" >&5-   if (exit $ac_status) && test -s "$ac_outfile"; then-     # The compiler can only warn and ignore the option if not recognized-     # So say no if there are warnings other than the usual output.-     $ECHO "$_lt_compiler_boilerplate" | $SED '/^$/d' >conftest.exp-     $SED '/^$/d; /^ *+/d' conftest.err >conftest.er2-     if test ! -s conftest.er2 || diff conftest.exp conftest.er2 >/dev/null; then-       lt_cv_prog_compiler_pic_works=yes-     fi-   fi-   $RM conftest*- ;;-esac-fi-{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $lt_cv_prog_compiler_pic_works" >&5-printf "%s\n" "$lt_cv_prog_compiler_pic_works" >&6; }--if test yes = "$lt_cv_prog_compiler_pic_works"; then-    case $lt_prog_compiler_pic in-     "" | " "*) ;;-     *) lt_prog_compiler_pic=" $lt_prog_compiler_pic" ;;-     esac-else-    lt_prog_compiler_pic=-     lt_prog_compiler_can_build_shared=no-fi--fi------------#-# Check to make sure the static flag actually works.-#-wl=$lt_prog_compiler_wl eval lt_tmp_static_flag=\"$lt_prog_compiler_static\"-{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking if $compiler static flag $lt_tmp_static_flag works" >&5-printf %s "checking if $compiler static flag $lt_tmp_static_flag works... " >&6; }-if test ${lt_cv_prog_compiler_static_works+y}-then :-  printf %s "(cached) " >&6-else case e in #(-  e) lt_cv_prog_compiler_static_works=no-   save_LDFLAGS=$LDFLAGS-   LDFLAGS="$LDFLAGS $lt_tmp_static_flag"-   echo "$lt_simple_link_test_code" > conftest.$ac_ext-   if (eval $ac_link 2>conftest.err) && test -s conftest$ac_exeext; then-     # The linker can only warn and ignore the option if not recognized-     # So say no if there are warnings-     if test -s conftest.err; then-       # Append any errors to the config.log.-       cat conftest.err 1>&5-       $ECHO "$_lt_linker_boilerplate" | $SED '/^$/d' > conftest.exp-       $SED '/^$/d; /^ *+/d' conftest.err >conftest.er2-       if diff conftest.exp conftest.er2 >/dev/null; then-         lt_cv_prog_compiler_static_works=yes-       fi-     else-       lt_cv_prog_compiler_static_works=yes-     fi-   fi-   $RM -r conftest*-   LDFLAGS=$save_LDFLAGS- ;;-esac-fi-{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $lt_cv_prog_compiler_static_works" >&5-printf "%s\n" "$lt_cv_prog_compiler_static_works" >&6; }--if test yes = "$lt_cv_prog_compiler_static_works"; then-    :-else-    lt_prog_compiler_static=-fi--------  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking if $compiler supports -c -o file.$ac_objext" >&5-printf %s "checking if $compiler supports -c -o file.$ac_objext... " >&6; }-if test ${lt_cv_prog_compiler_c_o+y}-then :-  printf %s "(cached) " >&6-else case e in #(-  e) lt_cv_prog_compiler_c_o=no-   $RM -r conftest 2>/dev/null-   mkdir conftest-   cd conftest-   mkdir out-   echo "$lt_simple_compile_test_code" > conftest.$ac_ext--   lt_compiler_flag="-o out/conftest2.$ac_objext"-   # Insert the option either (1) after the last *FLAGS variable, or-   # (2) before a word containing "conftest.", or (3) at the end.-   # Note that $ac_compile itself does not contain backslashes and begins-   # with a dollar sign (not a hyphen), so the echo should work correctly.-   lt_compile=`echo "$ac_compile" | $SED \-   -e 's:.*FLAGS}\{0,1\} :&$lt_compiler_flag :; t' \-   -e 's: [^ ]*conftest\.: $lt_compiler_flag&:; t' \-   -e 's:$: $lt_compiler_flag:'`-   (eval echo "\"\$as_me:$LINENO: $lt_compile\"" >&5)-   (eval "$lt_compile" 2>out/conftest.err)-   ac_status=$?-   cat out/conftest.err >&5-   echo "$as_me:$LINENO: \$? = $ac_status" >&5-   if (exit $ac_status) && test -s out/conftest2.$ac_objext-   then-     # The compiler can only warn and ignore the option if not recognized-     # So say no if there are warnings-     $ECHO "$_lt_compiler_boilerplate" | $SED '/^$/d' > out/conftest.exp-     $SED '/^$/d; /^ *+/d' out/conftest.err >out/conftest.er2-     if test ! -s out/conftest.er2 || diff out/conftest.exp out/conftest.er2 >/dev/null; then-       lt_cv_prog_compiler_c_o=yes-     fi-   fi-   chmod u+w . 2>&5-   $RM conftest*-   # SGI C++ compiler will create directory out/ii_files/ for-   # template instantiation-   test -d out/ii_files && $RM out/ii_files/* && rmdir out/ii_files-   $RM out/* && rmdir out-   cd ..-   $RM -r conftest-   $RM conftest*- ;;-esac-fi-{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $lt_cv_prog_compiler_c_o" >&5-printf "%s\n" "$lt_cv_prog_compiler_c_o" >&6; }-------  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking if $compiler supports -c -o file.$ac_objext" >&5-printf %s "checking if $compiler supports -c -o file.$ac_objext... " >&6; }-if test ${lt_cv_prog_compiler_c_o+y}-then :-  printf %s "(cached) " >&6-else case e in #(-  e) lt_cv_prog_compiler_c_o=no-   $RM -r conftest 2>/dev/null-   mkdir conftest-   cd conftest-   mkdir out-   echo "$lt_simple_compile_test_code" > conftest.$ac_ext--   lt_compiler_flag="-o out/conftest2.$ac_objext"-   # Insert the option either (1) after the last *FLAGS variable, or-   # (2) before a word containing "conftest.", or (3) at the end.-   # Note that $ac_compile itself does not contain backslashes and begins-   # with a dollar sign (not a hyphen), so the echo should work correctly.-   lt_compile=`echo "$ac_compile" | $SED \-   -e 's:.*FLAGS}\{0,1\} :&$lt_compiler_flag :; t' \-   -e 's: [^ ]*conftest\.: $lt_compiler_flag&:; t' \-   -e 's:$: $lt_compiler_flag:'`-   (eval echo "\"\$as_me:$LINENO: $lt_compile\"" >&5)-   (eval "$lt_compile" 2>out/conftest.err)-   ac_status=$?-   cat out/conftest.err >&5-   echo "$as_me:$LINENO: \$? = $ac_status" >&5-   if (exit $ac_status) && test -s out/conftest2.$ac_objext-   then-     # The compiler can only warn and ignore the option if not recognized-     # So say no if there are warnings-     $ECHO "$_lt_compiler_boilerplate" | $SED '/^$/d' > out/conftest.exp-     $SED '/^$/d; /^ *+/d' out/conftest.err >out/conftest.er2-     if test ! -s out/conftest.er2 || diff out/conftest.exp out/conftest.er2 >/dev/null; then-       lt_cv_prog_compiler_c_o=yes-     fi-   fi-   chmod u+w . 2>&5-   $RM conftest*-   # SGI C++ compiler will create directory out/ii_files/ for-   # template instantiation-   test -d out/ii_files && $RM out/ii_files/* && rmdir out/ii_files-   $RM out/* && rmdir out-   cd ..-   $RM -r conftest-   $RM conftest*- ;;-esac-fi-{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $lt_cv_prog_compiler_c_o" >&5-printf "%s\n" "$lt_cv_prog_compiler_c_o" >&6; }-----hard_links=nottested-if test no = "$lt_cv_prog_compiler_c_o" && test no != "$need_locks"; then-  # do not overwrite the value of need_locks provided by the user-  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking if we can lock with hard links" >&5-printf %s "checking if we can lock with hard links... " >&6; }-  hard_links=yes-  $RM conftest*-  ln conftest.a conftest.b 2>/dev/null && hard_links=no-  touch conftest.a-  ln conftest.a conftest.b 2>&5 || hard_links=no-  ln conftest.a conftest.b 2>/dev/null && hard_links=no-  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $hard_links" >&5-printf "%s\n" "$hard_links" >&6; }-  if test no = "$hard_links"; then-    { printf "%s\n" "$as_me:${as_lineno-$LINENO}: WARNING: '$CC' does not support '-c -o', so 'make -j' may be unsafe" >&5-printf "%s\n" "$as_me: WARNING: '$CC' does not support '-c -o', so 'make -j' may be unsafe" >&2;}-    need_locks=warn-  fi-else-  need_locks=no-fi-------  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking whether the $compiler linker ($LD) supports shared libraries" >&5-printf %s "checking whether the $compiler linker ($LD) supports shared libraries... " >&6; }--  runpath_var=-  allow_undefined_flag=-  always_export_symbols=no-  archive_cmds=-  archive_expsym_cmds=-  compiler_needs_object=no-  enable_shared_with_static_runtimes=no-  export_dynamic_flag_spec=-  export_symbols_cmds='$NM $libobjs $convenience | $global_symbol_pipe | $SED '\''s/.* //'\'' | sort | uniq > $export_symbols'-  hardcode_automatic=no-  hardcode_direct=no-  hardcode_direct_absolute=no-  hardcode_libdir_flag_spec=-  hardcode_libdir_separator=-  hardcode_minus_L=no-  hardcode_shlibpath_var=unsupported-  inherit_rpath=no-  link_all_deplibs=unknown-  module_cmds=-  module_expsym_cmds=-  old_archive_from_new_cmds=-  old_archive_from_expsyms_cmds=-  thread_safe_flag_spec=-  whole_archive_flag_spec=-  # include_expsyms should be a list of space-separated symbols to be *always*-  # included in the symbol list-  include_expsyms=-  # exclude_expsyms can be an extended regexp of symbols to exclude-  # it will be wrapped by ' (' and ')$', so one must not match beginning or-  # end of line.  Example: 'a|bc|.*d.*' will exclude the symbols 'a' and 'bc',-  # as well as any symbol that contains 'd'.-  exclude_expsyms='_GLOBAL_OFFSET_TABLE_|_GLOBAL__F[ID]_.*'-  # Although _GLOBAL_OFFSET_TABLE_ is a valid symbol C name, most a.out-  # platforms (ab)use it in PIC code, but their linkers get confused if-  # the symbol is explicitly referenced.  Since portable code cannot-  # rely on this symbol name, it's probably fine to never include it in-  # preloaded symbol tables.-  # Exclude shared library initialization/finalization symbols.-  extract_expsyms_cmds=--  case $host_os in-  cygwin* | mingw* | windows* | pw32* | cegcc*)-    # FIXME: the MSVC++ and ICC port hasn't been tested in a loooong time-    # When not using gcc, we currently assume that we are using-    # Microsoft Visual C++ or Intel C++ Compiler.-    if test yes != "$GCC"; then-      with_gnu_ld=no-    fi-    ;;-  interix*)-    # we just hope/assume this is gcc and not c89 (= MSVC++ or ICC)-    with_gnu_ld=yes-    ;;-  esac--  ld_shlibs=yes--  # On some targets, GNU ld is compatible enough with the native linker-  # that we're better off using the native interface for both.-  lt_use_gnu_ld_interface=no-  if test yes = "$with_gnu_ld"; then-    case $host_os in-      aix*)-	# The AIX port of GNU ld has always aspired to compatibility-	# with the native linker.  However, as the warning in the GNU ld-	# block says, versions before 2.19.5* couldn't really create working-	# shared libraries, regardless of the interface used.-	case `$LD -v 2>&1` in-	  *\ \(GNU\ Binutils\)\ 2.19.5*) ;;-	  *\ \(GNU\ Binutils\)\ 2.[2-9]*) ;;-	  *\ \(GNU\ Binutils\)\ [3-9]*) ;;-	  *)-	    lt_use_gnu_ld_interface=yes-	    ;;-	esac-	;;-      *)-	lt_use_gnu_ld_interface=yes-	;;-    esac-  fi--  if test yes = "$lt_use_gnu_ld_interface"; then-    # If archive_cmds runs LD, not CC, wlarc should be empty-    wlarc='$wl'--    # Set some defaults for GNU ld with shared library support. These-    # are reset later if shared libraries are not supported. Putting them-    # here allows them to be overridden if necessary.-    runpath_var=LD_RUN_PATH-    hardcode_libdir_flag_spec='$wl-rpath $wl$libdir'-    export_dynamic_flag_spec='$wl--export-dynamic'-    # ancient GNU ld didn't support --whole-archive et. al.-    if $LD --help 2>&1 | $GREP 'no-whole-archive' > /dev/null; then-      whole_archive_flag_spec=$wlarc'--whole-archive$convenience '$wlarc'--no-whole-archive'-    else-      whole_archive_flag_spec=-    fi-    supports_anon_versioning=no-    case `$LD -v | $SED -e 's/([^)]\+)\s\+//' 2>&1` in-      *GNU\ gold*) supports_anon_versioning=yes ;;-      *\ [01].* | *\ 2.[0-9].* | *\ 2.10.*) ;; # catch versions < 2.11-      *\ 2.11.93.0.2\ *) supports_anon_versioning=yes ;; # RH7.3 ...-      *\ 2.11.92.0.12\ *) supports_anon_versioning=yes ;; # Mandrake 8.2 ...-      *\ 2.11.*) ;; # other 2.11 versions-      *) supports_anon_versioning=yes ;;-    esac--    # See if GNU ld supports shared libraries.-    case $host_os in-    aix[3-9]*)-      # On AIX/PPC, the GNU linker is very broken-      if test ia64 != "$host_cpu"; then-	ld_shlibs=no-	cat <<_LT_EOF 1>&2--*** Warning: the GNU linker, at least up to release 2.19, is reported-*** to be unable to reliably create shared libraries on AIX.-*** Therefore, libtool is disabling shared libraries support.  If you-*** really care for shared libraries, you may want to install binutils-*** 2.20 or above, or modify your PATH so that a non-GNU linker is found.-*** You will then need to restart the configuration process.--_LT_EOF-      fi-      ;;--    amigaos*)-      case $host_cpu in-      powerpc)-            # see comment about AmigaOS4 .so support-            archive_cmds='$CC -shared $libobjs $deplibs $compiler_flags $wl-soname $wl$soname -o $lib'-            archive_expsym_cmds=''-        ;;-      m68k)-            archive_cmds='$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)'-            hardcode_libdir_flag_spec='-L$libdir'-            hardcode_minus_L=yes-        ;;-      esac-      ;;--    beos*)-      if $LD --help 2>&1 | $GREP ': supported targets:.* elf' > /dev/null; then-	allow_undefined_flag=unsupported-	# Joseph Beckenbach <jrb3@best.com> says some releases of gcc-	# support --undefined.  This deserves some investigation.  FIXME-	archive_cmds='$CC -nostart $libobjs $deplibs $compiler_flags $wl-soname $wl$soname -o $lib'-      else-	ld_shlibs=no-      fi-      ;;--    cygwin* | mingw* | windows* | pw32* | cegcc*)-      # _LT_TAGVAR(hardcode_libdir_flag_spec, ) is actually meaningless,-      # as there is no search path for DLLs.-      hardcode_libdir_flag_spec='-L$libdir'-      export_dynamic_flag_spec='$wl--export-all-symbols'-      allow_undefined_flag=unsupported-      always_export_symbols=no-      enable_shared_with_static_runtimes=yes-      export_symbols_cmds='$NM $libobjs $convenience | $global_symbol_pipe | $SED -e '\''/^[BCDGRS][ ]/s/.*[ ]\([^ ]*\)/\1 DATA/;s/^.*[ ]__nm__\([^ ]*\)[ ][^ ]*/\1 DATA/;/^I[ ]/d;/^[AITW][ ]/s/.* //'\'' | sort | uniq > $export_symbols'-      exclude_expsyms='[_]+GLOBAL_OFFSET_TABLE_|[_]+GLOBAL__[FID]_.*|[_]+head_[A-Za-z0-9_]+_dll|[A-Za-z0-9_]+_dll_iname'-      file_list_spec='@'--      if $LD --help 2>&1 | $GREP 'auto-import' > /dev/null; then-        archive_cmds='$CC -shared $libobjs $deplibs $compiler_flags -o $output_objdir/$soname $wl--enable-auto-image-base -Xlinker --out-implib -Xlinker $lib'-	# If the export-symbols file already is a .def file, use it as-	# is; otherwise, prepend EXPORTS...-	archive_expsym_cmds='if   test DEF = "`$SED -n     -e '\''s/^[	 ]*//'\''     -e '\''/^\(;.*\)*$/d'\''     -e '\''s/^\(EXPORTS\|LIBRARY\)\([	 ].*\)*$/DEF/p'\''     -e q     $export_symbols`" ; then-          cp $export_symbols $output_objdir/$soname.def;-        else-          echo EXPORTS > $output_objdir/$soname.def;-          cat $export_symbols >> $output_objdir/$soname.def;-        fi~-        $CC -shared $output_objdir/$soname.def $libobjs $deplibs $compiler_flags -o $output_objdir/$soname $wl--enable-auto-image-base -Xlinker --out-implib -Xlinker $lib'-      else-	ld_shlibs=no-      fi-      ;;--    haiku*)-      archive_cmds='$CC -shared $libobjs $deplibs $compiler_flags $wl-soname $wl$soname -o $lib'-      link_all_deplibs=no-      ;;--    os2*)-      hardcode_libdir_flag_spec='-L$libdir'-      hardcode_minus_L=yes-      allow_undefined_flag=unsupported-      shrext_cmds=.dll-      archive_cmds='$ECHO "LIBRARY ${soname%$shared_ext} INITINSTANCE TERMINSTANCE" > $output_objdir/$libname.def~-	$ECHO "DESCRIPTION \"$libname\"" >> $output_objdir/$libname.def~-	$ECHO "DATA MULTIPLE NONSHARED" >> $output_objdir/$libname.def~-	$ECHO EXPORTS >> $output_objdir/$libname.def~-	emxexp $libobjs | $SED /"_DLL_InitTerm"/d >> $output_objdir/$libname.def~-	$CC -Zdll -Zcrtdll -o $output_objdir/$soname $libobjs $deplibs $compiler_flags $output_objdir/$libname.def~-	emximp -o $lib $output_objdir/$libname.def'-      archive_expsym_cmds='$ECHO "LIBRARY ${soname%$shared_ext} INITINSTANCE TERMINSTANCE" > $output_objdir/$libname.def~-	$ECHO "DESCRIPTION \"$libname\"" >> $output_objdir/$libname.def~-	$ECHO "DATA MULTIPLE NONSHARED" >> $output_objdir/$libname.def~-	$ECHO EXPORTS >> $output_objdir/$libname.def~-	prefix_cmds="$SED"~-	if test EXPORTS = "`$SED 1q $export_symbols`"; then-	  prefix_cmds="$prefix_cmds -e 1d";-	fi~-	prefix_cmds="$prefix_cmds -e \"s/^\(.*\)$/_\1/g\""~-	cat $export_symbols | $prefix_cmds >> $output_objdir/$libname.def~-	$CC -Zdll -Zcrtdll -o $output_objdir/$soname $libobjs $deplibs $compiler_flags $output_objdir/$libname.def~-	emximp -o $lib $output_objdir/$libname.def'-      old_archive_from_new_cmds='emximp -o $output_objdir/${libname}_dll.a $output_objdir/$libname.def'-      enable_shared_with_static_runtimes=yes-      file_list_spec='@'-      ;;--    interix[3-9]*)-      hardcode_direct=no-      hardcode_shlibpath_var=no-      hardcode_libdir_flag_spec='$wl-rpath,$libdir'-      export_dynamic_flag_spec='$wl-E'-      # Hack: On Interix 3.x, we cannot compile PIC because of a broken gcc.-      # Instead, shared libraries are loaded at an image base (0x10000000 by-      # default) and relocated if they conflict, which is a slow very memory-      # consuming and fragmenting process.  To avoid this, we pick a random,-      # 256 KiB-aligned image base between 0x50000000 and 0x6FFC0000 at link-      # time.  Moving up from 0x10000000 also allows more sbrk(2) space.-      archive_cmds='$CC -shared $pic_flag $libobjs $deplibs $compiler_flags $wl-h,$soname $wl--image-base,`expr ${RANDOM-$$} % 4096 / 2 \* 262144 + 1342177280` -o $lib'-      archive_expsym_cmds='$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'-      ;;--    gnu* | linux* | tpf* | k*bsd*-gnu | kopensolaris*-gnu)-      tmp_diet=no-      if test linux-dietlibc = "$host_os"; then-	case $cc_basename in-	  diet\ *) tmp_diet=yes;;	# linux-dietlibc with static linking (!diet-dyn)-	esac-      fi-      if $LD --help 2>&1 | $EGREP ': supported targets:.* elf' > /dev/null \-	 && test no = "$tmp_diet"-      then-	tmp_addflag=' $pic_flag'-	tmp_sharedflag='-shared'-	case $cc_basename,$host_cpu in-        pgcc*)				# Portland Group C compiler-	  whole_archive_flag_spec='$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'-	  tmp_addflag=' $pic_flag'-	  ;;-	pgf77* | pgf90* | pgf95* | pgfortran*)-					# Portland Group f77 and f90 compilers-	  whole_archive_flag_spec='$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'-	  tmp_addflag=' $pic_flag -Mnomain' ;;-	ecc*,ia64* | icc*,ia64*)	# Intel C compiler on ia64-	  tmp_addflag=' -i_dynamic' ;;-	efc*,ia64* | ifort*,ia64*)	# Intel Fortran compiler on ia64-	  tmp_addflag=' -i_dynamic -nofor_main' ;;-	ifc* | ifort*)			# Intel Fortran compiler-	  tmp_addflag=' -nofor_main' ;;-	lf95*)				# Lahey Fortran 8.1-	  whole_archive_flag_spec=-	  tmp_sharedflag='--shared' ;;-        nagfor*)                        # NAGFOR 5.3-          tmp_sharedflag='-Wl,-shared' ;;-	xl[cC]* | bgxl[cC]* | mpixl[cC]*) # IBM XL C 8.0 on PPC (deal with xlf below)-	  tmp_sharedflag='-qmkshrobj'-	  tmp_addflag= ;;-	nvcc*)	# Cuda Compiler Driver 2.2-	  whole_archive_flag_spec='$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'-	  compiler_needs_object=yes-	  ;;-	esac-	case `$CC -V 2>&1 | $SED 5q` in-	*Sun\ C*)			# Sun C 5.9-	  whole_archive_flag_spec='$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'-	  compiler_needs_object=yes-	  tmp_sharedflag='-G' ;;-	*Sun\ F*)			# Sun Fortran 8.3-	  tmp_sharedflag='-G' ;;-	esac-	archive_cmds='$CC '"$tmp_sharedflag""$tmp_addflag"' $libobjs $deplibs $compiler_flags $wl-soname $wl$soname -o $lib'--        if test yes = "$supports_anon_versioning"; then-          archive_expsym_cmds='echo "{ global:" > $output_objdir/$libname.ver~-            cat $export_symbols | $SED -e "s/\(.*\)/\1;/" >> $output_objdir/$libname.ver~-            echo "local: *; };" >> $output_objdir/$libname.ver~-            $CC '"$tmp_sharedflag""$tmp_addflag"' $libobjs $deplibs $compiler_flags $wl-soname $wl$soname $wl-version-script $wl$output_objdir/$libname.ver -o $lib'-        fi--	case $cc_basename in-	tcc*)-	  hardcode_libdir_flag_spec='$wl-rpath $wl$libdir'-	  export_dynamic_flag_spec='-rdynamic'-	  ;;-	xlf* | bgf* | bgxlf* | mpixlf*)-	  # IBM XL Fortran 10.1 on PPC cannot create shared libs itself-	  whole_archive_flag_spec='--whole-archive$convenience --no-whole-archive'-	  hardcode_libdir_flag_spec='$wl-rpath $wl$libdir'-	  archive_cmds='$LD -shared $libobjs $deplibs $linker_flags -soname $soname -o $lib'-	  if test yes = "$supports_anon_versioning"; then-	    archive_expsym_cmds='echo "{ global:" > $output_objdir/$libname.ver~-              cat $export_symbols | $SED -e "s/\(.*\)/\1;/" >> $output_objdir/$libname.ver~-              echo "local: *; };" >> $output_objdir/$libname.ver~-              $LD -shared $libobjs $deplibs $linker_flags -soname $soname -version-script $output_objdir/$libname.ver -o $lib'-	  fi-	  ;;-	esac-      else-        ld_shlibs=no-      fi-      ;;--    *-mlibc)-	archive_cmds='$CC -shared $pic_flag $libobjs $deplibs $compiler_flags $wl-soname $wl$soname -o $lib'-	archive_expsym_cmds='$CC -shared $pic_flag $libobjs $deplibs $compiler_flags $wl-soname $wl$soname $wl-retain-symbols-file $wl$export_symbols -o $lib'-      ;;--    netbsd* | netbsdelf*-gnu)-      if echo __ELF__ | $CC -E - | $GREP __ELF__ >/dev/null; then-	archive_cmds='$LD -Bshareable $libobjs $deplibs $linker_flags -o $lib'-	wlarc=-      else-	archive_cmds='$CC -shared $pic_flag $libobjs $deplibs $compiler_flags $wl-soname $wl$soname -o $lib'-	archive_expsym_cmds='$CC -shared $pic_flag $libobjs $deplibs $compiler_flags $wl-soname $wl$soname $wl-retain-symbols-file $wl$export_symbols -o $lib'-      fi-      ;;--    solaris*)-      if $LD -v 2>&1 | $GREP 'BFD 2\.8' > /dev/null; then-	ld_shlibs=no-	cat <<_LT_EOF 1>&2--*** Warning: The releases 2.8.* of the GNU linker cannot reliably-*** create shared libraries on Solaris systems.  Therefore, libtool-*** is disabling shared libraries support.  We urge you to upgrade GNU-*** binutils to release 2.9.1 or newer.  Another option is to modify-*** your PATH or compiler configuration so that the native linker is-*** used, and then restart.--_LT_EOF-      elif $LD --help 2>&1 | $GREP ': supported targets:.* elf' > /dev/null; then-	archive_cmds='$CC -shared $pic_flag $libobjs $deplibs $compiler_flags $wl-soname $wl$soname -o $lib'-	archive_expsym_cmds='$CC -shared $pic_flag $libobjs $deplibs $compiler_flags $wl-soname $wl$soname $wl-retain-symbols-file $wl$export_symbols -o $lib'-      else-	ld_shlibs=no-      fi-      ;;--    sysv5* | sco3.2v5* | sco5v6* | unixware* | OpenUNIX*)-      case `$LD -v 2>&1` in-        *\ [01].* | *\ 2.[0-9].* | *\ 2.1[0-5].*)-	ld_shlibs=no-	cat <<_LT_EOF 1>&2--*** Warning: Releases of the GNU linker prior to 2.16.91.0.3 cannot-*** reliably create shared libraries on SCO systems.  Therefore, libtool-*** is disabling shared libraries support.  We urge you to upgrade GNU-*** binutils to release 2.16.91.0.3 or newer.  Another option is to modify-*** your PATH or compiler configuration so that the native linker is-*** used, and then restart.--_LT_EOF-	;;-	*)-	  # For security reasons, it is highly recommended that you always-	  # use absolute paths for naming shared libraries, and exclude the-	  # DT_RUNPATH tag from executables and libraries.  But doing so-	  # requires that you compile everything twice, which is a pain.-	  if $LD --help 2>&1 | $GREP ': supported targets:.* elf' > /dev/null; then-	    hardcode_libdir_flag_spec='$wl-rpath $wl$libdir'-	    archive_cmds='$CC -shared $libobjs $deplibs $compiler_flags $wl-soname $wl$soname -o $lib'-	    archive_expsym_cmds='$CC -shared $libobjs $deplibs $compiler_flags $wl-soname $wl$soname $wl-retain-symbols-file $wl$export_symbols -o $lib'-	  else-	    ld_shlibs=no-	  fi-	;;-      esac-      ;;--    sunos4*)-      archive_cmds='$LD -assert pure-text -Bshareable -o $lib $libobjs $deplibs $linker_flags'-      wlarc=-      hardcode_direct=yes-      hardcode_shlibpath_var=no-      ;;--    *)-      if $LD --help 2>&1 | $GREP ': supported targets:.* elf' > /dev/null; then-	archive_cmds='$CC -shared $pic_flag $libobjs $deplibs $compiler_flags $wl-soname $wl$soname -o $lib'-	archive_expsym_cmds='$CC -shared $pic_flag $libobjs $deplibs $compiler_flags $wl-soname $wl$soname $wl-retain-symbols-file $wl$export_symbols -o $lib'-      else-	ld_shlibs=no-      fi-      ;;-    esac--    if test no = "$ld_shlibs"; then-      runpath_var=-      hardcode_libdir_flag_spec=-      export_dynamic_flag_spec=-      whole_archive_flag_spec=-    fi-  else-    # PORTME fill in a description of your system's linker (not GNU ld)-    case $host_os in-    aix3*)-      allow_undefined_flag=unsupported-      always_export_symbols=yes-      archive_expsym_cmds='$LD -o $output_objdir/$soname $libobjs $deplibs $linker_flags -bE:$export_symbols -T512 -H512 -bM:SRE~$AR $AR_FLAGS $lib $output_objdir/$soname'-      # Note: this linker hardcodes the directories in LIBPATH if there-      # are no directories specified by -L.-      hardcode_minus_L=yes-      if test yes = "$GCC" && test -z "$lt_prog_compiler_static"; then-	# Neither direct hardcoding nor static linking is supported with a-	# broken collect2.-	hardcode_direct=unsupported-      fi-      ;;--    aix[4-9]*)-      if test ia64 = "$host_cpu"; then-	# On IA64, the linker does run time linking by default, so we don't-	# have to do anything special.-	aix_use_runtimelinking=no-	exp_sym_flag='-Bexport'-	no_entry_flag=-      else-	# If we're using GNU nm, then we don't want the "-C" option.-	# -C means demangle to GNU nm, but means don't demangle to AIX nm.-	# Without the "-l" option, or with the "-B" option, AIX nm treats-	# weak defined symbols like other global defined symbols, whereas-	# GNU nm marks them as "W".-	# While the 'weak' keyword is ignored in the Export File, we need-	# it in the Import File for the 'aix-soname' feature, so we have-	# to replace the "-B" option with "-P" for AIX nm.-	if $NM -V 2>&1 | $GREP 'GNU' > /dev/null; then-	  export_symbols_cmds='$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'-	else-	  export_symbols_cmds='`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'-	fi-	aix_use_runtimelinking=no--	# Test if we are trying to use run time linking or normal-	# AIX style linking. If -brtl is somewhere in LDFLAGS, we-	# have runtime linking enabled, and use it for executables.-	# For shared libraries, we enable/disable runtime linking-	# depending on the kind of the shared library created --	# when "with_aix_soname,aix_use_runtimelinking" is:-	# "aix,no"   lib.a(lib.so.V) shared, rtl:no,  for executables-	# "aix,yes"  lib.so          shared, rtl:yes, for executables-	#            lib.a           static archive-	# "both,no"  lib.so.V(shr.o) shared, rtl:yes-	#            lib.a(lib.so.V) shared, rtl:no,  for executables-	# "both,yes" lib.so.V(shr.o) shared, rtl:yes, for executables-	#            lib.a(lib.so.V) shared, rtl:no-	# "svr4,*"   lib.so.V(shr.o) shared, rtl:yes, for executables-	#            lib.a           static archive-	case $host_os in aix4.[23]|aix4.[23].*|aix[5-9]*)-	  for ld_flag in $LDFLAGS; do-	  if (test x-brtl = "x$ld_flag" || test x-Wl,-brtl = "x$ld_flag"); then-	    aix_use_runtimelinking=yes-	    break-	  fi-	  done-	  if test svr4,no = "$with_aix_soname,$aix_use_runtimelinking"; then-	    # With aix-soname=svr4, we create the lib.so.V shared archives only,-	    # so we don't have lib.a shared libs to link our executables.-	    # We have to force runtime linking in this case.-	    aix_use_runtimelinking=yes-	    LDFLAGS="$LDFLAGS -Wl,-brtl"-	  fi-	  ;;-	esac--	exp_sym_flag='-bexport'-	no_entry_flag='-bnoentry'-      fi--      # When large executables or shared objects are built, AIX ld can-      # have problems creating the table of contents.  If linking a library-      # or program results in "error TOC overflow" add -mminimal-toc to-      # CXXFLAGS/CFLAGS for g++/gcc.  In the cases where that is not-      # enough to fix the problem, add -Wl,-bbigtoc to LDFLAGS.--      archive_cmds=''-      hardcode_direct=yes-      hardcode_direct_absolute=yes-      hardcode_libdir_separator=':'-      link_all_deplibs=yes-      file_list_spec='$wl-f,'-      case $with_aix_soname,$aix_use_runtimelinking in-      aix,*) ;; # traditional, no import file-      svr4,* | *,yes) # use import file-	# The Import File defines what to hardcode.-	hardcode_direct=no-	hardcode_direct_absolute=no-	;;-      esac--      if test yes = "$GCC"; then-	case $host_os in aix4.[012]|aix4.[012].*)-	# We only want to do this on AIX 4.2 and lower, the check-	# below for broken collect2 doesn't work under 4.3+-	  collect2name=`$CC -print-prog-name=collect2`-	  if test -f "$collect2name" &&-	   strings "$collect2name" | $GREP resolve_lib_name >/dev/null-	  then-	  # We have reworked collect2-	  :-	  else-	  # We have old collect2-	  hardcode_direct=unsupported-	  # It fails to find uninstalled libraries when the uninstalled-	  # path is not listed in the libpath.  Setting hardcode_minus_L-	  # to unsupported forces relinking-	  hardcode_minus_L=yes-	  hardcode_libdir_flag_spec='-L$libdir'-	  hardcode_libdir_separator=-	  fi-	  ;;-	esac-	shared_flag='-shared'-	if test yes = "$aix_use_runtimelinking"; then-	  shared_flag="$shared_flag "'$wl-G'-	fi-	# Need to ensure runtime linking is disabled for the traditional-	# shared library, or the linker may eventually find shared libraries-	# /with/ Import File - we do not want to mix them.-	shared_flag_aix='-shared'-	shared_flag_svr4='-shared $wl-G'-      else-	# not using gcc-	if test ia64 = "$host_cpu"; then-	# VisualAge C++, Version 5.5 for AIX 5L for IA-64, Beta 3 Release-	# chokes on -Wl,-G. The following line is correct:-	  shared_flag='-G'-	else-	  if test yes = "$aix_use_runtimelinking"; then-	    shared_flag='$wl-G'-	  else-	    shared_flag='$wl-bM:SRE'-	  fi-	  shared_flag_aix='$wl-bM:SRE'-	  shared_flag_svr4='$wl-G'-	fi-      fi--      export_dynamic_flag_spec='$wl-bexpall'-      # It seems that -bexpall does not export symbols beginning with-      # underscore (_), so it is better to generate a list of symbols to export.-      always_export_symbols=yes-      if test aix,yes = "$with_aix_soname,$aix_use_runtimelinking"; then-	# Warning - without using the other runtime loading flags (-brtl),-	# -berok will link without error, but may produce a broken library.-	allow_undefined_flag='-berok'-        # Determine the default libpath from the value encoded in an-        # empty executable.-        if test set = "${lt_cv_aix_libpath+set}"; then-  aix_libpath=$lt_cv_aix_libpath-else-  if test ${lt_cv_aix_libpath_+y}-then :-  printf %s "(cached) " >&6-else case e in #(-  e) cat confdefs.h - <<_ACEOF >conftest.$ac_ext-/* end confdefs.h.  */--int-main (void)-{--  ;-  return 0;-}-_ACEOF-if ac_fn_c_try_link "$LINENO"-then :--  lt_aix_libpath_sed='-      /Import File Strings/,/^$/ {-	  /^0/ {-	      s/^0  *\([^ ]*\) *$/\1/-	      p-	  }-      }'-  lt_cv_aix_libpath_=`dump -H conftest$ac_exeext 2>/dev/null | $SED -n -e "$lt_aix_libpath_sed"`-  # Check for a 64-bit object if we didn't find anything.-  if test -z "$lt_cv_aix_libpath_"; then-    lt_cv_aix_libpath_=`dump -HX64 conftest$ac_exeext 2>/dev/null | $SED -n -e "$lt_aix_libpath_sed"`-  fi-fi-rm -f core conftest.err conftest.$ac_objext conftest.beam \-    conftest$ac_exeext conftest.$ac_ext-  if test -z "$lt_cv_aix_libpath_"; then-    lt_cv_aix_libpath_=/usr/lib:/lib-  fi-   ;;-esac-fi--  aix_libpath=$lt_cv_aix_libpath_-fi--        hardcode_libdir_flag_spec='$wl-blibpath:$libdir:'"$aix_libpath"-        archive_expsym_cmds='$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-      else-	if test ia64 = "$host_cpu"; then-	  hardcode_libdir_flag_spec='$wl-R $libdir:/usr/lib:/lib'-	  allow_undefined_flag="-z nodefs"-	  archive_expsym_cmds="\$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"-	else-	 # Determine the default libpath from the value encoded in an-	 # empty executable.-	 if test set = "${lt_cv_aix_libpath+set}"; then-  aix_libpath=$lt_cv_aix_libpath-else-  if test ${lt_cv_aix_libpath_+y}-then :-  printf %s "(cached) " >&6-else case e in #(-  e) cat confdefs.h - <<_ACEOF >conftest.$ac_ext-/* end confdefs.h.  */--int-main (void)-{--  ;-  return 0;-}-_ACEOF-if ac_fn_c_try_link "$LINENO"-then :--  lt_aix_libpath_sed='-      /Import File Strings/,/^$/ {-	  /^0/ {-	      s/^0  *\([^ ]*\) *$/\1/-	      p-	  }-      }'-  lt_cv_aix_libpath_=`dump -H conftest$ac_exeext 2>/dev/null | $SED -n -e "$lt_aix_libpath_sed"`-  # Check for a 64-bit object if we didn't find anything.-  if test -z "$lt_cv_aix_libpath_"; then-    lt_cv_aix_libpath_=`dump -HX64 conftest$ac_exeext 2>/dev/null | $SED -n -e "$lt_aix_libpath_sed"`-  fi-fi-rm -f core conftest.err conftest.$ac_objext conftest.beam \-    conftest$ac_exeext conftest.$ac_ext-  if test -z "$lt_cv_aix_libpath_"; then-    lt_cv_aix_libpath_=/usr/lib:/lib-  fi-   ;;-esac-fi--  aix_libpath=$lt_cv_aix_libpath_-fi--	 hardcode_libdir_flag_spec='$wl-blibpath:$libdir:'"$aix_libpath"-	  # Warning - without using the other run time loading flags,-	  # -berok will link without error, but may produce a broken library.-	  no_undefined_flag=' $wl-bernotok'-	  allow_undefined_flag=' $wl-berok'-	  if test yes = "$with_gnu_ld"; then-	    # We only use this code for GNU lds that support --whole-archive.-	    whole_archive_flag_spec='$wl--whole-archive$convenience $wl--no-whole-archive'-	  else-	    # Exported symbols can be pulled into shared objects from archives-	    whole_archive_flag_spec='$convenience'-	  fi-	  archive_cmds_need_lc=yes-	  archive_expsym_cmds='$RM -r $output_objdir/$realname.d~$MKDIR $output_objdir/$realname.d'-	  # -brtl affects multiple linker settings, -berok does not and is overridden later-	  compiler_flags_filtered='`func_echo_all "$compiler_flags " | $SED -e "s%-brtl\\([, ]\\)%-berok\\1%g"`'-	  if test svr4 != "$with_aix_soname"; then-	    # This is similar to how AIX traditionally builds its shared libraries.-	    archive_expsym_cmds="$archive_expsym_cmds"'~$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'-	  fi-	  if test aix != "$with_aix_soname"; then-	    archive_expsym_cmds="$archive_expsym_cmds"'~$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'-	  else-	    # used by -dlpreopen to get the symbols-	    archive_expsym_cmds="$archive_expsym_cmds"'~$MV  $output_objdir/$realname.d/$soname $output_objdir'-	  fi-	  archive_expsym_cmds="$archive_expsym_cmds"'~$RM -r $output_objdir/$realname.d'-	fi-      fi-      ;;--    amigaos*)-      case $host_cpu in-      powerpc)-            # see comment about AmigaOS4 .so support-            archive_cmds='$CC -shared $libobjs $deplibs $compiler_flags $wl-soname $wl$soname -o $lib'-            archive_expsym_cmds=''-        ;;-      m68k)-            archive_cmds='$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)'-            hardcode_libdir_flag_spec='-L$libdir'-            hardcode_minus_L=yes-        ;;-      esac-      ;;--    bsdi[45]*)-      export_dynamic_flag_spec=-rdynamic-      ;;--    cygwin* | mingw* | windows* | pw32* | cegcc*)-      # When not using gcc, we currently assume that we are using-      # Microsoft Visual C++ or Intel C++ Compiler.-      # hardcode_libdir_flag_spec is actually meaningless, as there is-      # no search path for DLLs.-      case $cc_basename in-      cl* | icl*)-	# Native MSVC or ICC-	hardcode_libdir_flag_spec=' '-	allow_undefined_flag=unsupported-	always_export_symbols=yes-	file_list_spec='@'-	# Tell ltmain to make .lib files, not .a files.-	libext=lib-	# Tell ltmain to make .dll files, not .so files.-	shrext_cmds=.dll-	# FIXME: Setting linknames here is a bad hack.-	archive_cmds='$CC -Fe$output_objdir/$soname $libobjs $compiler_flags $deplibs -Wl,-DLL,-IMPLIB:"$tool_output_objdir$libname.dll.lib"~linknames='-	archive_expsym_cmds='if   test DEF = "`$SED -n     -e '\''s/^[	 ]*//'\''     -e '\''/^\(;.*\)*$/d'\''     -e '\''s/^\(EXPORTS\|LIBRARY\)\([	 ].*\)*$/DEF/p'\''     -e q     $export_symbols`" ; then-            cp "$export_symbols" "$output_objdir/$soname.def";-            echo "$tool_output_objdir$soname.def" > "$output_objdir/$soname.exp";-          else-            $SED -e '\''s/^/-link -EXPORT:/'\'' < $export_symbols > $output_objdir/$soname.exp;-          fi~-          $CC -Fe$tool_output_objdir$soname $libobjs $compiler_flags $deplibs "@$tool_output_objdir$soname.exp" -Wl,-DLL,-IMPLIB:"$tool_output_objdir$libname.dll.lib"~-          linknames='-	# The linker will not automatically build a static lib if we build a DLL.-	# _LT_TAGVAR(old_archive_from_new_cmds, )='true'-	enable_shared_with_static_runtimes=yes-	exclude_expsyms='_NULL_IMPORT_DESCRIPTOR|_IMPORT_DESCRIPTOR_.*'-	export_symbols_cmds='$NM $libobjs $convenience | $global_symbol_pipe | $SED -e '\''/^[BCDGRS][ ]/s/.*[ ]\([^ ]*\)/\1,DATA/'\'' | $SED -e '\''/^[AITW][ ]/s/.*[ ]//'\'' | sort | uniq > $export_symbols'-	# Don't use ranlib-	old_postinstall_cmds='chmod 644 $oldlib'-	postlink_cmds='lt_outputfile="@OUTPUT@"~-          lt_tool_outputfile="@TOOL_OUTPUT@"~-          case $lt_outputfile in-            *.exe|*.EXE) ;;-            *)-              lt_outputfile=$lt_outputfile.exe-              lt_tool_outputfile=$lt_tool_outputfile.exe-              ;;-          esac~-          if test : != "$MANIFEST_TOOL" && test -f "$lt_outputfile.manifest"; then-            $MANIFEST_TOOL -manifest "$lt_tool_outputfile.manifest" -outputresource:"$lt_tool_outputfile" || exit 1;-            $RM "$lt_outputfile.manifest";-          fi'-	;;-      *)-	# Assume MSVC and ICC wrapper-	hardcode_libdir_flag_spec=' '-	allow_undefined_flag=unsupported-	# Tell ltmain to make .lib files, not .a files.-	libext=lib-	# Tell ltmain to make .dll files, not .so files.-	shrext_cmds=.dll-	# FIXME: Setting linknames here is a bad hack.-	archive_cmds='$CC -o $lib $libobjs $compiler_flags `func_echo_all "$deplibs" | $SED '\''s/ -lc$//'\''` -link -dll~linknames='-	# The linker will automatically build a .lib file if we build a DLL.-	old_archive_from_new_cmds='true'-	# FIXME: Should let the user specify the lib program.-	old_archive_cmds='lib -OUT:$oldlib$oldobjs$old_deplibs'-	enable_shared_with_static_runtimes=yes-	;;-      esac-      ;;--    darwin* | rhapsody*)---  archive_cmds_need_lc=no-  hardcode_direct=no-  hardcode_automatic=yes-  hardcode_shlibpath_var=unsupported-  if test yes = "$lt_cv_ld_force_load"; then-    whole_archive_flag_spec='`for conv in $convenience\"\"; do test  -n \"$conv\" && new_convenience=\"$new_convenience $wl-force_load,$conv\"; done; func_echo_all \"$new_convenience\"`'--  else-    whole_archive_flag_spec=''-  fi-  link_all_deplibs=yes-  allow_undefined_flag=$_lt_dar_allow_undefined-  case $cc_basename in-     ifort*|nagfor*) _lt_dar_can_shared=yes ;;-     *) _lt_dar_can_shared=$GCC ;;-  esac-  if test yes = "$_lt_dar_can_shared"; then-    output_verbose_link_cmd=func_echo_all-    archive_cmds="\$CC -dynamiclib \$allow_undefined_flag -o \$lib \$libobjs \$deplibs \$compiler_flags -install_name \$rpath/\$soname \$verstring $_lt_dar_single_mod$_lt_dsymutil"-    module_cmds="\$CC \$allow_undefined_flag -o \$lib -bundle \$libobjs \$deplibs \$compiler_flags$_lt_dsymutil"-    archive_expsym_cmds="$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"-    module_expsym_cmds="$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"--  else-  ld_shlibs=no-  fi--      ;;--    dgux*)-      archive_cmds='$LD -G -h $soname -o $lib $libobjs $deplibs $linker_flags'-      hardcode_libdir_flag_spec='-L$libdir'-      hardcode_shlibpath_var=no-      ;;--    # FreeBSD 2.2.[012] allows us to include c++rt0.o to get C++ constructor-    # support.  Future versions do this automatically, but an explicit c++rt0.o-    # does not break anything, and helps significantly (at the cost of a little-    # extra space).-    freebsd2.2*)-      archive_cmds='$LD -Bshareable -o $lib $libobjs $deplibs $linker_flags /usr/lib/c++rt0.o'-      hardcode_libdir_flag_spec='-R$libdir'-      hardcode_direct=yes-      hardcode_shlibpath_var=no-      ;;--    # Unfortunately, older versions of FreeBSD 2 do not have this feature.-    freebsd2.*)-      archive_cmds='$LD -Bshareable -o $lib $libobjs $deplibs $linker_flags'-      hardcode_direct=yes-      hardcode_minus_L=yes-      hardcode_shlibpath_var=no-      ;;--    # FreeBSD 3 and greater uses gcc -shared to do shared libraries.-    freebsd* | dragonfly* | midnightbsd*)-      archive_cmds='$CC -shared $pic_flag -o $lib $libobjs $deplibs $compiler_flags'-      hardcode_libdir_flag_spec='-R$libdir'-      hardcode_direct=yes-      hardcode_shlibpath_var=no-      ;;--    hpux9*)-      if test yes = "$GCC"; then-	archive_cmds='$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'-      else-	archive_cmds='$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'-      fi-      hardcode_libdir_flag_spec='$wl+b $wl$libdir'-      hardcode_libdir_separator=:-      hardcode_direct=yes--      # hardcode_minus_L: Not really in the search PATH,-      # but as the default location of the library.-      hardcode_minus_L=yes-      export_dynamic_flag_spec='$wl-E'-      ;;--    hpux10*)-      if test yes,no = "$GCC,$with_gnu_ld"; then-	archive_cmds='$CC -shared $pic_flag $wl+h $wl$soname $wl+b $wl$install_libdir -o $lib $libobjs $deplibs $compiler_flags'-      else-	archive_cmds='$LD -b +h $soname +b $install_libdir -o $lib $libobjs $deplibs $linker_flags'-      fi-      if test no = "$with_gnu_ld"; then-	hardcode_libdir_flag_spec='$wl+b $wl$libdir'-	hardcode_libdir_separator=:-	hardcode_direct=yes-	hardcode_direct_absolute=yes-	export_dynamic_flag_spec='$wl-E'-	# hardcode_minus_L: Not really in the search PATH,-	# but as the default location of the library.-	hardcode_minus_L=yes-      fi-      ;;--    hpux11*)-      if test yes,no = "$GCC,$with_gnu_ld"; then-	case $host_cpu in-	hppa*64*)-	  archive_cmds='$CC -shared $wl+h $wl$soname -o $lib $libobjs $deplibs $compiler_flags'-	  ;;-	ia64*)-	  archive_cmds='$CC -shared $pic_flag $wl+h $wl$soname $wl+nodefaultrpath -o $lib $libobjs $deplibs $compiler_flags'-	  ;;-	*)-	  archive_cmds='$CC -shared $pic_flag $wl+h $wl$soname $wl+b $wl$install_libdir -o $lib $libobjs $deplibs $compiler_flags'-	  ;;-	esac-      else-	case $host_cpu in-	hppa*64*)-	  archive_cmds='$CC -b $wl+h $wl$soname -o $lib $libobjs $deplibs $compiler_flags'-	  ;;-	ia64*)-	  archive_cmds='$CC -b $wl+h $wl$soname $wl+nodefaultrpath -o $lib $libobjs $deplibs $compiler_flags'-	  ;;-	*)--	  # Older versions of the 11.00 compiler do not understand -b yet-	  # (HP92453-01 A.11.01.20 doesn't, HP92453-01 B.11.X.35175-35176.GP does)-	  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking if $CC understands -b" >&5-printf %s "checking if $CC understands -b... " >&6; }-if test ${lt_cv_prog_compiler__b+y}-then :-  printf %s "(cached) " >&6-else case e in #(-  e) lt_cv_prog_compiler__b=no-   save_LDFLAGS=$LDFLAGS-   LDFLAGS="$LDFLAGS -b"-   echo "$lt_simple_link_test_code" > conftest.$ac_ext-   if (eval $ac_link 2>conftest.err) && test -s conftest$ac_exeext; then-     # The linker can only warn and ignore the option if not recognized-     # So say no if there are warnings-     if test -s conftest.err; then-       # Append any errors to the config.log.-       cat conftest.err 1>&5-       $ECHO "$_lt_linker_boilerplate" | $SED '/^$/d' > conftest.exp-       $SED '/^$/d; /^ *+/d' conftest.err >conftest.er2-       if diff conftest.exp conftest.er2 >/dev/null; then-         lt_cv_prog_compiler__b=yes-       fi-     else-       lt_cv_prog_compiler__b=yes-     fi-   fi-   $RM -r conftest*-   LDFLAGS=$save_LDFLAGS- ;;-esac-fi-{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $lt_cv_prog_compiler__b" >&5-printf "%s\n" "$lt_cv_prog_compiler__b" >&6; }--if test yes = "$lt_cv_prog_compiler__b"; then-    archive_cmds='$CC -b $wl+h $wl$soname $wl+b $wl$install_libdir -o $lib $libobjs $deplibs $compiler_flags'-else-    archive_cmds='$LD -b +h $soname +b $install_libdir -o $lib $libobjs $deplibs $linker_flags'-fi--	  ;;-	esac-      fi-      if test no = "$with_gnu_ld"; then-	hardcode_libdir_flag_spec='$wl+b $wl$libdir'-	hardcode_libdir_separator=:--	case $host_cpu in-	hppa*64*|ia64*)-	  hardcode_direct=no-	  hardcode_shlibpath_var=no-	  ;;-	*)-	  hardcode_direct=yes-	  hardcode_direct_absolute=yes-	  export_dynamic_flag_spec='$wl-E'--	  # hardcode_minus_L: Not really in the search PATH,-	  # but as the default location of the library.-	  hardcode_minus_L=yes-	  ;;-	esac-      fi-      ;;--    irix5* | irix6* | nonstopux*)-      if test yes = "$GCC"; then-	archive_cmds='$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'-	# Try to use the -exported_symbol ld option, if it does not-	# work, assume that -exports_file does not work either and-	# implicitly export all symbols.-	# This should be the same for all languages, so no per-tag cache variable.-	{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking whether the $host_os linker accepts -exported_symbol" >&5-printf %s "checking whether the $host_os linker accepts -exported_symbol... " >&6; }-if test ${lt_cv_irix_exported_symbol+y}-then :-  printf %s "(cached) " >&6-else case e in #(-  e) save_LDFLAGS=$LDFLAGS-	   LDFLAGS="$LDFLAGS -shared $wl-exported_symbol ${wl}foo $wl-update_registry $wl/dev/null"-	   cat confdefs.h - <<_ACEOF >conftest.$ac_ext-/* end confdefs.h.  */-int foo (void) { return 0; }-_ACEOF-if ac_fn_c_try_link "$LINENO"-then :-  lt_cv_irix_exported_symbol=yes-else case e in #(-  e) lt_cv_irix_exported_symbol=no ;;-esac-fi-rm -f core conftest.err conftest.$ac_objext conftest.beam \-    conftest$ac_exeext conftest.$ac_ext-           LDFLAGS=$save_LDFLAGS ;;-esac-fi-{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $lt_cv_irix_exported_symbol" >&5-printf "%s\n" "$lt_cv_irix_exported_symbol" >&6; }-	if test yes = "$lt_cv_irix_exported_symbol"; then-          archive_expsym_cmds='$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'-	fi-      else-	archive_cmds='$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'-	archive_expsym_cmds='$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'-      fi-      archive_cmds_need_lc='no'-      hardcode_libdir_flag_spec='$wl-rpath $wl$libdir'-      hardcode_libdir_separator=:-      inherit_rpath=yes-      link_all_deplibs=yes-      ;;--    linux*)-      case $cc_basename in-      tcc*)-	# Fabrice Bellard et al's Tiny C Compiler-	ld_shlibs=yes-	archive_cmds='$CC -shared $pic_flag -o $lib $libobjs $deplibs $compiler_flags'-	hardcode_libdir_flag_spec='$wl-rpath $wl$libdir'-	;;-      esac-      ;;--    *-mlibc)-      ;;--    netbsd* | netbsdelf*-gnu)-      if echo __ELF__ | $CC -E - | $GREP __ELF__ >/dev/null; then-	archive_cmds='$LD -Bshareable -o $lib $libobjs $deplibs $linker_flags'  # a.out-      else-	archive_cmds='$LD -shared -o $lib $libobjs $deplibs $linker_flags'      # ELF-      fi-      hardcode_libdir_flag_spec='-R$libdir'-      hardcode_direct=yes-      hardcode_shlibpath_var=no-      ;;--    newsos6)-      archive_cmds='$LD -G -h $soname -o $lib $libobjs $deplibs $linker_flags'-      hardcode_direct=yes-      hardcode_libdir_flag_spec='$wl-rpath $wl$libdir'-      hardcode_libdir_separator=:-      hardcode_shlibpath_var=no-      ;;--    *nto* | *qnx*)-      ;;--    openbsd*)-      if test -f /usr/libexec/ld.so; then-	hardcode_direct=yes-	hardcode_shlibpath_var=no-	hardcode_direct_absolute=yes-	if test -z "`echo __ELF__ | $CC -E - | $GREP __ELF__`"; then-	  archive_cmds='$CC -shared $pic_flag -o $lib $libobjs $deplibs $compiler_flags'-	  archive_expsym_cmds='$CC -shared $pic_flag -o $lib $libobjs $deplibs $compiler_flags $wl-retain-symbols-file,$export_symbols'-	  hardcode_libdir_flag_spec='$wl-rpath,$libdir'-	  export_dynamic_flag_spec='$wl-E'-	else-	  archive_cmds='$CC -shared $pic_flag -o $lib $libobjs $deplibs $compiler_flags'-	  hardcode_libdir_flag_spec='$wl-rpath,$libdir'-	fi-      else-	ld_shlibs=no-      fi-      ;;--    os2*)-      hardcode_libdir_flag_spec='-L$libdir'-      hardcode_minus_L=yes-      allow_undefined_flag=unsupported-      shrext_cmds=.dll-      archive_cmds='$ECHO "LIBRARY ${soname%$shared_ext} INITINSTANCE TERMINSTANCE" > $output_objdir/$libname.def~-	$ECHO "DESCRIPTION \"$libname\"" >> $output_objdir/$libname.def~-	$ECHO "DATA MULTIPLE NONSHARED" >> $output_objdir/$libname.def~-	$ECHO EXPORTS >> $output_objdir/$libname.def~-	emxexp $libobjs | $SED /"_DLL_InitTerm"/d >> $output_objdir/$libname.def~-	$CC -Zdll -Zcrtdll -o $output_objdir/$soname $libobjs $deplibs $compiler_flags $output_objdir/$libname.def~-	emximp -o $lib $output_objdir/$libname.def'-      archive_expsym_cmds='$ECHO "LIBRARY ${soname%$shared_ext} INITINSTANCE TERMINSTANCE" > $output_objdir/$libname.def~-	$ECHO "DESCRIPTION \"$libname\"" >> $output_objdir/$libname.def~-	$ECHO "DATA MULTIPLE NONSHARED" >> $output_objdir/$libname.def~-	$ECHO EXPORTS >> $output_objdir/$libname.def~-	prefix_cmds="$SED"~-	if test EXPORTS = "`$SED 1q $export_symbols`"; then-	  prefix_cmds="$prefix_cmds -e 1d";-	fi~-	prefix_cmds="$prefix_cmds -e \"s/^\(.*\)$/_\1/g\""~-	cat $export_symbols | $prefix_cmds >> $output_objdir/$libname.def~-	$CC -Zdll -Zcrtdll -o $output_objdir/$soname $libobjs $deplibs $compiler_flags $output_objdir/$libname.def~-	emximp -o $lib $output_objdir/$libname.def'-      old_archive_from_new_cmds='emximp -o $output_objdir/${libname}_dll.a $output_objdir/$libname.def'-      enable_shared_with_static_runtimes=yes-      file_list_spec='@'-      ;;--    osf3*)-      if test yes = "$GCC"; then-	allow_undefined_flag=' $wl-expect_unresolved $wl\*'-	archive_cmds='$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'-      else-	allow_undefined_flag=' -expect_unresolved \*'-	archive_cmds='$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'-      fi-      archive_cmds_need_lc='no'-      hardcode_libdir_flag_spec='$wl-rpath $wl$libdir'-      hardcode_libdir_separator=:-      ;;--    osf4* | osf5*)	# as osf3* with the addition of -msym flag-      if test yes = "$GCC"; then-	allow_undefined_flag=' $wl-expect_unresolved $wl\*'-	archive_cmds='$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'-	hardcode_libdir_flag_spec='$wl-rpath $wl$libdir'-      else-	allow_undefined_flag=' -expect_unresolved \*'-	archive_cmds='$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'-	archive_expsym_cmds='for i in `cat $export_symbols`; do printf "%s %s\\n" -exported_symbol "\$i" >> $lib.exp; done; printf "%s\\n" "-hidden">> $lib.exp~-          $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'--	# Both c and cxx compiler support -rpath directly-	hardcode_libdir_flag_spec='-rpath $libdir'-      fi-      archive_cmds_need_lc='no'-      hardcode_libdir_separator=:-      ;;--    serenity*)-      ;;--    solaris*)-      no_undefined_flag=' -z defs'-      if test yes = "$GCC"; then-	wlarc='$wl'-	archive_cmds='$CC -shared $pic_flag $wl-z ${wl}text $wl-h $wl$soname -o $lib $libobjs $deplibs $compiler_flags'-	archive_expsym_cmds='echo "{ global:" > $lib.exp~cat $export_symbols | $SED -e "s/\(.*\)/\1;/" >> $lib.exp~echo "local: *; };" >> $lib.exp~-          $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'-      else-	case `$CC -V 2>&1` in-	*"Compilers 5.0"*)-	  wlarc=''-	  archive_cmds='$LD -G$allow_undefined_flag -h $soname -o $lib $libobjs $deplibs $linker_flags'-	  archive_expsym_cmds='echo "{ global:" > $lib.exp~cat $export_symbols | $SED -e "s/\(.*\)/\1;/" >> $lib.exp~echo "local: *; };" >> $lib.exp~-            $LD -G$allow_undefined_flag -M $lib.exp -h $soname -o $lib $libobjs $deplibs $linker_flags~$RM $lib.exp'-	  ;;-	*)-	  wlarc='$wl'-	  archive_cmds='$CC -G$allow_undefined_flag -h $soname -o $lib $libobjs $deplibs $compiler_flags'-	  archive_expsym_cmds='echo "{ global:" > $lib.exp~cat $export_symbols | $SED -e "s/\(.*\)/\1;/" >> $lib.exp~echo "local: *; };" >> $lib.exp~-            $CC -G$allow_undefined_flag -M $lib.exp -h $soname -o $lib $libobjs $deplibs $compiler_flags~$RM $lib.exp'-	  ;;-	esac-      fi-      hardcode_libdir_flag_spec='-R$libdir'-      hardcode_shlibpath_var=no-      case $host_os in-      solaris2.[0-5] | solaris2.[0-5].*) ;;-      *)-	# The compiler driver will combine and reorder linker options,-	# but understands '-z linker_flag'.  GCC discards it without '$wl',-	# but is careful enough not to reorder.-	# Supported since Solaris 2.6 (maybe 2.5.1?)-	if test yes = "$GCC"; then-	  whole_archive_flag_spec='$wl-z ${wl}allextract$convenience $wl-z ${wl}defaultextract'-	else-	  whole_archive_flag_spec='-z allextract$convenience -z defaultextract'-	fi-	;;-      esac-      link_all_deplibs=yes-      ;;--    sunos4*)-      if test sequent = "$host_vendor"; then-	# Use $CC to link under sequent, because it throws in some extra .o-	# files that make .init and .fini sections work.-	archive_cmds='$CC -G $wl-h $soname -o $lib $libobjs $deplibs $compiler_flags'-      else-	archive_cmds='$LD -assert pure-text -Bstatic -o $lib $libobjs $deplibs $linker_flags'-      fi-      hardcode_libdir_flag_spec='-L$libdir'-      hardcode_direct=yes-      hardcode_minus_L=yes-      hardcode_shlibpath_var=no-      ;;--    sysv4)-      case $host_vendor in-	sni)-	  archive_cmds='$LD -G -h $soname -o $lib $libobjs $deplibs $linker_flags'-	  hardcode_direct=yes # is this really true???-	;;-	siemens)-	  ## LD is ld it makes a PLAMLIB-	  ## CC just makes a GrossModule.-	  archive_cmds='$LD -G -o $lib $libobjs $deplibs $linker_flags'-	  reload_cmds='$CC -r -o $output$reload_objs'-	  hardcode_direct=no-        ;;-	motorola)-	  archive_cmds='$LD -G -h $soname -o $lib $libobjs $deplibs $linker_flags'-	  hardcode_direct=no #Motorola manual says yes, but my tests say they lie-	;;-      esac-      runpath_var='LD_RUN_PATH'-      hardcode_shlibpath_var=no-      ;;--    sysv4.3*)-      archive_cmds='$LD -G -h $soname -o $lib $libobjs $deplibs $linker_flags'-      hardcode_shlibpath_var=no-      export_dynamic_flag_spec='-Bexport'-      ;;--    sysv4*MP*)-      if test -d /usr/nec; then-	archive_cmds='$LD -G -h $soname -o $lib $libobjs $deplibs $linker_flags'-	hardcode_shlibpath_var=no-	runpath_var=LD_RUN_PATH-	hardcode_runpath_var=yes-	ld_shlibs=yes-      fi-      ;;--    sysv4*uw2* | sysv5OpenUNIX* | sysv5UnixWare7.[01].[10]* | unixware7* | sco3.2v5.0.[024]*)-      no_undefined_flag='$wl-z,text'-      archive_cmds_need_lc=no-      hardcode_shlibpath_var=no-      runpath_var='LD_RUN_PATH'--      if test yes = "$GCC"; then-	archive_cmds='$CC -shared $wl-h,$soname -o $lib $libobjs $deplibs $compiler_flags'-	archive_expsym_cmds='$CC -shared $wl-Bexport:$export_symbols $wl-h,$soname -o $lib $libobjs $deplibs $compiler_flags'-      else-	archive_cmds='$CC -G $wl-h,$soname -o $lib $libobjs $deplibs $compiler_flags'-	archive_expsym_cmds='$CC -G $wl-Bexport:$export_symbols $wl-h,$soname -o $lib $libobjs $deplibs $compiler_flags'-      fi-      ;;--    sysv5* | sco3.2v5* | sco5v6*)-      # Note: We CANNOT use -z defs as we might desire, because we do not-      # link with -lc, and that would cause any symbols used from libc to-      # always be unresolved, which means just about no library would-      # ever link correctly.  If we're not using GNU ld we use -z text-      # though, which does catch some bad symbols but isn't as heavy-handed-      # as -z defs.-      no_undefined_flag='$wl-z,text'-      allow_undefined_flag='$wl-z,nodefs'-      archive_cmds_need_lc=no-      hardcode_shlibpath_var=no-      hardcode_libdir_flag_spec='$wl-R,$libdir'-      hardcode_libdir_separator=':'-      link_all_deplibs=yes-      export_dynamic_flag_spec='$wl-Bexport'-      runpath_var='LD_RUN_PATH'--      if test yes = "$GCC"; then-	archive_cmds='$CC -shared $wl-h,$soname -o $lib $libobjs $deplibs $compiler_flags'-	archive_expsym_cmds='$CC -shared $wl-Bexport:$export_symbols $wl-h,$soname -o $lib $libobjs $deplibs $compiler_flags'-      else-	archive_cmds='$CC -G $wl-h,$soname -o $lib $libobjs $deplibs $compiler_flags'-	archive_expsym_cmds='$CC -G $wl-Bexport:$export_symbols $wl-h,$soname -o $lib $libobjs $deplibs $compiler_flags'-      fi-      ;;--    uts4*)-      archive_cmds='$LD -G -h $soname -o $lib $libobjs $deplibs $linker_flags'-      hardcode_libdir_flag_spec='-L$libdir'-      hardcode_shlibpath_var=no-      ;;--    *)-      ld_shlibs=no-      ;;-    esac--    if test sni = "$host_vendor"; then-      case $host in-      sysv4 | sysv4.2uw2* | sysv4.3* | sysv5*)-	export_dynamic_flag_spec='$wl-Blargedynsym'-	;;-      esac-    fi-  fi--{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ld_shlibs" >&5-printf "%s\n" "$ld_shlibs" >&6; }-test no = "$ld_shlibs" && can_build_shared=no--with_gnu_ld=$with_gnu_ld----------------#-# Do we need to explicitly link libc?-#-case "x$archive_cmds_need_lc" in-x|xyes)-  # Assume -lc should be added-  archive_cmds_need_lc=yes--  if test yes,yes = "$GCC,$enable_shared"; then-    case $archive_cmds in-    *'~'*)-      # FIXME: we may have to deal with multi-command sequences.-      ;;-    '$CC '*)-      # Test whether the compiler implicitly links with -lc since on some-      # systems, -lgcc has to come before -lc. If gcc already passes -lc-      # to ld, don't add -lc before -lgcc.-      { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking whether -lc should be explicitly linked in" >&5-printf %s "checking whether -lc should be explicitly linked in... " >&6; }-if test ${lt_cv_archive_cmds_need_lc+y}-then :-  printf %s "(cached) " >&6-else case e in #(-  e) $RM conftest*-	echo "$lt_simple_compile_test_code" > conftest.$ac_ext--	if { { eval echo "\"\$as_me\":${as_lineno-$LINENO}: \"$ac_compile\""; } >&5-  (eval $ac_compile) 2>&5-  ac_status=$?-  printf "%s\n" "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5-  test $ac_status = 0; } 2>conftest.err; then-	  soname=conftest-	  lib=conftest-	  libobjs=conftest.$ac_objext-	  deplibs=-	  wl=$lt_prog_compiler_wl-	  pic_flag=$lt_prog_compiler_pic-	  compiler_flags=-v-	  linker_flags=-v-	  verstring=-	  output_objdir=.-	  libname=conftest-	  lt_save_allow_undefined_flag=$allow_undefined_flag-	  allow_undefined_flag=-	  if { { eval echo "\"\$as_me\":${as_lineno-$LINENO}: \"$archive_cmds 2\>\&1 \| $GREP \" -lc \" \>/dev/null 2\>\&1\""; } >&5-  (eval $archive_cmds 2\>\&1 \| $GREP \" -lc \" \>/dev/null 2\>\&1) 2>&5-  ac_status=$?-  printf "%s\n" "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5-  test $ac_status = 0; }-	  then-	    lt_cv_archive_cmds_need_lc=no-	  else-	    lt_cv_archive_cmds_need_lc=yes-	  fi-	  allow_undefined_flag=$lt_save_allow_undefined_flag-	else-	  cat conftest.err 1>&5-	fi-	$RM conftest*-	 ;;-esac-fi-{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $lt_cv_archive_cmds_need_lc" >&5-printf "%s\n" "$lt_cv_archive_cmds_need_lc" >&6; }-      archive_cmds_need_lc=$lt_cv_archive_cmds_need_lc-      ;;-    esac-  fi-  ;;-esac---------------------------------------------------------------------------------------------------------------------------------------------------------  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking dynamic linker characteristics" >&5-printf %s "checking dynamic linker characteristics... " >&6; }--if test yes = "$GCC"; then-  case $host_os in-    darwin*) lt_awk_arg='/^libraries:/,/LR/' ;;-    *) lt_awk_arg='/^libraries:/' ;;-  esac-  case $host_os in-    mingw* | windows* | cegcc*) lt_sed_strip_eq='s|=\([A-Za-z]:\)|\1|g' ;;-    *) lt_sed_strip_eq='s|=/|/|g' ;;-  esac-  lt_search_path_spec=`$CC -print-search-dirs | awk $lt_awk_arg | $SED -e "s/^libraries://" -e $lt_sed_strip_eq`-  case $lt_search_path_spec in-  *\;*)-    # if the path contains ";" then we assume it to be the separator-    # otherwise default to the standard path separator (i.e. ":") - it is-    # assumed that no part of a normal pathname contains ";" but that should-    # okay in the real world where ";" in dirpaths is itself problematic.-    lt_search_path_spec=`$ECHO "$lt_search_path_spec" | $SED 's/;/ /g'`-    ;;-  *)-    lt_search_path_spec=`$ECHO "$lt_search_path_spec" | $SED "s/$PATH_SEPARATOR/ /g"`-    ;;-  esac-  # Ok, now we have the path, separated by spaces, we can step through it-  # and add multilib dir if necessary...-  lt_tmp_lt_search_path_spec=-  lt_multi_os_dir=/`$CC $CPPFLAGS $CFLAGS $LDFLAGS -print-multi-os-directory 2>/dev/null`-  # ...but if some path component already ends with the multilib dir we assume-  # that all is fine and trust -print-search-dirs as is (GCC 4.2? or newer).-  case "$lt_multi_os_dir; $lt_search_path_spec " in-  "/; "* | "/.; "* | "/./; "* | *"$lt_multi_os_dir "* | *"$lt_multi_os_dir/ "*)-    lt_multi_os_dir=-    ;;-  esac-  for lt_sys_path in $lt_search_path_spec; do-    if test -d "$lt_sys_path$lt_multi_os_dir"; then-      lt_tmp_lt_search_path_spec="$lt_tmp_lt_search_path_spec $lt_sys_path$lt_multi_os_dir"-    elif test -n "$lt_multi_os_dir"; then-      test -d "$lt_sys_path" && \-	lt_tmp_lt_search_path_spec="$lt_tmp_lt_search_path_spec $lt_sys_path"-    fi-  done-  lt_search_path_spec=`$ECHO "$lt_tmp_lt_search_path_spec" | awk '-BEGIN {RS = " "; FS = "/|\n";} {-  lt_foo = "";-  lt_count = 0;-  for (lt_i = NF; lt_i > 0; lt_i--) {-    if ($lt_i != "" && $lt_i != ".") {-      if ($lt_i == "..") {-        lt_count++;-      } else {-        if (lt_count == 0) {-          lt_foo = "/" $lt_i lt_foo;-        } else {-          lt_count--;-        }-      }-    }-  }-  if (lt_foo != "") { lt_freq[lt_foo]++; }-  if (lt_freq[lt_foo] == 1) { print lt_foo; }-}'`-  # AWK program above erroneously prepends '/' to C:/dos/paths-  # for these hosts.-  case $host_os in-    mingw* | windows* | cegcc*) lt_search_path_spec=`$ECHO "$lt_search_path_spec" |\-      $SED 's|/\([A-Za-z]:\)|\1|g'` ;;-  esac-  sys_lib_search_path_spec=`$ECHO "$lt_search_path_spec" | $lt_NL2SP`-else-  sys_lib_search_path_spec="/lib /usr/lib /usr/local/lib"-fi-library_names_spec=-libname_spec='lib$name'-soname_spec=-shrext_cmds=.so-postinstall_cmds=-postuninstall_cmds=-finish_cmds=-finish_eval=-shlibpath_var=-shlibpath_overrides_runpath=unknown-version_type=none-dynamic_linker="$host_os ld.so"-sys_lib_dlsearch_path_spec="/lib /usr/lib"-need_lib_prefix=unknown-hardcode_into_libs=no--# when you set need_version to no, make sure it does not cause -set_version-# flags to be left without arguments-need_version=unknown----case $host_os in-aix3*)-  version_type=linux # correct to gnu/linux during the next big refactor-  library_names_spec='$libname$release$shared_ext$versuffix $libname.a'-  shlibpath_var=LIBPATH--  # AIX 3 has no versioning support, so we append a major version to the name.-  soname_spec='$libname$release$shared_ext$major'-  ;;--aix[4-9]*)-  version_type=linux # correct to gnu/linux during the next big refactor-  need_lib_prefix=no-  need_version=no-  hardcode_into_libs=yes-  if test ia64 = "$host_cpu"; then-    # AIX 5 supports IA64-    library_names_spec='$libname$release$shared_ext$major $libname$release$shared_ext$versuffix $libname$shared_ext'-    shlibpath_var=LD_LIBRARY_PATH-  else-    # With GCC up to 2.95.x, collect2 would create an import file-    # for dependence libraries.  The import file would start with-    # the line '#! .'.  This would cause the generated library to-    # depend on '.', always an invalid library.  This was fixed in-    # development snapshots of GCC prior to 3.0.-    case $host_os in-      aix4 | aix4.[01] | aix4.[01].*)-      if { echo '#if __GNUC__ > 2 || (__GNUC__ == 2 && __GNUC_MINOR__ >= 97)'-	   echo ' yes '-	   echo '#endif'; } | $CC -E - | $GREP yes > /dev/null; then-	:-      else-	can_build_shared=no-      fi-      ;;-    esac-    # Using Import Files as archive members, it is possible to support-    # filename-based versioning of shared library archives on AIX. While-    # this would work for both with and without runtime linking, it will-    # prevent static linking of such archives. So we do filename-based-    # shared library versioning with .so extension only, which is used-    # when both runtime linking and shared linking is enabled.-    # Unfortunately, runtime linking may impact performance, so we do-    # not want this to be the default eventually. Also, we use the-    # versioned .so libs for executables only if there is the -brtl-    # linker flag in LDFLAGS as well, or --enable-aix-soname=svr4 only.-    # To allow for filename-based versioning support, we need to create-    # libNAME.so.V as an archive file, containing:-    # *) an Import File, referring to the versioned filename of the-    #    archive as well as the shared archive member, telling the-    #    bitwidth (32 or 64) of that shared object, and providing the-    #    list of exported symbols of that shared object, eventually-    #    decorated with the 'weak' keyword-    # *) the shared object with the F_LOADONLY flag set, to really avoid-    #    it being seen by the linker.-    # At run time we better use the real file rather than another symlink,-    # but for link time we create the symlink libNAME.so -> libNAME.so.V--    case $with_aix_soname,$aix_use_runtimelinking in-    # AIX (on Power*) has no versioning support, so currently we cannot hardcode correct-    # soname into executable. Probably we can add versioning support to-    # collect2, so additional links can be useful in future.-    aix,yes) # traditional libtool-      dynamic_linker='AIX unversionable lib.so'-      # If using run time linking (on AIX 4.2 or later) use lib<name>.so-      # instead of lib<name>.a to let people know that these are not-      # typical AIX shared libraries.-      library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$shared_ext'-      ;;-    aix,no) # traditional AIX only-      dynamic_linker='AIX lib.a(lib.so.V)'-      # We preserve .a as extension for shared libraries through AIX4.2-      # and later when we are not doing run time linking.-      library_names_spec='$libname$release.a $libname.a'-      soname_spec='$libname$release$shared_ext$major'-      ;;-    svr4,*) # full svr4 only-      dynamic_linker="AIX lib.so.V($shared_archive_member_spec.o)"-      library_names_spec='$libname$release$shared_ext$major $libname$shared_ext'-      # We do not specify a path in Import Files, so LIBPATH fires.-      shlibpath_overrides_runpath=yes-      ;;-    *,yes) # both, prefer svr4-      dynamic_linker="AIX lib.so.V($shared_archive_member_spec.o), lib.a(lib.so.V)"-      library_names_spec='$libname$release$shared_ext$major $libname$shared_ext'-      # unpreferred sharedlib libNAME.a needs extra handling-      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"'-      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"'-      # We do not specify a path in Import Files, so LIBPATH fires.-      shlibpath_overrides_runpath=yes-      ;;-    *,no) # both, prefer aix-      dynamic_linker="AIX lib.a(lib.so.V), lib.so.V($shared_archive_member_spec.o)"-      library_names_spec='$libname$release.a $libname.a'-      soname_spec='$libname$release$shared_ext$major'-      # unpreferred sharedlib libNAME.so.V and symlink libNAME.so need extra handling-      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)'-      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"'-      ;;-    esac-    shlibpath_var=LIBPATH-  fi-  ;;--amigaos*)-  case $host_cpu in-  powerpc)-    # Since July 2007 AmigaOS4 officially supports .so libraries.-    # When compiling the executable, add -use-dynld -Lsobjs: to the compileline.-    library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$shared_ext'-    ;;-  m68k)-    library_names_spec='$libname.ixlibrary $libname.a'-    # Create ${libname}_ixlibrary.a entries in /sys/libs.-    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'-    ;;-  esac-  ;;--beos*)-  library_names_spec='$libname$shared_ext'-  dynamic_linker="$host_os ld.so"-  shlibpath_var=LIBRARY_PATH-  ;;--bsdi[45]*)-  version_type=linux # correct to gnu/linux during the next big refactor-  need_version=no-  library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$shared_ext'-  soname_spec='$libname$release$shared_ext$major'-  finish_cmds='PATH="\$PATH:/sbin" ldconfig $libdir'-  shlibpath_var=LD_LIBRARY_PATH-  sys_lib_search_path_spec="/shlib /usr/lib /usr/X11/lib /usr/contrib/lib /lib /usr/local/lib"-  sys_lib_dlsearch_path_spec="/shlib /usr/lib /usr/local/lib"-  # the default ld.so.conf also contains /usr/contrib/lib and-  # /usr/X11R6/lib (/usr/X11 is a link to /usr/X11R6), but let us allow-  # libtool to hard-code these into programs-  ;;--cygwin* | mingw* | windows* | pw32* | cegcc*)-  version_type=windows-  shrext_cmds=.dll-  need_version=no-  need_lib_prefix=no--  case $GCC,$cc_basename in-  yes,*)-    # gcc-    library_names_spec='$libname.dll.a'-    # DLL is installed to $(libdir)/../bin by postinstall_cmds-    # If user builds GCC with multilib enabled,-    # it should just install on $(libdir)-    # not on $(libdir)/../bin or 32 bits dlls would override 64 bit ones.-    if test xyes = x"$multilib"; then-      postinstall_cmds='base_file=`basename \$file`~-        dlpath=`$SHELL 2>&1 -c '\''. $dir/'\''\$base_file'\''i; echo \$dlname'\''`~-        dldir=$destdir/`dirname \$dlpath`~-        $install_prog $dir/$dlname $destdir/$dlname~-        chmod a+x $destdir/$dlname~-        if test -n '\''$stripme'\'' && test -n '\''$striplib'\''; then-          eval '\''$striplib $destdir/$dlname'\'' || exit \$?;-        fi'-    else-      postinstall_cmds='base_file=`basename \$file`~-        dlpath=`$SHELL 2>&1 -c '\''. $dir/'\''\$base_file'\''i; echo \$dlname'\''`~-        dldir=$destdir/`dirname \$dlpath`~-        test -d \$dldir || mkdir -p \$dldir~-        $install_prog $dir/$dlname \$dldir/$dlname~-        chmod a+x \$dldir/$dlname~-        if test -n '\''$stripme'\'' && test -n '\''$striplib'\''; then-          eval '\''$striplib \$dldir/$dlname'\'' || exit \$?;-        fi'-    fi-    postuninstall_cmds='dldll=`$SHELL 2>&1 -c '\''. $file; echo \$dlname'\''`~-      dlpath=$dir/\$dldll~-       $RM \$dlpath'-    shlibpath_overrides_runpath=yes--    case $host_os in-    cygwin*)-      # Cygwin DLLs use 'cyg' prefix rather than 'lib'-      soname_spec='`echo $libname | $SED -e 's/^lib/cyg/'``echo $release | $SED -e 's/[.]/-/g'`$versuffix$shared_ext'--      sys_lib_search_path_spec="$sys_lib_search_path_spec /usr/lib/w32api"-      ;;-    mingw* | windows* | cegcc*)-      # MinGW DLLs use traditional 'lib' prefix-      soname_spec='$libname`echo $release | $SED -e 's/[.]/-/g'`$versuffix$shared_ext'-      ;;-    pw32*)-      # pw32 DLLs use 'pw' prefix rather than 'lib'-      library_names_spec='`echo $libname | $SED -e 's/^lib/pw/'``echo $release | $SED -e 's/[.]/-/g'`$versuffix$shared_ext'-      ;;-    esac-    dynamic_linker='Win32 ld.exe'-    ;;--  *,cl* | *,icl*)-    # Native MSVC or ICC-    libname_spec='$name'-    soname_spec='$libname`echo $release | $SED -e 's/[.]/-/g'`$versuffix$shared_ext'-    library_names_spec='$libname.dll.lib'--    case $build_os in-    mingw* | windows*)-      sys_lib_search_path_spec=-      lt_save_ifs=$IFS-      IFS=';'-      for lt_path in $LIB-      do-        IFS=$lt_save_ifs-        # Let DOS variable expansion print the short 8.3 style file name.-        lt_path=`cd "$lt_path" 2>/dev/null && cmd //C "for %i in (".") do @echo %~si"`-        sys_lib_search_path_spec="$sys_lib_search_path_spec $lt_path"-      done-      IFS=$lt_save_ifs-      # Convert to MSYS style.-      sys_lib_search_path_spec=`$ECHO "$sys_lib_search_path_spec" | $SED -e 's|\\\\|/|g' -e 's| \\([a-zA-Z]\\):| /\\1|g' -e 's|^ ||'`-      ;;-    cygwin*)-      # Convert to unix form, then to dos form, then back to unix form-      # but this time dos style (no spaces!) so that the unix form looks-      # like /cygdrive/c/PROGRA~1:/cygdr...-      sys_lib_search_path_spec=`cygpath --path --unix "$LIB"`-      sys_lib_search_path_spec=`cygpath --path --dos "$sys_lib_search_path_spec" 2>/dev/null`-      sys_lib_search_path_spec=`cygpath --path --unix "$sys_lib_search_path_spec" | $SED -e "s/$PATH_SEPARATOR/ /g"`-      ;;-    *)-      sys_lib_search_path_spec=$LIB-      if $ECHO "$sys_lib_search_path_spec" | $GREP ';[c-zC-Z]:/' >/dev/null; then-        # It is most probably a Windows format PATH.-        sys_lib_search_path_spec=`$ECHO "$sys_lib_search_path_spec" | $SED -e 's/;/ /g'`-      else-        sys_lib_search_path_spec=`$ECHO "$sys_lib_search_path_spec" | $SED -e "s/$PATH_SEPARATOR/ /g"`-      fi-      # FIXME: find the short name or the path components, as spaces are-      # common. (e.g. "Program Files" -> "PROGRA~1")-      ;;-    esac--    # DLL is installed to $(libdir)/../bin by postinstall_cmds-    postinstall_cmds='base_file=`basename \$file`~-      dlpath=`$SHELL 2>&1 -c '\''. $dir/'\''\$base_file'\''i; echo \$dlname'\''`~-      dldir=$destdir/`dirname \$dlpath`~-      test -d \$dldir || mkdir -p \$dldir~-      $install_prog $dir/$dlname \$dldir/$dlname'-    postuninstall_cmds='dldll=`$SHELL 2>&1 -c '\''. $file; echo \$dlname'\''`~-      dlpath=$dir/\$dldll~-       $RM \$dlpath'-    shlibpath_overrides_runpath=yes-    dynamic_linker='Win32 link.exe'-    ;;--  *)-    # Assume MSVC and ICC wrapper-    library_names_spec='$libname`echo $release | $SED -e 's/[.]/-/g'`$versuffix$shared_ext $libname.lib'-    dynamic_linker='Win32 ld.exe'-    ;;-  esac-  # FIXME: first we should search . and the directory the executable is in-  shlibpath_var=PATH-  ;;--darwin* | rhapsody*)-  dynamic_linker="$host_os dyld"-  version_type=darwin-  need_lib_prefix=no-  need_version=no-  library_names_spec='$libname$release$major$shared_ext $libname$shared_ext'-  soname_spec='$libname$release$major$shared_ext'-  shlibpath_overrides_runpath=yes-  shlibpath_var=DYLD_LIBRARY_PATH-  shrext_cmds='`test .$module = .yes && echo .so || echo .dylib`'--  sys_lib_search_path_spec="$sys_lib_search_path_spec /usr/local/lib"-  sys_lib_dlsearch_path_spec='/usr/local/lib /lib /usr/lib'-  ;;--dgux*)-  version_type=linux # correct to gnu/linux during the next big refactor-  need_lib_prefix=no-  need_version=no-  library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$shared_ext'-  soname_spec='$libname$release$shared_ext$major'-  shlibpath_var=LD_LIBRARY_PATH-  ;;--freebsd* | dragonfly* | midnightbsd*)-  # DragonFly does not have aout.  When/if they implement a new-  # versioning mechanism, adjust this.-  if test -x /usr/bin/objformat; then-    objformat=`/usr/bin/objformat`-  else-    case $host_os in-    freebsd[23].*) objformat=aout ;;-    *) objformat=elf ;;-    esac-  fi-  version_type=freebsd-$objformat-  case $version_type in-    freebsd-elf*)-      library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$shared_ext'-      soname_spec='$libname$release$shared_ext$major'-      need_version=no-      need_lib_prefix=no-      ;;-    freebsd-*)-      library_names_spec='$libname$release$shared_ext$versuffix $libname$shared_ext$versuffix'-      need_version=yes-      ;;-  esac-  case $host_cpu in-    powerpc64)-      # On FreeBSD bi-arch platforms, a different variable is used for 32-bit-      # binaries.  See <https://man.freebsd.org/cgi/man.cgi?query=ld.so>.-      cat confdefs.h - <<_ACEOF >conftest.$ac_ext-/* end confdefs.h.  */-int test_pointer_size[sizeof (void *) - 5];--_ACEOF-if ac_fn_c_try_compile "$LINENO"-then :-  shlibpath_var=LD_LIBRARY_PATH-else case e in #(-  e) shlibpath_var=LD_32_LIBRARY_PATH ;;-esac-fi-rm -f core conftest.err conftest.$ac_objext conftest.beam conftest.$ac_ext-      ;;-    *)-      shlibpath_var=LD_LIBRARY_PATH-      ;;-  esac-  case $host_os in-  freebsd2.*)-    shlibpath_overrides_runpath=yes-    ;;-  freebsd3.[01]* | freebsdelf3.[01]*)-    shlibpath_overrides_runpath=yes-    hardcode_into_libs=yes-    ;;-  freebsd3.[2-9]* | freebsdelf3.[2-9]* | \-  freebsd4.[0-5] | freebsdelf4.[0-5] | freebsd4.1.1 | freebsdelf4.1.1)-    shlibpath_overrides_runpath=no-    hardcode_into_libs=yes-    ;;-  *) # from 4.6 on, and DragonFly-    shlibpath_overrides_runpath=yes-    hardcode_into_libs=yes-    ;;-  esac-  ;;--haiku*)-  version_type=linux # correct to gnu/linux during the next big refactor-  need_lib_prefix=no-  need_version=no-  dynamic_linker="$host_os runtime_loader"-  library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$shared_ext'-  soname_spec='$libname$release$shared_ext$major'-  shlibpath_var=LIBRARY_PATH-  shlibpath_overrides_runpath=no-  sys_lib_search_path_spec='/boot/system/non-packaged/develop/lib /boot/system/develop/lib'-  sys_lib_dlsearch_path_spec='/boot/home/config/non-packaged/lib /boot/home/config/lib /boot/system/non-packaged/lib /boot/system/lib'-  hardcode_into_libs=no-  ;;--hpux9* | hpux10* | hpux11*)-  # Give a soname corresponding to the major version so that dld.sl refuses to-  # link against other versions.-  version_type=sunos-  need_lib_prefix=no-  need_version=no-  case $host_cpu in-  ia64*)-    shrext_cmds='.so'-    hardcode_into_libs=yes-    dynamic_linker="$host_os dld.so"-    shlibpath_var=LD_LIBRARY_PATH-    shlibpath_overrides_runpath=yes # Unless +noenvvar is specified.-    library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$shared_ext'-    soname_spec='$libname$release$shared_ext$major'-    if test 32 = "$HPUX_IA64_MODE"; then-      sys_lib_search_path_spec="/usr/lib/hpux32 /usr/local/lib/hpux32 /usr/local/lib"-      sys_lib_dlsearch_path_spec=/usr/lib/hpux32-    else-      sys_lib_search_path_spec="/usr/lib/hpux64 /usr/local/lib/hpux64"-      sys_lib_dlsearch_path_spec=/usr/lib/hpux64-    fi-    ;;-  hppa*64*)-    shrext_cmds='.sl'-    hardcode_into_libs=yes-    dynamic_linker="$host_os dld.sl"-    shlibpath_var=LD_LIBRARY_PATH # How should we handle SHLIB_PATH-    shlibpath_overrides_runpath=yes # Unless +noenvvar is specified.-    library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$shared_ext'-    soname_spec='$libname$release$shared_ext$major'-    sys_lib_search_path_spec="/usr/lib/pa20_64 /usr/ccs/lib/pa20_64"-    sys_lib_dlsearch_path_spec=$sys_lib_search_path_spec-    ;;-  *)-    shrext_cmds='.sl'-    dynamic_linker="$host_os dld.sl"-    shlibpath_var=SHLIB_PATH-    shlibpath_overrides_runpath=no # +s is required to enable SHLIB_PATH-    library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$shared_ext'-    soname_spec='$libname$release$shared_ext$major'-    ;;-  esac-  # HP-UX runs *really* slowly unless shared libraries are mode 555, ...-  postinstall_cmds='chmod 555 $lib'-  # or fails outright, so override atomically:-  install_override_mode=555-  ;;--interix[3-9]*)-  version_type=linux # correct to gnu/linux during the next big refactor-  need_lib_prefix=no-  need_version=no-  library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$shared_ext'-  soname_spec='$libname$release$shared_ext$major'-  dynamic_linker='Interix 3.x ld.so.1 (PE, like ELF)'-  shlibpath_var=LD_LIBRARY_PATH-  shlibpath_overrides_runpath=no-  hardcode_into_libs=yes-  ;;--irix5* | irix6* | nonstopux*)-  case $host_os in-    nonstopux*) version_type=nonstopux ;;-    *)-	if test yes = "$lt_cv_prog_gnu_ld"; then-		version_type=linux # correct to gnu/linux during the next big refactor-	else-		version_type=irix-	fi ;;-  esac-  need_lib_prefix=no-  need_version=no-  soname_spec='$libname$release$shared_ext$major'-  library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$release$shared_ext $libname$shared_ext'-  case $host_os in-  irix5* | nonstopux*)-    libsuff= shlibsuff=-    ;;-  *)-    case $LD in # libtool.m4 will add one of these switches to LD-    *-32|*"-32 "|*-melf32bsmip|*"-melf32bsmip ")-      libsuff= shlibsuff= libmagic=32-bit;;-    *-n32|*"-n32 "|*-melf32bmipn32|*"-melf32bmipn32 ")-      libsuff=32 shlibsuff=N32 libmagic=N32;;-    *-64|*"-64 "|*-melf64bmip|*"-melf64bmip ")-      libsuff=64 shlibsuff=64 libmagic=64-bit;;-    *) libsuff= shlibsuff= libmagic=never-match;;-    esac-    ;;-  esac-  shlibpath_var=LD_LIBRARY${shlibsuff}_PATH-  shlibpath_overrides_runpath=no-  sys_lib_search_path_spec="/usr/lib$libsuff /lib$libsuff /usr/local/lib$libsuff"-  sys_lib_dlsearch_path_spec="/usr/lib$libsuff /lib$libsuff"-  hardcode_into_libs=yes-  ;;--# No shared lib support for Linux oldld, aout, or coff.-linux*oldld* | linux*aout* | linux*coff*)-  dynamic_linker=no-  ;;--linux*android*)-  version_type=none # Android doesn't support versioned libraries.-  need_lib_prefix=no-  need_version=no-  library_names_spec='$libname$release$shared_ext $libname$shared_ext'-  soname_spec='$libname$release$shared_ext'-  finish_cmds=-  shlibpath_var=LD_LIBRARY_PATH-  shlibpath_overrides_runpath=yes--  # This implies no fast_install, which is unacceptable.-  # Some rework will be needed to allow for fast_install-  # before this can be enabled.-  hardcode_into_libs=yes--  dynamic_linker='Android linker'-  # -rpath works at least for libraries that are not overridden by-  # libraries installed in system locations.-  hardcode_libdir_flag_spec='$wl-rpath $wl$libdir'-  ;;--# This must be glibc/ELF.-linux* | k*bsd*-gnu | kopensolaris*-gnu | gnu*)-  version_type=linux # correct to gnu/linux during the next big refactor-  need_lib_prefix=no-  need_version=no-  library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$shared_ext'-  soname_spec='$libname$release$shared_ext$major'-  finish_cmds='PATH="\$PATH:/sbin" ldconfig -n $libdir'-  shlibpath_var=LD_LIBRARY_PATH-  shlibpath_overrides_runpath=no--  # Some binutils ld are patched to set DT_RUNPATH-  if test ${lt_cv_shlibpath_overrides_runpath+y}-then :-  printf %s "(cached) " >&6-else case e in #(-  e) lt_cv_shlibpath_overrides_runpath=no-    save_LDFLAGS=$LDFLAGS-    save_libdir=$libdir-    eval "libdir=/foo; wl=\"$lt_prog_compiler_wl\"; \-	 LDFLAGS=\"\$LDFLAGS $hardcode_libdir_flag_spec\""-    cat confdefs.h - <<_ACEOF >conftest.$ac_ext-/* end confdefs.h.  */--int-main (void)-{--  ;-  return 0;-}-_ACEOF-if ac_fn_c_try_link "$LINENO"-then :-  if  ($OBJDUMP -p conftest$ac_exeext) 2>/dev/null | grep "RUNPATH.*$libdir" >/dev/null-then :-  lt_cv_shlibpath_overrides_runpath=yes-fi-fi-rm -f core conftest.err conftest.$ac_objext conftest.beam \-    conftest$ac_exeext conftest.$ac_ext-    LDFLAGS=$save_LDFLAGS-    libdir=$save_libdir-     ;;-esac-fi--  shlibpath_overrides_runpath=$lt_cv_shlibpath_overrides_runpath--  # This implies no fast_install, which is unacceptable.-  # Some rework will be needed to allow for fast_install-  # before this can be enabled.-  hardcode_into_libs=yes--  # Add ABI-specific directories to the system library path.-  sys_lib_dlsearch_path_spec="/lib64 /usr/lib64 /lib /usr/lib"--  # Ideally, we could use ldconfig to report *all* directories which are-  # searched for libraries, however this is still not possible.  Aside from not-  # being certain /sbin/ldconfig is available, command-  # 'ldconfig -N -X -v | grep ^/' on 64bit Fedora does not report /usr/lib64,-  # even though it is searched at run-time.  Try to do the best guess by-  # appending ld.so.conf contents (and includes) to the search path.-  if test -f /etc/ld.so.conf; then-    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' ' '`-    sys_lib_dlsearch_path_spec="$sys_lib_dlsearch_path_spec $lt_ld_extra"-  fi--  # We used to test for /lib/ld.so.1 and disable shared libraries on-  # powerpc, because MkLinux only supported shared libraries with the-  # GNU dynamic linker.  Since this was broken with cross compilers,-  # most powerpc-linux boxes support dynamic linking these days and-  # people can always --disable-shared, the test was removed, and we-  # assume the GNU/Linux dynamic linker is in use.-  dynamic_linker='GNU/Linux ld.so'-  ;;--netbsdelf*-gnu)-  version_type=linux-  need_lib_prefix=no-  need_version=no-  library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$shared_ext'-  soname_spec='$libname$release$shared_ext$major'-  shlibpath_var=LD_LIBRARY_PATH-  shlibpath_overrides_runpath=no-  hardcode_into_libs=yes-  dynamic_linker='NetBSD ld.elf_so'-  ;;--netbsd*)-  version_type=sunos-  need_lib_prefix=no-  need_version=no-  if echo __ELF__ | $CC -E - | $GREP __ELF__ >/dev/null; then-    library_names_spec='$libname$release$shared_ext$versuffix $libname$shared_ext$versuffix'-    finish_cmds='PATH="\$PATH:/sbin" ldconfig -m $libdir'-    dynamic_linker='NetBSD (a.out) ld.so'-  else-    library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$shared_ext'-    soname_spec='$libname$release$shared_ext$major'-    dynamic_linker='NetBSD ld.elf_so'-  fi-  shlibpath_var=LD_LIBRARY_PATH-  shlibpath_overrides_runpath=yes-  hardcode_into_libs=yes-  ;;--*-mlibc)-  version_type=linux # correct to gnu/linux during the next big refactor-  need_lib_prefix=no-  need_version=no-  library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$shared_ext'-  soname_spec='$libname$release$shared_ext$major'-  dynamic_linker='mlibc ld.so'-  shlibpath_var=LD_LIBRARY_PATH-  shlibpath_overrides_runpath=no-  hardcode_into_libs=yes-  ;;--newsos6)-  version_type=linux # correct to gnu/linux during the next big refactor-  library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$shared_ext'-  shlibpath_var=LD_LIBRARY_PATH-  shlibpath_overrides_runpath=yes-  ;;--*nto* | *qnx*)-  version_type=qnx-  need_lib_prefix=no-  need_version=no-  library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$shared_ext'-  soname_spec='$libname$release$shared_ext$major'-  shlibpath_var=LD_LIBRARY_PATH-  shlibpath_overrides_runpath=no-  hardcode_into_libs=yes-  dynamic_linker='ldqnx.so'-  ;;--openbsd*)-  version_type=sunos-  sys_lib_dlsearch_path_spec=/usr/lib-  need_lib_prefix=no-  if test -z "`echo __ELF__ | $CC -E - | $GREP __ELF__`"; then-    need_version=no-  else-    need_version=yes-  fi-  library_names_spec='$libname$release$shared_ext$versuffix $libname$shared_ext$versuffix'-  finish_cmds='PATH="\$PATH:/sbin" ldconfig -m $libdir'-  shlibpath_var=LD_LIBRARY_PATH-  shlibpath_overrides_runpath=yes-  ;;--os2*)-  libname_spec='$name'-  version_type=windows-  shrext_cmds=.dll-  need_version=no-  need_lib_prefix=no-  # OS/2 can only load a DLL with a base name of 8 characters or less.-  soname_spec='`test -n "$os2dllname" && libname="$os2dllname";-    v=$($ECHO $release$versuffix | tr -d .-);-    n=$($ECHO $libname | cut -b -$((8 - ${#v})) | tr . _);-    $ECHO $n$v`$shared_ext'-  library_names_spec='${libname}_dll.$libext'-  dynamic_linker='OS/2 ld.exe'-  shlibpath_var=BEGINLIBPATH-  sys_lib_search_path_spec="/lib /usr/lib /usr/local/lib"-  sys_lib_dlsearch_path_spec=$sys_lib_search_path_spec-  postinstall_cmds='base_file=`basename \$file`~-    dlpath=`$SHELL 2>&1 -c '\''. $dir/'\''\$base_file'\''i; $ECHO \$dlname'\''`~-    dldir=$destdir/`dirname \$dlpath`~-    test -d \$dldir || mkdir -p \$dldir~-    $install_prog $dir/$dlname \$dldir/$dlname~-    chmod a+x \$dldir/$dlname~-    if test -n '\''$stripme'\'' && test -n '\''$striplib'\''; then-      eval '\''$striplib \$dldir/$dlname'\'' || exit \$?;-    fi'-  postuninstall_cmds='dldll=`$SHELL 2>&1 -c '\''. $file; $ECHO \$dlname'\''`~-    dlpath=$dir/\$dldll~-    $RM \$dlpath'-  ;;--osf3* | osf4* | osf5*)-  version_type=osf-  need_lib_prefix=no-  need_version=no-  soname_spec='$libname$release$shared_ext$major'-  library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$shared_ext'-  shlibpath_var=LD_LIBRARY_PATH-  sys_lib_search_path_spec="/usr/shlib /usr/ccs/lib /usr/lib/cmplrs/cc /usr/lib /usr/local/lib /var/shlib"-  sys_lib_dlsearch_path_spec=$sys_lib_search_path_spec-  ;;--rdos*)-  dynamic_linker=no-  ;;--serenity*)-  version_type=linux # correct to gnu/linux during the next big refactor-  need_lib_prefix=no-  need_version=no-  library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$shared_ext'-  soname_spec='$libname$release$shared_ext$major'-  shlibpath_var=LD_LIBRARY_PATH-  shlibpath_overrides_runpath=no-  dynamic_linker='SerenityOS LibELF'-  ;;--solaris*)-  version_type=linux # correct to gnu/linux during the next big refactor-  need_lib_prefix=no-  need_version=no-  library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$shared_ext'-  soname_spec='$libname$release$shared_ext$major'-  shlibpath_var=LD_LIBRARY_PATH-  shlibpath_overrides_runpath=yes-  hardcode_into_libs=yes-  # ldd complains unless libraries are executable-  postinstall_cmds='chmod +x $lib'-  ;;--sunos4*)-  version_type=sunos-  library_names_spec='$libname$release$shared_ext$versuffix $libname$shared_ext$versuffix'-  finish_cmds='PATH="\$PATH:/usr/etc" ldconfig $libdir'-  shlibpath_var=LD_LIBRARY_PATH-  shlibpath_overrides_runpath=yes-  if test yes = "$with_gnu_ld"; then-    need_lib_prefix=no-  fi-  need_version=yes-  ;;--sysv4 | sysv4.3*)-  version_type=linux # correct to gnu/linux during the next big refactor-  library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$shared_ext'-  soname_spec='$libname$release$shared_ext$major'-  shlibpath_var=LD_LIBRARY_PATH-  case $host_vendor in-    sni)-      shlibpath_overrides_runpath=no-      need_lib_prefix=no-      runpath_var=LD_RUN_PATH-      ;;-    siemens)-      need_lib_prefix=no-      ;;-    motorola)-      need_lib_prefix=no-      need_version=no-      shlibpath_overrides_runpath=no-      sys_lib_search_path_spec='/lib /usr/lib /usr/ccs/lib'-      ;;-  esac-  ;;--sysv4*MP*)-  if test -d /usr/nec; then-    version_type=linux # correct to gnu/linux during the next big refactor-    library_names_spec='$libname$shared_ext.$versuffix $libname$shared_ext.$major $libname$shared_ext'-    soname_spec='$libname$shared_ext.$major'-    shlibpath_var=LD_LIBRARY_PATH-  fi-  ;;--sysv5* | sco3.2v5* | sco5v6* | unixware* | OpenUNIX* | sysv4*uw2*)-  version_type=sco-  need_lib_prefix=no-  need_version=no-  library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext $libname$shared_ext'-  soname_spec='$libname$release$shared_ext$major'-  shlibpath_var=LD_LIBRARY_PATH-  shlibpath_overrides_runpath=yes-  hardcode_into_libs=yes-  if test yes = "$with_gnu_ld"; then-    sys_lib_search_path_spec='/usr/local/lib /usr/gnu/lib /usr/ccs/lib /usr/lib /lib'-  else-    sys_lib_search_path_spec='/usr/ccs/lib /usr/lib'-    case $host_os in-      sco3.2v5*)-        sys_lib_search_path_spec="$sys_lib_search_path_spec /lib"-	;;-    esac-  fi-  sys_lib_dlsearch_path_spec='/usr/lib'-  ;;--tpf*)-  # TPF is a cross-target only.  Preferred cross-host = GNU/Linux.-  version_type=linux # correct to gnu/linux during the next big refactor-  need_lib_prefix=no-  need_version=no-  library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$shared_ext'-  shlibpath_var=LD_LIBRARY_PATH-  shlibpath_overrides_runpath=no-  hardcode_into_libs=yes-  ;;--uts4*)-  version_type=linux # correct to gnu/linux during the next big refactor-  library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$shared_ext'-  soname_spec='$libname$release$shared_ext$major'-  shlibpath_var=LD_LIBRARY_PATH-  ;;--emscripten*)-  version_type=none-  need_lib_prefix=no-  need_version=no-  library_names_spec='$libname$release$shared_ext'-  soname_spec='$libname$release$shared_ext'-  finish_cmds=-  dynamic_linker="Emscripten linker"-  lt_prog_compiler_wl=-lt_prog_compiler_pic=-lt_prog_compiler_static=---  if test yes = "$GCC"; then-    lt_prog_compiler_wl='-Wl,'-    lt_prog_compiler_static='-static'--    case $host_os in-      aix*)-      # All AIX code is PIC.-      if test ia64 = "$host_cpu"; then-	# AIX 5 now supports IA64 processor-	lt_prog_compiler_static='-Bstatic'-      fi-      lt_prog_compiler_pic='-fPIC'-      ;;--    amigaos*)-      case $host_cpu in-      powerpc)-            # see comment about AmigaOS4 .so support-            lt_prog_compiler_pic='-fPIC'-        ;;-      m68k)-            # FIXME: we need at least 68020 code to build shared libraries, but-            # adding the '-m68020' flag to GCC prevents building anything better,-            # like '-m68040'.-            lt_prog_compiler_pic='-m68020 -resident32 -malways-restore-a4'-        ;;-      esac-      ;;--    beos* | irix5* | irix6* | nonstopux* | osf3* | osf4* | osf5*)-      # PIC is the default for these OSes.-      ;;--    mingw* | windows* | cygwin* | pw32* | os2* | cegcc*)-      # This hack is so that the source file can tell whether it is being-      # built for inclusion in a dll (and should export symbols for example).-      # Although the cygwin gcc ignores -fPIC, still need this for old-style-      # (--disable-auto-import) libraries-      lt_prog_compiler_pic='-DDLL_EXPORT'-      case $host_os in-      os2*)-	lt_prog_compiler_static='$wl-static'-	;;-      esac-      ;;--    darwin* | rhapsody*)-      # PIC is the default on this platform-      # Common symbols not allowed in MH_DYLIB files-      lt_prog_compiler_pic='-fno-common'-      ;;--    haiku*)-      # PIC is the default for Haiku.-      # The "-static" flag exists, but is broken.-      lt_prog_compiler_static=-      ;;--    hpux*)-      # PIC is the default for 64-bit PA HP-UX, but not for 32-bit-      # PA HP-UX.  On IA64 HP-UX, PIC is the default but the pic flag-      # sets the default TLS model and affects inlining.-      case $host_cpu in-      hppa*64*)-	# +Z the default-	;;-      *)-	lt_prog_compiler_pic='-fPIC'-	;;-      esac-      ;;--    interix[3-9]*)-      # Interix 3.x gcc -fpic/-fPIC options generate broken code.-      # Instead, we relocate shared libraries at runtime.-      ;;--    msdosdjgpp*)-      # Just because we use GCC doesn't mean we suddenly get shared libraries-      # on systems that don't support them.-      lt_prog_compiler_can_build_shared=no-      enable_shared=no-      ;;--    *nto* | *qnx*)-      # QNX uses GNU C++, but need to define -shared option too, otherwise-      # it will coredump.-      lt_prog_compiler_pic='-fPIC -shared'-      ;;--    sysv4*MP*)-      if test -d /usr/nec; then-	lt_prog_compiler_pic=-Kconform_pic-      fi-      ;;--    *)-      lt_prog_compiler_pic='-fPIC'-      ;;-    esac--    case $cc_basename in-    nvcc*) # Cuda Compiler Driver 2.2-      lt_prog_compiler_wl='-Xlinker '-      if test -n "$lt_prog_compiler_pic"; then-        lt_prog_compiler_pic="-Xcompiler $lt_prog_compiler_pic"-      fi-      ;;-    esac-  else-    # PORTME Check for flag to pass linker flags through the system compiler.-    case $host_os in-    aix*)-      lt_prog_compiler_wl='-Wl,'-      if test ia64 = "$host_cpu"; then-	# AIX 5 now supports IA64 processor-	lt_prog_compiler_static='-Bstatic'-      else-	lt_prog_compiler_static='-bnso -bI:/lib/syscalls.exp'-      fi-      ;;--    darwin* | rhapsody*)-      # PIC is the default on this platform-      # Common symbols not allowed in MH_DYLIB files-      lt_prog_compiler_pic='-fno-common'-      case $cc_basename in-      nagfor*)-        # NAG Fortran compiler-        lt_prog_compiler_wl='-Wl,-Wl,,'-        lt_prog_compiler_pic='-PIC'-        lt_prog_compiler_static='-Bstatic'-        ;;-      esac-      ;;--    mingw* | windows* | cygwin* | pw32* | os2* | cegcc*)-      # This hack is so that the source file can tell whether it is being-      # built for inclusion in a dll (and should export symbols for example).-      lt_prog_compiler_pic='-DDLL_EXPORT'-      case $host_os in-      os2*)-	lt_prog_compiler_static='$wl-static'-	;;-      esac-      ;;--    hpux9* | hpux10* | hpux11*)-      lt_prog_compiler_wl='-Wl,'-      # PIC is the default for IA64 HP-UX and 64-bit HP-UX, but-      # not for PA HP-UX.-      case $host_cpu in-      hppa*64*|ia64*)-	# +Z the default-	;;-      *)-	lt_prog_compiler_pic='+Z'-	;;-      esac-      # Is there a better lt_prog_compiler_static that works with the bundled CC?-      lt_prog_compiler_static='$wl-a ${wl}archive'-      ;;--    irix5* | irix6* | nonstopux*)-      lt_prog_compiler_wl='-Wl,'-      # PIC (with -KPIC) is the default.-      lt_prog_compiler_static='-non_shared'-      ;;--    linux* | k*bsd*-gnu | kopensolaris*-gnu | gnu*)-      case $cc_basename in-      # old Intel for x86_64, which still supported -KPIC.-      ecc*)-	lt_prog_compiler_wl='-Wl,'-	lt_prog_compiler_pic='-KPIC'-	lt_prog_compiler_static='-static'-        ;;-      *flang* | ftn | f18* | f95*)-        # Flang compiler.-	lt_prog_compiler_wl='-Wl,'-	lt_prog_compiler_pic='-fPIC'-	lt_prog_compiler_static='-static'-        ;;-      # icc used to be incompatible with GCC.-      # ICC 10 doesn't accept -KPIC any more.-      icc* | ifort*)-	lt_prog_compiler_wl='-Wl,'-	lt_prog_compiler_pic='-fPIC'-	lt_prog_compiler_static='-static'-        ;;-      # Lahey Fortran 8.1.-      lf95*)-	lt_prog_compiler_wl='-Wl,'-	lt_prog_compiler_pic='--shared'-	lt_prog_compiler_static='--static'-	;;-      nagfor*)-	# NAG Fortran compiler-	lt_prog_compiler_wl='-Wl,-Wl,,'-	lt_prog_compiler_pic='-PIC'-	lt_prog_compiler_static='-Bstatic'-	;;-      tcc*)-	# Fabrice Bellard et al's Tiny C Compiler-	lt_prog_compiler_wl='-Wl,'-	lt_prog_compiler_pic='-fPIC'-	lt_prog_compiler_static='-static'-	;;-      pgcc* | pgf77* | pgf90* | pgf95* | pgfortran*)-        # Portland Group compilers (*not* the Pentium gcc compiler,-	# which looks to be a dead project)-	lt_prog_compiler_wl='-Wl,'-	lt_prog_compiler_pic='-fpic'-	lt_prog_compiler_static='-Bstatic'-        ;;-      ccc*)-        lt_prog_compiler_wl='-Wl,'-        # All Alpha code is PIC.-        lt_prog_compiler_static='-non_shared'-        ;;-      xl* | bgxl* | bgf* | mpixl*)-	# IBM XL C 8.0/Fortran 10.1, 11.1 on PPC and BlueGene-	lt_prog_compiler_wl='-Wl,'-	lt_prog_compiler_pic='-qpic'-	lt_prog_compiler_static='-qstaticlink'-	;;-      *)-	case `$CC -V 2>&1 | $SED 5q` in-	*Sun\ Ceres\ Fortran* | *Sun*Fortran*\ [1-7].* | *Sun*Fortran*\ 8.[0-3]*)-	  # Sun Fortran 8.3 passes all unrecognized flags to the linker-	  lt_prog_compiler_pic='-KPIC'-	  lt_prog_compiler_static='-Bstatic'-	  lt_prog_compiler_wl=''-	  ;;-	*Sun\ F* | *Sun*Fortran*)-	  lt_prog_compiler_pic='-KPIC'-	  lt_prog_compiler_static='-Bstatic'-	  lt_prog_compiler_wl='-Qoption ld '-	  ;;-	*Sun\ C*)-	  # Sun C 5.9-	  lt_prog_compiler_pic='-KPIC'-	  lt_prog_compiler_static='-Bstatic'-	  lt_prog_compiler_wl='-Wl,'-	  ;;-        *Intel*\ [CF]*Compiler*)-	  lt_prog_compiler_wl='-Wl,'-	  lt_prog_compiler_pic='-fPIC'-	  lt_prog_compiler_static='-static'-	  ;;-	*Portland\ Group*)-	  lt_prog_compiler_wl='-Wl,'-	  lt_prog_compiler_pic='-fpic'-	  lt_prog_compiler_static='-Bstatic'-	  ;;-	esac-	;;-      esac-      ;;--    newsos6)-      lt_prog_compiler_pic='-KPIC'-      lt_prog_compiler_static='-Bstatic'-      ;;--    *-mlibc)-      lt_prog_compiler_wl='-Wl,'-      lt_prog_compiler_pic='-fPIC'-      lt_prog_compiler_static='-static'-      ;;--    *nto* | *qnx*)-      # QNX uses GNU C++, but need to define -shared option too, otherwise-      # it will coredump.-      lt_prog_compiler_pic='-fPIC -shared'-      ;;--    osf3* | osf4* | osf5*)-      lt_prog_compiler_wl='-Wl,'-      # All OSF/1 code is PIC.-      lt_prog_compiler_static='-non_shared'-      ;;--    rdos*)-      lt_prog_compiler_static='-non_shared'-      ;;--    serenity*)-      ;;--    solaris*)-      lt_prog_compiler_pic='-KPIC'-      lt_prog_compiler_static='-Bstatic'-      case $cc_basename in-      f77* | f90* | f95* | sunf77* | sunf90* | sunf95*)-	lt_prog_compiler_wl='-Qoption ld ';;-      *)-	lt_prog_compiler_wl='-Wl,';;-      esac-      ;;--    sunos4*)-      lt_prog_compiler_wl='-Qoption ld '-      lt_prog_compiler_pic='-PIC'-      lt_prog_compiler_static='-Bstatic'-      ;;--    sysv4 | sysv4.2uw2* | sysv4.3*)-      lt_prog_compiler_wl='-Wl,'-      lt_prog_compiler_pic='-KPIC'-      lt_prog_compiler_static='-Bstatic'-      ;;--    sysv4*MP*)-      if test -d /usr/nec; then-	lt_prog_compiler_pic='-Kconform_pic'-	lt_prog_compiler_static='-Bstatic'-      fi-      ;;--    sysv5* | unixware* | sco3.2v5* | sco5v6* | OpenUNIX*)-      lt_prog_compiler_wl='-Wl,'-      lt_prog_compiler_pic='-KPIC'-      lt_prog_compiler_static='-Bstatic'-      ;;--    unicos*)-      lt_prog_compiler_wl='-Wl,'-      lt_prog_compiler_can_build_shared=no-      ;;--    uts4*)-      lt_prog_compiler_pic='-pic'-      lt_prog_compiler_static='-Bstatic'-      ;;--    *)-      lt_prog_compiler_can_build_shared=no-      ;;-    esac-  fi--case $host_os in-  # For platforms that do not support PIC, -DPIC is meaningless:-  *djgpp*)-    lt_prog_compiler_pic=-    ;;-  *)-    lt_prog_compiler_pic="$lt_prog_compiler_pic -DPIC"-    ;;-esac--{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for $compiler option to produce PIC" >&5-printf %s "checking for $compiler option to produce PIC... " >&6; }-if test ${lt_cv_prog_compiler_pic+y}-then :-  printf %s "(cached) " >&6-else case e in #(-  e) lt_cv_prog_compiler_pic=$lt_prog_compiler_pic ;;-esac-fi-{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $lt_cv_prog_compiler_pic" >&5-printf "%s\n" "$lt_cv_prog_compiler_pic" >&6; }-lt_prog_compiler_pic=$lt_cv_prog_compiler_pic--#-# Check to make sure the PIC flag actually works.-#-if test -n "$lt_prog_compiler_pic"; then-  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking if $compiler PIC flag $lt_prog_compiler_pic works" >&5-printf %s "checking if $compiler PIC flag $lt_prog_compiler_pic works... " >&6; }-if test ${lt_cv_prog_compiler_pic_works+y}-then :-  printf %s "(cached) " >&6-else case e in #(-  e) lt_cv_prog_compiler_pic_works=no-   ac_outfile=conftest.$ac_objext-   echo "$lt_simple_compile_test_code" > conftest.$ac_ext-   lt_compiler_flag="$lt_prog_compiler_pic -DPIC"  ## exclude from sc_useless_quotes_in_assignment-   # Insert the option either (1) after the last *FLAGS variable, or-   # (2) before a word containing "conftest.", or (3) at the end.-   # Note that $ac_compile itself does not contain backslashes and begins-   # with a dollar sign (not a hyphen), so the echo should work correctly.-   # The option is referenced via a variable to avoid confusing sed.-   lt_compile=`echo "$ac_compile" | $SED \-   -e 's:.*FLAGS}\{0,1\} :&$lt_compiler_flag :; t' \-   -e 's: [^ ]*conftest\.: $lt_compiler_flag&:; t' \-   -e 's:$: $lt_compiler_flag:'`-   (eval echo "\"\$as_me:$LINENO: $lt_compile\"" >&5)-   (eval "$lt_compile" 2>conftest.err)-   ac_status=$?-   cat conftest.err >&5-   echo "$as_me:$LINENO: \$? = $ac_status" >&5-   if (exit $ac_status) && test -s "$ac_outfile"; then-     # The compiler can only warn and ignore the option if not recognized-     # So say no if there are warnings other than the usual output.-     $ECHO "$_lt_compiler_boilerplate" | $SED '/^$/d' >conftest.exp-     $SED '/^$/d; /^ *+/d' conftest.err >conftest.er2-     if test ! -s conftest.er2 || diff conftest.exp conftest.er2 >/dev/null; then-       lt_cv_prog_compiler_pic_works=yes-     fi-   fi-   $RM conftest*- ;;-esac-fi-{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $lt_cv_prog_compiler_pic_works" >&5-printf "%s\n" "$lt_cv_prog_compiler_pic_works" >&6; }--if test yes = "$lt_cv_prog_compiler_pic_works"; then-    case $lt_prog_compiler_pic in-     "" | " "*) ;;-     *) lt_prog_compiler_pic=" $lt_prog_compiler_pic" ;;-     esac-else-    lt_prog_compiler_pic=-     lt_prog_compiler_can_build_shared=no-fi--fi------#-# Check to make sure the static flag actually works.-#-wl=$lt_prog_compiler_wl eval lt_tmp_static_flag=\"$lt_prog_compiler_static\"-{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking if $compiler static flag $lt_tmp_static_flag works" >&5-printf %s "checking if $compiler static flag $lt_tmp_static_flag works... " >&6; }-if test ${lt_cv_prog_compiler_static_works+y}-then :-  printf %s "(cached) " >&6-else case e in #(-  e) lt_cv_prog_compiler_static_works=no-   save_LDFLAGS=$LDFLAGS-   LDFLAGS="$LDFLAGS $lt_tmp_static_flag"-   echo "$lt_simple_link_test_code" > conftest.$ac_ext-   if (eval $ac_link 2>conftest.err) && test -s conftest$ac_exeext; then-     # The linker can only warn and ignore the option if not recognized-     # So say no if there are warnings-     if test -s conftest.err; then-       # Append any errors to the config.log.-       cat conftest.err 1>&5-       $ECHO "$_lt_linker_boilerplate" | $SED '/^$/d' > conftest.exp-       $SED '/^$/d; /^ *+/d' conftest.err >conftest.er2-       if diff conftest.exp conftest.er2 >/dev/null; then-         lt_cv_prog_compiler_static_works=yes-       fi-     else-       lt_cv_prog_compiler_static_works=yes-     fi-   fi-   $RM -r conftest*-   LDFLAGS=$save_LDFLAGS- ;;-esac-fi-{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $lt_cv_prog_compiler_static_works" >&5-printf "%s\n" "$lt_cv_prog_compiler_static_works" >&6; }--if test yes = "$lt_cv_prog_compiler_static_works"; then-    :-else-    lt_prog_compiler_static=-fi----='-fPIC'-  archive_cmds='$CC -sSIDE_MODULE=2 -shared $libobjs $deplibs $compiler_flags -o $lib'-  archive_expsym_cmds='$SED "s|^|_|" $export_symbols >$output_objdir/$soname.expsym~$CC -sSIDE_MODULE=2 -shared $libobjs $deplibs $compiler_flags -o $lib -s EXPORTED_FUNCTIONS=@$output_objdir/$soname.expsym'-  archive_cmds_need_lc=no-  no_undefined_flag=-  ;;--*)-  dynamic_linker=no-  ;;-esac-{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $dynamic_linker" >&5-printf "%s\n" "$dynamic_linker" >&6; }-test no = "$dynamic_linker" && can_build_shared=no--variables_saved_for_relink="PATH $shlibpath_var $runpath_var"-if test yes = "$GCC"; then-  variables_saved_for_relink="$variables_saved_for_relink GCC_EXEC_PREFIX COMPILER_PATH LIBRARY_PATH"-fi--if test set = "${lt_cv_sys_lib_search_path_spec+set}"; then-  sys_lib_search_path_spec=$lt_cv_sys_lib_search_path_spec-fi--if test set = "${lt_cv_sys_lib_dlsearch_path_spec+set}"; then-  sys_lib_dlsearch_path_spec=$lt_cv_sys_lib_dlsearch_path_spec-fi--# remember unaugmented sys_lib_dlsearch_path content for libtool script decls...-configure_time_dlsearch_path=$sys_lib_dlsearch_path_spec--# ... but it needs LT_SYS_LIBRARY_PATH munging for other configure-time code-func_munge_path_list sys_lib_dlsearch_path_spec "$LT_SYS_LIBRARY_PATH"--# to be used as default LT_SYS_LIBRARY_PATH value in generated libtool-configure_time_lt_sys_library_path=$LT_SYS_LIBRARY_PATH--------------------------------------------------------------------------------------------------  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking how to hardcode library paths into programs" >&5-printf %s "checking how to hardcode library paths into programs... " >&6; }-hardcode_action=-if test -n "$hardcode_libdir_flag_spec" ||-   test -n "$runpath_var" ||-   test yes = "$hardcode_automatic"; then--  # We can hardcode non-existent directories.-  if test no != "$hardcode_direct" &&-     # If the only mechanism to avoid hardcoding is shlibpath_var, we-     # have to relink, otherwise we might link with an installed library-     # when we should be linking with a yet-to-be-installed one-     ## test no != "$_LT_TAGVAR(hardcode_shlibpath_var, )" &&-     test no != "$hardcode_minus_L"; then-    # Linking always hardcodes the temporary library directory.-    hardcode_action=relink-  else-    # We can link without hardcoding, and we can hardcode nonexisting dirs.-    hardcode_action=immediate-  fi-else-  # We cannot hardcode anything, or else we can only hardcode existing-  # directories.-  hardcode_action=unsupported-fi-{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $hardcode_action" >&5-printf "%s\n" "$hardcode_action" >&6; }--if test relink = "$hardcode_action" ||-   test yes = "$inherit_rpath"; then-  # Fast installation is not supported-  enable_fast_install=no-elif test yes = "$shlibpath_overrides_runpath" ||-     test no = "$enable_shared"; then-  # Fast installation is not necessary-  enable_fast_install=needless-fi-------  if test yes != "$enable_dlopen"; then-  enable_dlopen=unknown-  enable_dlopen_self=unknown-  enable_dlopen_self_static=unknown-else-  lt_cv_dlopen=no-  lt_cv_dlopen_libs=--  case $host_os in-  beos*)-    lt_cv_dlopen=load_add_on-    lt_cv_dlopen_libs=-    lt_cv_dlopen_self=yes-    ;;--  mingw* | windows* | pw32* | cegcc*)-    lt_cv_dlopen=LoadLibrary-    lt_cv_dlopen_libs=-    ;;--  cygwin*)-    lt_cv_dlopen=dlopen-    lt_cv_dlopen_libs=-    ;;--  darwin*)-    # if libdl is installed we need to link against it-    { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for dlopen in -ldl" >&5-printf %s "checking for dlopen in -ldl... " >&6; }-if test ${ac_cv_lib_dl_dlopen+y}-then :-  printf %s "(cached) " >&6-else case e in #(-  e) ac_check_lib_save_LIBS=$LIBS-LIBS="-ldl  $LIBS"-cat confdefs.h - <<_ACEOF >conftest.$ac_ext-/* end confdefs.h.  */--/* Override any GCC internal prototype to avoid an error.-   Use char because int might match the return type of a GCC-   builtin and then its argument prototype would still apply.-   The 'extern "C"' is for builds by C++ compilers;-   although this is not generally supported in C code supporting it here-   has little cost and some practical benefit (sr 110532).  */-#ifdef __cplusplus-extern "C"-#endif-char dlopen (void);-int-main (void)-{-return dlopen ();-  ;-  return 0;-}-_ACEOF-if ac_fn_c_try_link "$LINENO"-then :-  ac_cv_lib_dl_dlopen=yes-else case e in #(-  e) ac_cv_lib_dl_dlopen=no ;;-esac-fi-rm -f core conftest.err conftest.$ac_objext conftest.beam \-    conftest$ac_exeext conftest.$ac_ext-LIBS=$ac_check_lib_save_LIBS ;;-esac-fi-{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_dl_dlopen" >&5-printf "%s\n" "$ac_cv_lib_dl_dlopen" >&6; }-if test "x$ac_cv_lib_dl_dlopen" = xyes-then :-  lt_cv_dlopen=dlopen lt_cv_dlopen_libs=-ldl-else case e in #(-  e)-    lt_cv_dlopen=dyld-    lt_cv_dlopen_libs=-    lt_cv_dlopen_self=yes-     ;;-esac-fi--    ;;--  tpf*)-    # Don't try to run any link tests for TPF.  We know it's impossible-    # because TPF is a cross-compiler, and we know how we open DSOs.-    lt_cv_dlopen=dlopen-    lt_cv_dlopen_libs=-    lt_cv_dlopen_self=no-    ;;--  *)-    ac_fn_c_check_func "$LINENO" "shl_load" "ac_cv_func_shl_load"-if test "x$ac_cv_func_shl_load" = xyes-then :-  lt_cv_dlopen=shl_load-else case e in #(-  e) { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for shl_load in -ldld" >&5-printf %s "checking for shl_load in -ldld... " >&6; }-if test ${ac_cv_lib_dld_shl_load+y}-then :-  printf %s "(cached) " >&6-else case e in #(-  e) ac_check_lib_save_LIBS=$LIBS-LIBS="-ldld  $LIBS"-cat confdefs.h - <<_ACEOF >conftest.$ac_ext-/* end confdefs.h.  */--/* Override any GCC internal prototype to avoid an error.-   Use char because int might match the return type of a GCC-   builtin and then its argument prototype would still apply.-   The 'extern "C"' is for builds by C++ compilers;-   although this is not generally supported in C code supporting it here-   has little cost and some practical benefit (sr 110532).  */-#ifdef __cplusplus-extern "C"-#endif-char shl_load (void);-int-main (void)-{-return shl_load ();-  ;-  return 0;-}-_ACEOF-if ac_fn_c_try_link "$LINENO"-then :-  ac_cv_lib_dld_shl_load=yes-else case e in #(-  e) ac_cv_lib_dld_shl_load=no ;;-esac-fi-rm -f core conftest.err conftest.$ac_objext conftest.beam \-    conftest$ac_exeext conftest.$ac_ext-LIBS=$ac_check_lib_save_LIBS ;;-esac-fi-{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_dld_shl_load" >&5-printf "%s\n" "$ac_cv_lib_dld_shl_load" >&6; }-if test "x$ac_cv_lib_dld_shl_load" = xyes-then :-  lt_cv_dlopen=shl_load lt_cv_dlopen_libs=-ldld-else case e in #(-  e) ac_fn_c_check_func "$LINENO" "dlopen" "ac_cv_func_dlopen"-if test "x$ac_cv_func_dlopen" = xyes-then :-  lt_cv_dlopen=dlopen-else case e in #(-  e) { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for dlopen in -ldl" >&5-printf %s "checking for dlopen in -ldl... " >&6; }-if test ${ac_cv_lib_dl_dlopen+y}-then :-  printf %s "(cached) " >&6-else case e in #(-  e) ac_check_lib_save_LIBS=$LIBS-LIBS="-ldl  $LIBS"-cat confdefs.h - <<_ACEOF >conftest.$ac_ext-/* end confdefs.h.  */--/* Override any GCC internal prototype to avoid an error.-   Use char because int might match the return type of a GCC-   builtin and then its argument prototype would still apply.-   The 'extern "C"' is for builds by C++ compilers;-   although this is not generally supported in C code supporting it here-   has little cost and some practical benefit (sr 110532).  */-#ifdef __cplusplus-extern "C"-#endif-char dlopen (void);-int-main (void)-{-return dlopen ();-  ;-  return 0;-}-_ACEOF-if ac_fn_c_try_link "$LINENO"-then :-  ac_cv_lib_dl_dlopen=yes-else case e in #(-  e) ac_cv_lib_dl_dlopen=no ;;-esac-fi-rm -f core conftest.err conftest.$ac_objext conftest.beam \-    conftest$ac_exeext conftest.$ac_ext-LIBS=$ac_check_lib_save_LIBS ;;-esac-fi-{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_dl_dlopen" >&5-printf "%s\n" "$ac_cv_lib_dl_dlopen" >&6; }-if test "x$ac_cv_lib_dl_dlopen" = xyes-then :-  lt_cv_dlopen=dlopen lt_cv_dlopen_libs=-ldl-else case e in #(-  e) { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for dlopen in -lsvld" >&5-printf %s "checking for dlopen in -lsvld... " >&6; }-if test ${ac_cv_lib_svld_dlopen+y}-then :-  printf %s "(cached) " >&6-else case e in #(-  e) ac_check_lib_save_LIBS=$LIBS-LIBS="-lsvld  $LIBS"-cat confdefs.h - <<_ACEOF >conftest.$ac_ext-/* end confdefs.h.  */--/* Override any GCC internal prototype to avoid an error.-   Use char because int might match the return type of a GCC-   builtin and then its argument prototype would still apply.-   The 'extern "C"' is for builds by C++ compilers;-   although this is not generally supported in C code supporting it here-   has little cost and some practical benefit (sr 110532).  */-#ifdef __cplusplus-extern "C"-#endif-char dlopen (void);-int-main (void)-{-return dlopen ();-  ;-  return 0;-}-_ACEOF-if ac_fn_c_try_link "$LINENO"-then :-  ac_cv_lib_svld_dlopen=yes-else case e in #(-  e) ac_cv_lib_svld_dlopen=no ;;-esac-fi-rm -f core conftest.err conftest.$ac_objext conftest.beam \-    conftest$ac_exeext conftest.$ac_ext-LIBS=$ac_check_lib_save_LIBS ;;-esac-fi-{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_svld_dlopen" >&5-printf "%s\n" "$ac_cv_lib_svld_dlopen" >&6; }-if test "x$ac_cv_lib_svld_dlopen" = xyes-then :-  lt_cv_dlopen=dlopen lt_cv_dlopen_libs=-lsvld-else case e in #(-  e) { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for dld_link in -ldld" >&5-printf %s "checking for dld_link in -ldld... " >&6; }-if test ${ac_cv_lib_dld_dld_link+y}-then :-  printf %s "(cached) " >&6-else case e in #(-  e) ac_check_lib_save_LIBS=$LIBS-LIBS="-ldld  $LIBS"-cat confdefs.h - <<_ACEOF >conftest.$ac_ext-/* end confdefs.h.  */--/* Override any GCC internal prototype to avoid an error.-   Use char because int might match the return type of a GCC-   builtin and then its argument prototype would still apply.-   The 'extern "C"' is for builds by C++ compilers;-   although this is not generally supported in C code supporting it here-   has little cost and some practical benefit (sr 110532).  */-#ifdef __cplusplus-extern "C"-#endif-char dld_link (void);-int-main (void)-{-return dld_link ();-  ;-  return 0;-}-_ACEOF-if ac_fn_c_try_link "$LINENO"-then :-  ac_cv_lib_dld_dld_link=yes-else case e in #(-  e) ac_cv_lib_dld_dld_link=no ;;-esac-fi-rm -f core conftest.err conftest.$ac_objext conftest.beam \-    conftest$ac_exeext conftest.$ac_ext-LIBS=$ac_check_lib_save_LIBS ;;-esac-fi-{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_dld_dld_link" >&5-printf "%s\n" "$ac_cv_lib_dld_dld_link" >&6; }-if test "x$ac_cv_lib_dld_dld_link" = xyes-then :-  lt_cv_dlopen=dld_link lt_cv_dlopen_libs=-ldld-fi--	       ;;-esac-fi--	     ;;-esac-fi--	   ;;-esac-fi--	 ;;-esac-fi--       ;;-esac-fi--    ;;-  esac--  if test no = "$lt_cv_dlopen"; then-    enable_dlopen=no-  else-    enable_dlopen=yes-  fi--  case $lt_cv_dlopen in-  dlopen)-    save_CPPFLAGS=$CPPFLAGS-    test yes = "$ac_cv_header_dlfcn_h" && CPPFLAGS="$CPPFLAGS -DHAVE_DLFCN_H"--    save_LDFLAGS=$LDFLAGS-    wl=$lt_prog_compiler_wl eval LDFLAGS=\"\$LDFLAGS $export_dynamic_flag_spec\"--    save_LIBS=$LIBS-    LIBS="$lt_cv_dlopen_libs $LIBS"--    { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking whether a program can dlopen itself" >&5-printf %s "checking whether a program can dlopen itself... " >&6; }-if test ${lt_cv_dlopen_self+y}-then :-  printf %s "(cached) " >&6-else case e in #(-  e) 	  if test yes = "$cross_compiling"; then :-  lt_cv_dlopen_self=cross-else-  lt_dlunknown=0; lt_dlno_uscore=1; lt_dlneed_uscore=2-  lt_status=$lt_dlunknown-  cat > conftest.$ac_ext <<_LT_EOF-#line $LINENO "configure"-#include "confdefs.h"--#if HAVE_DLFCN_H-#include <dlfcn.h>-#endif--#include <stdio.h>--#ifdef RTLD_GLOBAL-#  define LT_DLGLOBAL		RTLD_GLOBAL-#else-#  ifdef DL_GLOBAL-#    define LT_DLGLOBAL		DL_GLOBAL-#  else-#    define LT_DLGLOBAL		0-#  endif-#endif--/* We may have to define LT_DLLAZY_OR_NOW in the command line if we-   find out it does not work in some platform. */-#ifndef LT_DLLAZY_OR_NOW-#  ifdef RTLD_LAZY-#    define LT_DLLAZY_OR_NOW		RTLD_LAZY-#  else-#    ifdef DL_LAZY-#      define LT_DLLAZY_OR_NOW		DL_LAZY-#    else-#      ifdef RTLD_NOW-#        define LT_DLLAZY_OR_NOW	RTLD_NOW-#      else-#        ifdef DL_NOW-#          define LT_DLLAZY_OR_NOW	DL_NOW-#        else-#          define LT_DLLAZY_OR_NOW	0-#        endif-#      endif-#    endif-#  endif-#endif--/* When -fvisibility=hidden is used, assume the code has been annotated-   correspondingly for the symbols needed.  */-#if defined __GNUC__ && (((__GNUC__ == 3) && (__GNUC_MINOR__ >= 3)) || (__GNUC__ > 3))-int fnord (void) __attribute__((visibility("default")));-#endif--int fnord (void) { return 42; }-int main (void)-{-  void *self = dlopen (0, LT_DLGLOBAL|LT_DLLAZY_OR_NOW);-  int status = $lt_dlunknown;--  if (self)-    {-      if (dlsym (self,"fnord"))       status = $lt_dlno_uscore;-      else-        {-	  if (dlsym( self,"_fnord"))  status = $lt_dlneed_uscore;-          else puts (dlerror ());-	}-      /* dlclose (self); */-    }-  else-    puts (dlerror ());--  return status;-}-_LT_EOF-  if { { eval echo "\"\$as_me\":${as_lineno-$LINENO}: \"$ac_link\""; } >&5-  (eval $ac_link) 2>&5-  ac_status=$?-  printf "%s\n" "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5-  test $ac_status = 0; } && test -s "conftest$ac_exeext" 2>/dev/null; then-    (./conftest; exit; ) >&5 2>/dev/null-    lt_status=$?-    case x$lt_status in-      x$lt_dlno_uscore) lt_cv_dlopen_self=yes ;;-      x$lt_dlneed_uscore) lt_cv_dlopen_self=yes ;;-      x$lt_dlunknown|x*) lt_cv_dlopen_self=no ;;-    esac-  else :-    # compilation failed-    lt_cv_dlopen_self=no-  fi-fi-rm -fr conftest*--     ;;-esac-fi-{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $lt_cv_dlopen_self" >&5-printf "%s\n" "$lt_cv_dlopen_self" >&6; }--    if test yes = "$lt_cv_dlopen_self"; then-      wl=$lt_prog_compiler_wl eval LDFLAGS=\"\$LDFLAGS $lt_prog_compiler_static\"-      { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking whether a statically linked program can dlopen itself" >&5-printf %s "checking whether a statically linked program can dlopen itself... " >&6; }-if test ${lt_cv_dlopen_self_static+y}-then :-  printf %s "(cached) " >&6-else case e in #(-  e) 	  if test yes = "$cross_compiling"; then :-  lt_cv_dlopen_self_static=cross-else-  lt_dlunknown=0; lt_dlno_uscore=1; lt_dlneed_uscore=2-  lt_status=$lt_dlunknown-  cat > conftest.$ac_ext <<_LT_EOF-#line $LINENO "configure"-#include "confdefs.h"--#if HAVE_DLFCN_H-#include <dlfcn.h>-#endif--#include <stdio.h>--#ifdef RTLD_GLOBAL-#  define LT_DLGLOBAL		RTLD_GLOBAL-#else-#  ifdef DL_GLOBAL-#    define LT_DLGLOBAL		DL_GLOBAL-#  else-#    define LT_DLGLOBAL		0-#  endif-#endif--/* We may have to define LT_DLLAZY_OR_NOW in the command line if we-   find out it does not work in some platform. */-#ifndef LT_DLLAZY_OR_NOW-#  ifdef RTLD_LAZY-#    define LT_DLLAZY_OR_NOW		RTLD_LAZY-#  else-#    ifdef DL_LAZY-#      define LT_DLLAZY_OR_NOW		DL_LAZY-#    else-#      ifdef RTLD_NOW-#        define LT_DLLAZY_OR_NOW	RTLD_NOW-#      else-#        ifdef DL_NOW-#          define LT_DLLAZY_OR_NOW	DL_NOW-#        else-#          define LT_DLLAZY_OR_NOW	0-#        endif-#      endif-#    endif-#  endif-#endif--/* When -fvisibility=hidden is used, assume the code has been annotated-   correspondingly for the symbols needed.  */-#if defined __GNUC__ && (((__GNUC__ == 3) && (__GNUC_MINOR__ >= 3)) || (__GNUC__ > 3))-int fnord (void) __attribute__((visibility("default")));-#endif--int fnord (void) { return 42; }-int main (void)-{-  void *self = dlopen (0, LT_DLGLOBAL|LT_DLLAZY_OR_NOW);-  int status = $lt_dlunknown;--  if (self)-    {-      if (dlsym (self,"fnord"))       status = $lt_dlno_uscore;-      else-        {-	  if (dlsym( self,"_fnord"))  status = $lt_dlneed_uscore;-          else puts (dlerror ());-	}-      /* dlclose (self); */-    }-  else-    puts (dlerror ());--  return status;-}-_LT_EOF-  if { { eval echo "\"\$as_me\":${as_lineno-$LINENO}: \"$ac_link\""; } >&5-  (eval $ac_link) 2>&5-  ac_status=$?-  printf "%s\n" "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5-  test $ac_status = 0; } && test -s "conftest$ac_exeext" 2>/dev/null; then-    (./conftest; exit; ) >&5 2>/dev/null-    lt_status=$?-    case x$lt_status in-      x$lt_dlno_uscore) lt_cv_dlopen_self_static=yes ;;-      x$lt_dlneed_uscore) lt_cv_dlopen_self_static=yes ;;-      x$lt_dlunknown|x*) lt_cv_dlopen_self_static=no ;;-    esac-  else :-    # compilation failed-    lt_cv_dlopen_self_static=no-  fi-fi-rm -fr conftest*--       ;;-esac-fi-{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $lt_cv_dlopen_self_static" >&5-printf "%s\n" "$lt_cv_dlopen_self_static" >&6; }-    fi--    CPPFLAGS=$save_CPPFLAGS-    LDFLAGS=$save_LDFLAGS-    LIBS=$save_LIBS-    ;;-  esac--  case $lt_cv_dlopen_self in-  yes|no) enable_dlopen_self=$lt_cv_dlopen_self ;;-  *) enable_dlopen_self=unknown ;;-  esac--  case $lt_cv_dlopen_self_static in-  yes|no) enable_dlopen_self_static=$lt_cv_dlopen_self_static ;;-  *) enable_dlopen_self_static=unknown ;;-  esac-fi------------------striplib=-old_striplib=-{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking whether stripping libraries is possible" >&5-printf %s "checking whether stripping libraries is possible... " >&6; }-if test -z "$STRIP"; then-  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5-printf "%s\n" "no" >&6; }-else-  if $STRIP -V 2>&1 | $GREP "GNU strip" >/dev/null; then-    old_striplib="$STRIP --strip-debug"-    striplib="$STRIP --strip-unneeded"-    { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: yes" >&5-printf "%s\n" "yes" >&6; }-  else-    case $host_os in-    darwin*)-      # FIXME - insert some real tests, host_os isn't really good enough-      striplib="$STRIP -x"-      old_striplib="$STRIP -S"-      { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: yes" >&5-printf "%s\n" "yes" >&6; }-      ;;-    freebsd*)-      if $STRIP -V 2>&1 | $GREP "elftoolchain" >/dev/null; then-        old_striplib="$STRIP --strip-debug"-        striplib="$STRIP --strip-unneeded"-        { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: yes" >&5-printf "%s\n" "yes" >&6; }-      else-        { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5-printf "%s\n" "no" >&6; }-      fi-      ;;-    *)-      { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5-printf "%s\n" "no" >&6; }-      ;;-    esac-  fi-fi-------------  # Report what library types will actually be built-  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking if libtool supports shared libraries" >&5-printf %s "checking if libtool supports shared libraries... " >&6; }-  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $can_build_shared" >&5-printf "%s\n" "$can_build_shared" >&6; }--  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking whether to build shared libraries" >&5-printf %s "checking whether to build shared libraries... " >&6; }-  test no = "$can_build_shared" && enable_shared=no--  # On AIX, shared libraries and static libraries use the same namespace, and-  # are all built from PIC.-  case $host_os in-  aix3*)-    test yes = "$enable_shared" && enable_static=no-    if test -n "$RANLIB"; then-      archive_cmds="$archive_cmds~\$RANLIB \$lib"-      postinstall_cmds='$RANLIB $lib'-    fi-    ;;--  aix[4-9]*)-    if test ia64 != "$host_cpu"; then-      case $enable_shared,$with_aix_soname,$aix_use_runtimelinking in-      yes,aix,yes) ;;			# shared object as lib.so file only-      yes,svr4,*) ;;			# shared object as lib.so archive member only-      yes,*) enable_static=no ;;	# shared object in lib.a archive as well-      esac-    fi-    ;;-  esac-  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $enable_shared" >&5-printf "%s\n" "$enable_shared" >&6; }--  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking whether to build static libraries" >&5-printf %s "checking whether to build static libraries... " >&6; }-  # Make sure either enable_shared or enable_static is yes.-  test yes = "$enable_shared" || enable_static=yes-  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $enable_static" >&5-printf "%s\n" "$enable_static" >&6; }-----fi-ac_ext=c-ac_cpp='$CPP $CPPFLAGS'-ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5'-ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5'-ac_compiler_gnu=$ac_cv_c_compiler_gnu--CC=$lt_save_CC--      if test -n "$CXX" && ( test no != "$CXX" &&-    ( (test g++ = "$CXX" && `g++ -v >/dev/null 2>&1` ) ||-    (test g++ != "$CXX"))); then-  ac_ext=cpp-ac_cpp='$CXXCPP $CPPFLAGS'-ac_compile='$CXX -c $CXXFLAGS $CPPFLAGS conftest.$ac_ext >&5'-ac_link='$CXX -o conftest$ac_exeext $CXXFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5'-ac_compiler_gnu=$ac_cv_cxx_compiler_gnu-{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking how to run the C++ preprocessor" >&5-printf %s "checking how to run the C++ preprocessor... " >&6; }-if test -z "$CXXCPP"; then-  if test ${ac_cv_prog_CXXCPP+y}-then :-  printf %s "(cached) " >&6-else case e in #(-  e)     # Double quotes because $CXX needs to be expanded-    for CXXCPP in "$CXX -E" cpp /lib/cpp-    do-      ac_preproc_ok=false-for ac_cxx_preproc_warn_flag in '' yes-do-  # Use a header file that comes with gcc, so configuring glibc-  # with a fresh cross-compiler works.-  # On the NeXT, cc -E runs the code through the compiler's parser,-  # not just through cpp. "Syntax error" is here to catch this case.-  cat confdefs.h - <<_ACEOF >conftest.$ac_ext-/* end confdefs.h.  */-#include <limits.h>-		     Syntax error-_ACEOF-if ac_fn_cxx_try_cpp "$LINENO"-then :--else case e in #(-  e) # Broken: fails on valid input.-continue ;;-esac-fi-rm -f conftest.err conftest.i conftest.$ac_ext--  # OK, works on sane cases.  Now check whether nonexistent headers-  # can be detected and how.-  cat confdefs.h - <<_ACEOF >conftest.$ac_ext-/* end confdefs.h.  */-#include <ac_nonexistent.h>-_ACEOF-if ac_fn_cxx_try_cpp "$LINENO"-then :-  # Broken: success on invalid input.-continue-else case e in #(-  e) # Passes both tests.-ac_preproc_ok=:-break ;;-esac-fi-rm -f conftest.err conftest.i conftest.$ac_ext--done-# Because of 'break', _AC_PREPROC_IFELSE's cleaning code was skipped.-rm -f conftest.i conftest.err conftest.$ac_ext-if $ac_preproc_ok-then :-  break-fi--    done-    ac_cv_prog_CXXCPP=$CXXCPP-   ;;-esac-fi-  CXXCPP=$ac_cv_prog_CXXCPP-else-  ac_cv_prog_CXXCPP=$CXXCPP-fi-{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $CXXCPP" >&5-printf "%s\n" "$CXXCPP" >&6; }-ac_preproc_ok=false-for ac_cxx_preproc_warn_flag in '' yes-do-  # Use a header file that comes with gcc, so configuring glibc-  # with a fresh cross-compiler works.-  # On the NeXT, cc -E runs the code through the compiler's parser,-  # not just through cpp. "Syntax error" is here to catch this case.-  cat confdefs.h - <<_ACEOF >conftest.$ac_ext-/* end confdefs.h.  */-#include <limits.h>-		     Syntax error-_ACEOF-if ac_fn_cxx_try_cpp "$LINENO"-then :--else case e in #(-  e) # Broken: fails on valid input.-continue ;;-esac-fi-rm -f conftest.err conftest.i conftest.$ac_ext--  # OK, works on sane cases.  Now check whether nonexistent headers-  # can be detected and how.-  cat confdefs.h - <<_ACEOF >conftest.$ac_ext-/* end confdefs.h.  */-#include <ac_nonexistent.h>-_ACEOF-if ac_fn_cxx_try_cpp "$LINENO"-then :-  # Broken: success on invalid input.-continue-else case e in #(-  e) # Passes both tests.-ac_preproc_ok=:-break ;;-esac-fi-rm -f conftest.err conftest.i conftest.$ac_ext--done-# Because of 'break', _AC_PREPROC_IFELSE's cleaning code was skipped.-rm -f conftest.i conftest.err conftest.$ac_ext-if $ac_preproc_ok-then :--else case e in #(-  e) { { printf "%s\n" "$as_me:${as_lineno-$LINENO}: error: in '$ac_pwd':" >&5-printf "%s\n" "$as_me: error: in '$ac_pwd':" >&2;}-as_fn_error $? "C++ preprocessor \"$CXXCPP\" fails sanity check-See 'config.log' for more details" "$LINENO" 5; } ;;-esac-fi--ac_ext=c-ac_cpp='$CPP $CPPFLAGS'-ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5'-ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5'-ac_compiler_gnu=$ac_cv_c_compiler_gnu--else-  _lt_caught_CXX_error=yes-fi--ac_ext=cpp-ac_cpp='$CXXCPP $CPPFLAGS'-ac_compile='$CXX -c $CXXFLAGS $CPPFLAGS conftest.$ac_ext >&5'-ac_link='$CXX -o conftest$ac_exeext $CXXFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5'-ac_compiler_gnu=$ac_cv_cxx_compiler_gnu--archive_cmds_need_lc_CXX=no-allow_undefined_flag_CXX=-always_export_symbols_CXX=no-archive_expsym_cmds_CXX=-compiler_needs_object_CXX=no-export_dynamic_flag_spec_CXX=-hardcode_direct_CXX=no-hardcode_direct_absolute_CXX=no-hardcode_libdir_flag_spec_CXX=-hardcode_libdir_separator_CXX=-hardcode_minus_L_CXX=no-hardcode_shlibpath_var_CXX=unsupported-hardcode_automatic_CXX=no-inherit_rpath_CXX=no-module_cmds_CXX=-module_expsym_cmds_CXX=-link_all_deplibs_CXX=unknown-old_archive_cmds_CXX=$old_archive_cmds-reload_flag_CXX=$reload_flag-reload_cmds_CXX=$reload_cmds-no_undefined_flag_CXX=-whole_archive_flag_spec_CXX=-enable_shared_with_static_runtimes_CXX=no--# Source file extension for C++ test sources.-ac_ext=cpp--# Object file extension for compiled C++ test sources.-objext=o-objext_CXX=$objext--# No sense in running all these tests if we already determined that-# the CXX compiler isn't working.  Some variables (like enable_shared)-# are currently assumed to apply to all compilers on this platform,-# and will be corrupted by setting them based on a non-working compiler.-if test yes != "$_lt_caught_CXX_error"; then-  # Code to be used in simple compile tests-  lt_simple_compile_test_code="int some_variable = 0;"--  # Code to be used in simple link tests-  lt_simple_link_test_code='int main(int, char *[]) { return(0); }'--  # ltmain only uses $CC for tagged configurations so make sure $CC is set.-------# If no C compiler was specified, use CC.-LTCC=${LTCC-"$CC"}--# If no C compiler flags were specified, use CFLAGS.-LTCFLAGS=${LTCFLAGS-"$CFLAGS"}--# Allow CC to be a program name with arguments.-compiler=$CC---  # save warnings/boilerplate of simple test code-  ac_outfile=conftest.$ac_objext-echo "$lt_simple_compile_test_code" >conftest.$ac_ext-eval "$ac_compile" 2>&1 >/dev/null | $SED '/^$/d; /^ *+/d' >conftest.err-_lt_compiler_boilerplate=`cat conftest.err`-$RM conftest*--  ac_outfile=conftest.$ac_objext-echo "$lt_simple_link_test_code" >conftest.$ac_ext-eval "$ac_link" 2>&1 >/dev/null | $SED '/^$/d; /^ *+/d' >conftest.err-_lt_linker_boilerplate=`cat conftest.err`-$RM -r conftest*---  # Allow CC to be a program name with arguments.-  lt_save_CC=$CC-  lt_save_CFLAGS=$CFLAGS-  lt_save_LD=$LD-  lt_save_GCC=$GCC-  GCC=$GXX-  lt_save_with_gnu_ld=$with_gnu_ld-  lt_save_path_LD=$lt_cv_path_LD-  if test -n "${lt_cv_prog_gnu_ldcxx+set}"; then-    lt_cv_prog_gnu_ld=$lt_cv_prog_gnu_ldcxx-  else-    $as_unset lt_cv_prog_gnu_ld-  fi-  if test -n "${lt_cv_path_LDCXX+set}"; then-    lt_cv_path_LD=$lt_cv_path_LDCXX-  else-    $as_unset lt_cv_path_LD-  fi-  test -z "${LDCXX+set}" || LD=$LDCXX-  CC=${CXX-"c++"}-  CFLAGS=$CXXFLAGS-  compiler=$CC-  compiler_CXX=$CC-  func_cc_basename $compiler-cc_basename=$func_cc_basename_result---  if test -n "$compiler"; then-    # We don't want -fno-exception when compiling C++ code, so set the-    # no_builtin_flag separately-    if test yes = "$GXX"; then-      lt_prog_compiler_no_builtin_flag_CXX=' -fno-builtin'-    else-      lt_prog_compiler_no_builtin_flag_CXX=-    fi--    if test yes = "$GXX"; then-      # Set up default GNU C++ configuration----# Check whether --with-gnu-ld was given.-if test ${with_gnu_ld+y}-then :-  withval=$with_gnu_ld; test no = "$withval" || with_gnu_ld=yes-else case e in #(-  e) with_gnu_ld=no ;;-esac-fi--ac_prog=ld-if test yes = "$GCC"; then-  # Check if gcc -print-prog-name=ld gives a path.-  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for ld used by $CC" >&5-printf %s "checking for ld used by $CC... " >&6; }-  case $host in-  *-*-mingw* | *-*-windows*)-    # gcc leaves a trailing carriage return, which upsets mingw-    ac_prog=`($CC -print-prog-name=ld) 2>&5 | tr -d '\015'` ;;-  *)-    ac_prog=`($CC -print-prog-name=ld) 2>&5` ;;-  esac-  case $ac_prog in-    # Accept absolute paths.-    [\\/]* | ?:[\\/]*)-      re_direlt='/[^/][^/]*/\.\./'-      # Canonicalize the pathname of ld-      ac_prog=`$ECHO "$ac_prog"| $SED 's%\\\\%/%g'`-      while $ECHO "$ac_prog" | $GREP "$re_direlt" > /dev/null 2>&1; do-	ac_prog=`$ECHO $ac_prog| $SED "s%$re_direlt%/%"`-      done-      test -z "$LD" && LD=$ac_prog-      ;;-  "")-    # If it fails, then pretend we aren't using GCC.-    ac_prog=ld-    ;;-  *)-    # If it is relative, then search for the first ld in PATH.-    with_gnu_ld=unknown-    ;;-  esac-elif test yes = "$with_gnu_ld"; then-  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for GNU ld" >&5-printf %s "checking for GNU ld... " >&6; }-else-  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for non-GNU ld" >&5-printf %s "checking for non-GNU ld... " >&6; }-fi-if test ${lt_cv_path_LD+y}-then :-  printf %s "(cached) " >&6-else case e in #(-  e) if test -z "$LD"; then-  lt_save_ifs=$IFS; IFS=$PATH_SEPARATOR-  for ac_dir in $PATH; do-    IFS=$lt_save_ifs-    test -z "$ac_dir" && ac_dir=.-    if test -f "$ac_dir/$ac_prog" || test -f "$ac_dir/$ac_prog$ac_exeext"; then-      lt_cv_path_LD=$ac_dir/$ac_prog-      # Check to see if the program is GNU ld.  I'd rather use --version,-      # but apparently some variants of GNU ld only accept -v.-      # Break only if it was the GNU/non-GNU ld that we prefer.-      case `"$lt_cv_path_LD" -v 2>&1 </dev/null` in-      *GNU* | *'with BFD'*)-	test no != "$with_gnu_ld" && break-	;;-      *)-	test yes != "$with_gnu_ld" && break-	;;-      esac-    fi-  done-  IFS=$lt_save_ifs-else-  lt_cv_path_LD=$LD # Let the user override the test with a path.-fi ;;-esac-fi--LD=$lt_cv_path_LD-if test -n "$LD"; then-  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $LD" >&5-printf "%s\n" "$LD" >&6; }-else-  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5-printf "%s\n" "no" >&6; }-fi-test -z "$LD" && as_fn_error $? "no acceptable ld found in \$PATH" "$LINENO" 5-{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking if the linker ($LD) is GNU ld" >&5-printf %s "checking if the linker ($LD) is GNU ld... " >&6; }-if test ${lt_cv_prog_gnu_ld+y}-then :-  printf %s "(cached) " >&6-else case e in #(-  e) # I'd rather use --version here, but apparently some GNU lds only accept -v.-case `$LD -v 2>&1 </dev/null` in-*GNU* | *'with BFD'*)-  lt_cv_prog_gnu_ld=yes-  ;;-*)-  lt_cv_prog_gnu_ld=no-  ;;-esac ;;-esac-fi-{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $lt_cv_prog_gnu_ld" >&5-printf "%s\n" "$lt_cv_prog_gnu_ld" >&6; }-with_gnu_ld=$lt_cv_prog_gnu_ld--------      # Check if GNU C++ uses GNU ld as the underlying linker, since the-      # archiving commands below assume that GNU ld is being used.-      if test yes = "$with_gnu_ld"; then-        archive_cmds_CXX='$CC $pic_flag -shared -nostdlib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags $wl-soname $wl$soname -o $lib'-        archive_expsym_cmds_CXX='$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'--        hardcode_libdir_flag_spec_CXX='$wl-rpath $wl$libdir'-        export_dynamic_flag_spec_CXX='$wl--export-dynamic'--        # If archive_cmds runs LD, not CC, wlarc should be empty-        # XXX I think wlarc can be eliminated in ltcf-cxx, but I need to-        #     investigate it a little bit more. (MM)-        wlarc='$wl'--        # ancient GNU ld didn't support --whole-archive et. al.-        if $LD --help 2>&1 | $GREP 'no-whole-archive' > /dev/null; then-          whole_archive_flag_spec_CXX=$wlarc'--whole-archive$convenience '$wlarc'--no-whole-archive'-        else-          whole_archive_flag_spec_CXX=-        fi-      else-        with_gnu_ld=no-        wlarc=--        # A generic and very simple default shared library creation-        # command for GNU C++ for the case where it uses the native-        # linker, instead of GNU ld.  If possible, this setting should-        # overridden to take advantage of the native linker features on-        # the platform it is being used on.-        archive_cmds_CXX='$CC -shared -nostdlib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags -o $lib'-      fi--      # Commands to make compiler produce verbose output that lists-      # what "hidden" libraries, object files and flags are used when-      # linking a shared library.-      output_verbose_link_cmd='$CC -shared $CFLAGS -v conftest.$objext 2>&1 | $GREP -v "^Configured with:" | $GREP " [-]L"'--    else-      GXX=no-      with_gnu_ld=no-      wlarc=-    fi--    # PORTME: fill in a description of your system's C++ link characteristics-    { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking whether the $compiler linker ($LD) supports shared libraries" >&5-printf %s "checking whether the $compiler linker ($LD) supports shared libraries... " >&6; }-    ld_shlibs_CXX=yes-    case $host_os in-      aix3*)-        # FIXME: insert proper C++ library support-        ld_shlibs_CXX=no-        ;;-      aix[4-9]*)-        if test ia64 = "$host_cpu"; then-          # On IA64, the linker does run time linking by default, so we don't-          # have to do anything special.-          aix_use_runtimelinking=no-          exp_sym_flag='-Bexport'-          no_entry_flag=-        else-          aix_use_runtimelinking=no--          # Test if we are trying to use run time linking or normal-          # AIX style linking. If -brtl is somewhere in LDFLAGS, we-          # have runtime linking enabled, and use it for executables.-          # For shared libraries, we enable/disable runtime linking-          # depending on the kind of the shared library created --          # when "with_aix_soname,aix_use_runtimelinking" is:-          # "aix,no"   lib.a(lib.so.V) shared, rtl:no,  for executables-          # "aix,yes"  lib.so          shared, rtl:yes, for executables-          #            lib.a           static archive-          # "both,no"  lib.so.V(shr.o) shared, rtl:yes-          #            lib.a(lib.so.V) shared, rtl:no,  for executables-          # "both,yes" lib.so.V(shr.o) shared, rtl:yes, for executables-          #            lib.a(lib.so.V) shared, rtl:no-          # "svr4,*"   lib.so.V(shr.o) shared, rtl:yes, for executables-          #            lib.a           static archive-          case $host_os in aix4.[23]|aix4.[23].*|aix[5-9]*)-	    for ld_flag in $LDFLAGS; do-	      case $ld_flag in-	      *-brtl*)-	        aix_use_runtimelinking=yes-	        break-	        ;;-	      esac-	    done-	    if test svr4,no = "$with_aix_soname,$aix_use_runtimelinking"; then-	      # With aix-soname=svr4, we create the lib.so.V shared archives only,-	      # so we don't have lib.a shared libs to link our executables.-	      # We have to force runtime linking in this case.-	      aix_use_runtimelinking=yes-	      LDFLAGS="$LDFLAGS -Wl,-brtl"-	    fi-	    ;;-          esac--          exp_sym_flag='-bexport'-          no_entry_flag='-bnoentry'-        fi--        # When large executables or shared objects are built, AIX ld can-        # have problems creating the table of contents.  If linking a library-        # or program results in "error TOC overflow" add -mminimal-toc to-        # CXXFLAGS/CFLAGS for g++/gcc.  In the cases where that is not-        # enough to fix the problem, add -Wl,-bbigtoc to LDFLAGS.--        archive_cmds_CXX=''-        hardcode_direct_CXX=yes-        hardcode_direct_absolute_CXX=yes-        hardcode_libdir_separator_CXX=':'-        link_all_deplibs_CXX=yes-        file_list_spec_CXX='$wl-f,'-        case $with_aix_soname,$aix_use_runtimelinking in-        aix,*) ;;	# no import file-        svr4,* | *,yes) # use import file-          # The Import File defines what to hardcode.-          hardcode_direct_CXX=no-          hardcode_direct_absolute_CXX=no-          ;;-        esac--        if test yes = "$GXX"; then-          case $host_os in aix4.[012]|aix4.[012].*)-          # We only want to do this on AIX 4.2 and lower, the check-          # below for broken collect2 doesn't work under 4.3+-	  collect2name=`$CC -print-prog-name=collect2`-	  if test -f "$collect2name" &&-	     strings "$collect2name" | $GREP resolve_lib_name >/dev/null-	  then-	    # We have reworked collect2-	    :-	  else-	    # We have old collect2-	    hardcode_direct_CXX=unsupported-	    # It fails to find uninstalled libraries when the uninstalled-	    # path is not listed in the libpath.  Setting hardcode_minus_L-	    # to unsupported forces relinking-	    hardcode_minus_L_CXX=yes-	    hardcode_libdir_flag_spec_CXX='-L$libdir'-	    hardcode_libdir_separator_CXX=-	  fi-          esac-          shared_flag='-shared'-	  if test yes = "$aix_use_runtimelinking"; then-	    shared_flag=$shared_flag' $wl-G'-	  fi-	  # Need to ensure runtime linking is disabled for the traditional-	  # shared library, or the linker may eventually find shared libraries-	  # /with/ Import File - we do not want to mix them.-	  shared_flag_aix='-shared'-	  shared_flag_svr4='-shared $wl-G'-        else-          # not using gcc-          if test ia64 = "$host_cpu"; then-	  # VisualAge C++, Version 5.5 for AIX 5L for IA-64, Beta 3 Release-	  # chokes on -Wl,-G. The following line is correct:-	  shared_flag='-G'-          else-	    if test yes = "$aix_use_runtimelinking"; then-	      shared_flag='$wl-G'-	    else-	      shared_flag='$wl-bM:SRE'-	    fi-	    shared_flag_aix='$wl-bM:SRE'-	    shared_flag_svr4='$wl-G'-          fi-        fi--        export_dynamic_flag_spec_CXX='$wl-bexpall'-        # It seems that -bexpall does not export symbols beginning with-        # underscore (_), so it is better to generate a list of symbols to-	# export.-        always_export_symbols_CXX=yes-	if test aix,yes = "$with_aix_soname,$aix_use_runtimelinking"; then-          # Warning - without using the other runtime loading flags (-brtl),-          # -berok will link without error, but may produce a broken library.-          # The "-G" linker flag allows undefined symbols.-          no_undefined_flag_CXX='-bernotok'-          # Determine the default libpath from the value encoded in an empty-          # executable.-          if test set = "${lt_cv_aix_libpath+set}"; then-  aix_libpath=$lt_cv_aix_libpath-else-  if test ${lt_cv_aix_libpath__CXX+y}-then :-  printf %s "(cached) " >&6-else case e in #(-  e) cat confdefs.h - <<_ACEOF >conftest.$ac_ext-/* end confdefs.h.  */--int-main (void)-{--  ;-  return 0;-}-_ACEOF-if ac_fn_cxx_try_link "$LINENO"-then :--  lt_aix_libpath_sed='-      /Import File Strings/,/^$/ {-	  /^0/ {-	      s/^0  *\([^ ]*\) *$/\1/-	      p-	  }-      }'-  lt_cv_aix_libpath__CXX=`dump -H conftest$ac_exeext 2>/dev/null | $SED -n -e "$lt_aix_libpath_sed"`-  # Check for a 64-bit object if we didn't find anything.-  if test -z "$lt_cv_aix_libpath__CXX"; then-    lt_cv_aix_libpath__CXX=`dump -HX64 conftest$ac_exeext 2>/dev/null | $SED -n -e "$lt_aix_libpath_sed"`-  fi-fi-rm -f core conftest.err conftest.$ac_objext conftest.beam \-    conftest$ac_exeext conftest.$ac_ext-  if test -z "$lt_cv_aix_libpath__CXX"; then-    lt_cv_aix_libpath__CXX=/usr/lib:/lib-  fi-   ;;-esac-fi--  aix_libpath=$lt_cv_aix_libpath__CXX-fi--          hardcode_libdir_flag_spec_CXX='$wl-blibpath:$libdir:'"$aix_libpath"--          archive_expsym_cmds_CXX='$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-        else-          if test ia64 = "$host_cpu"; then-	    hardcode_libdir_flag_spec_CXX='$wl-R $libdir:/usr/lib:/lib'-	    allow_undefined_flag_CXX="-z nodefs"-	    archive_expsym_cmds_CXX="\$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"-          else-	    # Determine the default libpath from the value encoded in an-	    # empty executable.-	    if test set = "${lt_cv_aix_libpath+set}"; then-  aix_libpath=$lt_cv_aix_libpath-else-  if test ${lt_cv_aix_libpath__CXX+y}-then :-  printf %s "(cached) " >&6-else case e in #(-  e) cat confdefs.h - <<_ACEOF >conftest.$ac_ext-/* end confdefs.h.  */--int-main (void)-{--  ;-  return 0;-}-_ACEOF-if ac_fn_cxx_try_link "$LINENO"-then :--  lt_aix_libpath_sed='-      /Import File Strings/,/^$/ {-	  /^0/ {-	      s/^0  *\([^ ]*\) *$/\1/-	      p-	  }-      }'-  lt_cv_aix_libpath__CXX=`dump -H conftest$ac_exeext 2>/dev/null | $SED -n -e "$lt_aix_libpath_sed"`-  # Check for a 64-bit object if we didn't find anything.-  if test -z "$lt_cv_aix_libpath__CXX"; then-    lt_cv_aix_libpath__CXX=`dump -HX64 conftest$ac_exeext 2>/dev/null | $SED -n -e "$lt_aix_libpath_sed"`-  fi-fi-rm -f core conftest.err conftest.$ac_objext conftest.beam \-    conftest$ac_exeext conftest.$ac_ext-  if test -z "$lt_cv_aix_libpath__CXX"; then-    lt_cv_aix_libpath__CXX=/usr/lib:/lib-  fi-   ;;-esac-fi--  aix_libpath=$lt_cv_aix_libpath__CXX-fi--	    hardcode_libdir_flag_spec_CXX='$wl-blibpath:$libdir:'"$aix_libpath"-	    # Warning - without using the other run time loading flags,-	    # -berok will link without error, but may produce a broken library.-	    no_undefined_flag_CXX=' $wl-bernotok'-	    allow_undefined_flag_CXX=' $wl-berok'-	    if test yes = "$with_gnu_ld"; then-	      # We only use this code for GNU lds that support --whole-archive.-	      whole_archive_flag_spec_CXX='$wl--whole-archive$convenience $wl--no-whole-archive'-	    else-	      # Exported symbols can be pulled into shared objects from archives-	      whole_archive_flag_spec_CXX='$convenience'-	    fi-	    archive_cmds_need_lc_CXX=yes-	    archive_expsym_cmds_CXX='$RM -r $output_objdir/$realname.d~$MKDIR $output_objdir/$realname.d'-	    # -brtl affects multiple linker settings, -berok does not and is overridden later-	    compiler_flags_filtered='`func_echo_all "$compiler_flags " | $SED -e "s%-brtl\\([, ]\\)%-berok\\1%g"`'-	    if test svr4 != "$with_aix_soname"; then-	      # This is similar to how AIX traditionally builds its shared-	      # libraries. Need -bnortl late, we may have -brtl in LDFLAGS.-	      archive_expsym_cmds_CXX="$archive_expsym_cmds_CXX"'~$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'-	    fi-	    if test aix != "$with_aix_soname"; then-	      archive_expsym_cmds_CXX="$archive_expsym_cmds_CXX"'~$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'-	    else-	      # used by -dlpreopen to get the symbols-	      archive_expsym_cmds_CXX="$archive_expsym_cmds_CXX"'~$MV  $output_objdir/$realname.d/$soname $output_objdir'-	    fi-	    archive_expsym_cmds_CXX="$archive_expsym_cmds_CXX"'~$RM -r $output_objdir/$realname.d'-          fi-        fi-        ;;--      beos*)-	if $LD --help 2>&1 | $GREP ': supported targets:.* elf' > /dev/null; then-	  allow_undefined_flag_CXX=unsupported-	  # Joseph Beckenbach <jrb3@best.com> says some releases of gcc-	  # support --undefined.  This deserves some investigation.  FIXME-	  archive_cmds_CXX='$CC -nostart $libobjs $deplibs $compiler_flags $wl-soname $wl$soname -o $lib'-	else-	  ld_shlibs_CXX=no-	fi-	;;--      chorus*)-        case $cc_basename in-          *)-	  # FIXME: insert proper C++ library support-	  ld_shlibs_CXX=no-	  ;;-        esac-        ;;--      cygwin* | mingw* | windows* | pw32* | cegcc*)-	case $GXX,$cc_basename in-	,cl* | no,cl* | ,icl* | no,icl*)-	  # Native MSVC or ICC-	  # hardcode_libdir_flag_spec is actually meaningless, as there is-	  # no search path for DLLs.-	  hardcode_libdir_flag_spec_CXX=' '-	  allow_undefined_flag_CXX=unsupported-	  always_export_symbols_CXX=yes-	  file_list_spec_CXX='@'-	  # Tell ltmain to make .lib files, not .a files.-	  libext=lib-	  # Tell ltmain to make .dll files, not .so files.-	  shrext_cmds=.dll-	  # FIXME: Setting linknames here is a bad hack.-	  archive_cmds_CXX='$CC -o $output_objdir/$soname $libobjs $compiler_flags $deplibs -Wl,-DLL,-IMPLIB:"$tool_output_objdir$libname.dll.lib"~linknames='-	  archive_expsym_cmds_CXX='if   test DEF = "`$SED -n     -e '\''s/^[	 ]*//'\''     -e '\''/^\(;.*\)*$/d'\''     -e '\''s/^\(EXPORTS\|LIBRARY\)\([	 ].*\)*$/DEF/p'\''     -e q     $export_symbols`" ; then-              cp "$export_symbols" "$output_objdir/$soname.def";-              echo "$tool_output_objdir$soname.def" > "$output_objdir/$soname.exp";-            else-              $SED -e '\''s/^/-link -EXPORT:/'\'' < $export_symbols > $output_objdir/$soname.exp;-            fi~-            $CC -o $tool_output_objdir$soname $libobjs $compiler_flags $deplibs "@$tool_output_objdir$soname.exp" -Wl,-DLL,-IMPLIB:"$tool_output_objdir$libname.dll.lib"~-            linknames='-	  # The linker will not automatically build a static lib if we build a DLL.-	  # _LT_TAGVAR(old_archive_from_new_cmds, CXX)='true'-	  enable_shared_with_static_runtimes_CXX=yes-	  # Don't use ranlib-	  old_postinstall_cmds_CXX='chmod 644 $oldlib'-	  postlink_cmds_CXX='lt_outputfile="@OUTPUT@"~-            lt_tool_outputfile="@TOOL_OUTPUT@"~-            case $lt_outputfile in-              *.exe|*.EXE) ;;-              *)-                lt_outputfile=$lt_outputfile.exe-                lt_tool_outputfile=$lt_tool_outputfile.exe-                ;;-            esac~-            func_to_tool_file "$lt_outputfile"~-            if test : != "$MANIFEST_TOOL" && test -f "$lt_outputfile.manifest"; then-              $MANIFEST_TOOL -manifest "$lt_tool_outputfile.manifest" -outputresource:"$lt_tool_outputfile" || exit 1;-              $RM "$lt_outputfile.manifest";-            fi'-	  ;;-	*)-	  # g++-	  # _LT_TAGVAR(hardcode_libdir_flag_spec, CXX) is actually meaningless,-	  # as there is no search path for DLLs.-	  hardcode_libdir_flag_spec_CXX='-L$libdir'-	  export_dynamic_flag_spec_CXX='$wl--export-all-symbols'-	  allow_undefined_flag_CXX=unsupported-	  always_export_symbols_CXX=no-	  enable_shared_with_static_runtimes_CXX=yes-	  file_list_spec_CXX='@'--	  if $LD --help 2>&1 | $GREP 'auto-import' > /dev/null; then-	    archive_cmds_CXX='$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'-	    # If the export-symbols file already is a .def file, use it as-	    # is; otherwise, prepend EXPORTS...-	    archive_expsym_cmds_CXX='if   test DEF = "`$SED -n     -e '\''s/^[	 ]*//'\''     -e '\''/^\(;.*\)*$/d'\''     -e '\''s/^\(EXPORTS\|LIBRARY\)\([	 ].*\)*$/DEF/p'\''     -e q     $export_symbols`" ; then-              cp $export_symbols $output_objdir/$soname.def;-            else-              echo EXPORTS > $output_objdir/$soname.def;-              cat $export_symbols >> $output_objdir/$soname.def;-            fi~-            $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'-	  else-	    ld_shlibs_CXX=no-	  fi-	  ;;-	esac-	;;-      darwin* | rhapsody*)---  archive_cmds_need_lc_CXX=no-  hardcode_direct_CXX=no-  hardcode_automatic_CXX=yes-  hardcode_shlibpath_var_CXX=unsupported-  if test yes = "$lt_cv_ld_force_load"; then-    whole_archive_flag_spec_CXX='`for conv in $convenience\"\"; do test  -n \"$conv\" && new_convenience=\"$new_convenience $wl-force_load,$conv\"; done; func_echo_all \"$new_convenience\"`'--  else-    whole_archive_flag_spec_CXX=''-  fi-  link_all_deplibs_CXX=yes-  allow_undefined_flag_CXX=$_lt_dar_allow_undefined-  case $cc_basename in-     ifort*|nagfor*) _lt_dar_can_shared=yes ;;-     *) _lt_dar_can_shared=$GCC ;;-  esac-  if test yes = "$_lt_dar_can_shared"; then-    output_verbose_link_cmd=func_echo_all-    archive_cmds_CXX="\$CC -dynamiclib \$allow_undefined_flag -o \$lib \$libobjs \$deplibs \$compiler_flags -install_name \$rpath/\$soname \$verstring $_lt_dar_single_mod$_lt_dsymutil"-    module_cmds_CXX="\$CC \$allow_undefined_flag -o \$lib -bundle \$libobjs \$deplibs \$compiler_flags$_lt_dsymutil"-    archive_expsym_cmds_CXX="$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"-    module_expsym_cmds_CXX="$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"-       if test yes = "$_lt_dar_needs_single_mod" -a yes != "$lt_cv_apple_cc_single_mod"; then-      archive_cmds_CXX="\$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"-      archive_expsym_cmds_CXX="$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"-    fi--  else-  ld_shlibs_CXX=no-  fi--	;;--      os2*)-	hardcode_libdir_flag_spec_CXX='-L$libdir'-	hardcode_minus_L_CXX=yes-	allow_undefined_flag_CXX=unsupported-	shrext_cmds=.dll-	archive_cmds_CXX='$ECHO "LIBRARY ${soname%$shared_ext} INITINSTANCE TERMINSTANCE" > $output_objdir/$libname.def~-	  $ECHO "DESCRIPTION \"$libname\"" >> $output_objdir/$libname.def~-	  $ECHO "DATA MULTIPLE NONSHARED" >> $output_objdir/$libname.def~-	  $ECHO EXPORTS >> $output_objdir/$libname.def~-	  emxexp $libobjs | $SED /"_DLL_InitTerm"/d >> $output_objdir/$libname.def~-	  $CC -Zdll -Zcrtdll -o $output_objdir/$soname $libobjs $deplibs $compiler_flags $output_objdir/$libname.def~-	  emximp -o $lib $output_objdir/$libname.def'-	archive_expsym_cmds_CXX='$ECHO "LIBRARY ${soname%$shared_ext} INITINSTANCE TERMINSTANCE" > $output_objdir/$libname.def~-	  $ECHO "DESCRIPTION \"$libname\"" >> $output_objdir/$libname.def~-	  $ECHO "DATA MULTIPLE NONSHARED" >> $output_objdir/$libname.def~-	  $ECHO EXPORTS >> $output_objdir/$libname.def~-	  prefix_cmds="$SED"~-	  if test EXPORTS = "`$SED 1q $export_symbols`"; then-	    prefix_cmds="$prefix_cmds -e 1d";-	  fi~-	  prefix_cmds="$prefix_cmds -e \"s/^\(.*\)$/_\1/g\""~-	  cat $export_symbols | $prefix_cmds >> $output_objdir/$libname.def~-	  $CC -Zdll -Zcrtdll -o $output_objdir/$soname $libobjs $deplibs $compiler_flags $output_objdir/$libname.def~-	  emximp -o $lib $output_objdir/$libname.def'-	old_archive_from_new_cmds_CXX='emximp -o $output_objdir/${libname}_dll.a $output_objdir/$libname.def'-	enable_shared_with_static_runtimes_CXX=yes-	file_list_spec_CXX='@'-	;;--      dgux*)-        case $cc_basename in-          ec++*)-	    # FIXME: insert proper C++ library support-	    ld_shlibs_CXX=no-	    ;;-          ghcx*)-	    # Green Hills C++ Compiler-	    # FIXME: insert proper C++ library support-	    ld_shlibs_CXX=no-	    ;;-          *)-	    # FIXME: insert proper C++ library support-	    ld_shlibs_CXX=no-	    ;;-        esac-        ;;--      freebsd2.*)-        # C++ shared libraries reported to be fairly broken before-	# switch to ELF-        ld_shlibs_CXX=no-        ;;--      freebsd-elf*)-        archive_cmds_need_lc_CXX=no-        ;;--      freebsd* | dragonfly* | midnightbsd*)-        # FreeBSD 3 and later use GNU C++ and GNU ld with standard ELF-        # conventions-        ld_shlibs_CXX=yes-        ;;--      haiku*)-        archive_cmds_CXX='$CC -shared $libobjs $deplibs $compiler_flags $wl-soname $wl$soname -o $lib'-        link_all_deplibs_CXX=no-        ;;--      hpux9*)-        hardcode_libdir_flag_spec_CXX='$wl+b $wl$libdir'-        hardcode_libdir_separator_CXX=:-        export_dynamic_flag_spec_CXX='$wl-E'-        hardcode_direct_CXX=yes-        hardcode_minus_L_CXX=yes # Not in the search PATH,-				             # but as the default-				             # location of the library.--        case $cc_basename in-          CC*)-            # FIXME: insert proper C++ library support-            ld_shlibs_CXX=no-            ;;-          aCC*)-            archive_cmds_CXX='$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'-            # Commands to make compiler produce verbose output that lists-            # what "hidden" libraries, object files and flags are used when-            # linking a shared library.-            #-            # There doesn't appear to be a way to prevent this compiler from-            # explicitly linking system object files so we need to strip them-            # from the output so that they don't get included in the library-            # dependencies.-            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"'-            ;;-          *)-            if test yes = "$GXX"; then-              archive_cmds_CXX='$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'-            else-              # FIXME: insert proper C++ library support-              ld_shlibs_CXX=no-            fi-            ;;-        esac-        ;;--      hpux10*|hpux11*)-        if test no = "$with_gnu_ld"; then-	  hardcode_libdir_flag_spec_CXX='$wl+b $wl$libdir'-	  hardcode_libdir_separator_CXX=:--          case $host_cpu in-            hppa*64*|ia64*)-              ;;-            *)-	      export_dynamic_flag_spec_CXX='$wl-E'-              ;;-          esac-        fi-        case $host_cpu in-          hppa*64*|ia64*)-            hardcode_direct_CXX=no-            hardcode_shlibpath_var_CXX=no-            ;;-          *)-            hardcode_direct_CXX=yes-            hardcode_direct_absolute_CXX=yes-            hardcode_minus_L_CXX=yes # Not in the search PATH,-					         # but as the default-					         # location of the library.-            ;;-        esac--        case $cc_basename in-          CC*)-	    # FIXME: insert proper C++ library support-	    ld_shlibs_CXX=no-	    ;;-          aCC*)-	    case $host_cpu in-	      hppa*64*)-	        archive_cmds_CXX='$CC -b $wl+h $wl$soname -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags'-	        ;;-	      ia64*)-	        archive_cmds_CXX='$CC -b $wl+h $wl$soname $wl+nodefaultrpath -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags'-	        ;;-	      *)-	        archive_cmds_CXX='$CC -b $wl+h $wl$soname $wl+b $wl$install_libdir -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags'-	        ;;-	    esac-	    # Commands to make compiler produce verbose output that lists-	    # what "hidden" libraries, object files and flags are used when-	    # linking a shared library.-	    #-	    # There doesn't appear to be a way to prevent this compiler from-	    # explicitly linking system object files so we need to strip them-	    # from the output so that they don't get included in the library-	    # dependencies.-	    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"'-	    ;;-          *)-	    if test yes = "$GXX"; then-	      if test no = "$with_gnu_ld"; then-	        case $host_cpu in-	          hppa*64*)-	            archive_cmds_CXX='$CC -shared -nostdlib -fPIC $wl+h $wl$soname -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags'-	            ;;-	          ia64*)-	            archive_cmds_CXX='$CC -shared -nostdlib $pic_flag $wl+h $wl$soname $wl+nodefaultrpath -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags'-	            ;;-	          *)-	            archive_cmds_CXX='$CC -shared -nostdlib $pic_flag $wl+h $wl$soname $wl+b $wl$install_libdir -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags'-	            ;;-	        esac-	      fi-	    else-	      # FIXME: insert proper C++ library support-	      ld_shlibs_CXX=no-	    fi-	    ;;-        esac-        ;;--      interix[3-9]*)-	hardcode_direct_CXX=no-	hardcode_shlibpath_var_CXX=no-	hardcode_libdir_flag_spec_CXX='$wl-rpath,$libdir'-	export_dynamic_flag_spec_CXX='$wl-E'-	# Hack: On Interix 3.x, we cannot compile PIC because of a broken gcc.-	# Instead, shared libraries are loaded at an image base (0x10000000 by-	# default) and relocated if they conflict, which is a slow very memory-	# consuming and fragmenting process.  To avoid this, we pick a random,-	# 256 KiB-aligned image base between 0x50000000 and 0x6FFC0000 at link-	# time.  Moving up from 0x10000000 also allows more sbrk(2) space.-	archive_cmds_CXX='$CC -shared $pic_flag $libobjs $deplibs $compiler_flags $wl-h,$soname $wl--image-base,`expr ${RANDOM-$$} % 4096 / 2 \* 262144 + 1342177280` -o $lib'-	archive_expsym_cmds_CXX='$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'-	;;-      irix5* | irix6*)-        case $cc_basename in-          CC*)-	    # SGI C++-	    archive_cmds_CXX='$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'--	    # Archives containing C++ object files must be created using-	    # "CC -ar", where "CC" is the IRIX C++ compiler.  This is-	    # necessary to make sure instantiated templates are included-	    # in the archive.-	    old_archive_cmds_CXX='$CC -ar -WR,-u -o $oldlib $oldobjs'-	    ;;-          *)-	    if test yes = "$GXX"; then-	      if test no = "$with_gnu_ld"; then-	        archive_cmds_CXX='$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'-	      else-	        archive_cmds_CXX='$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'-	      fi-	    fi-	    link_all_deplibs_CXX=yes-	    ;;-        esac-        hardcode_libdir_flag_spec_CXX='$wl-rpath $wl$libdir'-        hardcode_libdir_separator_CXX=:-        inherit_rpath_CXX=yes-        ;;--      linux* | k*bsd*-gnu | kopensolaris*-gnu | gnu*)-        case $cc_basename in-          KCC*)-	    # Kuck and Associates, Inc. (KAI) C++ Compiler--	    # KCC will only create a shared library if the output file-	    # ends with ".so" (or ".sl" for HP-UX), so rename the library-	    # to its proper name (with version) after linking.-	    archive_cmds_CXX='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'-	    archive_expsym_cmds_CXX='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'-	    # Commands to make compiler produce verbose output that lists-	    # what "hidden" libraries, object files and flags are used when-	    # linking a shared library.-	    #-	    # There doesn't appear to be a way to prevent this compiler from-	    # explicitly linking system object files so we need to strip them-	    # from the output so that they don't get included in the library-	    # dependencies.-	    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"'--	    hardcode_libdir_flag_spec_CXX='$wl-rpath,$libdir'-	    export_dynamic_flag_spec_CXX='$wl--export-dynamic'--	    # Archives containing C++ object files must be created using-	    # "CC -Bstatic", where "CC" is the KAI C++ compiler.-	    old_archive_cmds_CXX='$CC -Bstatic -o $oldlib $oldobjs'-	    ;;-	  icpc* | ecpc* )-	    # Intel C++-	    with_gnu_ld=yes-	    # version 8.0 and above of icpc choke on multiply defined symbols-	    # if we add $predep_objects and $postdep_objects, however 7.1 and-	    # earlier do not add the objects themselves.-	    case `$CC -V 2>&1` in-	      *"Version 7."*)-	        archive_cmds_CXX='$CC -shared $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags $wl-soname $wl$soname -o $lib'-		archive_expsym_cmds_CXX='$CC -shared $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags $wl-soname $wl$soname $wl-retain-symbols-file $wl$export_symbols -o $lib'-		;;-	      *)  # Version 8.0 or newer-	        tmp_idyn=-	        case $host_cpu in-		  ia64*) tmp_idyn=' -i_dynamic';;-		esac-	        archive_cmds_CXX='$CC -shared'"$tmp_idyn"' $libobjs $deplibs $compiler_flags $wl-soname $wl$soname -o $lib'-		archive_expsym_cmds_CXX='$CC -shared'"$tmp_idyn"' $libobjs $deplibs $compiler_flags $wl-soname $wl$soname $wl-retain-symbols-file $wl$export_symbols -o $lib'-		;;-	    esac-	    archive_cmds_need_lc_CXX=no-	    hardcode_libdir_flag_spec_CXX='$wl-rpath,$libdir'-	    export_dynamic_flag_spec_CXX='$wl--export-dynamic'-	    whole_archive_flag_spec_CXX='$wl--whole-archive$convenience $wl--no-whole-archive'-	    ;;-          pgCC* | pgcpp*)-            # Portland Group C++ compiler-	    case `$CC -V` in-	    *pgCC\ [1-5].* | *pgcpp\ [1-5].*)-	      prelink_cmds_CXX='tpldir=Template.dir~-               rm -rf $tpldir~-               $CC --prelink_objects --instantiation_dir $tpldir $objs $libobjs $compile_deplibs~-               compile_command="$compile_command `find $tpldir -name \*.o | sort | $NL2SP`"'-	      old_archive_cmds_CXX='tpldir=Template.dir~-                rm -rf $tpldir~-                $CC --prelink_objects --instantiation_dir $tpldir $oldobjs$old_deplibs~-                $AR $AR_FLAGS $oldlib$oldobjs$old_deplibs `find $tpldir -name \*.o | sort | $NL2SP`~-                $RANLIB $oldlib'-	      archive_cmds_CXX='tpldir=Template.dir~-                rm -rf $tpldir~-                $CC --prelink_objects --instantiation_dir $tpldir $predep_objects $libobjs $deplibs $convenience $postdep_objects~-                $CC -shared $pic_flag $predep_objects $libobjs $deplibs `find $tpldir -name \*.o | sort | $NL2SP` $postdep_objects $compiler_flags $wl-soname $wl$soname -o $lib'-	      archive_expsym_cmds_CXX='tpldir=Template.dir~-                rm -rf $tpldir~-                $CC --prelink_objects --instantiation_dir $tpldir $predep_objects $libobjs $deplibs $convenience $postdep_objects~-                $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'-	      ;;-	    *) # Version 6 and above use weak symbols-	      archive_cmds_CXX='$CC -shared $pic_flag $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags $wl-soname $wl$soname -o $lib'-	      archive_expsym_cmds_CXX='$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'-	      ;;-	    esac--	    hardcode_libdir_flag_spec_CXX='$wl--rpath $wl$libdir'-	    export_dynamic_flag_spec_CXX='$wl--export-dynamic'-	    whole_archive_flag_spec_CXX='$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'-            ;;-	  cxx*)-	    # Compaq C++-	    archive_cmds_CXX='$CC -shared $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags $wl-soname $wl$soname -o $lib'-	    archive_expsym_cmds_CXX='$CC -shared $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags $wl-soname $wl$soname  -o $lib $wl-retain-symbols-file $wl$export_symbols'--	    runpath_var=LD_RUN_PATH-	    hardcode_libdir_flag_spec_CXX='-rpath $libdir'-	    hardcode_libdir_separator_CXX=:--	    # Commands to make compiler produce verbose output that lists-	    # what "hidden" libraries, object files and flags are used when-	    # linking a shared library.-	    #-	    # There doesn't appear to be a way to prevent this compiler from-	    # explicitly linking system object files so we need to strip them-	    # from the output so that they don't get included in the library-	    # dependencies.-	    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'-	    ;;-	  xl* | mpixl* | bgxl*)-	    # IBM XL 8.0 on PPC, with GNU ld-	    hardcode_libdir_flag_spec_CXX='$wl-rpath $wl$libdir'-	    export_dynamic_flag_spec_CXX='$wl--export-dynamic'-	    archive_cmds_CXX='$CC -qmkshrobj $libobjs $deplibs $compiler_flags $wl-soname $wl$soname -o $lib'-	    if test yes = "$supports_anon_versioning"; then-	      archive_expsym_cmds_CXX='echo "{ global:" > $output_objdir/$libname.ver~-                cat $export_symbols | $SED -e "s/\(.*\)/\1;/" >> $output_objdir/$libname.ver~-                echo "local: *; };" >> $output_objdir/$libname.ver~-                $CC -qmkshrobj $libobjs $deplibs $compiler_flags $wl-soname $wl$soname $wl-version-script $wl$output_objdir/$libname.ver -o $lib'-	    fi-	    ;;-	  *)-	    case `$CC -V 2>&1 | $SED 5q` in-	    *Sun\ C*)-	      # Sun C++ 5.9-	      no_undefined_flag_CXX=' -zdefs'-	      archive_cmds_CXX='$CC -G$allow_undefined_flag -h$soname -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags'-	      archive_expsym_cmds_CXX='$CC -G$allow_undefined_flag -h$soname -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags $wl-retain-symbols-file $wl$export_symbols'-	      hardcode_libdir_flag_spec_CXX='-R$libdir'-	      whole_archive_flag_spec_CXX='$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'-	      compiler_needs_object_CXX=yes--	      # Not sure whether something based on-	      # $CC $CFLAGS -v conftest.$objext -o libconftest$shared_ext 2>&1-	      # would be better.-	      output_verbose_link_cmd='func_echo_all'--	      # Archives containing C++ object files must be created using-	      # "CC -xar", where "CC" is the Sun C++ compiler.  This is-	      # necessary to make sure instantiated templates are included-	      # in the archive.-	      old_archive_cmds_CXX='$CC -xar -o $oldlib $oldobjs'-	      ;;-	    esac-	    ;;-	esac-	;;--      lynxos*)-        # FIXME: insert proper C++ library support-	ld_shlibs_CXX=no-	;;--      m88k*)-        # FIXME: insert proper C++ library support-        ld_shlibs_CXX=no-	;;--      mvs*)-        case $cc_basename in-          cxx*)-	    # FIXME: insert proper C++ library support-	    ld_shlibs_CXX=no-	    ;;-	  *)-	    # FIXME: insert proper C++ library support-	    ld_shlibs_CXX=no-	    ;;-	esac-	;;--      *-mlibc)-        ld_shlibs_CXX=yes-	;;--      netbsd*)-        if echo __ELF__ | $CC -E - | $GREP __ELF__ >/dev/null; then-	  archive_cmds_CXX='$LD -Bshareable  -o $lib $predep_objects $libobjs $deplibs $postdep_objects $linker_flags'-	  wlarc=-	  hardcode_libdir_flag_spec_CXX='-R$libdir'-	  hardcode_direct_CXX=yes-	  hardcode_shlibpath_var_CXX=no-	fi-	# Workaround some broken pre-1.5 toolchains-	output_verbose_link_cmd='$CC -shared $CFLAGS -v conftest.$objext 2>&1 | $GREP conftest.$objext | $SED -e "s:-lgcc -lc -lgcc::"'-	;;--      *nto* | *qnx*)-        ld_shlibs_CXX=yes-	;;--      openbsd*)-	if test -f /usr/libexec/ld.so; then-	  hardcode_direct_CXX=yes-	  hardcode_shlibpath_var_CXX=no-	  hardcode_direct_absolute_CXX=yes-	  archive_cmds_CXX='$CC -shared $pic_flag $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags -o $lib'-	  hardcode_libdir_flag_spec_CXX='$wl-rpath,$libdir'-	  if test -z "`echo __ELF__ | $CC -E - | grep __ELF__`"; then-	    archive_expsym_cmds_CXX='$CC -shared $pic_flag $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags $wl-retain-symbols-file,$export_symbols -o $lib'-	    export_dynamic_flag_spec_CXX='$wl-E'-	    whole_archive_flag_spec_CXX=$wlarc'--whole-archive$convenience '$wlarc'--no-whole-archive'-	  fi-	  output_verbose_link_cmd=func_echo_all-	else-	  ld_shlibs_CXX=no-	fi-	;;--      osf3* | osf4* | osf5*)-        case $cc_basename in-          KCC*)-	    # Kuck and Associates, Inc. (KAI) C++ Compiler--	    # KCC will only create a shared library if the output file-	    # ends with ".so" (or ".sl" for HP-UX), so rename the library-	    # to its proper name (with version) after linking.-	    archive_cmds_CXX='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'--	    hardcode_libdir_flag_spec_CXX='$wl-rpath,$libdir'-	    hardcode_libdir_separator_CXX=:--	    # Archives containing C++ object files must be created using-	    # the KAI C++ compiler.-	    case $host in-	      osf3*) old_archive_cmds_CXX='$CC -Bstatic -o $oldlib $oldobjs' ;;-	      *) old_archive_cmds_CXX='$CC -o $oldlib $oldobjs' ;;-	    esac-	    ;;-          RCC*)-	    # Rational C++ 2.4.1-	    # FIXME: insert proper C++ library support-	    ld_shlibs_CXX=no-	    ;;-          cxx*)-	    case $host in-	      osf3*)-	        allow_undefined_flag_CXX=' $wl-expect_unresolved $wl\*'-	        archive_cmds_CXX='$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'-	        hardcode_libdir_flag_spec_CXX='$wl-rpath $wl$libdir'-		;;-	      *)-	        allow_undefined_flag_CXX=' -expect_unresolved \*'-	        archive_cmds_CXX='$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'-	        archive_expsym_cmds_CXX='for i in `cat $export_symbols`; do printf "%s %s\\n" -exported_symbol "\$i" >> $lib.exp; done~-                  echo "-hidden">> $lib.exp~-                  $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~-                  $RM $lib.exp'-	        hardcode_libdir_flag_spec_CXX='-rpath $libdir'-		;;-	    esac--	    hardcode_libdir_separator_CXX=:--	    # Commands to make compiler produce verbose output that lists-	    # what "hidden" libraries, object files and flags are used when-	    # linking a shared library.-	    #-	    # There doesn't appear to be a way to prevent this compiler from-	    # explicitly linking system object files so we need to strip them-	    # from the output so that they don't get included in the library-	    # dependencies.-	    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"'-	    ;;-	  *)-	    if test yes,no = "$GXX,$with_gnu_ld"; then-	      allow_undefined_flag_CXX=' $wl-expect_unresolved $wl\*'-	      case $host in-	        osf3*)-	          archive_cmds_CXX='$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'-		  ;;-	        *)-	          archive_cmds_CXX='$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'-		  ;;-	      esac--	      hardcode_libdir_flag_spec_CXX='$wl-rpath $wl$libdir'-	      hardcode_libdir_separator_CXX=:--	      # Commands to make compiler produce verbose output that lists-	      # what "hidden" libraries, object files and flags are used when-	      # linking a shared library.-	      output_verbose_link_cmd='$CC -shared $CFLAGS -v conftest.$objext 2>&1 | $GREP -v "^Configured with:" | $GREP " [-]L"'--	    else-	      # FIXME: insert proper C++ library support-	      ld_shlibs_CXX=no-	    fi-	    ;;-        esac-        ;;--      psos*)-        # FIXME: insert proper C++ library support-        ld_shlibs_CXX=no-        ;;--      serenity*)-        ;;--      sunos4*)-        case $cc_basename in-          CC*)-	    # Sun C++ 4.x-	    # FIXME: insert proper C++ library support-	    ld_shlibs_CXX=no-	    ;;-          lcc*)-	    # Lucid-	    # FIXME: insert proper C++ library support-	    ld_shlibs_CXX=no-	    ;;-          *)-	    # FIXME: insert proper C++ library support-	    ld_shlibs_CXX=no-	    ;;-        esac-        ;;--      solaris*)-        case $cc_basename in-          CC* | sunCC*)-	    # Sun C++ 4.2, 5.x and Centerline C++-            archive_cmds_need_lc_CXX=yes-	    no_undefined_flag_CXX=' -zdefs'-	    archive_cmds_CXX='$CC -G$allow_undefined_flag -h$soname -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags'-	    archive_expsym_cmds_CXX='echo "{ global:" > $lib.exp~cat $export_symbols | $SED -e "s/\(.*\)/\1;/" >> $lib.exp~echo "local: *; };" >> $lib.exp~-              $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'--	    hardcode_libdir_flag_spec_CXX='-R$libdir'-	    hardcode_shlibpath_var_CXX=no-	    case $host_os in-	      solaris2.[0-5] | solaris2.[0-5].*) ;;-	      *)-		# The compiler driver will combine and reorder linker options,-		# but understands '-z linker_flag'.-	        # Supported since Solaris 2.6 (maybe 2.5.1?)-		whole_archive_flag_spec_CXX='-z allextract$convenience -z defaultextract'-	        ;;-	    esac-	    link_all_deplibs_CXX=yes--	    output_verbose_link_cmd='func_echo_all'--	    # Archives containing C++ object files must be created using-	    # "CC -xar", where "CC" is the Sun C++ compiler.  This is-	    # necessary to make sure instantiated templates are included-	    # in the archive.-	    old_archive_cmds_CXX='$CC -xar -o $oldlib $oldobjs'-	    ;;-          gcx*)-	    # Green Hills C++ Compiler-	    archive_cmds_CXX='$CC -shared $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags $wl-h $wl$soname -o $lib'--	    # The C++ compiler must be used to create the archive.-	    old_archive_cmds_CXX='$CC $LDFLAGS -archive -o $oldlib $oldobjs'-	    ;;-          *)-	    # GNU C++ compiler with Solaris linker-	    if test yes,no = "$GXX,$with_gnu_ld"; then-	      no_undefined_flag_CXX=' $wl-z ${wl}defs'-	      if $CC --version | $GREP -v '^2\.7' > /dev/null; then-	        archive_cmds_CXX='$CC -shared $pic_flag -nostdlib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags $wl-h $wl$soname -o $lib'-	        archive_expsym_cmds_CXX='echo "{ global:" > $lib.exp~cat $export_symbols | $SED -e "s/\(.*\)/\1;/" >> $lib.exp~echo "local: *; };" >> $lib.exp~-                  $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'--	        # Commands to make compiler produce verbose output that lists-	        # what "hidden" libraries, object files and flags are used when-	        # linking a shared library.-	        output_verbose_link_cmd='$CC -shared $CFLAGS -v conftest.$objext 2>&1 | $GREP -v "^Configured with:" | $GREP " [-]L"'-	      else-	        # g++ 2.7 appears to require '-G' NOT '-shared' on this-	        # platform.-	        archive_cmds_CXX='$CC -G -nostdlib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags $wl-h $wl$soname -o $lib'-	        archive_expsym_cmds_CXX='echo "{ global:" > $lib.exp~cat $export_symbols | $SED -e "s/\(.*\)/\1;/" >> $lib.exp~echo "local: *; };" >> $lib.exp~-                  $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'--	        # Commands to make compiler produce verbose output that lists-	        # what "hidden" libraries, object files and flags are used when-	        # linking a shared library.-	        output_verbose_link_cmd='$CC -G $CFLAGS -v conftest.$objext 2>&1 | $GREP -v "^Configured with:" | $GREP " [-]L"'-	      fi--	      hardcode_libdir_flag_spec_CXX='$wl-R $wl$libdir'-	      case $host_os in-		solaris2.[0-5] | solaris2.[0-5].*) ;;-		*)-		  whole_archive_flag_spec_CXX='$wl-z ${wl}allextract$convenience $wl-z ${wl}defaultextract'-		  ;;-	      esac-	    fi-	    ;;-        esac-        ;;--    sysv4*uw2* | sysv5OpenUNIX* | sysv5UnixWare7.[01].[10]* | unixware7* | sco3.2v5.0.[024]*)-      no_undefined_flag_CXX='$wl-z,text'-      archive_cmds_need_lc_CXX=no-      hardcode_shlibpath_var_CXX=no-      runpath_var='LD_RUN_PATH'--      case $cc_basename in-        CC*)-	  archive_cmds_CXX='$CC -G $wl-h,$soname -o $lib $libobjs $deplibs $compiler_flags'-	  archive_expsym_cmds_CXX='$CC -G $wl-Bexport:$export_symbols $wl-h,$soname -o $lib $libobjs $deplibs $compiler_flags'-	  ;;-	*)-	  archive_cmds_CXX='$CC -shared $wl-h,$soname -o $lib $libobjs $deplibs $compiler_flags'-	  archive_expsym_cmds_CXX='$CC -shared $wl-Bexport:$export_symbols $wl-h,$soname -o $lib $libobjs $deplibs $compiler_flags'-	  ;;-      esac-      ;;--      sysv5* | sco3.2v5* | sco5v6*)-	# Note: We CANNOT use -z defs as we might desire, because we do not-	# link with -lc, and that would cause any symbols used from libc to-	# always be unresolved, which means just about no library would-	# ever link correctly.  If we're not using GNU ld we use -z text-	# though, which does catch some bad symbols but isn't as heavy-handed-	# as -z defs.-	no_undefined_flag_CXX='$wl-z,text'-	allow_undefined_flag_CXX='$wl-z,nodefs'-	archive_cmds_need_lc_CXX=no-	hardcode_shlibpath_var_CXX=no-	hardcode_libdir_flag_spec_CXX='$wl-R,$libdir'-	hardcode_libdir_separator_CXX=':'-	link_all_deplibs_CXX=yes-	export_dynamic_flag_spec_CXX='$wl-Bexport'-	runpath_var='LD_RUN_PATH'--	case $cc_basename in-          CC*)-	    archive_cmds_CXX='$CC -G $wl-h,$soname -o $lib $libobjs $deplibs $compiler_flags'-	    archive_expsym_cmds_CXX='$CC -G $wl-Bexport:$export_symbols $wl-h,$soname -o $lib $libobjs $deplibs $compiler_flags'-	    old_archive_cmds_CXX='$CC -Tprelink_objects $oldobjs~-              '"$old_archive_cmds_CXX"-	    reload_cmds_CXX='$CC -Tprelink_objects $reload_objs~-              '"$reload_cmds_CXX"-	    ;;-	  *)-	    archive_cmds_CXX='$CC -shared $wl-h,$soname -o $lib $libobjs $deplibs $compiler_flags'-	    archive_expsym_cmds_CXX='$CC -shared $wl-Bexport:$export_symbols $wl-h,$soname -o $lib $libobjs $deplibs $compiler_flags'-	    ;;-	esac-      ;;--      tandem*)-        case $cc_basename in-          NCC*)-	    # NonStop-UX NCC 3.20-	    # FIXME: insert proper C++ library support-	    ld_shlibs_CXX=no-	    ;;-          *)-	    # FIXME: insert proper C++ library support-	    ld_shlibs_CXX=no-	    ;;-        esac-        ;;--      vxworks*)-        # FIXME: insert proper C++ library support-        ld_shlibs_CXX=no-        ;;--      *)-        # FIXME: insert proper C++ library support-        ld_shlibs_CXX=no-        ;;-    esac--    { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ld_shlibs_CXX" >&5-printf "%s\n" "$ld_shlibs_CXX" >&6; }-    test no = "$ld_shlibs_CXX" && can_build_shared=no--    GCC_CXX=$GXX-    LD_CXX=$LD--    ## CAVEAT EMPTOR:-    ## There is no encapsulation within the following macros, do not change-    ## the running order or otherwise move them around unless you know exactly-    ## what you are doing...-    # Dependencies to place before and after the object being linked:-predep_objects_CXX=-postdep_objects_CXX=-predeps_CXX=-postdeps_CXX=-compiler_lib_search_path_CXX=--cat > conftest.$ac_ext <<_LT_EOF-class Foo-{-public:-  Foo (void) { a = 0; }-private:-  int a;-};-_LT_EOF---_lt_libdeps_save_CFLAGS=$CFLAGS-case "$CC $CFLAGS " in #(-*\ -flto*\ *) CFLAGS="$CFLAGS -fno-lto" ;;-*\ -fwhopr*\ *) CFLAGS="$CFLAGS -fno-whopr" ;;-*\ -fuse-linker-plugin*\ *) CFLAGS="$CFLAGS -fno-use-linker-plugin" ;;-esac--if { { eval echo "\"\$as_me\":${as_lineno-$LINENO}: \"$ac_compile\""; } >&5-  (eval $ac_compile) 2>&5-  ac_status=$?-  printf "%s\n" "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5-  test $ac_status = 0; }; then-  # Parse the compiler output and extract the necessary-  # objects, libraries and library flags.--  # Sentinel used to keep track of whether or not we are before-  # the conftest object file.-  pre_test_object_deps_done=no--  for p in `eval "$output_verbose_link_cmd"`; do-    case $prev$p in--    -L* | -R* | -l*)-       # Some compilers place space between "-{L,R,l}" and the path.-       # Remove the space.-       if test x-L = x"$p" ||-          test x-R = x"$p" ||-          test x-l = x"$p"; then-	 prev=$p-	 continue-       fi--       # Expand the sysroot to ease extracting the directories later.-       if test -z "$prev"; then-         case $p in-         -L*) func_stripname_cnf '-L' '' "$p"; prev=-L; p=$func_stripname_result ;;-         -R*) func_stripname_cnf '-R' '' "$p"; prev=-R; p=$func_stripname_result ;;-         -l*) func_stripname_cnf '-l' '' "$p"; prev=-l; p=$func_stripname_result ;;-         esac-       fi-       case $p in-       =*) func_stripname_cnf '=' '' "$p"; p=$lt_sysroot$func_stripname_result ;;-       esac-       if test no = "$pre_test_object_deps_done"; then-	 case $prev in-	 -L | -R)-	   # Internal compiler library paths should come after those-	   # provided the user.  The postdeps already come after the-	   # user supplied libs so there is no need to process them.-	   if test -z "$compiler_lib_search_path_CXX"; then-	     compiler_lib_search_path_CXX=$prev$p-	   else-	     compiler_lib_search_path_CXX="${compiler_lib_search_path_CXX} $prev$p"-	   fi-	   ;;-	 # The "-l" case would never come before the object being-	 # linked, so don't bother handling this case.-	 esac-       else-	 if test -z "$postdeps_CXX"; then-	   postdeps_CXX=$prev$p-	 else-	   postdeps_CXX="${postdeps_CXX} $prev$p"-	 fi-       fi-       prev=-       ;;--    *.lto.$objext) ;; # Ignore GCC LTO objects-    *.$objext)-       # This assumes that the test object file only shows up-       # once in the compiler output.-       if test "$p" = "conftest.$objext"; then-	 pre_test_object_deps_done=yes-	 continue-       fi--       if test no = "$pre_test_object_deps_done"; then-	 if test -z "$predep_objects_CXX"; then-	   predep_objects_CXX=$p-	 else-	   predep_objects_CXX="$predep_objects_CXX $p"-	 fi-       else-	 if test -z "$postdep_objects_CXX"; then-	   postdep_objects_CXX=$p-	 else-	   postdep_objects_CXX="$postdep_objects_CXX $p"-	 fi-       fi-       ;;--    *) ;; # Ignore the rest.--    esac-  done--  # Clean up.-  rm -f a.out a.exe-else-  echo "libtool.m4: error: problem compiling CXX test program"-fi--$RM -f confest.$objext-CFLAGS=$_lt_libdeps_save_CFLAGS--# PORTME: override above test on systems where it is broken-case $host_os in-interix[3-9]*)-  # Interix 3.5 installs completely hosed .la files for C++, so rather than-  # hack all around it, let's just trust "g++" to DTRT.-  predep_objects_CXX=-  postdep_objects_CXX=-  postdeps_CXX=-  ;;-esac---case " $postdeps_CXX " in-*" -lc "*) archive_cmds_need_lc_CXX=no ;;-esac- compiler_lib_search_dirs_CXX=-if test -n "${compiler_lib_search_path_CXX}"; then- compiler_lib_search_dirs_CXX=`echo " ${compiler_lib_search_path_CXX}" | $SED -e 's! -L! !g' -e 's!^ !!'`-fi--------------------------------    lt_prog_compiler_wl_CXX=-lt_prog_compiler_pic_CXX=-lt_prog_compiler_static_CXX=---  # C++ specific cases for pic, static, wl, etc.-  if test yes = "$GXX"; then-    lt_prog_compiler_wl_CXX='-Wl,'-    lt_prog_compiler_static_CXX='-static'--    case $host_os in-    aix*)-      # All AIX code is PIC.-      if test ia64 = "$host_cpu"; then-	# AIX 5 now supports IA64 processor-	lt_prog_compiler_static_CXX='-Bstatic'-      fi-      lt_prog_compiler_pic_CXX='-fPIC'-      ;;--    amigaos*)-      case $host_cpu in-      powerpc)-            # see comment about AmigaOS4 .so support-            lt_prog_compiler_pic_CXX='-fPIC'-        ;;-      m68k)-            # FIXME: we need at least 68020 code to build shared libraries, but-            # adding the '-m68020' flag to GCC prevents building anything better,-            # like '-m68040'.-            lt_prog_compiler_pic_CXX='-m68020 -resident32 -malways-restore-a4'-        ;;-      esac-      ;;--    beos* | irix5* | irix6* | nonstopux* | osf3* | osf4* | osf5*)-      # PIC is the default for these OSes.-      ;;-    mingw* | windows* | cygwin* | os2* | pw32* | cegcc*)-      # This hack is so that the source file can tell whether it is being-      # built for inclusion in a dll (and should export symbols for example).-      # Although the cygwin gcc ignores -fPIC, still need this for old-style-      # (--disable-auto-import) libraries-      lt_prog_compiler_pic_CXX='-DDLL_EXPORT'-      case $host_os in-      os2*)-	lt_prog_compiler_static_CXX='$wl-static'-	;;-      esac-      ;;-    darwin* | rhapsody*)-      # PIC is the default on this platform-      # Common symbols not allowed in MH_DYLIB files-      lt_prog_compiler_pic_CXX='-fno-common'-      ;;-    *djgpp*)-      # DJGPP does not support shared libraries at all-      lt_prog_compiler_pic_CXX=-      ;;-    haiku*)-      # PIC is the default for Haiku.-      # The "-static" flag exists, but is broken.-      lt_prog_compiler_static_CXX=-      ;;-    interix[3-9]*)-      # Interix 3.x gcc -fpic/-fPIC options generate broken code.-      # Instead, we relocate shared libraries at runtime.-      ;;-    sysv4*MP*)-      if test -d /usr/nec; then-	lt_prog_compiler_pic_CXX=-Kconform_pic-      fi-      ;;-    hpux*)-      # PIC is the default for 64-bit PA HP-UX, but not for 32-bit-      # PA HP-UX.  On IA64 HP-UX, PIC is the default but the pic flag-      # sets the default TLS model and affects inlining.-      case $host_cpu in-      hppa*64*)-	;;-      *)-	lt_prog_compiler_pic_CXX='-fPIC'-	;;-      esac-      ;;-    *qnx* | *nto*)-      # QNX uses GNU C++, but need to define -shared option too, otherwise-      # it will coredump.-      lt_prog_compiler_pic_CXX='-fPIC -shared'-      ;;-    *)-      lt_prog_compiler_pic_CXX='-fPIC'-      ;;-    esac-  else-    case $host_os in-      aix[4-9]*)-	# All AIX code is PIC.-	if test ia64 = "$host_cpu"; then-	  # AIX 5 now supports IA64 processor-	  lt_prog_compiler_static_CXX='-Bstatic'-	else-	  lt_prog_compiler_static_CXX='-bnso -bI:/lib/syscalls.exp'-	fi-	;;-      chorus*)-	case $cc_basename in-	cxch68*)-	  # Green Hills C++ Compiler-	  # _LT_TAGVAR(lt_prog_compiler_static, CXX)="--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"-	  ;;-	esac-	;;-      mingw* | windows* | cygwin* | os2* | pw32* | cegcc*)-	# This hack is so that the source file can tell whether it is being-	# built for inclusion in a dll (and should export symbols for example).-	lt_prog_compiler_pic_CXX='-DDLL_EXPORT'-	;;-      dgux*)-	case $cc_basename in-	  ec++*)-	    lt_prog_compiler_pic_CXX='-KPIC'-	    ;;-	  ghcx*)-	    # Green Hills C++ Compiler-	    lt_prog_compiler_pic_CXX='-pic'-	    ;;-	  *)-	    ;;-	esac-	;;-      freebsd* | dragonfly* | midnightbsd*)-	# FreeBSD uses GNU C++-	;;-      hpux9* | hpux10* | hpux11*)-	case $cc_basename in-	  CC*)-	    lt_prog_compiler_wl_CXX='-Wl,'-	    lt_prog_compiler_static_CXX='$wl-a ${wl}archive'-	    if test ia64 != "$host_cpu"; then-	      lt_prog_compiler_pic_CXX='+Z'-	    fi-	    ;;-	  aCC*)-	    lt_prog_compiler_wl_CXX='-Wl,'-	    lt_prog_compiler_static_CXX='$wl-a ${wl}archive'-	    case $host_cpu in-	    hppa*64*|ia64*)-	      # +Z the default-	      ;;-	    *)-	      lt_prog_compiler_pic_CXX='+Z'-	      ;;-	    esac-	    ;;-	  *)-	    ;;-	esac-	;;-      interix*)-	# This is c89, which is MS Visual C++ (no shared libs)-	# Anyone wants to do a port?-	;;-      irix5* | irix6* | nonstopux*)-	case $cc_basename in-	  CC*)-	    lt_prog_compiler_wl_CXX='-Wl,'-	    lt_prog_compiler_static_CXX='-non_shared'-	    # CC pic flag -KPIC is the default.-	    ;;-	  *)-	    ;;-	esac-	;;-      linux* | k*bsd*-gnu | kopensolaris*-gnu | gnu*)-	case $cc_basename in-	  KCC*)-	    # KAI C++ Compiler-	    lt_prog_compiler_wl_CXX='--backend -Wl,'-	    lt_prog_compiler_pic_CXX='-fPIC'-	    ;;-	  ecpc* )-	    # old Intel C++ for x86_64, which still supported -KPIC.-	    lt_prog_compiler_wl_CXX='-Wl,'-	    lt_prog_compiler_pic_CXX='-KPIC'-	    lt_prog_compiler_static_CXX='-static'-	    ;;-	  icpc* )-	    # Intel C++, used to be incompatible with GCC.-	    # ICC 10 doesn't accept -KPIC any more.-	    lt_prog_compiler_wl_CXX='-Wl,'-	    lt_prog_compiler_pic_CXX='-fPIC'-	    lt_prog_compiler_static_CXX='-static'-	    ;;-	  pgCC* | pgcpp*)-	    # Portland Group C++ compiler-	    lt_prog_compiler_wl_CXX='-Wl,'-	    lt_prog_compiler_pic_CXX='-fpic'-	    lt_prog_compiler_static_CXX='-Bstatic'-	    ;;-	  cxx*)-	    # Compaq C++-	    # Make sure the PIC flag is empty.  It appears that all Alpha-	    # Linux and Compaq Tru64 Unix objects are PIC.-	    lt_prog_compiler_pic_CXX=-	    lt_prog_compiler_static_CXX='-non_shared'-	    ;;-	  xlc* | xlC* | bgxl[cC]* | mpixl[cC]*)-	    # IBM XL 8.0, 9.0 on PPC and BlueGene-	    lt_prog_compiler_wl_CXX='-Wl,'-	    lt_prog_compiler_pic_CXX='-qpic'-	    lt_prog_compiler_static_CXX='-qstaticlink'-	    ;;-	  *)-	    case `$CC -V 2>&1 | $SED 5q` in-	    *Sun\ C*)-	      # Sun C++ 5.9-	      lt_prog_compiler_pic_CXX='-KPIC'-	      lt_prog_compiler_static_CXX='-Bstatic'-	      lt_prog_compiler_wl_CXX='-Qoption ld '-	      ;;-	    esac-	    ;;-	esac-	;;-      lynxos*)-	;;-      m88k*)-	;;-      mvs*)-	case $cc_basename in-	  cxx*)-	    lt_prog_compiler_pic_CXX='-W c,exportall'-	    ;;-	  *)-	    ;;-	esac-	;;-      netbsd* | netbsdelf*-gnu)-	;;-      *-mlibc)-	;;-      *qnx* | *nto*)-        # QNX uses GNU C++, but need to define -shared option too, otherwise-        # it will coredump.-        lt_prog_compiler_pic_CXX='-fPIC -shared'-        ;;-      osf3* | osf4* | osf5*)-	case $cc_basename in-	  KCC*)-	    lt_prog_compiler_wl_CXX='--backend -Wl,'-	    ;;-	  RCC*)-	    # Rational C++ 2.4.1-	    lt_prog_compiler_pic_CXX='-pic'-	    ;;-	  cxx*)-	    # Digital/Compaq C++-	    lt_prog_compiler_wl_CXX='-Wl,'-	    # Make sure the PIC flag is empty.  It appears that all Alpha-	    # Linux and Compaq Tru64 Unix objects are PIC.-	    lt_prog_compiler_pic_CXX=-	    lt_prog_compiler_static_CXX='-non_shared'-	    ;;-	  *)-	    ;;-	esac-	;;-      psos*)-	;;-      serenity*)-        ;;-      solaris*)-	case $cc_basename in-	  CC* | sunCC*)-	    # Sun C++ 4.2, 5.x and Centerline C++-	    lt_prog_compiler_pic_CXX='-KPIC'-	    lt_prog_compiler_static_CXX='-Bstatic'-	    lt_prog_compiler_wl_CXX='-Qoption ld '-	    ;;-	  gcx*)-	    # Green Hills C++ Compiler-	    lt_prog_compiler_pic_CXX='-PIC'-	    ;;-	  *)-	    ;;-	esac-	;;-      sunos4*)-	case $cc_basename in-	  CC*)-	    # Sun C++ 4.x-	    lt_prog_compiler_pic_CXX='-pic'-	    lt_prog_compiler_static_CXX='-Bstatic'-	    ;;-	  lcc*)-	    # Lucid-	    lt_prog_compiler_pic_CXX='-pic'-	    ;;-	  *)-	    ;;-	esac-	;;-      sysv5* | unixware* | sco3.2v5* | sco5v6* | OpenUNIX*)-	case $cc_basename in-	  CC*)-	    lt_prog_compiler_wl_CXX='-Wl,'-	    lt_prog_compiler_pic_CXX='-KPIC'-	    lt_prog_compiler_static_CXX='-Bstatic'-	    ;;-	esac-	;;-      tandem*)-	case $cc_basename in-	  NCC*)-	    # NonStop-UX NCC 3.20-	    lt_prog_compiler_pic_CXX='-KPIC'-	    ;;-	  *)-	    ;;-	esac-	;;-      vxworks*)-	;;-      *)-	lt_prog_compiler_can_build_shared_CXX=no-	;;-    esac-  fi--case $host_os in-  # For platforms that do not support PIC, -DPIC is meaningless:-  *djgpp*)-    lt_prog_compiler_pic_CXX=-    ;;-  *)-    lt_prog_compiler_pic_CXX="$lt_prog_compiler_pic_CXX -DPIC"-    ;;-esac--{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for $compiler option to produce PIC" >&5-printf %s "checking for $compiler option to produce PIC... " >&6; }-if test ${lt_cv_prog_compiler_pic_CXX+y}-then :-  printf %s "(cached) " >&6-else case e in #(-  e) lt_cv_prog_compiler_pic_CXX=$lt_prog_compiler_pic_CXX ;;-esac-fi-{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $lt_cv_prog_compiler_pic_CXX" >&5-printf "%s\n" "$lt_cv_prog_compiler_pic_CXX" >&6; }-lt_prog_compiler_pic_CXX=$lt_cv_prog_compiler_pic_CXX--#-# Check to make sure the PIC flag actually works.-#-if test -n "$lt_prog_compiler_pic_CXX"; then-  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking if $compiler PIC flag $lt_prog_compiler_pic_CXX works" >&5-printf %s "checking if $compiler PIC flag $lt_prog_compiler_pic_CXX works... " >&6; }-if test ${lt_cv_prog_compiler_pic_works_CXX+y}-then :-  printf %s "(cached) " >&6-else case e in #(-  e) lt_cv_prog_compiler_pic_works_CXX=no-   ac_outfile=conftest.$ac_objext-   echo "$lt_simple_compile_test_code" > conftest.$ac_ext-   lt_compiler_flag="$lt_prog_compiler_pic_CXX -DPIC"  ## exclude from sc_useless_quotes_in_assignment-   # Insert the option either (1) after the last *FLAGS variable, or-   # (2) before a word containing "conftest.", or (3) at the end.-   # Note that $ac_compile itself does not contain backslashes and begins-   # with a dollar sign (not a hyphen), so the echo should work correctly.-   # The option is referenced via a variable to avoid confusing sed.-   lt_compile=`echo "$ac_compile" | $SED \-   -e 's:.*FLAGS}\{0,1\} :&$lt_compiler_flag :; t' \-   -e 's: [^ ]*conftest\.: $lt_compiler_flag&:; t' \-   -e 's:$: $lt_compiler_flag:'`-   (eval echo "\"\$as_me:$LINENO: $lt_compile\"" >&5)-   (eval "$lt_compile" 2>conftest.err)-   ac_status=$?-   cat conftest.err >&5-   echo "$as_me:$LINENO: \$? = $ac_status" >&5-   if (exit $ac_status) && test -s "$ac_outfile"; then-     # The compiler can only warn and ignore the option if not recognized-     # So say no if there are warnings other than the usual output.-     $ECHO "$_lt_compiler_boilerplate" | $SED '/^$/d' >conftest.exp-     $SED '/^$/d; /^ *+/d' conftest.err >conftest.er2-     if test ! -s conftest.er2 || diff conftest.exp conftest.er2 >/dev/null; then-       lt_cv_prog_compiler_pic_works_CXX=yes-     fi-   fi-   $RM conftest*- ;;-esac-fi-{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $lt_cv_prog_compiler_pic_works_CXX" >&5-printf "%s\n" "$lt_cv_prog_compiler_pic_works_CXX" >&6; }--if test yes = "$lt_cv_prog_compiler_pic_works_CXX"; then-    case $lt_prog_compiler_pic_CXX in-     "" | " "*) ;;-     *) lt_prog_compiler_pic_CXX=" $lt_prog_compiler_pic_CXX" ;;-     esac-else-    lt_prog_compiler_pic_CXX=-     lt_prog_compiler_can_build_shared_CXX=no-fi--fi------#-# Check to make sure the static flag actually works.-#-wl=$lt_prog_compiler_wl_CXX eval lt_tmp_static_flag=\"$lt_prog_compiler_static_CXX\"-{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking if $compiler static flag $lt_tmp_static_flag works" >&5-printf %s "checking if $compiler static flag $lt_tmp_static_flag works... " >&6; }-if test ${lt_cv_prog_compiler_static_works_CXX+y}-then :-  printf %s "(cached) " >&6-else case e in #(-  e) lt_cv_prog_compiler_static_works_CXX=no-   save_LDFLAGS=$LDFLAGS-   LDFLAGS="$LDFLAGS $lt_tmp_static_flag"-   echo "$lt_simple_link_test_code" > conftest.$ac_ext-   if (eval $ac_link 2>conftest.err) && test -s conftest$ac_exeext; then-     # The linker can only warn and ignore the option if not recognized-     # So say no if there are warnings-     if test -s conftest.err; then-       # Append any errors to the config.log.-       cat conftest.err 1>&5-       $ECHO "$_lt_linker_boilerplate" | $SED '/^$/d' > conftest.exp-       $SED '/^$/d; /^ *+/d' conftest.err >conftest.er2-       if diff conftest.exp conftest.er2 >/dev/null; then-         lt_cv_prog_compiler_static_works_CXX=yes-       fi-     else-       lt_cv_prog_compiler_static_works_CXX=yes-     fi-   fi-   $RM -r conftest*-   LDFLAGS=$save_LDFLAGS- ;;-esac-fi-{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $lt_cv_prog_compiler_static_works_CXX" >&5-printf "%s\n" "$lt_cv_prog_compiler_static_works_CXX" >&6; }--if test yes = "$lt_cv_prog_compiler_static_works_CXX"; then-    :-else-    lt_prog_compiler_static_CXX=-fi-----    { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking if $compiler supports -c -o file.$ac_objext" >&5-printf %s "checking if $compiler supports -c -o file.$ac_objext... " >&6; }-if test ${lt_cv_prog_compiler_c_o_CXX+y}-then :-  printf %s "(cached) " >&6-else case e in #(-  e) lt_cv_prog_compiler_c_o_CXX=no-   $RM -r conftest 2>/dev/null-   mkdir conftest-   cd conftest-   mkdir out-   echo "$lt_simple_compile_test_code" > conftest.$ac_ext--   lt_compiler_flag="-o out/conftest2.$ac_objext"-   # Insert the option either (1) after the last *FLAGS variable, or-   # (2) before a word containing "conftest.", or (3) at the end.-   # Note that $ac_compile itself does not contain backslashes and begins-   # with a dollar sign (not a hyphen), so the echo should work correctly.-   lt_compile=`echo "$ac_compile" | $SED \-   -e 's:.*FLAGS}\{0,1\} :&$lt_compiler_flag :; t' \-   -e 's: [^ ]*conftest\.: $lt_compiler_flag&:; t' \-   -e 's:$: $lt_compiler_flag:'`-   (eval echo "\"\$as_me:$LINENO: $lt_compile\"" >&5)-   (eval "$lt_compile" 2>out/conftest.err)-   ac_status=$?-   cat out/conftest.err >&5-   echo "$as_me:$LINENO: \$? = $ac_status" >&5-   if (exit $ac_status) && test -s out/conftest2.$ac_objext-   then-     # The compiler can only warn and ignore the option if not recognized-     # So say no if there are warnings-     $ECHO "$_lt_compiler_boilerplate" | $SED '/^$/d' > out/conftest.exp-     $SED '/^$/d; /^ *+/d' out/conftest.err >out/conftest.er2-     if test ! -s out/conftest.er2 || diff out/conftest.exp out/conftest.er2 >/dev/null; then-       lt_cv_prog_compiler_c_o_CXX=yes-     fi-   fi-   chmod u+w . 2>&5-   $RM conftest*-   # SGI C++ compiler will create directory out/ii_files/ for-   # template instantiation-   test -d out/ii_files && $RM out/ii_files/* && rmdir out/ii_files-   $RM out/* && rmdir out-   cd ..-   $RM -r conftest-   $RM conftest*- ;;-esac-fi-{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $lt_cv_prog_compiler_c_o_CXX" >&5-printf "%s\n" "$lt_cv_prog_compiler_c_o_CXX" >&6; }----    { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking if $compiler supports -c -o file.$ac_objext" >&5-printf %s "checking if $compiler supports -c -o file.$ac_objext... " >&6; }-if test ${lt_cv_prog_compiler_c_o_CXX+y}-then :-  printf %s "(cached) " >&6-else case e in #(-  e) lt_cv_prog_compiler_c_o_CXX=no-   $RM -r conftest 2>/dev/null-   mkdir conftest-   cd conftest-   mkdir out-   echo "$lt_simple_compile_test_code" > conftest.$ac_ext--   lt_compiler_flag="-o out/conftest2.$ac_objext"-   # Insert the option either (1) after the last *FLAGS variable, or-   # (2) before a word containing "conftest.", or (3) at the end.-   # Note that $ac_compile itself does not contain backslashes and begins-   # with a dollar sign (not a hyphen), so the echo should work correctly.-   lt_compile=`echo "$ac_compile" | $SED \-   -e 's:.*FLAGS}\{0,1\} :&$lt_compiler_flag :; t' \-   -e 's: [^ ]*conftest\.: $lt_compiler_flag&:; t' \-   -e 's:$: $lt_compiler_flag:'`-   (eval echo "\"\$as_me:$LINENO: $lt_compile\"" >&5)-   (eval "$lt_compile" 2>out/conftest.err)-   ac_status=$?-   cat out/conftest.err >&5-   echo "$as_me:$LINENO: \$? = $ac_status" >&5-   if (exit $ac_status) && test -s out/conftest2.$ac_objext-   then-     # The compiler can only warn and ignore the option if not recognized-     # So say no if there are warnings-     $ECHO "$_lt_compiler_boilerplate" | $SED '/^$/d' > out/conftest.exp-     $SED '/^$/d; /^ *+/d' out/conftest.err >out/conftest.er2-     if test ! -s out/conftest.er2 || diff out/conftest.exp out/conftest.er2 >/dev/null; then-       lt_cv_prog_compiler_c_o_CXX=yes-     fi-   fi-   chmod u+w . 2>&5-   $RM conftest*-   # SGI C++ compiler will create directory out/ii_files/ for-   # template instantiation-   test -d out/ii_files && $RM out/ii_files/* && rmdir out/ii_files-   $RM out/* && rmdir out-   cd ..-   $RM -r conftest-   $RM conftest*- ;;-esac-fi-{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $lt_cv_prog_compiler_c_o_CXX" >&5-printf "%s\n" "$lt_cv_prog_compiler_c_o_CXX" >&6; }-----hard_links=nottested-if test no = "$lt_cv_prog_compiler_c_o_CXX" && test no != "$need_locks"; then-  # do not overwrite the value of need_locks provided by the user-  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking if we can lock with hard links" >&5-printf %s "checking if we can lock with hard links... " >&6; }-  hard_links=yes-  $RM conftest*-  ln conftest.a conftest.b 2>/dev/null && hard_links=no-  touch conftest.a-  ln conftest.a conftest.b 2>&5 || hard_links=no-  ln conftest.a conftest.b 2>/dev/null && hard_links=no-  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $hard_links" >&5-printf "%s\n" "$hard_links" >&6; }-  if test no = "$hard_links"; then-    { printf "%s\n" "$as_me:${as_lineno-$LINENO}: WARNING: '$CC' does not support '-c -o', so 'make -j' may be unsafe" >&5-printf "%s\n" "$as_me: WARNING: '$CC' does not support '-c -o', so 'make -j' may be unsafe" >&2;}-    need_locks=warn-  fi-else-  need_locks=no-fi----    { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking whether the $compiler linker ($LD) supports shared libraries" >&5-printf %s "checking whether the $compiler linker ($LD) supports shared libraries... " >&6; }--  export_symbols_cmds_CXX='$NM $libobjs $convenience | $global_symbol_pipe | $SED '\''s/.* //'\'' | sort | uniq > $export_symbols'-  exclude_expsyms_CXX='_GLOBAL_OFFSET_TABLE_|_GLOBAL__F[ID]_.*'-  case $host_os in-  aix[4-9]*)-    # If we're using GNU nm, then we don't want the "-C" option.-    # -C means demangle to GNU nm, but means don't demangle to AIX nm.-    # Without the "-l" option, or with the "-B" option, AIX nm treats-    # weak defined symbols like other global defined symbols, whereas-    # GNU nm marks them as "W".-    # While the 'weak' keyword is ignored in the Export File, we need-    # it in the Import File for the 'aix-soname' feature, so we have-    # to replace the "-B" option with "-P" for AIX nm.-    if $NM -V 2>&1 | $GREP 'GNU' > /dev/null; then-      export_symbols_cmds_CXX='$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'-    else-      export_symbols_cmds_CXX='`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'-    fi-    ;;-  pw32*)-    export_symbols_cmds_CXX=$ltdll_cmds-    ;;-  cygwin* | mingw* | windows* | cegcc*)-    case $cc_basename in-    cl* | icl*)-      exclude_expsyms_CXX='_NULL_IMPORT_DESCRIPTOR|_IMPORT_DESCRIPTOR_.*'-      ;;-    *)-      export_symbols_cmds_CXX='$NM $libobjs $convenience | $global_symbol_pipe | $SED -e '\''/^[BCDGRS][ ]/s/.*[ ]\([^ ]*\)/\1 DATA/;s/^.*[ ]__nm__\([^ ]*\)[ ][^ ]*/\1 DATA/;/^I[ ]/d;/^[AITW][ ]/s/.* //'\'' | sort | uniq > $export_symbols'-      exclude_expsyms_CXX='[_]+GLOBAL_OFFSET_TABLE_|[_]+GLOBAL__[FID]_.*|[_]+head_[A-Za-z0-9_]+_dll|[A-Za-z0-9_]+_dll_iname'-      ;;-    esac-    ;;-  *)-    export_symbols_cmds_CXX='$NM $libobjs $convenience | $global_symbol_pipe | $SED '\''s/.* //'\'' | sort | uniq > $export_symbols'-    ;;-  esac--{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ld_shlibs_CXX" >&5-printf "%s\n" "$ld_shlibs_CXX" >&6; }-test no = "$ld_shlibs_CXX" && can_build_shared=no--with_gnu_ld_CXX=$with_gnu_ld-------#-# Do we need to explicitly link libc?-#-case "x$archive_cmds_need_lc_CXX" in-x|xyes)-  # Assume -lc should be added-  archive_cmds_need_lc_CXX=yes--  if test yes,yes = "$GCC,$enable_shared"; then-    case $archive_cmds_CXX in-    *'~'*)-      # FIXME: we may have to deal with multi-command sequences.-      ;;-    '$CC '*)-      # Test whether the compiler implicitly links with -lc since on some-      # systems, -lgcc has to come before -lc. If gcc already passes -lc-      # to ld, don't add -lc before -lgcc.-      { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking whether -lc should be explicitly linked in" >&5-printf %s "checking whether -lc should be explicitly linked in... " >&6; }-if test ${lt_cv_archive_cmds_need_lc_CXX+y}-then :-  printf %s "(cached) " >&6-else case e in #(-  e) $RM conftest*-	echo "$lt_simple_compile_test_code" > conftest.$ac_ext--	if { { eval echo "\"\$as_me\":${as_lineno-$LINENO}: \"$ac_compile\""; } >&5-  (eval $ac_compile) 2>&5-  ac_status=$?-  printf "%s\n" "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5-  test $ac_status = 0; } 2>conftest.err; then-	  soname=conftest-	  lib=conftest-	  libobjs=conftest.$ac_objext-	  deplibs=-	  wl=$lt_prog_compiler_wl_CXX-	  pic_flag=$lt_prog_compiler_pic_CXX-	  compiler_flags=-v-	  linker_flags=-v-	  verstring=-	  output_objdir=.-	  libname=conftest-	  lt_save_allow_undefined_flag=$allow_undefined_flag_CXX-	  allow_undefined_flag_CXX=-	  if { { eval echo "\"\$as_me\":${as_lineno-$LINENO}: \"$archive_cmds_CXX 2\>\&1 \| $GREP \" -lc \" \>/dev/null 2\>\&1\""; } >&5-  (eval $archive_cmds_CXX 2\>\&1 \| $GREP \" -lc \" \>/dev/null 2\>\&1) 2>&5-  ac_status=$?-  printf "%s\n" "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5-  test $ac_status = 0; }-	  then-	    lt_cv_archive_cmds_need_lc_CXX=no-	  else-	    lt_cv_archive_cmds_need_lc_CXX=yes-	  fi-	  allow_undefined_flag_CXX=$lt_save_allow_undefined_flag-	else-	  cat conftest.err 1>&5-	fi-	$RM conftest*-	 ;;-esac-fi-{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $lt_cv_archive_cmds_need_lc_CXX" >&5-printf "%s\n" "$lt_cv_archive_cmds_need_lc_CXX" >&6; }-      archive_cmds_need_lc_CXX=$lt_cv_archive_cmds_need_lc_CXX-      ;;-    esac-  fi-  ;;-esac---------------------------------------------------------------    { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking dynamic linker characteristics" >&5-printf %s "checking dynamic linker characteristics... " >&6; }--library_names_spec=-libname_spec='lib$name'-soname_spec=-shrext_cmds=.so-postinstall_cmds=-postuninstall_cmds=-finish_cmds=-finish_eval=-shlibpath_var=-shlibpath_overrides_runpath=unknown-version_type=none-dynamic_linker="$host_os ld.so"-sys_lib_dlsearch_path_spec="/lib /usr/lib"-need_lib_prefix=unknown-hardcode_into_libs=no--# when you set need_version to no, make sure it does not cause -set_version-# flags to be left without arguments-need_version=unknown----case $host_os in-aix3*)-  version_type=linux # correct to gnu/linux during the next big refactor-  library_names_spec='$libname$release$shared_ext$versuffix $libname.a'-  shlibpath_var=LIBPATH--  # AIX 3 has no versioning support, so we append a major version to the name.-  soname_spec='$libname$release$shared_ext$major'-  ;;--aix[4-9]*)-  version_type=linux # correct to gnu/linux during the next big refactor-  need_lib_prefix=no-  need_version=no-  hardcode_into_libs=yes-  if test ia64 = "$host_cpu"; then-    # AIX 5 supports IA64-    library_names_spec='$libname$release$shared_ext$major $libname$release$shared_ext$versuffix $libname$shared_ext'-    shlibpath_var=LD_LIBRARY_PATH-  else-    # With GCC up to 2.95.x, collect2 would create an import file-    # for dependence libraries.  The import file would start with-    # the line '#! .'.  This would cause the generated library to-    # depend on '.', always an invalid library.  This was fixed in-    # development snapshots of GCC prior to 3.0.-    case $host_os in-      aix4 | aix4.[01] | aix4.[01].*)-      if { echo '#if __GNUC__ > 2 || (__GNUC__ == 2 && __GNUC_MINOR__ >= 97)'-	   echo ' yes '-	   echo '#endif'; } | $CC -E - | $GREP yes > /dev/null; then-	:-      else-	can_build_shared=no-      fi-      ;;-    esac-    # Using Import Files as archive members, it is possible to support-    # filename-based versioning of shared library archives on AIX. While-    # this would work for both with and without runtime linking, it will-    # prevent static linking of such archives. So we do filename-based-    # shared library versioning with .so extension only, which is used-    # when both runtime linking and shared linking is enabled.-    # Unfortunately, runtime linking may impact performance, so we do-    # not want this to be the default eventually. Also, we use the-    # versioned .so libs for executables only if there is the -brtl-    # linker flag in LDFLAGS as well, or --enable-aix-soname=svr4 only.-    # To allow for filename-based versioning support, we need to create-    # libNAME.so.V as an archive file, containing:-    # *) an Import File, referring to the versioned filename of the-    #    archive as well as the shared archive member, telling the-    #    bitwidth (32 or 64) of that shared object, and providing the-    #    list of exported symbols of that shared object, eventually-    #    decorated with the 'weak' keyword-    # *) the shared object with the F_LOADONLY flag set, to really avoid-    #    it being seen by the linker.-    # At run time we better use the real file rather than another symlink,-    # but for link time we create the symlink libNAME.so -> libNAME.so.V--    case $with_aix_soname,$aix_use_runtimelinking in-    # AIX (on Power*) has no versioning support, so currently we cannot hardcode correct-    # soname into executable. Probably we can add versioning support to-    # collect2, so additional links can be useful in future.-    aix,yes) # traditional libtool-      dynamic_linker='AIX unversionable lib.so'-      # If using run time linking (on AIX 4.2 or later) use lib<name>.so-      # instead of lib<name>.a to let people know that these are not-      # typical AIX shared libraries.-      library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$shared_ext'-      ;;-    aix,no) # traditional AIX only-      dynamic_linker='AIX lib.a(lib.so.V)'-      # We preserve .a as extension for shared libraries through AIX4.2-      # and later when we are not doing run time linking.-      library_names_spec='$libname$release.a $libname.a'-      soname_spec='$libname$release$shared_ext$major'-      ;;-    svr4,*) # full svr4 only-      dynamic_linker="AIX lib.so.V($shared_archive_member_spec.o)"-      library_names_spec='$libname$release$shared_ext$major $libname$shared_ext'-      # We do not specify a path in Import Files, so LIBPATH fires.-      shlibpath_overrides_runpath=yes-      ;;-    *,yes) # both, prefer svr4-      dynamic_linker="AIX lib.so.V($shared_archive_member_spec.o), lib.a(lib.so.V)"-      library_names_spec='$libname$release$shared_ext$major $libname$shared_ext'-      # unpreferred sharedlib libNAME.a needs extra handling-      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"'-      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"'-      # We do not specify a path in Import Files, so LIBPATH fires.-      shlibpath_overrides_runpath=yes-      ;;-    *,no) # both, prefer aix-      dynamic_linker="AIX lib.a(lib.so.V), lib.so.V($shared_archive_member_spec.o)"-      library_names_spec='$libname$release.a $libname.a'-      soname_spec='$libname$release$shared_ext$major'-      # unpreferred sharedlib libNAME.so.V and symlink libNAME.so need extra handling-      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)'-      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"'-      ;;-    esac-    shlibpath_var=LIBPATH-  fi-  ;;--amigaos*)-  case $host_cpu in-  powerpc)-    # Since July 2007 AmigaOS4 officially supports .so libraries.-    # When compiling the executable, add -use-dynld -Lsobjs: to the compileline.-    library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$shared_ext'-    ;;-  m68k)-    library_names_spec='$libname.ixlibrary $libname.a'-    # Create ${libname}_ixlibrary.a entries in /sys/libs.-    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'-    ;;-  esac-  ;;--beos*)-  library_names_spec='$libname$shared_ext'-  dynamic_linker="$host_os ld.so"-  shlibpath_var=LIBRARY_PATH-  ;;--bsdi[45]*)-  version_type=linux # correct to gnu/linux during the next big refactor-  need_version=no-  library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$shared_ext'-  soname_spec='$libname$release$shared_ext$major'-  finish_cmds='PATH="\$PATH:/sbin" ldconfig $libdir'-  shlibpath_var=LD_LIBRARY_PATH-  sys_lib_search_path_spec="/shlib /usr/lib /usr/X11/lib /usr/contrib/lib /lib /usr/local/lib"-  sys_lib_dlsearch_path_spec="/shlib /usr/lib /usr/local/lib"-  # the default ld.so.conf also contains /usr/contrib/lib and-  # /usr/X11R6/lib (/usr/X11 is a link to /usr/X11R6), but let us allow-  # libtool to hard-code these into programs-  ;;--cygwin* | mingw* | windows* | pw32* | cegcc*)-  version_type=windows-  shrext_cmds=.dll-  need_version=no-  need_lib_prefix=no--  case $GCC,$cc_basename in-  yes,*)-    # gcc-    library_names_spec='$libname.dll.a'-    # DLL is installed to $(libdir)/../bin by postinstall_cmds-    # If user builds GCC with multilib enabled,-    # it should just install on $(libdir)-    # not on $(libdir)/../bin or 32 bits dlls would override 64 bit ones.-    if test xyes = x"$multilib"; then-      postinstall_cmds='base_file=`basename \$file`~-        dlpath=`$SHELL 2>&1 -c '\''. $dir/'\''\$base_file'\''i; echo \$dlname'\''`~-        dldir=$destdir/`dirname \$dlpath`~-        $install_prog $dir/$dlname $destdir/$dlname~-        chmod a+x $destdir/$dlname~-        if test -n '\''$stripme'\'' && test -n '\''$striplib'\''; then-          eval '\''$striplib $destdir/$dlname'\'' || exit \$?;-        fi'-    else-      postinstall_cmds='base_file=`basename \$file`~-        dlpath=`$SHELL 2>&1 -c '\''. $dir/'\''\$base_file'\''i; echo \$dlname'\''`~-        dldir=$destdir/`dirname \$dlpath`~-        test -d \$dldir || mkdir -p \$dldir~-        $install_prog $dir/$dlname \$dldir/$dlname~-        chmod a+x \$dldir/$dlname~-        if test -n '\''$stripme'\'' && test -n '\''$striplib'\''; then-          eval '\''$striplib \$dldir/$dlname'\'' || exit \$?;-        fi'-    fi-    postuninstall_cmds='dldll=`$SHELL 2>&1 -c '\''. $file; echo \$dlname'\''`~-      dlpath=$dir/\$dldll~-       $RM \$dlpath'-    shlibpath_overrides_runpath=yes--    case $host_os in-    cygwin*)-      # Cygwin DLLs use 'cyg' prefix rather than 'lib'-      soname_spec='`echo $libname | $SED -e 's/^lib/cyg/'``echo $release | $SED -e 's/[.]/-/g'`$versuffix$shared_ext'--      ;;-    mingw* | windows* | cegcc*)-      # MinGW DLLs use traditional 'lib' prefix-      soname_spec='$libname`echo $release | $SED -e 's/[.]/-/g'`$versuffix$shared_ext'-      ;;-    pw32*)-      # pw32 DLLs use 'pw' prefix rather than 'lib'-      library_names_spec='`echo $libname | $SED -e 's/^lib/pw/'``echo $release | $SED -e 's/[.]/-/g'`$versuffix$shared_ext'-      ;;-    esac-    dynamic_linker='Win32 ld.exe'-    ;;--  *,cl* | *,icl*)-    # Native MSVC or ICC-    libname_spec='$name'-    soname_spec='$libname`echo $release | $SED -e 's/[.]/-/g'`$versuffix$shared_ext'-    library_names_spec='$libname.dll.lib'--    case $build_os in-    mingw* | windows*)-      sys_lib_search_path_spec=-      lt_save_ifs=$IFS-      IFS=';'-      for lt_path in $LIB-      do-        IFS=$lt_save_ifs-        # Let DOS variable expansion print the short 8.3 style file name.-        lt_path=`cd "$lt_path" 2>/dev/null && cmd //C "for %i in (".") do @echo %~si"`-        sys_lib_search_path_spec="$sys_lib_search_path_spec $lt_path"-      done-      IFS=$lt_save_ifs-      # Convert to MSYS style.-      sys_lib_search_path_spec=`$ECHO "$sys_lib_search_path_spec" | $SED -e 's|\\\\|/|g' -e 's| \\([a-zA-Z]\\):| /\\1|g' -e 's|^ ||'`-      ;;-    cygwin*)-      # Convert to unix form, then to dos form, then back to unix form-      # but this time dos style (no spaces!) so that the unix form looks-      # like /cygdrive/c/PROGRA~1:/cygdr...-      sys_lib_search_path_spec=`cygpath --path --unix "$LIB"`-      sys_lib_search_path_spec=`cygpath --path --dos "$sys_lib_search_path_spec" 2>/dev/null`-      sys_lib_search_path_spec=`cygpath --path --unix "$sys_lib_search_path_spec" | $SED -e "s/$PATH_SEPARATOR/ /g"`-      ;;-    *)-      sys_lib_search_path_spec=$LIB-      if $ECHO "$sys_lib_search_path_spec" | $GREP ';[c-zC-Z]:/' >/dev/null; then-        # It is most probably a Windows format PATH.-        sys_lib_search_path_spec=`$ECHO "$sys_lib_search_path_spec" | $SED -e 's/;/ /g'`-      else-        sys_lib_search_path_spec=`$ECHO "$sys_lib_search_path_spec" | $SED -e "s/$PATH_SEPARATOR/ /g"`-      fi-      # FIXME: find the short name or the path components, as spaces are-      # common. (e.g. "Program Files" -> "PROGRA~1")-      ;;-    esac--    # DLL is installed to $(libdir)/../bin by postinstall_cmds-    postinstall_cmds='base_file=`basename \$file`~-      dlpath=`$SHELL 2>&1 -c '\''. $dir/'\''\$base_file'\''i; echo \$dlname'\''`~-      dldir=$destdir/`dirname \$dlpath`~-      test -d \$dldir || mkdir -p \$dldir~-      $install_prog $dir/$dlname \$dldir/$dlname'-    postuninstall_cmds='dldll=`$SHELL 2>&1 -c '\''. $file; echo \$dlname'\''`~-      dlpath=$dir/\$dldll~-       $RM \$dlpath'-    shlibpath_overrides_runpath=yes-    dynamic_linker='Win32 link.exe'-    ;;--  *)-    # Assume MSVC and ICC wrapper-    library_names_spec='$libname`echo $release | $SED -e 's/[.]/-/g'`$versuffix$shared_ext $libname.lib'-    dynamic_linker='Win32 ld.exe'-    ;;-  esac-  # FIXME: first we should search . and the directory the executable is in-  shlibpath_var=PATH-  ;;--darwin* | rhapsody*)-  dynamic_linker="$host_os dyld"-  version_type=darwin-  need_lib_prefix=no-  need_version=no-  library_names_spec='$libname$release$major$shared_ext $libname$shared_ext'-  soname_spec='$libname$release$major$shared_ext'-  shlibpath_overrides_runpath=yes-  shlibpath_var=DYLD_LIBRARY_PATH-  shrext_cmds='`test .$module = .yes && echo .so || echo .dylib`'--  sys_lib_dlsearch_path_spec='/usr/local/lib /lib /usr/lib'-  ;;--dgux*)-  version_type=linux # correct to gnu/linux during the next big refactor-  need_lib_prefix=no-  need_version=no-  library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$shared_ext'-  soname_spec='$libname$release$shared_ext$major'-  shlibpath_var=LD_LIBRARY_PATH-  ;;--freebsd* | dragonfly* | midnightbsd*)-  # DragonFly does not have aout.  When/if they implement a new-  # versioning mechanism, adjust this.-  if test -x /usr/bin/objformat; then-    objformat=`/usr/bin/objformat`-  else-    case $host_os in-    freebsd[23].*) objformat=aout ;;-    *) objformat=elf ;;-    esac-  fi-  version_type=freebsd-$objformat-  case $version_type in-    freebsd-elf*)-      library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$shared_ext'-      soname_spec='$libname$release$shared_ext$major'-      need_version=no-      need_lib_prefix=no-      ;;-    freebsd-*)-      library_names_spec='$libname$release$shared_ext$versuffix $libname$shared_ext$versuffix'-      need_version=yes-      ;;-  esac-  case $host_cpu in-    powerpc64)-      # On FreeBSD bi-arch platforms, a different variable is used for 32-bit-      # binaries.  See <https://man.freebsd.org/cgi/man.cgi?query=ld.so>.-      cat confdefs.h - <<_ACEOF >conftest.$ac_ext-/* end confdefs.h.  */-int test_pointer_size[sizeof (void *) - 5];--_ACEOF-if ac_fn_cxx_try_compile "$LINENO"-then :-  shlibpath_var=LD_LIBRARY_PATH-else case e in #(-  e) shlibpath_var=LD_32_LIBRARY_PATH ;;-esac-fi-rm -f core conftest.err conftest.$ac_objext conftest.beam conftest.$ac_ext-      ;;-    *)-      shlibpath_var=LD_LIBRARY_PATH-      ;;-  esac-  case $host_os in-  freebsd2.*)-    shlibpath_overrides_runpath=yes-    ;;-  freebsd3.[01]* | freebsdelf3.[01]*)-    shlibpath_overrides_runpath=yes-    hardcode_into_libs=yes-    ;;-  freebsd3.[2-9]* | freebsdelf3.[2-9]* | \-  freebsd4.[0-5] | freebsdelf4.[0-5] | freebsd4.1.1 | freebsdelf4.1.1)-    shlibpath_overrides_runpath=no-    hardcode_into_libs=yes-    ;;-  *) # from 4.6 on, and DragonFly-    shlibpath_overrides_runpath=yes-    hardcode_into_libs=yes-    ;;-  esac-  ;;--haiku*)-  version_type=linux # correct to gnu/linux during the next big refactor-  need_lib_prefix=no-  need_version=no-  dynamic_linker="$host_os runtime_loader"-  library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$shared_ext'-  soname_spec='$libname$release$shared_ext$major'-  shlibpath_var=LIBRARY_PATH-  shlibpath_overrides_runpath=no-  sys_lib_search_path_spec='/boot/system/non-packaged/develop/lib /boot/system/develop/lib'-  sys_lib_dlsearch_path_spec='/boot/home/config/non-packaged/lib /boot/home/config/lib /boot/system/non-packaged/lib /boot/system/lib'-  hardcode_into_libs=no-  ;;--hpux9* | hpux10* | hpux11*)-  # Give a soname corresponding to the major version so that dld.sl refuses to-  # link against other versions.-  version_type=sunos-  need_lib_prefix=no-  need_version=no-  case $host_cpu in-  ia64*)-    shrext_cmds='.so'-    hardcode_into_libs=yes-    dynamic_linker="$host_os dld.so"-    shlibpath_var=LD_LIBRARY_PATH-    shlibpath_overrides_runpath=yes # Unless +noenvvar is specified.-    library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$shared_ext'-    soname_spec='$libname$release$shared_ext$major'-    if test 32 = "$HPUX_IA64_MODE"; then-      sys_lib_search_path_spec="/usr/lib/hpux32 /usr/local/lib/hpux32 /usr/local/lib"-      sys_lib_dlsearch_path_spec=/usr/lib/hpux32-    else-      sys_lib_search_path_spec="/usr/lib/hpux64 /usr/local/lib/hpux64"-      sys_lib_dlsearch_path_spec=/usr/lib/hpux64-    fi-    ;;-  hppa*64*)-    shrext_cmds='.sl'-    hardcode_into_libs=yes-    dynamic_linker="$host_os dld.sl"-    shlibpath_var=LD_LIBRARY_PATH # How should we handle SHLIB_PATH-    shlibpath_overrides_runpath=yes # Unless +noenvvar is specified.-    library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$shared_ext'-    soname_spec='$libname$release$shared_ext$major'-    sys_lib_search_path_spec="/usr/lib/pa20_64 /usr/ccs/lib/pa20_64"-    sys_lib_dlsearch_path_spec=$sys_lib_search_path_spec-    ;;-  *)-    shrext_cmds='.sl'-    dynamic_linker="$host_os dld.sl"-    shlibpath_var=SHLIB_PATH-    shlibpath_overrides_runpath=no # +s is required to enable SHLIB_PATH-    library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$shared_ext'-    soname_spec='$libname$release$shared_ext$major'-    ;;-  esac-  # HP-UX runs *really* slowly unless shared libraries are mode 555, ...-  postinstall_cmds='chmod 555 $lib'-  # or fails outright, so override atomically:-  install_override_mode=555-  ;;--interix[3-9]*)-  version_type=linux # correct to gnu/linux during the next big refactor-  need_lib_prefix=no-  need_version=no-  library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$shared_ext'-  soname_spec='$libname$release$shared_ext$major'-  dynamic_linker='Interix 3.x ld.so.1 (PE, like ELF)'-  shlibpath_var=LD_LIBRARY_PATH-  shlibpath_overrides_runpath=no-  hardcode_into_libs=yes-  ;;--irix5* | irix6* | nonstopux*)-  case $host_os in-    nonstopux*) version_type=nonstopux ;;-    *)-	if test yes = "$lt_cv_prog_gnu_ld"; then-		version_type=linux # correct to gnu/linux during the next big refactor-	else-		version_type=irix-	fi ;;-  esac-  need_lib_prefix=no-  need_version=no-  soname_spec='$libname$release$shared_ext$major'-  library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$release$shared_ext $libname$shared_ext'-  case $host_os in-  irix5* | nonstopux*)-    libsuff= shlibsuff=-    ;;-  *)-    case $LD in # libtool.m4 will add one of these switches to LD-    *-32|*"-32 "|*-melf32bsmip|*"-melf32bsmip ")-      libsuff= shlibsuff= libmagic=32-bit;;-    *-n32|*"-n32 "|*-melf32bmipn32|*"-melf32bmipn32 ")-      libsuff=32 shlibsuff=N32 libmagic=N32;;-    *-64|*"-64 "|*-melf64bmip|*"-melf64bmip ")-      libsuff=64 shlibsuff=64 libmagic=64-bit;;-    *) libsuff= shlibsuff= libmagic=never-match;;-    esac-    ;;-  esac-  shlibpath_var=LD_LIBRARY${shlibsuff}_PATH-  shlibpath_overrides_runpath=no-  sys_lib_search_path_spec="/usr/lib$libsuff /lib$libsuff /usr/local/lib$libsuff"-  sys_lib_dlsearch_path_spec="/usr/lib$libsuff /lib$libsuff"-  hardcode_into_libs=yes-  ;;--# No shared lib support for Linux oldld, aout, or coff.-linux*oldld* | linux*aout* | linux*coff*)-  dynamic_linker=no-  ;;--linux*android*)-  version_type=none # Android doesn't support versioned libraries.-  need_lib_prefix=no-  need_version=no-  library_names_spec='$libname$release$shared_ext $libname$shared_ext'-  soname_spec='$libname$release$shared_ext'-  finish_cmds=-  shlibpath_var=LD_LIBRARY_PATH-  shlibpath_overrides_runpath=yes--  # This implies no fast_install, which is unacceptable.-  # Some rework will be needed to allow for fast_install-  # before this can be enabled.-  hardcode_into_libs=yes--  dynamic_linker='Android linker'-  # -rpath works at least for libraries that are not overridden by-  # libraries installed in system locations.-  hardcode_libdir_flag_spec_CXX='$wl-rpath $wl$libdir'-  ;;--# This must be glibc/ELF.-linux* | k*bsd*-gnu | kopensolaris*-gnu | gnu*)-  version_type=linux # correct to gnu/linux during the next big refactor-  need_lib_prefix=no-  need_version=no-  library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$shared_ext'-  soname_spec='$libname$release$shared_ext$major'-  finish_cmds='PATH="\$PATH:/sbin" ldconfig -n $libdir'-  shlibpath_var=LD_LIBRARY_PATH-  shlibpath_overrides_runpath=no--  # Some binutils ld are patched to set DT_RUNPATH-  if test ${lt_cv_shlibpath_overrides_runpath+y}-then :-  printf %s "(cached) " >&6-else case e in #(-  e) lt_cv_shlibpath_overrides_runpath=no-    save_LDFLAGS=$LDFLAGS-    save_libdir=$libdir-    eval "libdir=/foo; wl=\"$lt_prog_compiler_wl_CXX\"; \-	 LDFLAGS=\"\$LDFLAGS $hardcode_libdir_flag_spec_CXX\""-    cat confdefs.h - <<_ACEOF >conftest.$ac_ext-/* end confdefs.h.  */--int-main (void)-{--  ;-  return 0;-}-_ACEOF-if ac_fn_cxx_try_link "$LINENO"-then :-  if  ($OBJDUMP -p conftest$ac_exeext) 2>/dev/null | grep "RUNPATH.*$libdir" >/dev/null-then :-  lt_cv_shlibpath_overrides_runpath=yes-fi-fi-rm -f core conftest.err conftest.$ac_objext conftest.beam \-    conftest$ac_exeext conftest.$ac_ext-    LDFLAGS=$save_LDFLAGS-    libdir=$save_libdir-     ;;-esac-fi--  shlibpath_overrides_runpath=$lt_cv_shlibpath_overrides_runpath--  # This implies no fast_install, which is unacceptable.-  # Some rework will be needed to allow for fast_install-  # before this can be enabled.-  hardcode_into_libs=yes--  # Add ABI-specific directories to the system library path.-  sys_lib_dlsearch_path_spec="/lib64 /usr/lib64 /lib /usr/lib"--  # Ideally, we could use ldconfig to report *all* directories which are-  # searched for libraries, however this is still not possible.  Aside from not-  # being certain /sbin/ldconfig is available, command-  # 'ldconfig -N -X -v | grep ^/' on 64bit Fedora does not report /usr/lib64,-  # even though it is searched at run-time.  Try to do the best guess by-  # appending ld.so.conf contents (and includes) to the search path.-  if test -f /etc/ld.so.conf; then-    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' ' '`-    sys_lib_dlsearch_path_spec="$sys_lib_dlsearch_path_spec $lt_ld_extra"-  fi--  # We used to test for /lib/ld.so.1 and disable shared libraries on-  # powerpc, because MkLinux only supported shared libraries with the-  # GNU dynamic linker.  Since this was broken with cross compilers,-  # most powerpc-linux boxes support dynamic linking these days and-  # people can always --disable-shared, the test was removed, and we-  # assume the GNU/Linux dynamic linker is in use.-  dynamic_linker='GNU/Linux ld.so'-  ;;--netbsdelf*-gnu)-  version_type=linux-  need_lib_prefix=no-  need_version=no-  library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$shared_ext'-  soname_spec='$libname$release$shared_ext$major'-  shlibpath_var=LD_LIBRARY_PATH-  shlibpath_overrides_runpath=no-  hardcode_into_libs=yes-  dynamic_linker='NetBSD ld.elf_so'-  ;;--netbsd*)-  version_type=sunos-  need_lib_prefix=no-  need_version=no-  if echo __ELF__ | $CC -E - | $GREP __ELF__ >/dev/null; then-    library_names_spec='$libname$release$shared_ext$versuffix $libname$shared_ext$versuffix'-    finish_cmds='PATH="\$PATH:/sbin" ldconfig -m $libdir'-    dynamic_linker='NetBSD (a.out) ld.so'-  else-    library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$shared_ext'-    soname_spec='$libname$release$shared_ext$major'-    dynamic_linker='NetBSD ld.elf_so'-  fi-  shlibpath_var=LD_LIBRARY_PATH-  shlibpath_overrides_runpath=yes-  hardcode_into_libs=yes-  ;;--*-mlibc)-  version_type=linux # correct to gnu/linux during the next big refactor-  need_lib_prefix=no-  need_version=no-  library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$shared_ext'-  soname_spec='$libname$release$shared_ext$major'-  dynamic_linker='mlibc ld.so'-  shlibpath_var=LD_LIBRARY_PATH-  shlibpath_overrides_runpath=no-  hardcode_into_libs=yes-  ;;--newsos6)-  version_type=linux # correct to gnu/linux during the next big refactor-  library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$shared_ext'-  shlibpath_var=LD_LIBRARY_PATH-  shlibpath_overrides_runpath=yes-  ;;--*nto* | *qnx*)-  version_type=qnx-  need_lib_prefix=no-  need_version=no-  library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$shared_ext'-  soname_spec='$libname$release$shared_ext$major'-  shlibpath_var=LD_LIBRARY_PATH-  shlibpath_overrides_runpath=no-  hardcode_into_libs=yes-  dynamic_linker='ldqnx.so'-  ;;--openbsd*)-  version_type=sunos-  sys_lib_dlsearch_path_spec=/usr/lib-  need_lib_prefix=no-  if test -z "`echo __ELF__ | $CC -E - | $GREP __ELF__`"; then-    need_version=no-  else-    need_version=yes-  fi-  library_names_spec='$libname$release$shared_ext$versuffix $libname$shared_ext$versuffix'-  finish_cmds='PATH="\$PATH:/sbin" ldconfig -m $libdir'-  shlibpath_var=LD_LIBRARY_PATH-  shlibpath_overrides_runpath=yes-  ;;--os2*)-  libname_spec='$name'-  version_type=windows-  shrext_cmds=.dll-  need_version=no-  need_lib_prefix=no-  # OS/2 can only load a DLL with a base name of 8 characters or less.-  soname_spec='`test -n "$os2dllname" && libname="$os2dllname";-    v=$($ECHO $release$versuffix | tr -d .-);-    n=$($ECHO $libname | cut -b -$((8 - ${#v})) | tr . _);-    $ECHO $n$v`$shared_ext'-  library_names_spec='${libname}_dll.$libext'-  dynamic_linker='OS/2 ld.exe'-  shlibpath_var=BEGINLIBPATH-  sys_lib_search_path_spec="/lib /usr/lib /usr/local/lib"-  sys_lib_dlsearch_path_spec=$sys_lib_search_path_spec-  postinstall_cmds='base_file=`basename \$file`~-    dlpath=`$SHELL 2>&1 -c '\''. $dir/'\''\$base_file'\''i; $ECHO \$dlname'\''`~-    dldir=$destdir/`dirname \$dlpath`~-    test -d \$dldir || mkdir -p \$dldir~-    $install_prog $dir/$dlname \$dldir/$dlname~-    chmod a+x \$dldir/$dlname~-    if test -n '\''$stripme'\'' && test -n '\''$striplib'\''; then-      eval '\''$striplib \$dldir/$dlname'\'' || exit \$?;-    fi'-  postuninstall_cmds='dldll=`$SHELL 2>&1 -c '\''. $file; $ECHO \$dlname'\''`~-    dlpath=$dir/\$dldll~-    $RM \$dlpath'-  ;;--osf3* | osf4* | osf5*)-  version_type=osf-  need_lib_prefix=no-  need_version=no-  soname_spec='$libname$release$shared_ext$major'-  library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$shared_ext'-  shlibpath_var=LD_LIBRARY_PATH-  sys_lib_search_path_spec="/usr/shlib /usr/ccs/lib /usr/lib/cmplrs/cc /usr/lib /usr/local/lib /var/shlib"-  sys_lib_dlsearch_path_spec=$sys_lib_search_path_spec-  ;;--rdos*)-  dynamic_linker=no-  ;;--serenity*)-  version_type=linux # correct to gnu/linux during the next big refactor-  need_lib_prefix=no-  need_version=no-  library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$shared_ext'-  soname_spec='$libname$release$shared_ext$major'-  shlibpath_var=LD_LIBRARY_PATH-  shlibpath_overrides_runpath=no-  dynamic_linker='SerenityOS LibELF'-  ;;--solaris*)-  version_type=linux # correct to gnu/linux during the next big refactor-  need_lib_prefix=no-  need_version=no-  library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$shared_ext'-  soname_spec='$libname$release$shared_ext$major'-  shlibpath_var=LD_LIBRARY_PATH-  shlibpath_overrides_runpath=yes-  hardcode_into_libs=yes-  # ldd complains unless libraries are executable-  postinstall_cmds='chmod +x $lib'-  ;;--sunos4*)-  version_type=sunos-  library_names_spec='$libname$release$shared_ext$versuffix $libname$shared_ext$versuffix'-  finish_cmds='PATH="\$PATH:/usr/etc" ldconfig $libdir'-  shlibpath_var=LD_LIBRARY_PATH-  shlibpath_overrides_runpath=yes-  if test yes = "$with_gnu_ld"; then-    need_lib_prefix=no-  fi-  need_version=yes-  ;;--sysv4 | sysv4.3*)-  version_type=linux # correct to gnu/linux during the next big refactor-  library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$shared_ext'-  soname_spec='$libname$release$shared_ext$major'-  shlibpath_var=LD_LIBRARY_PATH-  case $host_vendor in-    sni)-      shlibpath_overrides_runpath=no-      need_lib_prefix=no-      runpath_var=LD_RUN_PATH-      ;;-    siemens)-      need_lib_prefix=no-      ;;-    motorola)-      need_lib_prefix=no-      need_version=no-      shlibpath_overrides_runpath=no-      sys_lib_search_path_spec='/lib /usr/lib /usr/ccs/lib'-      ;;-  esac-  ;;--sysv4*MP*)-  if test -d /usr/nec; then-    version_type=linux # correct to gnu/linux during the next big refactor-    library_names_spec='$libname$shared_ext.$versuffix $libname$shared_ext.$major $libname$shared_ext'-    soname_spec='$libname$shared_ext.$major'-    shlibpath_var=LD_LIBRARY_PATH-  fi-  ;;--sysv5* | sco3.2v5* | sco5v6* | unixware* | OpenUNIX* | sysv4*uw2*)-  version_type=sco-  need_lib_prefix=no-  need_version=no-  library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext $libname$shared_ext'-  soname_spec='$libname$release$shared_ext$major'-  shlibpath_var=LD_LIBRARY_PATH-  shlibpath_overrides_runpath=yes-  hardcode_into_libs=yes-  if test yes = "$with_gnu_ld"; then-    sys_lib_search_path_spec='/usr/local/lib /usr/gnu/lib /usr/ccs/lib /usr/lib /lib'-  else-    sys_lib_search_path_spec='/usr/ccs/lib /usr/lib'-    case $host_os in-      sco3.2v5*)-        sys_lib_search_path_spec="$sys_lib_search_path_spec /lib"-	;;-    esac-  fi-  sys_lib_dlsearch_path_spec='/usr/lib'-  ;;--tpf*)-  # TPF is a cross-target only.  Preferred cross-host = GNU/Linux.-  version_type=linux # correct to gnu/linux during the next big refactor-  need_lib_prefix=no-  need_version=no-  library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$shared_ext'-  shlibpath_var=LD_LIBRARY_PATH-  shlibpath_overrides_runpath=no-  hardcode_into_libs=yes-  ;;--uts4*)-  version_type=linux # correct to gnu/linux during the next big refactor-  library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$shared_ext'-  soname_spec='$libname$release$shared_ext$major'-  shlibpath_var=LD_LIBRARY_PATH-  ;;--emscripten*)-  version_type=none-  need_lib_prefix=no-  need_version=no-  library_names_spec='$libname$release$shared_ext'-  soname_spec='$libname$release$shared_ext'-  finish_cmds=-  dynamic_linker="Emscripten linker"-  lt_prog_compiler_wl_CXX=-lt_prog_compiler_pic_CXX=-lt_prog_compiler_static_CXX=---  # C++ specific cases for pic, static, wl, etc.-  if test yes = "$GXX"; then-    lt_prog_compiler_wl_CXX='-Wl,'-    lt_prog_compiler_static_CXX='-static'--    case $host_os in-    aix*)-      # All AIX code is PIC.-      if test ia64 = "$host_cpu"; then-	# AIX 5 now supports IA64 processor-	lt_prog_compiler_static_CXX='-Bstatic'-      fi-      lt_prog_compiler_pic_CXX='-fPIC'-      ;;--    amigaos*)-      case $host_cpu in-      powerpc)-            # see comment about AmigaOS4 .so support-            lt_prog_compiler_pic_CXX='-fPIC'-        ;;-      m68k)-            # FIXME: we need at least 68020 code to build shared libraries, but-            # adding the '-m68020' flag to GCC prevents building anything better,-            # like '-m68040'.-            lt_prog_compiler_pic_CXX='-m68020 -resident32 -malways-restore-a4'-        ;;-      esac-      ;;--    beos* | irix5* | irix6* | nonstopux* | osf3* | osf4* | osf5*)-      # PIC is the default for these OSes.-      ;;-    mingw* | windows* | cygwin* | os2* | pw32* | cegcc*)-      # This hack is so that the source file can tell whether it is being-      # built for inclusion in a dll (and should export symbols for example).-      # Although the cygwin gcc ignores -fPIC, still need this for old-style-      # (--disable-auto-import) libraries-      lt_prog_compiler_pic_CXX='-DDLL_EXPORT'-      case $host_os in-      os2*)-	lt_prog_compiler_static_CXX='$wl-static'-	;;-      esac-      ;;-    darwin* | rhapsody*)-      # PIC is the default on this platform-      # Common symbols not allowed in MH_DYLIB files-      lt_prog_compiler_pic_CXX='-fno-common'-      ;;-    *djgpp*)-      # DJGPP does not support shared libraries at all-      lt_prog_compiler_pic_CXX=-      ;;-    haiku*)-      # PIC is the default for Haiku.-      # The "-static" flag exists, but is broken.-      lt_prog_compiler_static_CXX=-      ;;-    interix[3-9]*)-      # Interix 3.x gcc -fpic/-fPIC options generate broken code.-      # Instead, we relocate shared libraries at runtime.-      ;;-    sysv4*MP*)-      if test -d /usr/nec; then-	lt_prog_compiler_pic_CXX=-Kconform_pic-      fi-      ;;-    hpux*)-      # PIC is the default for 64-bit PA HP-UX, but not for 32-bit-      # PA HP-UX.  On IA64 HP-UX, PIC is the default but the pic flag-      # sets the default TLS model and affects inlining.-      case $host_cpu in-      hppa*64*)-	;;-      *)-	lt_prog_compiler_pic_CXX='-fPIC'-	;;-      esac-      ;;-    *qnx* | *nto*)-      # QNX uses GNU C++, but need to define -shared option too, otherwise-      # it will coredump.-      lt_prog_compiler_pic_CXX='-fPIC -shared'-      ;;-    *)-      lt_prog_compiler_pic_CXX='-fPIC'-      ;;-    esac-  else-    case $host_os in-      aix[4-9]*)-	# All AIX code is PIC.-	if test ia64 = "$host_cpu"; then-	  # AIX 5 now supports IA64 processor-	  lt_prog_compiler_static_CXX='-Bstatic'-	else-	  lt_prog_compiler_static_CXX='-bnso -bI:/lib/syscalls.exp'-	fi-	;;-      chorus*)-	case $cc_basename in-	cxch68*)-	  # Green Hills C++ Compiler-	  # _LT_TAGVAR(lt_prog_compiler_static, CXX)="--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"-	  ;;-	esac-	;;-      mingw* | windows* | cygwin* | os2* | pw32* | cegcc*)-	# This hack is so that the source file can tell whether it is being-	# built for inclusion in a dll (and should export symbols for example).-	lt_prog_compiler_pic_CXX='-DDLL_EXPORT'-	;;-      dgux*)-	case $cc_basename in-	  ec++*)-	    lt_prog_compiler_pic_CXX='-KPIC'-	    ;;-	  ghcx*)-	    # Green Hills C++ Compiler-	    lt_prog_compiler_pic_CXX='-pic'-	    ;;-	  *)-	    ;;-	esac-	;;-      freebsd* | dragonfly* | midnightbsd*)-	# FreeBSD uses GNU C++-	;;-      hpux9* | hpux10* | hpux11*)-	case $cc_basename in-	  CC*)-	    lt_prog_compiler_wl_CXX='-Wl,'-	    lt_prog_compiler_static_CXX='$wl-a ${wl}archive'-	    if test ia64 != "$host_cpu"; then-	      lt_prog_compiler_pic_CXX='+Z'-	    fi-	    ;;-	  aCC*)-	    lt_prog_compiler_wl_CXX='-Wl,'-	    lt_prog_compiler_static_CXX='$wl-a ${wl}archive'-	    case $host_cpu in-	    hppa*64*|ia64*)-	      # +Z the default-	      ;;-	    *)-	      lt_prog_compiler_pic_CXX='+Z'-	      ;;-	    esac-	    ;;-	  *)-	    ;;-	esac-	;;-      interix*)-	# This is c89, which is MS Visual C++ (no shared libs)-	# Anyone wants to do a port?-	;;-      irix5* | irix6* | nonstopux*)-	case $cc_basename in-	  CC*)-	    lt_prog_compiler_wl_CXX='-Wl,'-	    lt_prog_compiler_static_CXX='-non_shared'-	    # CC pic flag -KPIC is the default.-	    ;;-	  *)-	    ;;-	esac-	;;-      linux* | k*bsd*-gnu | kopensolaris*-gnu | gnu*)-	case $cc_basename in-	  KCC*)-	    # KAI C++ Compiler-	    lt_prog_compiler_wl_CXX='--backend -Wl,'-	    lt_prog_compiler_pic_CXX='-fPIC'-	    ;;-	  ecpc* )-	    # old Intel C++ for x86_64, which still supported -KPIC.-	    lt_prog_compiler_wl_CXX='-Wl,'-	    lt_prog_compiler_pic_CXX='-KPIC'-	    lt_prog_compiler_static_CXX='-static'-	    ;;-	  icpc* )-	    # Intel C++, used to be incompatible with GCC.-	    # ICC 10 doesn't accept -KPIC any more.-	    lt_prog_compiler_wl_CXX='-Wl,'-	    lt_prog_compiler_pic_CXX='-fPIC'-	    lt_prog_compiler_static_CXX='-static'-	    ;;-	  pgCC* | pgcpp*)-	    # Portland Group C++ compiler-	    lt_prog_compiler_wl_CXX='-Wl,'-	    lt_prog_compiler_pic_CXX='-fpic'-	    lt_prog_compiler_static_CXX='-Bstatic'-	    ;;-	  cxx*)-	    # Compaq C++-	    # Make sure the PIC flag is empty.  It appears that all Alpha-	    # Linux and Compaq Tru64 Unix objects are PIC.-	    lt_prog_compiler_pic_CXX=-	    lt_prog_compiler_static_CXX='-non_shared'-	    ;;-	  xlc* | xlC* | bgxl[cC]* | mpixl[cC]*)-	    # IBM XL 8.0, 9.0 on PPC and BlueGene-	    lt_prog_compiler_wl_CXX='-Wl,'-	    lt_prog_compiler_pic_CXX='-qpic'-	    lt_prog_compiler_static_CXX='-qstaticlink'-	    ;;-	  *)-	    case `$CC -V 2>&1 | $SED 5q` in-	    *Sun\ C*)-	      # Sun C++ 5.9-	      lt_prog_compiler_pic_CXX='-KPIC'-	      lt_prog_compiler_static_CXX='-Bstatic'-	      lt_prog_compiler_wl_CXX='-Qoption ld '-	      ;;-	    esac-	    ;;-	esac-	;;-      lynxos*)-	;;-      m88k*)-	;;-      mvs*)-	case $cc_basename in-	  cxx*)-	    lt_prog_compiler_pic_CXX='-W c,exportall'-	    ;;-	  *)-	    ;;-	esac-	;;-      netbsd* | netbsdelf*-gnu)-	;;-      *-mlibc)-	;;-      *qnx* | *nto*)-        # QNX uses GNU C++, but need to define -shared option too, otherwise-        # it will coredump.-        lt_prog_compiler_pic_CXX='-fPIC -shared'-        ;;-      osf3* | osf4* | osf5*)-	case $cc_basename in-	  KCC*)-	    lt_prog_compiler_wl_CXX='--backend -Wl,'-	    ;;-	  RCC*)-	    # Rational C++ 2.4.1-	    lt_prog_compiler_pic_CXX='-pic'-	    ;;-	  cxx*)-	    # Digital/Compaq C++-	    lt_prog_compiler_wl_CXX='-Wl,'-	    # Make sure the PIC flag is empty.  It appears that all Alpha-	    # Linux and Compaq Tru64 Unix objects are PIC.-	    lt_prog_compiler_pic_CXX=-	    lt_prog_compiler_static_CXX='-non_shared'-	    ;;-	  *)-	    ;;-	esac-	;;-      psos*)-	;;-      serenity*)-        ;;-      solaris*)-	case $cc_basename in-	  CC* | sunCC*)-	    # Sun C++ 4.2, 5.x and Centerline C++-	    lt_prog_compiler_pic_CXX='-KPIC'-	    lt_prog_compiler_static_CXX='-Bstatic'-	    lt_prog_compiler_wl_CXX='-Qoption ld '-	    ;;-	  gcx*)-	    # Green Hills C++ Compiler-	    lt_prog_compiler_pic_CXX='-PIC'-	    ;;-	  *)-	    ;;-	esac-	;;-      sunos4*)-	case $cc_basename in-	  CC*)-	    # Sun C++ 4.x-	    lt_prog_compiler_pic_CXX='-pic'-	    lt_prog_compiler_static_CXX='-Bstatic'-	    ;;-	  lcc*)-	    # Lucid-	    lt_prog_compiler_pic_CXX='-pic'-	    ;;-	  *)-	    ;;-	esac-	;;-      sysv5* | unixware* | sco3.2v5* | sco5v6* | OpenUNIX*)-	case $cc_basename in-	  CC*)-	    lt_prog_compiler_wl_CXX='-Wl,'-	    lt_prog_compiler_pic_CXX='-KPIC'-	    lt_prog_compiler_static_CXX='-Bstatic'-	    ;;-	esac-	;;-      tandem*)-	case $cc_basename in-	  NCC*)-	    # NonStop-UX NCC 3.20-	    lt_prog_compiler_pic_CXX='-KPIC'-	    ;;-	  *)-	    ;;-	esac-	;;-      vxworks*)-	;;-      *)-	lt_prog_compiler_can_build_shared_CXX=no-	;;-    esac-  fi--case $host_os in-  # For platforms that do not support PIC, -DPIC is meaningless:-  *djgpp*)-    lt_prog_compiler_pic_CXX=-    ;;-  *)-    lt_prog_compiler_pic_CXX="$lt_prog_compiler_pic_CXX -DPIC"-    ;;-esac--{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for $compiler option to produce PIC" >&5-printf %s "checking for $compiler option to produce PIC... " >&6; }-if test ${lt_cv_prog_compiler_pic_CXX+y}-then :-  printf %s "(cached) " >&6-else case e in #(-  e) lt_cv_prog_compiler_pic_CXX=$lt_prog_compiler_pic_CXX ;;-esac-fi-{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $lt_cv_prog_compiler_pic_CXX" >&5-printf "%s\n" "$lt_cv_prog_compiler_pic_CXX" >&6; }-lt_prog_compiler_pic_CXX=$lt_cv_prog_compiler_pic_CXX--#-# Check to make sure the PIC flag actually works.-#-if test -n "$lt_prog_compiler_pic_CXX"; then-  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking if $compiler PIC flag $lt_prog_compiler_pic_CXX works" >&5-printf %s "checking if $compiler PIC flag $lt_prog_compiler_pic_CXX works... " >&6; }-if test ${lt_cv_prog_compiler_pic_works_CXX+y}-then :-  printf %s "(cached) " >&6-else case e in #(-  e) lt_cv_prog_compiler_pic_works_CXX=no-   ac_outfile=conftest.$ac_objext-   echo "$lt_simple_compile_test_code" > conftest.$ac_ext-   lt_compiler_flag="$lt_prog_compiler_pic_CXX -DPIC"  ## exclude from sc_useless_quotes_in_assignment-   # Insert the option either (1) after the last *FLAGS variable, or-   # (2) before a word containing "conftest.", or (3) at the end.-   # Note that $ac_compile itself does not contain backslashes and begins-   # with a dollar sign (not a hyphen), so the echo should work correctly.-   # The option is referenced via a variable to avoid confusing sed.-   lt_compile=`echo "$ac_compile" | $SED \-   -e 's:.*FLAGS}\{0,1\} :&$lt_compiler_flag :; t' \-   -e 's: [^ ]*conftest\.: $lt_compiler_flag&:; t' \-   -e 's:$: $lt_compiler_flag:'`-   (eval echo "\"\$as_me:$LINENO: $lt_compile\"" >&5)-   (eval "$lt_compile" 2>conftest.err)-   ac_status=$?-   cat conftest.err >&5-   echo "$as_me:$LINENO: \$? = $ac_status" >&5-   if (exit $ac_status) && test -s "$ac_outfile"; then-     # The compiler can only warn and ignore the option if not recognized-     # So say no if there are warnings other than the usual output.-     $ECHO "$_lt_compiler_boilerplate" | $SED '/^$/d' >conftest.exp-     $SED '/^$/d; /^ *+/d' conftest.err >conftest.er2-     if test ! -s conftest.er2 || diff conftest.exp conftest.er2 >/dev/null; then-       lt_cv_prog_compiler_pic_works_CXX=yes-     fi-   fi-   $RM conftest*- ;;-esac-fi-{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $lt_cv_prog_compiler_pic_works_CXX" >&5-printf "%s\n" "$lt_cv_prog_compiler_pic_works_CXX" >&6; }--if test yes = "$lt_cv_prog_compiler_pic_works_CXX"; then-    case $lt_prog_compiler_pic_CXX in-     "" | " "*) ;;-     *) lt_prog_compiler_pic_CXX=" $lt_prog_compiler_pic_CXX" ;;-     esac-else-    lt_prog_compiler_pic_CXX=-     lt_prog_compiler_can_build_shared_CXX=no-fi--fi------#-# Check to make sure the static flag actually works.-#-wl=$lt_prog_compiler_wl_CXX eval lt_tmp_static_flag=\"$lt_prog_compiler_static_CXX\"-{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking if $compiler static flag $lt_tmp_static_flag works" >&5-printf %s "checking if $compiler static flag $lt_tmp_static_flag works... " >&6; }-if test ${lt_cv_prog_compiler_static_works_CXX+y}-then :-  printf %s "(cached) " >&6-else case e in #(-  e) lt_cv_prog_compiler_static_works_CXX=no-   save_LDFLAGS=$LDFLAGS-   LDFLAGS="$LDFLAGS $lt_tmp_static_flag"-   echo "$lt_simple_link_test_code" > conftest.$ac_ext-   if (eval $ac_link 2>conftest.err) && test -s conftest$ac_exeext; then-     # The linker can only warn and ignore the option if not recognized-     # So say no if there are warnings-     if test -s conftest.err; then-       # Append any errors to the config.log.-       cat conftest.err 1>&5-       $ECHO "$_lt_linker_boilerplate" | $SED '/^$/d' > conftest.exp-       $SED '/^$/d; /^ *+/d' conftest.err >conftest.er2-       if diff conftest.exp conftest.er2 >/dev/null; then-         lt_cv_prog_compiler_static_works_CXX=yes-       fi-     else-       lt_cv_prog_compiler_static_works_CXX=yes-     fi-   fi-   $RM -r conftest*-   LDFLAGS=$save_LDFLAGS- ;;-esac-fi-{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $lt_cv_prog_compiler_static_works_CXX" >&5-printf "%s\n" "$lt_cv_prog_compiler_static_works_CXX" >&6; }--if test yes = "$lt_cv_prog_compiler_static_works_CXX"; then-    :-else-    lt_prog_compiler_static_CXX=-fi----='-fPIC'-  archive_cmds_CXX='$CC -sSIDE_MODULE=2 -shared $libobjs $deplibs $compiler_flags -o $lib'-  archive_expsym_cmds_CXX='$SED "s|^|_|" $export_symbols >$output_objdir/$soname.expsym~$CC -sSIDE_MODULE=2 -shared $libobjs $deplibs $compiler_flags -o $lib -s EXPORTED_FUNCTIONS=@$output_objdir/$soname.expsym'-  archive_cmds_need_lc_CXX=no-  no_undefined_flag_CXX=-  ;;--*)-  dynamic_linker=no-  ;;-esac-{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $dynamic_linker" >&5-printf "%s\n" "$dynamic_linker" >&6; }-test no = "$dynamic_linker" && can_build_shared=no--variables_saved_for_relink="PATH $shlibpath_var $runpath_var"-if test yes = "$GCC"; then-  variables_saved_for_relink="$variables_saved_for_relink GCC_EXEC_PREFIX COMPILER_PATH LIBRARY_PATH"-fi--if test set = "${lt_cv_sys_lib_search_path_spec+set}"; then-  sys_lib_search_path_spec=$lt_cv_sys_lib_search_path_spec-fi--if test set = "${lt_cv_sys_lib_dlsearch_path_spec+set}"; then-  sys_lib_dlsearch_path_spec=$lt_cv_sys_lib_dlsearch_path_spec-fi--# remember unaugmented sys_lib_dlsearch_path content for libtool script decls...-configure_time_dlsearch_path=$sys_lib_dlsearch_path_spec--# ... but it needs LT_SYS_LIBRARY_PATH munging for other configure-time code-func_munge_path_list sys_lib_dlsearch_path_spec "$LT_SYS_LIBRARY_PATH"--# to be used as default LT_SYS_LIBRARY_PATH value in generated libtool-configure_time_lt_sys_library_path=$LT_SYS_LIBRARY_PATH-----------------------------------------    { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking how to hardcode library paths into programs" >&5-printf %s "checking how to hardcode library paths into programs... " >&6; }-hardcode_action_CXX=-if test -n "$hardcode_libdir_flag_spec_CXX" ||-   test -n "$runpath_var_CXX" ||-   test yes = "$hardcode_automatic_CXX"; then--  # We can hardcode non-existent directories.-  if test no != "$hardcode_direct_CXX" &&-     # If the only mechanism to avoid hardcoding is shlibpath_var, we-     # have to relink, otherwise we might link with an installed library-     # when we should be linking with a yet-to-be-installed one-     ## test no != "$_LT_TAGVAR(hardcode_shlibpath_var, CXX)" &&-     test no != "$hardcode_minus_L_CXX"; then-    # Linking always hardcodes the temporary library directory.-    hardcode_action_CXX=relink-  else-    # We can link without hardcoding, and we can hardcode nonexisting dirs.-    hardcode_action_CXX=immediate-  fi-else-  # We cannot hardcode anything, or else we can only hardcode existing-  # directories.-  hardcode_action_CXX=unsupported-fi-{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $hardcode_action_CXX" >&5-printf "%s\n" "$hardcode_action_CXX" >&6; }--if test relink = "$hardcode_action_CXX" ||-   test yes = "$inherit_rpath_CXX"; then-  # Fast installation is not supported-  enable_fast_install=no-elif test yes = "$shlibpath_overrides_runpath" ||-     test no = "$enable_shared"; then-  # Fast installation is not necessary-  enable_fast_install=needless-fi--------  fi # test -n "$compiler"--  CC=$lt_save_CC-  CFLAGS=$lt_save_CFLAGS-  LDCXX=$LD-  LD=$lt_save_LD-  GCC=$lt_save_GCC-  with_gnu_ld=$lt_save_with_gnu_ld-  lt_cv_path_LDCXX=$lt_cv_path_LD-  lt_cv_path_LD=$lt_save_path_LD-  lt_cv_prog_gnu_ldcxx=$lt_cv_prog_gnu_ld-  lt_cv_prog_gnu_ld=$lt_save_with_gnu_ld-fi # test yes != "$_lt_caught_CXX_error"--ac_ext=c-ac_cpp='$CPP $CPPFLAGS'-ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5'-ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5'-ac_compiler_gnu=$ac_cv_c_compiler_gnu----------------        ac_config_commands="$ac_config_commands libtool"-----# Only expand once:-----# Test for 64-bit build.-# The cast to long int works around a bug in the HP C Compiler-# version HP92453-01 B.11.11.23709.GP, which incorrectly rejects-# declarations like 'int a3[[(sizeof (unsigned char)) >= 0]];'.-# This bug is HP SR number 8606223364.-{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking size of size_t" >&5-printf %s "checking size of size_t... " >&6; }-if test ${ac_cv_sizeof_size_t+y}-then :-  printf %s "(cached) " >&6-else case e in #(-  e) if ac_fn_c_compute_int "$LINENO" "(long int) (sizeof (size_t))" "ac_cv_sizeof_size_t"        "$ac_includes_default"-then :--else case e in #(-  e) if test "$ac_cv_type_size_t" = yes; then-     { { printf "%s\n" "$as_me:${as_lineno-$LINENO}: error: in '$ac_pwd':" >&5-printf "%s\n" "$as_me: error: in '$ac_pwd':" >&2;}-as_fn_error 77 "cannot compute sizeof (size_t)-See 'config.log' for more details" "$LINENO" 5; }-   else-     ac_cv_sizeof_size_t=0-   fi ;;-esac-fi- ;;-esac-fi-{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_cv_sizeof_size_t" >&5-printf "%s\n" "$ac_cv_sizeof_size_t" >&6; }----printf "%s\n" "#define SIZEOF_SIZE_T $ac_cv_sizeof_size_t" >>confdefs.h----    { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for C compiler vendor" >&5-printf %s "checking for C compiler vendor... " >&6; }-if test ${ax_cv_c_compiler_vendor+y}-then :-  printf %s "(cached) " >&6-else case e in #(-  e)-	vendors="-		intel:		__ICC,__ECC,__INTEL_COMPILER-		ibm:		__xlc__,__xlC__,__IBMC__,__IBMCPP__,__ibmxl__-		pathscale:	__PATHCC__,__PATHSCALE__-		clang:		__clang__-		cray:		_CRAYC-		fujitsu:	__FUJITSU-		sdcc:		SDCC,__SDCC-		sx:		_SX-		nvhpc:		__NVCOMPILER-		portland:	__PGI-		gnu:		__GNUC__-		sun:		__SUNPRO_C,__SUNPRO_CC,__SUNPRO_F90,__SUNPRO_F95-		hp:		__HP_cc,__HP_aCC-		dec:		__DECC,__DECCXX,__DECC_VER,__DECCXX_VER-		borland:	__BORLANDC__,__CODEGEARC__,__TURBOC__-		comeau:		__COMO__-		kai:		__KCC-		lcc:		__LCC__-		sgi:		__sgi,sgi-		microsoft:	_MSC_VER-		metrowerks:	__MWERKS__-		watcom:		__WATCOMC__-		tcc:		__TINYC__-		unknown:	UNKNOWN-	"-	for ventest in $vendors; do-	    case $ventest in-		*:)-		    vendor=$ventest-		    continue-		    ;;-		*)-		    vencpp="defined("`echo $ventest | sed 's/,/) || defined(/g'`")"-		    ;;-	    esac--	    cat confdefs.h - <<_ACEOF >conftest.$ac_ext-/* end confdefs.h.  */--int-main (void)-{--#if !($vencpp)-      thisisanerror;-#endif--  ;-  return 0;-}-_ACEOF-if ac_fn_c_try_compile "$LINENO"-then :-  break-fi-rm -f core conftest.err conftest.$ac_objext conftest.beam conftest.$ac_ext-	done--	ax_cv_c_compiler_vendor=`echo $vendor | cut -d: -f1`-     ;;-esac-fi-{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ax_cv_c_compiler_vendor" >&5-printf "%s\n" "$ax_cv_c_compiler_vendor" >&6; }-------# Check whether --enable-portable-binary was given.-if test ${enable_portable_binary+y}-then :-  enableval=$enable_portable_binary; acx_maxopt_portable=$enableval-else case e in #(-  e) acx_maxopt_portable=no ;;-esac-fi---# Try to determine "good" native compiler flags if none specified via CFLAGS-if test "x$ac_test_CFLAGS" = "x"; then-  case $ax_cv_c_compiler_vendor in-    dec) CFLAGS="$CFLAGS -newc -w0 -O5 -ansi_alias -ansi_args -fp_reorder -tune host"-	 if test "x$acx_maxopt_portable" = xno; then-           CFLAGS="$CFLAGS -arch host"-         fi;;--    sun) CFLAGS="$CFLAGS -native -fast -xO5 -dalign"-	 if test "x$acx_maxopt_portable" = xyes; then-	   CFLAGS="$CFLAGS -xarch=generic"-         fi;;--    hp)  CFLAGS="$CFLAGS +Oall +Optrs_ansi +DSnative"-	 if test "x$acx_maxopt_portable" = xyes; then-	   CFLAGS="$CFLAGS +DAportable"-	 fi;;--    ibm) if test "x$acx_maxopt_portable" = xno; then-           xlc_opt="-qarch=auto -qtune=auto"-	 else-           xlc_opt="-qtune=auto"-	 fi-         as_CACHEVAR=`printf "%s\n" "ax_cv_check_cflags__$xlc_opt" | sed "$as_sed_sh"`-{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking whether the C compiler accepts $xlc_opt" >&5-printf %s "checking whether the C compiler accepts $xlc_opt... " >&6; }-if eval test \${$as_CACHEVAR+y}-then :-  printf %s "(cached) " >&6-else case e in #(-  e)-  ax_check_save_flags=$CFLAGS-  if test x"$GCC" = xyes ; then-    add_gnu_werror="-Werror"-  fi-  CFLAGS="$CFLAGS  $xlc_opt $add_gnu_werror"-  cat confdefs.h - <<_ACEOF >conftest.$ac_ext-/* end confdefs.h.  */--int-main (void)-{--  ;-  return 0;-}-_ACEOF-if ac_fn_c_try_compile "$LINENO"-then :-  eval "$as_CACHEVAR=yes"-else case e in #(-  e) eval "$as_CACHEVAR=no" ;;-esac-fi-rm -f core conftest.err conftest.$ac_objext conftest.beam conftest.$ac_ext-  CFLAGS=$ax_check_save_flags ;;-esac-fi-eval ac_res=\$$as_CACHEVAR-	       { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_res" >&5-printf "%s\n" "$ac_res" >&6; }-if eval test \"x\$"$as_CACHEVAR"\" = x"yes"-then :-  CFLAGS="$CFLAGS -O3 -qansialias -w $xlc_opt"-else case e in #(-  e) CFLAGS="$CFLAGS -O3 -qansialias -w"-                echo "******************************************************"-                echo "*  You seem to have the IBM  C compiler.  It is      *"-                echo "*  recommended for best performance that you use:    *"-                echo "*                                                    *"-                echo "*    CFLAGS=-O3 -qarch=xxx -qtune=xxx -qansialias -w *"-                echo "*                      ^^^        ^^^                *"-                echo "*  where xxx is pwr2, pwr3, 604, or whatever kind of *"-                echo "*  CPU you have.  (Set the CFLAGS environment var.   *"-                echo "*  and re-run configure.)  For more info, man cc.    *"-                echo "******************************************************" ;;-esac-fi--         ;;--    intel) CFLAGS="$CFLAGS -O3 -ansi_alias"-	if test "x$acx_maxopt_portable" = xno; then-	  icc_archflag=unknown-	  icc_flags=""-	  case $host_cpu in-	    i686*|x86_64*)-              # icc accepts gcc assembly syntax, so these should work:--ac_ext=c-ac_cpp='$CPP $CPPFLAGS'-ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5'-ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5'-ac_compiler_gnu=$ac_cv_c_compiler_gnu--{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for x86 cpuid 0 output" >&5-printf %s "checking for x86 cpuid 0 output... " >&6; }-if test ${ax_cv_gcc_x86_cpuid_0+y}-then :-  printf %s "(cached) " >&6-else case e in #(-  e) if test "$cross_compiling" = yes-then :-  ax_cv_gcc_x86_cpuid_0=unknown-else case e in #(-  e) cat confdefs.h - <<_ACEOF >conftest.$ac_ext-/* end confdefs.h.  */-#include <stdio.h>-int-main (void)-{--     int op = 0, level = 0, eax, ebx, ecx, edx;-     FILE *f;-      __asm__ __volatile__ ("xchg %%ebx, %1\n"-        "cpuid\n"-        "xchg %%ebx, %1\n"-        : "=a" (eax), "=r" (ebx), "=c" (ecx), "=d" (edx)-        : "a" (op), "2" (level));--     f = fopen("conftest_cpuid", "w"); if (!f) return 1;-     fprintf(f, "%x:%x:%x:%x\n", eax, ebx, ecx, edx);-     fclose(f);-     return 0;--  ;-  return 0;-}-_ACEOF-if ac_fn_c_try_run "$LINENO"-then :-  ax_cv_gcc_x86_cpuid_0=`cat conftest_cpuid`; rm -f conftest_cpuid-else case e in #(-  e) ax_cv_gcc_x86_cpuid_0=unknown; rm -f conftest_cpuid ;;-esac-fi-rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \-  conftest.$ac_objext conftest.beam conftest.$ac_ext ;;-esac-fi- ;;-esac-fi-{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ax_cv_gcc_x86_cpuid_0" >&5-printf "%s\n" "$ax_cv_gcc_x86_cpuid_0" >&6; }-ac_ext=c-ac_cpp='$CPP $CPPFLAGS'-ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5'-ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5'-ac_compiler_gnu=$ac_cv_c_compiler_gnu-----ac_ext=c-ac_cpp='$CPP $CPPFLAGS'-ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5'-ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5'-ac_compiler_gnu=$ac_cv_c_compiler_gnu--{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for x86 cpuid 1 output" >&5-printf %s "checking for x86 cpuid 1 output... " >&6; }-if test ${ax_cv_gcc_x86_cpuid_1+y}-then :-  printf %s "(cached) " >&6-else case e in #(-  e) if test "$cross_compiling" = yes-then :-  ax_cv_gcc_x86_cpuid_1=unknown-else case e in #(-  e) cat confdefs.h - <<_ACEOF >conftest.$ac_ext-/* end confdefs.h.  */-#include <stdio.h>-int-main (void)-{--     int op = 1, level = 0, eax, ebx, ecx, edx;-     FILE *f;-      __asm__ __volatile__ ("xchg %%ebx, %1\n"-        "cpuid\n"-        "xchg %%ebx, %1\n"-        : "=a" (eax), "=r" (ebx), "=c" (ecx), "=d" (edx)-        : "a" (op), "2" (level));--     f = fopen("conftest_cpuid", "w"); if (!f) return 1;-     fprintf(f, "%x:%x:%x:%x\n", eax, ebx, ecx, edx);-     fclose(f);-     return 0;--  ;-  return 0;-}-_ACEOF-if ac_fn_c_try_run "$LINENO"-then :-  ax_cv_gcc_x86_cpuid_1=`cat conftest_cpuid`; rm -f conftest_cpuid-else case e in #(-  e) ax_cv_gcc_x86_cpuid_1=unknown; rm -f conftest_cpuid ;;-esac-fi-rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \-  conftest.$ac_objext conftest.beam conftest.$ac_ext ;;-esac-fi- ;;-esac-fi-{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ax_cv_gcc_x86_cpuid_1" >&5-printf "%s\n" "$ax_cv_gcc_x86_cpuid_1" >&6; }-ac_ext=c-ac_cpp='$CPP $CPPFLAGS'-ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5'-ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5'-ac_compiler_gnu=$ac_cv_c_compiler_gnu----	      case $ax_cv_gcc_x86_cpuid_0 in # see AX_GCC_ARCHFLAG-                *:756e6547:6c65746e:49656e69) # Intel-                  case $ax_cv_gcc_x86_cpuid_1 in-		    *0?6[78ab]?:*:*:*|?6[78ab]?:*:*:*|6[78ab]?:*:*:*) icc_flags="-xK" ;;-		    *0?6[9d]?:*:*:*|?6[9d]?:*:*:*|6[9d]?:*:*:*|*1?65?:*:*:*) icc_flags="-xSSE2 -xB -xK" ;;-		    *0?6e?:*:*:*|?6e?:*:*:*|6e?:*:*:*) icc_flags="-xSSE3 -xP -xO -xB -xK" ;;-		    *0?6f?:*:*:*|?6f?:*:*:*|6f?:*:*:*|*1?66?:*:*:*) icc_flags="-xSSSE3 -xT -xB -xK" ;;-		    *1?6[7d]?:*:*:*) icc_flags="-xSSE4.1 -xS -xT -xB -xK" ;;-		    *1?6[aef]?:*:*:*|*2?6[5cef]?:*:*:*) icc_flags="-xSSE4.2 -xS -xT -xB -xK" ;;-		    *2?6[ad]?:*:*:*) icc_flags="-xAVX -SSE4.2 -xS -xT -xB -xK" ;;-		    *3?6[ae]?:*:*:*) icc_flags="-xCORE-AVX-I -xAVX -SSE4.2 -xS -xT -xB -xK" ;;-		    *3?6[cf]?:*:*:*|*4?6[56]?:*:*:*) icc_flags="-xCORE-AVX2 -xCORE-AVX-I -xAVX -SSE4.2 -xS -xT -xB -xK" ;;-		    *000?f[346]?:*:*:*|?f[346]?:*:*:*|f[346]?:*:*:*) icc_flags="-xSSE3 -xP -xO -xN -xW -xK" ;;-		    *00??f??:*:*:*|??f??:*:*:*|?f??:*:*:*|f??:*:*:*) icc_flags="-xSSE2 -xN -xW -xK" ;;-                  esac ;;-              esac ;;-          esac-          if test "x$icc_flags" != x; then-            for flag in $icc_flags; do-              as_CACHEVAR=`printf "%s\n" "ax_cv_check_cflags__$flag" | sed "$as_sed_sh"`-{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking whether the C compiler accepts $flag" >&5-printf %s "checking whether the C compiler accepts $flag... " >&6; }-if eval test \${$as_CACHEVAR+y}-then :-  printf %s "(cached) " >&6-else case e in #(-  e)-  ax_check_save_flags=$CFLAGS-  if test x"$GCC" = xyes ; then-    add_gnu_werror="-Werror"-  fi-  CFLAGS="$CFLAGS  $flag $add_gnu_werror"-  cat confdefs.h - <<_ACEOF >conftest.$ac_ext-/* end confdefs.h.  */--int-main (void)-{--  ;-  return 0;-}-_ACEOF-if ac_fn_c_try_compile "$LINENO"-then :-  eval "$as_CACHEVAR=yes"-else case e in #(-  e) eval "$as_CACHEVAR=no" ;;-esac-fi-rm -f core conftest.err conftest.$ac_objext conftest.beam conftest.$ac_ext-  CFLAGS=$ax_check_save_flags ;;-esac-fi-eval ac_res=\$$as_CACHEVAR-	       { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_res" >&5-printf "%s\n" "$ac_res" >&6; }-if eval test \"x\$"$as_CACHEVAR"\" = x"yes"-then :-  icc_archflag=$flag; break-else case e in #(-  e) : ;;-esac-fi--            done-          fi-          { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for icc architecture flag" >&5-printf %s "checking for icc architecture flag... " >&6; }-	  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $icc_archflag" >&5-printf "%s\n" "$icc_archflag" >&6; }-          if test "x$icc_archflag" != xunknown; then-            CFLAGS="$CFLAGS $icc_archflag"-          fi-        fi-	;;--    nvhpc)-     # default optimization flags for nvhpc-     CFLAGS="$CFLAGS -O3"-     ;;--    gnu)-     # default optimization flags for gcc on all systems-     CFLAGS="$CFLAGS -O3 -fomit-frame-pointer"--     # -malign-double for x86 systems-     # LIBFFI_LOCAL: don't do this.-     # The testsuite doesn't use these flags and we'll get test failures.-     # AX_CHECK_COMPILE_FLAG(-malign-double, CFLAGS="$CFLAGS -malign-double")--     #  -fstrict-aliasing for gcc-2.95+-     { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking whether the C compiler accepts -fstrict-aliasing" >&5-printf %s "checking whether the C compiler accepts -fstrict-aliasing... " >&6; }-if test ${ax_cv_check_cflags___fstrict_aliasing+y}-then :-  printf %s "(cached) " >&6-else case e in #(-  e)-  ax_check_save_flags=$CFLAGS-  if test x"$GCC" = xyes ; then-    add_gnu_werror="-Werror"-  fi-  CFLAGS="$CFLAGS  -fstrict-aliasing $add_gnu_werror"-  cat confdefs.h - <<_ACEOF >conftest.$ac_ext-/* end confdefs.h.  */--int-main (void)-{--  ;-  return 0;-}-_ACEOF-if ac_fn_c_try_compile "$LINENO"-then :-  ax_cv_check_cflags___fstrict_aliasing=yes-else case e in #(-  e) ax_cv_check_cflags___fstrict_aliasing=no ;;-esac-fi-rm -f core conftest.err conftest.$ac_objext conftest.beam conftest.$ac_ext-  CFLAGS=$ax_check_save_flags ;;-esac-fi-{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ax_cv_check_cflags___fstrict_aliasing" >&5-printf "%s\n" "$ax_cv_check_cflags___fstrict_aliasing" >&6; }-if test "x$ax_cv_check_cflags___fstrict_aliasing" = xyes-then :-  CFLAGS="$CFLAGS -fstrict-aliasing"-else case e in #(-  e) : ;;-esac-fi---     # note that we enable "unsafe" fp optimization with other compilers, too-     { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking whether the C compiler accepts -ffast-math" >&5-printf %s "checking whether the C compiler accepts -ffast-math... " >&6; }-if test ${ax_cv_check_cflags___ffast_math+y}-then :-  printf %s "(cached) " >&6-else case e in #(-  e)-  ax_check_save_flags=$CFLAGS-  if test x"$GCC" = xyes ; then-    add_gnu_werror="-Werror"-  fi-  CFLAGS="$CFLAGS  -ffast-math $add_gnu_werror"-  cat confdefs.h - <<_ACEOF >conftest.$ac_ext-/* end confdefs.h.  */--int-main (void)-{--  ;-  return 0;-}-_ACEOF-if ac_fn_c_try_compile "$LINENO"-then :-  ax_cv_check_cflags___ffast_math=yes-else case e in #(-  e) ax_cv_check_cflags___ffast_math=no ;;-esac-fi-rm -f core conftest.err conftest.$ac_objext conftest.beam conftest.$ac_ext-  CFLAGS=$ax_check_save_flags ;;-esac-fi-{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ax_cv_check_cflags___ffast_math" >&5-printf "%s\n" "$ax_cv_check_cflags___ffast_math" >&6; }-if test "x$ax_cv_check_cflags___ffast_math" = xyes-then :-  CFLAGS="$CFLAGS -ffast-math"-else case e in #(-  e) : ;;-esac-fi---------# Check whether --with-gcc-arch was given.-if test ${with_gcc_arch+y}-then :-  withval=$with_gcc_arch; ax_gcc_arch=$withval-else case e in #(-  e) ax_gcc_arch=yes ;;-esac-fi---{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for gcc architecture flag" >&5-printf %s "checking for gcc architecture flag... " >&6; }-{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: " >&5-printf "%s\n" "" >&6; }-if test ${ax_cv_gcc_archflag+y}-then :-  printf %s "(cached) " >&6-else case e in #(-  e)-ax_cv_gcc_archflag="unknown"--if test "$GCC" = yes; then--if test "x$ax_gcc_arch" = xyes; then-ax_gcc_arch=""-if test "$cross_compiling" = no; then-case $host_cpu in-  i[3456]86*|x86_64*|amd64*) # use cpuid codes--ac_ext=c-ac_cpp='$CPP $CPPFLAGS'-ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5'-ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5'-ac_compiler_gnu=$ac_cv_c_compiler_gnu--{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for x86 cpuid 0 output" >&5-printf %s "checking for x86 cpuid 0 output... " >&6; }-if test ${ax_cv_gcc_x86_cpuid_0+y}-then :-  printf %s "(cached) " >&6-else case e in #(-  e) if test "$cross_compiling" = yes-then :-  ax_cv_gcc_x86_cpuid_0=unknown-else case e in #(-  e) cat confdefs.h - <<_ACEOF >conftest.$ac_ext-/* end confdefs.h.  */-#include <stdio.h>-int-main (void)-{--     int op = 0, level = 0, eax, ebx, ecx, edx;-     FILE *f;-      __asm__ __volatile__ ("xchg %%ebx, %1\n"-        "cpuid\n"-        "xchg %%ebx, %1\n"-        : "=a" (eax), "=r" (ebx), "=c" (ecx), "=d" (edx)-        : "a" (op), "2" (level));--     f = fopen("conftest_cpuid", "w"); if (!f) return 1;-     fprintf(f, "%x:%x:%x:%x\n", eax, ebx, ecx, edx);-     fclose(f);-     return 0;--  ;-  return 0;-}-_ACEOF-if ac_fn_c_try_run "$LINENO"-then :-  ax_cv_gcc_x86_cpuid_0=`cat conftest_cpuid`; rm -f conftest_cpuid-else case e in #(-  e) ax_cv_gcc_x86_cpuid_0=unknown; rm -f conftest_cpuid ;;-esac-fi-rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \-  conftest.$ac_objext conftest.beam conftest.$ac_ext ;;-esac-fi- ;;-esac-fi-{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ax_cv_gcc_x86_cpuid_0" >&5-printf "%s\n" "$ax_cv_gcc_x86_cpuid_0" >&6; }-ac_ext=c-ac_cpp='$CPP $CPPFLAGS'-ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5'-ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5'-ac_compiler_gnu=$ac_cv_c_compiler_gnu-----ac_ext=c-ac_cpp='$CPP $CPPFLAGS'-ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5'-ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5'-ac_compiler_gnu=$ac_cv_c_compiler_gnu--{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for x86 cpuid 1 output" >&5-printf %s "checking for x86 cpuid 1 output... " >&6; }-if test ${ax_cv_gcc_x86_cpuid_1+y}-then :-  printf %s "(cached) " >&6-else case e in #(-  e) if test "$cross_compiling" = yes-then :-  ax_cv_gcc_x86_cpuid_1=unknown-else case e in #(-  e) cat confdefs.h - <<_ACEOF >conftest.$ac_ext-/* end confdefs.h.  */-#include <stdio.h>-int-main (void)-{--     int op = 1, level = 0, eax, ebx, ecx, edx;-     FILE *f;-      __asm__ __volatile__ ("xchg %%ebx, %1\n"-        "cpuid\n"-        "xchg %%ebx, %1\n"-        : "=a" (eax), "=r" (ebx), "=c" (ecx), "=d" (edx)-        : "a" (op), "2" (level));--     f = fopen("conftest_cpuid", "w"); if (!f) return 1;-     fprintf(f, "%x:%x:%x:%x\n", eax, ebx, ecx, edx);-     fclose(f);-     return 0;--  ;-  return 0;-}-_ACEOF-if ac_fn_c_try_run "$LINENO"-then :-  ax_cv_gcc_x86_cpuid_1=`cat conftest_cpuid`; rm -f conftest_cpuid-else case e in #(-  e) ax_cv_gcc_x86_cpuid_1=unknown; rm -f conftest_cpuid ;;-esac-fi-rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \-  conftest.$ac_objext conftest.beam conftest.$ac_ext ;;-esac-fi- ;;-esac-fi-{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ax_cv_gcc_x86_cpuid_1" >&5-printf "%s\n" "$ax_cv_gcc_x86_cpuid_1" >&6; }-ac_ext=c-ac_cpp='$CPP $CPPFLAGS'-ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5'-ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5'-ac_compiler_gnu=$ac_cv_c_compiler_gnu----     case $ax_cv_gcc_x86_cpuid_0 in-       *:756e6547:6c65746e:49656e69) # Intel-          case $ax_cv_gcc_x86_cpuid_1 in-	    *5[4578]?:*:*:*) ax_gcc_arch="pentium-mmx pentium" ;;-	    *5[123]?:*:*:*) ax_gcc_arch=pentium ;;-	    *0?61?:*:*:*|?61?:*:*:*|61?:*:*:*) ax_gcc_arch=pentiumpro ;;-	    *0?6[356]?:*:*:*|?6[356]?:*:*:*|6[356]?:*:*:*) ax_gcc_arch="pentium2 pentiumpro" ;;-	    *0?6[78ab]?:*:*:*|?6[78ab]?:*:*:*|6[78ab]?:*:*:*) ax_gcc_arch="pentium3 pentiumpro" ;;-	    *0?6[9d]?:*:*:*|?6[9d]?:*:*:*|6[9d]?:*:*:*|*1?65?:*:*:*) ax_gcc_arch="pentium-m pentium3 pentiumpro" ;;-	    *0?6e?:*:*:*|?6e?:*:*:*|6e?:*:*:*) ax_gcc_arch="yonah pentium-m pentium3 pentiumpro" ;;-	    *0?6f?:*:*:*|?6f?:*:*:*|6f?:*:*:*|*1?66?:*:*:*) ax_gcc_arch="core2 pentium-m pentium3 pentiumpro" ;;-	    *1?6[7d]?:*:*:*) ax_gcc_arch="penryn core2 pentium-m pentium3 pentiumpro" ;;-	    *1?6[aef]?:*:*:*|*2?6e?:*:*:*) ax_gcc_arch="nehalem corei7 core2 pentium-m pentium3 pentiumpro" ;;-	    *2?6[5cf]?:*:*:*) ax_gcc_arch="westmere corei7 core2 pentium-m pentium3 pentiumpro" ;;-	    *2?6[ad]?:*:*:*) ax_gcc_arch="sandybridge corei7-avx corei7 core2 pentium-m pentium3 pentiumpro" ;;-	    *3?6[ae]?:*:*:*) ax_gcc_arch="ivybridge core-avx-i corei7-avx corei7 core2 pentium-m pentium3 pentiumpro" ;;-	    *3?6[cf]?:*:*:*|*4?6[56]?:*:*:*) ax_gcc_arch="haswell core-avx2 core-avx-i corei7-avx corei7 core2 pentium-m pentium3 pentiumpro" ;;-	    *3?6d?:*:*:*|*4?6[7f]?:*:*:*|*5?66?:*:*:*) ax_gcc_arch="broadwell core-avx2 core-avx-i corei7-avx corei7 core2 pentium-m pentium3 pentiumpro" ;;-	    *1?6c?:*:*:*|*2?6[67]?:*:*:*|*3?6[56]?:*:*:*) ax_gcc_arch="bonnell atom core2 pentium-m pentium3 pentiumpro" ;;-	    *3?67?:*:*:*|*[45]?6[ad]?:*:*:*) ax_gcc_arch="silvermont atom core2 pentium-m pentium3 pentiumpro" ;;-	    *000?f[012]?:*:*:*|?f[012]?:*:*:*|f[012]?:*:*:*) ax_gcc_arch="pentium4 pentiumpro" ;;-	    *000?f[346]?:*:*:*|?f[346]?:*:*:*|f[346]?:*:*:*) ax_gcc_arch="nocona prescott pentium4 pentiumpro" ;;-	    # fallback-	    *5??:*:*:*) ax_gcc_arch=pentium ;;-	    *??6??:*:*:*) ax_gcc_arch="core2 pentiumpro" ;;-	    *6??:*:*:*) ax_gcc_arch=pentiumpro ;;-	    *00??f??:*:*:*|??f??:*:*:*|?f??:*:*:*|f??:*:*:*) ax_gcc_arch="pentium4 pentiumpro" ;;-          esac ;;-       *:68747541:444d4163:69746e65) # AMD-          case $ax_cv_gcc_x86_cpuid_1 in-	    *5[67]?:*:*:*) ax_gcc_arch=k6 ;;-	    *5[8]?:*:*:*) ax_gcc_arch="k6-2 k6" ;;-	    *5[9d]?:*:*:*) ax_gcc_arch="k6-3 k6" ;;-	    *6[12]?:*:*:*) ax_gcc_arch="athlon k7" ;;-	    *6[34]?:*:*:*) ax_gcc_arch="athlon-tbird k7" ;;-	    *6[678a]?:*:*:*) ax_gcc_arch="athlon-xp athlon-4 athlon k7" ;;-	    *000?f[4578bcef]?:*:*:*|?f[4578bcef]?:*:*:*|f[4578bcef]?:*:*:*|*001?f[4578bcf]?:*:*:*|1?f[4578bcf]?:*:*:*) ax_gcc_arch="athlon64 k8" ;;-	    *002?f[13457bcf]?:*:*:*|2?f[13457bcf]?:*:*:*|*004?f[138bcf]?:*:*:*|4?f[138bcf]?:*:*:*|*005?f[df]?:*:*:*|5?f[df]?:*:*:*|*006?f[8bcf]?:*:*:*|6?f[8bcf]?:*:*:*|*007?f[cf]?:*:*:*|7?f[cf]?:*:*:*|*00c?f1?:*:*:*|c?f1?:*:*:*|*020?f3?:*:*:*|20?f3?:*:*:*) ax_gcc_arch="athlon64-sse3 k8-sse3 athlon64 k8" ;;-	    *010?f[245689a]?:*:*:*|10?f[245689a]?:*:*:*|*030?f1?:*:*:*|30?f1?:*:*:*) ax_gcc_arch="barcelona amdfam10 k8" ;;-	    *050?f[12]?:*:*:*|50?f[12]?:*:*:*) ax_gcc_arch="btver1 amdfam10 k8" ;;-	    *060?f1?:*:*:*|60?f1?:*:*:*) ax_gcc_arch="bdver1 amdfam10 k8" ;;-	    *060?f2?:*:*:*|60?f2?:*:*:*|*061?f[03]?:*:*:*|61?f[03]?:*:*:*) ax_gcc_arch="bdver2 bdver1 amdfam10 k8" ;;-	    *063?f0?:*:*:*|63?f0?:*:*:*) ax_gcc_arch="bdver3 bdver2 bdver1 amdfam10 k8" ;;-	    *07[03]?f0?:*:*:*|7[03]?f0?:*:*:*) ax_gcc_arch="btver2 btver1 amdfam10 k8" ;;-	    # fallback-	    *0[13]??f??:*:*:*|[13]??f??:*:*:*) ax_gcc_arch="barcelona amdfam10 k8" ;;-	    *020?f??:*:*:*|20?f??:*:*:*) ax_gcc_arch="athlon64-sse3 k8-sse3 athlon64 k8" ;;-	    *05??f??:*:*:*|5??f??:*:*:*) ax_gcc_arch="btver1 amdfam10 k8" ;;-	    *060?f??:*:*:*|60?f??:*:*:*) ax_gcc_arch="bdver1 amdfam10 k8" ;;-	    *061?f??:*:*:*|61?f??:*:*:*) ax_gcc_arch="bdver2 bdver1 amdfam10 k8" ;;-	    *06??f??:*:*:*|6??f??:*:*:*) ax_gcc_arch="bdver3 bdver2 bdver1 amdfam10 k8" ;;-	    *070?f??:*:*:*|70?f??:*:*:*) ax_gcc_arch="btver2 btver1 amdfam10 k8" ;;-	    *???f??:*:*:*) ax_gcc_arch="amdfam10 k8" ;;-          esac ;;-	*:746e6543:736c7561:48727561) # IDT / VIA (Centaur)-	   case $ax_cv_gcc_x86_cpuid_1 in-	     *54?:*:*:*) ax_gcc_arch=winchip-c6 ;;-	     *5[89]?:*:*:*) ax_gcc_arch=winchip2 ;;-	     *66?:*:*:*) ax_gcc_arch=winchip2 ;;-	     *6[78]?:*:*:*) ax_gcc_arch=c3 ;;-	     *6[9adf]?:*:*:*) ax_gcc_arch="c3-2 c3" ;;-	   esac ;;-     esac-     if test x"$ax_gcc_arch" = x; then # fallback-	case $host_cpu in-	  i586*) ax_gcc_arch=pentium ;;-	  i686*) ax_gcc_arch=pentiumpro ;;-        esac-     fi-     ;;--  sparc*)-     # Extract the first word of "prtdiag", so it can be a program name with args.-set dummy prtdiag; ac_word=$2-{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5-printf %s "checking for $ac_word... " >&6; }-if test ${ac_cv_path_PRTDIAG+y}-then :-  printf %s "(cached) " >&6-else case e in #(-  e) case $PRTDIAG in-  [\\/]* | ?:[\\/]*)-  ac_cv_path_PRTDIAG="$PRTDIAG" # Let the user override the test with a path.-  ;;-  *)-  as_save_IFS=$IFS; IFS=$PATH_SEPARATOR-as_dummy="$PATH:/usr/platform/`uname -i`/sbin/:/usr/platform/`uname -m`/sbin/"-for as_dir in $as_dummy-do-  IFS=$as_save_IFS-  case $as_dir in #(((-    '') as_dir=./ ;;-    */) ;;-    *) as_dir=$as_dir/ ;;-  esac-    for ac_exec_ext in '' $ac_executable_extensions; do-  if as_fn_executable_p "$as_dir$ac_word$ac_exec_ext"; then-    ac_cv_path_PRTDIAG="$as_dir$ac_word$ac_exec_ext"-    printf "%s\n" "$as_me:${as_lineno-$LINENO}: found $as_dir$ac_word$ac_exec_ext" >&5-    break 2-  fi-done-  done-IFS=$as_save_IFS--  test -z "$ac_cv_path_PRTDIAG" && ac_cv_path_PRTDIAG="prtdiag"-  ;;-esac ;;-esac-fi-PRTDIAG=$ac_cv_path_PRTDIAG-if test -n "$PRTDIAG"; then-  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $PRTDIAG" >&5-printf "%s\n" "$PRTDIAG" >&6; }-else-  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5-printf "%s\n" "no" >&6; }-fi---     cputype=`(((grep cpu /proc/cpuinfo | cut -d: -f2) ; ($PRTDIAG -v |grep -i sparc) ; grep -i cpu /var/run/dmesg.boot ) | head -n 1) 2> /dev/null`-     cputype=`echo "$cputype" | tr -d ' -' | $SED 's/SPARCIIi/SPARCII/' |tr $as_cr_LETTERS $as_cr_letters`-     case $cputype in-         *ultrasparciv*) ax_gcc_arch="ultrasparc4 ultrasparc3 ultrasparc v9" ;;-         *ultrasparciii*) ax_gcc_arch="ultrasparc3 ultrasparc v9" ;;-         *ultrasparc*) ax_gcc_arch="ultrasparc v9" ;;-         *supersparc*|*tms390z5[05]*) ax_gcc_arch="supersparc v8" ;;-         *hypersparc*|*rt62[056]*) ax_gcc_arch="hypersparc v8" ;;-         *cypress*) ax_gcc_arch=cypress ;;-     esac ;;--  alphaev5) ax_gcc_arch=ev5 ;;-  alphaev56) ax_gcc_arch=ev56 ;;-  alphapca56) ax_gcc_arch="pca56 ev56" ;;-  alphapca57) ax_gcc_arch="pca57 pca56 ev56" ;;-  alphaev6) ax_gcc_arch=ev6 ;;-  alphaev67) ax_gcc_arch=ev67 ;;-  alphaev68) ax_gcc_arch="ev68 ev67" ;;-  alphaev69) ax_gcc_arch="ev69 ev68 ev67" ;;-  alphaev7) ax_gcc_arch="ev7 ev69 ev68 ev67" ;;-  alphaev79) ax_gcc_arch="ev79 ev7 ev69 ev68 ev67" ;;--  powerpc*)-     cputype=`((grep cpu /proc/cpuinfo | head -n 1 | cut -d: -f2 | cut -d, -f1 | $SED 's/ //g') ; /usr/bin/machine ; /bin/machine; grep CPU /var/run/dmesg.boot | head -n 1 | cut -d" " -f2) 2> /dev/null`-     cputype=`echo $cputype | $SED -e 's/ppc//g;s/ *//g'`-     case $cputype in-       *750*) ax_gcc_arch="750 G3" ;;-       *740[0-9]*) ax_gcc_arch="$cputype 7400 G4" ;;-       *74[4-5][0-9]*) ax_gcc_arch="$cputype 7450 G4" ;;-       *74[0-9][0-9]*) ax_gcc_arch="$cputype G4" ;;-       *970*) ax_gcc_arch="970 G5 power4";;-       *POWER4*|*power4*|*gq*) ax_gcc_arch="power4 970";;-       *POWER5*|*power5*|*gr*|*gs*) ax_gcc_arch="power5 power4 970";;-       603ev|8240) ax_gcc_arch="$cputype 603e 603";;-       *POWER7*) ax_gcc_arch="power7";;-       *POWER8*) ax_gcc_arch="power8";;-       *POWER9*) ax_gcc_arch="power9";;-       *POWER10*) ax_gcc_arch="power10";;-       *) ax_gcc_arch=$cputype ;;-     esac-     ax_gcc_arch="$ax_gcc_arch powerpc"-     ;;-  aarch64)-     cpuimpl=`grep 'CPU implementer' /proc/cpuinfo 2> /dev/null | cut -d: -f2 | tr -d " " | head -n 1`-     cpuarch=`grep 'CPU architecture' /proc/cpuinfo 2> /dev/null | cut -d: -f2 | tr -d " " | head -n 1`-     cpuvar=`grep 'CPU variant' /proc/cpuinfo 2> /dev/null | cut -d: -f2 | tr -d " " | head -n 1`-     case $cpuimpl in-       0x42) case $cpuarch in-               8) case $cpuvar in-                    0x0) ax_gcc_arch="thunderx2t99 vulcan armv8.1-a armv8-a+lse armv8-a native" ;;-                  esac-                  ;;-             esac-             ;;-       0x43) case $cpuarch in-               8) case $cpuvar in-                    0x0) ax_gcc_arch="thunderx armv8-a native" ;;-                    0x1) ax_gcc_arch="thunderx+lse armv8.1-a armv8-a+lse armv8-a native" ;;-                  esac-                  ;;-             esac-             ;;-      esac-      ;;-esac-fi # not cross-compiling-fi # guess arch--if test "x$ax_gcc_arch" != x -a "x$ax_gcc_arch" != xno; then-if test "x$acx_maxopt_portable" = xyes; then # if we require portable code-  flag_prefixes="-mtune="-  if test "x$ax_cv_c_compiler_vendor" = xclang; then flag_prefixes="-march="; fi-  # -mcpu=$arch and m$arch generate nonportable code on every arch except-  # x86.  And some other arches (e.g. Alpha) don't accept -mtune.  Grrr.-  case $host_cpu in i*86|x86_64*|amd64*) flag_prefixes="$flag_prefixes -mcpu= -m";; esac-else-  flag_prefixes="-march= -mcpu= -m"-fi-for flag_prefix in $flag_prefixes; do-  for arch in $ax_gcc_arch; do-    flag="$flag_prefix$arch"-    as_CACHEVAR=`printf "%s\n" "ax_cv_check_cflags__$flag" | sed "$as_sed_sh"`-{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking whether the C compiler accepts $flag" >&5-printf %s "checking whether the C compiler accepts $flag... " >&6; }-if eval test \${$as_CACHEVAR+y}-then :-  printf %s "(cached) " >&6-else case e in #(-  e)-  ax_check_save_flags=$CFLAGS-  if test x"$GCC" = xyes ; then-    add_gnu_werror="-Werror"-  fi-  CFLAGS="$CFLAGS  $flag $add_gnu_werror"-  cat confdefs.h - <<_ACEOF >conftest.$ac_ext-/* end confdefs.h.  */--int-main (void)-{--  ;-  return 0;-}-_ACEOF-if ac_fn_c_try_compile "$LINENO"-then :-  eval "$as_CACHEVAR=yes"-else case e in #(-  e) eval "$as_CACHEVAR=no" ;;-esac-fi-rm -f core conftest.err conftest.$ac_objext conftest.beam conftest.$ac_ext-  CFLAGS=$ax_check_save_flags ;;-esac-fi-eval ac_res=\$$as_CACHEVAR-	       { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_res" >&5-printf "%s\n" "$ac_res" >&6; }-if eval test \"x\$"$as_CACHEVAR"\" = x"yes"-then :-  if test "x$ax_cv_c_compiler_vendor" = xclang; then-      if test "x$acx_maxopt_portable" = xyes; then-	if test "x$flag" = "x-march=$arch"; then flag=-mtune=$arch; fi-      fi-    fi; ax_cv_gcc_archflag=$flag; break-else case e in #(-  e) : ;;-esac-fi--  done-  test "x$ax_cv_gcc_archflag" = xunknown || break-done-fi--fi # $GCC=yes- ;;-esac-fi--{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for gcc architecture flag" >&5-printf %s "checking for gcc architecture flag... " >&6; }-{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ax_cv_gcc_archflag" >&5-printf "%s\n" "$ax_cv_gcc_archflag" >&6; }-if test "x$ax_cv_gcc_archflag" = xunknown; then-  :-else-  CFLAGS="$CFLAGS $ax_cv_gcc_archflag"-fi--     ;;--    microsoft)-     # default optimization flags for MSVC opt builds-     CFLAGS="$CFLAGS -O2"-     ;;-  esac--  if test -z "$CFLAGS"; then-	echo ""-	echo "********************************************************"-        echo "* WARNING: Don't know the best CFLAGS for this system  *"-        echo "* Use ./configure CFLAGS=... to specify your own flags *"-	echo "* (otherwise, a default of CFLAGS=-O3 will be used)    *"-	echo "********************************************************"-	echo ""-        CFLAGS="$CFLAGS -O3"-  fi--  as_CACHEVAR=`printf "%s\n" "ax_cv_check_cflags__$CFLAGS" | sed "$as_sed_sh"`-{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking whether the C compiler accepts $CFLAGS" >&5-printf %s "checking whether the C compiler accepts $CFLAGS... " >&6; }-if eval test \${$as_CACHEVAR+y}-then :-  printf %s "(cached) " >&6-else case e in #(-  e)-  ax_check_save_flags=$CFLAGS-  if test x"$GCC" = xyes ; then-    add_gnu_werror="-Werror"-  fi-  CFLAGS="$CFLAGS  $CFLAGS $add_gnu_werror"-  cat confdefs.h - <<_ACEOF >conftest.$ac_ext-/* end confdefs.h.  */--int-main (void)-{--  ;-  return 0;-}-_ACEOF-if ac_fn_c_try_compile "$LINENO"-then :-  eval "$as_CACHEVAR=yes"-else case e in #(-  e) eval "$as_CACHEVAR=no" ;;-esac-fi-rm -f core conftest.err conftest.$ac_objext conftest.beam conftest.$ac_ext-  CFLAGS=$ax_check_save_flags ;;-esac-fi-eval ac_res=\$$as_CACHEVAR-	       { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_res" >&5-printf "%s\n" "$ac_res" >&6; }-if eval test \"x\$"$as_CACHEVAR"\" = x"yes"-then :-  :-else case e in #(-  e)-	echo ""-        echo "********************************************************"-        echo "* WARNING: The guessed CFLAGS don't seem to work with  *"-        echo "* your compiler.                                       *"-        echo "* Use ./configure CFLAGS=... to specify your own flags *"-        echo "********************************************************"-        echo ""-   ;;-esac-fi---fi--# The AX_CFLAGS_WARN_ALL macro doesn't currently work for sunpro-# compiler.-if test "$ax_cv_c_compiler_vendor" != "sun"; then-      ac_ext=c-ac_cpp='$CPP $CPPFLAGS'-ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5'-ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5'-ac_compiler_gnu=$ac_cv_c_compiler_gnu------    { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking CFLAGS for most reasonable warnings" >&5-printf %s "checking CFLAGS for most reasonable warnings... " >&6; }-if test ${ac_cv_cflags_warn_all+y}-then :-  printf %s "(cached) " >&6-else case e in #(-  e)-	ac_cv_cflags_warn_all=""-	ac_save_cflags_warn_all_found="yes"-		case "$ax_cv_c_compiler_vendor" in #(-  intel) :-    ac_cv_cflags_warn_all="-w2" ;; #(-  ibm) :-    ac_cv_cflags_warn_all="-qsrcmsg -qinfo=all:noppt:noppc:noobs:nocnd" ;; #(-  pathscale) :-     ;; #(-  clang) :-    ac_cv_cflags_warn_all="-Wall" ;; #(-  cray) :-    ac_cv_cflags_warn_all="-h msglevel 2" ;; #(-  fujitsu) :-     ;; #(-  sdcc) :-     ;; #(-  sx) :-    ac_cv_cflags_warn_all="-pvctl,fullmsg" ;; #(-  portland) :-     ;; #(-  gnu) :-    ac_cv_cflags_warn_all="-Wall" ;; #(-  sun) :-    ac_cv_cflags_warn_all="-v" ;; #(-  hp) :-    ac_cv_cflags_warn_all="+w1" ;; #(-  dec) :-    ac_cv_cflags_warn_all="-verbose -w0 -warnprotos" ;; #(-  borland) :-     ;; #(-  comeau) :-     ;; #(-  kai) :-     ;; #(-  lcc) :-     ;; #(-  sgi) :-    ac_cv_cflags_warn_all="-fullwarn" ;; #(-  microsoft) :-     ;; #(-  metrowerks) :-     ;; #(-  watcom) :-     ;; #(-  tcc) :-     ;; #(-  unknown) :--				    ac_cv_cflags_warn_all=""-				    ac_save_cflags_warn_all_found="no"-				 ;; #(-  *) :--				    { printf "%s\n" "$as_me:${as_lineno-$LINENO}: WARNING: Unknown compiler vendor returned by AX_COMPILER_VENDOR" >&5-printf "%s\n" "$as_me: WARNING: Unknown compiler vendor returned by AX_COMPILER_VENDOR" >&2;}-				    ac_cv_cflags_warn_all=""-				    ac_save_cflags_warn_all_found="no"--	 ;;-esac--	if test "x$ac_save_cflags_warn_all_found" = "xyes"-then :-  	    if test "x$ac_cv_cflags_warn_all" != "x"-then :--if test ${CFLAGS+y}-then :--  case " $CFLAGS " in #(-  *" $ac_cv_cflags_warn_all "*) :-    { { printf "%s\n" "$as_me:${as_lineno-$LINENO}: : CFLAGS already contains \$ac_cv_cflags_warn_all"; } >&5-  (: CFLAGS already contains $ac_cv_cflags_warn_all) 2>&5-  ac_status=$?-  printf "%s\n" "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5-  test $ac_status = 0; } ;; #(-  *) :--     CFLAGS="$ac_cv_cflags_warn_all $CFLAGS"-     { { printf "%s\n" "$as_me:${as_lineno-$LINENO}: : CFLAGS=\"\$CFLAGS\""; } >&5-  (: CFLAGS="$CFLAGS") 2>&5-  ac_status=$?-  printf "%s\n" "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5-  test $ac_status = 0; }-     ;;-esac--else case e in #(-  e)-  CFLAGS=$ac_cv_cflags_warn_all-  { { printf "%s\n" "$as_me:${as_lineno-$LINENO}: : CFLAGS=\"\$CFLAGS\""; } >&5-  (: CFLAGS="$CFLAGS") 2>&5-  ac_status=$?-  printf "%s\n" "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5-  test $ac_status = 0; }-   ;;-esac-fi--fi--else case e in #(-  e) 	    true-	 ;;-esac-fi     ;;-esac-fi-{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_cv_cflags_warn_all" >&5-printf "%s\n" "$ac_cv_cflags_warn_all" >&6; }--    ac_ext=c-ac_cpp='$CPP $CPPFLAGS'-ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5'-ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5'-ac_compiler_gnu=$ac_cv_c_compiler_gnu---fi--if test "x$GCC" = "xyes"; then-  CFLAGS="$CFLAGS -fexceptions"-fi--cat > local.exp <<EOF-set CC_FOR_TARGET "$CC"-set CXX_FOR_TARGET "$CXX"-set compiler_vendor "$ax_cv_c_compiler_vendor"-EOF---{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking whether to enable maintainer-specific portions of Makefiles" >&5-printf %s "checking whether to enable maintainer-specific portions of Makefiles... " >&6; }-    # Check whether --enable-maintainer-mode was given.-if test ${enable_maintainer_mode+y}-then :-  enableval=$enable_maintainer_mode; USE_MAINTAINER_MODE=$enableval-else case e in #(-  e) USE_MAINTAINER_MODE=no ;;-esac-fi--  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $USE_MAINTAINER_MODE" >&5-printf "%s\n" "$USE_MAINTAINER_MODE" >&6; }-   if test $USE_MAINTAINER_MODE = yes; then-  MAINTAINER_MODE_TRUE=-  MAINTAINER_MODE_FALSE='#'-else-  MAINTAINER_MODE_TRUE='#'-  MAINTAINER_MODE_FALSE=-fi--  MAINT=$MAINTAINER_MODE_TRUE----ac_fn_c_check_header_compile "$LINENO" "sys/memfd.h" "ac_cv_header_sys_memfd_h" "$ac_includes_default"-if test "x$ac_cv_header_sys_memfd_h" = xyes-then :-  printf "%s\n" "#define HAVE_SYS_MEMFD_H 1" >>confdefs.h--fi--ac_fn_c_check_func "$LINENO" "memfd_create" "ac_cv_func_memfd_create"-if test "x$ac_cv_func_memfd_create" = xyes-then :-  printf "%s\n" "#define HAVE_MEMFD_CREATE 1" >>confdefs.h--fi---HAVE_LONG_DOUBLE_VARIANT=0--. ${srcdir}/configure.host--if test -n "${UNSUPPORTED}"; then-  as_fn_error $? "\"libffi has not been ported to $host.\"" "$LINENO" 5-fi------ac_fn_c_check_func "$LINENO" "memcpy" "ac_cv_func_memcpy"-if test "x$ac_cv_func_memcpy" = xyes-then :-  printf "%s\n" "#define HAVE_MEMCPY 1" >>confdefs.h--fi--ac_fn_c_check_header_compile "$LINENO" "alloca.h" "ac_cv_header_alloca_h" "$ac_includes_default"-if test "x$ac_cv_header_alloca_h" = xyes-then :-  printf "%s\n" "#define HAVE_ALLOCA_H 1" >>confdefs.h--fi---# The cast to long int works around a bug in the HP C Compiler-# version HP92453-01 B.11.11.23709.GP, which incorrectly rejects-# declarations like 'int a3[[(sizeof (unsigned char)) >= 0]];'.-# This bug is HP SR number 8606223364.-{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking size of double" >&5-printf %s "checking size of double... " >&6; }-if test ${ac_cv_sizeof_double+y}-then :-  printf %s "(cached) " >&6-else case e in #(-  e) if ac_fn_c_compute_int "$LINENO" "(long int) (sizeof (double))" "ac_cv_sizeof_double"        "$ac_includes_default"-then :--else case e in #(-  e) if test "$ac_cv_type_double" = yes; then-     { { printf "%s\n" "$as_me:${as_lineno-$LINENO}: error: in '$ac_pwd':" >&5-printf "%s\n" "$as_me: error: in '$ac_pwd':" >&2;}-as_fn_error 77 "cannot compute sizeof (double)-See 'config.log' for more details" "$LINENO" 5; }-   else-     ac_cv_sizeof_double=0-   fi ;;-esac-fi- ;;-esac-fi-{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_cv_sizeof_double" >&5-printf "%s\n" "$ac_cv_sizeof_double" >&6; }----printf "%s\n" "#define SIZEOF_DOUBLE $ac_cv_sizeof_double" >>confdefs.h---# The cast to long int works around a bug in the HP C Compiler-# version HP92453-01 B.11.11.23709.GP, which incorrectly rejects-# declarations like 'int a3[[(sizeof (unsigned char)) >= 0]];'.-# This bug is HP SR number 8606223364.-{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking size of long double" >&5-printf %s "checking size of long double... " >&6; }-if test ${ac_cv_sizeof_long_double+y}-then :-  printf %s "(cached) " >&6-else case e in #(-  e) if ac_fn_c_compute_int "$LINENO" "(long int) (sizeof (long double))" "ac_cv_sizeof_long_double"        "$ac_includes_default"-then :--else case e in #(-  e) if test "$ac_cv_type_long_double" = yes; then-     { { printf "%s\n" "$as_me:${as_lineno-$LINENO}: error: in '$ac_pwd':" >&5-printf "%s\n" "$as_me: error: in '$ac_pwd':" >&2;}-as_fn_error 77 "cannot compute sizeof (long double)-See 'config.log' for more details" "$LINENO" 5; }-   else-     ac_cv_sizeof_long_double=0-   fi ;;-esac-fi- ;;-esac-fi-{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_cv_sizeof_long_double" >&5-printf "%s\n" "$ac_cv_sizeof_long_double" >&6; }----printf "%s\n" "#define SIZEOF_LONG_DOUBLE $ac_cv_sizeof_long_double" >>confdefs.h----# Also AC_SUBST this variable for ffi.h.-if test -z "$HAVE_LONG_DOUBLE"; then-  HAVE_LONG_DOUBLE=0-  if test $ac_cv_sizeof_long_double != 0; then-    if test $HAVE_LONG_DOUBLE_VARIANT != 0; then--printf "%s\n" "#define HAVE_LONG_DOUBLE_VARIANT 1" >>confdefs.h--      HAVE_LONG_DOUBLE=1-    else-      if test $ac_cv_sizeof_double != $ac_cv_sizeof_long_double; then-        HAVE_LONG_DOUBLE=1--printf "%s\n" "#define HAVE_LONG_DOUBLE 1" >>confdefs.h--      fi-    fi-  fi-fi---- { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking whether byte ordering is bigendian" >&5-printf %s "checking whether byte ordering is bigendian... " >&6; }-if test ${ac_cv_c_bigendian+y}-then :-  printf %s "(cached) " >&6-else case e in #(-  e) ac_cv_c_bigendian=unknown-    # See if we're dealing with a universal compiler.-    cat confdefs.h - <<_ACEOF >conftest.$ac_ext-/* end confdefs.h.  */-#ifndef __APPLE_CC__-	       not a universal capable compiler-	     #endif-	     typedef int dummy;--_ACEOF-if ac_fn_c_try_compile "$LINENO"-then :--	# Check for potential -arch flags.  It is not universal unless-	# there are at least two -arch flags with different values.-	ac_arch=-	ac_prev=-	for ac_word in $CC $CFLAGS $CPPFLAGS $LDFLAGS; do-	 if test -n "$ac_prev"; then-	   case $ac_word in-	     i?86 | x86_64 | ppc | ppc64)-	       if test -z "$ac_arch" || test "$ac_arch" = "$ac_word"; then-		 ac_arch=$ac_word-	       else-		 ac_cv_c_bigendian=universal-		 break-	       fi-	       ;;-	   esac-	   ac_prev=-	 elif test "x$ac_word" = "x-arch"; then-	   ac_prev=arch-	 fi-       done-fi-rm -f core conftest.err conftest.$ac_objext conftest.beam conftest.$ac_ext-    if test $ac_cv_c_bigendian = unknown; then-      # See if sys/param.h defines the BYTE_ORDER macro.-      cat confdefs.h - <<_ACEOF >conftest.$ac_ext-/* end confdefs.h.  */-#include <sys/types.h>-	     #include <sys/param.h>--int-main (void)-{-#if ! (defined BYTE_ORDER && defined BIG_ENDIAN \\-		     && defined LITTLE_ENDIAN && BYTE_ORDER && BIG_ENDIAN \\-		     && LITTLE_ENDIAN)-	      bogus endian macros-	     #endif--  ;-  return 0;-}-_ACEOF-if ac_fn_c_try_compile "$LINENO"-then :-  # It does; now see whether it defined to BIG_ENDIAN or not.-	 cat confdefs.h - <<_ACEOF >conftest.$ac_ext-/* end confdefs.h.  */-#include <sys/types.h>-		#include <sys/param.h>--int-main (void)-{-#if BYTE_ORDER != BIG_ENDIAN-		 not big endian-		#endif--  ;-  return 0;-}-_ACEOF-if ac_fn_c_try_compile "$LINENO"-then :-  ac_cv_c_bigendian=yes-else case e in #(-  e) ac_cv_c_bigendian=no ;;-esac-fi-rm -f core conftest.err conftest.$ac_objext conftest.beam conftest.$ac_ext-fi-rm -f core conftest.err conftest.$ac_objext conftest.beam conftest.$ac_ext-    fi-    if test $ac_cv_c_bigendian = unknown; then-      # See if <limits.h> defines _LITTLE_ENDIAN or _BIG_ENDIAN (e.g., Solaris).-      cat confdefs.h - <<_ACEOF >conftest.$ac_ext-/* end confdefs.h.  */-#include <limits.h>--int-main (void)-{-#if ! (defined _LITTLE_ENDIAN || defined _BIG_ENDIAN)-	      bogus endian macros-	     #endif--  ;-  return 0;-}-_ACEOF-if ac_fn_c_try_compile "$LINENO"-then :-  # It does; now see whether it defined to _BIG_ENDIAN or not.-	 cat confdefs.h - <<_ACEOF >conftest.$ac_ext-/* end confdefs.h.  */-#include <limits.h>--int-main (void)-{-#ifndef _BIG_ENDIAN-		 not big endian-		#endif--  ;-  return 0;-}-_ACEOF-if ac_fn_c_try_compile "$LINENO"-then :-  ac_cv_c_bigendian=yes-else case e in #(-  e) ac_cv_c_bigendian=no ;;-esac-fi-rm -f core conftest.err conftest.$ac_objext conftest.beam conftest.$ac_ext-fi-rm -f core conftest.err conftest.$ac_objext conftest.beam conftest.$ac_ext-    fi-    if test $ac_cv_c_bigendian = unknown; then-      # Compile a test program.-      if test "$cross_compiling" = yes-then :-  # Try to guess by grepping values from an object file.-	 cat confdefs.h - <<_ACEOF >conftest.$ac_ext-/* end confdefs.h.  */-unsigned short int ascii_mm[] =-		  { 0x4249, 0x4765, 0x6E44, 0x6961, 0x6E53, 0x7953, 0 };-		unsigned short int ascii_ii[] =-		  { 0x694C, 0x5454, 0x656C, 0x6E45, 0x6944, 0x6E61, 0 };-		int use_ascii (int i) {-		  return ascii_mm[i] + ascii_ii[i];-		}-		unsigned short int ebcdic_ii[] =-		  { 0x89D3, 0xE3E3, 0x8593, 0x95C5, 0x89C4, 0x9581, 0 };-		unsigned short int ebcdic_mm[] =-		  { 0xC2C9, 0xC785, 0x95C4, 0x8981, 0x95E2, 0xA8E2, 0 };-		int use_ebcdic (int i) {-		  return ebcdic_mm[i] + ebcdic_ii[i];-		}-		int-		main (int argc, char **argv)-		{-		  /* Intimidate the compiler so that it does not-		     optimize the arrays away.  */-		  char *p = argv[0];-		  ascii_mm[1] = *p++; ebcdic_mm[1] = *p++;-		  ascii_ii[1] = *p++; ebcdic_ii[1] = *p++;-		  return use_ascii (argc) == use_ebcdic (*p);-		}-_ACEOF-if ac_fn_c_try_link "$LINENO"-then :-  if grep BIGenDianSyS conftest$ac_exeext >/dev/null; then-	      ac_cv_c_bigendian=yes-	    fi-	    if grep LiTTleEnDian conftest$ac_exeext >/dev/null ; then-	      if test "$ac_cv_c_bigendian" = unknown; then-		ac_cv_c_bigendian=no-	      else-		# finding both strings is unlikely to happen, but who knows?-		ac_cv_c_bigendian=unknown-	      fi-	    fi-fi-rm -f core conftest.err conftest.$ac_objext conftest.beam \-    conftest$ac_exeext conftest.$ac_ext-else case e in #(-  e) cat confdefs.h - <<_ACEOF >conftest.$ac_ext-/* end confdefs.h.  */-$ac_includes_default-int-main (void)-{--	     /* Are we little or big endian?  From Harbison&Steele.  */-	     union-	     {-	       long int l;-	       char c[sizeof (long int)];-	     } u;-	     u.l = 1;-	     return u.c[sizeof (long int) - 1] == 1;--  ;-  return 0;-}-_ACEOF-if ac_fn_c_try_run "$LINENO"-then :-  ac_cv_c_bigendian=no-else case e in #(-  e) ac_cv_c_bigendian=yes ;;-esac-fi-rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \-  conftest.$ac_objext conftest.beam conftest.$ac_ext ;;-esac-fi--    fi ;;-esac-fi-{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_cv_c_bigendian" >&5-printf "%s\n" "$ac_cv_c_bigendian" >&6; }- case $ac_cv_c_bigendian in #(-   yes)-     printf "%s\n" "#define WORDS_BIGENDIAN 1" >>confdefs.h-;; #(-   no)-      ;; #(-   universal)--printf "%s\n" "#define AC_APPLE_UNIVERSAL_BUILD 1" >>confdefs.h--     ;; #(-   *)-     as_fn_error $? "unknown endianness- presetting ac_cv_c_bigendian=no (or yes) will help" "$LINENO" 5 ;;- esac----  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking assembler .cfi pseudo-op support" >&5-printf %s "checking assembler .cfi pseudo-op support... " >&6; }-if test ${gcc_cv_as_cfi_pseudo_op+y}-then :-  printf %s "(cached) " >&6-else case e in #(-  e)  ac_ext=c-ac_cpp='$CPP $CPPFLAGS'-ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5'-ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5'-ac_compiler_gnu=$ac_cv_c_compiler_gnu--    cat confdefs.h - <<_ACEOF >conftest.$ac_ext-/* end confdefs.h.  */--        #ifdef _MSC_VER-        Nope.-        #endif-        int foo (void)-        {-          __asm__ (".cfi_remember_state\n\t"-                   ".cfi_restore_state\n\t");-          return 0;-        }--_ACEOF-if ac_fn_c_try_compile "$LINENO"-then :-  gcc_cv_as_cfi_pseudo_op=yes-else case e in #(-  e) gcc_cv_as_cfi_pseudo_op=no ;;-esac-fi-rm -f core conftest.err conftest.$ac_objext conftest.beam conftest.$ac_ext-    ac_ext=c-ac_cpp='$CPP $CPPFLAGS'-ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5'-ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5'-ac_compiler_gnu=$ac_cv_c_compiler_gnu--   ;;-esac-fi-{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $gcc_cv_as_cfi_pseudo_op" >&5-printf "%s\n" "$gcc_cv_as_cfi_pseudo_op" >&6; }--  if test "x$gcc_cv_as_cfi_pseudo_op" = xyes; then--printf "%s\n" "#define HAVE_AS_CFI_PSEUDO_OP 1" >>confdefs.h--  fi-----case "$TARGET" in-  SPARC)-    { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking assembler and linker support unaligned pc related relocs" >&5-printf %s "checking assembler and linker support unaligned pc related relocs... " >&6; }-if test ${libffi_cv_as_sparc_ua_pcrel+y}-then :-  printf %s "(cached) " >&6-else case e in #(-  e)-	save_CFLAGS="$CFLAGS"-	save_LDFLAGS="$LDFLAGS"-	CFLAGS="$CFLAGS -fpic"-	LDFLAGS="$LDFLAGS -shared"-	cat confdefs.h - <<_ACEOF >conftest.$ac_ext-/* end confdefs.h.  */-asm (".text; foo: nop; .data; .align 4; .byte 0; .uaword %r_disp32(foo); .text");-int-main (void)-{--  ;-  return 0;-}-_ACEOF-if ac_fn_c_try_link "$LINENO"-then :-  libffi_cv_as_sparc_ua_pcrel=yes-else case e in #(-  e) libffi_cv_as_sparc_ua_pcrel=no ;;-esac-fi-rm -f core conftest.err conftest.$ac_objext conftest.beam \-    conftest$ac_exeext conftest.$ac_ext-	CFLAGS="$save_CFLAGS"-	LDFLAGS="$save_LDFLAGS" ;;-esac-fi-{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $libffi_cv_as_sparc_ua_pcrel" >&5-printf "%s\n" "$libffi_cv_as_sparc_ua_pcrel" >&6; }-    if test "x$libffi_cv_as_sparc_ua_pcrel" = xyes; then--printf "%s\n" "#define HAVE_AS_SPARC_UA_PCREL 1" >>confdefs.h--    fi--    { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking assembler .register pseudo-op support" >&5-printf %s "checking assembler .register pseudo-op support... " >&6; }-if test ${libffi_cv_as_register_pseudo_op+y}-then :-  printf %s "(cached) " >&6-else case e in #(-  e)-       libffi_cv_as_register_pseudo_op=unknown-       # Check if we have .register-       cat confdefs.h - <<_ACEOF >conftest.$ac_ext-/* end confdefs.h.  */--int-main (void)-{-asm (".register %g2, #scratch");-  ;-  return 0;-}-_ACEOF-if ac_fn_c_try_compile "$LINENO"-then :-  libffi_cv_as_register_pseudo_op=yes-else case e in #(-  e) libffi_cv_as_register_pseudo_op=no ;;-esac-fi-rm -f core conftest.err conftest.$ac_objext conftest.beam conftest.$ac_ext-     ;;-esac-fi-{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $libffi_cv_as_register_pseudo_op" >&5-printf "%s\n" "$libffi_cv_as_register_pseudo_op" >&6; }-    if test "x$libffi_cv_as_register_pseudo_op" = xyes; then--printf "%s\n" "#define HAVE_AS_REGISTER_PSEUDO_OP 1" >>confdefs.h--    fi-    ;;--  X86*)-    { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking assembler supports pc related relocs" >&5-printf %s "checking assembler supports pc related relocs... " >&6; }-if test ${libffi_cv_as_x86_pcrel+y}-then :-  printf %s "(cached) " >&6-else case e in #(-  e)-	libffi_cv_as_x86_pcrel=no-	echo '.text; foo: nop; .data; .long foo-.; .text' > conftest.s-	if $CC $CFLAGS -c conftest.s > /dev/null 2>&1; then-	    libffi_cv_as_x86_pcrel=yes-	fi-	 ;;-esac-fi-{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $libffi_cv_as_x86_pcrel" >&5-printf "%s\n" "$libffi_cv_as_x86_pcrel" >&6; }-    if test "x$libffi_cv_as_x86_pcrel" = xyes; then--printf "%s\n" "#define HAVE_AS_X86_PCREL 1" >>confdefs.h--    fi-    ;;--  S390)-    { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking compiler uses zarch features" >&5-printf %s "checking compiler uses zarch features... " >&6; }-if test ${libffi_cv_as_s390_zarch+y}-then :-  printf %s "(cached) " >&6-else case e in #(-  e)-	libffi_cv_as_s390_zarch=no-	echo 'void foo(void) { bar(); bar(); }' > conftest.c-	if $CC $CFLAGS -S conftest.c > /dev/null 2>&1; then-	    if $GREP -q brasl conftest.s; then-	        libffi_cv_as_s390_zarch=yes-	    fi-	fi-	 ;;-esac-fi-{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $libffi_cv_as_s390_zarch" >&5-printf "%s\n" "$libffi_cv_as_s390_zarch" >&6; }-    if test "x$libffi_cv_as_s390_zarch" = xyes; then--printf "%s\n" "#define HAVE_AS_S390_ZARCH 1" >>confdefs.h--    fi-    ;;-  wasm64)-    if test -z "$WASM64_MEMORY64"; then-      WASM64_MEMORY64=1-    fi-    CFLAGS="$CFLAGS -sMEMORY64=$WASM64_MEMORY64"-    ;;-esac--{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking whether compiler supports pointer authentication" >&5-printf %s "checking whether compiler supports pointer authentication... " >&6; }-if test ${libffi_cv_as_ptrauth+y}-then :-  printf %s "(cached) " >&6-else case e in #(-  e)-   libffi_cv_as_ptrauth=unknown-   cat confdefs.h - <<_ACEOF >conftest.$ac_ext-/* end confdefs.h.  */--int-main (void)-{--#ifdef __clang__-# if __has_feature(ptrauth_calls)-#  define HAVE_ARM64E_PTRAUTH 1-# endif-#endif--#ifndef HAVE_ARM64E_PTRAUTH-# error Pointer authentication not supported-#endif--  ;-  return 0;-}-_ACEOF-if ac_fn_c_try_compile "$LINENO"-then :-  libffi_cv_as_ptrauth=yes-else case e in #(-  e) libffi_cv_as_ptrauth=no ;;-esac-fi-rm -f core conftest.err conftest.$ac_objext conftest.beam conftest.$ac_ext- ;;-esac-fi-{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $libffi_cv_as_ptrauth" >&5-printf "%s\n" "$libffi_cv_as_ptrauth" >&6; }-if test "x$libffi_cv_as_ptrauth" = xyes; then--printf "%s\n" "#define HAVE_ARM64E_PTRAUTH 1" >>confdefs.h--fi--# On PaX enable kernels that have MPROTECT enable we can't use PROT_EXEC;-# if EMUTRAMP is active too ffi could try mapping without PROT_EXEC,-# but the kernel needs to recognize the trampoline generated by ffi.-# Otherwise fallback to double mmap trick.-# Check whether --enable-pax_emutramp was given.-if test ${enable_pax_emutramp+y}-then :-  enableval=$enable_pax_emutramp; if test "$enable_pax_emutramp" = "yes"; then-    { printf "%s\n" "$as_me:${as_lineno-$LINENO}: WARNING: EMUTRAMP is experimental only.  Use --enable-pax_emutramp=experimental to enforce." >&5-printf "%s\n" "$as_me: WARNING: EMUTRAMP is experimental only.  Use --enable-pax_emutramp=experimental to enforce." >&2;}-  elif test "$enable_pax_emutramp" = "experimental"; then--printf "%s\n" "#define FFI_MMAP_EXEC_EMUTRAMP_PAX 1" >>confdefs.h--  fi-fi---{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for _ prefix in compiled symbols" >&5-printf %s "checking for _ prefix in compiled symbols... " >&6; }-if test ${lt_cv_sys_symbol_underscore+y}-then :-  printf %s "(cached) " >&6-else case e in #(-  e) lt_cv_sys_symbol_underscore=no-  cat > conftest.$ac_ext <<_LT_EOF-void nm_test_func(){}-int main(void){nm_test_func;return 0;}-_LT_EOF-  if { { eval echo "\"\$as_me\":${as_lineno-$LINENO}: \"$ac_compile\""; } >&5-  (eval $ac_compile) 2>&5-  ac_status=$?-  printf "%s\n" "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5-  test $ac_status = 0; }; then-    # Now try to grab the symbols.-    ac_nlist=conftest.nm-    if { { eval echo "\"\$as_me\":${as_lineno-$LINENO}: \"$NM conftest.$ac_objext \| $lt_cv_sys_global_symbol_pipe \> $ac_nlist\""; } >&5-  (eval $NM conftest.$ac_objext \| $lt_cv_sys_global_symbol_pipe \> $ac_nlist) 2>&5-  ac_status=$?-  printf "%s\n" "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5-  test $ac_status = 0; } && test -s "$ac_nlist"; then-      # See whether the symbols have a leading underscore.-      if grep '^. _nm_test_func' "$ac_nlist" >/dev/null; then-        lt_cv_sys_symbol_underscore=yes-      else-        if grep '^. nm_test_func ' "$ac_nlist" >/dev/null; then-	  :-        else-	  echo "configure: cannot find nm_test_func in $ac_nlist" >&5-        fi-      fi-    else-      echo "configure: cannot run $lt_cv_sys_global_symbol_pipe" >&5-    fi-  else-    echo "configure: failed program was:" >&5-    cat conftest.c >&5-  fi-  rm -rf conftest*-   ;;-esac-fi-{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $lt_cv_sys_symbol_underscore" >&5-printf "%s\n" "$lt_cv_sys_symbol_underscore" >&6; }-  sys_symbol_underscore=$lt_cv_sys_symbol_underscore---if test "x$sys_symbol_underscore" = xyes; then--printf "%s\n" "#define SYMBOL_UNDERSCORE 1" >>confdefs.h--fi--FFI_EXEC_TRAMPOLINE_TABLE=0-case "$target" in-     *arm*-apple-* | aarch64-apple-*)-       FFI_EXEC_TRAMPOLINE_TABLE=1--printf "%s\n" "#define FFI_EXEC_TRAMPOLINE_TABLE 1" >>confdefs.h--     ;;-     *-apple-* | *-*-dragonfly* | *-*-freebsd* | *-*-kfreebsd* | *-*-openbsd* | *-pc-solaris* | *-linux-android*)--printf "%s\n" "#define FFI_MMAP_EXEC_WRIT 1" >>confdefs.h--     ;;-esac- if test x$FFI_EXEC_TRAMPOLINE_TABLE = x1; then-  FFI_EXEC_TRAMPOLINE_TABLE_TRUE=-  FFI_EXEC_TRAMPOLINE_TABLE_FALSE='#'-else-  FFI_EXEC_TRAMPOLINE_TABLE_TRUE='#'-  FFI_EXEC_TRAMPOLINE_TABLE_FALSE=-fi----if test x$TARGET = xX86_64; then-    { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking toolchain supports unwind section type" >&5-printf %s "checking toolchain supports unwind section type... " >&6; }-if test ${libffi_cv_as_x86_64_unwind_section_type+y}-then :-  printf %s "(cached) " >&6-else case e in #(-  e)-        cat  > conftest1.s << EOF-.text-.globl foo-foo:-jmp bar-.section .eh_frame,"a",@unwind-bar:-EOF--        cat > conftest2.c  << EOF-extern void foo();-int main(){foo();}-EOF--	libffi_cv_as_x86_64_unwind_section_type=no-	# we ensure that we can compile _and_ link an assembly file containing an @unwind section-	# since the compiler can support it and not the linker (ie old binutils)-	if $CC -Wa,--fatal-warnings $CFLAGS -c conftest1.s > /dev/null 2>&1 && \-           $CC conftest2.c conftest1.o > /dev/null 2>&1 ; then-	    libffi_cv_as_x86_64_unwind_section_type=yes-	fi-	 ;;-esac-fi-{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $libffi_cv_as_x86_64_unwind_section_type" >&5-printf "%s\n" "$libffi_cv_as_x86_64_unwind_section_type" >&6; }-    if test "x$libffi_cv_as_x86_64_unwind_section_type" = xyes; then--printf "%s\n" "#define HAVE_AS_X86_64_UNWIND_SECTION_TYPE 1" >>confdefs.h--    fi-fi--if test "x$GCC" = "xyes"; then-  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking whether the C compiler accepts -fno-lto" >&5-printf %s "checking whether the C compiler accepts -fno-lto... " >&6; }-if test ${ax_cv_check_cflags___fno_lto+y}-then :-  printf %s "(cached) " >&6-else case e in #(-  e)-  ax_check_save_flags=$CFLAGS-  if test x"$GCC" = xyes ; then-    add_gnu_werror="-Werror"-  fi-  CFLAGS="$CFLAGS  -fno-lto $add_gnu_werror"-  cat confdefs.h - <<_ACEOF >conftest.$ac_ext-/* end confdefs.h.  */--int-main (void)-{--  ;-  return 0;-}-_ACEOF-if ac_fn_c_try_compile "$LINENO"-then :-  ax_cv_check_cflags___fno_lto=yes-else case e in #(-  e) ax_cv_check_cflags___fno_lto=no ;;-esac-fi-rm -f core conftest.err conftest.$ac_objext conftest.beam conftest.$ac_ext-  CFLAGS=$ax_check_save_flags ;;-esac-fi-{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ax_cv_check_cflags___fno_lto" >&5-printf "%s\n" "$ax_cv_check_cflags___fno_lto" >&6; }-if test "x$ax_cv_check_cflags___fno_lto" = xyes-then :-  libffi_cv_no_lto=-fno-lto-else case e in #(-  e) : ;;-esac-fi---  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking whether .eh_frame section should be read-only" >&5-printf %s "checking whether .eh_frame section should be read-only... " >&6; }-if test ${libffi_cv_ro_eh_frame+y}-then :-  printf %s "(cached) " >&6-else case e in #(-  e)-  	libffi_cv_ro_eh_frame=yes-  	echo 'extern void foo (void); void bar (void) { foo (); foo (); }' > conftest.c-  	if $CC $CFLAGS -c -fpic -fexceptions $libffi_cv_no_lto -o conftest.o conftest.c > /dev/null 2>&1; then-	    if $READELF -WS conftest.o 2>/dev/null | $GREP -q -n 'eh_frame .* WA'; then-	        libffi_cv_ro_eh_frame=no-	    fi-  	fi-  	rm -f conftest.*-       ;;-esac-fi-{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $libffi_cv_ro_eh_frame" >&5-printf "%s\n" "$libffi_cv_ro_eh_frame" >&6; }-  if test "x$libffi_cv_ro_eh_frame" = xyes; then--printf "%s\n" "#define HAVE_RO_EH_FRAME 1" >>confdefs.h---printf "%s\n" "#define EH_FRAME_FLAGS \"a\"" >>confdefs.h--  else--printf "%s\n" "#define EH_FRAME_FLAGS \"aw\"" >>confdefs.h--  fi--  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for __attribute__((visibility(\"hidden\")))" >&5-printf %s "checking for __attribute__((visibility(\"hidden\")))... " >&6; }-if test ${libffi_cv_hidden_visibility_attribute+y}-then :-  printf %s "(cached) " >&6-else case e in #(-  e)-  	echo 'int __attribute__ ((visibility ("hidden"))) foo (void) { return 1  ; }' > conftest.c-  	libffi_cv_hidden_visibility_attribute=no-  	if { ac_try='${CC-cc} -Werror -S conftest.c -o conftest.s 1>&5'-  { { eval echo "\"\$as_me\":${as_lineno-$LINENO}: \"$ac_try\""; } >&5-  (eval $ac_try) 2>&5-  ac_status=$?-  printf "%s\n" "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5-  test $ac_status = 0; }; }; then-  	    if $EGREP '(\.hidden|\.private_extern).*foo|foo.*,hidden' conftest.s >/dev/null; then-  		libffi_cv_hidden_visibility_attribute=yes-  	    fi-  	fi-  	rm -f conftest.*-       ;;-esac-fi-{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $libffi_cv_hidden_visibility_attribute" >&5-printf "%s\n" "$libffi_cv_hidden_visibility_attribute" >&6; }-  if test $libffi_cv_hidden_visibility_attribute = yes; then--printf "%s\n" "#define HAVE_HIDDEN_VISIBILITY_ATTRIBUTE 1" >>confdefs.h--  fi-fi------EXTRA_SOURCES=` printf " %s " "$SOURCES" | sed -E "s/ ([^ ]+)/src\/$TARGETDIR\/\1 /g" `--EXTRA_ASM_SOURCES=` printf " %s " "$ASM_SOURCES" | sed -E "s/ ([^ ]+)/src\/$TARGETDIR\/\1 /g" `---# Check whether --enable-debug was given.-if test ${enable_debug+y}-then :-  enableval=$enable_debug; if test "$enable_debug" = "yes"; then--printf "%s\n" "#define FFI_DEBUG 1" >>confdefs.h--  fi-fi-- if test "$enable_debug" = "yes"; then-  FFI_DEBUG_TRUE=-  FFI_DEBUG_FALSE='#'-else-  FFI_DEBUG_TRUE='#'-  FFI_DEBUG_FALSE=-fi---# Check whether --enable-structs was given.-if test ${enable_structs+y}-then :-  enableval=$enable_structs; if test "$enable_structs" = "no"; then--printf "%s\n" "#define FFI_NO_STRUCTS 1" >>confdefs.h--  fi-fi-- if test "$enable_debug" = "yes"; then-  FFI_DEBUG_TRUE=-  FFI_DEBUG_FALSE='#'-else-  FFI_DEBUG_TRUE='#'-  FFI_DEBUG_FALSE=-fi---# Check whether --enable-raw-api was given.-if test ${enable_raw_api+y}-then :-  enableval=$enable_raw_api; if test "$enable_raw_api" = "no"; then--printf "%s\n" "#define FFI_NO_RAW_API 1" >>confdefs.h--  fi-fi---# Check whether --enable-exec-static-tramp was given.-if test ${enable_exec_static_tramp+y}-then :-  enableval=$enable_exec_static_tramp;-fi---if test "$enable_exec_static_tramp" != no; then-case "$target" in-     *-cygwin* | *-msys*)-       # Only define static trampolines if we are using the cygwin runtime.-       # Will this need to be changed for mingw?-       if test "x$GCC" = "xyes"; then--printf "%s\n" "#define FFI_EXEC_STATIC_TRAMP 1" >>confdefs.h--       fi-     ;;-     *arm*-*-linux-* | aarch64*-*-linux-* | i*86-*-linux-* | x86_64-*-linux-* \-     | loongarch*-*-linux-* | s390x*-linux-* | powerpc*-linux-*)--printf "%s\n" "#define FFI_EXEC_STATIC_TRAMP 1" >>confdefs.h--     ;;-esac-fi--# Check whether --enable-purify-safety was given.-if test ${enable_purify_safety+y}-then :-  enableval=$enable_purify_safety; if test "$enable_purify_safety" = "yes"; then--printf "%s\n" "#define USING_PURIFY 1" >>confdefs.h--  fi-fi---# Check linker support.--  # If we're not using GNU ld, then there's no point in even trying these-  # tests.  Check for that first.  We should have already tested for gld-  # by now (in libtool), but require it now just to be safe...-  test -z "$SECTION_LDFLAGS" && SECTION_LDFLAGS=''-  test -z "$OPT_LDFLAGS" && OPT_LDFLAGS=''----  # The name set by libtool depends on the version of libtool.  Shame on us-  # for depending on an impl detail, but c'est la vie.  Older versions used-  # ac_cv_prog_gnu_ld, but now it's lt_cv_prog_gnu_ld, and is copied back on-  # top of with_gnu_ld (which is also set by --with-gnu-ld, so that actually-  # makes sense).  We'll test with_gnu_ld everywhere else, so if that isn't-  # set (hence we're using an older libtool), then set it.-  if test x${with_gnu_ld+set} != xset; then-    if test x${ac_cv_prog_gnu_ld+set} != xset; then-      # We got through "ac_require(ac_prog_ld)" and still not set?  Huh?-      with_gnu_ld=no-    else-      with_gnu_ld=$ac_cv_prog_gnu_ld-    fi-  fi--  # Start by getting the version number.  I think the libtool test already-  # does some of this, but throws away the result.-  libat_ld_is_gold=no-  if $LD --version 2>/dev/null | grep 'GNU gold'> /dev/null 2>&1; then-    libat_ld_is_gold=yes-  fi-  libat_ld_is_lld=no-  if $LD --version 2>/dev/null | grep 'LLD '> /dev/null 2>&1; then-    libat_ld_is_lld=yes-  fi-  libat_ld_is_mold=no-  if $LD --version 2>/dev/null | grep 'mold '> /dev/null 2>&1; then-    libat_ld_is_mold=yes-  fi--  ldver=`$LD --version 2>/dev/null |-         sed -e 's/GNU gold /GNU ld /;s/GNU ld version /GNU ld /;s/GNU ld ([^)]*) /GNU ld /;s/GNU ld \([0-9.][0-9.]*\).*/\1/; q'`--  libat_gnu_ld_version=`echo $ldver | \-         $AWK -F. '{ if (NF<3) $3=0; print ($1*100+$2)*100+$3 }'`--  # Set --gc-sections.-  if test "$with_gnu_ld" = "notbroken"; then-    # GNU ld it is!  Joy and bunny rabbits!--    # All these tests are for C++; save the language and the compiler flags.-    # Need to do this so that g++ won't try to link in libstdc++-    ac_test_CFLAGS="${CFLAGS+set}"-    ac_save_CFLAGS="$CFLAGS"-    CFLAGS='-x c++  -Wl,--gc-sections'--    # Check for -Wl,--gc-sections-    # XXX This test is broken at the moment, as symbols required for linking-    # are now in libsupc++ (not built yet).  In addition, this test has-    # cored on solaris in the past.  In addition, --gc-sections doesn't-    # really work at the moment (keeps on discarding used sections, first-    # .eh_frame and now some of the glibc sections for iconv).-    # Bzzzzt.  Thanks for playing, maybe next time.-    { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for ld that supports -Wl,--gc-sections" >&5-printf %s "checking for ld that supports -Wl,--gc-sections... " >&6; }-    if test "$cross_compiling" = yes-then :-  ac_sectionLDflags=yes-else case e in #(-  e) cat confdefs.h - <<_ACEOF >conftest.$ac_ext-/* end confdefs.h.  */--     int main(void)-     {-       try { throw 1; }-       catch (...) { };-       return 0;-     }--_ACEOF-if ac_fn_c_try_run "$LINENO"-then :-  ac_sectionLDflags=yes-else case e in #(-  e) ac_sectionLDflags=no ;;-esac-fi-rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \-  conftest.$ac_objext conftest.beam conftest.$ac_ext ;;-esac-fi--    if test "$ac_test_CFLAGS" = set; then-      CFLAGS="$ac_save_CFLAGS"-    else-      # this is the suspicious part-      CFLAGS=''-    fi-    if test "$ac_sectionLDflags" = "yes"; then-      SECTION_LDFLAGS="-Wl,--gc-sections $SECTION_LDFLAGS"-    fi-    { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_sectionLDflags" >&5-printf "%s\n" "$ac_sectionLDflags" >&6; }-  fi--  # Set linker optimization flags.-  if test x"$with_gnu_ld" = x"yes"; then-    OPT_LDFLAGS="-Wl,-O1 $OPT_LDFLAGS"-  fi------- # Check whether --enable-symvers was given.-if test ${enable_symvers+y}-then :-  enableval=$enable_symvers;-      case "$enableval" in-       yes|no|gnu*|sun) ;;-       *) as_fn_error $? "Unknown argument to enable/disable symvers" "$LINENO" 5 ;;-                          esac--else case e in #(-  e) enable_symvers=yes ;;-esac-fi----# If we never went through the LIBFFI_CHECK_LINKER_FEATURES macro, then we-# don't know enough about $LD to do tricks...---# Turn a 'yes' into a suitable default.-if test x$enable_symvers = xyes ; then-  # FIXME  The following test is too strict, in theory.-  if test $enable_shared = no || test "x$LD" = x; then-    enable_symvers=no-  else-    if test $with_gnu_ld = yes ; then-      enable_symvers=gnu-    else-      case ${target_os} in-        # Sun symbol versioning exists since Solaris 2.5.-        solaris2.[5-9]* | solaris2.1[0-9]*)-          enable_symvers=sun ;;-        *)-          enable_symvers=no ;;-      esac-    fi-  fi-fi--# Check if 'sun' was requested on non-Solaris 2 platforms.-if test x$enable_symvers = xsun ; then-  case ${target_os} in-    solaris2*)-      # All fine.-      ;;-    *)-      # Unlikely to work.-      { printf "%s\n" "$as_me:${as_lineno-$LINENO}: WARNING: === You have requested Sun symbol versioning, but" >&5-printf "%s\n" "$as_me: WARNING: === You have requested Sun symbol versioning, but" >&2;}-      { printf "%s\n" "$as_me:${as_lineno-$LINENO}: WARNING: === you are not targetting Solaris 2." >&5-printf "%s\n" "$as_me: WARNING: === you are not targetting Solaris 2." >&2;}-      { printf "%s\n" "$as_me:${as_lineno-$LINENO}: WARNING: === Symbol versioning will be disabled." >&5-printf "%s\n" "$as_me: WARNING: === Symbol versioning will be disabled." >&2;}-      enable_symvers=no-      ;;-  esac-fi--# Check to see if libgcc_s exists, indicating that shared libgcc is possible.-if test $enable_symvers != no; then-  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for shared libgcc" >&5-printf %s "checking for shared libgcc... " >&6; }-  ac_save_CFLAGS="$CFLAGS"-  CFLAGS=' -lgcc_s'-  cat confdefs.h - <<_ACEOF >conftest.$ac_ext-/* end confdefs.h.  */--int-main (void)-{-return 0;-  ;-  return 0;-}-_ACEOF-if ac_fn_c_try_link "$LINENO"-then :-  libat_shared_libgcc=yes-else case e in #(-  e) libat_shared_libgcc=no ;;-esac-fi-rm -f core conftest.err conftest.$ac_objext conftest.beam \-    conftest$ac_exeext conftest.$ac_ext-  CFLAGS="$ac_save_CFLAGS"-  if test $libat_shared_libgcc = no; then-    cat > conftest.c <<EOF-int main (void) { return 0; }-EOF-    libat_libgcc_s_suffix=`${CC-cc} $CFLAGS $CPPFLAGS $LDFLAGS \-			     -shared -shared-libgcc -o conftest.so \-			     conftest.c -v 2>&1 >/dev/null \-			     | sed -n 's/^.* -lgcc_s\([^ ]*\) .*$/\1/p'`-    rm -f conftest.c conftest.so-    if test x${libat_libgcc_s_suffix+set} = xset; then-      CFLAGS=" -lgcc_s$libat_libgcc_s_suffix"-      cat confdefs.h - <<_ACEOF >conftest.$ac_ext-/* end confdefs.h.  */--int-main (void)-{-return 0;-  ;-  return 0;-}-_ACEOF-if ac_fn_c_try_link "$LINENO"-then :-  libat_shared_libgcc=yes-fi-rm -f core conftest.err conftest.$ac_objext conftest.beam \-    conftest$ac_exeext conftest.$ac_ext-      CFLAGS="$ac_save_CFLAGS"-    fi-  fi-  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $libat_shared_libgcc" >&5-printf "%s\n" "$libat_shared_libgcc" >&6; }-fi--# For GNU ld, we need at least this version.  The format is described in-# LIBFFI_CHECK_LINKER_FEATURES above.-libat_min_gnu_ld_version=21400-# XXXXXXXXXXX libat_gnu_ld_version=21390--# Check to see if unspecified "yes" value can win, given results above.-# Change "yes" into either "no" or a style name.-if test $enable_symvers != no && test $libat_shared_libgcc = yes; then-  if test $with_gnu_ld = yes; then-    if test $libat_gnu_ld_version -ge $libat_min_gnu_ld_version ; then-      enable_symvers=gnu-    elif test $libat_ld_is_gold = yes ; then-      enable_symvers=gnu-    elif test $libat_ld_is_lld = yes ; then-      enable_symvers=gnu-    elif test $libat_ld_is_mold = yes ; then-      enable_symvers=gnu-    else-      # The right tools, the right setup, but too old.  Fallbacks?-      { printf "%s\n" "$as_me:${as_lineno-$LINENO}: WARNING: === Linker version $libat_gnu_ld_version is too old for" >&5-printf "%s\n" "$as_me: WARNING: === Linker version $libat_gnu_ld_version is too old for" >&2;}-      { printf "%s\n" "$as_me:${as_lineno-$LINENO}: WARNING: === full symbol versioning support in this release of GCC." >&5-printf "%s\n" "$as_me: WARNING: === full symbol versioning support in this release of GCC." >&2;}-      { printf "%s\n" "$as_me:${as_lineno-$LINENO}: WARNING: === You would need to upgrade your binutils to version" >&5-printf "%s\n" "$as_me: WARNING: === You would need to upgrade your binutils to version" >&2;}-      { printf "%s\n" "$as_me:${as_lineno-$LINENO}: WARNING: === $libat_min_gnu_ld_version or later and rebuild GCC." >&5-printf "%s\n" "$as_me: WARNING: === $libat_min_gnu_ld_version or later and rebuild GCC." >&2;}-      if test $libat_gnu_ld_version -ge 21200 ; then-        # Globbing fix is present, proper block support is not.-                        { printf "%s\n" "$as_me:${as_lineno-$LINENO}: WARNING: === Symbol versioning will be disabled." >&5-printf "%s\n" "$as_me: WARNING: === Symbol versioning will be disabled." >&2;}-        enable_symvers=no-      else-        # 2.11 or older.-        { printf "%s\n" "$as_me:${as_lineno-$LINENO}: WARNING: === Symbol versioning will be disabled." >&5-printf "%s\n" "$as_me: WARNING: === Symbol versioning will be disabled." >&2;}-        enable_symvers=no-      fi-    fi-  elif test $enable_symvers = sun; then-    : All interesting versions of Sun ld support sun style symbol versioning.-  else-    # just fail for now-    { printf "%s\n" "$as_me:${as_lineno-$LINENO}: WARNING: === You have requested some kind of symbol versioning, but" >&5-printf "%s\n" "$as_me: WARNING: === You have requested some kind of symbol versioning, but" >&2;}-    { printf "%s\n" "$as_me:${as_lineno-$LINENO}: WARNING: === either you are not using a supported linker, or you are" >&5-printf "%s\n" "$as_me: WARNING: === either you are not using a supported linker, or you are" >&2;}-    { printf "%s\n" "$as_me:${as_lineno-$LINENO}: WARNING: === not building a shared libgcc_s (which is required)." >&5-printf "%s\n" "$as_me: WARNING: === not building a shared libgcc_s (which is required)." >&2;}-    { printf "%s\n" "$as_me:${as_lineno-$LINENO}: WARNING: === Symbol versioning will be disabled." >&5-printf "%s\n" "$as_me: WARNING: === Symbol versioning will be disabled." >&2;}-    enable_symvers=no-  fi-fi-if test $enable_symvers = gnu; then--printf "%s\n" "#define LIBFFI_GNU_SYMBOL_VERSIONING 1" >>confdefs.h--fi-- if test $enable_symvers != no; then-  LIBFFI_BUILD_VERSIONED_SHLIB_TRUE=-  LIBFFI_BUILD_VERSIONED_SHLIB_FALSE='#'-else-  LIBFFI_BUILD_VERSIONED_SHLIB_TRUE='#'-  LIBFFI_BUILD_VERSIONED_SHLIB_FALSE=-fi-- if test $enable_symvers = gnu; then-  LIBFFI_BUILD_VERSIONED_SHLIB_GNU_TRUE=-  LIBFFI_BUILD_VERSIONED_SHLIB_GNU_FALSE='#'-else-  LIBFFI_BUILD_VERSIONED_SHLIB_GNU_TRUE='#'-  LIBFFI_BUILD_VERSIONED_SHLIB_GNU_FALSE=-fi-- if test $enable_symvers = sun; then-  LIBFFI_BUILD_VERSIONED_SHLIB_SUN_TRUE=-  LIBFFI_BUILD_VERSIONED_SHLIB_SUN_FALSE='#'-else-  LIBFFI_BUILD_VERSIONED_SHLIB_SUN_TRUE='#'-  LIBFFI_BUILD_VERSIONED_SHLIB_SUN_FALSE=-fi--{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: versioning on shared library symbols is $enable_symvers" >&5-printf "%s\n" "$as_me: versioning on shared library symbols is $enable_symvers" >&6;}---ac_config_files="$ac_config_files include/ffi.h"---EXTRA_LIBS=` printf " %s " "$LIBS" | sed -E 's/ -l([^ ]*)/\1 /g' `--ac_config_files="$ac_config_files libffi-clib.buildinfo"---cat >confcache <<\_ACEOF-# This file is a shell script that caches the results of configure-# tests run on this system so they can be shared between configure-# scripts and configure runs, see configure's option --config-cache.-# It is not useful on other systems.  If it contains results you don't-# want to keep, you may remove or edit it.-#-# config.status only pays attention to the cache file if you give it-# the --recheck option to rerun configure.-#-# 'ac_cv_env_foo' variables (set or unset) will be overridden when-# loading this file, other *unset* 'ac_cv_foo' will be assigned the-# following values.--_ACEOF--# The following way of writing the cache mishandles newlines in values,-# but we know of no workaround that is simple, portable, and efficient.-# So, we kill variables containing newlines.-# Ultrix sh set writes to stderr and can't be redirected directly,-# and sets the high bit in the cache file unless we assign to the vars.-(-  for ac_var in `(set) 2>&1 | sed -n 's/^\([a-zA-Z_][a-zA-Z0-9_]*\)=.*/\1/p'`; do-    eval ac_val=\$$ac_var-    case $ac_val in #(-    *${as_nl}*)-      case $ac_var in #(-      *_cv_*) { printf "%s\n" "$as_me:${as_lineno-$LINENO}: WARNING: cache variable $ac_var contains a newline" >&5-printf "%s\n" "$as_me: WARNING: cache variable $ac_var contains a newline" >&2;} ;;-      esac-      case $ac_var in #(-      _ | IFS | as_nl) ;; #(-      BASH_ARGV | BASH_SOURCE) eval $ac_var= ;; #(-      *) { eval $ac_var=; unset $ac_var;} ;;-      esac ;;-    esac-  done--  (set) 2>&1 |-    case $as_nl`(ac_space=' '; set) 2>&1` in #(-    *${as_nl}ac_space=\ *)-      # 'set' does not quote correctly, so add quotes: double-quote-      # substitution turns \\\\ into \\, and sed turns \\ into \.-      sed -n \-	"s/'/'\\\\''/g;-	  s/^\\([_$as_cr_alnum]*_cv_[_$as_cr_alnum]*\\)=\\(.*\\)/\\1='\\2'/p"-      ;; #(-    *)-      # 'set' quotes correctly as required by POSIX, so do not add quotes.-      sed -n "/^[_$as_cr_alnum]*_cv_[_$as_cr_alnum]*=/p"-      ;;-    esac |-    sort-) |-  sed '-     /^ac_cv_env_/b end-     t clear-     :clear-     s/^\([^=]*\)=\(.*[{}].*\)$/test ${\1+y} || &/-     t end-     s/^\([^=]*\)=\(.*\)$/\1=${\1=\2}/-     :end' >>confcache-if diff "$cache_file" confcache >/dev/null 2>&1; then :; else-  if test -w "$cache_file"; then-    if test "x$cache_file" != "x/dev/null"; then-      { printf "%s\n" "$as_me:${as_lineno-$LINENO}: updating cache $cache_file" >&5-printf "%s\n" "$as_me: updating cache $cache_file" >&6;}-      if test ! -f "$cache_file" || test -h "$cache_file"; then-	cat confcache >"$cache_file"-      else-        case $cache_file in #(-        */* | ?:*)-	  mv -f confcache "$cache_file"$$ &&-	  mv -f "$cache_file"$$ "$cache_file" ;; #(-        *)-	  mv -f confcache "$cache_file" ;;-	esac-      fi-    fi-  else-    { printf "%s\n" "$as_me:${as_lineno-$LINENO}: not updating unwritable cache $cache_file" >&5-printf "%s\n" "$as_me: not updating unwritable cache $cache_file" >&6;}-  fi-fi-rm -f confcache--test "x$prefix" = xNONE && prefix=$ac_default_prefix-# Let make expand exec_prefix.-test "x$exec_prefix" = xNONE && exec_prefix='${prefix}'--DEFS=-DHAVE_CONFIG_H--ac_libobjs=-ac_ltlibobjs=-U=-for ac_i in : $LIBOBJS; do test "x$ac_i" = x: && continue-  # 1. Remove the extension, and $U if already installed.-  ac_script='s/\$U\././;s/\.o$//;s/\.obj$//'-  ac_i=`printf "%s\n" "$ac_i" | sed "$ac_script"`-  # 2. Prepend LIBOBJDIR.  When used with automake>=1.10 LIBOBJDIR-  #    will be set to the directory where LIBOBJS objects are built.-  as_fn_append ac_libobjs " \${LIBOBJDIR}$ac_i\$U.$ac_objext"-  as_fn_append ac_ltlibobjs " \${LIBOBJDIR}$ac_i"'$U.lo'-done-LIBOBJS=$ac_libobjs--LTLIBOBJS=$ac_ltlibobjs---if test -z "${AMDEP_TRUE}" && test -z "${AMDEP_FALSE}"; then-  as_fn_error $? "conditional \"AMDEP\" was never defined.-Usually this means the macro was only invoked conditionally." "$LINENO" 5-fi-if test -z "${am__fastdepCCAS_TRUE}" && test -z "${am__fastdepCCAS_FALSE}"; then-  as_fn_error $? "conditional \"am__fastdepCCAS\" was never defined.-Usually this means the macro was only invoked conditionally." "$LINENO" 5-fi-if test -z "${MAINTAINER_MODE_TRUE}" && test -z "${MAINTAINER_MODE_FALSE}"; then-  as_fn_error $? "conditional \"MAINTAINER_MODE\" was never defined.-Usually this means the macro was only invoked conditionally." "$LINENO" 5-fi--if test -z "${FFI_EXEC_TRAMPOLINE_TABLE_TRUE}" && test -z "${FFI_EXEC_TRAMPOLINE_TABLE_FALSE}"; then-  as_fn_error $? "conditional \"FFI_EXEC_TRAMPOLINE_TABLE\" was never defined.-Usually this means the macro was only invoked conditionally." "$LINENO" 5-fi-if test -z "${FFI_DEBUG_TRUE}" && test -z "${FFI_DEBUG_FALSE}"; then-  as_fn_error $? "conditional \"FFI_DEBUG\" was never defined.-Usually this means the macro was only invoked conditionally." "$LINENO" 5-fi-if test -z "${FFI_DEBUG_TRUE}" && test -z "${FFI_DEBUG_FALSE}"; then-  as_fn_error $? "conditional \"FFI_DEBUG\" was never defined.-Usually this means the macro was only invoked conditionally." "$LINENO" 5-fi-if test -z "${LIBFFI_BUILD_VERSIONED_SHLIB_TRUE}" && test -z "${LIBFFI_BUILD_VERSIONED_SHLIB_FALSE}"; then-  as_fn_error $? "conditional \"LIBFFI_BUILD_VERSIONED_SHLIB\" was never defined.-Usually this means the macro was only invoked conditionally." "$LINENO" 5-fi-if test -z "${LIBFFI_BUILD_VERSIONED_SHLIB_GNU_TRUE}" && test -z "${LIBFFI_BUILD_VERSIONED_SHLIB_GNU_FALSE}"; then-  as_fn_error $? "conditional \"LIBFFI_BUILD_VERSIONED_SHLIB_GNU\" was never defined.-Usually this means the macro was only invoked conditionally." "$LINENO" 5-fi-if test -z "${LIBFFI_BUILD_VERSIONED_SHLIB_SUN_TRUE}" && test -z "${LIBFFI_BUILD_VERSIONED_SHLIB_SUN_FALSE}"; then-  as_fn_error $? "conditional \"LIBFFI_BUILD_VERSIONED_SHLIB_SUN\" was never defined.-Usually this means the macro was only invoked conditionally." "$LINENO" 5-fi--: "${CONFIG_STATUS=./config.status}"-ac_write_fail=0-ac_clean_files_save=$ac_clean_files-ac_clean_files="$ac_clean_files $CONFIG_STATUS"-{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: creating $CONFIG_STATUS" >&5-printf "%s\n" "$as_me: creating $CONFIG_STATUS" >&6;}-as_write_fail=0-cat >$CONFIG_STATUS <<_ASEOF || as_write_fail=1-#! $SHELL-# Generated by $as_me.-# Run this file to recreate the current configuration.-# Compiler output produced by configure, useful for debugging-# configure, is in config.log if it exists.--debug=false-ac_cs_recheck=false-ac_cs_silent=false--SHELL=\${CONFIG_SHELL-$SHELL}-export SHELL-_ASEOF-cat >>$CONFIG_STATUS <<\_ASEOF || as_write_fail=1-## -------------------- ##-## M4sh Initialization. ##-## -------------------- ##--# Be more Bourne compatible-DUALCASE=1; export DUALCASE # for MKS sh-if test ${ZSH_VERSION+y} && (emulate sh) >/dev/null 2>&1-then :-  emulate sh-  NULLCMD=:-  # Pre-4.2 versions of Zsh do word splitting on ${1+"$@"}, which-  # is contrary to our usage.  Disable this feature.-  alias -g '${1+"$@"}'='"$@"'-  setopt NO_GLOB_SUBST-else case e in #(-  e) case `(set -o) 2>/dev/null` in #(-  *posix*) :-    set -o posix ;; #(-  *) :-     ;;-esac ;;-esac-fi----# Reset variables that may have inherited troublesome values from-# the environment.--# IFS needs to be set, to space, tab, and newline, in precisely that order.-# (If _AS_PATH_WALK were called with IFS unset, it would have the-# side effect of setting IFS to empty, thus disabling word splitting.)-# Quoting is to prevent editors from complaining about space-tab.-as_nl='-'-export as_nl-IFS=" ""	$as_nl"--PS1='$ '-PS2='> '-PS4='+ '--# Ensure predictable behavior from utilities with locale-dependent output.-LC_ALL=C-export LC_ALL-LANGUAGE=C-export LANGUAGE--# We cannot yet rely on "unset" to work, but we need these variables-# to be unset--not just set to an empty or harmless value--now, to-# avoid bugs in old shells (e.g. pre-3.0 UWIN ksh).  This construct-# also avoids known problems related to "unset" and subshell syntax-# in other old shells (e.g. bash 2.01 and pdksh 5.2.14).-for as_var in BASH_ENV ENV MAIL MAILPATH CDPATH-do eval test \${$as_var+y} \-  && ( (unset $as_var) || exit 1) >/dev/null 2>&1 && unset $as_var || :-done--# Ensure that fds 0, 1, and 2 are open.-if (exec 3>&0) 2>/dev/null; then :; else exec 0</dev/null; fi-if (exec 3>&1) 2>/dev/null; then :; else exec 1>/dev/null; fi-if (exec 3>&2)            ; then :; else exec 2>/dev/null; fi--# The user is always right.-if ${PATH_SEPARATOR+false} :; then-  PATH_SEPARATOR=:-  (PATH='/bin;/bin'; FPATH=$PATH; sh -c :) >/dev/null 2>&1 && {-    (PATH='/bin:/bin'; FPATH=$PATH; sh -c :) >/dev/null 2>&1 ||-      PATH_SEPARATOR=';'-  }-fi---# Find who we are.  Look in the path if we contain no directory separator.-as_myself=-case $0 in #((-  *[\\/]* ) as_myself=$0 ;;-  *) as_save_IFS=$IFS; IFS=$PATH_SEPARATOR-for as_dir in $PATH-do-  IFS=$as_save_IFS-  case $as_dir in #(((-    '') as_dir=./ ;;-    */) ;;-    *) as_dir=$as_dir/ ;;-  esac-    test -r "$as_dir$0" && as_myself=$as_dir$0 && break-  done-IFS=$as_save_IFS--     ;;-esac-# We did not find ourselves, most probably we were run as 'sh COMMAND'-# in which case we are not to be found in the path.-if test "x$as_myself" = x; then-  as_myself=$0-fi-if test ! -f "$as_myself"; then-  printf "%s\n" "$as_myself: error: cannot find myself; rerun with an absolute file name" >&2-  exit 1-fi----# as_fn_error STATUS ERROR [LINENO LOG_FD]-# -----------------------------------------# Output "`basename $0`: error: ERROR" to stderr. If LINENO and LOG_FD are-# provided, also output the error to LOG_FD, referencing LINENO. Then exit the-# script with STATUS, using 1 if that was 0.-as_fn_error ()-{-  as_status=$1; test $as_status -eq 0 && as_status=1-  if test "$4"; then-    as_lineno=${as_lineno-"$3"} as_lineno_stack=as_lineno_stack=$as_lineno_stack-    printf "%s\n" "$as_me:${as_lineno-$LINENO}: error: $2" >&$4-  fi-  printf "%s\n" "$as_me: error: $2" >&2-  as_fn_exit $as_status-} # as_fn_error---# as_fn_set_status STATUS-# ------------------------# Set $? to STATUS, without forking.-as_fn_set_status ()-{-  return $1-} # as_fn_set_status--# as_fn_exit STATUS-# ------------------# Exit the shell with STATUS, even in a "trap 0" or "set -e" context.-as_fn_exit ()-{-  set +e-  as_fn_set_status $1-  exit $1-} # as_fn_exit--# as_fn_unset VAR-# ----------------# Portably unset VAR.-as_fn_unset ()-{-  { eval $1=; unset $1;}-}-as_unset=as_fn_unset--# as_fn_append VAR VALUE-# -----------------------# Append the text in VALUE to the end of the definition contained in VAR. Take-# advantage of any shell optimizations that allow amortized linear growth over-# repeated appends, instead of the typical quadratic growth present in naive-# implementations.-if (eval "as_var=1; as_var+=2; test x\$as_var = x12") 2>/dev/null-then :-  eval 'as_fn_append ()-  {-    eval $1+=\$2-  }'-else case e in #(-  e) as_fn_append ()-  {-    eval $1=\$$1\$2-  } ;;-esac-fi # as_fn_append--# as_fn_arith ARG...-# -------------------# Perform arithmetic evaluation on the ARGs, and store the result in the-# global $as_val. Take advantage of shells that can avoid forks. The arguments-# must be portable across $(()) and expr.-if (eval "test \$(( 1 + 1 )) = 2") 2>/dev/null-then :-  eval 'as_fn_arith ()-  {-    as_val=$(( $* ))-  }'-else case e in #(-  e) as_fn_arith ()-  {-    as_val=`expr "$@" || test $? -eq 1`-  } ;;-esac-fi # as_fn_arith---if expr a : '\(a\)' >/dev/null 2>&1 &&-   test "X`expr 00001 : '.*\(...\)'`" = X001; then-  as_expr=expr-else-  as_expr=false-fi--if (basename -- /) >/dev/null 2>&1 && test "X`basename -- / 2>&1`" = "X/"; then-  as_basename=basename-else-  as_basename=false-fi--if (as_dir=`dirname -- /` && test "X$as_dir" = X/) >/dev/null 2>&1; then-  as_dirname=dirname-else-  as_dirname=false-fi--as_me=`$as_basename -- "$0" ||-$as_expr X/"$0" : '.*/\([^/][^/]*\)/*$' \| \-	 X"$0" : 'X\(//\)$' \| \-	 X"$0" : 'X\(/\)' \| . 2>/dev/null ||-printf "%s\n" X/"$0" |-    sed '/^.*\/\([^/][^/]*\)\/*$/{-	    s//\1/-	    q-	  }-	  /^X\/\(\/\/\)$/{-	    s//\1/-	    q-	  }-	  /^X\/\(\/\).*/{-	    s//\1/-	    q-	  }-	  s/.*/./; q'`--# Avoid depending upon Character Ranges.-as_cr_letters='abcdefghijklmnopqrstuvwxyz'-as_cr_LETTERS='ABCDEFGHIJKLMNOPQRSTUVWXYZ'-as_cr_Letters=$as_cr_letters$as_cr_LETTERS-as_cr_digits='0123456789'-as_cr_alnum=$as_cr_Letters$as_cr_digits---# Determine whether it's possible to make 'echo' print without a newline.-# These variables are no longer used directly by Autoconf, but are AC_SUBSTed-# for compatibility with existing Makefiles.-ECHO_C= ECHO_N= ECHO_T=-case `echo -n x` in #(((((--n*)-  case `echo 'xy\c'` in-  *c*) ECHO_T='	';;	# ECHO_T is single tab character.-  xy)  ECHO_C='\c';;-  *)   echo `echo ksh88 bug on AIX 6.1` > /dev/null-       ECHO_T='	';;-  esac;;-*)-  ECHO_N='-n';;-esac--# For backward compatibility with old third-party macros, we provide-# the shell variables $as_echo and $as_echo_n.  New code should use-# AS_ECHO(["message"]) and AS_ECHO_N(["message"]), respectively.-as_echo='printf %s\n'-as_echo_n='printf %s'--rm -f conf$$ conf$$.exe conf$$.file-if test -d conf$$.dir; then-  rm -f conf$$.dir/conf$$.file-else-  rm -f conf$$.dir-  mkdir conf$$.dir 2>/dev/null-fi-if (echo >conf$$.file) 2>/dev/null; then-  if ln -s conf$$.file conf$$ 2>/dev/null; then-    as_ln_s='ln -s'-    # ... but there are two gotchas:-    # 1) On MSYS, both 'ln -s file dir' and 'ln file dir' fail.-    # 2) DJGPP < 2.04 has no symlinks; 'ln -s' creates a wrapper executable.-    # In both cases, we have to default to 'cp -pR'.-    ln -s conf$$.file conf$$.dir 2>/dev/null && test ! -f conf$$.exe ||-      as_ln_s='cp -pR'-  elif ln conf$$.file conf$$ 2>/dev/null; then-    as_ln_s=ln-  else-    as_ln_s='cp -pR'-  fi-else-  as_ln_s='cp -pR'-fi-rm -f conf$$ conf$$.exe conf$$.dir/conf$$.file conf$$.file-rmdir conf$$.dir 2>/dev/null---# as_fn_mkdir_p-# --------------# Create "$as_dir" as a directory, including parents if necessary.-as_fn_mkdir_p ()-{--  case $as_dir in #(-  -*) as_dir=./$as_dir;;-  esac-  test -d "$as_dir" || eval $as_mkdir_p || {-    as_dirs=-    while :; do-      case $as_dir in #(-      *\'*) as_qdir=`printf "%s\n" "$as_dir" | sed "s/'/'\\\\\\\\''/g"`;; #'(-      *) as_qdir=$as_dir;;-      esac-      as_dirs="'$as_qdir' $as_dirs"-      as_dir=`$as_dirname -- "$as_dir" ||-$as_expr X"$as_dir" : 'X\(.*[^/]\)//*[^/][^/]*/*$' \| \-	 X"$as_dir" : 'X\(//\)[^/]' \| \-	 X"$as_dir" : 'X\(//\)$' \| \-	 X"$as_dir" : 'X\(/\)' \| . 2>/dev/null ||-printf "%s\n" X"$as_dir" |-    sed '/^X\(.*[^/]\)\/\/*[^/][^/]*\/*$/{-	    s//\1/-	    q-	  }-	  /^X\(\/\/\)[^/].*/{-	    s//\1/-	    q-	  }-	  /^X\(\/\/\)$/{-	    s//\1/-	    q-	  }-	  /^X\(\/\).*/{-	    s//\1/-	    q-	  }-	  s/.*/./; q'`-      test -d "$as_dir" && break-    done-    test -z "$as_dirs" || eval "mkdir $as_dirs"-  } || test -d "$as_dir" || as_fn_error $? "cannot create directory $as_dir"---} # as_fn_mkdir_p-if mkdir -p . 2>/dev/null; then-  as_mkdir_p='mkdir -p "$as_dir"'-else-  test -d ./-p && rmdir ./-p-  as_mkdir_p=false-fi---# as_fn_executable_p FILE-# ------------------------# Test if FILE is an executable regular file.-as_fn_executable_p ()-{-  test -f "$1" && test -x "$1"-} # as_fn_executable_p-as_test_x='test -x'-as_executable_p=as_fn_executable_p--# Sed expression to map a string onto a valid CPP name.-as_sed_cpp="y%*$as_cr_letters%P$as_cr_LETTERS%;s%[^_$as_cr_alnum]%_%g"-as_tr_cpp="eval sed '$as_sed_cpp'" # deprecated--# Sed expression to map a string onto a valid variable name.-as_sed_sh="y%*+%pp%;s%[^_$as_cr_alnum]%_%g"-as_tr_sh="eval sed '$as_sed_sh'" # deprecated---exec 6>&1-## ----------------------------------- ##-## Main body of $CONFIG_STATUS script. ##-## ----------------------------------- ##-_ASEOF-test $as_write_fail = 0 && chmod +x $CONFIG_STATUS || ac_write_fail=1--cat >>$CONFIG_STATUS <<\_ACEOF || ac_write_fail=1-# Save the log message, to keep $0 and so on meaningful, and to-# report actual input values of CONFIG_FILES etc. instead of their-# values after options handling.-ac_log="-This file was extended by libffi $as_me 3.5.2, which was-generated by GNU Autoconf 2.72.  Invocation command line was--  CONFIG_FILES    = $CONFIG_FILES-  CONFIG_HEADERS  = $CONFIG_HEADERS-  CONFIG_LINKS    = $CONFIG_LINKS-  CONFIG_COMMANDS = $CONFIG_COMMANDS-  $ $0 $@--on `(hostname || uname -n) 2>/dev/null | sed 1q`-"--_ACEOF--case $ac_config_files in *"-"*) set x $ac_config_files; shift; ac_config_files=$*;;-esac--case $ac_config_headers in *"-"*) set x $ac_config_headers; shift; ac_config_headers=$*;;-esac---cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1-# Files that config.status was made for.-config_files="$ac_config_files"-config_headers="$ac_config_headers"-config_commands="$ac_config_commands"--_ACEOF--cat >>$CONFIG_STATUS <<\_ACEOF || ac_write_fail=1-ac_cs_usage="\-'$as_me' instantiates files and other configuration actions-from templates according to the current configuration.  Unless the files-and actions are specified as TAGs, all are instantiated by default.--Usage: $0 [OPTION]... [TAG]...--  -h, --help       print this help, then exit-  -V, --version    print version number and configuration settings, then exit-      --config     print configuration, then exit-  -q, --quiet, --silent-                   do not print progress messages-  -d, --debug      don't remove temporary files-      --recheck    update $as_me by reconfiguring in the same conditions-      --file=FILE[:TEMPLATE]-                   instantiate the configuration file FILE-      --header=FILE[:TEMPLATE]-                   instantiate the configuration header FILE--Configuration files:-$config_files--Configuration headers:-$config_headers--Configuration commands:-$config_commands--Report bugs to <http://github.com/libffi/libffi/issues>."--_ACEOF-ac_cs_config=`printf "%s\n" "$ac_configure_args" | sed "$ac_safe_unquote"`-ac_cs_config_escaped=`printf "%s\n" "$ac_cs_config" | sed "s/^ //; s/'/'\\\\\\\\''/g"`-cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1-ac_cs_config='$ac_cs_config_escaped'-ac_cs_version="\\-libffi config.status 3.5.2-configured by $0, generated by GNU Autoconf 2.72,-  with options \\"\$ac_cs_config\\"--Copyright (C) 2023 Free Software Foundation, Inc.-This config.status script is free software; the Free Software Foundation-gives unlimited permission to copy, distribute and modify it."--ac_pwd='$ac_pwd'-srcdir='$srcdir'-AWK='$AWK'-test -n "\$AWK" || AWK=awk-_ACEOF--cat >>$CONFIG_STATUS <<\_ACEOF || ac_write_fail=1-# The default lists apply if the user does not specify any file.-ac_need_defaults=:-while test $# != 0-do-  case $1 in-  --*=?*)-    ac_option=`expr "X$1" : 'X\([^=]*\)='`-    ac_optarg=`expr "X$1" : 'X[^=]*=\(.*\)'`-    ac_shift=:-    ;;-  --*=)-    ac_option=`expr "X$1" : 'X\([^=]*\)='`-    ac_optarg=-    ac_shift=:-    ;;-  *)-    ac_option=$1-    ac_optarg=$2-    ac_shift=shift-    ;;-  esac--  case $ac_option in-  # Handling of the options.-  -recheck | --recheck | --rechec | --reche | --rech | --rec | --re | --r)-    ac_cs_recheck=: ;;-  --version | --versio | --versi | --vers | --ver | --ve | --v | -V )-    printf "%s\n" "$ac_cs_version"; exit ;;-  --config | --confi | --conf | --con | --co | --c )-    printf "%s\n" "$ac_cs_config"; exit ;;-  --debug | --debu | --deb | --de | --d | -d )-    debug=: ;;-  --file | --fil | --fi | --f )-    $ac_shift-    case $ac_optarg in-    *\'*) ac_optarg=`printf "%s\n" "$ac_optarg" | sed "s/'/'\\\\\\\\''/g"` ;;-    '') as_fn_error $? "missing file argument" ;;-    esac-    as_fn_append CONFIG_FILES " '$ac_optarg'"-    ac_need_defaults=false;;-  --header | --heade | --head | --hea )-    $ac_shift-    case $ac_optarg in-    *\'*) ac_optarg=`printf "%s\n" "$ac_optarg" | sed "s/'/'\\\\\\\\''/g"` ;;-    esac-    as_fn_append CONFIG_HEADERS " '$ac_optarg'"-    ac_need_defaults=false;;-  --he | --h)-    # Conflict between --help and --header-    as_fn_error $? "ambiguous option: '$1'-Try '$0 --help' for more information.";;-  --help | --hel | -h )-    printf "%s\n" "$ac_cs_usage"; exit ;;-  -q | -quiet | --quiet | --quie | --qui | --qu | --q \-  | -silent | --silent | --silen | --sile | --sil | --si | --s)-    ac_cs_silent=: ;;--  # This is an error.-  -*) as_fn_error $? "unrecognized option: '$1'-Try '$0 --help' for more information." ;;--  *) as_fn_append ac_config_targets " $1"-     ac_need_defaults=false ;;--  esac-  shift-done--ac_configure_extra_args=--if $ac_cs_silent; then-  exec 6>/dev/null-  ac_configure_extra_args="$ac_configure_extra_args --silent"-fi--_ACEOF-cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1-if \$ac_cs_recheck; then-  set X $SHELL '$0' $ac_configure_args \$ac_configure_extra_args --no-create --no-recursion-  shift-  \printf "%s\n" "running CONFIG_SHELL=$SHELL \$*" >&6-  CONFIG_SHELL='$SHELL'-  export CONFIG_SHELL-  exec "\$@"-fi--_ACEOF-cat >>$CONFIG_STATUS <<\_ACEOF || ac_write_fail=1-exec 5>>config.log-{-  echo-  sed 'h;s/./-/g;s/^.../## /;s/...$/ ##/;p;x;p;x' <<_ASBOX-## Running $as_me. ##-_ASBOX-  printf "%s\n" "$ac_log"-} >&5--_ACEOF-cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1-#-# INIT-COMMANDS-#-ax_enable_builddir_srcdir="$srcdir"                    # $srcdir-ax_enable_builddir_host="$HOST"                        # $HOST / $host-ax_enable_builddir_version="$VERSION"                  # $VERSION-ax_enable_builddir_package="$PACKAGE"                  # $PACKAGE-ax_enable_builddir_auxdir="$ax_enable_builddir_auxdir" # $AUX-ax_enable_builddir_sed="$ax_enable_builddir_sed"       # $SED-ax_enable_builddir="$ax_enable_builddir"               # $SUB--AMDEP_TRUE="$AMDEP_TRUE" MAKE="${MAKE-make}"---# The HP-UX ksh and POSIX shell print the target directory to stdout-# if CDPATH is set.-(unset CDPATH) >/dev/null 2>&1 && unset CDPATH--sed_quote_subst='$sed_quote_subst'-double_quote_subst='$double_quote_subst'-delay_variable_subst='$delay_variable_subst'-macro_version='`$ECHO "$macro_version" | $SED "$delay_single_quote_subst"`'-macro_revision='`$ECHO "$macro_revision" | $SED "$delay_single_quote_subst"`'-enable_shared='`$ECHO "$enable_shared" | $SED "$delay_single_quote_subst"`'-enable_static='`$ECHO "$enable_static" | $SED "$delay_single_quote_subst"`'-pic_mode='`$ECHO "$pic_mode" | $SED "$delay_single_quote_subst"`'-enable_fast_install='`$ECHO "$enable_fast_install" | $SED "$delay_single_quote_subst"`'-shared_archive_member_spec='`$ECHO "$shared_archive_member_spec" | $SED "$delay_single_quote_subst"`'-SHELL='`$ECHO "$SHELL" | $SED "$delay_single_quote_subst"`'-ECHO='`$ECHO "$ECHO" | $SED "$delay_single_quote_subst"`'-PATH_SEPARATOR='`$ECHO "$PATH_SEPARATOR" | $SED "$delay_single_quote_subst"`'-host_alias='`$ECHO "$host_alias" | $SED "$delay_single_quote_subst"`'-host='`$ECHO "$host" | $SED "$delay_single_quote_subst"`'-host_os='`$ECHO "$host_os" | $SED "$delay_single_quote_subst"`'-build_alias='`$ECHO "$build_alias" | $SED "$delay_single_quote_subst"`'-build='`$ECHO "$build" | $SED "$delay_single_quote_subst"`'-build_os='`$ECHO "$build_os" | $SED "$delay_single_quote_subst"`'-SED='`$ECHO "$SED" | $SED "$delay_single_quote_subst"`'-Xsed='`$ECHO "$Xsed" | $SED "$delay_single_quote_subst"`'-GREP='`$ECHO "$GREP" | $SED "$delay_single_quote_subst"`'-EGREP='`$ECHO "$EGREP" | $SED "$delay_single_quote_subst"`'-FGREP='`$ECHO "$FGREP" | $SED "$delay_single_quote_subst"`'-LD='`$ECHO "$LD" | $SED "$delay_single_quote_subst"`'-NM='`$ECHO "$NM" | $SED "$delay_single_quote_subst"`'-LN_S='`$ECHO "$LN_S" | $SED "$delay_single_quote_subst"`'-max_cmd_len='`$ECHO "$max_cmd_len" | $SED "$delay_single_quote_subst"`'-ac_objext='`$ECHO "$ac_objext" | $SED "$delay_single_quote_subst"`'-exeext='`$ECHO "$exeext" | $SED "$delay_single_quote_subst"`'-lt_unset='`$ECHO "$lt_unset" | $SED "$delay_single_quote_subst"`'-lt_SP2NL='`$ECHO "$lt_SP2NL" | $SED "$delay_single_quote_subst"`'-lt_NL2SP='`$ECHO "$lt_NL2SP" | $SED "$delay_single_quote_subst"`'-lt_cv_to_host_file_cmd='`$ECHO "$lt_cv_to_host_file_cmd" | $SED "$delay_single_quote_subst"`'-lt_cv_to_tool_file_cmd='`$ECHO "$lt_cv_to_tool_file_cmd" | $SED "$delay_single_quote_subst"`'-reload_flag='`$ECHO "$reload_flag" | $SED "$delay_single_quote_subst"`'-reload_cmds='`$ECHO "$reload_cmds" | $SED "$delay_single_quote_subst"`'-FILECMD='`$ECHO "$FILECMD" | $SED "$delay_single_quote_subst"`'-OBJDUMP='`$ECHO "$OBJDUMP" | $SED "$delay_single_quote_subst"`'-deplibs_check_method='`$ECHO "$deplibs_check_method" | $SED "$delay_single_quote_subst"`'-file_magic_cmd='`$ECHO "$file_magic_cmd" | $SED "$delay_single_quote_subst"`'-file_magic_glob='`$ECHO "$file_magic_glob" | $SED "$delay_single_quote_subst"`'-want_nocaseglob='`$ECHO "$want_nocaseglob" | $SED "$delay_single_quote_subst"`'-DLLTOOL='`$ECHO "$DLLTOOL" | $SED "$delay_single_quote_subst"`'-sharedlib_from_linklib_cmd='`$ECHO "$sharedlib_from_linklib_cmd" | $SED "$delay_single_quote_subst"`'-AR='`$ECHO "$AR" | $SED "$delay_single_quote_subst"`'-lt_ar_flags='`$ECHO "$lt_ar_flags" | $SED "$delay_single_quote_subst"`'-AR_FLAGS='`$ECHO "$AR_FLAGS" | $SED "$delay_single_quote_subst"`'-archiver_list_spec='`$ECHO "$archiver_list_spec" | $SED "$delay_single_quote_subst"`'-STRIP='`$ECHO "$STRIP" | $SED "$delay_single_quote_subst"`'-RANLIB='`$ECHO "$RANLIB" | $SED "$delay_single_quote_subst"`'-old_postinstall_cmds='`$ECHO "$old_postinstall_cmds" | $SED "$delay_single_quote_subst"`'-old_postuninstall_cmds='`$ECHO "$old_postuninstall_cmds" | $SED "$delay_single_quote_subst"`'-old_archive_cmds='`$ECHO "$old_archive_cmds" | $SED "$delay_single_quote_subst"`'-lock_old_archive_extraction='`$ECHO "$lock_old_archive_extraction" | $SED "$delay_single_quote_subst"`'-CC='`$ECHO "$CC" | $SED "$delay_single_quote_subst"`'-CFLAGS='`$ECHO "$CFLAGS" | $SED "$delay_single_quote_subst"`'-compiler='`$ECHO "$compiler" | $SED "$delay_single_quote_subst"`'-GCC='`$ECHO "$GCC" | $SED "$delay_single_quote_subst"`'-lt_cv_sys_global_symbol_pipe='`$ECHO "$lt_cv_sys_global_symbol_pipe" | $SED "$delay_single_quote_subst"`'-lt_cv_sys_global_symbol_to_cdecl='`$ECHO "$lt_cv_sys_global_symbol_to_cdecl" | $SED "$delay_single_quote_subst"`'-lt_cv_sys_global_symbol_to_import='`$ECHO "$lt_cv_sys_global_symbol_to_import" | $SED "$delay_single_quote_subst"`'-lt_cv_sys_global_symbol_to_c_name_address='`$ECHO "$lt_cv_sys_global_symbol_to_c_name_address" | $SED "$delay_single_quote_subst"`'-lt_cv_sys_global_symbol_to_c_name_address_lib_prefix='`$ECHO "$lt_cv_sys_global_symbol_to_c_name_address_lib_prefix" | $SED "$delay_single_quote_subst"`'-lt_cv_nm_interface='`$ECHO "$lt_cv_nm_interface" | $SED "$delay_single_quote_subst"`'-nm_file_list_spec='`$ECHO "$nm_file_list_spec" | $SED "$delay_single_quote_subst"`'-lt_sysroot='`$ECHO "$lt_sysroot" | $SED "$delay_single_quote_subst"`'-lt_cv_truncate_bin='`$ECHO "$lt_cv_truncate_bin" | $SED "$delay_single_quote_subst"`'-objdir='`$ECHO "$objdir" | $SED "$delay_single_quote_subst"`'-MAGIC_CMD='`$ECHO "$MAGIC_CMD" | $SED "$delay_single_quote_subst"`'-lt_prog_compiler_no_builtin_flag='`$ECHO "$lt_prog_compiler_no_builtin_flag" | $SED "$delay_single_quote_subst"`'-lt_prog_compiler_pic='`$ECHO "$lt_prog_compiler_pic" | $SED "$delay_single_quote_subst"`'-lt_prog_compiler_wl='`$ECHO "$lt_prog_compiler_wl" | $SED "$delay_single_quote_subst"`'-lt_prog_compiler_static='`$ECHO "$lt_prog_compiler_static" | $SED "$delay_single_quote_subst"`'-lt_cv_prog_compiler_c_o='`$ECHO "$lt_cv_prog_compiler_c_o" | $SED "$delay_single_quote_subst"`'-need_locks='`$ECHO "$need_locks" | $SED "$delay_single_quote_subst"`'-MANIFEST_TOOL='`$ECHO "$MANIFEST_TOOL" | $SED "$delay_single_quote_subst"`'-DSYMUTIL='`$ECHO "$DSYMUTIL" | $SED "$delay_single_quote_subst"`'-NMEDIT='`$ECHO "$NMEDIT" | $SED "$delay_single_quote_subst"`'-LIPO='`$ECHO "$LIPO" | $SED "$delay_single_quote_subst"`'-OTOOL='`$ECHO "$OTOOL" | $SED "$delay_single_quote_subst"`'-OTOOL64='`$ECHO "$OTOOL64" | $SED "$delay_single_quote_subst"`'-libext='`$ECHO "$libext" | $SED "$delay_single_quote_subst"`'-shrext_cmds='`$ECHO "$shrext_cmds" | $SED "$delay_single_quote_subst"`'-extract_expsyms_cmds='`$ECHO "$extract_expsyms_cmds" | $SED "$delay_single_quote_subst"`'-archive_cmds_need_lc='`$ECHO "$archive_cmds_need_lc" | $SED "$delay_single_quote_subst"`'-enable_shared_with_static_runtimes='`$ECHO "$enable_shared_with_static_runtimes" | $SED "$delay_single_quote_subst"`'-export_dynamic_flag_spec='`$ECHO "$export_dynamic_flag_spec" | $SED "$delay_single_quote_subst"`'-whole_archive_flag_spec='`$ECHO "$whole_archive_flag_spec" | $SED "$delay_single_quote_subst"`'-compiler_needs_object='`$ECHO "$compiler_needs_object" | $SED "$delay_single_quote_subst"`'-old_archive_from_new_cmds='`$ECHO "$old_archive_from_new_cmds" | $SED "$delay_single_quote_subst"`'-old_archive_from_expsyms_cmds='`$ECHO "$old_archive_from_expsyms_cmds" | $SED "$delay_single_quote_subst"`'-archive_cmds='`$ECHO "$archive_cmds" | $SED "$delay_single_quote_subst"`'-archive_expsym_cmds='`$ECHO "$archive_expsym_cmds" | $SED "$delay_single_quote_subst"`'-module_cmds='`$ECHO "$module_cmds" | $SED "$delay_single_quote_subst"`'-module_expsym_cmds='`$ECHO "$module_expsym_cmds" | $SED "$delay_single_quote_subst"`'-with_gnu_ld='`$ECHO "$with_gnu_ld" | $SED "$delay_single_quote_subst"`'-allow_undefined_flag='`$ECHO "$allow_undefined_flag" | $SED "$delay_single_quote_subst"`'-no_undefined_flag='`$ECHO "$no_undefined_flag" | $SED "$delay_single_quote_subst"`'-hardcode_libdir_flag_spec='`$ECHO "$hardcode_libdir_flag_spec" | $SED "$delay_single_quote_subst"`'-hardcode_libdir_separator='`$ECHO "$hardcode_libdir_separator" | $SED "$delay_single_quote_subst"`'-hardcode_direct='`$ECHO "$hardcode_direct" | $SED "$delay_single_quote_subst"`'-hardcode_direct_absolute='`$ECHO "$hardcode_direct_absolute" | $SED "$delay_single_quote_subst"`'-hardcode_minus_L='`$ECHO "$hardcode_minus_L" | $SED "$delay_single_quote_subst"`'-hardcode_shlibpath_var='`$ECHO "$hardcode_shlibpath_var" | $SED "$delay_single_quote_subst"`'-hardcode_automatic='`$ECHO "$hardcode_automatic" | $SED "$delay_single_quote_subst"`'-inherit_rpath='`$ECHO "$inherit_rpath" | $SED "$delay_single_quote_subst"`'-link_all_deplibs='`$ECHO "$link_all_deplibs" | $SED "$delay_single_quote_subst"`'-always_export_symbols='`$ECHO "$always_export_symbols" | $SED "$delay_single_quote_subst"`'-export_symbols_cmds='`$ECHO "$export_symbols_cmds" | $SED "$delay_single_quote_subst"`'-exclude_expsyms='`$ECHO "$exclude_expsyms" | $SED "$delay_single_quote_subst"`'-include_expsyms='`$ECHO "$include_expsyms" | $SED "$delay_single_quote_subst"`'-prelink_cmds='`$ECHO "$prelink_cmds" | $SED "$delay_single_quote_subst"`'-postlink_cmds='`$ECHO "$postlink_cmds" | $SED "$delay_single_quote_subst"`'-file_list_spec='`$ECHO "$file_list_spec" | $SED "$delay_single_quote_subst"`'-variables_saved_for_relink='`$ECHO "$variables_saved_for_relink" | $SED "$delay_single_quote_subst"`'-need_lib_prefix='`$ECHO "$need_lib_prefix" | $SED "$delay_single_quote_subst"`'-need_version='`$ECHO "$need_version" | $SED "$delay_single_quote_subst"`'-version_type='`$ECHO "$version_type" | $SED "$delay_single_quote_subst"`'-runpath_var='`$ECHO "$runpath_var" | $SED "$delay_single_quote_subst"`'-shlibpath_var='`$ECHO "$shlibpath_var" | $SED "$delay_single_quote_subst"`'-shlibpath_overrides_runpath='`$ECHO "$shlibpath_overrides_runpath" | $SED "$delay_single_quote_subst"`'-libname_spec='`$ECHO "$libname_spec" | $SED "$delay_single_quote_subst"`'-library_names_spec='`$ECHO "$library_names_spec" | $SED "$delay_single_quote_subst"`'-soname_spec='`$ECHO "$soname_spec" | $SED "$delay_single_quote_subst"`'-install_override_mode='`$ECHO "$install_override_mode" | $SED "$delay_single_quote_subst"`'-postinstall_cmds='`$ECHO "$postinstall_cmds" | $SED "$delay_single_quote_subst"`'-postuninstall_cmds='`$ECHO "$postuninstall_cmds" | $SED "$delay_single_quote_subst"`'-finish_cmds='`$ECHO "$finish_cmds" | $SED "$delay_single_quote_subst"`'-finish_eval='`$ECHO "$finish_eval" | $SED "$delay_single_quote_subst"`'-hardcode_into_libs='`$ECHO "$hardcode_into_libs" | $SED "$delay_single_quote_subst"`'-sys_lib_search_path_spec='`$ECHO "$sys_lib_search_path_spec" | $SED "$delay_single_quote_subst"`'-configure_time_dlsearch_path='`$ECHO "$configure_time_dlsearch_path" | $SED "$delay_single_quote_subst"`'-configure_time_lt_sys_library_path='`$ECHO "$configure_time_lt_sys_library_path" | $SED "$delay_single_quote_subst"`'-hardcode_action='`$ECHO "$hardcode_action" | $SED "$delay_single_quote_subst"`'-enable_dlopen='`$ECHO "$enable_dlopen" | $SED "$delay_single_quote_subst"`'-enable_dlopen_self='`$ECHO "$enable_dlopen_self" | $SED "$delay_single_quote_subst"`'-enable_dlopen_self_static='`$ECHO "$enable_dlopen_self_static" | $SED "$delay_single_quote_subst"`'-old_striplib='`$ECHO "$old_striplib" | $SED "$delay_single_quote_subst"`'-striplib='`$ECHO "$striplib" | $SED "$delay_single_quote_subst"`'-compiler_lib_search_dirs='`$ECHO "$compiler_lib_search_dirs" | $SED "$delay_single_quote_subst"`'-predep_objects='`$ECHO "$predep_objects" | $SED "$delay_single_quote_subst"`'-postdep_objects='`$ECHO "$postdep_objects" | $SED "$delay_single_quote_subst"`'-predeps='`$ECHO "$predeps" | $SED "$delay_single_quote_subst"`'-postdeps='`$ECHO "$postdeps" | $SED "$delay_single_quote_subst"`'-compiler_lib_search_path='`$ECHO "$compiler_lib_search_path" | $SED "$delay_single_quote_subst"`'-LD_CXX='`$ECHO "$LD_CXX" | $SED "$delay_single_quote_subst"`'-reload_flag_CXX='`$ECHO "$reload_flag_CXX" | $SED "$delay_single_quote_subst"`'-reload_cmds_CXX='`$ECHO "$reload_cmds_CXX" | $SED "$delay_single_quote_subst"`'-old_archive_cmds_CXX='`$ECHO "$old_archive_cmds_CXX" | $SED "$delay_single_quote_subst"`'-compiler_CXX='`$ECHO "$compiler_CXX" | $SED "$delay_single_quote_subst"`'-GCC_CXX='`$ECHO "$GCC_CXX" | $SED "$delay_single_quote_subst"`'-lt_prog_compiler_no_builtin_flag_CXX='`$ECHO "$lt_prog_compiler_no_builtin_flag_CXX" | $SED "$delay_single_quote_subst"`'-lt_prog_compiler_pic_CXX='`$ECHO "$lt_prog_compiler_pic_CXX" | $SED "$delay_single_quote_subst"`'-lt_prog_compiler_wl_CXX='`$ECHO "$lt_prog_compiler_wl_CXX" | $SED "$delay_single_quote_subst"`'-lt_prog_compiler_static_CXX='`$ECHO "$lt_prog_compiler_static_CXX" | $SED "$delay_single_quote_subst"`'-lt_cv_prog_compiler_c_o_CXX='`$ECHO "$lt_cv_prog_compiler_c_o_CXX" | $SED "$delay_single_quote_subst"`'-archive_cmds_need_lc_CXX='`$ECHO "$archive_cmds_need_lc_CXX" | $SED "$delay_single_quote_subst"`'-enable_shared_with_static_runtimes_CXX='`$ECHO "$enable_shared_with_static_runtimes_CXX" | $SED "$delay_single_quote_subst"`'-export_dynamic_flag_spec_CXX='`$ECHO "$export_dynamic_flag_spec_CXX" | $SED "$delay_single_quote_subst"`'-whole_archive_flag_spec_CXX='`$ECHO "$whole_archive_flag_spec_CXX" | $SED "$delay_single_quote_subst"`'-compiler_needs_object_CXX='`$ECHO "$compiler_needs_object_CXX" | $SED "$delay_single_quote_subst"`'-old_archive_from_new_cmds_CXX='`$ECHO "$old_archive_from_new_cmds_CXX" | $SED "$delay_single_quote_subst"`'-old_archive_from_expsyms_cmds_CXX='`$ECHO "$old_archive_from_expsyms_cmds_CXX" | $SED "$delay_single_quote_subst"`'-archive_cmds_CXX='`$ECHO "$archive_cmds_CXX" | $SED "$delay_single_quote_subst"`'-archive_expsym_cmds_CXX='`$ECHO "$archive_expsym_cmds_CXX" | $SED "$delay_single_quote_subst"`'-module_cmds_CXX='`$ECHO "$module_cmds_CXX" | $SED "$delay_single_quote_subst"`'-module_expsym_cmds_CXX='`$ECHO "$module_expsym_cmds_CXX" | $SED "$delay_single_quote_subst"`'-with_gnu_ld_CXX='`$ECHO "$with_gnu_ld_CXX" | $SED "$delay_single_quote_subst"`'-allow_undefined_flag_CXX='`$ECHO "$allow_undefined_flag_CXX" | $SED "$delay_single_quote_subst"`'-no_undefined_flag_CXX='`$ECHO "$no_undefined_flag_CXX" | $SED "$delay_single_quote_subst"`'-hardcode_libdir_flag_spec_CXX='`$ECHO "$hardcode_libdir_flag_spec_CXX" | $SED "$delay_single_quote_subst"`'-hardcode_libdir_separator_CXX='`$ECHO "$hardcode_libdir_separator_CXX" | $SED "$delay_single_quote_subst"`'-hardcode_direct_CXX='`$ECHO "$hardcode_direct_CXX" | $SED "$delay_single_quote_subst"`'-hardcode_direct_absolute_CXX='`$ECHO "$hardcode_direct_absolute_CXX" | $SED "$delay_single_quote_subst"`'-hardcode_minus_L_CXX='`$ECHO "$hardcode_minus_L_CXX" | $SED "$delay_single_quote_subst"`'-hardcode_shlibpath_var_CXX='`$ECHO "$hardcode_shlibpath_var_CXX" | $SED "$delay_single_quote_subst"`'-hardcode_automatic_CXX='`$ECHO "$hardcode_automatic_CXX" | $SED "$delay_single_quote_subst"`'-inherit_rpath_CXX='`$ECHO "$inherit_rpath_CXX" | $SED "$delay_single_quote_subst"`'-link_all_deplibs_CXX='`$ECHO "$link_all_deplibs_CXX" | $SED "$delay_single_quote_subst"`'-always_export_symbols_CXX='`$ECHO "$always_export_symbols_CXX" | $SED "$delay_single_quote_subst"`'-export_symbols_cmds_CXX='`$ECHO "$export_symbols_cmds_CXX" | $SED "$delay_single_quote_subst"`'-exclude_expsyms_CXX='`$ECHO "$exclude_expsyms_CXX" | $SED "$delay_single_quote_subst"`'-include_expsyms_CXX='`$ECHO "$include_expsyms_CXX" | $SED "$delay_single_quote_subst"`'-prelink_cmds_CXX='`$ECHO "$prelink_cmds_CXX" | $SED "$delay_single_quote_subst"`'-postlink_cmds_CXX='`$ECHO "$postlink_cmds_CXX" | $SED "$delay_single_quote_subst"`'-file_list_spec_CXX='`$ECHO "$file_list_spec_CXX" | $SED "$delay_single_quote_subst"`'-hardcode_action_CXX='`$ECHO "$hardcode_action_CXX" | $SED "$delay_single_quote_subst"`'-compiler_lib_search_dirs_CXX='`$ECHO "$compiler_lib_search_dirs_CXX" | $SED "$delay_single_quote_subst"`'-predep_objects_CXX='`$ECHO "$predep_objects_CXX" | $SED "$delay_single_quote_subst"`'-postdep_objects_CXX='`$ECHO "$postdep_objects_CXX" | $SED "$delay_single_quote_subst"`'-predeps_CXX='`$ECHO "$predeps_CXX" | $SED "$delay_single_quote_subst"`'-postdeps_CXX='`$ECHO "$postdeps_CXX" | $SED "$delay_single_quote_subst"`'-compiler_lib_search_path_CXX='`$ECHO "$compiler_lib_search_path_CXX" | $SED "$delay_single_quote_subst"`'--LTCC='$LTCC'-LTCFLAGS='$LTCFLAGS'-compiler='$compiler_DEFAULT'--# A function that is used when there is no print builtin or printf.-func_fallback_echo ()-{-  eval 'cat <<_LTECHO_EOF-\$1-_LTECHO_EOF'-}--# Quote evaled strings.-for var in SHELL \-ECHO \-PATH_SEPARATOR \-SED \-GREP \-EGREP \-FGREP \-LD \-NM \-LN_S \-lt_SP2NL \-lt_NL2SP \-reload_flag \-FILECMD \-OBJDUMP \-deplibs_check_method \-file_magic_cmd \-file_magic_glob \-want_nocaseglob \-DLLTOOL \-sharedlib_from_linklib_cmd \-AR \-archiver_list_spec \-STRIP \-RANLIB \-CC \-CFLAGS \-compiler \-lt_cv_sys_global_symbol_pipe \-lt_cv_sys_global_symbol_to_cdecl \-lt_cv_sys_global_symbol_to_import \-lt_cv_sys_global_symbol_to_c_name_address \-lt_cv_sys_global_symbol_to_c_name_address_lib_prefix \-lt_cv_nm_interface \-nm_file_list_spec \-lt_cv_truncate_bin \-lt_prog_compiler_no_builtin_flag \-lt_prog_compiler_pic \-lt_prog_compiler_wl \-lt_prog_compiler_static \-lt_cv_prog_compiler_c_o \-need_locks \-MANIFEST_TOOL \-DSYMUTIL \-NMEDIT \-LIPO \-OTOOL \-OTOOL64 \-shrext_cmds \-export_dynamic_flag_spec \-whole_archive_flag_spec \-compiler_needs_object \-with_gnu_ld \-allow_undefined_flag \-no_undefined_flag \-hardcode_libdir_flag_spec \-hardcode_libdir_separator \-exclude_expsyms \-include_expsyms \-file_list_spec \-variables_saved_for_relink \-libname_spec \-library_names_spec \-soname_spec \-install_override_mode \-finish_eval \-old_striplib \-striplib \-compiler_lib_search_dirs \-predep_objects \-postdep_objects \-predeps \-postdeps \-compiler_lib_search_path \-LD_CXX \-reload_flag_CXX \-compiler_CXX \-lt_prog_compiler_no_builtin_flag_CXX \-lt_prog_compiler_pic_CXX \-lt_prog_compiler_wl_CXX \-lt_prog_compiler_static_CXX \-lt_cv_prog_compiler_c_o_CXX \-export_dynamic_flag_spec_CXX \-whole_archive_flag_spec_CXX \-compiler_needs_object_CXX \-with_gnu_ld_CXX \-allow_undefined_flag_CXX \-no_undefined_flag_CXX \-hardcode_libdir_flag_spec_CXX \-hardcode_libdir_separator_CXX \-exclude_expsyms_CXX \-include_expsyms_CXX \-file_list_spec_CXX \-compiler_lib_search_dirs_CXX \-predep_objects_CXX \-postdep_objects_CXX \-predeps_CXX \-postdeps_CXX \-compiler_lib_search_path_CXX; do-    case \`eval \\\\\$ECHO \\\\""\\\\\$\$var"\\\\"\` in-    *[\\\\\\\`\\"\\\$]*)-      eval "lt_\$var=\\\\\\"\\\`\\\$ECHO \\"\\\$\$var\\" | \\\$SED \\"\\\$sed_quote_subst\\"\\\`\\\\\\"" ## exclude from sc_prohibit_nested_quotes-      ;;-    *)-      eval "lt_\$var=\\\\\\"\\\$\$var\\\\\\""-      ;;-    esac-done--# Double-quote double-evaled strings.-for var in reload_cmds \-old_postinstall_cmds \-old_postuninstall_cmds \-old_archive_cmds \-extract_expsyms_cmds \-old_archive_from_new_cmds \-old_archive_from_expsyms_cmds \-archive_cmds \-archive_expsym_cmds \-module_cmds \-module_expsym_cmds \-export_symbols_cmds \-prelink_cmds \-postlink_cmds \-postinstall_cmds \-postuninstall_cmds \-finish_cmds \-sys_lib_search_path_spec \-configure_time_dlsearch_path \-configure_time_lt_sys_library_path \-reload_cmds_CXX \-old_archive_cmds_CXX \-old_archive_from_new_cmds_CXX \-old_archive_from_expsyms_cmds_CXX \-archive_cmds_CXX \-archive_expsym_cmds_CXX \-module_cmds_CXX \-module_expsym_cmds_CXX \-export_symbols_cmds_CXX \-prelink_cmds_CXX \-postlink_cmds_CXX; do-    case \`eval \\\\\$ECHO \\\\""\\\\\$\$var"\\\\"\` in-    *[\\\\\\\`\\"\\\$]*)-      eval "lt_\$var=\\\\\\"\\\`\\\$ECHO \\"\\\$\$var\\" | \\\$SED -e \\"\\\$double_quote_subst\\" -e \\"\\\$sed_quote_subst\\" -e \\"\\\$delay_variable_subst\\"\\\`\\\\\\"" ## exclude from sc_prohibit_nested_quotes-      ;;-    *)-      eval "lt_\$var=\\\\\\"\\\$\$var\\\\\\""-      ;;-    esac-done--ac_aux_dir='$ac_aux_dir'--# See if we are running on zsh, and set the options that allow our-# commands through without removal of \ escapes INIT.-if test -n "\${ZSH_VERSION+set}"; then-   setopt NO_GLOB_SUBST-fi---    PACKAGE='$PACKAGE'-    VERSION='$VERSION'-    RM='$RM'-    ofile='$ofile'-------_ACEOF--cat >>$CONFIG_STATUS <<\_ACEOF || ac_write_fail=1--# Handling of arguments.-for ac_config_target in $ac_config_targets-do-  case $ac_config_target in-    "fficonfig.h") CONFIG_HEADERS="$CONFIG_HEADERS fficonfig.h" ;;-    "buildir") CONFIG_COMMANDS="$CONFIG_COMMANDS buildir" ;;-    "depfiles") CONFIG_COMMANDS="$CONFIG_COMMANDS depfiles" ;;-    "libtool") CONFIG_COMMANDS="$CONFIG_COMMANDS libtool" ;;-    "include/ffi.h") CONFIG_FILES="$CONFIG_FILES include/ffi.h" ;;-    "libffi-clib.buildinfo") CONFIG_FILES="$CONFIG_FILES libffi-clib.buildinfo" ;;--  *) as_fn_error $? "invalid argument: '$ac_config_target'" "$LINENO" 5;;-  esac-done---# If the user did not use the arguments to specify the items to instantiate,-# then the envvar interface is used.  Set only those that are not.-# We use the long form for the default assignment because of an extremely-# bizarre bug on SunOS 4.1.3.-if $ac_need_defaults; then-  test ${CONFIG_FILES+y} || CONFIG_FILES=$config_files-  test ${CONFIG_HEADERS+y} || CONFIG_HEADERS=$config_headers-  test ${CONFIG_COMMANDS+y} || CONFIG_COMMANDS=$config_commands-fi--# Have a temporary directory for convenience.  Make it in the build tree-# simply because there is no reason against having it here, and in addition,-# creating and moving files from /tmp can sometimes cause problems.-# Hook for its removal unless debugging.-# Note that there is a small window in which the directory will not be cleaned:-# after its creation but before its name has been assigned to '$tmp'.-$debug ||-{-  tmp= ac_tmp=-  trap 'exit_status=$?-  : "${ac_tmp:=$tmp}"-  { test ! -d "$ac_tmp" || rm -fr "$ac_tmp"; } && exit $exit_status-' 0-  trap 'as_fn_exit 1' 1 2 13 15-}-# Create a (secure) tmp directory for tmp files.--{-  tmp=`(umask 077 && mktemp -d "./confXXXXXX") 2>/dev/null` &&-  test -d "$tmp"-}  ||-{-  tmp=./conf$$-$RANDOM-  (umask 077 && mkdir "$tmp")-} || as_fn_error $? "cannot create a temporary directory in ." "$LINENO" 5-ac_tmp=$tmp--# Set up the scripts for CONFIG_FILES section.-# No need to generate them if there are no CONFIG_FILES.-# This happens for instance with './config.status config.h'.-if test -n "$CONFIG_FILES"; then---ac_cr=`echo X | tr X '\015'`-# On cygwin, bash can eat \r inside `` if the user requested igncr.-# But we know of no other shell where ac_cr would be empty at this-# point, so we can use a bashism as a fallback.-if test "x$ac_cr" = x; then-  eval ac_cr=\$\'\\r\'-fi-ac_cs_awk_cr=`$AWK 'BEGIN { print "a\rb" }' </dev/null 2>/dev/null`-if test "$ac_cs_awk_cr" = "a${ac_cr}b"; then-  ac_cs_awk_cr='\\r'-else-  ac_cs_awk_cr=$ac_cr-fi--echo 'BEGIN {' >"$ac_tmp/subs1.awk" &&-_ACEOF---{-  echo "cat >conf$$subs.awk <<_ACEOF" &&-  echo "$ac_subst_vars" | sed 's/.*/&!$&$ac_delim/' &&-  echo "_ACEOF"-} >conf$$subs.sh ||-  as_fn_error $? "could not make $CONFIG_STATUS" "$LINENO" 5-ac_delim_num=`echo "$ac_subst_vars" | grep -c '^'`-ac_delim='%!_!# '-for ac_last_try in false false false false false :; do-  . ./conf$$subs.sh ||-    as_fn_error $? "could not make $CONFIG_STATUS" "$LINENO" 5--  ac_delim_n=`sed -n "s/.*$ac_delim\$/X/p" conf$$subs.awk | grep -c X`-  if test $ac_delim_n = $ac_delim_num; then-    break-  elif $ac_last_try; then-    as_fn_error $? "could not make $CONFIG_STATUS" "$LINENO" 5-  else-    ac_delim="$ac_delim!$ac_delim _$ac_delim!! "-  fi-done-rm -f conf$$subs.sh--cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1-cat >>"\$ac_tmp/subs1.awk" <<\\_ACAWK &&-_ACEOF-sed -n '-h-s/^/S["/; s/!.*/"]=/-p-g-s/^[^!]*!//-:repl-t repl-s/'"$ac_delim"'$//-t delim-:nl-h-s/\(.\{148\}\)..*/\1/-t more1-s/["\\]/\\&/g; s/^/"/; s/$/\\n"\\/-p-n-b repl-:more1-s/["\\]/\\&/g; s/^/"/; s/$/"\\/-p-g-s/.\{148\}//-t nl-:delim-h-s/\(.\{148\}\)..*/\1/-t more2-s/["\\]/\\&/g; s/^/"/; s/$/"/-p-b-:more2-s/["\\]/\\&/g; s/^/"/; s/$/"\\/-p-g-s/.\{148\}//-t delim-' <conf$$subs.awk | sed '-/^[^""]/{-  N-  s/\n//-}-' >>$CONFIG_STATUS || ac_write_fail=1-rm -f conf$$subs.awk-cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1-_ACAWK-cat >>"\$ac_tmp/subs1.awk" <<_ACAWK &&-  for (key in S) S_is_set[key] = 1-  FS = ""--}-{-  line = $ 0-  nfields = split(line, field, "@")-  substed = 0-  len = length(field[1])-  for (i = 2; i < nfields; i++) {-    key = field[i]-    keylen = length(key)-    if (S_is_set[key]) {-      value = S[key]-      line = substr(line, 1, len) "" value "" substr(line, len + keylen + 3)-      len += length(value) + length(field[++i])-      substed = 1-    } else-      len += 1 + keylen-  }--  print line-}--_ACAWK-_ACEOF-cat >>$CONFIG_STATUS <<\_ACEOF || ac_write_fail=1-if sed "s/$ac_cr//" < /dev/null > /dev/null 2>&1; then-  sed "s/$ac_cr\$//; s/$ac_cr/$ac_cs_awk_cr/g"-else-  cat-fi < "$ac_tmp/subs1.awk" > "$ac_tmp/subs.awk" \-  || as_fn_error $? "could not setup config files machinery" "$LINENO" 5-_ACEOF--# VPATH may cause trouble with some makes, so we remove sole $(srcdir),-# ${srcdir} and @srcdir@ entries from VPATH if srcdir is ".", strip leading and-# trailing colons and then remove the whole line if VPATH becomes empty-# (actually we leave an empty line to preserve line numbers).-if test "x$srcdir" = x.; then-  ac_vpsub='/^[	 ]*VPATH[	 ]*=[	 ]*/{-h-s///-s/^/:/-s/[	 ]*$/:/-s/:\$(srcdir):/:/g-s/:\${srcdir}:/:/g-s/:@srcdir@:/:/g-s/^:*//-s/:*$//-x-s/\(=[	 ]*\).*/\1/-G-s/\n//-s/^[^=]*=[	 ]*$//-}'-fi--cat >>$CONFIG_STATUS <<\_ACEOF || ac_write_fail=1-fi # test -n "$CONFIG_FILES"--# Set up the scripts for CONFIG_HEADERS section.-# No need to generate them if there are no CONFIG_HEADERS.-# This happens for instance with './config.status Makefile'.-if test -n "$CONFIG_HEADERS"; then-cat >"$ac_tmp/defines.awk" <<\_ACAWK ||-BEGIN {-_ACEOF--# Transform confdefs.h into an awk script 'defines.awk', embedded as-# here-document in config.status, that substitutes the proper values into-# config.h.in to produce config.h.--# Create a delimiter string that does not exist in confdefs.h, to ease-# handling of long lines.-ac_delim='%!_!# '-for ac_last_try in false false :; do-  ac_tt=`sed -n "/$ac_delim/p" confdefs.h`-  if test -z "$ac_tt"; then-    break-  elif $ac_last_try; then-    as_fn_error $? "could not make $CONFIG_HEADERS" "$LINENO" 5-  else-    ac_delim="$ac_delim!$ac_delim _$ac_delim!! "-  fi-done--# For the awk script, D is an array of macro values keyed by name,-# likewise P contains macro parameters if any.  Preserve backslash-# newline sequences.--ac_word_re=[_$as_cr_Letters][_$as_cr_alnum]*-sed -n '-s/.\{148\}/&'"$ac_delim"'/g-t rset-:rset-s/^[	 ]*#[	 ]*define[	 ][	 ]*/ /-t def-d-:def-s/\\$//-t bsnl-s/["\\]/\\&/g-s/^ \('"$ac_word_re"'\)\(([^()]*)\)[	 ]*\(.*\)/P["\1"]="\2"\-D["\1"]=" \3"/p-s/^ \('"$ac_word_re"'\)[	 ]*\(.*\)/D["\1"]=" \2"/p-d-:bsnl-s/["\\]/\\&/g-s/^ \('"$ac_word_re"'\)\(([^()]*)\)[	 ]*\(.*\)/P["\1"]="\2"\-D["\1"]=" \3\\\\\\n"\\/p-t cont-s/^ \('"$ac_word_re"'\)[	 ]*\(.*\)/D["\1"]=" \2\\\\\\n"\\/p-t cont-d-:cont-n-s/.\{148\}/&'"$ac_delim"'/g-t clear-:clear-s/\\$//-t bsnlc-s/["\\]/\\&/g; s/^/"/; s/$/"/p-d-:bsnlc-s/["\\]/\\&/g; s/^/"/; s/$/\\\\\\n"\\/p-b cont-' <confdefs.h | sed '-s/'"$ac_delim"'/"\\\-"/g' >>$CONFIG_STATUS || ac_write_fail=1--cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1-  for (key in D) D_is_set[key] = 1-  FS = ""-}-/^[\t ]*#[\t ]*(define|undef)[\t ]+$ac_word_re([\t (]|\$)/ {-  line = \$ 0-  split(line, arg, " ")-  if (arg[1] == "#") {-    defundef = arg[2]-    mac1 = arg[3]-  } else {-    defundef = substr(arg[1], 2)-    mac1 = arg[2]-  }-  split(mac1, mac2, "(") #)-  macro = mac2[1]-  prefix = substr(line, 1, index(line, defundef) - 1)-  if (D_is_set[macro]) {-    # Preserve the white space surrounding the "#".-    print prefix "define", macro P[macro] D[macro]-    next-  } else {-    # Replace #undef with comments.  This is necessary, for example,-    # in the case of _POSIX_SOURCE, which is predefined and required-    # on some systems where configure will not decide to define it.-    if (defundef == "undef") {-      print "/*", prefix defundef, macro, "*/"-      next-    }-  }-}-{ print }-_ACAWK-_ACEOF-cat >>$CONFIG_STATUS <<\_ACEOF || ac_write_fail=1-  as_fn_error $? "could not setup config headers machinery" "$LINENO" 5-fi # test -n "$CONFIG_HEADERS"---eval set X "  :F $CONFIG_FILES  :H $CONFIG_HEADERS    :C $CONFIG_COMMANDS"-shift-for ac_tag-do-  case $ac_tag in-  :[FHLC]) ac_mode=$ac_tag; continue;;-  esac-  case $ac_mode$ac_tag in-  :[FHL]*:*);;-  :L* | :C*:*) as_fn_error $? "invalid tag '$ac_tag'" "$LINENO" 5;;-  :[FH]-) ac_tag=-:-;;-  :[FH]*) ac_tag=$ac_tag:$ac_tag.in;;-  esac-  ac_save_IFS=$IFS-  IFS=:-  set x $ac_tag-  IFS=$ac_save_IFS-  shift-  ac_file=$1-  shift--  case $ac_mode in-  :L) ac_source=$1;;-  :[FH])-    ac_file_inputs=-    for ac_f-    do-      case $ac_f in-      -) ac_f="$ac_tmp/stdin";;-      *) # Look for the file first in the build tree, then in the source tree-	 # (if the path is not absolute).  The absolute path cannot be DOS-style,-	 # because $ac_f cannot contain ':'.-	 test -f "$ac_f" ||-	   case $ac_f in-	   [\\/$]*) false;;-	   *) test -f "$srcdir/$ac_f" && ac_f="$srcdir/$ac_f";;-	   esac ||-	   as_fn_error 1 "cannot find input file: '$ac_f'" "$LINENO" 5;;-      esac-      case $ac_f in *\'*) ac_f=`printf "%s\n" "$ac_f" | sed "s/'/'\\\\\\\\''/g"`;; esac-      as_fn_append ac_file_inputs " '$ac_f'"-    done--    # Let's still pretend it is 'configure' which instantiates (i.e., don't-    # use $as_me), people would be surprised to read:-    #    /* config.h.  Generated by config.status.  */-    configure_input='Generated from '`-	  printf "%s\n" "$*" | sed 's|^[^:]*/||;s|:[^:]*/|, |g'-	`' by configure.'-    if test x"$ac_file" != x-; then-      configure_input="$ac_file.  $configure_input"-      { printf "%s\n" "$as_me:${as_lineno-$LINENO}: creating $ac_file" >&5-printf "%s\n" "$as_me: creating $ac_file" >&6;}-    fi-    # Neutralize special characters interpreted by sed in replacement strings.-    case $configure_input in #(-    *\&* | *\|* | *\\* )-       ac_sed_conf_input=`printf "%s\n" "$configure_input" |-       sed 's/[\\\\&|]/\\\\&/g'`;; #(-    *) ac_sed_conf_input=$configure_input;;-    esac--    case $ac_tag in-    *:-:* | *:-) cat >"$ac_tmp/stdin" \-      || as_fn_error $? "could not create $ac_file" "$LINENO" 5 ;;-    esac-    ;;-  esac--  ac_dir=`$as_dirname -- "$ac_file" ||-$as_expr X"$ac_file" : 'X\(.*[^/]\)//*[^/][^/]*/*$' \| \-	 X"$ac_file" : 'X\(//\)[^/]' \| \-	 X"$ac_file" : 'X\(//\)$' \| \-	 X"$ac_file" : 'X\(/\)' \| . 2>/dev/null ||-printf "%s\n" X"$ac_file" |-    sed '/^X\(.*[^/]\)\/\/*[^/][^/]*\/*$/{-	    s//\1/-	    q-	  }-	  /^X\(\/\/\)[^/].*/{-	    s//\1/-	    q-	  }-	  /^X\(\/\/\)$/{-	    s//\1/-	    q-	  }-	  /^X\(\/\).*/{-	    s//\1/-	    q-	  }-	  s/.*/./; q'`-  as_dir="$ac_dir"; as_fn_mkdir_p-  ac_builddir=.--case "$ac_dir" in-.) ac_dir_suffix= ac_top_builddir_sub=. ac_top_build_prefix= ;;-*)-  ac_dir_suffix=/`printf "%s\n" "$ac_dir" | sed 's|^\.[\\/]||'`-  # A ".." for each directory in $ac_dir_suffix.-  ac_top_builddir_sub=`printf "%s\n" "$ac_dir_suffix" | sed 's|/[^\\/]*|/..|g;s|/||'`-  case $ac_top_builddir_sub in-  "") ac_top_builddir_sub=. ac_top_build_prefix= ;;-  *)  ac_top_build_prefix=$ac_top_builddir_sub/ ;;-  esac ;;-esac-ac_abs_top_builddir=$ac_pwd-ac_abs_builddir=$ac_pwd$ac_dir_suffix-# for backward compatibility:-ac_top_builddir=$ac_top_build_prefix--case $srcdir in-  .)  # We are building in place.-    ac_srcdir=.-    ac_top_srcdir=$ac_top_builddir_sub-    ac_abs_top_srcdir=$ac_pwd ;;-  [\\/]* | ?:[\\/]* )  # Absolute name.-    ac_srcdir=$srcdir$ac_dir_suffix;-    ac_top_srcdir=$srcdir-    ac_abs_top_srcdir=$srcdir ;;-  *) # Relative name.-    ac_srcdir=$ac_top_build_prefix$srcdir$ac_dir_suffix-    ac_top_srcdir=$ac_top_build_prefix$srcdir-    ac_abs_top_srcdir=$ac_pwd/$srcdir ;;-esac-ac_abs_srcdir=$ac_abs_top_srcdir$ac_dir_suffix---  case $ac_mode in-  :F)-  #-  # CONFIG_FILE-  #--_ACEOF--cat >>$CONFIG_STATUS <<\_ACEOF || ac_write_fail=1-# If the template does not know about datarootdir, expand it.-# FIXME: This hack should be removed a few years after 2.60.-ac_datarootdir_hack=; ac_datarootdir_seen=-ac_sed_dataroot='-/datarootdir/ {-  p-  q-}-/@datadir@/p-/@docdir@/p-/@infodir@/p-/@localedir@/p-/@mandir@/p'-case `eval "sed -n \"\$ac_sed_dataroot\" $ac_file_inputs"` in-*datarootdir*) ac_datarootdir_seen=yes;;-*@datadir@*|*@docdir@*|*@infodir@*|*@localedir@*|*@mandir@*)-  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: WARNING: $ac_file_inputs seems to ignore the --datarootdir setting" >&5-printf "%s\n" "$as_me: WARNING: $ac_file_inputs seems to ignore the --datarootdir setting" >&2;}-_ACEOF-cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1-  ac_datarootdir_hack='-  s&@datadir@&$datadir&g-  s&@docdir@&$docdir&g-  s&@infodir@&$infodir&g-  s&@localedir@&$localedir&g-  s&@mandir@&$mandir&g-  s&\\\${datarootdir}&$datarootdir&g' ;;-esac-_ACEOF--# Neutralize VPATH when '$srcdir' = '.'.-# Shell code in configure.ac might set extrasub.-# FIXME: do we really want to maintain this feature?-cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1-ac_sed_extra="$ac_vpsub-$extrasub-_ACEOF-cat >>$CONFIG_STATUS <<\_ACEOF || ac_write_fail=1-:t-/@[a-zA-Z_][a-zA-Z_0-9]*@/!b-s|@configure_input@|$ac_sed_conf_input|;t t-s&@top_builddir@&$ac_top_builddir_sub&;t t-s&@top_build_prefix@&$ac_top_build_prefix&;t t-s&@srcdir@&$ac_srcdir&;t t-s&@abs_srcdir@&$ac_abs_srcdir&;t t-s&@top_srcdir@&$ac_top_srcdir&;t t-s&@abs_top_srcdir@&$ac_abs_top_srcdir&;t t-s&@builddir@&$ac_builddir&;t t-s&@abs_builddir@&$ac_abs_builddir&;t t-s&@abs_top_builddir@&$ac_abs_top_builddir&;t t-$ac_datarootdir_hack-"-eval sed \"\$ac_sed_extra\" "$ac_file_inputs" | $AWK -f "$ac_tmp/subs.awk" \-  >$ac_tmp/out || as_fn_error $? "could not create $ac_file" "$LINENO" 5--test -z "$ac_datarootdir_hack$ac_datarootdir_seen" &&-  { ac_out=`sed -n '/\${datarootdir}/p' "$ac_tmp/out"`; test -n "$ac_out"; } &&-  { ac_out=`sed -n '/^[	 ]*datarootdir[	 ]*:*=/p' \-      "$ac_tmp/out"`; test -z "$ac_out"; } &&-  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: WARNING: $ac_file contains a reference to the variable 'datarootdir'-which seems to be undefined.  Please make sure it is defined" >&5-printf "%s\n" "$as_me: WARNING: $ac_file contains a reference to the variable 'datarootdir'-which seems to be undefined.  Please make sure it is defined" >&2;}--  rm -f "$ac_tmp/stdin"-  case $ac_file in-  -) cat "$ac_tmp/out" && rm -f "$ac_tmp/out";;-  *) rm -f "$ac_file" && mv "$ac_tmp/out" "$ac_file";;-  esac \-  || as_fn_error $? "could not create $ac_file" "$LINENO" 5- ;;-  :H)-  #-  # CONFIG_HEADER-  #-  if test x"$ac_file" != x-; then-    {-      printf "%s\n" "/* $configure_input  */" >&1 \-      && eval '$AWK -f "$ac_tmp/defines.awk"' "$ac_file_inputs"-    } >"$ac_tmp/config.h" \-      || as_fn_error $? "could not create $ac_file" "$LINENO" 5-    if diff "$ac_file" "$ac_tmp/config.h" >/dev/null 2>&1; then-      { printf "%s\n" "$as_me:${as_lineno-$LINENO}: $ac_file is unchanged" >&5-printf "%s\n" "$as_me: $ac_file is unchanged" >&6;}-    else-      rm -f "$ac_file"-      mv "$ac_tmp/config.h" "$ac_file" \-	|| as_fn_error $? "could not create $ac_file" "$LINENO" 5-    fi-  else-    printf "%s\n" "/* $configure_input  */" >&1 \-      && eval '$AWK -f "$ac_tmp/defines.awk"' "$ac_file_inputs" \-      || as_fn_error $? "could not create -" "$LINENO" 5-  fi-# Compute "$ac_file"'s index in $config_headers.-_am_arg="$ac_file"-_am_stamp_count=1-for _am_header in $config_headers :; do-  case $_am_header in-    $_am_arg | $_am_arg:* )-      break ;;-    * )-      _am_stamp_count=`expr $_am_stamp_count + 1` ;;-  esac-done-echo "timestamp for $_am_arg" >`$as_dirname -- "$_am_arg" ||-$as_expr X"$_am_arg" : 'X\(.*[^/]\)//*[^/][^/]*/*$' \| \-	 X"$_am_arg" : 'X\(//\)[^/]' \| \-	 X"$_am_arg" : 'X\(//\)$' \| \-	 X"$_am_arg" : 'X\(/\)' \| . 2>/dev/null ||-printf "%s\n" X"$_am_arg" |-    sed '/^X\(.*[^/]\)\/\/*[^/][^/]*\/*$/{-	    s//\1/-	    q-	  }-	  /^X\(\/\/\)[^/].*/{-	    s//\1/-	    q-	  }-	  /^X\(\/\/\)$/{-	    s//\1/-	    q-	  }-	  /^X\(\/\).*/{-	    s//\1/-	    q-	  }-	  s/.*/./; q'`/stamp-h$_am_stamp_count- ;;--  :C)  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: executing $ac_file commands" >&5-printf "%s\n" "$as_me: executing $ac_file commands" >&6;}- ;;-  esac---  case $ac_file$ac_mode in-    "buildir":C)   ac_top_srcdir="$ax_enable_builddir_srcdir"-  if test ".$ax_enable_builddir" = ".." ; then-    if test -f "$top_srcdir/Makefile" ; then-      { printf "%s\n" "$as_me:${as_lineno-$LINENO}: skipping top_srcdir/Makefile - left untouched" >&5-printf "%s\n" "$as_me: skipping top_srcdir/Makefile - left untouched" >&6;}-    else-      { printf "%s\n" "$as_me:${as_lineno-$LINENO}: skipping top_srcdir/Makefile - not created" >&5-printf "%s\n" "$as_me: skipping top_srcdir/Makefile - not created" >&6;}-    fi-  else-    if test -f "$ac_top_srcdir/Makefile" ; then-      a=`grep "^VERSION " "$ac_top_srcdir/Makefile"` ; b=`grep "^VERSION " Makefile`-      test "$a" != "$b" && rm "$ac_top_srcdir/Makefile"-    fi-    if test -f "$ac_top_srcdir/Makefile" ; then-	echo "$ac_top_srcdir/Makefile : $ac_top_srcdir/Makefile.in" > $tmp/conftemp.mk-	echo "	@ echo 'REMOVED,,,' >\$@" >> $tmp/conftemp.mk-      eval "${MAKE-make} -f $tmp/conftemp.mk 2>/dev/null >/dev/null"-      if grep '^REMOVED,,,' "$ac_top_srcdir/Makefile" >/dev/null-      then rm $ac_top_srcdir/Makefile ; fi-      cp $tmp/conftemp.mk $ac_top_srcdir/makefiles.mk~      ## DEBUGGING-    fi-    if test ! -f "$ac_top_srcdir/Makefile" ; then-      { printf "%s\n" "$as_me:${as_lineno-$LINENO}: create top_srcdir/Makefile guessed from local Makefile" >&5-printf "%s\n" "$as_me: create top_srcdir/Makefile guessed from local Makefile" >&6;}-      x='`' ; cat >$tmp/conftemp.sed <<_EOF-/^\$/n-x-/^\$/bS-x-/\\\\\$/{H;d;}-{H;s/.*//;x;}-bM-:S-x-/\\\\\$/{h;d;}-{h;s/.*//;x;}-:M-s/\\(\\n\\)	/\\1 /g-/^	/d-/^[	 ]*[\\#]/d-/^VPATH *=/d-s/^srcdir *=.*/srcdir = ./-s/^top_srcdir *=.*/top_srcdir = ./-/[:=]/!d-/^\\./d-/ = /b-/ .= /b-/:/!b-s/:.*/:/-s/ /  /g-s/ \\([a-z][a-z-]*[a-zA-Z0-9]\\)\\([ :]\\)/ \\1 \\1-all\\2/g-s/^\\([a-z][a-z-]*[a-zA-Z0-9]\\)\\([ :]\\)/\\1 \\1-all\\2/-s/  / /g-/^all all-all[ :]/i\\-all-configured : all-all-s/ [a-zA-Z0-9-]*-all [a-zA-Z0-9-]*-all-all//g-/-all-all/d-a\\-	@ HOST="\$(HOST)\" \\\\\\-	; test ".\$\$HOST" = "." && HOST=$x sh $ax_enable_builddir_auxdir/config.guess $x \\\\\\-	; BUILD=$x grep "^#### \$\$HOST " Makefile | sed -e 's/.*|//' $x \\\\\\-	; use=$x basename "\$\@" -all $x; n=$x echo \$\$BUILD | wc -w $x \\\\\\-	; echo "MAKE \$\$HOST : \$\$n * \$\@"; if test "\$\$n" -eq "0" ; then : \\\\\\-	; BUILD=$x grep "^####.*|" Makefile |tail -1| sed -e 's/.*|//' $x ; fi \\\\\\-	; test ".\$\$BUILD" = "." && BUILD="." \\\\\\-	; test "\$\$use" = "\$\@" && BUILD=$x echo "\$\$BUILD" | tail -1 $x \\\\\\-	; for i in \$\$BUILD ; do test ".\$\$i" = "." && continue \\\\\\-	; (cd "\$\$i" && test ! -f configure && \$(MAKE) \$\$use) || exit; done-/dist-all *:/a\\-	@ HOST="\$(HOST)\" \\\\\\-	; test ".\$\$HOST" = "." && HOST=$x sh $ax_enable_builddir_auxdir/config.guess $x \\\\\\-	; BUILD=$x grep "^#### \$\$HOST " Makefile | sed -e 's/.*|//' $x \\\\\\-	; found=$x echo \$\$BUILD | wc -w $x \\\\\\-	; echo "MAKE \$\$HOST : \$\$found \$(PACKAGE)-\$(VERSION).tar.*" \\\\\\-	; if test "\$\$found" -eq "0" ; then : \\\\\\-	; BUILD=$x grep "^#### .*|" Makefile |tail -1| sed -e 's/.*|//' $x \\\\\\-	; fi ; for i in \$\$BUILD ; do test ".\$\$i" = "." && continue \\\\\\-	; for f in \$\$i/\$(PACKAGE)-\$(VERSION).tar.* \\\\\\-	; do test -f "\$\$f" && mv "\$\$f" \$(PUB). ; done ; break ; done-/dist-[a-zA-Z0-9]*-all *:/a\\-	@ HOST="\$(HOST)\" \\\\\\-	; test ".\$\$HOST" = "." && HOST=$x sh ./config.guess $x \\\\\\-	; BUILD=$x grep "^#### \$\$HOST " Makefile | sed -e 's/.*|//' $x \\\\\\-	; found=$x echo \$\$BUILD | wc -w $x \\\\\\-	; echo "MAKE \$\$HOST : \$\$found \$(PACKAGE)-\$(VERSION).*" \\\\\\-	; if test "\$\$found" -eq "0" ; then : \\\\\\-	; BUILD=$x grep "^#### .*|" Makefile |tail -1| sed -e 's/.*|//' $x \\\\\\-	; fi ; for i in \$\$BUILD ; do test ".\$\$i" = "." && continue \\\\\\-	; for f in \$\$i/\$(PACKAGE)-\$(VERSION).* \\\\\\-	; do test -f "\$\$f" && mv "\$\$f" \$(PUB). ; done ; break ; done-/distclean-all *:/a\\-	@ HOST="\$(HOST)\" \\\\\\-	; test ".\$\$HOST" = "." && HOST=$x sh $ax_enable_builddir_auxdir/config.guess $x \\\\\\-	; BUILD=$x grep "^#### .*|" Makefile | sed -e 's/.*|//' $x \\\\\\-	; use=$x basename "\$\@" -all $x; n=$x echo \$\$BUILD | wc -w $x \\\\\\-	; echo "MAKE \$\$HOST : \$\$n * \$\@ (all local builds)" \\\\\\-	; test ".\$\$BUILD" = "." && BUILD="." \\\\\\-	; for i in \$\$BUILD ; do test ".\$\$i" = "." && continue \\\\\\-	; echo "# rm -r \$\$i"; done ; echo "# (sleep 3)" ; sleep 3 \\\\\\-	; for i in \$\$BUILD ; do test ".\$\$i" = "." && continue \\\\\\-	; echo "\$\$i" | grep "^/" > /dev/null && continue \\\\\\-	; echo "\$\$i" | grep "^../" > /dev/null && continue \\\\\\-	; echo "rm -r \$\$i"; (rm -r "\$\$i") ; done ; rm Makefile-_EOF-      cp "$tmp/conftemp.sed" "$ac_top_srcdir/makefile.sed~"            ## DEBUGGING-      $ax_enable_builddir_sed -f $tmp/conftemp.sed Makefile >$ac_top_srcdir/Makefile-      if test -f "$ac_top_srcdir/Makefile.mk" ; then-        { printf "%s\n" "$as_me:${as_lineno-$LINENO}: extend top_srcdir/Makefile with top_srcdir/Makefile.mk" >&5-printf "%s\n" "$as_me: extend top_srcdir/Makefile with top_srcdir/Makefile.mk" >&6;}-        cat $ac_top_srcdir/Makefile.mk >>$ac_top_srcdir/Makefile-      fi ; xxxx="####"-      echo "$xxxx CONFIGURATIONS FOR TOPLEVEL MAKEFILE: " >>$ac_top_srcdir/Makefile-      # sanity check-      if grep '^; echo "MAKE ' $ac_top_srcdir/Makefile >/dev/null ; then-        { printf "%s\n" "$as_me:${as_lineno-$LINENO}: buggy sed found - it deletes tab in \"a\" text parts" >&5-printf "%s\n" "$as_me: buggy sed found - it deletes tab in \"a\" text parts" >&6;}-        $ax_enable_builddir_sed -e '/^@ HOST=/s/^/	/' -e '/^; /s/^/	/' $ac_top_srcdir/Makefile \-          >$ac_top_srcdir/Makefile~-        (test -s $ac_top_srcdir/Makefile~ && mv $ac_top_srcdir/Makefile~ $ac_top_srcdir/Makefile) 2>/dev/null-      fi-    else-      xxxx="\\#\\#\\#\\#"-      # echo "/^$xxxx *$ax_enable_builddir_host /d" >$tmp/conftemp.sed-      echo "s!^$xxxx [^|]* | *$ax_enable_builddir *\$!$xxxx ...... $ax_enable_builddir!" >$tmp/conftemp.sed-      $ax_enable_builddir_sed -f "$tmp/conftemp.sed" "$ac_top_srcdir/Makefile" >$tmp/mkfile.tmp-        cp "$tmp/conftemp.sed" "$ac_top_srcdir/makefiles.sed~"         ## DEBUGGING-        cp "$tmp/mkfile.tmp"   "$ac_top_srcdir/makefiles.out~"         ## DEBUGGING-      if cmp -s "$ac_top_srcdir/Makefile" "$tmp/mkfile.tmp" 2>/dev/null ; then-        { printf "%s\n" "$as_me:${as_lineno-$LINENO}: keeping top_srcdir/Makefile from earlier configure" >&5-printf "%s\n" "$as_me: keeping top_srcdir/Makefile from earlier configure" >&6;}-        rm "$tmp/mkfile.tmp"-      else-        { printf "%s\n" "$as_me:${as_lineno-$LINENO}: reusing top_srcdir/Makefile from earlier configure" >&5-printf "%s\n" "$as_me: reusing top_srcdir/Makefile from earlier configure" >&6;}-        mv "$tmp/mkfile.tmp" "$ac_top_srcdir/Makefile"-      fi-    fi-    { printf "%s\n" "$as_me:${as_lineno-$LINENO}: build in $ax_enable_builddir (HOST=$ax_enable_builddir_host)" >&5-printf "%s\n" "$as_me: build in $ax_enable_builddir (HOST=$ax_enable_builddir_host)" >&6;}-    xxxx="####"-    echo "$xxxx" "$ax_enable_builddir_host" "|$ax_enable_builddir" >>$ac_top_srcdir/Makefile-  fi- ;;-    "depfiles":C) test x"$AMDEP_TRUE" != x"" || {-  # Older Autoconf quotes --file arguments for eval, but not when files-  # are listed without --file.  Let's play safe and only enable the eval-  # if we detect the quoting.-  # TODO: see whether this extra hack can be removed once we start-  # requiring Autoconf 2.70 or later.-  case $CONFIG_FILES in #(-  *\'*) :-    eval set x "$CONFIG_FILES" ;; #(-  *) :-    set x $CONFIG_FILES ;; #(-  *) :-     ;;-esac-  shift-  # Used to flag and report bootstrapping failures.-  am_rc=0-  for am_mf-  do-    # Strip MF so we end up with the name of the file.-    am_mf=`printf "%s\n" "$am_mf" | sed -e 's/:.*$//'`-    # Check whether this is an Automake generated Makefile which includes-    # dependency-tracking related rules and includes.-    # Grep'ing the whole file directly is not great: AIX grep has a line-    # limit of 2048, but all sed's we know have understand at least 4000.-    sed -n 's,^am--depfiles:.*,X,p' "$am_mf" | grep X >/dev/null 2>&1 \-      || continue-    am_dirpart=`$as_dirname -- "$am_mf" ||-$as_expr X"$am_mf" : 'X\(.*[^/]\)//*[^/][^/]*/*$' \| \-	 X"$am_mf" : 'X\(//\)[^/]' \| \-	 X"$am_mf" : 'X\(//\)$' \| \-	 X"$am_mf" : 'X\(/\)' \| . 2>/dev/null ||-printf "%s\n" X"$am_mf" |-    sed '/^X\(.*[^/]\)\/\/*[^/][^/]*\/*$/{-	    s//\1/-	    q-	  }-	  /^X\(\/\/\)[^/].*/{-	    s//\1/-	    q-	  }-	  /^X\(\/\/\)$/{-	    s//\1/-	    q-	  }-	  /^X\(\/\).*/{-	    s//\1/-	    q-	  }-	  s/.*/./; q'`-    am_filepart=`$as_basename -- "$am_mf" ||-$as_expr X/"$am_mf" : '.*/\([^/][^/]*\)/*$' \| \-	 X"$am_mf" : 'X\(//\)$' \| \-	 X"$am_mf" : 'X\(/\)' \| . 2>/dev/null ||-printf "%s\n" X/"$am_mf" |-    sed '/^.*\/\([^/][^/]*\)\/*$/{-	    s//\1/-	    q-	  }-	  /^X\/\(\/\/\)$/{-	    s//\1/-	    q-	  }-	  /^X\/\(\/\).*/{-	    s//\1/-	    q-	  }-	  s/.*/./; q'`-    { echo "$as_me:$LINENO: cd "$am_dirpart" \-      && sed -e '/# am--include-marker/d' "$am_filepart" \-        | $MAKE -f - am--depfiles" >&5-   (cd "$am_dirpart" \-      && sed -e '/# am--include-marker/d' "$am_filepart" \-        | $MAKE -f - am--depfiles) >&5 2>&5-   ac_status=$?-   echo "$as_me:$LINENO: \$? = $ac_status" >&5-   (exit $ac_status); } || am_rc=$?-  done-  if test $am_rc -ne 0; then-    { { printf "%s\n" "$as_me:${as_lineno-$LINENO}: error: in '$ac_pwd':" >&5-printf "%s\n" "$as_me: error: in '$ac_pwd':" >&2;}-as_fn_error $? "Something went wrong bootstrapping makefile fragments-    for automatic dependency tracking.  If GNU make was not used, consider-    re-running the configure script with MAKE=\"gmake\" (or whatever is-    necessary).  You can also try re-running configure with the-    '--disable-dependency-tracking' option to at least be able to build-    the package (albeit without support for automatic dependency tracking).-See 'config.log' for more details" "$LINENO" 5; }-  fi-  { am_dirpart=; unset am_dirpart;}-  { am_filepart=; unset am_filepart;}-  { am_mf=; unset am_mf;}-  { am_rc=; unset am_rc;}-  rm -f conftest-deps.mk-}- ;;-    "libtool":C)--    # See if we are running on zsh, and set the options that allow our-    # commands through without removal of \ escapes.-    if test -n "${ZSH_VERSION+set}"; then-      setopt NO_GLOB_SUBST-    fi--    cfgfile=${ofile}T-    trap "$RM \"$cfgfile\"; exit 1" 1 2 15-    $RM "$cfgfile"--    cat <<_LT_EOF >> "$cfgfile"-#! $SHELL-# Generated automatically by $as_me ($PACKAGE) $VERSION-# NOTE: Changes made to this file will be lost: look at ltmain.sh.--# Provide generalized library-building support services.-# Written by Gordon Matzigkeit, 1996--# Copyright (C) 2024 Free Software Foundation, Inc.-# This is free software; see the source for copying conditions.  There is NO-# warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.--# GNU Libtool is free software; you can redistribute it and/or modify-# it under the terms of the GNU General Public License as published by-# the Free Software Foundation; either version 2 of the License, or-# (at your option) any later version.-#-# As a special exception to the GNU General Public License, if you-# distribute this file as part of a program or library that is built-# using GNU Libtool, you may include this file under the  same-# distribution terms that you use for the rest of that program.-#-# GNU Libtool is distributed in the hope that it will be useful, but-# WITHOUT ANY WARRANTY; without even the implied warranty of-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the-# GNU General Public License for more details.-#-# You should have received a copy of the GNU General Public License-# along with this program.  If not, see <http://www.gnu.org/licenses/>.---# The names of the tagged configurations supported by this script.-available_tags='CXX '--# Configured defaults for sys_lib_dlsearch_path munging.-: \${LT_SYS_LIBRARY_PATH="$configure_time_lt_sys_library_path"}--# ### BEGIN LIBTOOL CONFIG--# Which release of libtool.m4 was used?-macro_version=$macro_version-macro_revision=$macro_revision--# Whether or not to build shared libraries.-build_libtool_libs=$enable_shared--# Whether or not to build static libraries.-build_old_libs=$enable_static--# What type of objects to build.-pic_mode=$pic_mode--# Whether or not to optimize for fast installation.-fast_install=$enable_fast_install--# Shared archive member basename,for filename based shared library versioning on AIX.-shared_archive_member_spec=$shared_archive_member_spec--# Shell to use when invoking shell scripts.-SHELL=$lt_SHELL--# An echo program that protects backslashes.-ECHO=$lt_ECHO--# The PATH separator for the build system.-PATH_SEPARATOR=$lt_PATH_SEPARATOR--# The host system.-host_alias=$host_alias-host=$host-host_os=$host_os--# The build system.-build_alias=$build_alias-build=$build-build_os=$build_os--# A sed program that does not truncate output.-SED=$lt_SED--# Sed that helps us avoid accidentally triggering echo(1) options like -n.-Xsed="\$SED -e 1s/^X//"--# A grep program that handles long lines.-GREP=$lt_GREP--# An ERE matcher.-EGREP=$lt_EGREP--# A literal string matcher.-FGREP=$lt_FGREP--# A BSD- or MS-compatible name lister.-NM=$lt_NM--# Whether we need soft or hard links.-LN_S=$lt_LN_S--# What is the maximum length of a command?-max_cmd_len=$max_cmd_len--# Object file suffix (normally "o").-objext=$ac_objext--# Executable file suffix (normally "").-exeext=$exeext--# whether the shell understands "unset".-lt_unset=$lt_unset--# turn spaces into newlines.-SP2NL=$lt_lt_SP2NL--# turn newlines into spaces.-NL2SP=$lt_lt_NL2SP--# convert \$build file names to \$host format.-to_host_file_cmd=$lt_cv_to_host_file_cmd--# convert \$build files to toolchain format.-to_tool_file_cmd=$lt_cv_to_tool_file_cmd--# A file(cmd) program that detects file types.-FILECMD=$lt_FILECMD--# An object symbol dumper.-OBJDUMP=$lt_OBJDUMP--# Method to check whether dependent libraries are shared objects.-deplibs_check_method=$lt_deplibs_check_method--# Command to use when deplibs_check_method = "file_magic".-file_magic_cmd=$lt_file_magic_cmd--# How to find potential files when deplibs_check_method = "file_magic".-file_magic_glob=$lt_file_magic_glob--# Find potential files using nocaseglob when deplibs_check_method = "file_magic".-want_nocaseglob=$lt_want_nocaseglob--# DLL creation program.-DLLTOOL=$lt_DLLTOOL--# Command to associate shared and link libraries.-sharedlib_from_linklib_cmd=$lt_sharedlib_from_linklib_cmd--# The archiver.-AR=$lt_AR--# Flags to create an archive (by configure).-lt_ar_flags=$lt_ar_flags--# Flags to create an archive.-AR_FLAGS=\${ARFLAGS-"\$lt_ar_flags"}--# How to feed a file listing to the archiver.-archiver_list_spec=$lt_archiver_list_spec--# A symbol stripping program.-STRIP=$lt_STRIP--# Commands used to install an old-style archive.-RANLIB=$lt_RANLIB-old_postinstall_cmds=$lt_old_postinstall_cmds-old_postuninstall_cmds=$lt_old_postuninstall_cmds--# Whether to use a lock for old archive extraction.-lock_old_archive_extraction=$lock_old_archive_extraction--# A C compiler.-LTCC=$lt_CC--# LTCC compiler flags.-LTCFLAGS=$lt_CFLAGS--# Take the output of nm and produce a listing of raw symbols and C names.-global_symbol_pipe=$lt_lt_cv_sys_global_symbol_pipe--# Transform the output of nm in a proper C declaration.-global_symbol_to_cdecl=$lt_lt_cv_sys_global_symbol_to_cdecl--# Transform the output of nm into a list of symbols to manually relocate.-global_symbol_to_import=$lt_lt_cv_sys_global_symbol_to_import--# Transform the output of nm in a C name address pair.-global_symbol_to_c_name_address=$lt_lt_cv_sys_global_symbol_to_c_name_address--# Transform the output of nm in a C name address pair when lib prefix is needed.-global_symbol_to_c_name_address_lib_prefix=$lt_lt_cv_sys_global_symbol_to_c_name_address_lib_prefix--# The name lister interface.-nm_interface=$lt_lt_cv_nm_interface--# Specify filename containing input files for \$NM.-nm_file_list_spec=$lt_nm_file_list_spec--# The root where to search for dependent libraries,and where our libraries should be installed.-lt_sysroot=$lt_sysroot--# Command to truncate a binary pipe.-lt_truncate_bin=$lt_lt_cv_truncate_bin--# The name of the directory that contains temporary libtool files.-objdir=$objdir--# Used to examine libraries when file_magic_cmd begins with "file".-MAGIC_CMD=$MAGIC_CMD--# Must we lock files when doing compilation?-need_locks=$lt_need_locks--# Manifest tool.-MANIFEST_TOOL=$lt_MANIFEST_TOOL--# Tool to manipulate archived DWARF debug symbol files on Mac OS X.-DSYMUTIL=$lt_DSYMUTIL--# Tool to change global to local symbols on Mac OS X.-NMEDIT=$lt_NMEDIT--# Tool to manipulate fat objects and archives on Mac OS X.-LIPO=$lt_LIPO--# ldd/readelf like tool for Mach-O binaries on Mac OS X.-OTOOL=$lt_OTOOL--# ldd/readelf like tool for 64 bit Mach-O binaries on Mac OS X 10.4.-OTOOL64=$lt_OTOOL64--# Old archive suffix (normally "a").-libext=$libext--# Shared library suffix (normally ".so").-shrext_cmds=$lt_shrext_cmds--# The commands to extract the exported symbol list from a shared archive.-extract_expsyms_cmds=$lt_extract_expsyms_cmds--# Variables whose values should be saved in libtool wrapper scripts and-# restored at link time.-variables_saved_for_relink=$lt_variables_saved_for_relink--# Do we need the "lib" prefix for modules?-need_lib_prefix=$need_lib_prefix--# Do we need a version for libraries?-need_version=$need_version--# Library versioning type.-version_type=$version_type--# Shared library runtime path variable.-runpath_var=$runpath_var--# Shared library path variable.-shlibpath_var=$shlibpath_var--# Is shlibpath searched before the hard-coded library search path?-shlibpath_overrides_runpath=$shlibpath_overrides_runpath--# Format of library name prefix.-libname_spec=$lt_libname_spec--# List of archive names.  First name is the real one, the rest are links.-# The last name is the one that the linker finds with -lNAME-library_names_spec=$lt_library_names_spec--# The coded name of the library, if different from the real name.-soname_spec=$lt_soname_spec--# Permission mode override for installation of shared libraries.-install_override_mode=$lt_install_override_mode--# Command to use after installation of a shared archive.-postinstall_cmds=$lt_postinstall_cmds--# Command to use after uninstallation of a shared archive.-postuninstall_cmds=$lt_postuninstall_cmds--# Commands used to finish a libtool library installation in a directory.-finish_cmds=$lt_finish_cmds--# As "finish_cmds", except a single script fragment to be evaled but-# not shown.-finish_eval=$lt_finish_eval--# Whether we should hardcode library paths into libraries.-hardcode_into_libs=$hardcode_into_libs--# Compile-time system search path for libraries.-sys_lib_search_path_spec=$lt_sys_lib_search_path_spec--# Detected run-time system search path for libraries.-sys_lib_dlsearch_path_spec=$lt_configure_time_dlsearch_path--# Explicit LT_SYS_LIBRARY_PATH set during ./configure time.-configure_time_lt_sys_library_path=$lt_configure_time_lt_sys_library_path--# Whether dlopen is supported.-dlopen_support=$enable_dlopen--# Whether dlopen of programs is supported.-dlopen_self=$enable_dlopen_self--# Whether dlopen of statically linked programs is supported.-dlopen_self_static=$enable_dlopen_self_static--# Commands to strip libraries.-old_striplib=$lt_old_striplib-striplib=$lt_striplib---# The linker used to build libraries.-LD=$lt_LD--# How to create reloadable object files.-reload_flag=$lt_reload_flag-reload_cmds=$lt_reload_cmds--# Commands used to build an old-style archive.-old_archive_cmds=$lt_old_archive_cmds--# A language specific compiler.-CC=$lt_compiler--# Is the compiler the GNU compiler?-with_gcc=$GCC--# Compiler flag to turn off builtin functions.-no_builtin_flag=$lt_lt_prog_compiler_no_builtin_flag--# Additional compiler flags for building library objects.-pic_flag=$lt_lt_prog_compiler_pic--# How to pass a linker flag through the compiler.-wl=$lt_lt_prog_compiler_wl--# Compiler flag to prevent dynamic linking.-link_static_flag=$lt_lt_prog_compiler_static--# Does compiler simultaneously support -c and -o options?-compiler_c_o=$lt_lt_cv_prog_compiler_c_o--# Whether or not to add -lc for building shared libraries.-build_libtool_need_lc=$archive_cmds_need_lc--# Whether or not to disallow shared libs when runtime libs are static.-allow_libtool_libs_with_static_runtimes=$enable_shared_with_static_runtimes--# Compiler flag to allow reflexive dlopens.-export_dynamic_flag_spec=$lt_export_dynamic_flag_spec--# Compiler flag to generate shared objects directly from archives.-whole_archive_flag_spec=$lt_whole_archive_flag_spec--# Whether the compiler copes with passing no objects directly.-compiler_needs_object=$lt_compiler_needs_object--# Create an old-style archive from a shared archive.-old_archive_from_new_cmds=$lt_old_archive_from_new_cmds--# Create a temporary old-style archive to link instead of a shared archive.-old_archive_from_expsyms_cmds=$lt_old_archive_from_expsyms_cmds--# Commands used to build a shared archive.-archive_cmds=$lt_archive_cmds-archive_expsym_cmds=$lt_archive_expsym_cmds--# Commands used to build a loadable module if different from building-# a shared archive.-module_cmds=$lt_module_cmds-module_expsym_cmds=$lt_module_expsym_cmds--# Whether we are building with GNU ld or not.-with_gnu_ld=$lt_with_gnu_ld--# Flag that allows shared libraries with undefined symbols to be built.-allow_undefined_flag=$lt_allow_undefined_flag--# Flag that enforces no undefined symbols.-no_undefined_flag=$lt_no_undefined_flag--# Flag to hardcode \$libdir into a binary during linking.-# This must work even if \$libdir does not exist-hardcode_libdir_flag_spec=$lt_hardcode_libdir_flag_spec--# Whether we need a single "-rpath" flag with a separated argument.-hardcode_libdir_separator=$lt_hardcode_libdir_separator--# Set to "yes" if using DIR/libNAME\$shared_ext during linking hardcodes-# DIR into the resulting binary.-hardcode_direct=$hardcode_direct--# Set to "yes" if using DIR/libNAME\$shared_ext during linking hardcodes-# DIR into the resulting binary and the resulting library dependency is-# "absolute",i.e. impossible to change by setting \$shlibpath_var if the-# library is relocated.-hardcode_direct_absolute=$hardcode_direct_absolute--# Set to "yes" if using the -LDIR flag during linking hardcodes DIR-# into the resulting binary.-hardcode_minus_L=$hardcode_minus_L--# Set to "yes" if using SHLIBPATH_VAR=DIR during linking hardcodes DIR-# into the resulting binary.-hardcode_shlibpath_var=$hardcode_shlibpath_var--# Set to "yes" if building a shared library automatically hardcodes DIR-# into the library and all subsequent libraries and executables linked-# against it.-hardcode_automatic=$hardcode_automatic--# Set to yes if linker adds runtime paths of dependent libraries-# to runtime path list.-inherit_rpath=$inherit_rpath--# Whether libtool must link a program against all its dependency libraries.-link_all_deplibs=$link_all_deplibs--# Set to "yes" if exported symbols are required.-always_export_symbols=$always_export_symbols--# The commands to list exported symbols.-export_symbols_cmds=$lt_export_symbols_cmds--# Symbols that should not be listed in the preloaded symbols.-exclude_expsyms=$lt_exclude_expsyms--# Symbols that must always be exported.-include_expsyms=$lt_include_expsyms--# Commands necessary for linking programs (against libraries) with templates.-prelink_cmds=$lt_prelink_cmds--# Commands necessary for finishing linking programs.-postlink_cmds=$lt_postlink_cmds--# Specify filename containing input files.-file_list_spec=$lt_file_list_spec--# How to hardcode a shared library path into an executable.-hardcode_action=$hardcode_action--# The directories searched by this compiler when creating a shared library.-compiler_lib_search_dirs=$lt_compiler_lib_search_dirs--# Dependencies to place before and after the objects being linked to-# create a shared library.-predep_objects=$lt_predep_objects-postdep_objects=$lt_postdep_objects-predeps=$lt_predeps-postdeps=$lt_postdeps--# The library search path used internally by the compiler when linking-# a shared library.-compiler_lib_search_path=$lt_compiler_lib_search_path--# ### END LIBTOOL CONFIG--_LT_EOF--    cat <<'_LT_EOF' >> "$cfgfile"--# ### BEGIN FUNCTIONS SHARED WITH CONFIGURE--# func_munge_path_list VARIABLE PATH-# ------------------------------------# VARIABLE is name of variable containing _space_ separated list of-# directories to be munged by the contents of PATH, which is string-# having a format:-# "DIR[:DIR]:"-#       string "DIR[ DIR]" will be prepended to VARIABLE-# ":DIR[:DIR]"-#       string "DIR[ DIR]" will be appended to VARIABLE-# "DIRP[:DIRP]::[DIRA:]DIRA"-#       string "DIRP[ DIRP]" will be prepended to VARIABLE and string-#       "DIRA[ DIRA]" will be appended to VARIABLE-# "DIR[:DIR]"-#       VARIABLE will be replaced by "DIR[ DIR]"-func_munge_path_list ()-{-    case x$2 in-    x)-        ;;-    *:)-        eval $1=\"`$ECHO $2 | $SED 's/:/ /g'` \$$1\"-        ;;-    x:*)-        eval $1=\"\$$1 `$ECHO $2 | $SED 's/:/ /g'`\"-        ;;-    *::*)-        eval $1=\"\$$1\ `$ECHO $2 | $SED -e 's/.*:://' -e 's/:/ /g'`\"-        eval $1=\"`$ECHO $2 | $SED -e 's/::.*//' -e 's/:/ /g'`\ \$$1\"-        ;;-    *)-        eval $1=\"`$ECHO $2 | $SED 's/:/ /g'`\"-        ;;-    esac-}---# Calculate cc_basename.  Skip known compiler wrappers and cross-prefix.-func_cc_basename ()-{-    for cc_temp in $*""; do-      case $cc_temp in-        compile | *[\\/]compile | ccache | *[\\/]ccache ) ;;-        distcc | *[\\/]distcc | purify | *[\\/]purify ) ;;-        \-*) ;;-        *) break;;-      esac-    done-    func_cc_basename_result=`$ECHO "$cc_temp" | $SED "s%.*/%%; s%^$host_alias-%%"`-}---# ### END FUNCTIONS SHARED WITH CONFIGURE--_LT_EOF--  case $host_os in-  aix3*)-    cat <<\_LT_EOF >> "$cfgfile"-# AIX sometimes has problems with the GCC collect2 program.  For some-# reason, if we set the COLLECT_NAMES environment variable, the problems-# vanish in a puff of smoke.-if test set != "${COLLECT_NAMES+set}"; then-  COLLECT_NAMES=-  export COLLECT_NAMES-fi-_LT_EOF-    ;;-  esac----ltmain=$ac_aux_dir/ltmain.sh---  # We use sed instead of cat because bash on DJGPP gets confused if-  # if finds mixed CR/LF and LF-only lines.  Since sed operates in-  # text mode, it properly converts lines to CR/LF.  This bash problem-  # is reportedly fixed, but why not run on old versions too?-  $SED '$q' "$ltmain" >> "$cfgfile" \-     || (rm -f "$cfgfile"; exit 1)--   mv -f "$cfgfile" "$ofile" ||-    (rm -f "$ofile" && cp "$cfgfile" "$ofile" && rm -f "$cfgfile")-  chmod +x "$ofile"---    cat <<_LT_EOF >> "$ofile"--# ### BEGIN LIBTOOL TAG CONFIG: CXX--# The linker used to build libraries.-LD=$lt_LD_CXX--# How to create reloadable object files.-reload_flag=$lt_reload_flag_CXX-reload_cmds=$lt_reload_cmds_CXX--# Commands used to build an old-style archive.-old_archive_cmds=$lt_old_archive_cmds_CXX--# A language specific compiler.-CC=$lt_compiler_CXX--# Is the compiler the GNU compiler?-with_gcc=$GCC_CXX--# Compiler flag to turn off builtin functions.-no_builtin_flag=$lt_lt_prog_compiler_no_builtin_flag_CXX--# Additional compiler flags for building library objects.-pic_flag=$lt_lt_prog_compiler_pic_CXX--# How to pass a linker flag through the compiler.-wl=$lt_lt_prog_compiler_wl_CXX--# Compiler flag to prevent dynamic linking.-link_static_flag=$lt_lt_prog_compiler_static_CXX--# Does compiler simultaneously support -c and -o options?-compiler_c_o=$lt_lt_cv_prog_compiler_c_o_CXX--# Whether or not to add -lc for building shared libraries.-build_libtool_need_lc=$archive_cmds_need_lc_CXX--# Whether or not to disallow shared libs when runtime libs are static.-allow_libtool_libs_with_static_runtimes=$enable_shared_with_static_runtimes_CXX--# Compiler flag to allow reflexive dlopens.-export_dynamic_flag_spec=$lt_export_dynamic_flag_spec_CXX--# Compiler flag to generate shared objects directly from archives.-whole_archive_flag_spec=$lt_whole_archive_flag_spec_CXX--# Whether the compiler copes with passing no objects directly.-compiler_needs_object=$lt_compiler_needs_object_CXX--# Create an old-style archive from a shared archive.-old_archive_from_new_cmds=$lt_old_archive_from_new_cmds_CXX--# Create a temporary old-style archive to link instead of a shared archive.-old_archive_from_expsyms_cmds=$lt_old_archive_from_expsyms_cmds_CXX--# Commands used to build a shared archive.-archive_cmds=$lt_archive_cmds_CXX-archive_expsym_cmds=$lt_archive_expsym_cmds_CXX--# Commands used to build a loadable module if different from building-# a shared archive.-module_cmds=$lt_module_cmds_CXX-module_expsym_cmds=$lt_module_expsym_cmds_CXX--# Whether we are building with GNU ld or not.-with_gnu_ld=$lt_with_gnu_ld_CXX--# Flag that allows shared libraries with undefined symbols to be built.-allow_undefined_flag=$lt_allow_undefined_flag_CXX--# Flag that enforces no undefined symbols.-no_undefined_flag=$lt_no_undefined_flag_CXX--# Flag to hardcode \$libdir into a binary during linking.-# This must work even if \$libdir does not exist-hardcode_libdir_flag_spec=$lt_hardcode_libdir_flag_spec_CXX--# Whether we need a single "-rpath" flag with a separated argument.-hardcode_libdir_separator=$lt_hardcode_libdir_separator_CXX--# Set to "yes" if using DIR/libNAME\$shared_ext during linking hardcodes-# DIR into the resulting binary.-hardcode_direct=$hardcode_direct_CXX--# Set to "yes" if using DIR/libNAME\$shared_ext during linking hardcodes-# DIR into the resulting binary and the resulting library dependency is-# "absolute",i.e. impossible to change by setting \$shlibpath_var if the-# library is relocated.-hardcode_direct_absolute=$hardcode_direct_absolute_CXX--# Set to "yes" if using the -LDIR flag during linking hardcodes DIR-# into the resulting binary.-hardcode_minus_L=$hardcode_minus_L_CXX--# Set to "yes" if using SHLIBPATH_VAR=DIR during linking hardcodes DIR-# into the resulting binary.-hardcode_shlibpath_var=$hardcode_shlibpath_var_CXX--# Set to "yes" if building a shared library automatically hardcodes DIR-# into the library and all subsequent libraries and executables linked-# against it.-hardcode_automatic=$hardcode_automatic_CXX--# Set to yes if linker adds runtime paths of dependent libraries-# to runtime path list.-inherit_rpath=$inherit_rpath_CXX--# Whether libtool must link a program against all its dependency libraries.-link_all_deplibs=$link_all_deplibs_CXX--# Set to "yes" if exported symbols are required.-always_export_symbols=$always_export_symbols_CXX--# The commands to list exported symbols.-export_symbols_cmds=$lt_export_symbols_cmds_CXX--# Symbols that should not be listed in the preloaded symbols.-exclude_expsyms=$lt_exclude_expsyms_CXX--# Symbols that must always be exported.-include_expsyms=$lt_include_expsyms_CXX--# Commands necessary for linking programs (against libraries) with templates.-prelink_cmds=$lt_prelink_cmds_CXX--# Commands necessary for finishing linking programs.-postlink_cmds=$lt_postlink_cmds_CXX--# Specify filename containing input files.-file_list_spec=$lt_file_list_spec_CXX--# How to hardcode a shared library path into an executable.-hardcode_action=$hardcode_action_CXX--# The directories searched by this compiler when creating a shared library.-compiler_lib_search_dirs=$lt_compiler_lib_search_dirs_CXX--# Dependencies to place before and after the objects being linked to-# create a shared library.-predep_objects=$lt_predep_objects_CXX-postdep_objects=$lt_postdep_objects_CXX-predeps=$lt_predeps_CXX-postdeps=$lt_postdeps_CXX--# The library search path used internally by the compiler when linking-# a shared library.-compiler_lib_search_path=$lt_compiler_lib_search_path_CXX--# ### END LIBTOOL TAG CONFIG: CXX-_LT_EOF-- ;;--  esac-done # for ac_tag---as_fn_exit 0-_ACEOF-ac_clean_files=$ac_clean_files_save--test $ac_write_fail = 0 ||-  as_fn_error $? "write failure creating $CONFIG_STATUS" "$LINENO" 5---# configure is writing to config.log, and then calls config.status.-# config.status does its own redirection, appending to config.log.-# Unfortunately, on DOS this fails, as config.log is still kept open-# by configure, so config.status won't be able to write to it; its-# output is simply discarded.  So we exec the FD to /dev/null,-# effectively closing config.log, so it can be properly (re)opened and-# appended to by config.status.  When coming back to configure, we-# need to make the FD available again.-if test "$no_create" != yes; then-  ac_cs_success=:-  ac_config_status_args=-  test "$silent" = yes &&-    ac_config_status_args="$ac_config_status_args --quiet"-  exec 5>/dev/null-  $SHELL $CONFIG_STATUS $ac_config_status_args || ac_cs_success=false-  exec 5>>config.log-  # Use ||, not &&, to avoid exiting from the if with $? = 1, which-  # would make configure fail if this is the last instruction.-  $ac_cs_success || as_fn_exit 1-fi-if test -n "$ac_unrecognized_opts" && test "$enable_option_checking" != no; then-  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: WARNING: unrecognized options: $ac_unrecognized_opts" >&5-printf "%s\n" "$as_me: WARNING: unrecognized options: $ac_unrecognized_opts" >&2;}-fi-+# Generated by GNU Autoconf 2.69 for libffi 3.6.0.+#+# Report bugs to <http://github.com/libffi/libffi/issues>.+#+#+# Copyright (C) 1992-1996, 1998-2012 Free Software Foundation, Inc.+#+#+# This configure script is free software; the Free Software Foundation+# gives unlimited permission to copy, distribute and modify it.+## -------------------- ##+## M4sh Initialization. ##+## -------------------- ##++# Be more Bourne compatible+DUALCASE=1; export DUALCASE # for MKS sh+if test -n "${ZSH_VERSION+set}" && (emulate sh) >/dev/null 2>&1; then :+  emulate sh+  NULLCMD=:+  # Pre-4.2 versions of Zsh do word splitting on ${1+"$@"}, which+  # is contrary to our usage.  Disable this feature.+  alias -g '${1+"$@"}'='"$@"'+  setopt NO_GLOB_SUBST+else+  case `(set -o) 2>/dev/null` in #(+  *posix*) :+    set -o posix ;; #(+  *) :+     ;;+esac+fi+++as_nl='+'+export as_nl+# Printing a long string crashes Solaris 7 /usr/bin/printf.+as_echo='\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\'+as_echo=$as_echo$as_echo$as_echo$as_echo$as_echo+as_echo=$as_echo$as_echo$as_echo$as_echo$as_echo$as_echo+# Prefer a ksh shell builtin over an external printf program on Solaris,+# but without wasting forks for bash or zsh.+if test -z "$BASH_VERSION$ZSH_VERSION" \+    && (test "X`print -r -- $as_echo`" = "X$as_echo") 2>/dev/null; then+  as_echo='print -r --'+  as_echo_n='print -rn --'+elif (test "X`printf %s $as_echo`" = "X$as_echo") 2>/dev/null; then+  as_echo='printf %s\n'+  as_echo_n='printf %s'+else+  if test "X`(/usr/ucb/echo -n -n $as_echo) 2>/dev/null`" = "X-n $as_echo"; then+    as_echo_body='eval /usr/ucb/echo -n "$1$as_nl"'+    as_echo_n='/usr/ucb/echo -n'+  else+    as_echo_body='eval expr "X$1" : "X\\(.*\\)"'+    as_echo_n_body='eval+      arg=$1;+      case $arg in #(+      *"$as_nl"*)+	expr "X$arg" : "X\\(.*\\)$as_nl";+	arg=`expr "X$arg" : ".*$as_nl\\(.*\\)"`;;+      esac;+      expr "X$arg" : "X\\(.*\\)" | tr -d "$as_nl"+    '+    export as_echo_n_body+    as_echo_n='sh -c $as_echo_n_body as_echo'+  fi+  export as_echo_body+  as_echo='sh -c $as_echo_body as_echo'+fi++# The user is always right.+if test "${PATH_SEPARATOR+set}" != set; then+  PATH_SEPARATOR=:+  (PATH='/bin;/bin'; FPATH=$PATH; sh -c :) >/dev/null 2>&1 && {+    (PATH='/bin:/bin'; FPATH=$PATH; sh -c :) >/dev/null 2>&1 ||+      PATH_SEPARATOR=';'+  }+fi+++# IFS+# We need space, tab and new line, in precisely that order.  Quoting is+# there to prevent editors from complaining about space-tab.+# (If _AS_PATH_WALK were called with IFS unset, it would disable word+# splitting by setting IFS to empty value.)+IFS=" ""	$as_nl"++# Find who we are.  Look in the path if we contain no directory separator.+as_myself=+case $0 in #((+  *[\\/]* ) as_myself=$0 ;;+  *) as_save_IFS=$IFS; IFS=$PATH_SEPARATOR+for as_dir in $PATH+do+  IFS=$as_save_IFS+  test -z "$as_dir" && as_dir=.+    test -r "$as_dir/$0" && as_myself=$as_dir/$0 && break+  done+IFS=$as_save_IFS++     ;;+esac+# We did not find ourselves, most probably we were run as `sh COMMAND'+# in which case we are not to be found in the path.+if test "x$as_myself" = x; then+  as_myself=$0+fi+if test ! -f "$as_myself"; then+  $as_echo "$as_myself: error: cannot find myself; rerun with an absolute file name" >&2+  exit 1+fi++# Unset variables that we do not need and which cause bugs (e.g. in+# pre-3.0 UWIN ksh).  But do not cause bugs in bash 2.01; the "|| exit 1"+# suppresses any "Segmentation fault" message there.  '((' could+# trigger a bug in pdksh 5.2.14.+for as_var in BASH_ENV ENV MAIL MAILPATH+do eval test x\${$as_var+set} = xset \+  && ( (unset $as_var) || exit 1) >/dev/null 2>&1 && unset $as_var || :+done+PS1='$ '+PS2='> '+PS4='+ '++# NLS nuisances.+LC_ALL=C+export LC_ALL+LANGUAGE=C+export LANGUAGE++# CDPATH.+(unset CDPATH) >/dev/null 2>&1 && unset CDPATH++# Use a proper internal environment variable to ensure we don't fall+  # into an infinite loop, continuously re-executing ourselves.+  if test x"${_as_can_reexec}" != xno && test "x$CONFIG_SHELL" != x; then+    _as_can_reexec=no; export _as_can_reexec;+    # We cannot yet assume a decent shell, so we have to provide a+# neutralization value for shells without unset; and this also+# works around shells that cannot unset nonexistent variables.+# Preserve -v and -x to the replacement shell.+BASH_ENV=/dev/null+ENV=/dev/null+(unset BASH_ENV) >/dev/null 2>&1 && unset BASH_ENV ENV+case $- in # ((((+  *v*x* | *x*v* ) as_opts=-vx ;;+  *v* ) as_opts=-v ;;+  *x* ) as_opts=-x ;;+  * ) as_opts= ;;+esac+exec $CONFIG_SHELL $as_opts "$as_myself" ${1+"$@"}+# Admittedly, this is quite paranoid, since all the known shells bail+# out after a failed `exec'.+$as_echo "$0: could not re-execute with $CONFIG_SHELL" >&2+as_fn_exit 255+  fi+  # We don't want this to propagate to other subprocesses.+          { _as_can_reexec=; unset _as_can_reexec;}+if test "x$CONFIG_SHELL" = x; then+  as_bourne_compatible="if test -n \"\${ZSH_VERSION+set}\" && (emulate sh) >/dev/null 2>&1; then :+  emulate sh+  NULLCMD=:+  # Pre-4.2 versions of Zsh do word splitting on \${1+\"\$@\"}, which+  # is contrary to our usage.  Disable this feature.+  alias -g '\${1+\"\$@\"}'='\"\$@\"'+  setopt NO_GLOB_SUBST+else+  case \`(set -o) 2>/dev/null\` in #(+  *posix*) :+    set -o posix ;; #(+  *) :+     ;;+esac+fi+"+  as_required="as_fn_return () { (exit \$1); }+as_fn_success () { as_fn_return 0; }+as_fn_failure () { as_fn_return 1; }+as_fn_ret_success () { return 0; }+as_fn_ret_failure () { return 1; }++exitcode=0+as_fn_success || { exitcode=1; echo as_fn_success failed.; }+as_fn_failure && { exitcode=1; echo as_fn_failure succeeded.; }+as_fn_ret_success || { exitcode=1; echo as_fn_ret_success failed.; }+as_fn_ret_failure && { exitcode=1; echo as_fn_ret_failure succeeded.; }+if ( set x; as_fn_ret_success y && test x = \"\$1\" ); then :++else+  exitcode=1; echo positional parameters were not saved.+fi+test x\$exitcode = x0 || exit 1+test -x / || exit 1"+  as_suggested="  as_lineno_1=";as_suggested=$as_suggested$LINENO;as_suggested=$as_suggested" as_lineno_1a=\$LINENO+  as_lineno_2=";as_suggested=$as_suggested$LINENO;as_suggested=$as_suggested" as_lineno_2a=\$LINENO+  eval 'test \"x\$as_lineno_1'\$as_run'\" != \"x\$as_lineno_2'\$as_run'\" &&+  test \"x\`expr \$as_lineno_1'\$as_run' + 1\`\" = \"x\$as_lineno_2'\$as_run'\"' || exit 1+test \$(( 1 + 1 )) = 2 || exit 1++  test -n \"\${ZSH_VERSION+set}\${BASH_VERSION+set}\" || (+    ECHO='\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\'+    ECHO=\$ECHO\$ECHO\$ECHO\$ECHO\$ECHO+    ECHO=\$ECHO\$ECHO\$ECHO\$ECHO\$ECHO\$ECHO+    PATH=/empty FPATH=/empty; export PATH FPATH+    test \"X\`printf %s \$ECHO\`\" = \"X\$ECHO\" \\+      || test \"X\`print -r -- \$ECHO\`\" = \"X\$ECHO\" ) || exit 1"+  if (eval "$as_required") 2>/dev/null; then :+  as_have_required=yes+else+  as_have_required=no+fi+  if test x$as_have_required = xyes && (eval "$as_suggested") 2>/dev/null; then :++else+  as_save_IFS=$IFS; IFS=$PATH_SEPARATOR+as_found=false+for as_dir in /bin$PATH_SEPARATOR/usr/bin$PATH_SEPARATOR$PATH+do+  IFS=$as_save_IFS+  test -z "$as_dir" && as_dir=.+  as_found=:+  case $as_dir in #(+	 /*)+	   for as_base in sh bash ksh sh5; do+	     # Try only shells that exist, to save several forks.+	     as_shell=$as_dir/$as_base+	     if { test -f "$as_shell" || test -f "$as_shell.exe"; } &&+		    { $as_echo "$as_bourne_compatible""$as_required" | as_run=a "$as_shell"; } 2>/dev/null; then :+  CONFIG_SHELL=$as_shell as_have_required=yes+		   if { $as_echo "$as_bourne_compatible""$as_suggested" | as_run=a "$as_shell"; } 2>/dev/null; then :+  break 2+fi+fi+	   done;;+       esac+  as_found=false+done+$as_found || { if { test -f "$SHELL" || test -f "$SHELL.exe"; } &&+	      { $as_echo "$as_bourne_compatible""$as_required" | as_run=a "$SHELL"; } 2>/dev/null; then :+  CONFIG_SHELL=$SHELL as_have_required=yes+fi; }+IFS=$as_save_IFS+++      if test "x$CONFIG_SHELL" != x; then :+  export CONFIG_SHELL+             # We cannot yet assume a decent shell, so we have to provide a+# neutralization value for shells without unset; and this also+# works around shells that cannot unset nonexistent variables.+# Preserve -v and -x to the replacement shell.+BASH_ENV=/dev/null+ENV=/dev/null+(unset BASH_ENV) >/dev/null 2>&1 && unset BASH_ENV ENV+case $- in # ((((+  *v*x* | *x*v* ) as_opts=-vx ;;+  *v* ) as_opts=-v ;;+  *x* ) as_opts=-x ;;+  * ) as_opts= ;;+esac+exec $CONFIG_SHELL $as_opts "$as_myself" ${1+"$@"}+# Admittedly, this is quite paranoid, since all the known shells bail+# out after a failed `exec'.+$as_echo "$0: could not re-execute with $CONFIG_SHELL" >&2+exit 255+fi++    if test x$as_have_required = xno; then :+  $as_echo "$0: This script requires a shell more modern than all"+  $as_echo "$0: the shells that I found on your system."+  if test x${ZSH_VERSION+set} = xset ; then+    $as_echo "$0: In particular, zsh $ZSH_VERSION has bugs and should"+    $as_echo "$0: be upgraded to zsh 4.3.4 or later."+  else+    $as_echo "$0: Please tell bug-autoconf@gnu.org and+$0: http://github.com/libffi/libffi/issues about your+$0: system, including any error possibly output before this+$0: message. Then install a modern shell, or manually run+$0: the script under such a shell if you do have one."+  fi+  exit 1+fi+fi+fi+SHELL=${CONFIG_SHELL-/bin/sh}+export SHELL+# Unset more variables known to interfere with behavior of common tools.+CLICOLOR_FORCE= GREP_OPTIONS=+unset CLICOLOR_FORCE GREP_OPTIONS++## --------------------- ##+## M4sh Shell Functions. ##+## --------------------- ##+# as_fn_unset VAR+# ---------------+# Portably unset VAR.+as_fn_unset ()+{+  { eval $1=; unset $1;}+}+as_unset=as_fn_unset++# as_fn_set_status STATUS+# -----------------------+# Set $? to STATUS, without forking.+as_fn_set_status ()+{+  return $1+} # as_fn_set_status++# as_fn_exit STATUS+# -----------------+# Exit the shell with STATUS, even in a "trap 0" or "set -e" context.+as_fn_exit ()+{+  set +e+  as_fn_set_status $1+  exit $1+} # as_fn_exit++# as_fn_mkdir_p+# -------------+# Create "$as_dir" as a directory, including parents if necessary.+as_fn_mkdir_p ()+{++  case $as_dir in #(+  -*) as_dir=./$as_dir;;+  esac+  test -d "$as_dir" || eval $as_mkdir_p || {+    as_dirs=+    while :; do+      case $as_dir in #(+      *\'*) as_qdir=`$as_echo "$as_dir" | sed "s/'/'\\\\\\\\''/g"`;; #'(+      *) as_qdir=$as_dir;;+      esac+      as_dirs="'$as_qdir' $as_dirs"+      as_dir=`$as_dirname -- "$as_dir" ||+$as_expr X"$as_dir" : 'X\(.*[^/]\)//*[^/][^/]*/*$' \| \+	 X"$as_dir" : 'X\(//\)[^/]' \| \+	 X"$as_dir" : 'X\(//\)$' \| \+	 X"$as_dir" : 'X\(/\)' \| . 2>/dev/null ||+$as_echo X"$as_dir" |+    sed '/^X\(.*[^/]\)\/\/*[^/][^/]*\/*$/{+	    s//\1/+	    q+	  }+	  /^X\(\/\/\)[^/].*/{+	    s//\1/+	    q+	  }+	  /^X\(\/\/\)$/{+	    s//\1/+	    q+	  }+	  /^X\(\/\).*/{+	    s//\1/+	    q+	  }+	  s/.*/./; q'`+      test -d "$as_dir" && break+    done+    test -z "$as_dirs" || eval "mkdir $as_dirs"+  } || test -d "$as_dir" || as_fn_error $? "cannot create directory $as_dir"+++} # as_fn_mkdir_p++# as_fn_executable_p FILE+# -----------------------+# Test if FILE is an executable regular file.+as_fn_executable_p ()+{+  test -f "$1" && test -x "$1"+} # as_fn_executable_p+# as_fn_append VAR VALUE+# ----------------------+# Append the text in VALUE to the end of the definition contained in VAR. Take+# advantage of any shell optimizations that allow amortized linear growth over+# repeated appends, instead of the typical quadratic growth present in naive+# implementations.+if (eval "as_var=1; as_var+=2; test x\$as_var = x12") 2>/dev/null; then :+  eval 'as_fn_append ()+  {+    eval $1+=\$2+  }'+else+  as_fn_append ()+  {+    eval $1=\$$1\$2+  }+fi # as_fn_append++# as_fn_arith ARG...+# ------------------+# Perform arithmetic evaluation on the ARGs, and store the result in the+# global $as_val. Take advantage of shells that can avoid forks. The arguments+# must be portable across $(()) and expr.+if (eval "test \$(( 1 + 1 )) = 2") 2>/dev/null; then :+  eval 'as_fn_arith ()+  {+    as_val=$(( $* ))+  }'+else+  as_fn_arith ()+  {+    as_val=`expr "$@" || test $? -eq 1`+  }+fi # as_fn_arith+++# as_fn_error STATUS ERROR [LINENO LOG_FD]+# ----------------------------------------+# Output "`basename $0`: error: ERROR" to stderr. If LINENO and LOG_FD are+# provided, also output the error to LOG_FD, referencing LINENO. Then exit the+# script with STATUS, using 1 if that was 0.+as_fn_error ()+{+  as_status=$1; test $as_status -eq 0 && as_status=1+  if test "$4"; then+    as_lineno=${as_lineno-"$3"} as_lineno_stack=as_lineno_stack=$as_lineno_stack+    $as_echo "$as_me:${as_lineno-$LINENO}: error: $2" >&$4+  fi+  $as_echo "$as_me: error: $2" >&2+  as_fn_exit $as_status+} # as_fn_error++if expr a : '\(a\)' >/dev/null 2>&1 &&+   test "X`expr 00001 : '.*\(...\)'`" = X001; then+  as_expr=expr+else+  as_expr=false+fi++if (basename -- /) >/dev/null 2>&1 && test "X`basename -- / 2>&1`" = "X/"; then+  as_basename=basename+else+  as_basename=false+fi++if (as_dir=`dirname -- /` && test "X$as_dir" = X/) >/dev/null 2>&1; then+  as_dirname=dirname+else+  as_dirname=false+fi++as_me=`$as_basename -- "$0" ||+$as_expr X/"$0" : '.*/\([^/][^/]*\)/*$' \| \+	 X"$0" : 'X\(//\)$' \| \+	 X"$0" : 'X\(/\)' \| . 2>/dev/null ||+$as_echo X/"$0" |+    sed '/^.*\/\([^/][^/]*\)\/*$/{+	    s//\1/+	    q+	  }+	  /^X\/\(\/\/\)$/{+	    s//\1/+	    q+	  }+	  /^X\/\(\/\).*/{+	    s//\1/+	    q+	  }+	  s/.*/./; q'`++# Avoid depending upon Character Ranges.+as_cr_letters='abcdefghijklmnopqrstuvwxyz'+as_cr_LETTERS='ABCDEFGHIJKLMNOPQRSTUVWXYZ'+as_cr_Letters=$as_cr_letters$as_cr_LETTERS+as_cr_digits='0123456789'+as_cr_alnum=$as_cr_Letters$as_cr_digits+++  as_lineno_1=$LINENO as_lineno_1a=$LINENO+  as_lineno_2=$LINENO as_lineno_2a=$LINENO+  eval 'test "x$as_lineno_1'$as_run'" != "x$as_lineno_2'$as_run'" &&+  test "x`expr $as_lineno_1'$as_run' + 1`" = "x$as_lineno_2'$as_run'"' || {+  # Blame Lee E. McMahon (1931-1989) for sed's syntax.  :-)+  sed -n '+    p+    /[$]LINENO/=+  ' <$as_myself |+    sed '+      s/[$]LINENO.*/&-/+      t lineno+      b+      :lineno+      N+      :loop+      s/[$]LINENO\([^'$as_cr_alnum'_].*\n\)\(.*\)/\2\1\2/+      t loop+      s/-\n.*//+    ' >$as_me.lineno &&+  chmod +x "$as_me.lineno" ||+    { $as_echo "$as_me: error: cannot create $as_me.lineno; rerun with a POSIX shell" >&2; as_fn_exit 1; }++  # If we had to re-execute with $CONFIG_SHELL, we're ensured to have+  # already done that, so ensure we don't try to do so again and fall+  # in an infinite loop.  This has already happened in practice.+  _as_can_reexec=no; export _as_can_reexec+  # Don't try to exec as it changes $[0], causing all sort of problems+  # (the dirname of $[0] is not the place where we might find the+  # original and so on.  Autoconf is especially sensitive to this).+  . "./$as_me.lineno"+  # Exit status is that of the last command.+  exit+}++ECHO_C= ECHO_N= ECHO_T=+case `echo -n x` in #(((((+-n*)+  case `echo 'xy\c'` in+  *c*) ECHO_T='	';;	# ECHO_T is single tab character.+  xy)  ECHO_C='\c';;+  *)   echo `echo ksh88 bug on AIX 6.1` > /dev/null+       ECHO_T='	';;+  esac;;+*)+  ECHO_N='-n';;+esac++rm -f conf$$ conf$$.exe conf$$.file+if test -d conf$$.dir; then+  rm -f conf$$.dir/conf$$.file+else+  rm -f conf$$.dir+  mkdir conf$$.dir 2>/dev/null+fi+if (echo >conf$$.file) 2>/dev/null; then+  if ln -s conf$$.file conf$$ 2>/dev/null; then+    as_ln_s='ln -s'+    # ... but there are two gotchas:+    # 1) On MSYS, both `ln -s file dir' and `ln file dir' fail.+    # 2) DJGPP < 2.04 has no symlinks; `ln -s' creates a wrapper executable.+    # In both cases, we have to default to `cp -pR'.+    ln -s conf$$.file conf$$.dir 2>/dev/null && test ! -f conf$$.exe ||+      as_ln_s='cp -pR'+  elif ln conf$$.file conf$$ 2>/dev/null; then+    as_ln_s=ln+  else+    as_ln_s='cp -pR'+  fi+else+  as_ln_s='cp -pR'+fi+rm -f conf$$ conf$$.exe conf$$.dir/conf$$.file conf$$.file+rmdir conf$$.dir 2>/dev/null++if mkdir -p . 2>/dev/null; then+  as_mkdir_p='mkdir -p "$as_dir"'+else+  test -d ./-p && rmdir ./-p+  as_mkdir_p=false+fi++as_test_x='test -x'+as_executable_p=as_fn_executable_p++# Sed expression to map a string onto a valid CPP name.+as_tr_cpp="eval sed 'y%*$as_cr_letters%P$as_cr_LETTERS%;s%[^_$as_cr_alnum]%_%g'"++# Sed expression to map a string onto a valid variable name.+as_tr_sh="eval sed 'y%*+%pp%;s%[^_$as_cr_alnum]%_%g'"++SHELL=${CONFIG_SHELL-/bin/sh}+++test -n "$DJDIR" || exec 7<&0 </dev/null+exec 6>&1++# Name of the host.+# hostname on some systems (SVR3.2, old GNU/Linux) returns a bogus exit status,+# so uname gets run too.+ac_hostname=`(hostname || uname -n) 2>/dev/null | sed 1q`++#+# Initializations.+#+ac_default_prefix=/usr/local+ac_clean_files=+ac_config_libobj_dir=.+LIBOBJS=+cross_compiling=no+subdirs=+MFLAGS=+MAKEFLAGS=++# Identity of this package.+PACKAGE_NAME='libffi'+PACKAGE_TARNAME='libffi'+PACKAGE_VERSION='3.6.0'+PACKAGE_STRING='libffi 3.6.0'+PACKAGE_BUGREPORT='http://github.com/libffi/libffi/issues'+PACKAGE_URL=''++# Factoring default headers for most tests.+ac_includes_default="\+#include <stdio.h>+#ifdef HAVE_SYS_TYPES_H+# include <sys/types.h>+#endif+#ifdef HAVE_SYS_STAT_H+# include <sys/stat.h>+#endif+#ifdef STDC_HEADERS+# include <stdlib.h>+# include <stddef.h>+#else+# ifdef HAVE_STDLIB_H+#  include <stdlib.h>+# endif+#endif+#ifdef HAVE_STRING_H+# if !defined STDC_HEADERS && defined HAVE_MEMORY_H+#  include <memory.h>+# endif+# include <string.h>+#endif+#ifdef HAVE_STRINGS_H+# include <strings.h>+#endif+#ifdef HAVE_INTTYPES_H+# include <inttypes.h>+#endif+#ifdef HAVE_STDINT_H+# include <stdint.h>+#endif+#ifdef HAVE_UNISTD_H+# include <unistd.h>+#endif"++ac_subst_vars='LTLIBOBJS+LIBOBJS+EXTRA_LIBS+LIBFFI_BUILD_VERSIONED_SHLIB_SUN_FALSE+LIBFFI_BUILD_VERSIONED_SHLIB_SUN_TRUE+LIBFFI_BUILD_VERSIONED_SHLIB_GNU_FALSE+LIBFFI_BUILD_VERSIONED_SHLIB_GNU_TRUE+LIBFFI_BUILD_VERSIONED_SHLIB_FALSE+LIBFFI_BUILD_VERSIONED_SHLIB_TRUE+OPT_LDFLAGS+SECTION_LDFLAGS+FFI_DEBUG_FALSE+FFI_DEBUG_TRUE+EXTRA_ASM_SOURCES+EXTRA_SOURCES+TARGETDIR+TARGET+FFI_EXEC_TRAMPOLINE_TABLE+FFI_EXEC_TRAMPOLINE_TABLE_FALSE+FFI_EXEC_TRAMPOLINE_TABLE_TRUE+sys_symbol_underscore+WASM64_MEMORY64+HAVE_LONG_DOUBLE_VARIANT+HAVE_LONG_DOUBLE+AM_LTLDFLAGS+AM_RUNTESTFLAGS+MAINT+MAINTAINER_MODE_FALSE+MAINTAINER_MODE_TRUE+PRTDIAG+CXXCPP+CPP+LT_SYS_LIBRARY_PATH+OTOOL64+OTOOL+LIPO+NMEDIT+DSYMUTIL+MANIFEST_TOOL+AWK+RANLIB+STRIP+ac_ct_AR+AR+DLLTOOL+OBJDUMP+FILECMD+LN_S+NM+ac_ct_DUMPBIN+DUMPBIN+LD+FGREP+SED+LIBTOOL+EGREP+GREP+am__fastdepCCAS_FALSE+am__fastdepCCAS_TRUE+CCASDEPMODE+am__nodep+AMDEPBACKSLASH+AMDEP_FALSE+AMDEP_TRUE+am__include+DEPDIR+am__leading_dot+CCASFLAGS+CCAS+ac_ct_CXX+CXXFLAGS+CXX+OBJEXT+EXEEXT+ac_ct_CC+CPPFLAGS+LDFLAGS+CFLAGS+CC+ax_enable_builddir_sed+target_os+target_vendor+target_cpu+target+host_os+host_vendor+host_cpu+host+build_os+build_vendor+build_cpu+build+FFI_VERSION_NUMBER+FFI_VERSION_STRING+target_alias+host_alias+build_alias+LIBS+ECHO_T+ECHO_N+ECHO_C+DEFS+mandir+localedir+libdir+psdir+pdfdir+dvidir+htmldir+infodir+docdir+oldincludedir+includedir+localstatedir+sharedstatedir+sysconfdir+datadir+datarootdir+libexecdir+sbindir+bindir+program_transform_name+prefix+exec_prefix+PACKAGE_URL+PACKAGE_BUGREPORT+PACKAGE_STRING+PACKAGE_VERSION+PACKAGE_TARNAME+PACKAGE_NAME+PATH_SEPARATOR+SHELL+am__quote'+ac_subst_files=''+ac_user_opts='+enable_option_checking+enable_builddir+enable_dependency_tracking+enable_shared+enable_static+with_pic+enable_fast_install+with_aix_soname+with_gnu_ld+with_sysroot+enable_libtool_lock+enable_portable_binary+with_gcc_arch+enable_maintainer_mode+enable_pax_emutramp+enable_debug+enable_structs+enable_raw_api+enable_exec_static_tramp+enable_purify_safety+enable_symvers+'+      ac_precious_vars='build_alias+host_alias+target_alias+CCAS+CCASFLAGS+LT_SYS_LIBRARY_PATH+CPP+CPPFLAGS+CXXCPP+WASM64_MEMORY64'+++# Initialize some variables set by options.+ac_init_help=+ac_init_version=false+ac_unrecognized_opts=+ac_unrecognized_sep=+# The variables have the same names as the options, with+# dashes changed to underlines.+cache_file=/dev/null+exec_prefix=NONE+no_create=+no_recursion=+prefix=NONE+program_prefix=NONE+program_suffix=NONE+program_transform_name=s,x,x,+silent=+site=+srcdir=+verbose=+x_includes=NONE+x_libraries=NONE++# Installation directory options.+# These are left unexpanded so users can "make install exec_prefix=/foo"+# and all the variables that are supposed to be based on exec_prefix+# by default will actually change.+# Use braces instead of parens because sh, perl, etc. also accept them.+# (The list follows the same order as the GNU Coding Standards.)+bindir='${exec_prefix}/bin'+sbindir='${exec_prefix}/sbin'+libexecdir='${exec_prefix}/libexec'+datarootdir='${prefix}/share'+datadir='${datarootdir}'+sysconfdir='${prefix}/etc'+sharedstatedir='${prefix}/com'+localstatedir='${prefix}/var'+includedir='${prefix}/include'+oldincludedir='/usr/include'+docdir='${datarootdir}/doc/${PACKAGE_TARNAME}'+infodir='${datarootdir}/info'+htmldir='${docdir}'+dvidir='${docdir}'+pdfdir='${docdir}'+psdir='${docdir}'+libdir='${exec_prefix}/lib'+localedir='${datarootdir}/locale'+mandir='${datarootdir}/man'++ac_prev=+ac_dashdash=+for ac_option+do+  # If the previous option needs an argument, assign it.+  if test -n "$ac_prev"; then+    eval $ac_prev=\$ac_option+    ac_prev=+    continue+  fi++  case $ac_option in+  *=?*) ac_optarg=`expr "X$ac_option" : '[^=]*=\(.*\)'` ;;+  *=)   ac_optarg= ;;+  *)    ac_optarg=yes ;;+  esac++  # Accept the important Cygnus configure options, so we can diagnose typos.++  case $ac_dashdash$ac_option in+  --)+    ac_dashdash=yes ;;++  -bindir | --bindir | --bindi | --bind | --bin | --bi)+    ac_prev=bindir ;;+  -bindir=* | --bindir=* | --bindi=* | --bind=* | --bin=* | --bi=*)+    bindir=$ac_optarg ;;++  -build | --build | --buil | --bui | --bu)+    ac_prev=build_alias ;;+  -build=* | --build=* | --buil=* | --bui=* | --bu=*)+    build_alias=$ac_optarg ;;++  -cache-file | --cache-file | --cache-fil | --cache-fi \+  | --cache-f | --cache- | --cache | --cach | --cac | --ca | --c)+    ac_prev=cache_file ;;+  -cache-file=* | --cache-file=* | --cache-fil=* | --cache-fi=* \+  | --cache-f=* | --cache-=* | --cache=* | --cach=* | --cac=* | --ca=* | --c=*)+    cache_file=$ac_optarg ;;++  --config-cache | -C)+    cache_file=config.cache ;;++  -datadir | --datadir | --datadi | --datad)+    ac_prev=datadir ;;+  -datadir=* | --datadir=* | --datadi=* | --datad=*)+    datadir=$ac_optarg ;;++  -datarootdir | --datarootdir | --datarootdi | --datarootd | --dataroot \+  | --dataroo | --dataro | --datar)+    ac_prev=datarootdir ;;+  -datarootdir=* | --datarootdir=* | --datarootdi=* | --datarootd=* \+  | --dataroot=* | --dataroo=* | --dataro=* | --datar=*)+    datarootdir=$ac_optarg ;;++  -disable-* | --disable-*)+    ac_useropt=`expr "x$ac_option" : 'x-*disable-\(.*\)'`+    # Reject names that are not valid shell variable names.+    expr "x$ac_useropt" : ".*[^-+._$as_cr_alnum]" >/dev/null &&+      as_fn_error $? "invalid feature name: $ac_useropt"+    ac_useropt_orig=$ac_useropt+    ac_useropt=`$as_echo "$ac_useropt" | sed 's/[-+.]/_/g'`+    case $ac_user_opts in+      *"+"enable_$ac_useropt"+"*) ;;+      *) ac_unrecognized_opts="$ac_unrecognized_opts$ac_unrecognized_sep--disable-$ac_useropt_orig"+	 ac_unrecognized_sep=', ';;+    esac+    eval enable_$ac_useropt=no ;;++  -docdir | --docdir | --docdi | --doc | --do)+    ac_prev=docdir ;;+  -docdir=* | --docdir=* | --docdi=* | --doc=* | --do=*)+    docdir=$ac_optarg ;;++  -dvidir | --dvidir | --dvidi | --dvid | --dvi | --dv)+    ac_prev=dvidir ;;+  -dvidir=* | --dvidir=* | --dvidi=* | --dvid=* | --dvi=* | --dv=*)+    dvidir=$ac_optarg ;;++  -enable-* | --enable-*)+    ac_useropt=`expr "x$ac_option" : 'x-*enable-\([^=]*\)'`+    # Reject names that are not valid shell variable names.+    expr "x$ac_useropt" : ".*[^-+._$as_cr_alnum]" >/dev/null &&+      as_fn_error $? "invalid feature name: $ac_useropt"+    ac_useropt_orig=$ac_useropt+    ac_useropt=`$as_echo "$ac_useropt" | sed 's/[-+.]/_/g'`+    case $ac_user_opts in+      *"+"enable_$ac_useropt"+"*) ;;+      *) ac_unrecognized_opts="$ac_unrecognized_opts$ac_unrecognized_sep--enable-$ac_useropt_orig"+	 ac_unrecognized_sep=', ';;+    esac+    eval enable_$ac_useropt=\$ac_optarg ;;++  -exec-prefix | --exec_prefix | --exec-prefix | --exec-prefi \+  | --exec-pref | --exec-pre | --exec-pr | --exec-p | --exec- \+  | --exec | --exe | --ex)+    ac_prev=exec_prefix ;;+  -exec-prefix=* | --exec_prefix=* | --exec-prefix=* | --exec-prefi=* \+  | --exec-pref=* | --exec-pre=* | --exec-pr=* | --exec-p=* | --exec-=* \+  | --exec=* | --exe=* | --ex=*)+    exec_prefix=$ac_optarg ;;++  -gas | --gas | --ga | --g)+    # Obsolete; use --with-gas.+    with_gas=yes ;;++  -help | --help | --hel | --he | -h)+    ac_init_help=long ;;+  -help=r* | --help=r* | --hel=r* | --he=r* | -hr*)+    ac_init_help=recursive ;;+  -help=s* | --help=s* | --hel=s* | --he=s* | -hs*)+    ac_init_help=short ;;++  -host | --host | --hos | --ho)+    ac_prev=host_alias ;;+  -host=* | --host=* | --hos=* | --ho=*)+    host_alias=$ac_optarg ;;++  -htmldir | --htmldir | --htmldi | --htmld | --html | --htm | --ht)+    ac_prev=htmldir ;;+  -htmldir=* | --htmldir=* | --htmldi=* | --htmld=* | --html=* | --htm=* \+  | --ht=*)+    htmldir=$ac_optarg ;;++  -includedir | --includedir | --includedi | --included | --include \+  | --includ | --inclu | --incl | --inc)+    ac_prev=includedir ;;+  -includedir=* | --includedir=* | --includedi=* | --included=* | --include=* \+  | --includ=* | --inclu=* | --incl=* | --inc=*)+    includedir=$ac_optarg ;;++  -infodir | --infodir | --infodi | --infod | --info | --inf)+    ac_prev=infodir ;;+  -infodir=* | --infodir=* | --infodi=* | --infod=* | --info=* | --inf=*)+    infodir=$ac_optarg ;;++  -libdir | --libdir | --libdi | --libd)+    ac_prev=libdir ;;+  -libdir=* | --libdir=* | --libdi=* | --libd=*)+    libdir=$ac_optarg ;;++  -libexecdir | --libexecdir | --libexecdi | --libexecd | --libexec \+  | --libexe | --libex | --libe)+    ac_prev=libexecdir ;;+  -libexecdir=* | --libexecdir=* | --libexecdi=* | --libexecd=* | --libexec=* \+  | --libexe=* | --libex=* | --libe=*)+    libexecdir=$ac_optarg ;;++  -localedir | --localedir | --localedi | --localed | --locale)+    ac_prev=localedir ;;+  -localedir=* | --localedir=* | --localedi=* | --localed=* | --locale=*)+    localedir=$ac_optarg ;;++  -localstatedir | --localstatedir | --localstatedi | --localstated \+  | --localstate | --localstat | --localsta | --localst | --locals)+    ac_prev=localstatedir ;;+  -localstatedir=* | --localstatedir=* | --localstatedi=* | --localstated=* \+  | --localstate=* | --localstat=* | --localsta=* | --localst=* | --locals=*)+    localstatedir=$ac_optarg ;;++  -mandir | --mandir | --mandi | --mand | --man | --ma | --m)+    ac_prev=mandir ;;+  -mandir=* | --mandir=* | --mandi=* | --mand=* | --man=* | --ma=* | --m=*)+    mandir=$ac_optarg ;;++  -nfp | --nfp | --nf)+    # Obsolete; use --without-fp.+    with_fp=no ;;++  -no-create | --no-create | --no-creat | --no-crea | --no-cre \+  | --no-cr | --no-c | -n)+    no_create=yes ;;++  -no-recursion | --no-recursion | --no-recursio | --no-recursi \+  | --no-recurs | --no-recur | --no-recu | --no-rec | --no-re | --no-r)+    no_recursion=yes ;;++  -oldincludedir | --oldincludedir | --oldincludedi | --oldincluded \+  | --oldinclude | --oldinclud | --oldinclu | --oldincl | --oldinc \+  | --oldin | --oldi | --old | --ol | --o)+    ac_prev=oldincludedir ;;+  -oldincludedir=* | --oldincludedir=* | --oldincludedi=* | --oldincluded=* \+  | --oldinclude=* | --oldinclud=* | --oldinclu=* | --oldincl=* | --oldinc=* \+  | --oldin=* | --oldi=* | --old=* | --ol=* | --o=*)+    oldincludedir=$ac_optarg ;;++  -prefix | --prefix | --prefi | --pref | --pre | --pr | --p)+    ac_prev=prefix ;;+  -prefix=* | --prefix=* | --prefi=* | --pref=* | --pre=* | --pr=* | --p=*)+    prefix=$ac_optarg ;;++  -program-prefix | --program-prefix | --program-prefi | --program-pref \+  | --program-pre | --program-pr | --program-p)+    ac_prev=program_prefix ;;+  -program-prefix=* | --program-prefix=* | --program-prefi=* \+  | --program-pref=* | --program-pre=* | --program-pr=* | --program-p=*)+    program_prefix=$ac_optarg ;;++  -program-suffix | --program-suffix | --program-suffi | --program-suff \+  | --program-suf | --program-su | --program-s)+    ac_prev=program_suffix ;;+  -program-suffix=* | --program-suffix=* | --program-suffi=* \+  | --program-suff=* | --program-suf=* | --program-su=* | --program-s=*)+    program_suffix=$ac_optarg ;;++  -program-transform-name | --program-transform-name \+  | --program-transform-nam | --program-transform-na \+  | --program-transform-n | --program-transform- \+  | --program-transform | --program-transfor \+  | --program-transfo | --program-transf \+  | --program-trans | --program-tran \+  | --progr-tra | --program-tr | --program-t)+    ac_prev=program_transform_name ;;+  -program-transform-name=* | --program-transform-name=* \+  | --program-transform-nam=* | --program-transform-na=* \+  | --program-transform-n=* | --program-transform-=* \+  | --program-transform=* | --program-transfor=* \+  | --program-transfo=* | --program-transf=* \+  | --program-trans=* | --program-tran=* \+  | --progr-tra=* | --program-tr=* | --program-t=*)+    program_transform_name=$ac_optarg ;;++  -pdfdir | --pdfdir | --pdfdi | --pdfd | --pdf | --pd)+    ac_prev=pdfdir ;;+  -pdfdir=* | --pdfdir=* | --pdfdi=* | --pdfd=* | --pdf=* | --pd=*)+    pdfdir=$ac_optarg ;;++  -psdir | --psdir | --psdi | --psd | --ps)+    ac_prev=psdir ;;+  -psdir=* | --psdir=* | --psdi=* | --psd=* | --ps=*)+    psdir=$ac_optarg ;;++  -q | -quiet | --quiet | --quie | --qui | --qu | --q \+  | -silent | --silent | --silen | --sile | --sil)+    silent=yes ;;++  -sbindir | --sbindir | --sbindi | --sbind | --sbin | --sbi | --sb)+    ac_prev=sbindir ;;+  -sbindir=* | --sbindir=* | --sbindi=* | --sbind=* | --sbin=* \+  | --sbi=* | --sb=*)+    sbindir=$ac_optarg ;;++  -sharedstatedir | --sharedstatedir | --sharedstatedi \+  | --sharedstated | --sharedstate | --sharedstat | --sharedsta \+  | --sharedst | --shareds | --shared | --share | --shar \+  | --sha | --sh)+    ac_prev=sharedstatedir ;;+  -sharedstatedir=* | --sharedstatedir=* | --sharedstatedi=* \+  | --sharedstated=* | --sharedstate=* | --sharedstat=* | --sharedsta=* \+  | --sharedst=* | --shareds=* | --shared=* | --share=* | --shar=* \+  | --sha=* | --sh=*)+    sharedstatedir=$ac_optarg ;;++  -site | --site | --sit)+    ac_prev=site ;;+  -site=* | --site=* | --sit=*)+    site=$ac_optarg ;;++  -srcdir | --srcdir | --srcdi | --srcd | --src | --sr)+    ac_prev=srcdir ;;+  -srcdir=* | --srcdir=* | --srcdi=* | --srcd=* | --src=* | --sr=*)+    srcdir=$ac_optarg ;;++  -sysconfdir | --sysconfdir | --sysconfdi | --sysconfd | --sysconf \+  | --syscon | --sysco | --sysc | --sys | --sy)+    ac_prev=sysconfdir ;;+  -sysconfdir=* | --sysconfdir=* | --sysconfdi=* | --sysconfd=* | --sysconf=* \+  | --syscon=* | --sysco=* | --sysc=* | --sys=* | --sy=*)+    sysconfdir=$ac_optarg ;;++  -target | --target | --targe | --targ | --tar | --ta | --t)+    ac_prev=target_alias ;;+  -target=* | --target=* | --targe=* | --targ=* | --tar=* | --ta=* | --t=*)+    target_alias=$ac_optarg ;;++  -v | -verbose | --verbose | --verbos | --verbo | --verb)+    verbose=yes ;;++  -version | --version | --versio | --versi | --vers | -V)+    ac_init_version=: ;;++  -with-* | --with-*)+    ac_useropt=`expr "x$ac_option" : 'x-*with-\([^=]*\)'`+    # Reject names that are not valid shell variable names.+    expr "x$ac_useropt" : ".*[^-+._$as_cr_alnum]" >/dev/null &&+      as_fn_error $? "invalid package name: $ac_useropt"+    ac_useropt_orig=$ac_useropt+    ac_useropt=`$as_echo "$ac_useropt" | sed 's/[-+.]/_/g'`+    case $ac_user_opts in+      *"+"with_$ac_useropt"+"*) ;;+      *) ac_unrecognized_opts="$ac_unrecognized_opts$ac_unrecognized_sep--with-$ac_useropt_orig"+	 ac_unrecognized_sep=', ';;+    esac+    eval with_$ac_useropt=\$ac_optarg ;;++  -without-* | --without-*)+    ac_useropt=`expr "x$ac_option" : 'x-*without-\(.*\)'`+    # Reject names that are not valid shell variable names.+    expr "x$ac_useropt" : ".*[^-+._$as_cr_alnum]" >/dev/null &&+      as_fn_error $? "invalid package name: $ac_useropt"+    ac_useropt_orig=$ac_useropt+    ac_useropt=`$as_echo "$ac_useropt" | sed 's/[-+.]/_/g'`+    case $ac_user_opts in+      *"+"with_$ac_useropt"+"*) ;;+      *) ac_unrecognized_opts="$ac_unrecognized_opts$ac_unrecognized_sep--without-$ac_useropt_orig"+	 ac_unrecognized_sep=', ';;+    esac+    eval with_$ac_useropt=no ;;++  --x)+    # Obsolete; use --with-x.+    with_x=yes ;;++  -x-includes | --x-includes | --x-include | --x-includ | --x-inclu \+  | --x-incl | --x-inc | --x-in | --x-i)+    ac_prev=x_includes ;;+  -x-includes=* | --x-includes=* | --x-include=* | --x-includ=* | --x-inclu=* \+  | --x-incl=* | --x-inc=* | --x-in=* | --x-i=*)+    x_includes=$ac_optarg ;;++  -x-libraries | --x-libraries | --x-librarie | --x-librari \+  | --x-librar | --x-libra | --x-libr | --x-lib | --x-li | --x-l)+    ac_prev=x_libraries ;;+  -x-libraries=* | --x-libraries=* | --x-librarie=* | --x-librari=* \+  | --x-librar=* | --x-libra=* | --x-libr=* | --x-lib=* | --x-li=* | --x-l=*)+    x_libraries=$ac_optarg ;;++  -*) as_fn_error $? "unrecognized option: \`$ac_option'+Try \`$0 --help' for more information"+    ;;++  *=*)+    ac_envvar=`expr "x$ac_option" : 'x\([^=]*\)='`+    # Reject names that are not valid shell variable names.+    case $ac_envvar in #(+      '' | [0-9]* | *[!_$as_cr_alnum]* )+      as_fn_error $? "invalid variable name: \`$ac_envvar'" ;;+    esac+    eval $ac_envvar=\$ac_optarg+    export $ac_envvar ;;++  *)+    # FIXME: should be removed in autoconf 3.0.+    $as_echo "$as_me: WARNING: you should use --build, --host, --target" >&2+    expr "x$ac_option" : ".*[^-._$as_cr_alnum]" >/dev/null &&+      $as_echo "$as_me: WARNING: invalid host type: $ac_option" >&2+    : "${build_alias=$ac_option} ${host_alias=$ac_option} ${target_alias=$ac_option}"+    ;;++  esac+done++if test -n "$ac_prev"; then+  ac_option=--`echo $ac_prev | sed 's/_/-/g'`+  as_fn_error $? "missing argument to $ac_option"+fi++if test -n "$ac_unrecognized_opts"; then+  case $enable_option_checking in+    no) ;;+    fatal) as_fn_error $? "unrecognized options: $ac_unrecognized_opts" ;;+    *)     $as_echo "$as_me: WARNING: unrecognized options: $ac_unrecognized_opts" >&2 ;;+  esac+fi++# Check all directory arguments for consistency.+for ac_var in	exec_prefix prefix bindir sbindir libexecdir datarootdir \+		datadir sysconfdir sharedstatedir localstatedir includedir \+		oldincludedir docdir infodir htmldir dvidir pdfdir psdir \+		libdir localedir mandir+do+  eval ac_val=\$$ac_var+  # Remove trailing slashes.+  case $ac_val in+    */ )+      ac_val=`expr "X$ac_val" : 'X\(.*[^/]\)' \| "X$ac_val" : 'X\(.*\)'`+      eval $ac_var=\$ac_val;;+  esac+  # Be sure to have absolute directory names.+  case $ac_val in+    [\\/$]* | ?:[\\/]* )  continue;;+    NONE | '' ) case $ac_var in *prefix ) continue;; esac;;+  esac+  as_fn_error $? "expected an absolute directory name for --$ac_var: $ac_val"+done++# There might be people who depend on the old broken behavior: `$host'+# used to hold the argument of --host etc.+# FIXME: To remove some day.+build=$build_alias+host=$host_alias+target=$target_alias++# FIXME: To remove some day.+if test "x$host_alias" != x; then+  if test "x$build_alias" = x; then+    cross_compiling=maybe+  elif test "x$build_alias" != "x$host_alias"; then+    cross_compiling=yes+  fi+fi++ac_tool_prefix=+test -n "$host_alias" && ac_tool_prefix=$host_alias-++test "$silent" = yes && exec 6>/dev/null+++ac_pwd=`pwd` && test -n "$ac_pwd" &&+ac_ls_di=`ls -di .` &&+ac_pwd_ls_di=`cd "$ac_pwd" && ls -di .` ||+  as_fn_error $? "working directory cannot be determined"+test "X$ac_ls_di" = "X$ac_pwd_ls_di" ||+  as_fn_error $? "pwd does not report name of working directory"+++# Find the source files, if location was not specified.+if test -z "$srcdir"; then+  ac_srcdir_defaulted=yes+  # Try the directory containing this script, then the parent directory.+  ac_confdir=`$as_dirname -- "$as_myself" ||+$as_expr X"$as_myself" : 'X\(.*[^/]\)//*[^/][^/]*/*$' \| \+	 X"$as_myself" : 'X\(//\)[^/]' \| \+	 X"$as_myself" : 'X\(//\)$' \| \+	 X"$as_myself" : 'X\(/\)' \| . 2>/dev/null ||+$as_echo X"$as_myself" |+    sed '/^X\(.*[^/]\)\/\/*[^/][^/]*\/*$/{+	    s//\1/+	    q+	  }+	  /^X\(\/\/\)[^/].*/{+	    s//\1/+	    q+	  }+	  /^X\(\/\/\)$/{+	    s//\1/+	    q+	  }+	  /^X\(\/\).*/{+	    s//\1/+	    q+	  }+	  s/.*/./; q'`+  srcdir=$ac_confdir+  if test ! -r "$srcdir/$ac_unique_file"; then+    srcdir=..+  fi+else+  ac_srcdir_defaulted=no+fi+if test ! -r "$srcdir/$ac_unique_file"; then+  test "$ac_srcdir_defaulted" = yes && srcdir="$ac_confdir or .."+  as_fn_error $? "cannot find sources ($ac_unique_file) in $srcdir"+fi+ac_msg="sources are in $srcdir, but \`cd $srcdir' does not work"+ac_abs_confdir=`(+	cd "$srcdir" && test -r "./$ac_unique_file" || as_fn_error $? "$ac_msg"+	pwd)`+# When building in place, set srcdir=.+if test "$ac_abs_confdir" = "$ac_pwd"; then+  srcdir=.+fi+# Remove unnecessary trailing slashes from srcdir.+# Double slashes in file names in object file debugging info+# mess up M-x gdb in Emacs.+case $srcdir in+*/) srcdir=`expr "X$srcdir" : 'X\(.*[^/]\)' \| "X$srcdir" : 'X\(.*\)'`;;+esac+for ac_var in $ac_precious_vars; do+  eval ac_env_${ac_var}_set=\${${ac_var}+set}+  eval ac_env_${ac_var}_value=\$${ac_var}+  eval ac_cv_env_${ac_var}_set=\${${ac_var}+set}+  eval ac_cv_env_${ac_var}_value=\$${ac_var}+done++#+# Report the --help message.+#+if test "$ac_init_help" = "long"; then+  # Omit some internal or obsolete options to make the list less imposing.+  # This message is too long to be a string in the A/UX 3.1 sh.+  cat <<_ACEOF+\`configure' configures libffi 3.6.0 to adapt to many kinds of systems.++Usage: $0 [OPTION]... [VAR=VALUE]...++To assign environment variables (e.g., CC, CFLAGS...), specify them as+VAR=VALUE.  See below for descriptions of some of the useful variables.++Defaults for the options are specified in brackets.++Configuration:+  -h, --help              display this help and exit+      --help=short        display options specific to this package+      --help=recursive    display the short help of all the included packages+  -V, --version           display version information and exit+  -q, --quiet, --silent   do not print \`checking ...' messages+      --cache-file=FILE   cache test results in FILE [disabled]+  -C, --config-cache      alias for \`--cache-file=config.cache'+  -n, --no-create         do not create output files+      --srcdir=DIR        find the sources in DIR [configure dir or \`..']++Installation directories:+  --prefix=PREFIX         install architecture-independent files in PREFIX+                          [$ac_default_prefix]+  --exec-prefix=EPREFIX   install architecture-dependent files in EPREFIX+                          [PREFIX]++By default, \`make install' will install all the files in+\`$ac_default_prefix/bin', \`$ac_default_prefix/lib' etc.  You can specify+an installation prefix other than \`$ac_default_prefix' using \`--prefix',+for instance \`--prefix=\$HOME'.++For better control, use the options below.++Fine tuning of the installation directories:+  --bindir=DIR            user executables [EPREFIX/bin]+  --sbindir=DIR           system admin executables [EPREFIX/sbin]+  --libexecdir=DIR        program executables [EPREFIX/libexec]+  --sysconfdir=DIR        read-only single-machine data [PREFIX/etc]+  --sharedstatedir=DIR    modifiable architecture-independent data [PREFIX/com]+  --localstatedir=DIR     modifiable single-machine data [PREFIX/var]+  --libdir=DIR            object code libraries [EPREFIX/lib]+  --includedir=DIR        C header files [PREFIX/include]+  --oldincludedir=DIR     C header files for non-gcc [/usr/include]+  --datarootdir=DIR       read-only arch.-independent data root [PREFIX/share]+  --datadir=DIR           read-only architecture-independent data [DATAROOTDIR]+  --infodir=DIR           info documentation [DATAROOTDIR/info]+  --localedir=DIR         locale-dependent data [DATAROOTDIR/locale]+  --mandir=DIR            man documentation [DATAROOTDIR/man]+  --docdir=DIR            documentation root [DATAROOTDIR/doc/libffi]+  --htmldir=DIR           html documentation [DOCDIR]+  --dvidir=DIR            dvi documentation [DOCDIR]+  --pdfdir=DIR            pdf documentation [DOCDIR]+  --psdir=DIR             ps documentation [DOCDIR]+_ACEOF++  cat <<\_ACEOF++System types:+  --build=BUILD     configure for building on BUILD [guessed]+  --host=HOST       cross-compile to build programs to run on HOST [BUILD]+  --target=TARGET   configure for building compilers for TARGET [HOST]+_ACEOF+fi++if test -n "$ac_init_help"; then+  case $ac_init_help in+     short | recursive ) echo "Configuration of libffi 3.6.0:";;+   esac+  cat <<\_ACEOF++Optional Features:+  --disable-option-checking  ignore unrecognized --enable/--with options+  --disable-FEATURE       do not include FEATURE (same as --enable-FEATURE=no)+  --enable-FEATURE[=ARG]  include FEATURE [ARG=yes]+  --disable-builddir      disable automatic build in subdir of sources++  --enable-dependency-tracking+                          do not reject slow dependency extractors+  --disable-dependency-tracking+                          speeds up one-time build+  --enable-shared[=PKGS]  build shared libraries [default=yes]+  --enable-static[=PKGS]  build static libraries [default=yes]+  --enable-fast-install[=PKGS]+                          optimize for fast installation [default=yes]+  --disable-libtool-lock  avoid locking (might break parallel builds)+  --enable-portable-binary+                          disable compiler optimizations that would produce+                          unportable binaries+  --enable-maintainer-mode+                          enable make rules and dependencies not useful (and+                          sometimes confusing) to the casual installer+  --enable-pax_emutramp       enable pax emulated trampolines (experimental)+  --enable-debug          debugging mode+  --disable-structs       omit code for struct support+  --disable-raw-api       make the raw api unavailable+  --disable-exec-static-tramp  disable use of static exec trampolines (enabled by default)+  --enable-purify-safety  purify-safe mode+  --enable-symvers=STYLE  enables symbol versioning of the shared library+                          [default=yes]++Optional Packages:+  --with-PACKAGE[=ARG]    use PACKAGE [ARG=yes]+  --without-PACKAGE       do not use PACKAGE (same as --with-PACKAGE=no)+  --with-pic[=PKGS]       try to use only PIC/non-PIC objects [default=use+                          both]+  --with-aix-soname=aix|svr4|both+                          shared library versioning (aka "SONAME") variant to+                          provide on AIX, [default=aix].+  --with-gnu-ld           assume the C compiler uses GNU ld [default=no]+  --with-sysroot[=DIR]    Search for dependent libraries within DIR (or the+                          compiler's sysroot if not specified).+  --with-gcc-arch=<arch>  use architecture <arch> for gcc -march/-mtune,+                          instead of guessing++Some influential environment variables:+  CC          C compiler command+  CFLAGS      C compiler flags+  LDFLAGS     linker flags, e.g. -L<lib dir> if you have libraries in a+              nonstandard directory <lib dir>+  LIBS        libraries to pass to the linker, e.g. -l<library>+  CPPFLAGS    (Objective) C/C++ preprocessor flags, e.g. -I<include dir> if+              you have headers in a nonstandard directory <include dir>+  CXX         C++ compiler command+  CXXFLAGS    C++ compiler flags+  CCAS        assembler compiler command (defaults to CC)+  CCASFLAGS   assembler compiler flags (defaults to CFLAGS)+  LT_SYS_LIBRARY_PATH+              User-defined run-time library search path.+  CPP         C preprocessor+  CXXCPP      C++ preprocessor+  WASM64_MEMORY64+              Used only for the wasm64 target. Set to 1 (default) or 2 for+              Emscripten's -sMEMORY64 mode++Use these variables to override the choices made by `configure' or to help+it to find libraries and programs with nonstandard names/locations.++Report bugs to <http://github.com/libffi/libffi/issues>.+_ACEOF+ac_status=$?+fi++if test "$ac_init_help" = "recursive"; then+  # If there are subdirs, report their specific --help.+  for ac_dir in : $ac_subdirs_all; do test "x$ac_dir" = x: && continue+    test -d "$ac_dir" ||+      { cd "$srcdir" && ac_pwd=`pwd` && srcdir=. && test -d "$ac_dir"; } ||+      continue+    ac_builddir=.++case "$ac_dir" in+.) ac_dir_suffix= ac_top_builddir_sub=. ac_top_build_prefix= ;;+*)+  ac_dir_suffix=/`$as_echo "$ac_dir" | sed 's|^\.[\\/]||'`+  # A ".." for each directory in $ac_dir_suffix.+  ac_top_builddir_sub=`$as_echo "$ac_dir_suffix" | sed 's|/[^\\/]*|/..|g;s|/||'`+  case $ac_top_builddir_sub in+  "") ac_top_builddir_sub=. ac_top_build_prefix= ;;+  *)  ac_top_build_prefix=$ac_top_builddir_sub/ ;;+  esac ;;+esac+ac_abs_top_builddir=$ac_pwd+ac_abs_builddir=$ac_pwd$ac_dir_suffix+# for backward compatibility:+ac_top_builddir=$ac_top_build_prefix++case $srcdir in+  .)  # We are building in place.+    ac_srcdir=.+    ac_top_srcdir=$ac_top_builddir_sub+    ac_abs_top_srcdir=$ac_pwd ;;+  [\\/]* | ?:[\\/]* )  # Absolute name.+    ac_srcdir=$srcdir$ac_dir_suffix;+    ac_top_srcdir=$srcdir+    ac_abs_top_srcdir=$srcdir ;;+  *) # Relative name.+    ac_srcdir=$ac_top_build_prefix$srcdir$ac_dir_suffix+    ac_top_srcdir=$ac_top_build_prefix$srcdir+    ac_abs_top_srcdir=$ac_pwd/$srcdir ;;+esac+ac_abs_srcdir=$ac_abs_top_srcdir$ac_dir_suffix++    cd "$ac_dir" || { ac_status=$?; continue; }+    # Check for guested configure.+    if test -f "$ac_srcdir/configure.gnu"; then+      echo &&+      $SHELL "$ac_srcdir/configure.gnu" --help=recursive+    elif test -f "$ac_srcdir/configure"; then+      echo &&+      $SHELL "$ac_srcdir/configure" --help=recursive+    else+      $as_echo "$as_me: WARNING: no configuration information is in $ac_dir" >&2+    fi || ac_status=$?+    cd "$ac_pwd" || { ac_status=$?; break; }+  done+fi++test -n "$ac_init_help" && exit $ac_status+if $ac_init_version; then+  cat <<\_ACEOF+libffi configure 3.6.0+generated by GNU Autoconf 2.69++Copyright (C) 2012 Free Software Foundation, Inc.+This configure script is free software; the Free Software Foundation+gives unlimited permission to copy, distribute and modify it.+_ACEOF+  exit+fi++## ------------------------ ##+## Autoconf initialization. ##+## ------------------------ ##++# ac_fn_c_try_compile LINENO+# --------------------------+# Try to compile conftest.$ac_ext, and return whether this succeeded.+ac_fn_c_try_compile ()+{+  as_lineno=${as_lineno-"$1"} as_lineno_stack=as_lineno_stack=$as_lineno_stack+  rm -f conftest.$ac_objext+  if { { ac_try="$ac_compile"+case "(($ac_try" in+  *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;+  *) ac_try_echo=$ac_try;;+esac+eval ac_try_echo="\"\$as_me:${as_lineno-$LINENO}: $ac_try_echo\""+$as_echo "$ac_try_echo"; } >&5+  (eval "$ac_compile") 2>conftest.err+  ac_status=$?+  if test -s conftest.err; then+    grep -v '^ *+' conftest.err >conftest.er1+    cat conftest.er1 >&5+    mv -f conftest.er1 conftest.err+  fi+  $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5+  test $ac_status = 0; } && {+	 test -z "$ac_c_werror_flag" ||+	 test ! -s conftest.err+       } && test -s conftest.$ac_objext; then :+  ac_retval=0+else+  $as_echo "$as_me: failed program was:" >&5+sed 's/^/| /' conftest.$ac_ext >&5++	ac_retval=1+fi+  eval $as_lineno_stack; ${as_lineno_stack:+:} unset as_lineno+  as_fn_set_status $ac_retval++} # ac_fn_c_try_compile++# ac_fn_cxx_try_compile LINENO+# ----------------------------+# Try to compile conftest.$ac_ext, and return whether this succeeded.+ac_fn_cxx_try_compile ()+{+  as_lineno=${as_lineno-"$1"} as_lineno_stack=as_lineno_stack=$as_lineno_stack+  rm -f conftest.$ac_objext+  if { { ac_try="$ac_compile"+case "(($ac_try" in+  *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;+  *) ac_try_echo=$ac_try;;+esac+eval ac_try_echo="\"\$as_me:${as_lineno-$LINENO}: $ac_try_echo\""+$as_echo "$ac_try_echo"; } >&5+  (eval "$ac_compile") 2>conftest.err+  ac_status=$?+  if test -s conftest.err; then+    grep -v '^ *+' conftest.err >conftest.er1+    cat conftest.er1 >&5+    mv -f conftest.er1 conftest.err+  fi+  $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5+  test $ac_status = 0; } && {+	 test -z "$ac_cxx_werror_flag" ||+	 test ! -s conftest.err+       } && test -s conftest.$ac_objext; then :+  ac_retval=0+else+  $as_echo "$as_me: failed program was:" >&5+sed 's/^/| /' conftest.$ac_ext >&5++	ac_retval=1+fi+  eval $as_lineno_stack; ${as_lineno_stack:+:} unset as_lineno+  as_fn_set_status $ac_retval++} # ac_fn_cxx_try_compile++# ac_fn_c_try_link LINENO+# -----------------------+# Try to link conftest.$ac_ext, and return whether this succeeded.+ac_fn_c_try_link ()+{+  as_lineno=${as_lineno-"$1"} as_lineno_stack=as_lineno_stack=$as_lineno_stack+  rm -f conftest.$ac_objext conftest$ac_exeext+  if { { ac_try="$ac_link"+case "(($ac_try" in+  *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;+  *) ac_try_echo=$ac_try;;+esac+eval ac_try_echo="\"\$as_me:${as_lineno-$LINENO}: $ac_try_echo\""+$as_echo "$ac_try_echo"; } >&5+  (eval "$ac_link") 2>conftest.err+  ac_status=$?+  if test -s conftest.err; then+    grep -v '^ *+' conftest.err >conftest.er1+    cat conftest.er1 >&5+    mv -f conftest.er1 conftest.err+  fi+  $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5+  test $ac_status = 0; } && {+	 test -z "$ac_c_werror_flag" ||+	 test ! -s conftest.err+       } && test -s conftest$ac_exeext && {+	 test "$cross_compiling" = yes ||+	 test -x conftest$ac_exeext+       }; then :+  ac_retval=0+else+  $as_echo "$as_me: failed program was:" >&5+sed 's/^/| /' conftest.$ac_ext >&5++	ac_retval=1+fi+  # Delete the IPA/IPO (Inter Procedural Analysis/Optimization) information+  # created by the PGI compiler (conftest_ipa8_conftest.oo), as it would+  # interfere with the next link command; also delete a directory that is+  # left behind by Apple's compiler.  We do this before executing the actions.+  rm -rf conftest.dSYM conftest_ipa8_conftest.oo+  eval $as_lineno_stack; ${as_lineno_stack:+:} unset as_lineno+  as_fn_set_status $ac_retval++} # ac_fn_c_try_link++# ac_fn_c_check_header_compile LINENO HEADER VAR INCLUDES+# -------------------------------------------------------+# Tests whether HEADER exists and can be compiled using the include files in+# INCLUDES, setting the cache variable VAR accordingly.+ac_fn_c_check_header_compile ()+{+  as_lineno=${as_lineno-"$1"} as_lineno_stack=as_lineno_stack=$as_lineno_stack+  { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $2" >&5+$as_echo_n "checking for $2... " >&6; }+if eval \${$3+:} false; then :+  $as_echo_n "(cached) " >&6+else+  cat confdefs.h - <<_ACEOF >conftest.$ac_ext+/* end confdefs.h.  */+$4+#include <$2>+_ACEOF+if ac_fn_c_try_compile "$LINENO"; then :+  eval "$3=yes"+else+  eval "$3=no"+fi+rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext+fi+eval ac_res=\$$3+	       { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_res" >&5+$as_echo "$ac_res" >&6; }+  eval $as_lineno_stack; ${as_lineno_stack:+:} unset as_lineno++} # ac_fn_c_check_header_compile++# ac_fn_c_try_cpp LINENO+# ----------------------+# Try to preprocess conftest.$ac_ext, and return whether this succeeded.+ac_fn_c_try_cpp ()+{+  as_lineno=${as_lineno-"$1"} as_lineno_stack=as_lineno_stack=$as_lineno_stack+  if { { ac_try="$ac_cpp conftest.$ac_ext"+case "(($ac_try" in+  *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;+  *) ac_try_echo=$ac_try;;+esac+eval ac_try_echo="\"\$as_me:${as_lineno-$LINENO}: $ac_try_echo\""+$as_echo "$ac_try_echo"; } >&5+  (eval "$ac_cpp conftest.$ac_ext") 2>conftest.err+  ac_status=$?+  if test -s conftest.err; then+    grep -v '^ *+' conftest.err >conftest.er1+    cat conftest.er1 >&5+    mv -f conftest.er1 conftest.err+  fi+  $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5+  test $ac_status = 0; } > conftest.i && {+	 test -z "$ac_c_preproc_warn_flag$ac_c_werror_flag" ||+	 test ! -s conftest.err+       }; then :+  ac_retval=0+else+  $as_echo "$as_me: failed program was:" >&5+sed 's/^/| /' conftest.$ac_ext >&5++    ac_retval=1+fi+  eval $as_lineno_stack; ${as_lineno_stack:+:} unset as_lineno+  as_fn_set_status $ac_retval++} # ac_fn_c_try_cpp++# ac_fn_c_try_run LINENO+# ----------------------+# Try to link conftest.$ac_ext, and return whether this succeeded. Assumes+# that executables *can* be run.+ac_fn_c_try_run ()+{+  as_lineno=${as_lineno-"$1"} as_lineno_stack=as_lineno_stack=$as_lineno_stack+  if { { ac_try="$ac_link"+case "(($ac_try" in+  *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;+  *) ac_try_echo=$ac_try;;+esac+eval ac_try_echo="\"\$as_me:${as_lineno-$LINENO}: $ac_try_echo\""+$as_echo "$ac_try_echo"; } >&5+  (eval "$ac_link") 2>&5+  ac_status=$?+  $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5+  test $ac_status = 0; } && { ac_try='./conftest$ac_exeext'+  { { case "(($ac_try" in+  *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;+  *) ac_try_echo=$ac_try;;+esac+eval ac_try_echo="\"\$as_me:${as_lineno-$LINENO}: $ac_try_echo\""+$as_echo "$ac_try_echo"; } >&5+  (eval "$ac_try") 2>&5+  ac_status=$?+  $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5+  test $ac_status = 0; }; }; then :+  ac_retval=0+else+  $as_echo "$as_me: program exited with status $ac_status" >&5+       $as_echo "$as_me: failed program was:" >&5+sed 's/^/| /' conftest.$ac_ext >&5++       ac_retval=$ac_status+fi+  rm -rf conftest.dSYM conftest_ipa8_conftest.oo+  eval $as_lineno_stack; ${as_lineno_stack:+:} unset as_lineno+  as_fn_set_status $ac_retval++} # ac_fn_c_try_run++# ac_fn_c_check_func LINENO FUNC VAR+# ----------------------------------+# Tests whether FUNC exists, setting the cache variable VAR accordingly+ac_fn_c_check_func ()+{+  as_lineno=${as_lineno-"$1"} as_lineno_stack=as_lineno_stack=$as_lineno_stack+  { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $2" >&5+$as_echo_n "checking for $2... " >&6; }+if eval \${$3+:} false; then :+  $as_echo_n "(cached) " >&6+else+  cat confdefs.h - <<_ACEOF >conftest.$ac_ext+/* end confdefs.h.  */+/* Define $2 to an innocuous variant, in case <limits.h> declares $2.+   For example, HP-UX 11i <limits.h> declares gettimeofday.  */+#define $2 innocuous_$2++/* System header to define __stub macros and hopefully few prototypes,+    which can conflict with char $2 (); below.+    Prefer <limits.h> to <assert.h> if __STDC__ is defined, since+    <limits.h> exists even on freestanding compilers.  */++#ifdef __STDC__+# include <limits.h>+#else+# include <assert.h>+#endif++#undef $2++/* Override any GCC internal prototype to avoid an error.+   Use char because int might match the return type of a GCC+   builtin and then its argument prototype would still apply.  */+#ifdef __cplusplus+extern "C"+#endif+char $2 ();+/* The GNU C library defines this for functions which it implements+    to always fail with ENOSYS.  Some functions are actually named+    something starting with __ and the normal name is an alias.  */+#if defined __stub_$2 || defined __stub___$2+choke me+#endif++int+main ()+{+return $2 ();+  ;+  return 0;+}+_ACEOF+if ac_fn_c_try_link "$LINENO"; then :+  eval "$3=yes"+else+  eval "$3=no"+fi+rm -f core conftest.err conftest.$ac_objext \+    conftest$ac_exeext conftest.$ac_ext+fi+eval ac_res=\$$3+	       { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_res" >&5+$as_echo "$ac_res" >&6; }+  eval $as_lineno_stack; ${as_lineno_stack:+:} unset as_lineno++} # ac_fn_c_check_func++# ac_fn_cxx_try_cpp LINENO+# ------------------------+# Try to preprocess conftest.$ac_ext, and return whether this succeeded.+ac_fn_cxx_try_cpp ()+{+  as_lineno=${as_lineno-"$1"} as_lineno_stack=as_lineno_stack=$as_lineno_stack+  if { { ac_try="$ac_cpp conftest.$ac_ext"+case "(($ac_try" in+  *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;+  *) ac_try_echo=$ac_try;;+esac+eval ac_try_echo="\"\$as_me:${as_lineno-$LINENO}: $ac_try_echo\""+$as_echo "$ac_try_echo"; } >&5+  (eval "$ac_cpp conftest.$ac_ext") 2>conftest.err+  ac_status=$?+  if test -s conftest.err; then+    grep -v '^ *+' conftest.err >conftest.er1+    cat conftest.er1 >&5+    mv -f conftest.er1 conftest.err+  fi+  $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5+  test $ac_status = 0; } > conftest.i && {+	 test -z "$ac_cxx_preproc_warn_flag$ac_cxx_werror_flag" ||+	 test ! -s conftest.err+       }; then :+  ac_retval=0+else+  $as_echo "$as_me: failed program was:" >&5+sed 's/^/| /' conftest.$ac_ext >&5++    ac_retval=1+fi+  eval $as_lineno_stack; ${as_lineno_stack:+:} unset as_lineno+  as_fn_set_status $ac_retval++} # ac_fn_cxx_try_cpp++# ac_fn_cxx_try_link LINENO+# -------------------------+# Try to link conftest.$ac_ext, and return whether this succeeded.+ac_fn_cxx_try_link ()+{+  as_lineno=${as_lineno-"$1"} as_lineno_stack=as_lineno_stack=$as_lineno_stack+  rm -f conftest.$ac_objext conftest$ac_exeext+  if { { ac_try="$ac_link"+case "(($ac_try" in+  *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;+  *) ac_try_echo=$ac_try;;+esac+eval ac_try_echo="\"\$as_me:${as_lineno-$LINENO}: $ac_try_echo\""+$as_echo "$ac_try_echo"; } >&5+  (eval "$ac_link") 2>conftest.err+  ac_status=$?+  if test -s conftest.err; then+    grep -v '^ *+' conftest.err >conftest.er1+    cat conftest.er1 >&5+    mv -f conftest.er1 conftest.err+  fi+  $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5+  test $ac_status = 0; } && {+	 test -z "$ac_cxx_werror_flag" ||+	 test ! -s conftest.err+       } && test -s conftest$ac_exeext && {+	 test "$cross_compiling" = yes ||+	 test -x conftest$ac_exeext+       }; then :+  ac_retval=0+else+  $as_echo "$as_me: failed program was:" >&5+sed 's/^/| /' conftest.$ac_ext >&5++	ac_retval=1+fi+  # Delete the IPA/IPO (Inter Procedural Analysis/Optimization) information+  # created by the PGI compiler (conftest_ipa8_conftest.oo), as it would+  # interfere with the next link command; also delete a directory that is+  # left behind by Apple's compiler.  We do this before executing the actions.+  rm -rf conftest.dSYM conftest_ipa8_conftest.oo+  eval $as_lineno_stack; ${as_lineno_stack:+:} unset as_lineno+  as_fn_set_status $ac_retval++} # ac_fn_cxx_try_link++# ac_fn_c_compute_int LINENO EXPR VAR INCLUDES+# --------------------------------------------+# Tries to find the compile-time value of EXPR in a program that includes+# INCLUDES, setting VAR accordingly. Returns whether the value could be+# computed+ac_fn_c_compute_int ()+{+  as_lineno=${as_lineno-"$1"} as_lineno_stack=as_lineno_stack=$as_lineno_stack+  if test "$cross_compiling" = yes; then+    # Depending upon the size, compute the lo and hi bounds.+cat confdefs.h - <<_ACEOF >conftest.$ac_ext+/* end confdefs.h.  */+$4+int+main ()+{+static int test_array [1 - 2 * !(($2) >= 0)];+test_array [0] = 0;+return test_array [0];++  ;+  return 0;+}+_ACEOF+if ac_fn_c_try_compile "$LINENO"; then :+  ac_lo=0 ac_mid=0+  while :; do+    cat confdefs.h - <<_ACEOF >conftest.$ac_ext+/* end confdefs.h.  */+$4+int+main ()+{+static int test_array [1 - 2 * !(($2) <= $ac_mid)];+test_array [0] = 0;+return test_array [0];++  ;+  return 0;+}+_ACEOF+if ac_fn_c_try_compile "$LINENO"; then :+  ac_hi=$ac_mid; break+else+  as_fn_arith $ac_mid + 1 && ac_lo=$as_val+			if test $ac_lo -le $ac_mid; then+			  ac_lo= ac_hi=+			  break+			fi+			as_fn_arith 2 '*' $ac_mid + 1 && ac_mid=$as_val+fi+rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext+  done+else+  cat confdefs.h - <<_ACEOF >conftest.$ac_ext+/* end confdefs.h.  */+$4+int+main ()+{+static int test_array [1 - 2 * !(($2) < 0)];+test_array [0] = 0;+return test_array [0];++  ;+  return 0;+}+_ACEOF+if ac_fn_c_try_compile "$LINENO"; then :+  ac_hi=-1 ac_mid=-1+  while :; do+    cat confdefs.h - <<_ACEOF >conftest.$ac_ext+/* end confdefs.h.  */+$4+int+main ()+{+static int test_array [1 - 2 * !(($2) >= $ac_mid)];+test_array [0] = 0;+return test_array [0];++  ;+  return 0;+}+_ACEOF+if ac_fn_c_try_compile "$LINENO"; then :+  ac_lo=$ac_mid; break+else+  as_fn_arith '(' $ac_mid ')' - 1 && ac_hi=$as_val+			if test $ac_mid -le $ac_hi; then+			  ac_lo= ac_hi=+			  break+			fi+			as_fn_arith 2 '*' $ac_mid && ac_mid=$as_val+fi+rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext+  done+else+  ac_lo= ac_hi=+fi+rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext+fi+rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext+# Binary search between lo and hi bounds.+while test "x$ac_lo" != "x$ac_hi"; do+  as_fn_arith '(' $ac_hi - $ac_lo ')' / 2 + $ac_lo && ac_mid=$as_val+  cat confdefs.h - <<_ACEOF >conftest.$ac_ext+/* end confdefs.h.  */+$4+int+main ()+{+static int test_array [1 - 2 * !(($2) <= $ac_mid)];+test_array [0] = 0;+return test_array [0];++  ;+  return 0;+}+_ACEOF+if ac_fn_c_try_compile "$LINENO"; then :+  ac_hi=$ac_mid+else+  as_fn_arith '(' $ac_mid ')' + 1 && ac_lo=$as_val+fi+rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext+done+case $ac_lo in #((+?*) eval "$3=\$ac_lo"; ac_retval=0 ;;+'') ac_retval=1 ;;+esac+  else+    cat confdefs.h - <<_ACEOF >conftest.$ac_ext+/* end confdefs.h.  */+$4+static long int longval () { return $2; }+static unsigned long int ulongval () { return $2; }+#include <stdio.h>+#include <stdlib.h>+int+main ()+{++  FILE *f = fopen ("conftest.val", "w");+  if (! f)+    return 1;+  if (($2) < 0)+    {+      long int i = longval ();+      if (i != ($2))+	return 1;+      fprintf (f, "%ld", i);+    }+  else+    {+      unsigned long int i = ulongval ();+      if (i != ($2))+	return 1;+      fprintf (f, "%lu", i);+    }+  /* Do not output a trailing newline, as this causes \r\n confusion+     on some platforms.  */+  return ferror (f) || fclose (f) != 0;++  ;+  return 0;+}+_ACEOF+if ac_fn_c_try_run "$LINENO"; then :+  echo >>conftest.val; read $3 <conftest.val; ac_retval=0+else+  ac_retval=1+fi+rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \+  conftest.$ac_objext conftest.beam conftest.$ac_ext+rm -f conftest.val++  fi+  eval $as_lineno_stack; ${as_lineno_stack:+:} unset as_lineno+  as_fn_set_status $ac_retval++} # ac_fn_c_compute_int++# ac_fn_c_check_header_mongrel LINENO HEADER VAR INCLUDES+# -------------------------------------------------------+# Tests whether HEADER exists, giving a warning if it cannot be compiled using+# the include files in INCLUDES and setting the cache variable VAR+# accordingly.+ac_fn_c_check_header_mongrel ()+{+  as_lineno=${as_lineno-"$1"} as_lineno_stack=as_lineno_stack=$as_lineno_stack+  if eval \${$3+:} false; then :+  { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $2" >&5+$as_echo_n "checking for $2... " >&6; }+if eval \${$3+:} false; then :+  $as_echo_n "(cached) " >&6+fi+eval ac_res=\$$3+	       { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_res" >&5+$as_echo "$ac_res" >&6; }+else+  # Is the header compilable?+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking $2 usability" >&5+$as_echo_n "checking $2 usability... " >&6; }+cat confdefs.h - <<_ACEOF >conftest.$ac_ext+/* end confdefs.h.  */+$4+#include <$2>+_ACEOF+if ac_fn_c_try_compile "$LINENO"; then :+  ac_header_compiler=yes+else+  ac_header_compiler=no+fi+rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext+{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_header_compiler" >&5+$as_echo "$ac_header_compiler" >&6; }++# Is the header present?+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking $2 presence" >&5+$as_echo_n "checking $2 presence... " >&6; }+cat confdefs.h - <<_ACEOF >conftest.$ac_ext+/* end confdefs.h.  */+#include <$2>+_ACEOF+if ac_fn_c_try_cpp "$LINENO"; then :+  ac_header_preproc=yes+else+  ac_header_preproc=no+fi+rm -f conftest.err conftest.i conftest.$ac_ext+{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_header_preproc" >&5+$as_echo "$ac_header_preproc" >&6; }++# So?  What about this header?+case $ac_header_compiler:$ac_header_preproc:$ac_c_preproc_warn_flag in #((+  yes:no: )+    { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: $2: accepted by the compiler, rejected by the preprocessor!" >&5+$as_echo "$as_me: WARNING: $2: accepted by the compiler, rejected by the preprocessor!" >&2;}+    { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: $2: proceeding with the compiler's result" >&5+$as_echo "$as_me: WARNING: $2: proceeding with the compiler's result" >&2;}+    ;;+  no:yes:* )+    { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: $2: present but cannot be compiled" >&5+$as_echo "$as_me: WARNING: $2: present but cannot be compiled" >&2;}+    { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: $2:     check for missing prerequisite headers?" >&5+$as_echo "$as_me: WARNING: $2:     check for missing prerequisite headers?" >&2;}+    { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: $2: see the Autoconf documentation" >&5+$as_echo "$as_me: WARNING: $2: see the Autoconf documentation" >&2;}+    { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: $2:     section \"Present But Cannot Be Compiled\"" >&5+$as_echo "$as_me: WARNING: $2:     section \"Present But Cannot Be Compiled\"" >&2;}+    { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: $2: proceeding with the compiler's result" >&5+$as_echo "$as_me: WARNING: $2: proceeding with the compiler's result" >&2;}+( $as_echo "## ----------------------------------------------------- ##+## Report this to http://github.com/libffi/libffi/issues ##+## ----------------------------------------------------- ##"+     ) | sed "s/^/$as_me: WARNING:     /" >&2+    ;;+esac+  { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $2" >&5+$as_echo_n "checking for $2... " >&6; }+if eval \${$3+:} false; then :+  $as_echo_n "(cached) " >&6+else+  eval "$3=\$ac_header_compiler"+fi+eval ac_res=\$$3+	       { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_res" >&5+$as_echo "$ac_res" >&6; }+fi+  eval $as_lineno_stack; ${as_lineno_stack:+:} unset as_lineno++} # ac_fn_c_check_header_mongrel++# ac_fn_c_check_type LINENO TYPE VAR INCLUDES+# -------------------------------------------+# Tests whether TYPE exists after having included INCLUDES, setting cache+# variable VAR accordingly.+ac_fn_c_check_type ()+{+  as_lineno=${as_lineno-"$1"} as_lineno_stack=as_lineno_stack=$as_lineno_stack+  { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $2" >&5+$as_echo_n "checking for $2... " >&6; }+if eval \${$3+:} false; then :+  $as_echo_n "(cached) " >&6+else+  eval "$3=no"+  cat confdefs.h - <<_ACEOF >conftest.$ac_ext+/* end confdefs.h.  */+$4+int+main ()+{+if (sizeof ($2))+	 return 0;+  ;+  return 0;+}+_ACEOF+if ac_fn_c_try_compile "$LINENO"; then :+  cat confdefs.h - <<_ACEOF >conftest.$ac_ext+/* end confdefs.h.  */+$4+int+main ()+{+if (sizeof (($2)))+	    return 0;+  ;+  return 0;+}+_ACEOF+if ac_fn_c_try_compile "$LINENO"; then :++else+  eval "$3=yes"+fi+rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext+fi+rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext+fi+eval ac_res=\$$3+	       { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_res" >&5+$as_echo "$ac_res" >&6; }+  eval $as_lineno_stack; ${as_lineno_stack:+:} unset as_lineno++} # ac_fn_c_check_type+cat >config.log <<_ACEOF+This file contains any messages produced by compilers while+running configure, to aid debugging if configure makes a mistake.++It was created by libffi $as_me 3.6.0, which was+generated by GNU Autoconf 2.69.  Invocation command line was++  $ $0 $@++_ACEOF+exec 5>>config.log+{+cat <<_ASUNAME+## --------- ##+## Platform. ##+## --------- ##++hostname = `(hostname || uname -n) 2>/dev/null | sed 1q`+uname -m = `(uname -m) 2>/dev/null || echo unknown`+uname -r = `(uname -r) 2>/dev/null || echo unknown`+uname -s = `(uname -s) 2>/dev/null || echo unknown`+uname -v = `(uname -v) 2>/dev/null || echo unknown`++/usr/bin/uname -p = `(/usr/bin/uname -p) 2>/dev/null || echo unknown`+/bin/uname -X     = `(/bin/uname -X) 2>/dev/null     || echo unknown`++/bin/arch              = `(/bin/arch) 2>/dev/null              || echo unknown`+/usr/bin/arch -k       = `(/usr/bin/arch -k) 2>/dev/null       || echo unknown`+/usr/convex/getsysinfo = `(/usr/convex/getsysinfo) 2>/dev/null || echo unknown`+/usr/bin/hostinfo      = `(/usr/bin/hostinfo) 2>/dev/null      || echo unknown`+/bin/machine           = `(/bin/machine) 2>/dev/null           || echo unknown`+/usr/bin/oslevel       = `(/usr/bin/oslevel) 2>/dev/null       || echo unknown`+/bin/universe          = `(/bin/universe) 2>/dev/null          || echo unknown`++_ASUNAME++as_save_IFS=$IFS; IFS=$PATH_SEPARATOR+for as_dir in $PATH+do+  IFS=$as_save_IFS+  test -z "$as_dir" && as_dir=.+    $as_echo "PATH: $as_dir"+  done+IFS=$as_save_IFS++} >&5++cat >&5 <<_ACEOF+++## ----------- ##+## Core tests. ##+## ----------- ##++_ACEOF+++# Keep a trace of the command line.+# Strip out --no-create and --no-recursion so they do not pile up.+# Strip out --silent because we don't want to record it for future runs.+# Also quote any args containing shell meta-characters.+# Make two passes to allow for proper duplicate-argument suppression.+ac_configure_args=+ac_configure_args0=+ac_configure_args1=+ac_must_keep_next=false+for ac_pass in 1 2+do+  for ac_arg+  do+    case $ac_arg in+    -no-create | --no-c* | -n | -no-recursion | --no-r*) continue ;;+    -q | -quiet | --quiet | --quie | --qui | --qu | --q \+    | -silent | --silent | --silen | --sile | --sil)+      continue ;;+    *\'*)+      ac_arg=`$as_echo "$ac_arg" | sed "s/'/'\\\\\\\\''/g"` ;;+    esac+    case $ac_pass in+    1) as_fn_append ac_configure_args0 " '$ac_arg'" ;;+    2)+      as_fn_append ac_configure_args1 " '$ac_arg'"+      if test $ac_must_keep_next = true; then+	ac_must_keep_next=false # Got value, back to normal.+      else+	case $ac_arg in+	  *=* | --config-cache | -C | -disable-* | --disable-* \+	  | -enable-* | --enable-* | -gas | --g* | -nfp | --nf* \+	  | -q | -quiet | --q* | -silent | --sil* | -v | -verb* \+	  | -with-* | --with-* | -without-* | --without-* | --x)+	    case "$ac_configure_args0 " in+	      "$ac_configure_args1"*" '$ac_arg' "* ) continue ;;+	    esac+	    ;;+	  -* ) ac_must_keep_next=true ;;+	esac+      fi+      as_fn_append ac_configure_args " '$ac_arg'"+      ;;+    esac+  done+done+{ ac_configure_args0=; unset ac_configure_args0;}+{ ac_configure_args1=; unset ac_configure_args1;}++# When interrupted or exit'd, cleanup temporary files, and complete+# config.log.  We remove comments because anyway the quotes in there+# would cause problems or look ugly.+# WARNING: Use '\'' to represent an apostrophe within the trap.+# WARNING: Do not start the trap code with a newline, due to a FreeBSD 4.0 bug.+trap 'exit_status=$?+  # Save into config.log some information that might help in debugging.+  {+    echo++    $as_echo "## ---------------- ##+## Cache variables. ##+## ---------------- ##"+    echo+    # The following way of writing the cache mishandles newlines in values,+(+  for ac_var in `(set) 2>&1 | sed -n '\''s/^\([a-zA-Z_][a-zA-Z0-9_]*\)=.*/\1/p'\''`; do+    eval ac_val=\$$ac_var+    case $ac_val in #(+    *${as_nl}*)+      case $ac_var in #(+      *_cv_*) { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: cache variable $ac_var contains a newline" >&5+$as_echo "$as_me: WARNING: cache variable $ac_var contains a newline" >&2;} ;;+      esac+      case $ac_var in #(+      _ | IFS | as_nl) ;; #(+      BASH_ARGV | BASH_SOURCE) eval $ac_var= ;; #(+      *) { eval $ac_var=; unset $ac_var;} ;;+      esac ;;+    esac+  done+  (set) 2>&1 |+    case $as_nl`(ac_space='\'' '\''; set) 2>&1` in #(+    *${as_nl}ac_space=\ *)+      sed -n \+	"s/'\''/'\''\\\\'\'''\''/g;+	  s/^\\([_$as_cr_alnum]*_cv_[_$as_cr_alnum]*\\)=\\(.*\\)/\\1='\''\\2'\''/p"+      ;; #(+    *)+      sed -n "/^[_$as_cr_alnum]*_cv_[_$as_cr_alnum]*=/p"+      ;;+    esac |+    sort+)+    echo++    $as_echo "## ----------------- ##+## Output variables. ##+## ----------------- ##"+    echo+    for ac_var in $ac_subst_vars+    do+      eval ac_val=\$$ac_var+      case $ac_val in+      *\'\''*) ac_val=`$as_echo "$ac_val" | sed "s/'\''/'\''\\\\\\\\'\'''\''/g"`;;+      esac+      $as_echo "$ac_var='\''$ac_val'\''"+    done | sort+    echo++    if test -n "$ac_subst_files"; then+      $as_echo "## ------------------- ##+## File substitutions. ##+## ------------------- ##"+      echo+      for ac_var in $ac_subst_files+      do+	eval ac_val=\$$ac_var+	case $ac_val in+	*\'\''*) ac_val=`$as_echo "$ac_val" | sed "s/'\''/'\''\\\\\\\\'\'''\''/g"`;;+	esac+	$as_echo "$ac_var='\''$ac_val'\''"+      done | sort+      echo+    fi++    if test -s confdefs.h; then+      $as_echo "## ----------- ##+## confdefs.h. ##+## ----------- ##"+      echo+      cat confdefs.h+      echo+    fi+    test "$ac_signal" != 0 &&+      $as_echo "$as_me: caught signal $ac_signal"+    $as_echo "$as_me: exit $exit_status"+  } >&5+  rm -f core *.core core.conftest.* &&+    rm -f -r conftest* confdefs* conf$$* $ac_clean_files &&+    exit $exit_status+' 0+for ac_signal in 1 2 13 15; do+  trap 'ac_signal='$ac_signal'; as_fn_exit 1' $ac_signal+done+ac_signal=0++# confdefs.h avoids OS command line length limits that DEFS can exceed.+rm -f -r conftest* confdefs.h++$as_echo "/* confdefs.h */" > confdefs.h++# Predefined preprocessor variables.++cat >>confdefs.h <<_ACEOF+#define PACKAGE_NAME "$PACKAGE_NAME"+_ACEOF++cat >>confdefs.h <<_ACEOF+#define PACKAGE_TARNAME "$PACKAGE_TARNAME"+_ACEOF++cat >>confdefs.h <<_ACEOF+#define PACKAGE_VERSION "$PACKAGE_VERSION"+_ACEOF++cat >>confdefs.h <<_ACEOF+#define PACKAGE_STRING "$PACKAGE_STRING"+_ACEOF++cat >>confdefs.h <<_ACEOF+#define PACKAGE_BUGREPORT "$PACKAGE_BUGREPORT"+_ACEOF++cat >>confdefs.h <<_ACEOF+#define PACKAGE_URL "$PACKAGE_URL"+_ACEOF+++# Let the site file select an alternate cache file if it wants to.+# Prefer an explicitly selected file to automatically selected ones.+ac_site_file1=NONE+ac_site_file2=NONE+if test -n "$CONFIG_SITE"; then+  # We do not want a PATH search for config.site.+  case $CONFIG_SITE in #((+    -*)  ac_site_file1=./$CONFIG_SITE;;+    */*) ac_site_file1=$CONFIG_SITE;;+    *)   ac_site_file1=./$CONFIG_SITE;;+  esac+elif test "x$prefix" != xNONE; then+  ac_site_file1=$prefix/share/config.site+  ac_site_file2=$prefix/etc/config.site+else+  ac_site_file1=$ac_default_prefix/share/config.site+  ac_site_file2=$ac_default_prefix/etc/config.site+fi+for ac_site_file in "$ac_site_file1" "$ac_site_file2"+do+  test "x$ac_site_file" = xNONE && continue+  if test /dev/null != "$ac_site_file" && test -r "$ac_site_file"; then+    { $as_echo "$as_me:${as_lineno-$LINENO}: loading site script $ac_site_file" >&5+$as_echo "$as_me: loading site script $ac_site_file" >&6;}+    sed 's/^/| /' "$ac_site_file" >&5+    . "$ac_site_file" \+      || { { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5+$as_echo "$as_me: error: in \`$ac_pwd':" >&2;}+as_fn_error $? "failed to load site script $ac_site_file+See \`config.log' for more details" "$LINENO" 5; }+  fi+done++if test -r "$cache_file"; then+  # Some versions of bash will fail to source /dev/null (special files+  # actually), so we avoid doing that.  DJGPP emulates it as a regular file.+  if test /dev/null != "$cache_file" && test -f "$cache_file"; then+    { $as_echo "$as_me:${as_lineno-$LINENO}: loading cache $cache_file" >&5+$as_echo "$as_me: loading cache $cache_file" >&6;}+    case $cache_file in+      [\\/]* | ?:[\\/]* ) . "$cache_file";;+      *)                      . "./$cache_file";;+    esac+  fi+else+  { $as_echo "$as_me:${as_lineno-$LINENO}: creating cache $cache_file" >&5+$as_echo "$as_me: creating cache $cache_file" >&6;}+  >$cache_file+fi++# Check that the precious variables saved in the cache have kept the same+# value.+ac_cache_corrupted=false+for ac_var in $ac_precious_vars; do+  eval ac_old_set=\$ac_cv_env_${ac_var}_set+  eval ac_new_set=\$ac_env_${ac_var}_set+  eval ac_old_val=\$ac_cv_env_${ac_var}_value+  eval ac_new_val=\$ac_env_${ac_var}_value+  case $ac_old_set,$ac_new_set in+    set,)+      { $as_echo "$as_me:${as_lineno-$LINENO}: error: \`$ac_var' was set to \`$ac_old_val' in the previous run" >&5+$as_echo "$as_me: error: \`$ac_var' was set to \`$ac_old_val' in the previous run" >&2;}+      ac_cache_corrupted=: ;;+    ,set)+      { $as_echo "$as_me:${as_lineno-$LINENO}: error: \`$ac_var' was not set in the previous run" >&5+$as_echo "$as_me: error: \`$ac_var' was not set in the previous run" >&2;}+      ac_cache_corrupted=: ;;+    ,);;+    *)+      if test "x$ac_old_val" != "x$ac_new_val"; then+	# differences in whitespace do not lead to failure.+	ac_old_val_w=`echo x $ac_old_val`+	ac_new_val_w=`echo x $ac_new_val`+	if test "$ac_old_val_w" != "$ac_new_val_w"; then+	  { $as_echo "$as_me:${as_lineno-$LINENO}: error: \`$ac_var' has changed since the previous run:" >&5+$as_echo "$as_me: error: \`$ac_var' has changed since the previous run:" >&2;}+	  ac_cache_corrupted=:+	else+	  { $as_echo "$as_me:${as_lineno-$LINENO}: warning: ignoring whitespace changes in \`$ac_var' since the previous run:" >&5+$as_echo "$as_me: warning: ignoring whitespace changes in \`$ac_var' since the previous run:" >&2;}+	  eval $ac_var=\$ac_old_val+	fi+	{ $as_echo "$as_me:${as_lineno-$LINENO}:   former value:  \`$ac_old_val'" >&5+$as_echo "$as_me:   former value:  \`$ac_old_val'" >&2;}+	{ $as_echo "$as_me:${as_lineno-$LINENO}:   current value: \`$ac_new_val'" >&5+$as_echo "$as_me:   current value: \`$ac_new_val'" >&2;}+      fi;;+  esac+  # Pass precious variables to config.status.+  if test "$ac_new_set" = set; then+    case $ac_new_val in+    *\'*) ac_arg=$ac_var=`$as_echo "$ac_new_val" | sed "s/'/'\\\\\\\\''/g"` ;;+    *) ac_arg=$ac_var=$ac_new_val ;;+    esac+    case " $ac_configure_args " in+      *" '$ac_arg' "*) ;; # Avoid dups.  Use of quotes ensures accuracy.+      *) as_fn_append ac_configure_args " '$ac_arg'" ;;+    esac+  fi+done+if $ac_cache_corrupted; then+  { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5+$as_echo "$as_me: error: in \`$ac_pwd':" >&2;}+  { $as_echo "$as_me:${as_lineno-$LINENO}: error: changes in the environment can compromise the build" >&5+$as_echo "$as_me: error: changes in the environment can compromise the build" >&2;}+  as_fn_error $? "run \`make distclean' and/or \`rm $cache_file' and start over" "$LINENO" 5+fi+## -------------------- ##+## Main body of script. ##+## -------------------- ##++ac_ext=c+ac_cpp='$CPP $CPPFLAGS'+ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5'+ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5'+ac_compiler_gnu=$ac_cv_c_compiler_gnu+++ac_config_headers="$ac_config_headers fficonfig.h"+++FFI_VERSION_STRING="3.5.2"+FFI_VERSION_NUMBER=30502++++ac_aux_dir=+for ac_dir in "$srcdir" "$srcdir/.." "$srcdir/../.."; do+  if test -f "$ac_dir/install-sh"; then+    ac_aux_dir=$ac_dir+    ac_install_sh="$ac_aux_dir/install-sh -c"+    break+  elif test -f "$ac_dir/install.sh"; then+    ac_aux_dir=$ac_dir+    ac_install_sh="$ac_aux_dir/install.sh -c"+    break+  elif test -f "$ac_dir/shtool"; then+    ac_aux_dir=$ac_dir+    ac_install_sh="$ac_aux_dir/shtool install -c"+    break+  fi+done+if test -z "$ac_aux_dir"; then+  as_fn_error $? "cannot find install-sh, install.sh, or shtool in \"$srcdir\" \"$srcdir/..\" \"$srcdir/../..\"" "$LINENO" 5+fi++# These three variables are undocumented and unsupported,+# and are intended to be withdrawn in a future Autoconf release.+# They can cause serious problems if a builder's source tree is in a directory+# whose full name contains unusual characters.+ac_config_guess="$SHELL $ac_aux_dir/config.guess"  # Please don't use this var.+ac_config_sub="$SHELL $ac_aux_dir/config.sub"  # Please don't use this var.+ac_configure="$SHELL $ac_aux_dir/configure"  # Please don't use this var.+++# Make sure we can run config.sub.+$SHELL "$ac_aux_dir/config.sub" sun4 >/dev/null 2>&1 ||+  as_fn_error $? "cannot run $SHELL $ac_aux_dir/config.sub" "$LINENO" 5++{ $as_echo "$as_me:${as_lineno-$LINENO}: checking build system type" >&5+$as_echo_n "checking build system type... " >&6; }+if ${ac_cv_build+:} false; then :+  $as_echo_n "(cached) " >&6+else+  ac_build_alias=$build_alias+test "x$ac_build_alias" = x &&+  ac_build_alias=`$SHELL "$ac_aux_dir/config.guess"`+test "x$ac_build_alias" = x &&+  as_fn_error $? "cannot guess build type; you must specify one" "$LINENO" 5+ac_cv_build=`$SHELL "$ac_aux_dir/config.sub" $ac_build_alias` ||+  as_fn_error $? "$SHELL $ac_aux_dir/config.sub $ac_build_alias failed" "$LINENO" 5++fi+{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_build" >&5+$as_echo "$ac_cv_build" >&6; }+case $ac_cv_build in+*-*-*) ;;+*) as_fn_error $? "invalid value of canonical build" "$LINENO" 5;;+esac+build=$ac_cv_build+ac_save_IFS=$IFS; IFS='-'+set x $ac_cv_build+shift+build_cpu=$1+build_vendor=$2+shift; shift+# Remember, the first character of IFS is used to create $*,+# except with old shells:+build_os=$*+IFS=$ac_save_IFS+case $build_os in *\ *) build_os=`echo "$build_os" | sed 's/ /-/g'`;; esac+++{ $as_echo "$as_me:${as_lineno-$LINENO}: checking host system type" >&5+$as_echo_n "checking host system type... " >&6; }+if ${ac_cv_host+:} false; then :+  $as_echo_n "(cached) " >&6+else+  if test "x$host_alias" = x; then+  ac_cv_host=$ac_cv_build+else+  ac_cv_host=`$SHELL "$ac_aux_dir/config.sub" $host_alias` ||+    as_fn_error $? "$SHELL $ac_aux_dir/config.sub $host_alias failed" "$LINENO" 5+fi++fi+{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_host" >&5+$as_echo "$ac_cv_host" >&6; }+case $ac_cv_host in+*-*-*) ;;+*) as_fn_error $? "invalid value of canonical host" "$LINENO" 5;;+esac+host=$ac_cv_host+ac_save_IFS=$IFS; IFS='-'+set x $ac_cv_host+shift+host_cpu=$1+host_vendor=$2+shift; shift+# Remember, the first character of IFS is used to create $*,+# except with old shells:+host_os=$*+IFS=$ac_save_IFS+case $host_os in *\ *) host_os=`echo "$host_os" | sed 's/ /-/g'`;; esac+++{ $as_echo "$as_me:${as_lineno-$LINENO}: checking target system type" >&5+$as_echo_n "checking target system type... " >&6; }+if ${ac_cv_target+:} false; then :+  $as_echo_n "(cached) " >&6+else+  if test "x$target_alias" = x; then+  ac_cv_target=$ac_cv_host+else+  ac_cv_target=`$SHELL "$ac_aux_dir/config.sub" $target_alias` ||+    as_fn_error $? "$SHELL $ac_aux_dir/config.sub $target_alias failed" "$LINENO" 5+fi++fi+{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_target" >&5+$as_echo "$ac_cv_target" >&6; }+case $ac_cv_target in+*-*-*) ;;+*) as_fn_error $? "invalid value of canonical target" "$LINENO" 5;;+esac+target=$ac_cv_target+ac_save_IFS=$IFS; IFS='-'+set x $ac_cv_target+shift+target_cpu=$1+target_vendor=$2+shift; shift+# Remember, the first character of IFS is used to create $*,+# except with old shells:+target_os=$*+IFS=$ac_save_IFS+case $target_os in *\ *) target_os=`echo "$target_os" | sed 's/ /-/g'`;; esac+++# The aliases save the names the user supplied, while $host etc.+# will get canonicalized.+test -n "$target_alias" &&+  test "$program_prefix$program_suffix$program_transform_name" = \+    NONENONEs,x,x, &&+  program_prefix=${target_alias}-+target_alias=${target_alias-$host_alias}++case "${host}" in+  frv*-elf)+    LDFLAGS=`echo $LDFLAGS | sed "s/\-B^ *libgloss\/frv\///"`\ -B`pwd`/../libgloss/frv/+    ;;+esac+++   # [$]@ is unusable in 2.60+ but earlier autoconf had no ac_configure_args+   if test "${ac_configure_args+set}" != "set" ; then+      ac_configure_args=+      for ac_arg in ${1+"$@"}; do+         ac_configure_args="$ac_configure_args '$ac_arg'"+      done+   fi++# Expand $ac_aux_dir to an absolute path.+am_aux_dir=`cd "$ac_aux_dir" && pwd`+++ax_enable_builddir="."+# Check whether --enable-builddir was given.+if test "${enable_builddir+set}" = set; then :+  enableval=$enable_builddir; ax_enable_builddir="$enableval"+else+  ax_enable_builddir="auto"+fi++if test ".$ac_srcdir_defaulted" != ".no" ; then+if test ".$srcdir" = ".." ; then+  if test -f config.status ; then+    { $as_echo "$as_me:${as_lineno-$LINENO}: toplevel srcdir already configured... skipping subdir build" >&5+$as_echo "$as_me: toplevel srcdir already configured... skipping subdir build" >&6;}+  else+    test ".$ax_enable_builddir" = "."  && ax_enable_builddir="."+    test ".$ax_enable_builddir" = ".no"  && ax_enable_builddir="."+    test ".$TARGET" = "." && TARGET="$target"+    test ".$ax_enable_builddir" = ".auto" && ax_enable_builddir="$TARGET"+    if test ".$ax_enable_builddir" != ".." ; then    # we know where to go and+      as_dir=$ax_enable_builddir; as_fn_mkdir_p+      echo __.$ax_enable_builddir.__ > $ax_enable_builddir/conftest.tmp+      cd $ax_enable_builddir+      if grep __.$ax_enable_builddir.__ conftest.tmp >/dev/null 2>/dev/null ; then+        rm conftest.tmp+        { $as_echo "$as_me:${as_lineno-$LINENO}: result: continue configure in default builddir \"./$ax_enable_builddir\"" >&5+$as_echo "continue configure in default builddir \"./$ax_enable_builddir\"" >&6; }+      else+        as_fn_error $? "could not change to default builddir \"./$ax_enable_builddir\"" "$LINENO" 5+      fi+      srcdir=`echo "$ax_enable_builddir" |+              sed -e 's,^\./,,;s,[^/]$,&/,;s,[^/]*/,../,g;s,[/]$,,;'`+      # going to restart from subdirectory location+      test -f $srcdir/config.log   && mv $srcdir/config.log   .+      test -f $srcdir/confdefs.h   && mv $srcdir/confdefs.h   .+      test -f $srcdir/conftest.log && mv $srcdir/conftest.log .+      test -f $srcdir/$cache_file  && mv $srcdir/$cache_file  .+      { $as_echo "$as_me:${as_lineno-$LINENO}: result: ....exec $SHELL $srcdir/$0 \"--srcdir=$srcdir\" \"--enable-builddir=$ax_enable_builddir\" ${1+\"$@\"}" >&5+$as_echo "....exec $SHELL $srcdir/$0 \"--srcdir=$srcdir\" \"--enable-builddir=$ax_enable_builddir\" ${1+\"$@\"}" >&6; }+      case "$0" in # restart+       [\\/]* | ?:[\\/]*) # Absolute name+         eval $SHELL "'$0'" "'--srcdir=$srcdir'" "'--enable-builddir=$ax_enable_builddir'" $ac_configure_args ;;+       *) eval $SHELL "'$srcdir/$0'" "'--srcdir=$srcdir'" "'--enable-builddir=$ax_enable_builddir'" $ac_configure_args ;;+      esac ; exit $?+    fi+  fi+fi fi+test ".$ax_enable_builddir" = ".auto" && ax_enable_builddir="."+# Extract the first word of "gsed sed", so it can be a program name with args.+set dummy gsed sed; ac_word=$2+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5+$as_echo_n "checking for $ac_word... " >&6; }+if ${ac_cv_path_ax_enable_builddir_sed+:} false; then :+  $as_echo_n "(cached) " >&6+else+  case $ax_enable_builddir_sed in+  [\\/]* | ?:[\\/]*)+  ac_cv_path_ax_enable_builddir_sed="$ax_enable_builddir_sed" # Let the user override the test with a path.+  ;;+  *)+  as_save_IFS=$IFS; IFS=$PATH_SEPARATOR+for as_dir in $PATH+do+  IFS=$as_save_IFS+  test -z "$as_dir" && as_dir=.+    for ac_exec_ext in '' $ac_executable_extensions; do+  if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then+    ac_cv_path_ax_enable_builddir_sed="$as_dir/$ac_word$ac_exec_ext"+    $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5+    break 2+  fi+done+  done+IFS=$as_save_IFS++  test -z "$ac_cv_path_ax_enable_builddir_sed" && ac_cv_path_ax_enable_builddir_sed="sed"+  ;;+esac+fi+ax_enable_builddir_sed=$ac_cv_path_ax_enable_builddir_sed+if test -n "$ax_enable_builddir_sed"; then+  { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ax_enable_builddir_sed" >&5+$as_echo "$ax_enable_builddir_sed" >&6; }+else+  { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5+$as_echo "no" >&6; }+fi+++ax_enable_builddir_auxdir="$am_aux_dir"+ac_config_commands="$ac_config_commands buildir"+++# The same as in boehm-gc and libstdc++. Have to borrow it from there.+# We must force CC to /not/ be precious variables; otherwise+# the wrong, non-multilib-adjusted value will be used in multilibs.+# As a side effect, we have to subst CFLAGS ourselves.+# Also save and restore CFLAGS, since AC_PROG_CC will come up with+# defaults of its own if none are provided.++++save_CFLAGS=$CFLAGS+ac_ext=c+ac_cpp='$CPP $CPPFLAGS'+ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5'+ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5'+ac_compiler_gnu=$ac_cv_c_compiler_gnu+if test -n "$ac_tool_prefix"; then+  # Extract the first word of "${ac_tool_prefix}gcc", so it can be a program name with args.+set dummy ${ac_tool_prefix}gcc; ac_word=$2+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5+$as_echo_n "checking for $ac_word... " >&6; }+if ${ac_cv_prog_CC+:} false; then :+  $as_echo_n "(cached) " >&6+else+  if test -n "$CC"; then+  ac_cv_prog_CC="$CC" # Let the user override the test.+else+as_save_IFS=$IFS; IFS=$PATH_SEPARATOR+for as_dir in $PATH+do+  IFS=$as_save_IFS+  test -z "$as_dir" && as_dir=.+    for ac_exec_ext in '' $ac_executable_extensions; do+  if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then+    ac_cv_prog_CC="${ac_tool_prefix}gcc"+    $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5+    break 2+  fi+done+  done+IFS=$as_save_IFS++fi+fi+CC=$ac_cv_prog_CC+if test -n "$CC"; then+  { $as_echo "$as_me:${as_lineno-$LINENO}: result: $CC" >&5+$as_echo "$CC" >&6; }+else+  { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5+$as_echo "no" >&6; }+fi+++fi+if test -z "$ac_cv_prog_CC"; then+  ac_ct_CC=$CC+  # Extract the first word of "gcc", so it can be a program name with args.+set dummy gcc; ac_word=$2+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5+$as_echo_n "checking for $ac_word... " >&6; }+if ${ac_cv_prog_ac_ct_CC+:} false; then :+  $as_echo_n "(cached) " >&6+else+  if test -n "$ac_ct_CC"; then+  ac_cv_prog_ac_ct_CC="$ac_ct_CC" # Let the user override the test.+else+as_save_IFS=$IFS; IFS=$PATH_SEPARATOR+for as_dir in $PATH+do+  IFS=$as_save_IFS+  test -z "$as_dir" && as_dir=.+    for ac_exec_ext in '' $ac_executable_extensions; do+  if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then+    ac_cv_prog_ac_ct_CC="gcc"+    $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5+    break 2+  fi+done+  done+IFS=$as_save_IFS++fi+fi+ac_ct_CC=$ac_cv_prog_ac_ct_CC+if test -n "$ac_ct_CC"; then+  { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_ct_CC" >&5+$as_echo "$ac_ct_CC" >&6; }+else+  { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5+$as_echo "no" >&6; }+fi++  if test "x$ac_ct_CC" = x; then+    CC=""+  else+    case $cross_compiling:$ac_tool_warned in+yes:)+{ $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: using cross tools not prefixed with host triplet" >&5+$as_echo "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;}+ac_tool_warned=yes ;;+esac+    CC=$ac_ct_CC+  fi+else+  CC="$ac_cv_prog_CC"+fi++if test -z "$CC"; then+          if test -n "$ac_tool_prefix"; then+    # Extract the first word of "${ac_tool_prefix}cc", so it can be a program name with args.+set dummy ${ac_tool_prefix}cc; ac_word=$2+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5+$as_echo_n "checking for $ac_word... " >&6; }+if ${ac_cv_prog_CC+:} false; then :+  $as_echo_n "(cached) " >&6+else+  if test -n "$CC"; then+  ac_cv_prog_CC="$CC" # Let the user override the test.+else+as_save_IFS=$IFS; IFS=$PATH_SEPARATOR+for as_dir in $PATH+do+  IFS=$as_save_IFS+  test -z "$as_dir" && as_dir=.+    for ac_exec_ext in '' $ac_executable_extensions; do+  if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then+    ac_cv_prog_CC="${ac_tool_prefix}cc"+    $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5+    break 2+  fi+done+  done+IFS=$as_save_IFS++fi+fi+CC=$ac_cv_prog_CC+if test -n "$CC"; then+  { $as_echo "$as_me:${as_lineno-$LINENO}: result: $CC" >&5+$as_echo "$CC" >&6; }+else+  { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5+$as_echo "no" >&6; }+fi+++  fi+fi+if test -z "$CC"; then+  # Extract the first word of "cc", so it can be a program name with args.+set dummy cc; ac_word=$2+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5+$as_echo_n "checking for $ac_word... " >&6; }+if ${ac_cv_prog_CC+:} false; then :+  $as_echo_n "(cached) " >&6+else+  if test -n "$CC"; then+  ac_cv_prog_CC="$CC" # Let the user override the test.+else+  ac_prog_rejected=no+as_save_IFS=$IFS; IFS=$PATH_SEPARATOR+for as_dir in $PATH+do+  IFS=$as_save_IFS+  test -z "$as_dir" && as_dir=.+    for ac_exec_ext in '' $ac_executable_extensions; do+  if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then+    if test "$as_dir/$ac_word$ac_exec_ext" = "/usr/ucb/cc"; then+       ac_prog_rejected=yes+       continue+     fi+    ac_cv_prog_CC="cc"+    $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5+    break 2+  fi+done+  done+IFS=$as_save_IFS++if test $ac_prog_rejected = yes; then+  # We found a bogon in the path, so make sure we never use it.+  set dummy $ac_cv_prog_CC+  shift+  if test $# != 0; then+    # We chose a different compiler from the bogus one.+    # However, it has the same basename, so the bogon will be chosen+    # first if we set CC to just the basename; use the full file name.+    shift+    ac_cv_prog_CC="$as_dir/$ac_word${1+' '}$@"+  fi+fi+fi+fi+CC=$ac_cv_prog_CC+if test -n "$CC"; then+  { $as_echo "$as_me:${as_lineno-$LINENO}: result: $CC" >&5+$as_echo "$CC" >&6; }+else+  { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5+$as_echo "no" >&6; }+fi+++fi+if test -z "$CC"; then+  if test -n "$ac_tool_prefix"; then+  for ac_prog in cl.exe+  do+    # Extract the first word of "$ac_tool_prefix$ac_prog", so it can be a program name with args.+set dummy $ac_tool_prefix$ac_prog; ac_word=$2+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5+$as_echo_n "checking for $ac_word... " >&6; }+if ${ac_cv_prog_CC+:} false; then :+  $as_echo_n "(cached) " >&6+else+  if test -n "$CC"; then+  ac_cv_prog_CC="$CC" # Let the user override the test.+else+as_save_IFS=$IFS; IFS=$PATH_SEPARATOR+for as_dir in $PATH+do+  IFS=$as_save_IFS+  test -z "$as_dir" && as_dir=.+    for ac_exec_ext in '' $ac_executable_extensions; do+  if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then+    ac_cv_prog_CC="$ac_tool_prefix$ac_prog"+    $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5+    break 2+  fi+done+  done+IFS=$as_save_IFS++fi+fi+CC=$ac_cv_prog_CC+if test -n "$CC"; then+  { $as_echo "$as_me:${as_lineno-$LINENO}: result: $CC" >&5+$as_echo "$CC" >&6; }+else+  { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5+$as_echo "no" >&6; }+fi+++    test -n "$CC" && break+  done+fi+if test -z "$CC"; then+  ac_ct_CC=$CC+  for ac_prog in cl.exe+do+  # Extract the first word of "$ac_prog", so it can be a program name with args.+set dummy $ac_prog; ac_word=$2+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5+$as_echo_n "checking for $ac_word... " >&6; }+if ${ac_cv_prog_ac_ct_CC+:} false; then :+  $as_echo_n "(cached) " >&6+else+  if test -n "$ac_ct_CC"; then+  ac_cv_prog_ac_ct_CC="$ac_ct_CC" # Let the user override the test.+else+as_save_IFS=$IFS; IFS=$PATH_SEPARATOR+for as_dir in $PATH+do+  IFS=$as_save_IFS+  test -z "$as_dir" && as_dir=.+    for ac_exec_ext in '' $ac_executable_extensions; do+  if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then+    ac_cv_prog_ac_ct_CC="$ac_prog"+    $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5+    break 2+  fi+done+  done+IFS=$as_save_IFS++fi+fi+ac_ct_CC=$ac_cv_prog_ac_ct_CC+if test -n "$ac_ct_CC"; then+  { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_ct_CC" >&5+$as_echo "$ac_ct_CC" >&6; }+else+  { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5+$as_echo "no" >&6; }+fi+++  test -n "$ac_ct_CC" && break+done++  if test "x$ac_ct_CC" = x; then+    CC=""+  else+    case $cross_compiling:$ac_tool_warned in+yes:)+{ $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: using cross tools not prefixed with host triplet" >&5+$as_echo "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;}+ac_tool_warned=yes ;;+esac+    CC=$ac_ct_CC+  fi+fi++fi+++test -z "$CC" && { { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5+$as_echo "$as_me: error: in \`$ac_pwd':" >&2;}+as_fn_error $? "no acceptable C compiler found in \$PATH+See \`config.log' for more details" "$LINENO" 5; }++# Provide some information about the compiler.+$as_echo "$as_me:${as_lineno-$LINENO}: checking for C compiler version" >&5+set X $ac_compile+ac_compiler=$2+for ac_option in --version -v -V -qversion; do+  { { ac_try="$ac_compiler $ac_option >&5"+case "(($ac_try" in+  *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;+  *) ac_try_echo=$ac_try;;+esac+eval ac_try_echo="\"\$as_me:${as_lineno-$LINENO}: $ac_try_echo\""+$as_echo "$ac_try_echo"; } >&5+  (eval "$ac_compiler $ac_option >&5") 2>conftest.err+  ac_status=$?+  if test -s conftest.err; then+    sed '10a\+... rest of stderr output deleted ...+         10q' conftest.err >conftest.er1+    cat conftest.er1 >&5+  fi+  rm -f conftest.er1 conftest.err+  $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5+  test $ac_status = 0; }+done++cat confdefs.h - <<_ACEOF >conftest.$ac_ext+/* end confdefs.h.  */++int+main ()+{++  ;+  return 0;+}+_ACEOF+ac_clean_files_save=$ac_clean_files+ac_clean_files="$ac_clean_files a.out a.out.dSYM a.exe b.out"+# Try to create an executable without -o first, disregard a.out.+# It will help us diagnose broken compilers, and finding out an intuition+# of exeext.+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether the C compiler works" >&5+$as_echo_n "checking whether the C compiler works... " >&6; }+ac_link_default=`$as_echo "$ac_link" | sed 's/ -o *conftest[^ ]*//'`++# The possible output files:+ac_files="a.out conftest.exe conftest a.exe a_out.exe b.out conftest.*"++ac_rmfiles=+for ac_file in $ac_files+do+  case $ac_file in+    *.$ac_ext | *.xcoff | *.tds | *.d | *.pdb | *.xSYM | *.bb | *.bbg | *.map | *.inf | *.dSYM | *.o | *.obj ) ;;+    * ) ac_rmfiles="$ac_rmfiles $ac_file";;+  esac+done+rm -f $ac_rmfiles++if { { ac_try="$ac_link_default"+case "(($ac_try" in+  *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;+  *) ac_try_echo=$ac_try;;+esac+eval ac_try_echo="\"\$as_me:${as_lineno-$LINENO}: $ac_try_echo\""+$as_echo "$ac_try_echo"; } >&5+  (eval "$ac_link_default") 2>&5+  ac_status=$?+  $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5+  test $ac_status = 0; }; then :+  # Autoconf-2.13 could set the ac_cv_exeext variable to `no'.+# So ignore a value of `no', otherwise this would lead to `EXEEXT = no'+# in a Makefile.  We should not override ac_cv_exeext if it was cached,+# so that the user can short-circuit this test for compilers unknown to+# Autoconf.+for ac_file in $ac_files ''+do+  test -f "$ac_file" || continue+  case $ac_file in+    *.$ac_ext | *.xcoff | *.tds | *.d | *.pdb | *.xSYM | *.bb | *.bbg | *.map | *.inf | *.dSYM | *.o | *.obj )+	;;+    [ab].out )+	# We found the default executable, but exeext='' is most+	# certainly right.+	break;;+    *.* )+	if test "${ac_cv_exeext+set}" = set && test "$ac_cv_exeext" != no;+	then :; else+	   ac_cv_exeext=`expr "$ac_file" : '[^.]*\(\..*\)'`+	fi+	# We set ac_cv_exeext here because the later test for it is not+	# safe: cross compilers may not add the suffix if given an `-o'+	# argument, so we may need to know it at that point already.+	# Even if this section looks crufty: it has the advantage of+	# actually working.+	break;;+    * )+	break;;+  esac+done+test "$ac_cv_exeext" = no && ac_cv_exeext=++else+  ac_file=''+fi+if test -z "$ac_file"; then :+  { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5+$as_echo "no" >&6; }+$as_echo "$as_me: failed program was:" >&5+sed 's/^/| /' conftest.$ac_ext >&5++{ { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5+$as_echo "$as_me: error: in \`$ac_pwd':" >&2;}+as_fn_error 77 "C compiler cannot create executables+See \`config.log' for more details" "$LINENO" 5; }+else+  { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5+$as_echo "yes" >&6; }+fi+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for C compiler default output file name" >&5+$as_echo_n "checking for C compiler default output file name... " >&6; }+{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_file" >&5+$as_echo "$ac_file" >&6; }+ac_exeext=$ac_cv_exeext++rm -f -r a.out a.out.dSYM a.exe conftest$ac_cv_exeext b.out+ac_clean_files=$ac_clean_files_save+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for suffix of executables" >&5+$as_echo_n "checking for suffix of executables... " >&6; }+if { { ac_try="$ac_link"+case "(($ac_try" in+  *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;+  *) ac_try_echo=$ac_try;;+esac+eval ac_try_echo="\"\$as_me:${as_lineno-$LINENO}: $ac_try_echo\""+$as_echo "$ac_try_echo"; } >&5+  (eval "$ac_link") 2>&5+  ac_status=$?+  $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5+  test $ac_status = 0; }; then :+  # If both `conftest.exe' and `conftest' are `present' (well, observable)+# catch `conftest.exe'.  For instance with Cygwin, `ls conftest' will+# work properly (i.e., refer to `conftest.exe'), while it won't with+# `rm'.+for ac_file in conftest.exe conftest conftest.*; do+  test -f "$ac_file" || continue+  case $ac_file in+    *.$ac_ext | *.xcoff | *.tds | *.d | *.pdb | *.xSYM | *.bb | *.bbg | *.map | *.inf | *.dSYM | *.o | *.obj ) ;;+    *.* ) ac_cv_exeext=`expr "$ac_file" : '[^.]*\(\..*\)'`+	  break;;+    * ) break;;+  esac+done+else+  { { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5+$as_echo "$as_me: error: in \`$ac_pwd':" >&2;}+as_fn_error $? "cannot compute suffix of executables: cannot compile and link+See \`config.log' for more details" "$LINENO" 5; }+fi+rm -f conftest conftest$ac_cv_exeext+{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_exeext" >&5+$as_echo "$ac_cv_exeext" >&6; }++rm -f conftest.$ac_ext+EXEEXT=$ac_cv_exeext+ac_exeext=$EXEEXT+cat confdefs.h - <<_ACEOF >conftest.$ac_ext+/* end confdefs.h.  */+#include <stdio.h>+int+main ()+{+FILE *f = fopen ("conftest.out", "w");+ return ferror (f) || fclose (f) != 0;++  ;+  return 0;+}+_ACEOF+ac_clean_files="$ac_clean_files conftest.out"+# Check that the compiler produces executables we can run.  If not, either+# the compiler is broken, or we cross compile.+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether we are cross compiling" >&5+$as_echo_n "checking whether we are cross compiling... " >&6; }+if test "$cross_compiling" != yes; then+  { { ac_try="$ac_link"+case "(($ac_try" in+  *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;+  *) ac_try_echo=$ac_try;;+esac+eval ac_try_echo="\"\$as_me:${as_lineno-$LINENO}: $ac_try_echo\""+$as_echo "$ac_try_echo"; } >&5+  (eval "$ac_link") 2>&5+  ac_status=$?+  $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5+  test $ac_status = 0; }+  if { ac_try='./conftest$ac_cv_exeext'+  { { case "(($ac_try" in+  *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;+  *) ac_try_echo=$ac_try;;+esac+eval ac_try_echo="\"\$as_me:${as_lineno-$LINENO}: $ac_try_echo\""+$as_echo "$ac_try_echo"; } >&5+  (eval "$ac_try") 2>&5+  ac_status=$?+  $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5+  test $ac_status = 0; }; }; then+    cross_compiling=no+  else+    if test "$cross_compiling" = maybe; then+	cross_compiling=yes+    else+	{ { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5+$as_echo "$as_me: error: in \`$ac_pwd':" >&2;}+as_fn_error $? "cannot run C compiled programs.+If you meant to cross compile, use \`--host'.+See \`config.log' for more details" "$LINENO" 5; }+    fi+  fi+fi+{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $cross_compiling" >&5+$as_echo "$cross_compiling" >&6; }++rm -f conftest.$ac_ext conftest$ac_cv_exeext conftest.out+ac_clean_files=$ac_clean_files_save+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for suffix of object files" >&5+$as_echo_n "checking for suffix of object files... " >&6; }+if ${ac_cv_objext+:} false; then :+  $as_echo_n "(cached) " >&6+else+  cat confdefs.h - <<_ACEOF >conftest.$ac_ext+/* end confdefs.h.  */++int+main ()+{++  ;+  return 0;+}+_ACEOF+rm -f conftest.o conftest.obj+if { { ac_try="$ac_compile"+case "(($ac_try" in+  *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;+  *) ac_try_echo=$ac_try;;+esac+eval ac_try_echo="\"\$as_me:${as_lineno-$LINENO}: $ac_try_echo\""+$as_echo "$ac_try_echo"; } >&5+  (eval "$ac_compile") 2>&5+  ac_status=$?+  $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5+  test $ac_status = 0; }; then :+  for ac_file in conftest.o conftest.obj conftest.*; do+  test -f "$ac_file" || continue;+  case $ac_file in+    *.$ac_ext | *.xcoff | *.tds | *.d | *.pdb | *.xSYM | *.bb | *.bbg | *.map | *.inf | *.dSYM ) ;;+    *) ac_cv_objext=`expr "$ac_file" : '.*\.\(.*\)'`+       break;;+  esac+done+else+  $as_echo "$as_me: failed program was:" >&5+sed 's/^/| /' conftest.$ac_ext >&5++{ { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5+$as_echo "$as_me: error: in \`$ac_pwd':" >&2;}+as_fn_error $? "cannot compute suffix of object files: cannot compile+See \`config.log' for more details" "$LINENO" 5; }+fi+rm -f conftest.$ac_cv_objext conftest.$ac_ext+fi+{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_objext" >&5+$as_echo "$ac_cv_objext" >&6; }+OBJEXT=$ac_cv_objext+ac_objext=$OBJEXT+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether we are using the GNU C compiler" >&5+$as_echo_n "checking whether we are using the GNU C compiler... " >&6; }+if ${ac_cv_c_compiler_gnu+:} false; then :+  $as_echo_n "(cached) " >&6+else+  cat confdefs.h - <<_ACEOF >conftest.$ac_ext+/* end confdefs.h.  */++int+main ()+{+#ifndef __GNUC__+       choke me+#endif++  ;+  return 0;+}+_ACEOF+if ac_fn_c_try_compile "$LINENO"; then :+  ac_compiler_gnu=yes+else+  ac_compiler_gnu=no+fi+rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext+ac_cv_c_compiler_gnu=$ac_compiler_gnu++fi+{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_c_compiler_gnu" >&5+$as_echo "$ac_cv_c_compiler_gnu" >&6; }+if test $ac_compiler_gnu = yes; then+  GCC=yes+else+  GCC=+fi+ac_test_CFLAGS=${CFLAGS+set}+ac_save_CFLAGS=$CFLAGS+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether $CC accepts -g" >&5+$as_echo_n "checking whether $CC accepts -g... " >&6; }+if ${ac_cv_prog_cc_g+:} false; then :+  $as_echo_n "(cached) " >&6+else+  ac_save_c_werror_flag=$ac_c_werror_flag+   ac_c_werror_flag=yes+   ac_cv_prog_cc_g=no+   CFLAGS="-g"+   cat confdefs.h - <<_ACEOF >conftest.$ac_ext+/* end confdefs.h.  */++int+main ()+{++  ;+  return 0;+}+_ACEOF+if ac_fn_c_try_compile "$LINENO"; then :+  ac_cv_prog_cc_g=yes+else+  CFLAGS=""+      cat confdefs.h - <<_ACEOF >conftest.$ac_ext+/* end confdefs.h.  */++int+main ()+{++  ;+  return 0;+}+_ACEOF+if ac_fn_c_try_compile "$LINENO"; then :++else+  ac_c_werror_flag=$ac_save_c_werror_flag+	 CFLAGS="-g"+	 cat confdefs.h - <<_ACEOF >conftest.$ac_ext+/* end confdefs.h.  */++int+main ()+{++  ;+  return 0;+}+_ACEOF+if ac_fn_c_try_compile "$LINENO"; then :+  ac_cv_prog_cc_g=yes+fi+rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext+fi+rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext+fi+rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext+   ac_c_werror_flag=$ac_save_c_werror_flag+fi+{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_prog_cc_g" >&5+$as_echo "$ac_cv_prog_cc_g" >&6; }+if test "$ac_test_CFLAGS" = set; then+  CFLAGS=$ac_save_CFLAGS+elif test $ac_cv_prog_cc_g = yes; then+  if test "$GCC" = yes; then+    CFLAGS="-g -O2"+  else+    CFLAGS="-g"+  fi+else+  if test "$GCC" = yes; then+    CFLAGS="-O2"+  else+    CFLAGS=+  fi+fi+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $CC option to accept ISO C89" >&5+$as_echo_n "checking for $CC option to accept ISO C89... " >&6; }+if ${ac_cv_prog_cc_c89+:} false; then :+  $as_echo_n "(cached) " >&6+else+  ac_cv_prog_cc_c89=no+ac_save_CC=$CC+cat confdefs.h - <<_ACEOF >conftest.$ac_ext+/* end confdefs.h.  */+#include <stdarg.h>+#include <stdio.h>+struct stat;+/* Most of the following tests are stolen from RCS 5.7's src/conf.sh.  */+struct buf { int x; };+FILE * (*rcsopen) (struct buf *, struct stat *, int);+static char *e (p, i)+     char **p;+     int i;+{+  return p[i];+}+static char *f (char * (*g) (char **, int), char **p, ...)+{+  char *s;+  va_list v;+  va_start (v,p);+  s = g (p, va_arg (v,int));+  va_end (v);+  return s;+}++/* OSF 4.0 Compaq cc is some sort of almost-ANSI by default.  It has+   function prototypes and stuff, but not '\xHH' hex character constants.+   These don't provoke an error unfortunately, instead are silently treated+   as 'x'.  The following induces an error, until -std is added to get+   proper ANSI mode.  Curiously '\x00'!='x' always comes out true, for an+   array size at least.  It's necessary to write '\x00'==0 to get something+   that's true only with -std.  */+int osf4_cc_array ['\x00' == 0 ? 1 : -1];++/* IBM C 6 for AIX is almost-ANSI by default, but it replaces macro parameters+   inside strings and character constants.  */+#define FOO(x) 'x'+int xlc6_cc_array[FOO(a) == 'x' ? 1 : -1];++int test (int i, double x);+struct s1 {int (*f) (int a);};+struct s2 {int (*f) (double a);};+int pairnames (int, char **, FILE *(*)(struct buf *, struct stat *, int), int, int);+int argc;+char **argv;+int+main ()+{+return f (e, argv, 0) != argv[0]  ||  f (e, argv, 1) != argv[1];+  ;+  return 0;+}+_ACEOF+for ac_arg in '' -qlanglvl=extc89 -qlanglvl=ansi -std \+	-Ae "-Aa -D_HPUX_SOURCE" "-Xc -D__EXTENSIONS__"+do+  CC="$ac_save_CC $ac_arg"+  if ac_fn_c_try_compile "$LINENO"; then :+  ac_cv_prog_cc_c89=$ac_arg+fi+rm -f core conftest.err conftest.$ac_objext+  test "x$ac_cv_prog_cc_c89" != "xno" && break+done+rm -f conftest.$ac_ext+CC=$ac_save_CC++fi+# AC_CACHE_VAL+case "x$ac_cv_prog_cc_c89" in+  x)+    { $as_echo "$as_me:${as_lineno-$LINENO}: result: none needed" >&5+$as_echo "none needed" >&6; } ;;+  xno)+    { $as_echo "$as_me:${as_lineno-$LINENO}: result: unsupported" >&5+$as_echo "unsupported" >&6; } ;;+  *)+    CC="$CC $ac_cv_prog_cc_c89"+    { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_prog_cc_c89" >&5+$as_echo "$ac_cv_prog_cc_c89" >&6; } ;;+esac+if test "x$ac_cv_prog_cc_c89" != xno; then :++fi++ac_ext=c+ac_cpp='$CPP $CPPFLAGS'+ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5'+ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5'+ac_compiler_gnu=$ac_cv_c_compiler_gnu++ac_ext=c+ac_cpp='$CPP $CPPFLAGS'+ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5'+ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5'+ac_compiler_gnu=$ac_cv_c_compiler_gnu+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether $CC understands -c and -o together" >&5+$as_echo_n "checking whether $CC understands -c and -o together... " >&6; }+if ${am_cv_prog_cc_c_o+:} false; then :+  $as_echo_n "(cached) " >&6+else+  cat confdefs.h - <<_ACEOF >conftest.$ac_ext+/* end confdefs.h.  */++int+main ()+{++  ;+  return 0;+}+_ACEOF+  # Make sure it works both with $CC and with simple cc.+  # Following AC_PROG_CC_C_O, we do the test twice because some+  # compilers refuse to overwrite an existing .o file with -o,+  # though they will create one.+  am_cv_prog_cc_c_o=yes+  for am_i in 1 2; do+    if { echo "$as_me:$LINENO: $CC -c conftest.$ac_ext -o conftest2.$ac_objext" >&5+   ($CC -c conftest.$ac_ext -o conftest2.$ac_objext) >&5 2>&5+   ac_status=$?+   echo "$as_me:$LINENO: \$? = $ac_status" >&5+   (exit $ac_status); } \+         && test -f conftest2.$ac_objext; then+      : OK+    else+      am_cv_prog_cc_c_o=no+      break+    fi+  done+  rm -f core conftest*+  unset am_i+fi+{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $am_cv_prog_cc_c_o" >&5+$as_echo "$am_cv_prog_cc_c_o" >&6; }+if test "$am_cv_prog_cc_c_o" != yes; then+   # Losing compiler, so override with the script.+   # FIXME: It is wrong to rewrite CC.+   # But if we don't then we get into trouble of one sort or another.+   # A longer-term fix would be to have automake use am__CC in this case,+   # and then we could set am__CC="\$(top_srcdir)/compile \$(CC)"+   CC="$am_aux_dir/compile $CC"+fi+ac_ext=c+ac_cpp='$CPP $CPPFLAGS'+ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5'+ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5'+ac_compiler_gnu=$ac_cv_c_compiler_gnu+++ac_ext=cpp+ac_cpp='$CXXCPP $CPPFLAGS'+ac_compile='$CXX -c $CXXFLAGS $CPPFLAGS conftest.$ac_ext >&5'+ac_link='$CXX -o conftest$ac_exeext $CXXFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5'+ac_compiler_gnu=$ac_cv_cxx_compiler_gnu+if test -z "$CXX"; then+  if test -n "$CCC"; then+    CXX=$CCC+  else+    if test -n "$ac_tool_prefix"; then+  for ac_prog in g++ c++ gpp aCC CC cxx cc++ cl.exe FCC KCC RCC xlC_r xlC+  do+    # Extract the first word of "$ac_tool_prefix$ac_prog", so it can be a program name with args.+set dummy $ac_tool_prefix$ac_prog; ac_word=$2+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5+$as_echo_n "checking for $ac_word... " >&6; }+if ${ac_cv_prog_CXX+:} false; then :+  $as_echo_n "(cached) " >&6+else+  if test -n "$CXX"; then+  ac_cv_prog_CXX="$CXX" # Let the user override the test.+else+as_save_IFS=$IFS; IFS=$PATH_SEPARATOR+for as_dir in $PATH+do+  IFS=$as_save_IFS+  test -z "$as_dir" && as_dir=.+    for ac_exec_ext in '' $ac_executable_extensions; do+  if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then+    ac_cv_prog_CXX="$ac_tool_prefix$ac_prog"+    $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5+    break 2+  fi+done+  done+IFS=$as_save_IFS++fi+fi+CXX=$ac_cv_prog_CXX+if test -n "$CXX"; then+  { $as_echo "$as_me:${as_lineno-$LINENO}: result: $CXX" >&5+$as_echo "$CXX" >&6; }+else+  { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5+$as_echo "no" >&6; }+fi+++    test -n "$CXX" && break+  done+fi+if test -z "$CXX"; then+  ac_ct_CXX=$CXX+  for ac_prog in g++ c++ gpp aCC CC cxx cc++ cl.exe FCC KCC RCC xlC_r xlC+do+  # Extract the first word of "$ac_prog", so it can be a program name with args.+set dummy $ac_prog; ac_word=$2+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5+$as_echo_n "checking for $ac_word... " >&6; }+if ${ac_cv_prog_ac_ct_CXX+:} false; then :+  $as_echo_n "(cached) " >&6+else+  if test -n "$ac_ct_CXX"; then+  ac_cv_prog_ac_ct_CXX="$ac_ct_CXX" # Let the user override the test.+else+as_save_IFS=$IFS; IFS=$PATH_SEPARATOR+for as_dir in $PATH+do+  IFS=$as_save_IFS+  test -z "$as_dir" && as_dir=.+    for ac_exec_ext in '' $ac_executable_extensions; do+  if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then+    ac_cv_prog_ac_ct_CXX="$ac_prog"+    $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5+    break 2+  fi+done+  done+IFS=$as_save_IFS++fi+fi+ac_ct_CXX=$ac_cv_prog_ac_ct_CXX+if test -n "$ac_ct_CXX"; then+  { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_ct_CXX" >&5+$as_echo "$ac_ct_CXX" >&6; }+else+  { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5+$as_echo "no" >&6; }+fi+++  test -n "$ac_ct_CXX" && break+done++  if test "x$ac_ct_CXX" = x; then+    CXX="g++"+  else+    case $cross_compiling:$ac_tool_warned in+yes:)+{ $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: using cross tools not prefixed with host triplet" >&5+$as_echo "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;}+ac_tool_warned=yes ;;+esac+    CXX=$ac_ct_CXX+  fi+fi++  fi+fi+# Provide some information about the compiler.+$as_echo "$as_me:${as_lineno-$LINENO}: checking for C++ compiler version" >&5+set X $ac_compile+ac_compiler=$2+for ac_option in --version -v -V -qversion; do+  { { ac_try="$ac_compiler $ac_option >&5"+case "(($ac_try" in+  *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;+  *) ac_try_echo=$ac_try;;+esac+eval ac_try_echo="\"\$as_me:${as_lineno-$LINENO}: $ac_try_echo\""+$as_echo "$ac_try_echo"; } >&5+  (eval "$ac_compiler $ac_option >&5") 2>conftest.err+  ac_status=$?+  if test -s conftest.err; then+    sed '10a\+... rest of stderr output deleted ...+         10q' conftest.err >conftest.er1+    cat conftest.er1 >&5+  fi+  rm -f conftest.er1 conftest.err+  $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5+  test $ac_status = 0; }+done++{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether we are using the GNU C++ compiler" >&5+$as_echo_n "checking whether we are using the GNU C++ compiler... " >&6; }+if ${ac_cv_cxx_compiler_gnu+:} false; then :+  $as_echo_n "(cached) " >&6+else+  cat confdefs.h - <<_ACEOF >conftest.$ac_ext+/* end confdefs.h.  */++int+main ()+{+#ifndef __GNUC__+       choke me+#endif++  ;+  return 0;+}+_ACEOF+if ac_fn_cxx_try_compile "$LINENO"; then :+  ac_compiler_gnu=yes+else+  ac_compiler_gnu=no+fi+rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext+ac_cv_cxx_compiler_gnu=$ac_compiler_gnu++fi+{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_cxx_compiler_gnu" >&5+$as_echo "$ac_cv_cxx_compiler_gnu" >&6; }+if test $ac_compiler_gnu = yes; then+  GXX=yes+else+  GXX=+fi+ac_test_CXXFLAGS=${CXXFLAGS+set}+ac_save_CXXFLAGS=$CXXFLAGS+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether $CXX accepts -g" >&5+$as_echo_n "checking whether $CXX accepts -g... " >&6; }+if ${ac_cv_prog_cxx_g+:} false; then :+  $as_echo_n "(cached) " >&6+else+  ac_save_cxx_werror_flag=$ac_cxx_werror_flag+   ac_cxx_werror_flag=yes+   ac_cv_prog_cxx_g=no+   CXXFLAGS="-g"+   cat confdefs.h - <<_ACEOF >conftest.$ac_ext+/* end confdefs.h.  */++int+main ()+{++  ;+  return 0;+}+_ACEOF+if ac_fn_cxx_try_compile "$LINENO"; then :+  ac_cv_prog_cxx_g=yes+else+  CXXFLAGS=""+      cat confdefs.h - <<_ACEOF >conftest.$ac_ext+/* end confdefs.h.  */++int+main ()+{++  ;+  return 0;+}+_ACEOF+if ac_fn_cxx_try_compile "$LINENO"; then :++else+  ac_cxx_werror_flag=$ac_save_cxx_werror_flag+	 CXXFLAGS="-g"+	 cat confdefs.h - <<_ACEOF >conftest.$ac_ext+/* end confdefs.h.  */++int+main ()+{++  ;+  return 0;+}+_ACEOF+if ac_fn_cxx_try_compile "$LINENO"; then :+  ac_cv_prog_cxx_g=yes+fi+rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext+fi+rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext+fi+rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext+   ac_cxx_werror_flag=$ac_save_cxx_werror_flag+fi+{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_prog_cxx_g" >&5+$as_echo "$ac_cv_prog_cxx_g" >&6; }+if test "$ac_test_CXXFLAGS" = set; then+  CXXFLAGS=$ac_save_CXXFLAGS+elif test $ac_cv_prog_cxx_g = yes; then+  if test "$GXX" = yes; then+    CXXFLAGS="-g -O2"+  else+    CXXFLAGS="-g"+  fi+else+  if test "$GXX" = yes; then+    CXXFLAGS="-O2"+  else+    CXXFLAGS=+  fi+fi+ac_ext=c+ac_cpp='$CPP $CPPFLAGS'+ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5'+ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5'+ac_compiler_gnu=$ac_cv_c_compiler_gnu++CFLAGS=$save_CFLAGS++++++rm -rf .tst 2>/dev/null+mkdir .tst 2>/dev/null+if test -d .tst; then+  am__leading_dot=.+else+  am__leading_dot=_+fi+rmdir .tst 2>/dev/null++DEPDIR="${am__leading_dot}deps"++ac_config_commands="$ac_config_commands depfiles"++{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether ${MAKE-make} supports the include directive" >&5+$as_echo_n "checking whether ${MAKE-make} supports the include directive... " >&6; }+cat > confinc.mk << 'END'+am__doit:+	@echo this is the am__doit target >confinc.out+.PHONY: am__doit+END+am__include="#"+am__quote=+# BSD make does it like this.+echo '.include "confinc.mk" # ignored' > confmf.BSD+# Other make implementations (GNU, Solaris 10, AIX) do it like this.+echo 'include confinc.mk # ignored' > confmf.GNU+_am_result=no+for s in GNU BSD; do+  { echo "$as_me:$LINENO: ${MAKE-make} -f confmf.$s && cat confinc.out" >&5+   (${MAKE-make} -f confmf.$s && cat confinc.out) >&5 2>&5+   ac_status=$?+   echo "$as_me:$LINENO: \$? = $ac_status" >&5+   (exit $ac_status); }+  case $?:`cat confinc.out 2>/dev/null` in #(+  '0:this is the am__doit target') :+    case $s in #(+  BSD) :+    am__include='.include' am__quote='"' ;; #(+  *) :+    am__include='include' am__quote='' ;;+esac ;; #(+  *) :+     ;;+esac+  if test "$am__include" != "#"; then+    _am_result="yes ($s style)"+    break+  fi+done+rm -f confinc.* confmf.*+{ $as_echo "$as_me:${as_lineno-$LINENO}: result: ${_am_result}" >&5+$as_echo "${_am_result}" >&6; }++# Check whether --enable-dependency-tracking was given.+if test "${enable_dependency_tracking+set}" = set; then :+  enableval=$enable_dependency_tracking;+fi++if test "x$enable_dependency_tracking" != xno; then+  am_depcomp="$ac_aux_dir/depcomp"+  AMDEPBACKSLASH='\'+  am__nodep='_no'+fi+ if test "x$enable_dependency_tracking" != xno; then+  AMDEP_TRUE=+  AMDEP_FALSE='#'+else+  AMDEP_TRUE='#'+  AMDEP_FALSE=+fi+++# By default we simply use the C compiler to build assembly code.++test "${CCAS+set}" = set || CCAS=$CC+test "${CCASFLAGS+set}" = set || CCASFLAGS=$CFLAGS++++depcc="$CCAS"   am_compiler_list=++{ $as_echo "$as_me:${as_lineno-$LINENO}: checking dependency style of $depcc" >&5+$as_echo_n "checking dependency style of $depcc... " >&6; }+if ${am_cv_CCAS_dependencies_compiler_type+:} false; then :+  $as_echo_n "(cached) " >&6+else+  if test -z "$AMDEP_TRUE" && test -f "$am_depcomp"; then+  # We make a subdir and do the tests there.  Otherwise we can end up+  # making bogus files that we don't know about and never remove.  For+  # instance it was reported that on HP-UX the gcc test will end up+  # making a dummy file named 'D' -- because '-MD' means "put the output+  # in D".+  rm -rf conftest.dir+  mkdir conftest.dir+  # Copy depcomp to subdir because otherwise we won't find it if we're+  # using a relative directory.+  cp "$am_depcomp" conftest.dir+  cd conftest.dir+  # We will build objects and dependencies in a subdirectory because+  # it helps to detect inapplicable dependency modes.  For instance+  # both Tru64's cc and ICC support -MD to output dependencies as a+  # side effect of compilation, but ICC will put the dependencies in+  # the current directory while Tru64 will put them in the object+  # directory.+  mkdir sub++  am_cv_CCAS_dependencies_compiler_type=none+  if test "$am_compiler_list" = ""; then+     am_compiler_list=`sed -n 's/^#*\([a-zA-Z0-9]*\))$/\1/p' < ./depcomp`+  fi+  am__universal=false+++  for depmode in $am_compiler_list; do+    # Setup a source with many dependencies, because some compilers+    # like to wrap large dependency lists on column 80 (with \), and+    # we should not choose a depcomp mode which is confused by this.+    #+    # We need to recreate these files for each test, as the compiler may+    # overwrite some of them when testing with obscure command lines.+    # This happens at least with the AIX C compiler.+    : > sub/conftest.c+    for i in 1 2 3 4 5 6; do+      echo '#include "conftst'$i'.h"' >> sub/conftest.c+      # Using ": > sub/conftst$i.h" creates only sub/conftst1.h with+      # Solaris 10 /bin/sh.+      echo '/* dummy */' > sub/conftst$i.h+    done+    echo "${am__include} ${am__quote}sub/conftest.Po${am__quote}" > confmf++    # We check with '-c' and '-o' for the sake of the "dashmstdout"+    # mode.  It turns out that the SunPro C++ compiler does not properly+    # handle '-M -o', and we need to detect this.  Also, some Intel+    # versions had trouble with output in subdirs.+    am__obj=sub/conftest.${OBJEXT-o}+    am__minus_obj="-o $am__obj"+    case $depmode in+    gcc)+      # This depmode causes a compiler race in universal mode.+      test "$am__universal" = false || continue+      ;;+    nosideeffect)+      # After this tag, mechanisms are not by side-effect, so they'll+      # only be used when explicitly requested.+      if test "x$enable_dependency_tracking" = xyes; then+	continue+      else+	break+      fi+      ;;+    msvc7 | msvc7msys | msvisualcpp | msvcmsys)+      # This compiler won't grok '-c -o', but also, the minuso test has+      # not run yet.  These depmodes are late enough in the game, and+      # so weak that their functioning should not be impacted.+      am__obj=conftest.${OBJEXT-o}+      am__minus_obj=+      ;;+    none) break ;;+    esac+    if depmode=$depmode \+       source=sub/conftest.c object=$am__obj \+       depfile=sub/conftest.Po tmpdepfile=sub/conftest.TPo \+       $SHELL ./depcomp $depcc -c $am__minus_obj sub/conftest.c \+         >/dev/null 2>conftest.err &&+       grep sub/conftst1.h sub/conftest.Po > /dev/null 2>&1 &&+       grep sub/conftst6.h sub/conftest.Po > /dev/null 2>&1 &&+       grep $am__obj sub/conftest.Po > /dev/null 2>&1 &&+       ${MAKE-make} -s -f confmf > /dev/null 2>&1; then+      # icc doesn't choke on unknown options, it will just issue warnings+      # or remarks (even with -Werror).  So we grep stderr for any message+      # that says an option was ignored or not supported.+      # When given -MP, icc 7.0 and 7.1 complain thusly:+      #   icc: Command line warning: ignoring option '-M'; no argument required+      # The diagnosis changed in icc 8.0:+      #   icc: Command line remark: option '-MP' not supported+      if (grep 'ignoring option' conftest.err ||+          grep 'not supported' conftest.err) >/dev/null 2>&1; then :; else+        am_cv_CCAS_dependencies_compiler_type=$depmode+        break+      fi+    fi+  done++  cd ..+  rm -rf conftest.dir+else+  am_cv_CCAS_dependencies_compiler_type=none+fi++fi+{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $am_cv_CCAS_dependencies_compiler_type" >&5+$as_echo "$am_cv_CCAS_dependencies_compiler_type" >&6; }+CCASDEPMODE=depmode=$am_cv_CCAS_dependencies_compiler_type++ if+  test "x$enable_dependency_tracking" != xno \+  && test "$am_cv_CCAS_dependencies_compiler_type" = gcc3; then+  am__fastdepCCAS_TRUE=+  am__fastdepCCAS_FALSE='#'+else+  am__fastdepCCAS_TRUE='#'+  am__fastdepCCAS_FALSE=+fi++++{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for grep that handles long lines and -e" >&5+$as_echo_n "checking for grep that handles long lines and -e... " >&6; }+if ${ac_cv_path_GREP+:} false; then :+  $as_echo_n "(cached) " >&6+else+  if test -z "$GREP"; then+  ac_path_GREP_found=false+  # Loop through the user's path and test for each of PROGNAME-LIST+  as_save_IFS=$IFS; IFS=$PATH_SEPARATOR+for as_dir in $PATH$PATH_SEPARATOR/usr/xpg4/bin+do+  IFS=$as_save_IFS+  test -z "$as_dir" && as_dir=.+    for ac_prog in grep ggrep; do+    for ac_exec_ext in '' $ac_executable_extensions; do+      ac_path_GREP="$as_dir/$ac_prog$ac_exec_ext"+      as_fn_executable_p "$ac_path_GREP" || continue+# Check for GNU ac_path_GREP and select it if it is found.+  # Check for GNU $ac_path_GREP+case `"$ac_path_GREP" --version 2>&1` in+*GNU*)+  ac_cv_path_GREP="$ac_path_GREP" ac_path_GREP_found=:;;+*)+  ac_count=0+  $as_echo_n 0123456789 >"conftest.in"+  while :+  do+    cat "conftest.in" "conftest.in" >"conftest.tmp"+    mv "conftest.tmp" "conftest.in"+    cp "conftest.in" "conftest.nl"+    $as_echo 'GREP' >> "conftest.nl"+    "$ac_path_GREP" -e 'GREP$' -e '-(cannot match)-' < "conftest.nl" >"conftest.out" 2>/dev/null || break+    diff "conftest.out" "conftest.nl" >/dev/null 2>&1 || break+    as_fn_arith $ac_count + 1 && ac_count=$as_val+    if test $ac_count -gt ${ac_path_GREP_max-0}; then+      # Best one so far, save it but keep looking for a better one+      ac_cv_path_GREP="$ac_path_GREP"+      ac_path_GREP_max=$ac_count+    fi+    # 10*(2^10) chars as input seems more than enough+    test $ac_count -gt 10 && break+  done+  rm -f conftest.in conftest.tmp conftest.nl conftest.out;;+esac++      $ac_path_GREP_found && break 3+    done+  done+  done+IFS=$as_save_IFS+  if test -z "$ac_cv_path_GREP"; then+    as_fn_error $? "no acceptable grep could be found in $PATH$PATH_SEPARATOR/usr/xpg4/bin" "$LINENO" 5+  fi+else+  ac_cv_path_GREP=$GREP+fi++fi+{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_path_GREP" >&5+$as_echo "$ac_cv_path_GREP" >&6; }+ GREP="$ac_cv_path_GREP"+++{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for egrep" >&5+$as_echo_n "checking for egrep... " >&6; }+if ${ac_cv_path_EGREP+:} false; then :+  $as_echo_n "(cached) " >&6+else+  if echo a | $GREP -E '(a|b)' >/dev/null 2>&1+   then ac_cv_path_EGREP="$GREP -E"+   else+     if test -z "$EGREP"; then+  ac_path_EGREP_found=false+  # Loop through the user's path and test for each of PROGNAME-LIST+  as_save_IFS=$IFS; IFS=$PATH_SEPARATOR+for as_dir in $PATH$PATH_SEPARATOR/usr/xpg4/bin+do+  IFS=$as_save_IFS+  test -z "$as_dir" && as_dir=.+    for ac_prog in egrep; do+    for ac_exec_ext in '' $ac_executable_extensions; do+      ac_path_EGREP="$as_dir/$ac_prog$ac_exec_ext"+      as_fn_executable_p "$ac_path_EGREP" || continue+# Check for GNU ac_path_EGREP and select it if it is found.+  # Check for GNU $ac_path_EGREP+case `"$ac_path_EGREP" --version 2>&1` in+*GNU*)+  ac_cv_path_EGREP="$ac_path_EGREP" ac_path_EGREP_found=:;;+*)+  ac_count=0+  $as_echo_n 0123456789 >"conftest.in"+  while :+  do+    cat "conftest.in" "conftest.in" >"conftest.tmp"+    mv "conftest.tmp" "conftest.in"+    cp "conftest.in" "conftest.nl"+    $as_echo 'EGREP' >> "conftest.nl"+    "$ac_path_EGREP" 'EGREP$' < "conftest.nl" >"conftest.out" 2>/dev/null || break+    diff "conftest.out" "conftest.nl" >/dev/null 2>&1 || break+    as_fn_arith $ac_count + 1 && ac_count=$as_val+    if test $ac_count -gt ${ac_path_EGREP_max-0}; then+      # Best one so far, save it but keep looking for a better one+      ac_cv_path_EGREP="$ac_path_EGREP"+      ac_path_EGREP_max=$ac_count+    fi+    # 10*(2^10) chars as input seems more than enough+    test $ac_count -gt 10 && break+  done+  rm -f conftest.in conftest.tmp conftest.nl conftest.out;;+esac++      $ac_path_EGREP_found && break 3+    done+  done+  done+IFS=$as_save_IFS+  if test -z "$ac_cv_path_EGREP"; then+    as_fn_error $? "no acceptable egrep could be found in $PATH$PATH_SEPARATOR/usr/xpg4/bin" "$LINENO" 5+  fi+else+  ac_cv_path_EGREP=$EGREP+fi++   fi+fi+{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_path_EGREP" >&5+$as_echo "$ac_cv_path_EGREP" >&6; }+ EGREP="$ac_cv_path_EGREP"+++case `pwd` in+  *\ * | *\	*)+    { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: Libtool does not cope well with whitespace in \`pwd\`" >&5+$as_echo "$as_me: WARNING: Libtool does not cope well with whitespace in \`pwd\`" >&2;} ;;+esac++++macro_version='2.4.7'+macro_revision='2.4.7'++++++++++++++ltmain=$ac_aux_dir/ltmain.sh++# Backslashify metacharacters that are still active within+# double-quoted strings.+sed_quote_subst='s/\(["`$\\]\)/\\\1/g'++# Same as above, but do not quote variable references.+double_quote_subst='s/\(["`\\]\)/\\\1/g'++# Sed substitution to delay expansion of an escaped shell variable in a+# double_quote_subst'ed string.+delay_variable_subst='s/\\\\\\\\\\\$/\\\\\\$/g'++# Sed substitution to delay expansion of an escaped single quote.+delay_single_quote_subst='s/'\''/'\'\\\\\\\'\''/g'++# Sed substitution to avoid accidental globbing in evaled expressions+no_glob_subst='s/\*/\\\*/g'++ECHO='\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\'+ECHO=$ECHO$ECHO$ECHO$ECHO$ECHO+ECHO=$ECHO$ECHO$ECHO$ECHO$ECHO$ECHO++{ $as_echo "$as_me:${as_lineno-$LINENO}: checking how to print strings" >&5+$as_echo_n "checking how to print strings... " >&6; }+# Test print first, because it will be a builtin if present.+if test "X`( print -r -- -n ) 2>/dev/null`" = X-n && \+   test "X`print -r -- $ECHO 2>/dev/null`" = "X$ECHO"; then+  ECHO='print -r --'+elif test "X`printf %s $ECHO 2>/dev/null`" = "X$ECHO"; then+  ECHO='printf %s\n'+else+  # Use this function as a fallback that always works.+  func_fallback_echo ()+  {+    eval 'cat <<_LTECHO_EOF+$1+_LTECHO_EOF'+  }+  ECHO='func_fallback_echo'+fi++# func_echo_all arg...+# Invoke $ECHO with all args, space-separated.+func_echo_all ()+{+    $ECHO ""+}++case $ECHO in+  printf*) { $as_echo "$as_me:${as_lineno-$LINENO}: result: printf" >&5+$as_echo "printf" >&6; } ;;+  print*) { $as_echo "$as_me:${as_lineno-$LINENO}: result: print -r" >&5+$as_echo "print -r" >&6; } ;;+  *) { $as_echo "$as_me:${as_lineno-$LINENO}: result: cat" >&5+$as_echo "cat" >&6; } ;;+esac+++++++++++++++{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for a sed that does not truncate output" >&5+$as_echo_n "checking for a sed that does not truncate output... " >&6; }+if ${ac_cv_path_SED+:} false; then :+  $as_echo_n "(cached) " >&6+else+            ac_script=s/aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa/bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb/+     for ac_i in 1 2 3 4 5 6 7; do+       ac_script="$ac_script$as_nl$ac_script"+     done+     echo "$ac_script" 2>/dev/null | sed 99q >conftest.sed+     { ac_script=; unset ac_script;}+     if test -z "$SED"; then+  ac_path_SED_found=false+  # Loop through the user's path and test for each of PROGNAME-LIST+  as_save_IFS=$IFS; IFS=$PATH_SEPARATOR+for as_dir in $PATH+do+  IFS=$as_save_IFS+  test -z "$as_dir" && as_dir=.+    for ac_prog in sed gsed; do+    for ac_exec_ext in '' $ac_executable_extensions; do+      ac_path_SED="$as_dir/$ac_prog$ac_exec_ext"+      as_fn_executable_p "$ac_path_SED" || continue+# Check for GNU ac_path_SED and select it if it is found.+  # Check for GNU $ac_path_SED+case `"$ac_path_SED" --version 2>&1` in+*GNU*)+  ac_cv_path_SED="$ac_path_SED" ac_path_SED_found=:;;+*)+  ac_count=0+  $as_echo_n 0123456789 >"conftest.in"+  while :+  do+    cat "conftest.in" "conftest.in" >"conftest.tmp"+    mv "conftest.tmp" "conftest.in"+    cp "conftest.in" "conftest.nl"+    $as_echo '' >> "conftest.nl"+    "$ac_path_SED" -f conftest.sed < "conftest.nl" >"conftest.out" 2>/dev/null || break+    diff "conftest.out" "conftest.nl" >/dev/null 2>&1 || break+    as_fn_arith $ac_count + 1 && ac_count=$as_val+    if test $ac_count -gt ${ac_path_SED_max-0}; then+      # Best one so far, save it but keep looking for a better one+      ac_cv_path_SED="$ac_path_SED"+      ac_path_SED_max=$ac_count+    fi+    # 10*(2^10) chars as input seems more than enough+    test $ac_count -gt 10 && break+  done+  rm -f conftest.in conftest.tmp conftest.nl conftest.out;;+esac++      $ac_path_SED_found && break 3+    done+  done+  done+IFS=$as_save_IFS+  if test -z "$ac_cv_path_SED"; then+    as_fn_error $? "no acceptable sed could be found in \$PATH" "$LINENO" 5+  fi+else+  ac_cv_path_SED=$SED+fi++fi+{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_path_SED" >&5+$as_echo "$ac_cv_path_SED" >&6; }+ SED="$ac_cv_path_SED"+  rm -f conftest.sed++test -z "$SED" && SED=sed+Xsed="$SED -e 1s/^X//"++++++++++++{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for fgrep" >&5+$as_echo_n "checking for fgrep... " >&6; }+if ${ac_cv_path_FGREP+:} false; then :+  $as_echo_n "(cached) " >&6+else+  if echo 'ab*c' | $GREP -F 'ab*c' >/dev/null 2>&1+   then ac_cv_path_FGREP="$GREP -F"+   else+     if test -z "$FGREP"; then+  ac_path_FGREP_found=false+  # Loop through the user's path and test for each of PROGNAME-LIST+  as_save_IFS=$IFS; IFS=$PATH_SEPARATOR+for as_dir in $PATH$PATH_SEPARATOR/usr/xpg4/bin+do+  IFS=$as_save_IFS+  test -z "$as_dir" && as_dir=.+    for ac_prog in fgrep; do+    for ac_exec_ext in '' $ac_executable_extensions; do+      ac_path_FGREP="$as_dir/$ac_prog$ac_exec_ext"+      as_fn_executable_p "$ac_path_FGREP" || continue+# Check for GNU ac_path_FGREP and select it if it is found.+  # Check for GNU $ac_path_FGREP+case `"$ac_path_FGREP" --version 2>&1` in+*GNU*)+  ac_cv_path_FGREP="$ac_path_FGREP" ac_path_FGREP_found=:;;+*)+  ac_count=0+  $as_echo_n 0123456789 >"conftest.in"+  while :+  do+    cat "conftest.in" "conftest.in" >"conftest.tmp"+    mv "conftest.tmp" "conftest.in"+    cp "conftest.in" "conftest.nl"+    $as_echo 'FGREP' >> "conftest.nl"+    "$ac_path_FGREP" FGREP < "conftest.nl" >"conftest.out" 2>/dev/null || break+    diff "conftest.out" "conftest.nl" >/dev/null 2>&1 || break+    as_fn_arith $ac_count + 1 && ac_count=$as_val+    if test $ac_count -gt ${ac_path_FGREP_max-0}; then+      # Best one so far, save it but keep looking for a better one+      ac_cv_path_FGREP="$ac_path_FGREP"+      ac_path_FGREP_max=$ac_count+    fi+    # 10*(2^10) chars as input seems more than enough+    test $ac_count -gt 10 && break+  done+  rm -f conftest.in conftest.tmp conftest.nl conftest.out;;+esac++      $ac_path_FGREP_found && break 3+    done+  done+  done+IFS=$as_save_IFS+  if test -z "$ac_cv_path_FGREP"; then+    as_fn_error $? "no acceptable fgrep could be found in $PATH$PATH_SEPARATOR/usr/xpg4/bin" "$LINENO" 5+  fi+else+  ac_cv_path_FGREP=$FGREP+fi++   fi+fi+{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_path_FGREP" >&5+$as_echo "$ac_cv_path_FGREP" >&6; }+ FGREP="$ac_cv_path_FGREP"+++test -z "$GREP" && GREP=grep++++++++++++++++++++# Check whether --with-gnu-ld was given.+if test "${with_gnu_ld+set}" = set; then :+  withval=$with_gnu_ld; test no = "$withval" || with_gnu_ld=yes+else+  with_gnu_ld=no+fi++ac_prog=ld+if test yes = "$GCC"; then+  # Check if gcc -print-prog-name=ld gives a path.+  { $as_echo "$as_me:${as_lineno-$LINENO}: checking for ld used by $CC" >&5+$as_echo_n "checking for ld used by $CC... " >&6; }+  case $host in+  *-*-mingw*)+    # gcc leaves a trailing carriage return, which upsets mingw+    ac_prog=`($CC -print-prog-name=ld) 2>&5 | tr -d '\015'` ;;+  *)+    ac_prog=`($CC -print-prog-name=ld) 2>&5` ;;+  esac+  case $ac_prog in+    # Accept absolute paths.+    [\\/]* | ?:[\\/]*)+      re_direlt='/[^/][^/]*/\.\./'+      # Canonicalize the pathname of ld+      ac_prog=`$ECHO "$ac_prog"| $SED 's%\\\\%/%g'`+      while $ECHO "$ac_prog" | $GREP "$re_direlt" > /dev/null 2>&1; do+	ac_prog=`$ECHO $ac_prog| $SED "s%$re_direlt%/%"`+      done+      test -z "$LD" && LD=$ac_prog+      ;;+  "")+    # If it fails, then pretend we aren't using GCC.+    ac_prog=ld+    ;;+  *)+    # If it is relative, then search for the first ld in PATH.+    with_gnu_ld=unknown+    ;;+  esac+elif test yes = "$with_gnu_ld"; then+  { $as_echo "$as_me:${as_lineno-$LINENO}: checking for GNU ld" >&5+$as_echo_n "checking for GNU ld... " >&6; }+else+  { $as_echo "$as_me:${as_lineno-$LINENO}: checking for non-GNU ld" >&5+$as_echo_n "checking for non-GNU ld... " >&6; }+fi+if ${lt_cv_path_LD+:} false; then :+  $as_echo_n "(cached) " >&6+else+  if test -z "$LD"; then+  lt_save_ifs=$IFS; IFS=$PATH_SEPARATOR+  for ac_dir in $PATH; do+    IFS=$lt_save_ifs+    test -z "$ac_dir" && ac_dir=.+    if test -f "$ac_dir/$ac_prog" || test -f "$ac_dir/$ac_prog$ac_exeext"; then+      lt_cv_path_LD=$ac_dir/$ac_prog+      # Check to see if the program is GNU ld.  I'd rather use --version,+      # but apparently some variants of GNU ld only accept -v.+      # Break only if it was the GNU/non-GNU ld that we prefer.+      case `"$lt_cv_path_LD" -v 2>&1 </dev/null` in+      *GNU* | *'with BFD'*)+	test no != "$with_gnu_ld" && break+	;;+      *)+	test yes != "$with_gnu_ld" && break+	;;+      esac+    fi+  done+  IFS=$lt_save_ifs+else+  lt_cv_path_LD=$LD # Let the user override the test with a path.+fi+fi++LD=$lt_cv_path_LD+if test -n "$LD"; then+  { $as_echo "$as_me:${as_lineno-$LINENO}: result: $LD" >&5+$as_echo "$LD" >&6; }+else+  { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5+$as_echo "no" >&6; }+fi+test -z "$LD" && as_fn_error $? "no acceptable ld found in \$PATH" "$LINENO" 5+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking if the linker ($LD) is GNU ld" >&5+$as_echo_n "checking if the linker ($LD) is GNU ld... " >&6; }+if ${lt_cv_prog_gnu_ld+:} false; then :+  $as_echo_n "(cached) " >&6+else+  # I'd rather use --version here, but apparently some GNU lds only accept -v.+case `$LD -v 2>&1 </dev/null` in+*GNU* | *'with BFD'*)+  lt_cv_prog_gnu_ld=yes+  ;;+*)+  lt_cv_prog_gnu_ld=no+  ;;+esac+fi+{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_cv_prog_gnu_ld" >&5+$as_echo "$lt_cv_prog_gnu_ld" >&6; }+with_gnu_ld=$lt_cv_prog_gnu_ld++++++++++{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for BSD- or MS-compatible name lister (nm)" >&5+$as_echo_n "checking for BSD- or MS-compatible name lister (nm)... " >&6; }+if ${lt_cv_path_NM+:} false; then :+  $as_echo_n "(cached) " >&6+else+  if test -n "$NM"; then+  # Let the user override the test.+  lt_cv_path_NM=$NM+else+  lt_nm_to_check=${ac_tool_prefix}nm+  if test -n "$ac_tool_prefix" && test "$build" = "$host"; then+    lt_nm_to_check="$lt_nm_to_check nm"+  fi+  for lt_tmp_nm in $lt_nm_to_check; do+    lt_save_ifs=$IFS; IFS=$PATH_SEPARATOR+    for ac_dir in $PATH /usr/ccs/bin/elf /usr/ccs/bin /usr/ucb /bin; do+      IFS=$lt_save_ifs+      test -z "$ac_dir" && ac_dir=.+      tmp_nm=$ac_dir/$lt_tmp_nm+      if test -f "$tmp_nm" || test -f "$tmp_nm$ac_exeext"; then+	# Check to see if the nm accepts a BSD-compat flag.+	# Adding the 'sed 1q' prevents false positives on HP-UX, which says:+	#   nm: unknown option "B" ignored+	# Tru64's nm complains that /dev/null is an invalid object file+	# MSYS converts /dev/null to NUL, MinGW nm treats NUL as empty+	case $build_os in+	mingw*) lt_bad_file=conftest.nm/nofile ;;+	*) lt_bad_file=/dev/null ;;+	esac+	case `"$tmp_nm" -B $lt_bad_file 2>&1 | $SED '1q'` in+	*$lt_bad_file* | *'Invalid file or object type'*)+	  lt_cv_path_NM="$tmp_nm -B"+	  break 2+	  ;;+	*)+	  case `"$tmp_nm" -p /dev/null 2>&1 | $SED '1q'` in+	  */dev/null*)+	    lt_cv_path_NM="$tmp_nm -p"+	    break 2+	    ;;+	  *)+	    lt_cv_path_NM=${lt_cv_path_NM="$tmp_nm"} # keep the first match, but+	    continue # so that we can try to find one that supports BSD flags+	    ;;+	  esac+	  ;;+	esac+      fi+    done+    IFS=$lt_save_ifs+  done+  : ${lt_cv_path_NM=no}+fi+fi+{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_cv_path_NM" >&5+$as_echo "$lt_cv_path_NM" >&6; }+if test no != "$lt_cv_path_NM"; then+  NM=$lt_cv_path_NM+else+  # Didn't find any BSD compatible name lister, look for dumpbin.+  if test -n "$DUMPBIN"; then :+    # Let the user override the test.+  else+    if test -n "$ac_tool_prefix"; then+  for ac_prog in dumpbin "link -dump"+  do+    # Extract the first word of "$ac_tool_prefix$ac_prog", so it can be a program name with args.+set dummy $ac_tool_prefix$ac_prog; ac_word=$2+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5+$as_echo_n "checking for $ac_word... " >&6; }+if ${ac_cv_prog_DUMPBIN+:} false; then :+  $as_echo_n "(cached) " >&6+else+  if test -n "$DUMPBIN"; then+  ac_cv_prog_DUMPBIN="$DUMPBIN" # Let the user override the test.+else+as_save_IFS=$IFS; IFS=$PATH_SEPARATOR+for as_dir in $PATH+do+  IFS=$as_save_IFS+  test -z "$as_dir" && as_dir=.+    for ac_exec_ext in '' $ac_executable_extensions; do+  if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then+    ac_cv_prog_DUMPBIN="$ac_tool_prefix$ac_prog"+    $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5+    break 2+  fi+done+  done+IFS=$as_save_IFS++fi+fi+DUMPBIN=$ac_cv_prog_DUMPBIN+if test -n "$DUMPBIN"; then+  { $as_echo "$as_me:${as_lineno-$LINENO}: result: $DUMPBIN" >&5+$as_echo "$DUMPBIN" >&6; }+else+  { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5+$as_echo "no" >&6; }+fi+++    test -n "$DUMPBIN" && break+  done+fi+if test -z "$DUMPBIN"; then+  ac_ct_DUMPBIN=$DUMPBIN+  for ac_prog in dumpbin "link -dump"+do+  # Extract the first word of "$ac_prog", so it can be a program name with args.+set dummy $ac_prog; ac_word=$2+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5+$as_echo_n "checking for $ac_word... " >&6; }+if ${ac_cv_prog_ac_ct_DUMPBIN+:} false; then :+  $as_echo_n "(cached) " >&6+else+  if test -n "$ac_ct_DUMPBIN"; then+  ac_cv_prog_ac_ct_DUMPBIN="$ac_ct_DUMPBIN" # Let the user override the test.+else+as_save_IFS=$IFS; IFS=$PATH_SEPARATOR+for as_dir in $PATH+do+  IFS=$as_save_IFS+  test -z "$as_dir" && as_dir=.+    for ac_exec_ext in '' $ac_executable_extensions; do+  if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then+    ac_cv_prog_ac_ct_DUMPBIN="$ac_prog"+    $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5+    break 2+  fi+done+  done+IFS=$as_save_IFS++fi+fi+ac_ct_DUMPBIN=$ac_cv_prog_ac_ct_DUMPBIN+if test -n "$ac_ct_DUMPBIN"; then+  { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_ct_DUMPBIN" >&5+$as_echo "$ac_ct_DUMPBIN" >&6; }+else+  { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5+$as_echo "no" >&6; }+fi+++  test -n "$ac_ct_DUMPBIN" && break+done++  if test "x$ac_ct_DUMPBIN" = x; then+    DUMPBIN=":"+  else+    case $cross_compiling:$ac_tool_warned in+yes:)+{ $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: using cross tools not prefixed with host triplet" >&5+$as_echo "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;}+ac_tool_warned=yes ;;+esac+    DUMPBIN=$ac_ct_DUMPBIN+  fi+fi++    case `$DUMPBIN -symbols -headers /dev/null 2>&1 | $SED '1q'` in+    *COFF*)+      DUMPBIN="$DUMPBIN -symbols -headers"+      ;;+    *)+      DUMPBIN=:+      ;;+    esac+  fi++  if test : != "$DUMPBIN"; then+    NM=$DUMPBIN+  fi+fi+test -z "$NM" && NM=nm+++++++{ $as_echo "$as_me:${as_lineno-$LINENO}: checking the name lister ($NM) interface" >&5+$as_echo_n "checking the name lister ($NM) interface... " >&6; }+if ${lt_cv_nm_interface+:} false; then :+  $as_echo_n "(cached) " >&6+else+  lt_cv_nm_interface="BSD nm"+  echo "int some_variable = 0;" > conftest.$ac_ext+  (eval echo "\"\$as_me:$LINENO: $ac_compile\"" >&5)+  (eval "$ac_compile" 2>conftest.err)+  cat conftest.err >&5+  (eval echo "\"\$as_me:$LINENO: $NM \\\"conftest.$ac_objext\\\"\"" >&5)+  (eval "$NM \"conftest.$ac_objext\"" 2>conftest.err > conftest.out)+  cat conftest.err >&5+  (eval echo "\"\$as_me:$LINENO: output\"" >&5)+  cat conftest.out >&5+  if $GREP 'External.*some_variable' conftest.out > /dev/null; then+    lt_cv_nm_interface="MS dumpbin"+  fi+  rm -f conftest*+fi+{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_cv_nm_interface" >&5+$as_echo "$lt_cv_nm_interface" >&6; }++{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether ln -s works" >&5+$as_echo_n "checking whether ln -s works... " >&6; }+LN_S=$as_ln_s+if test "$LN_S" = "ln -s"; then+  { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5+$as_echo "yes" >&6; }+else+  { $as_echo "$as_me:${as_lineno-$LINENO}: result: no, using $LN_S" >&5+$as_echo "no, using $LN_S" >&6; }+fi++# find the maximum length of command line arguments+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking the maximum length of command line arguments" >&5+$as_echo_n "checking the maximum length of command line arguments... " >&6; }+if ${lt_cv_sys_max_cmd_len+:} false; then :+  $as_echo_n "(cached) " >&6+else+    i=0+  teststring=ABCD++  case $build_os in+  msdosdjgpp*)+    # On DJGPP, this test can blow up pretty badly due to problems in libc+    # (any single argument exceeding 2000 bytes causes a buffer overrun+    # during glob expansion).  Even if it were fixed, the result of this+    # check would be larger than it should be.+    lt_cv_sys_max_cmd_len=12288;    # 12K is about right+    ;;++  gnu*)+    # Under GNU Hurd, this test is not required because there is+    # no limit to the length of command line arguments.+    # Libtool will interpret -1 as no limit whatsoever+    lt_cv_sys_max_cmd_len=-1;+    ;;++  cygwin* | mingw* | cegcc*)+    # On Win9x/ME, this test blows up -- it succeeds, but takes+    # about 5 minutes as the teststring grows exponentially.+    # Worse, since 9x/ME are not pre-emptively multitasking,+    # you end up with a "frozen" computer, even though with patience+    # the test eventually succeeds (with a max line length of 256k).+    # Instead, let's just punt: use the minimum linelength reported by+    # all of the supported platforms: 8192 (on NT/2K/XP).+    lt_cv_sys_max_cmd_len=8192;+    ;;++  mint*)+    # On MiNT this can take a long time and run out of memory.+    lt_cv_sys_max_cmd_len=8192;+    ;;++  amigaos*)+    # On AmigaOS with pdksh, this test takes hours, literally.+    # So we just punt and use a minimum line length of 8192.+    lt_cv_sys_max_cmd_len=8192;+    ;;++  bitrig* | darwin* | dragonfly* | freebsd* | midnightbsd* | netbsd* | openbsd*)+    # This has been around since 386BSD, at least.  Likely further.+    if test -x /sbin/sysctl; then+      lt_cv_sys_max_cmd_len=`/sbin/sysctl -n kern.argmax`+    elif test -x /usr/sbin/sysctl; then+      lt_cv_sys_max_cmd_len=`/usr/sbin/sysctl -n kern.argmax`+    else+      lt_cv_sys_max_cmd_len=65536	# usable default for all BSDs+    fi+    # And add a safety zone+    lt_cv_sys_max_cmd_len=`expr $lt_cv_sys_max_cmd_len \/ 4`+    lt_cv_sys_max_cmd_len=`expr $lt_cv_sys_max_cmd_len \* 3`+    ;;++  interix*)+    # We know the value 262144 and hardcode it with a safety zone (like BSD)+    lt_cv_sys_max_cmd_len=196608+    ;;++  os2*)+    # The test takes a long time on OS/2.+    lt_cv_sys_max_cmd_len=8192+    ;;++  osf*)+    # Dr. Hans Ekkehard Plesser reports seeing a kernel panic running configure+    # due to this test when exec_disable_arg_limit is 1 on Tru64. It is not+    # nice to cause kernel panics so lets avoid the loop below.+    # First set a reasonable default.+    lt_cv_sys_max_cmd_len=16384+    #+    if test -x /sbin/sysconfig; then+      case `/sbin/sysconfig -q proc exec_disable_arg_limit` in+        *1*) lt_cv_sys_max_cmd_len=-1 ;;+      esac+    fi+    ;;+  sco3.2v5*)+    lt_cv_sys_max_cmd_len=102400+    ;;+  sysv5* | sco5v6* | sysv4.2uw2*)+    kargmax=`grep ARG_MAX /etc/conf/cf.d/stune 2>/dev/null`+    if test -n "$kargmax"; then+      lt_cv_sys_max_cmd_len=`echo $kargmax | $SED 's/.*[	 ]//'`+    else+      lt_cv_sys_max_cmd_len=32768+    fi+    ;;+  *)+    lt_cv_sys_max_cmd_len=`(getconf ARG_MAX) 2> /dev/null`+    if test -n "$lt_cv_sys_max_cmd_len" && \+       test undefined != "$lt_cv_sys_max_cmd_len"; then+      lt_cv_sys_max_cmd_len=`expr $lt_cv_sys_max_cmd_len \/ 4`+      lt_cv_sys_max_cmd_len=`expr $lt_cv_sys_max_cmd_len \* 3`+    else+      # Make teststring a little bigger before we do anything with it.+      # a 1K string should be a reasonable start.+      for i in 1 2 3 4 5 6 7 8; do+        teststring=$teststring$teststring+      done+      SHELL=${SHELL-${CONFIG_SHELL-/bin/sh}}+      # If test is not a shell built-in, we'll probably end up computing a+      # maximum length that is only half of the actual maximum length, but+      # we can't tell.+      while { test X`env echo "$teststring$teststring" 2>/dev/null` \+	         = "X$teststring$teststring"; } >/dev/null 2>&1 &&+	      test 17 != "$i" # 1/2 MB should be enough+      do+        i=`expr $i + 1`+        teststring=$teststring$teststring+      done+      # Only check the string length outside the loop.+      lt_cv_sys_max_cmd_len=`expr "X$teststring" : ".*" 2>&1`+      teststring=+      # Add a significant safety factor because C++ compilers can tack on+      # massive amounts of additional arguments before passing them to the+      # linker.  It appears as though 1/2 is a usable value.+      lt_cv_sys_max_cmd_len=`expr $lt_cv_sys_max_cmd_len \/ 2`+    fi+    ;;+  esac++fi++if test -n "$lt_cv_sys_max_cmd_len"; then+  { $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_cv_sys_max_cmd_len" >&5+$as_echo "$lt_cv_sys_max_cmd_len" >&6; }+else+  { $as_echo "$as_me:${as_lineno-$LINENO}: result: none" >&5+$as_echo "none" >&6; }+fi+max_cmd_len=$lt_cv_sys_max_cmd_len+++++++: ${CP="cp -f"}+: ${MV="mv -f"}+: ${RM="rm -f"}++if ( (MAIL=60; unset MAIL) || exit) >/dev/null 2>&1; then+  lt_unset=unset+else+  lt_unset=false+fi++++++# test EBCDIC or ASCII+case `echo X|tr X '\101'` in+ A) # ASCII based system+    # \n is not interpreted correctly by Solaris 8 /usr/ucb/tr+  lt_SP2NL='tr \040 \012'+  lt_NL2SP='tr \015\012 \040\040'+  ;;+ *) # EBCDIC based system+  lt_SP2NL='tr \100 \n'+  lt_NL2SP='tr \r\n \100\100'+  ;;+esac++++++++++{ $as_echo "$as_me:${as_lineno-$LINENO}: checking how to convert $build file names to $host format" >&5+$as_echo_n "checking how to convert $build file names to $host format... " >&6; }+if ${lt_cv_to_host_file_cmd+:} false; then :+  $as_echo_n "(cached) " >&6+else+  case $host in+  *-*-mingw* )+    case $build in+      *-*-mingw* ) # actually msys+        lt_cv_to_host_file_cmd=func_convert_file_msys_to_w32+        ;;+      *-*-cygwin* )+        lt_cv_to_host_file_cmd=func_convert_file_cygwin_to_w32+        ;;+      * ) # otherwise, assume *nix+        lt_cv_to_host_file_cmd=func_convert_file_nix_to_w32+        ;;+    esac+    ;;+  *-*-cygwin* )+    case $build in+      *-*-mingw* ) # actually msys+        lt_cv_to_host_file_cmd=func_convert_file_msys_to_cygwin+        ;;+      *-*-cygwin* )+        lt_cv_to_host_file_cmd=func_convert_file_noop+        ;;+      * ) # otherwise, assume *nix+        lt_cv_to_host_file_cmd=func_convert_file_nix_to_cygwin+        ;;+    esac+    ;;+  * ) # unhandled hosts (and "normal" native builds)+    lt_cv_to_host_file_cmd=func_convert_file_noop+    ;;+esac++fi++to_host_file_cmd=$lt_cv_to_host_file_cmd+{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_cv_to_host_file_cmd" >&5+$as_echo "$lt_cv_to_host_file_cmd" >&6; }++++++{ $as_echo "$as_me:${as_lineno-$LINENO}: checking how to convert $build file names to toolchain format" >&5+$as_echo_n "checking how to convert $build file names to toolchain format... " >&6; }+if ${lt_cv_to_tool_file_cmd+:} false; then :+  $as_echo_n "(cached) " >&6+else+  #assume ordinary cross tools, or native build.+lt_cv_to_tool_file_cmd=func_convert_file_noop+case $host in+  *-*-mingw* )+    case $build in+      *-*-mingw* ) # actually msys+        lt_cv_to_tool_file_cmd=func_convert_file_msys_to_w32+        ;;+    esac+    ;;+esac++fi++to_tool_file_cmd=$lt_cv_to_tool_file_cmd+{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_cv_to_tool_file_cmd" >&5+$as_echo "$lt_cv_to_tool_file_cmd" >&6; }++++++{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $LD option to reload object files" >&5+$as_echo_n "checking for $LD option to reload object files... " >&6; }+if ${lt_cv_ld_reload_flag+:} false; then :+  $as_echo_n "(cached) " >&6+else+  lt_cv_ld_reload_flag='-r'+fi+{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_cv_ld_reload_flag" >&5+$as_echo "$lt_cv_ld_reload_flag" >&6; }+reload_flag=$lt_cv_ld_reload_flag+case $reload_flag in+"" | " "*) ;;+*) reload_flag=" $reload_flag" ;;+esac+reload_cmds='$LD$reload_flag -o $output$reload_objs'+case $host_os in+  cygwin* | mingw* | pw32* | cegcc*)+    if test yes != "$GCC"; then+      reload_cmds=false+    fi+    ;;+  darwin*)+    if test yes = "$GCC"; then+      reload_cmds='$LTCC $LTCFLAGS -nostdlib $wl-r -o $output$reload_objs'+    else+      reload_cmds='$LD$reload_flag -o $output$reload_objs'+    fi+    ;;+esac++++++++++if test -n "$ac_tool_prefix"; then+  # Extract the first word of "${ac_tool_prefix}file", so it can be a program name with args.+set dummy ${ac_tool_prefix}file; ac_word=$2+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5+$as_echo_n "checking for $ac_word... " >&6; }+if ${ac_cv_prog_FILECMD+:} false; then :+  $as_echo_n "(cached) " >&6+else+  if test -n "$FILECMD"; then+  ac_cv_prog_FILECMD="$FILECMD" # Let the user override the test.+else+as_save_IFS=$IFS; IFS=$PATH_SEPARATOR+for as_dir in $PATH+do+  IFS=$as_save_IFS+  test -z "$as_dir" && as_dir=.+    for ac_exec_ext in '' $ac_executable_extensions; do+  if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then+    ac_cv_prog_FILECMD="${ac_tool_prefix}file"+    $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5+    break 2+  fi+done+  done+IFS=$as_save_IFS++fi+fi+FILECMD=$ac_cv_prog_FILECMD+if test -n "$FILECMD"; then+  { $as_echo "$as_me:${as_lineno-$LINENO}: result: $FILECMD" >&5+$as_echo "$FILECMD" >&6; }+else+  { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5+$as_echo "no" >&6; }+fi+++fi+if test -z "$ac_cv_prog_FILECMD"; then+  ac_ct_FILECMD=$FILECMD+  # Extract the first word of "file", so it can be a program name with args.+set dummy file; ac_word=$2+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5+$as_echo_n "checking for $ac_word... " >&6; }+if ${ac_cv_prog_ac_ct_FILECMD+:} false; then :+  $as_echo_n "(cached) " >&6+else+  if test -n "$ac_ct_FILECMD"; then+  ac_cv_prog_ac_ct_FILECMD="$ac_ct_FILECMD" # Let the user override the test.+else+as_save_IFS=$IFS; IFS=$PATH_SEPARATOR+for as_dir in $PATH+do+  IFS=$as_save_IFS+  test -z "$as_dir" && as_dir=.+    for ac_exec_ext in '' $ac_executable_extensions; do+  if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then+    ac_cv_prog_ac_ct_FILECMD="file"+    $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5+    break 2+  fi+done+  done+IFS=$as_save_IFS++fi+fi+ac_ct_FILECMD=$ac_cv_prog_ac_ct_FILECMD+if test -n "$ac_ct_FILECMD"; then+  { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_ct_FILECMD" >&5+$as_echo "$ac_ct_FILECMD" >&6; }+else+  { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5+$as_echo "no" >&6; }+fi++  if test "x$ac_ct_FILECMD" = x; then+    FILECMD=":"+  else+    case $cross_compiling:$ac_tool_warned in+yes:)+{ $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: using cross tools not prefixed with host triplet" >&5+$as_echo "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;}+ac_tool_warned=yes ;;+esac+    FILECMD=$ac_ct_FILECMD+  fi+else+  FILECMD="$ac_cv_prog_FILECMD"+fi++++++++if test -n "$ac_tool_prefix"; then+  # Extract the first word of "${ac_tool_prefix}objdump", so it can be a program name with args.+set dummy ${ac_tool_prefix}objdump; ac_word=$2+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5+$as_echo_n "checking for $ac_word... " >&6; }+if ${ac_cv_prog_OBJDUMP+:} false; then :+  $as_echo_n "(cached) " >&6+else+  if test -n "$OBJDUMP"; then+  ac_cv_prog_OBJDUMP="$OBJDUMP" # Let the user override the test.+else+as_save_IFS=$IFS; IFS=$PATH_SEPARATOR+for as_dir in $PATH+do+  IFS=$as_save_IFS+  test -z "$as_dir" && as_dir=.+    for ac_exec_ext in '' $ac_executable_extensions; do+  if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then+    ac_cv_prog_OBJDUMP="${ac_tool_prefix}objdump"+    $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5+    break 2+  fi+done+  done+IFS=$as_save_IFS++fi+fi+OBJDUMP=$ac_cv_prog_OBJDUMP+if test -n "$OBJDUMP"; then+  { $as_echo "$as_me:${as_lineno-$LINENO}: result: $OBJDUMP" >&5+$as_echo "$OBJDUMP" >&6; }+else+  { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5+$as_echo "no" >&6; }+fi+++fi+if test -z "$ac_cv_prog_OBJDUMP"; then+  ac_ct_OBJDUMP=$OBJDUMP+  # Extract the first word of "objdump", so it can be a program name with args.+set dummy objdump; ac_word=$2+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5+$as_echo_n "checking for $ac_word... " >&6; }+if ${ac_cv_prog_ac_ct_OBJDUMP+:} false; then :+  $as_echo_n "(cached) " >&6+else+  if test -n "$ac_ct_OBJDUMP"; then+  ac_cv_prog_ac_ct_OBJDUMP="$ac_ct_OBJDUMP" # Let the user override the test.+else+as_save_IFS=$IFS; IFS=$PATH_SEPARATOR+for as_dir in $PATH+do+  IFS=$as_save_IFS+  test -z "$as_dir" && as_dir=.+    for ac_exec_ext in '' $ac_executable_extensions; do+  if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then+    ac_cv_prog_ac_ct_OBJDUMP="objdump"+    $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5+    break 2+  fi+done+  done+IFS=$as_save_IFS++fi+fi+ac_ct_OBJDUMP=$ac_cv_prog_ac_ct_OBJDUMP+if test -n "$ac_ct_OBJDUMP"; then+  { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_ct_OBJDUMP" >&5+$as_echo "$ac_ct_OBJDUMP" >&6; }+else+  { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5+$as_echo "no" >&6; }+fi++  if test "x$ac_ct_OBJDUMP" = x; then+    OBJDUMP="false"+  else+    case $cross_compiling:$ac_tool_warned in+yes:)+{ $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: using cross tools not prefixed with host triplet" >&5+$as_echo "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;}+ac_tool_warned=yes ;;+esac+    OBJDUMP=$ac_ct_OBJDUMP+  fi+else+  OBJDUMP="$ac_cv_prog_OBJDUMP"+fi++test -z "$OBJDUMP" && OBJDUMP=objdump++++++++++{ $as_echo "$as_me:${as_lineno-$LINENO}: checking how to recognize dependent libraries" >&5+$as_echo_n "checking how to recognize dependent libraries... " >&6; }+if ${lt_cv_deplibs_check_method+:} false; then :+  $as_echo_n "(cached) " >&6+else+  lt_cv_file_magic_cmd='$MAGIC_CMD'+lt_cv_file_magic_test_file=+lt_cv_deplibs_check_method='unknown'+# Need to set the preceding variable on all platforms that support+# interlibrary dependencies.+# 'none' -- dependencies not supported.+# 'unknown' -- same as none, but documents that we really don't know.+# 'pass_all' -- all dependencies passed with no checks.+# 'test_compile' -- check by making test program.+# 'file_magic [[regex]]' -- check by looking for files in library path+# that responds to the $file_magic_cmd with a given extended regex.+# If you have 'file' or equivalent on your system and you're not sure+# whether 'pass_all' will *always* work, you probably want this one.++case $host_os in+aix[4-9]*)+  lt_cv_deplibs_check_method=pass_all+  ;;++beos*)+  lt_cv_deplibs_check_method=pass_all+  ;;++bsdi[45]*)+  lt_cv_deplibs_check_method='file_magic ELF [0-9][0-9]*-bit [ML]SB (shared object|dynamic lib)'+  lt_cv_file_magic_cmd='$FILECMD -L'+  lt_cv_file_magic_test_file=/shlib/libc.so+  ;;++cygwin*)+  # func_win32_libid is a shell function defined in ltmain.sh+  lt_cv_deplibs_check_method='file_magic ^x86 archive import|^x86 DLL'+  lt_cv_file_magic_cmd='func_win32_libid'+  ;;++mingw* | pw32*)+  # Base MSYS/MinGW do not provide the 'file' command needed by+  # func_win32_libid shell function, so use a weaker test based on 'objdump',+  # unless we find 'file', for example because we are cross-compiling.+  if ( file / ) >/dev/null 2>&1; then+    lt_cv_deplibs_check_method='file_magic ^x86 archive import|^x86 DLL'+    lt_cv_file_magic_cmd='func_win32_libid'+  else+    # Keep this pattern in sync with the one in func_win32_libid.+    lt_cv_deplibs_check_method='file_magic file format (pei*-i386(.*architecture: i386)?|pe-arm-wince|pe-x86-64)'+    lt_cv_file_magic_cmd='$OBJDUMP -f'+  fi+  ;;++cegcc*)+  # use the weaker test based on 'objdump'. See mingw*.+  lt_cv_deplibs_check_method='file_magic file format pe-arm-.*little(.*architecture: arm)?'+  lt_cv_file_magic_cmd='$OBJDUMP -f'+  ;;++darwin* | rhapsody*)+  lt_cv_deplibs_check_method=pass_all+  ;;++freebsd* | dragonfly* | midnightbsd*)+  if echo __ELF__ | $CC -E - | $GREP __ELF__ > /dev/null; then+    case $host_cpu in+    i*86 )+      # Not sure whether the presence of OpenBSD here was a mistake.+      # Let's accept both of them until this is cleared up.+      lt_cv_deplibs_check_method='file_magic (FreeBSD|OpenBSD|DragonFly)/i[3-9]86 (compact )?demand paged shared library'+      lt_cv_file_magic_cmd=$FILECMD+      lt_cv_file_magic_test_file=`echo /usr/lib/libc.so.*`+      ;;+    esac+  else+    lt_cv_deplibs_check_method=pass_all+  fi+  ;;++haiku*)+  lt_cv_deplibs_check_method=pass_all+  ;;++hpux10.20* | hpux11*)+  lt_cv_file_magic_cmd=$FILECMD+  case $host_cpu in+  ia64*)+    lt_cv_deplibs_check_method='file_magic (s[0-9][0-9][0-9]|ELF-[0-9][0-9]) shared object file - IA64'+    lt_cv_file_magic_test_file=/usr/lib/hpux32/libc.so+    ;;+  hppa*64*)+    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]'+    lt_cv_file_magic_test_file=/usr/lib/pa20_64/libc.sl+    ;;+  *)+    lt_cv_deplibs_check_method='file_magic (s[0-9][0-9][0-9]|PA-RISC[0-9]\.[0-9]) shared library'+    lt_cv_file_magic_test_file=/usr/lib/libc.sl+    ;;+  esac+  ;;++interix[3-9]*)+  # PIC code is broken on Interix 3.x, that's why |\.a not |_pic\.a here+  lt_cv_deplibs_check_method='match_pattern /lib[^/]+(\.so|\.a)$'+  ;;++irix5* | irix6* | nonstopux*)+  case $LD in+  *-32|*"-32 ") libmagic=32-bit;;+  *-n32|*"-n32 ") libmagic=N32;;+  *-64|*"-64 ") libmagic=64-bit;;+  *) libmagic=never-match;;+  esac+  lt_cv_deplibs_check_method=pass_all+  ;;++# This must be glibc/ELF.+linux* | k*bsd*-gnu | kopensolaris*-gnu | gnu*)+  lt_cv_deplibs_check_method=pass_all+  ;;++netbsd* | netbsdelf*-gnu)+  if echo __ELF__ | $CC -E - | $GREP __ELF__ > /dev/null; then+    lt_cv_deplibs_check_method='match_pattern /lib[^/]+(\.so\.[0-9]+\.[0-9]+|_pic\.a)$'+  else+    lt_cv_deplibs_check_method='match_pattern /lib[^/]+(\.so|_pic\.a)$'+  fi+  ;;++newos6*)+  lt_cv_deplibs_check_method='file_magic ELF [0-9][0-9]*-bit [ML]SB (executable|dynamic lib)'+  lt_cv_file_magic_cmd=$FILECMD+  lt_cv_file_magic_test_file=/usr/lib/libnls.so+  ;;++*nto* | *qnx*)+  lt_cv_deplibs_check_method=pass_all+  ;;++openbsd* | bitrig*)+  if test -z "`echo __ELF__ | $CC -E - | $GREP __ELF__`"; then+    lt_cv_deplibs_check_method='match_pattern /lib[^/]+(\.so\.[0-9]+\.[0-9]+|\.so|_pic\.a)$'+  else+    lt_cv_deplibs_check_method='match_pattern /lib[^/]+(\.so\.[0-9]+\.[0-9]+|_pic\.a)$'+  fi+  ;;++osf3* | osf4* | osf5*)+  lt_cv_deplibs_check_method=pass_all+  ;;++rdos*)+  lt_cv_deplibs_check_method=pass_all+  ;;++solaris*)+  lt_cv_deplibs_check_method=pass_all+  ;;++sysv5* | sco3.2v5* | sco5v6* | unixware* | OpenUNIX* | sysv4*uw2*)+  lt_cv_deplibs_check_method=pass_all+  ;;++sysv4 | sysv4.3*)+  case $host_vendor in+  motorola)+    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]'+    lt_cv_file_magic_test_file=`echo /usr/lib/libc.so*`+    ;;+  ncr)+    lt_cv_deplibs_check_method=pass_all+    ;;+  sequent)+    lt_cv_file_magic_cmd='/bin/file'+    lt_cv_deplibs_check_method='file_magic ELF [0-9][0-9]*-bit [LM]SB (shared object|dynamic lib )'+    ;;+  sni)+    lt_cv_file_magic_cmd='/bin/file'+    lt_cv_deplibs_check_method="file_magic ELF [0-9][0-9]*-bit [LM]SB dynamic lib"+    lt_cv_file_magic_test_file=/lib/libc.so+    ;;+  siemens)+    lt_cv_deplibs_check_method=pass_all+    ;;+  pc)+    lt_cv_deplibs_check_method=pass_all+    ;;+  esac+  ;;++tpf*)+  lt_cv_deplibs_check_method=pass_all+  ;;+os2*)+  lt_cv_deplibs_check_method=pass_all+  ;;+esac++fi+{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_cv_deplibs_check_method" >&5+$as_echo "$lt_cv_deplibs_check_method" >&6; }++file_magic_glob=+want_nocaseglob=no+if test "$build" = "$host"; then+  case $host_os in+  mingw* | pw32*)+    if ( shopt | grep nocaseglob ) >/dev/null 2>&1; then+      want_nocaseglob=yes+    else+      file_magic_glob=`echo aAbBcCdDeEfFgGhHiIjJkKlLmMnNoOpPqQrRsStTuUvVwWxXyYzZ | $SED -e "s/\(..\)/s\/[\1]\/[\1]\/g;/g"`+    fi+    ;;+  esac+fi++file_magic_cmd=$lt_cv_file_magic_cmd+deplibs_check_method=$lt_cv_deplibs_check_method+test -z "$deplibs_check_method" && deplibs_check_method=unknown+++++++++++++++++++++++if test -n "$ac_tool_prefix"; then+  # Extract the first word of "${ac_tool_prefix}dlltool", so it can be a program name with args.+set dummy ${ac_tool_prefix}dlltool; ac_word=$2+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5+$as_echo_n "checking for $ac_word... " >&6; }+if ${ac_cv_prog_DLLTOOL+:} false; then :+  $as_echo_n "(cached) " >&6+else+  if test -n "$DLLTOOL"; then+  ac_cv_prog_DLLTOOL="$DLLTOOL" # Let the user override the test.+else+as_save_IFS=$IFS; IFS=$PATH_SEPARATOR+for as_dir in $PATH+do+  IFS=$as_save_IFS+  test -z "$as_dir" && as_dir=.+    for ac_exec_ext in '' $ac_executable_extensions; do+  if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then+    ac_cv_prog_DLLTOOL="${ac_tool_prefix}dlltool"+    $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5+    break 2+  fi+done+  done+IFS=$as_save_IFS++fi+fi+DLLTOOL=$ac_cv_prog_DLLTOOL+if test -n "$DLLTOOL"; then+  { $as_echo "$as_me:${as_lineno-$LINENO}: result: $DLLTOOL" >&5+$as_echo "$DLLTOOL" >&6; }+else+  { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5+$as_echo "no" >&6; }+fi+++fi+if test -z "$ac_cv_prog_DLLTOOL"; then+  ac_ct_DLLTOOL=$DLLTOOL+  # Extract the first word of "dlltool", so it can be a program name with args.+set dummy dlltool; ac_word=$2+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5+$as_echo_n "checking for $ac_word... " >&6; }+if ${ac_cv_prog_ac_ct_DLLTOOL+:} false; then :+  $as_echo_n "(cached) " >&6+else+  if test -n "$ac_ct_DLLTOOL"; then+  ac_cv_prog_ac_ct_DLLTOOL="$ac_ct_DLLTOOL" # Let the user override the test.+else+as_save_IFS=$IFS; IFS=$PATH_SEPARATOR+for as_dir in $PATH+do+  IFS=$as_save_IFS+  test -z "$as_dir" && as_dir=.+    for ac_exec_ext in '' $ac_executable_extensions; do+  if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then+    ac_cv_prog_ac_ct_DLLTOOL="dlltool"+    $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5+    break 2+  fi+done+  done+IFS=$as_save_IFS++fi+fi+ac_ct_DLLTOOL=$ac_cv_prog_ac_ct_DLLTOOL+if test -n "$ac_ct_DLLTOOL"; then+  { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_ct_DLLTOOL" >&5+$as_echo "$ac_ct_DLLTOOL" >&6; }+else+  { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5+$as_echo "no" >&6; }+fi++  if test "x$ac_ct_DLLTOOL" = x; then+    DLLTOOL="false"+  else+    case $cross_compiling:$ac_tool_warned in+yes:)+{ $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: using cross tools not prefixed with host triplet" >&5+$as_echo "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;}+ac_tool_warned=yes ;;+esac+    DLLTOOL=$ac_ct_DLLTOOL+  fi+else+  DLLTOOL="$ac_cv_prog_DLLTOOL"+fi++test -z "$DLLTOOL" && DLLTOOL=dlltool+++++++++++{ $as_echo "$as_me:${as_lineno-$LINENO}: checking how to associate runtime and link libraries" >&5+$as_echo_n "checking how to associate runtime and link libraries... " >&6; }+if ${lt_cv_sharedlib_from_linklib_cmd+:} false; then :+  $as_echo_n "(cached) " >&6+else+  lt_cv_sharedlib_from_linklib_cmd='unknown'++case $host_os in+cygwin* | mingw* | pw32* | cegcc*)+  # two different shell functions defined in ltmain.sh;+  # decide which one to use based on capabilities of $DLLTOOL+  case `$DLLTOOL --help 2>&1` in+  *--identify-strict*)+    lt_cv_sharedlib_from_linklib_cmd=func_cygming_dll_for_implib+    ;;+  *)+    lt_cv_sharedlib_from_linklib_cmd=func_cygming_dll_for_implib_fallback+    ;;+  esac+  ;;+*)+  # fallback: assume linklib IS sharedlib+  lt_cv_sharedlib_from_linklib_cmd=$ECHO+  ;;+esac++fi+{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_cv_sharedlib_from_linklib_cmd" >&5+$as_echo "$lt_cv_sharedlib_from_linklib_cmd" >&6; }+sharedlib_from_linklib_cmd=$lt_cv_sharedlib_from_linklib_cmd+test -z "$sharedlib_from_linklib_cmd" && sharedlib_from_linklib_cmd=$ECHO+++++++++if test -n "$ac_tool_prefix"; then+  for ac_prog in ar+  do+    # Extract the first word of "$ac_tool_prefix$ac_prog", so it can be a program name with args.+set dummy $ac_tool_prefix$ac_prog; ac_word=$2+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5+$as_echo_n "checking for $ac_word... " >&6; }+if ${ac_cv_prog_AR+:} false; then :+  $as_echo_n "(cached) " >&6+else+  if test -n "$AR"; then+  ac_cv_prog_AR="$AR" # Let the user override the test.+else+as_save_IFS=$IFS; IFS=$PATH_SEPARATOR+for as_dir in $PATH+do+  IFS=$as_save_IFS+  test -z "$as_dir" && as_dir=.+    for ac_exec_ext in '' $ac_executable_extensions; do+  if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then+    ac_cv_prog_AR="$ac_tool_prefix$ac_prog"+    $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5+    break 2+  fi+done+  done+IFS=$as_save_IFS++fi+fi+AR=$ac_cv_prog_AR+if test -n "$AR"; then+  { $as_echo "$as_me:${as_lineno-$LINENO}: result: $AR" >&5+$as_echo "$AR" >&6; }+else+  { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5+$as_echo "no" >&6; }+fi+++    test -n "$AR" && break+  done+fi+if test -z "$AR"; then+  ac_ct_AR=$AR+  for ac_prog in ar+do+  # Extract the first word of "$ac_prog", so it can be a program name with args.+set dummy $ac_prog; ac_word=$2+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5+$as_echo_n "checking for $ac_word... " >&6; }+if ${ac_cv_prog_ac_ct_AR+:} false; then :+  $as_echo_n "(cached) " >&6+else+  if test -n "$ac_ct_AR"; then+  ac_cv_prog_ac_ct_AR="$ac_ct_AR" # Let the user override the test.+else+as_save_IFS=$IFS; IFS=$PATH_SEPARATOR+for as_dir in $PATH+do+  IFS=$as_save_IFS+  test -z "$as_dir" && as_dir=.+    for ac_exec_ext in '' $ac_executable_extensions; do+  if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then+    ac_cv_prog_ac_ct_AR="$ac_prog"+    $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5+    break 2+  fi+done+  done+IFS=$as_save_IFS++fi+fi+ac_ct_AR=$ac_cv_prog_ac_ct_AR+if test -n "$ac_ct_AR"; then+  { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_ct_AR" >&5+$as_echo "$ac_ct_AR" >&6; }+else+  { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5+$as_echo "no" >&6; }+fi+++  test -n "$ac_ct_AR" && break+done++  if test "x$ac_ct_AR" = x; then+    AR="false"+  else+    case $cross_compiling:$ac_tool_warned in+yes:)+{ $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: using cross tools not prefixed with host triplet" >&5+$as_echo "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;}+ac_tool_warned=yes ;;+esac+    AR=$ac_ct_AR+  fi+fi++: ${AR=ar}+++++++# Use ARFLAGS variable as AR's operation code to sync the variable naming with+# Automake.  If both AR_FLAGS and ARFLAGS are specified, AR_FLAGS should have+# higher priority because thats what people were doing historically (setting+# ARFLAGS for automake and AR_FLAGS for libtool).  FIXME: Make the AR_FLAGS+# variable obsoleted/removed.++test ${AR_FLAGS+y} || AR_FLAGS=${ARFLAGS-cr}+lt_ar_flags=$AR_FLAGS+++++++# Make AR_FLAGS overridable by 'make ARFLAGS='.  Don't try to run-time override+# by AR_FLAGS because that was never working and AR_FLAGS is about to die.+++++++{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for archiver @FILE support" >&5+$as_echo_n "checking for archiver @FILE support... " >&6; }+if ${lt_cv_ar_at_file+:} false; then :+  $as_echo_n "(cached) " >&6+else+  lt_cv_ar_at_file=no+   cat confdefs.h - <<_ACEOF >conftest.$ac_ext+/* end confdefs.h.  */++int+main ()+{++  ;+  return 0;+}+_ACEOF+if ac_fn_c_try_compile "$LINENO"; then :+  echo conftest.$ac_objext > conftest.lst+      lt_ar_try='$AR $AR_FLAGS libconftest.a @conftest.lst >&5'+      { { eval echo "\"\$as_me\":${as_lineno-$LINENO}: \"$lt_ar_try\""; } >&5+  (eval $lt_ar_try) 2>&5+  ac_status=$?+  $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5+  test $ac_status = 0; }+      if test 0 -eq "$ac_status"; then+	# Ensure the archiver fails upon bogus file names.+	rm -f conftest.$ac_objext libconftest.a+	{ { eval echo "\"\$as_me\":${as_lineno-$LINENO}: \"$lt_ar_try\""; } >&5+  (eval $lt_ar_try) 2>&5+  ac_status=$?+  $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5+  test $ac_status = 0; }+	if test 0 -ne "$ac_status"; then+          lt_cv_ar_at_file=@+        fi+      fi+      rm -f conftest.* libconftest.a++fi+rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext++fi+{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_cv_ar_at_file" >&5+$as_echo "$lt_cv_ar_at_file" >&6; }++if test no = "$lt_cv_ar_at_file"; then+  archiver_list_spec=+else+  archiver_list_spec=$lt_cv_ar_at_file+fi++++++++if test -n "$ac_tool_prefix"; then+  # Extract the first word of "${ac_tool_prefix}strip", so it can be a program name with args.+set dummy ${ac_tool_prefix}strip; ac_word=$2+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5+$as_echo_n "checking for $ac_word... " >&6; }+if ${ac_cv_prog_STRIP+:} false; then :+  $as_echo_n "(cached) " >&6+else+  if test -n "$STRIP"; then+  ac_cv_prog_STRIP="$STRIP" # Let the user override the test.+else+as_save_IFS=$IFS; IFS=$PATH_SEPARATOR+for as_dir in $PATH+do+  IFS=$as_save_IFS+  test -z "$as_dir" && as_dir=.+    for ac_exec_ext in '' $ac_executable_extensions; do+  if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then+    ac_cv_prog_STRIP="${ac_tool_prefix}strip"+    $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5+    break 2+  fi+done+  done+IFS=$as_save_IFS++fi+fi+STRIP=$ac_cv_prog_STRIP+if test -n "$STRIP"; then+  { $as_echo "$as_me:${as_lineno-$LINENO}: result: $STRIP" >&5+$as_echo "$STRIP" >&6; }+else+  { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5+$as_echo "no" >&6; }+fi+++fi+if test -z "$ac_cv_prog_STRIP"; then+  ac_ct_STRIP=$STRIP+  # Extract the first word of "strip", so it can be a program name with args.+set dummy strip; ac_word=$2+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5+$as_echo_n "checking for $ac_word... " >&6; }+if ${ac_cv_prog_ac_ct_STRIP+:} false; then :+  $as_echo_n "(cached) " >&6+else+  if test -n "$ac_ct_STRIP"; then+  ac_cv_prog_ac_ct_STRIP="$ac_ct_STRIP" # Let the user override the test.+else+as_save_IFS=$IFS; IFS=$PATH_SEPARATOR+for as_dir in $PATH+do+  IFS=$as_save_IFS+  test -z "$as_dir" && as_dir=.+    for ac_exec_ext in '' $ac_executable_extensions; do+  if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then+    ac_cv_prog_ac_ct_STRIP="strip"+    $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5+    break 2+  fi+done+  done+IFS=$as_save_IFS++fi+fi+ac_ct_STRIP=$ac_cv_prog_ac_ct_STRIP+if test -n "$ac_ct_STRIP"; then+  { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_ct_STRIP" >&5+$as_echo "$ac_ct_STRIP" >&6; }+else+  { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5+$as_echo "no" >&6; }+fi++  if test "x$ac_ct_STRIP" = x; then+    STRIP=":"+  else+    case $cross_compiling:$ac_tool_warned in+yes:)+{ $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: using cross tools not prefixed with host triplet" >&5+$as_echo "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;}+ac_tool_warned=yes ;;+esac+    STRIP=$ac_ct_STRIP+  fi+else+  STRIP="$ac_cv_prog_STRIP"+fi++test -z "$STRIP" && STRIP=:+++++++if test -n "$ac_tool_prefix"; then+  # Extract the first word of "${ac_tool_prefix}ranlib", so it can be a program name with args.+set dummy ${ac_tool_prefix}ranlib; ac_word=$2+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5+$as_echo_n "checking for $ac_word... " >&6; }+if ${ac_cv_prog_RANLIB+:} false; then :+  $as_echo_n "(cached) " >&6+else+  if test -n "$RANLIB"; then+  ac_cv_prog_RANLIB="$RANLIB" # Let the user override the test.+else+as_save_IFS=$IFS; IFS=$PATH_SEPARATOR+for as_dir in $PATH+do+  IFS=$as_save_IFS+  test -z "$as_dir" && as_dir=.+    for ac_exec_ext in '' $ac_executable_extensions; do+  if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then+    ac_cv_prog_RANLIB="${ac_tool_prefix}ranlib"+    $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5+    break 2+  fi+done+  done+IFS=$as_save_IFS++fi+fi+RANLIB=$ac_cv_prog_RANLIB+if test -n "$RANLIB"; then+  { $as_echo "$as_me:${as_lineno-$LINENO}: result: $RANLIB" >&5+$as_echo "$RANLIB" >&6; }+else+  { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5+$as_echo "no" >&6; }+fi+++fi+if test -z "$ac_cv_prog_RANLIB"; then+  ac_ct_RANLIB=$RANLIB+  # Extract the first word of "ranlib", so it can be a program name with args.+set dummy ranlib; ac_word=$2+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5+$as_echo_n "checking for $ac_word... " >&6; }+if ${ac_cv_prog_ac_ct_RANLIB+:} false; then :+  $as_echo_n "(cached) " >&6+else+  if test -n "$ac_ct_RANLIB"; then+  ac_cv_prog_ac_ct_RANLIB="$ac_ct_RANLIB" # Let the user override the test.+else+as_save_IFS=$IFS; IFS=$PATH_SEPARATOR+for as_dir in $PATH+do+  IFS=$as_save_IFS+  test -z "$as_dir" && as_dir=.+    for ac_exec_ext in '' $ac_executable_extensions; do+  if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then+    ac_cv_prog_ac_ct_RANLIB="ranlib"+    $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5+    break 2+  fi+done+  done+IFS=$as_save_IFS++fi+fi+ac_ct_RANLIB=$ac_cv_prog_ac_ct_RANLIB+if test -n "$ac_ct_RANLIB"; then+  { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_ct_RANLIB" >&5+$as_echo "$ac_ct_RANLIB" >&6; }+else+  { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5+$as_echo "no" >&6; }+fi++  if test "x$ac_ct_RANLIB" = x; then+    RANLIB=":"+  else+    case $cross_compiling:$ac_tool_warned in+yes:)+{ $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: using cross tools not prefixed with host triplet" >&5+$as_echo "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;}+ac_tool_warned=yes ;;+esac+    RANLIB=$ac_ct_RANLIB+  fi+else+  RANLIB="$ac_cv_prog_RANLIB"+fi++test -z "$RANLIB" && RANLIB=:+++++++# Determine commands to create old-style static archives.+old_archive_cmds='$AR $AR_FLAGS $oldlib$oldobjs'+old_postinstall_cmds='chmod 644 $oldlib'+old_postuninstall_cmds=++if test -n "$RANLIB"; then+  case $host_os in+  bitrig* | openbsd*)+    old_postinstall_cmds="$old_postinstall_cmds~\$RANLIB -t \$tool_oldlib"+    ;;+  *)+    old_postinstall_cmds="$old_postinstall_cmds~\$RANLIB \$tool_oldlib"+    ;;+  esac+  old_archive_cmds="$old_archive_cmds~\$RANLIB \$tool_oldlib"+fi++case $host_os in+  darwin*)+    lock_old_archive_extraction=yes ;;+  *)+    lock_old_archive_extraction=no ;;+esac++++++++++++++++++++++for ac_prog in gawk mawk nawk awk+do+  # Extract the first word of "$ac_prog", so it can be a program name with args.+set dummy $ac_prog; ac_word=$2+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5+$as_echo_n "checking for $ac_word... " >&6; }+if ${ac_cv_prog_AWK+:} false; then :+  $as_echo_n "(cached) " >&6+else+  if test -n "$AWK"; then+  ac_cv_prog_AWK="$AWK" # Let the user override the test.+else+as_save_IFS=$IFS; IFS=$PATH_SEPARATOR+for as_dir in $PATH+do+  IFS=$as_save_IFS+  test -z "$as_dir" && as_dir=.+    for ac_exec_ext in '' $ac_executable_extensions; do+  if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then+    ac_cv_prog_AWK="$ac_prog"+    $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5+    break 2+  fi+done+  done+IFS=$as_save_IFS++fi+fi+AWK=$ac_cv_prog_AWK+if test -n "$AWK"; then+  { $as_echo "$as_me:${as_lineno-$LINENO}: result: $AWK" >&5+$as_echo "$AWK" >&6; }+else+  { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5+$as_echo "no" >&6; }+fi+++  test -n "$AWK" && break+done++++++++++++++++++++# If no C compiler was specified, use CC.+LTCC=${LTCC-"$CC"}++# If no C compiler flags were specified, use CFLAGS.+LTCFLAGS=${LTCFLAGS-"$CFLAGS"}++# Allow CC to be a program name with arguments.+compiler=$CC+++# Check for command to grab the raw symbol name followed by C symbol from nm.+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking command to parse $NM output from $compiler object" >&5+$as_echo_n "checking command to parse $NM output from $compiler object... " >&6; }+if ${lt_cv_sys_global_symbol_pipe+:} false; then :+  $as_echo_n "(cached) " >&6+else++# These are sane defaults that work on at least a few old systems.+# [They come from Ultrix.  What could be older than Ultrix?!! ;)]++# Character class describing NM global symbol codes.+symcode='[BCDEGRST]'++# Regexp to match symbols that can be accessed directly from C.+sympat='\([_A-Za-z][_A-Za-z0-9]*\)'++# Define system-specific variables.+case $host_os in+aix*)+  symcode='[BCDT]'+  ;;+cygwin* | mingw* | pw32* | cegcc*)+  symcode='[ABCDGISTW]'+  ;;+hpux*)+  if test ia64 = "$host_cpu"; then+    symcode='[ABCDEGRST]'+  fi+  ;;+irix* | nonstopux*)+  symcode='[BCDEGRST]'+  ;;+osf*)+  symcode='[BCDEGQRST]'+  ;;+solaris*)+  symcode='[BDRT]'+  ;;+sco3.2v5*)+  symcode='[DT]'+  ;;+sysv4.2uw2*)+  symcode='[DT]'+  ;;+sysv5* | sco5v6* | unixware* | OpenUNIX*)+  symcode='[ABDT]'+  ;;+sysv4)+  symcode='[DFNSTU]'+  ;;+esac++# If we're using GNU nm, then use its standard symbol codes.+case `$NM -V 2>&1` in+*GNU* | *'with BFD'*)+  symcode='[ABCDGIRSTW]' ;;+esac++if test "$lt_cv_nm_interface" = "MS dumpbin"; then+  # Gets list of data symbols to import.+  lt_cv_sys_global_symbol_to_import="$SED -n -e 's/^I .* \(.*\)$/\1/p'"+  # Adjust the below global symbol transforms to fixup imported variables.+  lt_cdecl_hook=" -e 's/^I .* \(.*\)$/extern __declspec(dllimport) char \1;/p'"+  lt_c_name_hook=" -e 's/^I .* \(.*\)$/  {\"\1\", (void *) 0},/p'"+  lt_c_name_lib_hook="\+  -e 's/^I .* \(lib.*\)$/  {\"\1\", (void *) 0},/p'\+  -e 's/^I .* \(.*\)$/  {\"lib\1\", (void *) 0},/p'"+else+  # Disable hooks by default.+  lt_cv_sys_global_symbol_to_import=+  lt_cdecl_hook=+  lt_c_name_hook=+  lt_c_name_lib_hook=+fi++# Transform an extracted symbol line into a proper C declaration.+# Some systems (esp. on ia64) link data and code symbols differently,+# so use this general approach.+lt_cv_sys_global_symbol_to_cdecl="$SED -n"\+$lt_cdecl_hook\+" -e 's/^T .* \(.*\)$/extern int \1();/p'"\+" -e 's/^$symcode$symcode* .* \(.*\)$/extern char \1;/p'"++# Transform an extracted symbol line into symbol name and symbol address+lt_cv_sys_global_symbol_to_c_name_address="$SED -n"\+$lt_c_name_hook\+" -e 's/^: \(.*\) .*$/  {\"\1\", (void *) 0},/p'"\+" -e 's/^$symcode$symcode* .* \(.*\)$/  {\"\1\", (void *) \&\1},/p'"++# Transform an extracted symbol line into symbol name with lib prefix and+# symbol address.+lt_cv_sys_global_symbol_to_c_name_address_lib_prefix="$SED -n"\+$lt_c_name_lib_hook\+" -e 's/^: \(.*\) .*$/  {\"\1\", (void *) 0},/p'"\+" -e 's/^$symcode$symcode* .* \(lib.*\)$/  {\"\1\", (void *) \&\1},/p'"\+" -e 's/^$symcode$symcode* .* \(.*\)$/  {\"lib\1\", (void *) \&\1},/p'"++# Handle CRLF in mingw tool chain+opt_cr=+case $build_os in+mingw*)+  opt_cr=`$ECHO 'x\{0,1\}' | tr x '\015'` # option cr in regexp+  ;;+esac++# Try without a prefix underscore, then with it.+for ac_symprfx in "" "_"; do++  # Transform symcode, sympat, and symprfx into a raw symbol and a C symbol.+  symxfrm="\\1 $ac_symprfx\\2 \\2"++  # Write the raw and C identifiers.+  if test "$lt_cv_nm_interface" = "MS dumpbin"; then+    # Fake it for dumpbin and say T for any non-static function,+    # D for any global variable and I for any imported variable.+    # Also find C++ and __fastcall symbols from MSVC++ or ICC,+    # which start with @ or ?.+    lt_cv_sys_global_symbol_pipe="$AWK '"\+"     {last_section=section; section=\$ 3};"\+"     /^COFF SYMBOL TABLE/{for(i in hide) delete hide[i]};"\+"     /Section length .*#relocs.*(pick any)/{hide[last_section]=1};"\+"     /^ *Symbol name *: /{split(\$ 0,sn,\":\"); si=substr(sn[2],2)};"\+"     /^ *Type *: code/{print \"T\",si,substr(si,length(prfx))};"\+"     /^ *Type *: data/{print \"I\",si,substr(si,length(prfx))};"\+"     \$ 0!~/External *\|/{next};"\+"     / 0+ UNDEF /{next}; / UNDEF \([^|]\)*()/{next};"\+"     {if(hide[section]) next};"\+"     {f=\"D\"}; \$ 0~/\(\).*\|/{f=\"T\"};"\+"     {split(\$ 0,a,/\||\r/); split(a[2],s)};"\+"     s[1]~/^[@?]/{print f,s[1],s[1]; next};"\+"     s[1]~prfx {split(s[1],t,\"@\"); print f,t[1],substr(t[1],length(prfx))}"\+"     ' prfx=^$ac_symprfx"+  else+    lt_cv_sys_global_symbol_pipe="$SED -n -e 's/^.*[	 ]\($symcode$symcode*\)[	 ][	 ]*$ac_symprfx$sympat$opt_cr$/$symxfrm/p'"+  fi+  lt_cv_sys_global_symbol_pipe="$lt_cv_sys_global_symbol_pipe | $SED '/ __gnu_lto/d'"++  # Check to see that the pipe works correctly.+  pipe_works=no++  rm -f conftest*+  cat > conftest.$ac_ext <<_LT_EOF+#ifdef __cplusplus+extern "C" {+#endif+char nm_test_var;+void nm_test_func(void);+void nm_test_func(void){}+#ifdef __cplusplus+}+#endif+int main(){nm_test_var='a';nm_test_func();return(0);}+_LT_EOF++  if { { eval echo "\"\$as_me\":${as_lineno-$LINENO}: \"$ac_compile\""; } >&5+  (eval $ac_compile) 2>&5+  ac_status=$?+  $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5+  test $ac_status = 0; }; then+    # Now try to grab the symbols.+    nlist=conftest.nm+    $ECHO "$as_me:$LINENO: $NM conftest.$ac_objext | $lt_cv_sys_global_symbol_pipe > $nlist" >&5+    if eval "$NM" conftest.$ac_objext \| "$lt_cv_sys_global_symbol_pipe" \> $nlist 2>&5 && test -s "$nlist"; then+      # Try sorting and uniquifying the output.+      if sort "$nlist" | uniq > "$nlist"T; then+	mv -f "$nlist"T "$nlist"+      else+	rm -f "$nlist"T+      fi++      # Make sure that we snagged all the symbols we need.+      if $GREP ' nm_test_var$' "$nlist" >/dev/null; then+	if $GREP ' nm_test_func$' "$nlist" >/dev/null; then+	  cat <<_LT_EOF > conftest.$ac_ext+/* Keep this code in sync between libtool.m4, ltmain, lt_system.h, and tests.  */+#if defined _WIN32 || defined __CYGWIN__ || defined _WIN32_WCE+/* DATA imports from DLLs on WIN32 can't be const, because runtime+   relocations are performed -- see ld's documentation on pseudo-relocs.  */+# define LT_DLSYM_CONST+#elif defined __osf__+/* This system does not cope well with relocations in const data.  */+# define LT_DLSYM_CONST+#else+# define LT_DLSYM_CONST const+#endif++#ifdef __cplusplus+extern "C" {+#endif++_LT_EOF+	  # Now generate the symbol file.+	  eval "$lt_cv_sys_global_symbol_to_cdecl"' < "$nlist" | $GREP -v main >> conftest.$ac_ext'++	  cat <<_LT_EOF >> conftest.$ac_ext++/* The mapping between symbol names and symbols.  */+LT_DLSYM_CONST struct {+  const char *name;+  void       *address;+}+lt__PROGRAM__LTX_preloaded_symbols[] =+{+  { "@PROGRAM@", (void *) 0 },+_LT_EOF+	  $SED "s/^$symcode$symcode* .* \(.*\)$/  {\"\1\", (void *) \&\1},/" < "$nlist" | $GREP -v main >> conftest.$ac_ext+	  cat <<\_LT_EOF >> conftest.$ac_ext+  {0, (void *) 0}+};++/* This works around a problem in FreeBSD linker */+#ifdef FREEBSD_WORKAROUND+static const void *lt_preloaded_setup() {+  return lt__PROGRAM__LTX_preloaded_symbols;+}+#endif++#ifdef __cplusplus+}+#endif+_LT_EOF+	  # Now try linking the two files.+	  mv conftest.$ac_objext conftstm.$ac_objext+	  lt_globsym_save_LIBS=$LIBS+	  lt_globsym_save_CFLAGS=$CFLAGS+	  LIBS=conftstm.$ac_objext+	  CFLAGS="$CFLAGS$lt_prog_compiler_no_builtin_flag"+	  if { { eval echo "\"\$as_me\":${as_lineno-$LINENO}: \"$ac_link\""; } >&5+  (eval $ac_link) 2>&5+  ac_status=$?+  $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5+  test $ac_status = 0; } && test -s conftest$ac_exeext; then+	    pipe_works=yes+	  fi+	  LIBS=$lt_globsym_save_LIBS+	  CFLAGS=$lt_globsym_save_CFLAGS+	else+	  echo "cannot find nm_test_func in $nlist" >&5+	fi+      else+	echo "cannot find nm_test_var in $nlist" >&5+      fi+    else+      echo "cannot run $lt_cv_sys_global_symbol_pipe" >&5+    fi+  else+    echo "$progname: failed program was:" >&5+    cat conftest.$ac_ext >&5+  fi+  rm -rf conftest* conftst*++  # Do not use the global_symbol_pipe unless it works.+  if test yes = "$pipe_works"; then+    break+  else+    lt_cv_sys_global_symbol_pipe=+  fi+done++fi++if test -z "$lt_cv_sys_global_symbol_pipe"; then+  lt_cv_sys_global_symbol_to_cdecl=+fi+if test -z "$lt_cv_sys_global_symbol_pipe$lt_cv_sys_global_symbol_to_cdecl"; then+  { $as_echo "$as_me:${as_lineno-$LINENO}: result: failed" >&5+$as_echo "failed" >&6; }+else+  { $as_echo "$as_me:${as_lineno-$LINENO}: result: ok" >&5+$as_echo "ok" >&6; }+fi++# Response file support.+if test "$lt_cv_nm_interface" = "MS dumpbin"; then+  nm_file_list_spec='@'+elif $NM --help 2>/dev/null | grep '[@]FILE' >/dev/null; then+  nm_file_list_spec='@'+fi++++++++++++++++++++++++++++++++++++++{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for sysroot" >&5+$as_echo_n "checking for sysroot... " >&6; }++# Check whether --with-sysroot was given.+if test "${with_sysroot+set}" = set; then :+  withval=$with_sysroot;+else+  with_sysroot=no+fi+++lt_sysroot=+case $with_sysroot in #(+ yes)+   if test yes = "$GCC"; then+     lt_sysroot=`$CC --print-sysroot 2>/dev/null`+   fi+   ;; #(+ /*)+   lt_sysroot=`echo "$with_sysroot" | $SED -e "$sed_quote_subst"`+   ;; #(+ no|'')+   ;; #(+ *)+   { $as_echo "$as_me:${as_lineno-$LINENO}: result: $with_sysroot" >&5+$as_echo "$with_sysroot" >&6; }+   as_fn_error $? "The sysroot must be an absolute path." "$LINENO" 5+   ;;+esac++ { $as_echo "$as_me:${as_lineno-$LINENO}: result: ${lt_sysroot:-no}" >&5+$as_echo "${lt_sysroot:-no}" >&6; }++++++{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for a working dd" >&5+$as_echo_n "checking for a working dd... " >&6; }+if ${ac_cv_path_lt_DD+:} false; then :+  $as_echo_n "(cached) " >&6+else+  printf 0123456789abcdef0123456789abcdef >conftest.i+cat conftest.i conftest.i >conftest2.i+: ${lt_DD:=$DD}+if test -z "$lt_DD"; then+  ac_path_lt_DD_found=false+  # Loop through the user's path and test for each of PROGNAME-LIST+  as_save_IFS=$IFS; IFS=$PATH_SEPARATOR+for as_dir in $PATH+do+  IFS=$as_save_IFS+  test -z "$as_dir" && as_dir=.+    for ac_prog in dd; do+    for ac_exec_ext in '' $ac_executable_extensions; do+      ac_path_lt_DD="$as_dir/$ac_prog$ac_exec_ext"+      as_fn_executable_p "$ac_path_lt_DD" || continue+if "$ac_path_lt_DD" bs=32 count=1 <conftest2.i >conftest.out 2>/dev/null; then+  cmp -s conftest.i conftest.out \+  && ac_cv_path_lt_DD="$ac_path_lt_DD" ac_path_lt_DD_found=:+fi+      $ac_path_lt_DD_found && break 3+    done+  done+  done+IFS=$as_save_IFS+  if test -z "$ac_cv_path_lt_DD"; then+    :+  fi+else+  ac_cv_path_lt_DD=$lt_DD+fi++rm -f conftest.i conftest2.i conftest.out+fi+{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_path_lt_DD" >&5+$as_echo "$ac_cv_path_lt_DD" >&6; }+++{ $as_echo "$as_me:${as_lineno-$LINENO}: checking how to truncate binary pipes" >&5+$as_echo_n "checking how to truncate binary pipes... " >&6; }+if ${lt_cv_truncate_bin+:} false; then :+  $as_echo_n "(cached) " >&6+else+  printf 0123456789abcdef0123456789abcdef >conftest.i+cat conftest.i conftest.i >conftest2.i+lt_cv_truncate_bin=+if "$ac_cv_path_lt_DD" bs=32 count=1 <conftest2.i >conftest.out 2>/dev/null; then+  cmp -s conftest.i conftest.out \+  && lt_cv_truncate_bin="$ac_cv_path_lt_DD bs=4096 count=1"+fi+rm -f conftest.i conftest2.i conftest.out+test -z "$lt_cv_truncate_bin" && lt_cv_truncate_bin="$SED -e 4q"+fi+{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_cv_truncate_bin" >&5+$as_echo "$lt_cv_truncate_bin" >&6; }++++++++# Calculate cc_basename.  Skip known compiler wrappers and cross-prefix.+func_cc_basename ()+{+    for cc_temp in $*""; do+      case $cc_temp in+        compile | *[\\/]compile | ccache | *[\\/]ccache ) ;;+        distcc | *[\\/]distcc | purify | *[\\/]purify ) ;;+        \-*) ;;+        *) break;;+      esac+    done+    func_cc_basename_result=`$ECHO "$cc_temp" | $SED "s%.*/%%; s%^$host_alias-%%"`+}++# Check whether --enable-libtool-lock was given.+if test "${enable_libtool_lock+set}" = set; then :+  enableval=$enable_libtool_lock;+fi++test no = "$enable_libtool_lock" || enable_libtool_lock=yes++# Some flags need to be propagated to the compiler or linker for good+# libtool support.+case $host in+ia64-*-hpux*)+  # Find out what ABI is being produced by ac_compile, and set mode+  # options accordingly.+  echo 'int i;' > conftest.$ac_ext+  if { { eval echo "\"\$as_me\":${as_lineno-$LINENO}: \"$ac_compile\""; } >&5+  (eval $ac_compile) 2>&5+  ac_status=$?+  $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5+  test $ac_status = 0; }; then+    case `$FILECMD conftest.$ac_objext` in+      *ELF-32*)+	HPUX_IA64_MODE=32+	;;+      *ELF-64*)+	HPUX_IA64_MODE=64+	;;+    esac+  fi+  rm -rf conftest*+  ;;+*-*-irix6*)+  # Find out what ABI is being produced by ac_compile, and set linker+  # options accordingly.+  echo '#line '$LINENO' "configure"' > conftest.$ac_ext+  if { { eval echo "\"\$as_me\":${as_lineno-$LINENO}: \"$ac_compile\""; } >&5+  (eval $ac_compile) 2>&5+  ac_status=$?+  $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5+  test $ac_status = 0; }; then+    if test yes = "$lt_cv_prog_gnu_ld"; then+      case `$FILECMD conftest.$ac_objext` in+	*32-bit*)+	  LD="${LD-ld} -melf32bsmip"+	  ;;+	*N32*)+	  LD="${LD-ld} -melf32bmipn32"+	  ;;+	*64-bit*)+	  LD="${LD-ld} -melf64bmip"+	;;+      esac+    else+      case `$FILECMD conftest.$ac_objext` in+	*32-bit*)+	  LD="${LD-ld} -32"+	  ;;+	*N32*)+	  LD="${LD-ld} -n32"+	  ;;+	*64-bit*)+	  LD="${LD-ld} -64"+	  ;;+      esac+    fi+  fi+  rm -rf conftest*+  ;;++mips64*-*linux*)+  # Find out what ABI is being produced by ac_compile, and set linker+  # options accordingly.+  echo '#line '$LINENO' "configure"' > conftest.$ac_ext+  if { { eval echo "\"\$as_me\":${as_lineno-$LINENO}: \"$ac_compile\""; } >&5+  (eval $ac_compile) 2>&5+  ac_status=$?+  $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5+  test $ac_status = 0; }; then+    emul=elf+    case `$FILECMD conftest.$ac_objext` in+      *32-bit*)+	emul="${emul}32"+	;;+      *64-bit*)+	emul="${emul}64"+	;;+    esac+    case `$FILECMD conftest.$ac_objext` in+      *MSB*)+	emul="${emul}btsmip"+	;;+      *LSB*)+	emul="${emul}ltsmip"+	;;+    esac+    case `$FILECMD conftest.$ac_objext` in+      *N32*)+	emul="${emul}n32"+	;;+    esac+    LD="${LD-ld} -m $emul"+  fi+  rm -rf conftest*+  ;;++x86_64-*kfreebsd*-gnu|x86_64-*linux*|powerpc*-*linux*| \+s390*-*linux*|s390*-*tpf*|sparc*-*linux*)+  # Find out what ABI is being produced by ac_compile, and set linker+  # options accordingly.  Note that the listed cases only cover the+  # situations where additional linker options are needed (such as when+  # doing 32-bit compilation for a host where ld defaults to 64-bit, or+  # vice versa); the common cases where no linker options are needed do+  # not appear in the list.+  echo 'int i;' > conftest.$ac_ext+  if { { eval echo "\"\$as_me\":${as_lineno-$LINENO}: \"$ac_compile\""; } >&5+  (eval $ac_compile) 2>&5+  ac_status=$?+  $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5+  test $ac_status = 0; }; then+    case `$FILECMD conftest.o` in+      *32-bit*)+	case $host in+	  x86_64-*kfreebsd*-gnu)+	    LD="${LD-ld} -m elf_i386_fbsd"+	    ;;+	  x86_64-*linux*)+	    case `$FILECMD conftest.o` in+	      *x86-64*)+		LD="${LD-ld} -m elf32_x86_64"+		;;+	      *)+		LD="${LD-ld} -m elf_i386"+		;;+	    esac+	    ;;+	  powerpc64le-*linux*)+	    LD="${LD-ld} -m elf32lppclinux"+	    ;;+	  powerpc64-*linux*)+	    LD="${LD-ld} -m elf32ppclinux"+	    ;;+	  s390x-*linux*)+	    LD="${LD-ld} -m elf_s390"+	    ;;+	  sparc64-*linux*)+	    LD="${LD-ld} -m elf32_sparc"+	    ;;+	esac+	;;+      *64-bit*)+	case $host in+	  x86_64-*kfreebsd*-gnu)+	    LD="${LD-ld} -m elf_x86_64_fbsd"+	    ;;+	  x86_64-*linux*)+	    LD="${LD-ld} -m elf_x86_64"+	    ;;+	  powerpcle-*linux*)+	    LD="${LD-ld} -m elf64lppc"+	    ;;+	  powerpc-*linux*)+	    LD="${LD-ld} -m elf64ppc"+	    ;;+	  s390*-*linux*|s390*-*tpf*)+	    LD="${LD-ld} -m elf64_s390"+	    ;;+	  sparc*-*linux*)+	    LD="${LD-ld} -m elf64_sparc"+	    ;;+	esac+	;;+    esac+  fi+  rm -rf conftest*+  ;;++*-*-sco3.2v5*)+  # On SCO OpenServer 5, we need -belf to get full-featured binaries.+  SAVE_CFLAGS=$CFLAGS+  CFLAGS="$CFLAGS -belf"+  { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether the C compiler needs -belf" >&5+$as_echo_n "checking whether the C compiler needs -belf... " >&6; }+if ${lt_cv_cc_needs_belf+:} false; then :+  $as_echo_n "(cached) " >&6+else+  ac_ext=c+ac_cpp='$CPP $CPPFLAGS'+ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5'+ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5'+ac_compiler_gnu=$ac_cv_c_compiler_gnu++     cat confdefs.h - <<_ACEOF >conftest.$ac_ext+/* end confdefs.h.  */++int+main ()+{++  ;+  return 0;+}+_ACEOF+if ac_fn_c_try_link "$LINENO"; then :+  lt_cv_cc_needs_belf=yes+else+  lt_cv_cc_needs_belf=no+fi+rm -f core conftest.err conftest.$ac_objext \+    conftest$ac_exeext conftest.$ac_ext+     ac_ext=c+ac_cpp='$CPP $CPPFLAGS'+ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5'+ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5'+ac_compiler_gnu=$ac_cv_c_compiler_gnu++fi+{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_cv_cc_needs_belf" >&5+$as_echo "$lt_cv_cc_needs_belf" >&6; }+  if test yes != "$lt_cv_cc_needs_belf"; then+    # this is probably gcc 2.8.0, egcs 1.0 or newer; no need for -belf+    CFLAGS=$SAVE_CFLAGS+  fi+  ;;+*-*solaris*)+  # Find out what ABI is being produced by ac_compile, and set linker+  # options accordingly.+  echo 'int i;' > conftest.$ac_ext+  if { { eval echo "\"\$as_me\":${as_lineno-$LINENO}: \"$ac_compile\""; } >&5+  (eval $ac_compile) 2>&5+  ac_status=$?+  $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5+  test $ac_status = 0; }; then+    case `$FILECMD conftest.o` in+    *64-bit*)+      case $lt_cv_prog_gnu_ld in+      yes*)+        case $host in+        i?86-*-solaris*|x86_64-*-solaris*)+          LD="${LD-ld} -m elf_x86_64"+          ;;+        sparc*-*-solaris*)+          LD="${LD-ld} -m elf64_sparc"+          ;;+        esac+        # GNU ld 2.21 introduced _sol2 emulations.  Use them if available.+        if ${LD-ld} -V | grep _sol2 >/dev/null 2>&1; then+          LD=${LD-ld}_sol2+        fi+        ;;+      *)+	if ${LD-ld} -64 -r -o conftest2.o conftest.o >/dev/null 2>&1; then+	  LD="${LD-ld} -64"+	fi+	;;+      esac+      ;;+    esac+  fi+  rm -rf conftest*+  ;;+esac++need_locks=$enable_libtool_lock++if test -n "$ac_tool_prefix"; then+  # Extract the first word of "${ac_tool_prefix}mt", so it can be a program name with args.+set dummy ${ac_tool_prefix}mt; ac_word=$2+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5+$as_echo_n "checking for $ac_word... " >&6; }+if ${ac_cv_prog_MANIFEST_TOOL+:} false; then :+  $as_echo_n "(cached) " >&6+else+  if test -n "$MANIFEST_TOOL"; then+  ac_cv_prog_MANIFEST_TOOL="$MANIFEST_TOOL" # Let the user override the test.+else+as_save_IFS=$IFS; IFS=$PATH_SEPARATOR+for as_dir in $PATH+do+  IFS=$as_save_IFS+  test -z "$as_dir" && as_dir=.+    for ac_exec_ext in '' $ac_executable_extensions; do+  if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then+    ac_cv_prog_MANIFEST_TOOL="${ac_tool_prefix}mt"+    $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5+    break 2+  fi+done+  done+IFS=$as_save_IFS++fi+fi+MANIFEST_TOOL=$ac_cv_prog_MANIFEST_TOOL+if test -n "$MANIFEST_TOOL"; then+  { $as_echo "$as_me:${as_lineno-$LINENO}: result: $MANIFEST_TOOL" >&5+$as_echo "$MANIFEST_TOOL" >&6; }+else+  { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5+$as_echo "no" >&6; }+fi+++fi+if test -z "$ac_cv_prog_MANIFEST_TOOL"; then+  ac_ct_MANIFEST_TOOL=$MANIFEST_TOOL+  # Extract the first word of "mt", so it can be a program name with args.+set dummy mt; ac_word=$2+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5+$as_echo_n "checking for $ac_word... " >&6; }+if ${ac_cv_prog_ac_ct_MANIFEST_TOOL+:} false; then :+  $as_echo_n "(cached) " >&6+else+  if test -n "$ac_ct_MANIFEST_TOOL"; then+  ac_cv_prog_ac_ct_MANIFEST_TOOL="$ac_ct_MANIFEST_TOOL" # Let the user override the test.+else+as_save_IFS=$IFS; IFS=$PATH_SEPARATOR+for as_dir in $PATH+do+  IFS=$as_save_IFS+  test -z "$as_dir" && as_dir=.+    for ac_exec_ext in '' $ac_executable_extensions; do+  if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then+    ac_cv_prog_ac_ct_MANIFEST_TOOL="mt"+    $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5+    break 2+  fi+done+  done+IFS=$as_save_IFS++fi+fi+ac_ct_MANIFEST_TOOL=$ac_cv_prog_ac_ct_MANIFEST_TOOL+if test -n "$ac_ct_MANIFEST_TOOL"; then+  { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_ct_MANIFEST_TOOL" >&5+$as_echo "$ac_ct_MANIFEST_TOOL" >&6; }+else+  { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5+$as_echo "no" >&6; }+fi++  if test "x$ac_ct_MANIFEST_TOOL" = x; then+    MANIFEST_TOOL=":"+  else+    case $cross_compiling:$ac_tool_warned in+yes:)+{ $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: using cross tools not prefixed with host triplet" >&5+$as_echo "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;}+ac_tool_warned=yes ;;+esac+    MANIFEST_TOOL=$ac_ct_MANIFEST_TOOL+  fi+else+  MANIFEST_TOOL="$ac_cv_prog_MANIFEST_TOOL"+fi++test -z "$MANIFEST_TOOL" && MANIFEST_TOOL=mt+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking if $MANIFEST_TOOL is a manifest tool" >&5+$as_echo_n "checking if $MANIFEST_TOOL is a manifest tool... " >&6; }+if ${lt_cv_path_mainfest_tool+:} false; then :+  $as_echo_n "(cached) " >&6+else+  lt_cv_path_mainfest_tool=no+  echo "$as_me:$LINENO: $MANIFEST_TOOL '-?'" >&5+  $MANIFEST_TOOL '-?' 2>conftest.err > conftest.out+  cat conftest.err >&5+  if $GREP 'Manifest Tool' conftest.out > /dev/null; then+    lt_cv_path_mainfest_tool=yes+  fi+  rm -f conftest*+fi+{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_cv_path_mainfest_tool" >&5+$as_echo "$lt_cv_path_mainfest_tool" >&6; }+if test yes != "$lt_cv_path_mainfest_tool"; then+  MANIFEST_TOOL=:+fi+++++++  case $host_os in+    rhapsody* | darwin*)+    if test -n "$ac_tool_prefix"; then+  # Extract the first word of "${ac_tool_prefix}dsymutil", so it can be a program name with args.+set dummy ${ac_tool_prefix}dsymutil; ac_word=$2+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5+$as_echo_n "checking for $ac_word... " >&6; }+if ${ac_cv_prog_DSYMUTIL+:} false; then :+  $as_echo_n "(cached) " >&6+else+  if test -n "$DSYMUTIL"; then+  ac_cv_prog_DSYMUTIL="$DSYMUTIL" # Let the user override the test.+else+as_save_IFS=$IFS; IFS=$PATH_SEPARATOR+for as_dir in $PATH+do+  IFS=$as_save_IFS+  test -z "$as_dir" && as_dir=.+    for ac_exec_ext in '' $ac_executable_extensions; do+  if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then+    ac_cv_prog_DSYMUTIL="${ac_tool_prefix}dsymutil"+    $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5+    break 2+  fi+done+  done+IFS=$as_save_IFS++fi+fi+DSYMUTIL=$ac_cv_prog_DSYMUTIL+if test -n "$DSYMUTIL"; then+  { $as_echo "$as_me:${as_lineno-$LINENO}: result: $DSYMUTIL" >&5+$as_echo "$DSYMUTIL" >&6; }+else+  { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5+$as_echo "no" >&6; }+fi+++fi+if test -z "$ac_cv_prog_DSYMUTIL"; then+  ac_ct_DSYMUTIL=$DSYMUTIL+  # Extract the first word of "dsymutil", so it can be a program name with args.+set dummy dsymutil; ac_word=$2+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5+$as_echo_n "checking for $ac_word... " >&6; }+if ${ac_cv_prog_ac_ct_DSYMUTIL+:} false; then :+  $as_echo_n "(cached) " >&6+else+  if test -n "$ac_ct_DSYMUTIL"; then+  ac_cv_prog_ac_ct_DSYMUTIL="$ac_ct_DSYMUTIL" # Let the user override the test.+else+as_save_IFS=$IFS; IFS=$PATH_SEPARATOR+for as_dir in $PATH+do+  IFS=$as_save_IFS+  test -z "$as_dir" && as_dir=.+    for ac_exec_ext in '' $ac_executable_extensions; do+  if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then+    ac_cv_prog_ac_ct_DSYMUTIL="dsymutil"+    $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5+    break 2+  fi+done+  done+IFS=$as_save_IFS++fi+fi+ac_ct_DSYMUTIL=$ac_cv_prog_ac_ct_DSYMUTIL+if test -n "$ac_ct_DSYMUTIL"; then+  { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_ct_DSYMUTIL" >&5+$as_echo "$ac_ct_DSYMUTIL" >&6; }+else+  { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5+$as_echo "no" >&6; }+fi++  if test "x$ac_ct_DSYMUTIL" = x; then+    DSYMUTIL=":"+  else+    case $cross_compiling:$ac_tool_warned in+yes:)+{ $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: using cross tools not prefixed with host triplet" >&5+$as_echo "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;}+ac_tool_warned=yes ;;+esac+    DSYMUTIL=$ac_ct_DSYMUTIL+  fi+else+  DSYMUTIL="$ac_cv_prog_DSYMUTIL"+fi++    if test -n "$ac_tool_prefix"; then+  # Extract the first word of "${ac_tool_prefix}nmedit", so it can be a program name with args.+set dummy ${ac_tool_prefix}nmedit; ac_word=$2+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5+$as_echo_n "checking for $ac_word... " >&6; }+if ${ac_cv_prog_NMEDIT+:} false; then :+  $as_echo_n "(cached) " >&6+else+  if test -n "$NMEDIT"; then+  ac_cv_prog_NMEDIT="$NMEDIT" # Let the user override the test.+else+as_save_IFS=$IFS; IFS=$PATH_SEPARATOR+for as_dir in $PATH+do+  IFS=$as_save_IFS+  test -z "$as_dir" && as_dir=.+    for ac_exec_ext in '' $ac_executable_extensions; do+  if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then+    ac_cv_prog_NMEDIT="${ac_tool_prefix}nmedit"+    $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5+    break 2+  fi+done+  done+IFS=$as_save_IFS++fi+fi+NMEDIT=$ac_cv_prog_NMEDIT+if test -n "$NMEDIT"; then+  { $as_echo "$as_me:${as_lineno-$LINENO}: result: $NMEDIT" >&5+$as_echo "$NMEDIT" >&6; }+else+  { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5+$as_echo "no" >&6; }+fi+++fi+if test -z "$ac_cv_prog_NMEDIT"; then+  ac_ct_NMEDIT=$NMEDIT+  # Extract the first word of "nmedit", so it can be a program name with args.+set dummy nmedit; ac_word=$2+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5+$as_echo_n "checking for $ac_word... " >&6; }+if ${ac_cv_prog_ac_ct_NMEDIT+:} false; then :+  $as_echo_n "(cached) " >&6+else+  if test -n "$ac_ct_NMEDIT"; then+  ac_cv_prog_ac_ct_NMEDIT="$ac_ct_NMEDIT" # Let the user override the test.+else+as_save_IFS=$IFS; IFS=$PATH_SEPARATOR+for as_dir in $PATH+do+  IFS=$as_save_IFS+  test -z "$as_dir" && as_dir=.+    for ac_exec_ext in '' $ac_executable_extensions; do+  if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then+    ac_cv_prog_ac_ct_NMEDIT="nmedit"+    $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5+    break 2+  fi+done+  done+IFS=$as_save_IFS++fi+fi+ac_ct_NMEDIT=$ac_cv_prog_ac_ct_NMEDIT+if test -n "$ac_ct_NMEDIT"; then+  { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_ct_NMEDIT" >&5+$as_echo "$ac_ct_NMEDIT" >&6; }+else+  { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5+$as_echo "no" >&6; }+fi++  if test "x$ac_ct_NMEDIT" = x; then+    NMEDIT=":"+  else+    case $cross_compiling:$ac_tool_warned in+yes:)+{ $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: using cross tools not prefixed with host triplet" >&5+$as_echo "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;}+ac_tool_warned=yes ;;+esac+    NMEDIT=$ac_ct_NMEDIT+  fi+else+  NMEDIT="$ac_cv_prog_NMEDIT"+fi++    if test -n "$ac_tool_prefix"; then+  # Extract the first word of "${ac_tool_prefix}lipo", so it can be a program name with args.+set dummy ${ac_tool_prefix}lipo; ac_word=$2+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5+$as_echo_n "checking for $ac_word... " >&6; }+if ${ac_cv_prog_LIPO+:} false; then :+  $as_echo_n "(cached) " >&6+else+  if test -n "$LIPO"; then+  ac_cv_prog_LIPO="$LIPO" # Let the user override the test.+else+as_save_IFS=$IFS; IFS=$PATH_SEPARATOR+for as_dir in $PATH+do+  IFS=$as_save_IFS+  test -z "$as_dir" && as_dir=.+    for ac_exec_ext in '' $ac_executable_extensions; do+  if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then+    ac_cv_prog_LIPO="${ac_tool_prefix}lipo"+    $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5+    break 2+  fi+done+  done+IFS=$as_save_IFS++fi+fi+LIPO=$ac_cv_prog_LIPO+if test -n "$LIPO"; then+  { $as_echo "$as_me:${as_lineno-$LINENO}: result: $LIPO" >&5+$as_echo "$LIPO" >&6; }+else+  { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5+$as_echo "no" >&6; }+fi+++fi+if test -z "$ac_cv_prog_LIPO"; then+  ac_ct_LIPO=$LIPO+  # Extract the first word of "lipo", so it can be a program name with args.+set dummy lipo; ac_word=$2+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5+$as_echo_n "checking for $ac_word... " >&6; }+if ${ac_cv_prog_ac_ct_LIPO+:} false; then :+  $as_echo_n "(cached) " >&6+else+  if test -n "$ac_ct_LIPO"; then+  ac_cv_prog_ac_ct_LIPO="$ac_ct_LIPO" # Let the user override the test.+else+as_save_IFS=$IFS; IFS=$PATH_SEPARATOR+for as_dir in $PATH+do+  IFS=$as_save_IFS+  test -z "$as_dir" && as_dir=.+    for ac_exec_ext in '' $ac_executable_extensions; do+  if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then+    ac_cv_prog_ac_ct_LIPO="lipo"+    $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5+    break 2+  fi+done+  done+IFS=$as_save_IFS++fi+fi+ac_ct_LIPO=$ac_cv_prog_ac_ct_LIPO+if test -n "$ac_ct_LIPO"; then+  { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_ct_LIPO" >&5+$as_echo "$ac_ct_LIPO" >&6; }+else+  { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5+$as_echo "no" >&6; }+fi++  if test "x$ac_ct_LIPO" = x; then+    LIPO=":"+  else+    case $cross_compiling:$ac_tool_warned in+yes:)+{ $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: using cross tools not prefixed with host triplet" >&5+$as_echo "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;}+ac_tool_warned=yes ;;+esac+    LIPO=$ac_ct_LIPO+  fi+else+  LIPO="$ac_cv_prog_LIPO"+fi++    if test -n "$ac_tool_prefix"; then+  # Extract the first word of "${ac_tool_prefix}otool", so it can be a program name with args.+set dummy ${ac_tool_prefix}otool; ac_word=$2+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5+$as_echo_n "checking for $ac_word... " >&6; }+if ${ac_cv_prog_OTOOL+:} false; then :+  $as_echo_n "(cached) " >&6+else+  if test -n "$OTOOL"; then+  ac_cv_prog_OTOOL="$OTOOL" # Let the user override the test.+else+as_save_IFS=$IFS; IFS=$PATH_SEPARATOR+for as_dir in $PATH+do+  IFS=$as_save_IFS+  test -z "$as_dir" && as_dir=.+    for ac_exec_ext in '' $ac_executable_extensions; do+  if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then+    ac_cv_prog_OTOOL="${ac_tool_prefix}otool"+    $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5+    break 2+  fi+done+  done+IFS=$as_save_IFS++fi+fi+OTOOL=$ac_cv_prog_OTOOL+if test -n "$OTOOL"; then+  { $as_echo "$as_me:${as_lineno-$LINENO}: result: $OTOOL" >&5+$as_echo "$OTOOL" >&6; }+else+  { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5+$as_echo "no" >&6; }+fi+++fi+if test -z "$ac_cv_prog_OTOOL"; then+  ac_ct_OTOOL=$OTOOL+  # Extract the first word of "otool", so it can be a program name with args.+set dummy otool; ac_word=$2+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5+$as_echo_n "checking for $ac_word... " >&6; }+if ${ac_cv_prog_ac_ct_OTOOL+:} false; then :+  $as_echo_n "(cached) " >&6+else+  if test -n "$ac_ct_OTOOL"; then+  ac_cv_prog_ac_ct_OTOOL="$ac_ct_OTOOL" # Let the user override the test.+else+as_save_IFS=$IFS; IFS=$PATH_SEPARATOR+for as_dir in $PATH+do+  IFS=$as_save_IFS+  test -z "$as_dir" && as_dir=.+    for ac_exec_ext in '' $ac_executable_extensions; do+  if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then+    ac_cv_prog_ac_ct_OTOOL="otool"+    $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5+    break 2+  fi+done+  done+IFS=$as_save_IFS++fi+fi+ac_ct_OTOOL=$ac_cv_prog_ac_ct_OTOOL+if test -n "$ac_ct_OTOOL"; then+  { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_ct_OTOOL" >&5+$as_echo "$ac_ct_OTOOL" >&6; }+else+  { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5+$as_echo "no" >&6; }+fi++  if test "x$ac_ct_OTOOL" = x; then+    OTOOL=":"+  else+    case $cross_compiling:$ac_tool_warned in+yes:)+{ $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: using cross tools not prefixed with host triplet" >&5+$as_echo "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;}+ac_tool_warned=yes ;;+esac+    OTOOL=$ac_ct_OTOOL+  fi+else+  OTOOL="$ac_cv_prog_OTOOL"+fi++    if test -n "$ac_tool_prefix"; then+  # Extract the first word of "${ac_tool_prefix}otool64", so it can be a program name with args.+set dummy ${ac_tool_prefix}otool64; ac_word=$2+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5+$as_echo_n "checking for $ac_word... " >&6; }+if ${ac_cv_prog_OTOOL64+:} false; then :+  $as_echo_n "(cached) " >&6+else+  if test -n "$OTOOL64"; then+  ac_cv_prog_OTOOL64="$OTOOL64" # Let the user override the test.+else+as_save_IFS=$IFS; IFS=$PATH_SEPARATOR+for as_dir in $PATH+do+  IFS=$as_save_IFS+  test -z "$as_dir" && as_dir=.+    for ac_exec_ext in '' $ac_executable_extensions; do+  if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then+    ac_cv_prog_OTOOL64="${ac_tool_prefix}otool64"+    $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5+    break 2+  fi+done+  done+IFS=$as_save_IFS++fi+fi+OTOOL64=$ac_cv_prog_OTOOL64+if test -n "$OTOOL64"; then+  { $as_echo "$as_me:${as_lineno-$LINENO}: result: $OTOOL64" >&5+$as_echo "$OTOOL64" >&6; }+else+  { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5+$as_echo "no" >&6; }+fi+++fi+if test -z "$ac_cv_prog_OTOOL64"; then+  ac_ct_OTOOL64=$OTOOL64+  # Extract the first word of "otool64", so it can be a program name with args.+set dummy otool64; ac_word=$2+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5+$as_echo_n "checking for $ac_word... " >&6; }+if ${ac_cv_prog_ac_ct_OTOOL64+:} false; then :+  $as_echo_n "(cached) " >&6+else+  if test -n "$ac_ct_OTOOL64"; then+  ac_cv_prog_ac_ct_OTOOL64="$ac_ct_OTOOL64" # Let the user override the test.+else+as_save_IFS=$IFS; IFS=$PATH_SEPARATOR+for as_dir in $PATH+do+  IFS=$as_save_IFS+  test -z "$as_dir" && as_dir=.+    for ac_exec_ext in '' $ac_executable_extensions; do+  if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then+    ac_cv_prog_ac_ct_OTOOL64="otool64"+    $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5+    break 2+  fi+done+  done+IFS=$as_save_IFS++fi+fi+ac_ct_OTOOL64=$ac_cv_prog_ac_ct_OTOOL64+if test -n "$ac_ct_OTOOL64"; then+  { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_ct_OTOOL64" >&5+$as_echo "$ac_ct_OTOOL64" >&6; }+else+  { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5+$as_echo "no" >&6; }+fi++  if test "x$ac_ct_OTOOL64" = x; then+    OTOOL64=":"+  else+    case $cross_compiling:$ac_tool_warned in+yes:)+{ $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: using cross tools not prefixed with host triplet" >&5+$as_echo "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;}+ac_tool_warned=yes ;;+esac+    OTOOL64=$ac_ct_OTOOL64+  fi+else+  OTOOL64="$ac_cv_prog_OTOOL64"+fi++++++++++++++++++++++++++++    { $as_echo "$as_me:${as_lineno-$LINENO}: checking for -single_module linker flag" >&5+$as_echo_n "checking for -single_module linker flag... " >&6; }+if ${lt_cv_apple_cc_single_mod+:} false; then :+  $as_echo_n "(cached) " >&6+else+  lt_cv_apple_cc_single_mod=no+      if test -z "$LT_MULTI_MODULE"; then+	# By default we will add the -single_module flag. You can override+	# by either setting the environment variable LT_MULTI_MODULE+	# non-empty at configure time, or by adding -multi_module to the+	# link flags.+	rm -rf libconftest.dylib*+	echo "int foo(void){return 1;}" > conftest.c+	echo "$LTCC $LTCFLAGS $LDFLAGS -o libconftest.dylib \+-dynamiclib -Wl,-single_module conftest.c" >&5+	$LTCC $LTCFLAGS $LDFLAGS -o libconftest.dylib \+	  -dynamiclib -Wl,-single_module conftest.c 2>conftest.err+        _lt_result=$?+	# If there is a non-empty error log, and "single_module"+	# appears in it, assume the flag caused a linker warning+        if test -s conftest.err && $GREP single_module conftest.err; then+	  cat conftest.err >&5+	# Otherwise, if the output was created with a 0 exit code from+	# the compiler, it worked.+	elif test -f libconftest.dylib && test 0 = "$_lt_result"; then+	  lt_cv_apple_cc_single_mod=yes+	else+	  cat conftest.err >&5+	fi+	rm -rf libconftest.dylib*+	rm -f conftest.*+      fi+fi+{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_cv_apple_cc_single_mod" >&5+$as_echo "$lt_cv_apple_cc_single_mod" >&6; }++    { $as_echo "$as_me:${as_lineno-$LINENO}: checking for -exported_symbols_list linker flag" >&5+$as_echo_n "checking for -exported_symbols_list linker flag... " >&6; }+if ${lt_cv_ld_exported_symbols_list+:} false; then :+  $as_echo_n "(cached) " >&6+else+  lt_cv_ld_exported_symbols_list=no+      save_LDFLAGS=$LDFLAGS+      echo "_main" > conftest.sym+      LDFLAGS="$LDFLAGS -Wl,-exported_symbols_list,conftest.sym"+      cat confdefs.h - <<_ACEOF >conftest.$ac_ext+/* end confdefs.h.  */++int+main ()+{++  ;+  return 0;+}+_ACEOF+if ac_fn_c_try_link "$LINENO"; then :+  lt_cv_ld_exported_symbols_list=yes+else+  lt_cv_ld_exported_symbols_list=no+fi+rm -f core conftest.err conftest.$ac_objext \+    conftest$ac_exeext conftest.$ac_ext+	LDFLAGS=$save_LDFLAGS++fi+{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_cv_ld_exported_symbols_list" >&5+$as_echo "$lt_cv_ld_exported_symbols_list" >&6; }++    { $as_echo "$as_me:${as_lineno-$LINENO}: checking for -force_load linker flag" >&5+$as_echo_n "checking for -force_load linker flag... " >&6; }+if ${lt_cv_ld_force_load+:} false; then :+  $as_echo_n "(cached) " >&6+else+  lt_cv_ld_force_load=no+      cat > conftest.c << _LT_EOF+int forced_loaded() { return 2;}+_LT_EOF+      echo "$LTCC $LTCFLAGS -c -o conftest.o conftest.c" >&5+      $LTCC $LTCFLAGS -c -o conftest.o conftest.c 2>&5+      echo "$AR $AR_FLAGS libconftest.a conftest.o" >&5+      $AR $AR_FLAGS libconftest.a conftest.o 2>&5+      echo "$RANLIB libconftest.a" >&5+      $RANLIB libconftest.a 2>&5+      cat > conftest.c << _LT_EOF+int main() { return 0;}+_LT_EOF+      echo "$LTCC $LTCFLAGS $LDFLAGS -o conftest conftest.c -Wl,-force_load,./libconftest.a" >&5+      $LTCC $LTCFLAGS $LDFLAGS -o conftest conftest.c -Wl,-force_load,./libconftest.a 2>conftest.err+      _lt_result=$?+      if test -s conftest.err && $GREP force_load conftest.err; then+	cat conftest.err >&5+      elif test -f conftest && test 0 = "$_lt_result" && $GREP forced_load conftest >/dev/null 2>&1; then+	lt_cv_ld_force_load=yes+      else+	cat conftest.err >&5+      fi+        rm -f conftest.err libconftest.a conftest conftest.c+        rm -rf conftest.dSYM++fi+{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_cv_ld_force_load" >&5+$as_echo "$lt_cv_ld_force_load" >&6; }+    case $host_os in+    rhapsody* | darwin1.[012])+      _lt_dar_allow_undefined='$wl-undefined ${wl}suppress' ;;+    darwin1.*)+      _lt_dar_allow_undefined='$wl-flat_namespace $wl-undefined ${wl}suppress' ;;+    darwin*)+      case $MACOSX_DEPLOYMENT_TARGET,$host in+        10.[012],*|,*powerpc*-darwin[5-8]*)+          _lt_dar_allow_undefined='$wl-flat_namespace $wl-undefined ${wl}suppress' ;;+        *)+          _lt_dar_allow_undefined='$wl-undefined ${wl}dynamic_lookup' ;;+      esac+    ;;+  esac+    if test yes = "$lt_cv_apple_cc_single_mod"; then+      _lt_dar_single_mod='$single_module'+    fi+    if test yes = "$lt_cv_ld_exported_symbols_list"; then+      _lt_dar_export_syms=' $wl-exported_symbols_list,$output_objdir/$libname-symbols.expsym'+    else+      _lt_dar_export_syms='~$NMEDIT -s $output_objdir/$libname-symbols.expsym $lib'+    fi+    if test : != "$DSYMUTIL" && test no = "$lt_cv_ld_force_load"; then+      _lt_dsymutil='~$DSYMUTIL $lib || :'+    else+      _lt_dsymutil=+    fi+    ;;+  esac++# func_munge_path_list VARIABLE PATH+# -----------------------------------+# VARIABLE is name of variable containing _space_ separated list of+# directories to be munged by the contents of PATH, which is string+# having a format:+# "DIR[:DIR]:"+#       string "DIR[ DIR]" will be prepended to VARIABLE+# ":DIR[:DIR]"+#       string "DIR[ DIR]" will be appended to VARIABLE+# "DIRP[:DIRP]::[DIRA:]DIRA"+#       string "DIRP[ DIRP]" will be prepended to VARIABLE and string+#       "DIRA[ DIRA]" will be appended to VARIABLE+# "DIR[:DIR]"+#       VARIABLE will be replaced by "DIR[ DIR]"+func_munge_path_list ()+{+    case x$2 in+    x)+        ;;+    *:)+        eval $1=\"`$ECHO $2 | $SED 's/:/ /g'` \$$1\"+        ;;+    x:*)+        eval $1=\"\$$1 `$ECHO $2 | $SED 's/:/ /g'`\"+        ;;+    *::*)+        eval $1=\"\$$1\ `$ECHO $2 | $SED -e 's/.*:://' -e 's/:/ /g'`\"+        eval $1=\"`$ECHO $2 | $SED -e 's/::.*//' -e 's/:/ /g'`\ \$$1\"+        ;;+    *)+        eval $1=\"`$ECHO $2 | $SED 's/:/ /g'`\"+        ;;+    esac+}++ac_ext=c+ac_cpp='$CPP $CPPFLAGS'+ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5'+ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5'+ac_compiler_gnu=$ac_cv_c_compiler_gnu+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking how to run the C preprocessor" >&5+$as_echo_n "checking how to run the C preprocessor... " >&6; }+# On Suns, sometimes $CPP names a directory.+if test -n "$CPP" && test -d "$CPP"; then+  CPP=+fi+if test -z "$CPP"; then+  if ${ac_cv_prog_CPP+:} false; then :+  $as_echo_n "(cached) " >&6+else+      # Double quotes because CPP needs to be expanded+    for CPP in "$CC -E" "$CC -E -traditional-cpp" "/lib/cpp"+    do+      ac_preproc_ok=false+for ac_c_preproc_warn_flag in '' yes+do+  # Use a header file that comes with gcc, so configuring glibc+  # with a fresh cross-compiler works.+  # Prefer <limits.h> to <assert.h> if __STDC__ is defined, since+  # <limits.h> exists even on freestanding compilers.+  # On the NeXT, cc -E runs the code through the compiler's parser,+  # not just through cpp. "Syntax error" is here to catch this case.+  cat confdefs.h - <<_ACEOF >conftest.$ac_ext+/* end confdefs.h.  */+#ifdef __STDC__+# include <limits.h>+#else+# include <assert.h>+#endif+		     Syntax error+_ACEOF+if ac_fn_c_try_cpp "$LINENO"; then :++else+  # Broken: fails on valid input.+continue+fi+rm -f conftest.err conftest.i conftest.$ac_ext++  # OK, works on sane cases.  Now check whether nonexistent headers+  # can be detected and how.+  cat confdefs.h - <<_ACEOF >conftest.$ac_ext+/* end confdefs.h.  */+#include <ac_nonexistent.h>+_ACEOF+if ac_fn_c_try_cpp "$LINENO"; then :+  # Broken: success on invalid input.+continue+else+  # Passes both tests.+ac_preproc_ok=:+break+fi+rm -f conftest.err conftest.i conftest.$ac_ext++done+# Because of `break', _AC_PREPROC_IFELSE's cleaning code was skipped.+rm -f conftest.i conftest.err conftest.$ac_ext+if $ac_preproc_ok; then :+  break+fi++    done+    ac_cv_prog_CPP=$CPP++fi+  CPP=$ac_cv_prog_CPP+else+  ac_cv_prog_CPP=$CPP+fi+{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $CPP" >&5+$as_echo "$CPP" >&6; }+ac_preproc_ok=false+for ac_c_preproc_warn_flag in '' yes+do+  # Use a header file that comes with gcc, so configuring glibc+  # with a fresh cross-compiler works.+  # Prefer <limits.h> to <assert.h> if __STDC__ is defined, since+  # <limits.h> exists even on freestanding compilers.+  # On the NeXT, cc -E runs the code through the compiler's parser,+  # not just through cpp. "Syntax error" is here to catch this case.+  cat confdefs.h - <<_ACEOF >conftest.$ac_ext+/* end confdefs.h.  */+#ifdef __STDC__+# include <limits.h>+#else+# include <assert.h>+#endif+		     Syntax error+_ACEOF+if ac_fn_c_try_cpp "$LINENO"; then :++else+  # Broken: fails on valid input.+continue+fi+rm -f conftest.err conftest.i conftest.$ac_ext++  # OK, works on sane cases.  Now check whether nonexistent headers+  # can be detected and how.+  cat confdefs.h - <<_ACEOF >conftest.$ac_ext+/* end confdefs.h.  */+#include <ac_nonexistent.h>+_ACEOF+if ac_fn_c_try_cpp "$LINENO"; then :+  # Broken: success on invalid input.+continue+else+  # Passes both tests.+ac_preproc_ok=:+break+fi+rm -f conftest.err conftest.i conftest.$ac_ext++done+# Because of `break', _AC_PREPROC_IFELSE's cleaning code was skipped.+rm -f conftest.i conftest.err conftest.$ac_ext+if $ac_preproc_ok; then :++else+  { { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5+$as_echo "$as_me: error: in \`$ac_pwd':" >&2;}+as_fn_error $? "C preprocessor \"$CPP\" fails sanity check+See \`config.log' for more details" "$LINENO" 5; }+fi++ac_ext=c+ac_cpp='$CPP $CPPFLAGS'+ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5'+ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5'+ac_compiler_gnu=$ac_cv_c_compiler_gnu+++{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for ANSI C header files" >&5+$as_echo_n "checking for ANSI C header files... " >&6; }+if ${ac_cv_header_stdc+:} false; then :+  $as_echo_n "(cached) " >&6+else+  cat confdefs.h - <<_ACEOF >conftest.$ac_ext+/* end confdefs.h.  */+#include <stdlib.h>+#include <stdarg.h>+#include <string.h>+#include <float.h>++int+main ()+{++  ;+  return 0;+}+_ACEOF+if ac_fn_c_try_compile "$LINENO"; then :+  ac_cv_header_stdc=yes+else+  ac_cv_header_stdc=no+fi+rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext++if test $ac_cv_header_stdc = yes; then+  # SunOS 4.x string.h does not declare mem*, contrary to ANSI.+  cat confdefs.h - <<_ACEOF >conftest.$ac_ext+/* end confdefs.h.  */+#include <string.h>++_ACEOF+if (eval "$ac_cpp conftest.$ac_ext") 2>&5 |+  $EGREP "memchr" >/dev/null 2>&1; then :++else+  ac_cv_header_stdc=no+fi+rm -f conftest*++fi++if test $ac_cv_header_stdc = yes; then+  # ISC 2.0.2 stdlib.h does not declare free, contrary to ANSI.+  cat confdefs.h - <<_ACEOF >conftest.$ac_ext+/* end confdefs.h.  */+#include <stdlib.h>++_ACEOF+if (eval "$ac_cpp conftest.$ac_ext") 2>&5 |+  $EGREP "free" >/dev/null 2>&1; then :++else+  ac_cv_header_stdc=no+fi+rm -f conftest*++fi++if test $ac_cv_header_stdc = yes; then+  # /bin/cc in Irix-4.0.5 gets non-ANSI ctype macros unless using -ansi.+  if test "$cross_compiling" = yes; then :+  :+else+  cat confdefs.h - <<_ACEOF >conftest.$ac_ext+/* end confdefs.h.  */+#include <ctype.h>+#include <stdlib.h>+#if ((' ' & 0x0FF) == 0x020)+# define ISLOWER(c) ('a' <= (c) && (c) <= 'z')+# define TOUPPER(c) (ISLOWER(c) ? 'A' + ((c) - 'a') : (c))+#else+# define ISLOWER(c) \+		   (('a' <= (c) && (c) <= 'i') \+		     || ('j' <= (c) && (c) <= 'r') \+		     || ('s' <= (c) && (c) <= 'z'))+# define TOUPPER(c) (ISLOWER(c) ? ((c) | 0x40) : (c))+#endif++#define XOR(e, f) (((e) && !(f)) || (!(e) && (f)))+int+main ()+{+  int i;+  for (i = 0; i < 256; i++)+    if (XOR (islower (i), ISLOWER (i))+	|| toupper (i) != TOUPPER (i))+      return 2;+  return 0;+}+_ACEOF+if ac_fn_c_try_run "$LINENO"; then :++else+  ac_cv_header_stdc=no+fi+rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \+  conftest.$ac_objext conftest.beam conftest.$ac_ext+fi++fi+fi+{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_header_stdc" >&5+$as_echo "$ac_cv_header_stdc" >&6; }+if test $ac_cv_header_stdc = yes; then++$as_echo "#define STDC_HEADERS 1" >>confdefs.h++fi++# On IRIX 5.3, sys/types and inttypes.h are conflicting.+for ac_header in sys/types.h sys/stat.h stdlib.h string.h memory.h strings.h \+		  inttypes.h stdint.h unistd.h+do :+  as_ac_Header=`$as_echo "ac_cv_header_$ac_header" | $as_tr_sh`+ac_fn_c_check_header_compile "$LINENO" "$ac_header" "$as_ac_Header" "$ac_includes_default+"+if eval test \"x\$"$as_ac_Header"\" = x"yes"; then :+  cat >>confdefs.h <<_ACEOF+#define `$as_echo "HAVE_$ac_header" | $as_tr_cpp` 1+_ACEOF++fi++done+++for ac_header in dlfcn.h+do :+  ac_fn_c_check_header_compile "$LINENO" "dlfcn.h" "ac_cv_header_dlfcn_h" "$ac_includes_default+"+if test "x$ac_cv_header_dlfcn_h" = xyes; then :+  cat >>confdefs.h <<_ACEOF+#define HAVE_DLFCN_H 1+_ACEOF++fi++done+++++func_stripname_cnf ()+{+  case $2 in+  .*) func_stripname_result=`$ECHO "$3" | $SED "s%^$1%%; s%\\\\$2\$%%"`;;+  *)  func_stripname_result=`$ECHO "$3" | $SED "s%^$1%%; s%$2\$%%"`;;+  esac+} # func_stripname_cnf++++++# Set options++++        enable_dlopen=no+++  enable_win32_dll=no+++            # Check whether --enable-shared was given.+if test "${enable_shared+set}" = set; then :+  enableval=$enable_shared; p=${PACKAGE-default}+    case $enableval in+    yes) enable_shared=yes ;;+    no) enable_shared=no ;;+    *)+      enable_shared=no+      # Look at the argument we got.  We use all the common list separators.+      lt_save_ifs=$IFS; IFS=$IFS$PATH_SEPARATOR,+      for pkg in $enableval; do+	IFS=$lt_save_ifs+	if test "X$pkg" = "X$p"; then+	  enable_shared=yes+	fi+      done+      IFS=$lt_save_ifs+      ;;+    esac+else+  enable_shared=yes+fi++++++++++  # Check whether --enable-static was given.+if test "${enable_static+set}" = set; then :+  enableval=$enable_static; p=${PACKAGE-default}+    case $enableval in+    yes) enable_static=yes ;;+    no) enable_static=no ;;+    *)+     enable_static=no+      # Look at the argument we got.  We use all the common list separators.+      lt_save_ifs=$IFS; IFS=$IFS$PATH_SEPARATOR,+      for pkg in $enableval; do+	IFS=$lt_save_ifs+	if test "X$pkg" = "X$p"; then+	  enable_static=yes+	fi+      done+      IFS=$lt_save_ifs+      ;;+    esac+else+  enable_static=yes+fi+++++++++++# Check whether --with-pic was given.+if test "${with_pic+set}" = set; then :+  withval=$with_pic; lt_p=${PACKAGE-default}+    case $withval in+    yes|no) pic_mode=$withval ;;+    *)+      pic_mode=default+      # Look at the argument we got.  We use all the common list separators.+      lt_save_ifs=$IFS; IFS=$IFS$PATH_SEPARATOR,+      for lt_pkg in $withval; do+	IFS=$lt_save_ifs+	if test "X$lt_pkg" = "X$lt_p"; then+	  pic_mode=yes+	fi+      done+      IFS=$lt_save_ifs+      ;;+    esac+else+  pic_mode=default+fi+++++++++  # Check whether --enable-fast-install was given.+if test "${enable_fast_install+set}" = set; then :+  enableval=$enable_fast_install; p=${PACKAGE-default}+    case $enableval in+    yes) enable_fast_install=yes ;;+    no) enable_fast_install=no ;;+    *)+      enable_fast_install=no+      # Look at the argument we got.  We use all the common list separators.+      lt_save_ifs=$IFS; IFS=$IFS$PATH_SEPARATOR,+      for pkg in $enableval; do+	IFS=$lt_save_ifs+	if test "X$pkg" = "X$p"; then+	  enable_fast_install=yes+	fi+      done+      IFS=$lt_save_ifs+      ;;+    esac+else+  enable_fast_install=yes+fi+++++++++  shared_archive_member_spec=+case $host,$enable_shared in+power*-*-aix[5-9]*,yes)+  { $as_echo "$as_me:${as_lineno-$LINENO}: checking which variant of shared library versioning to provide" >&5+$as_echo_n "checking which variant of shared library versioning to provide... " >&6; }++# Check whether --with-aix-soname was given.+if test "${with_aix_soname+set}" = set; then :+  withval=$with_aix_soname; case $withval in+    aix|svr4|both)+      ;;+    *)+      as_fn_error $? "Unknown argument to --with-aix-soname" "$LINENO" 5+      ;;+    esac+    lt_cv_with_aix_soname=$with_aix_soname+else+  if ${lt_cv_with_aix_soname+:} false; then :+  $as_echo_n "(cached) " >&6+else+  lt_cv_with_aix_soname=aix+fi++    with_aix_soname=$lt_cv_with_aix_soname+fi++  { $as_echo "$as_me:${as_lineno-$LINENO}: result: $with_aix_soname" >&5+$as_echo "$with_aix_soname" >&6; }+  if test aix != "$with_aix_soname"; then+    # For the AIX way of multilib, we name the shared archive member+    # based on the bitwidth used, traditionally 'shr.o' or 'shr_64.o',+    # and 'shr.imp' or 'shr_64.imp', respectively, for the Import File.+    # Even when GNU compilers ignore OBJECT_MODE but need '-maix64' flag,+    # the AIX toolchain works better with OBJECT_MODE set (default 32).+    if test 64 = "${OBJECT_MODE-32}"; then+      shared_archive_member_spec=shr_64+    else+      shared_archive_member_spec=shr+    fi+  fi+  ;;+*)+  with_aix_soname=aix+  ;;+esac+++++++++++# This can be used to rebuild libtool when needed+LIBTOOL_DEPS=$ltmain++# Always use our own libtool.+LIBTOOL='$(SHELL) $(top_builddir)/libtool'+++++++++++++++++++++++++++++++test -z "$LN_S" && LN_S="ln -s"+++++++++++++++if test -n "${ZSH_VERSION+set}"; then+   setopt NO_GLOB_SUBST+fi++{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for objdir" >&5+$as_echo_n "checking for objdir... " >&6; }+if ${lt_cv_objdir+:} false; then :+  $as_echo_n "(cached) " >&6+else+  rm -f .libs 2>/dev/null+mkdir .libs 2>/dev/null+if test -d .libs; then+  lt_cv_objdir=.libs+else+  # MS-DOS does not allow filenames that begin with a dot.+  lt_cv_objdir=_libs+fi+rmdir .libs 2>/dev/null+fi+{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_cv_objdir" >&5+$as_echo "$lt_cv_objdir" >&6; }+objdir=$lt_cv_objdir++++++cat >>confdefs.h <<_ACEOF+#define LT_OBJDIR "$lt_cv_objdir/"+_ACEOF+++++case $host_os in+aix3*)+  # AIX sometimes has problems with the GCC collect2 program.  For some+  # reason, if we set the COLLECT_NAMES environment variable, the problems+  # vanish in a puff of smoke.+  if test set != "${COLLECT_NAMES+set}"; then+    COLLECT_NAMES=+    export COLLECT_NAMES+  fi+  ;;+esac++# Global variables:+ofile=libtool+can_build_shared=yes++# All known linkers require a '.a' archive for static linking (except MSVC and+# ICC, which need '.lib').+libext=a++with_gnu_ld=$lt_cv_prog_gnu_ld++old_CC=$CC+old_CFLAGS=$CFLAGS++# Set sane defaults for various variables+test -z "$CC" && CC=cc+test -z "$LTCC" && LTCC=$CC+test -z "$LTCFLAGS" && LTCFLAGS=$CFLAGS+test -z "$LD" && LD=ld+test -z "$ac_objext" && ac_objext=o++func_cc_basename $compiler+cc_basename=$func_cc_basename_result+++# Only perform the check for file, if the check method requires it+test -z "$MAGIC_CMD" && MAGIC_CMD=file+case $deplibs_check_method in+file_magic*)+  if test "$file_magic_cmd" = '$MAGIC_CMD'; then+    { $as_echo "$as_me:${as_lineno-$LINENO}: checking for ${ac_tool_prefix}file" >&5+$as_echo_n "checking for ${ac_tool_prefix}file... " >&6; }+if ${lt_cv_path_MAGIC_CMD+:} false; then :+  $as_echo_n "(cached) " >&6+else+  case $MAGIC_CMD in+[\\/*] |  ?:[\\/]*)+  lt_cv_path_MAGIC_CMD=$MAGIC_CMD # Let the user override the test with a path.+  ;;+*)+  lt_save_MAGIC_CMD=$MAGIC_CMD+  lt_save_ifs=$IFS; IFS=$PATH_SEPARATOR+  ac_dummy="/usr/bin$PATH_SEPARATOR$PATH"+  for ac_dir in $ac_dummy; do+    IFS=$lt_save_ifs+    test -z "$ac_dir" && ac_dir=.+    if test -f "$ac_dir/${ac_tool_prefix}file"; then+      lt_cv_path_MAGIC_CMD=$ac_dir/"${ac_tool_prefix}file"+      if test -n "$file_magic_test_file"; then+	case $deplibs_check_method in+	"file_magic "*)+	  file_magic_regex=`expr "$deplibs_check_method" : "file_magic \(.*\)"`+	  MAGIC_CMD=$lt_cv_path_MAGIC_CMD+	  if eval $file_magic_cmd \$file_magic_test_file 2> /dev/null |+	    $EGREP "$file_magic_regex" > /dev/null; then+	    :+	  else+	    cat <<_LT_EOF 1>&2++*** Warning: the command libtool uses to detect shared libraries,+*** $file_magic_cmd, produces output that libtool cannot recognize.+*** The result is that libtool may fail to recognize shared libraries+*** as such.  This will affect the creation of libtool libraries that+*** depend on shared libraries, but programs linked with such libtool+*** libraries will work regardless of this problem.  Nevertheless, you+*** may want to report the problem to your system manager and/or to+*** bug-libtool@gnu.org++_LT_EOF+	  fi ;;+	esac+      fi+      break+    fi+  done+  IFS=$lt_save_ifs+  MAGIC_CMD=$lt_save_MAGIC_CMD+  ;;+esac+fi++MAGIC_CMD=$lt_cv_path_MAGIC_CMD+if test -n "$MAGIC_CMD"; then+  { $as_echo "$as_me:${as_lineno-$LINENO}: result: $MAGIC_CMD" >&5+$as_echo "$MAGIC_CMD" >&6; }+else+  { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5+$as_echo "no" >&6; }+fi++++++if test -z "$lt_cv_path_MAGIC_CMD"; then+  if test -n "$ac_tool_prefix"; then+    { $as_echo "$as_me:${as_lineno-$LINENO}: checking for file" >&5+$as_echo_n "checking for file... " >&6; }+if ${lt_cv_path_MAGIC_CMD+:} false; then :+  $as_echo_n "(cached) " >&6+else+  case $MAGIC_CMD in+[\\/*] |  ?:[\\/]*)+  lt_cv_path_MAGIC_CMD=$MAGIC_CMD # Let the user override the test with a path.+  ;;+*)+  lt_save_MAGIC_CMD=$MAGIC_CMD+  lt_save_ifs=$IFS; IFS=$PATH_SEPARATOR+  ac_dummy="/usr/bin$PATH_SEPARATOR$PATH"+  for ac_dir in $ac_dummy; do+    IFS=$lt_save_ifs+    test -z "$ac_dir" && ac_dir=.+    if test -f "$ac_dir/file"; then+      lt_cv_path_MAGIC_CMD=$ac_dir/"file"+      if test -n "$file_magic_test_file"; then+	case $deplibs_check_method in+	"file_magic "*)+	  file_magic_regex=`expr "$deplibs_check_method" : "file_magic \(.*\)"`+	  MAGIC_CMD=$lt_cv_path_MAGIC_CMD+	  if eval $file_magic_cmd \$file_magic_test_file 2> /dev/null |+	    $EGREP "$file_magic_regex" > /dev/null; then+	    :+	  else+	    cat <<_LT_EOF 1>&2++*** Warning: the command libtool uses to detect shared libraries,+*** $file_magic_cmd, produces output that libtool cannot recognize.+*** The result is that libtool may fail to recognize shared libraries+*** as such.  This will affect the creation of libtool libraries that+*** depend on shared libraries, but programs linked with such libtool+*** libraries will work regardless of this problem.  Nevertheless, you+*** may want to report the problem to your system manager and/or to+*** bug-libtool@gnu.org++_LT_EOF+	  fi ;;+	esac+      fi+      break+    fi+  done+  IFS=$lt_save_ifs+  MAGIC_CMD=$lt_save_MAGIC_CMD+  ;;+esac+fi++MAGIC_CMD=$lt_cv_path_MAGIC_CMD+if test -n "$MAGIC_CMD"; then+  { $as_echo "$as_me:${as_lineno-$LINENO}: result: $MAGIC_CMD" >&5+$as_echo "$MAGIC_CMD" >&6; }+else+  { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5+$as_echo "no" >&6; }+fi+++  else+    MAGIC_CMD=:+  fi+fi++  fi+  ;;+esac++# Use C for the default configuration in the libtool script++lt_save_CC=$CC+ac_ext=c+ac_cpp='$CPP $CPPFLAGS'+ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5'+ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5'+ac_compiler_gnu=$ac_cv_c_compiler_gnu+++# Source file extension for C test sources.+ac_ext=c++# Object file extension for compiled C test sources.+objext=o+objext=$objext++# Code to be used in simple compile tests+lt_simple_compile_test_code="int some_variable = 0;"++# Code to be used in simple link tests+lt_simple_link_test_code='int main(){return(0);}'++++++++# If no C compiler was specified, use CC.+LTCC=${LTCC-"$CC"}++# If no C compiler flags were specified, use CFLAGS.+LTCFLAGS=${LTCFLAGS-"$CFLAGS"}++# Allow CC to be a program name with arguments.+compiler=$CC++# Save the default compiler, since it gets overwritten when the other+# tags are being tested, and _LT_TAGVAR(compiler, []) is a NOP.+compiler_DEFAULT=$CC++# save warnings/boilerplate of simple test code+ac_outfile=conftest.$ac_objext+echo "$lt_simple_compile_test_code" >conftest.$ac_ext+eval "$ac_compile" 2>&1 >/dev/null | $SED '/^$/d; /^ *+/d' >conftest.err+_lt_compiler_boilerplate=`cat conftest.err`+$RM conftest*++ac_outfile=conftest.$ac_objext+echo "$lt_simple_link_test_code" >conftest.$ac_ext+eval "$ac_link" 2>&1 >/dev/null | $SED '/^$/d; /^ *+/d' >conftest.err+_lt_linker_boilerplate=`cat conftest.err`+$RM -r conftest*+++## CAVEAT EMPTOR:+## There is no encapsulation within the following macros, do not change+## the running order or otherwise move them around unless you know exactly+## what you are doing...+if test -n "$compiler"; then++lt_prog_compiler_no_builtin_flag=++if test yes = "$GCC"; then+  case $cc_basename in+  nvcc*)+    lt_prog_compiler_no_builtin_flag=' -Xcompiler -fno-builtin' ;;+  *)+    lt_prog_compiler_no_builtin_flag=' -fno-builtin' ;;+  esac++  { $as_echo "$as_me:${as_lineno-$LINENO}: checking if $compiler supports -fno-rtti -fno-exceptions" >&5+$as_echo_n "checking if $compiler supports -fno-rtti -fno-exceptions... " >&6; }+if ${lt_cv_prog_compiler_rtti_exceptions+:} false; then :+  $as_echo_n "(cached) " >&6+else+  lt_cv_prog_compiler_rtti_exceptions=no+   ac_outfile=conftest.$ac_objext+   echo "$lt_simple_compile_test_code" > conftest.$ac_ext+   lt_compiler_flag="-fno-rtti -fno-exceptions"  ## exclude from sc_useless_quotes_in_assignment+   # Insert the option either (1) after the last *FLAGS variable, or+   # (2) before a word containing "conftest.", or (3) at the end.+   # Note that $ac_compile itself does not contain backslashes and begins+   # with a dollar sign (not a hyphen), so the echo should work correctly.+   # The option is referenced via a variable to avoid confusing sed.+   lt_compile=`echo "$ac_compile" | $SED \+   -e 's:.*FLAGS}\{0,1\} :&$lt_compiler_flag :; t' \+   -e 's: [^ ]*conftest\.: $lt_compiler_flag&:; t' \+   -e 's:$: $lt_compiler_flag:'`+   (eval echo "\"\$as_me:$LINENO: $lt_compile\"" >&5)+   (eval "$lt_compile" 2>conftest.err)+   ac_status=$?+   cat conftest.err >&5+   echo "$as_me:$LINENO: \$? = $ac_status" >&5+   if (exit $ac_status) && test -s "$ac_outfile"; then+     # The compiler can only warn and ignore the option if not recognized+     # So say no if there are warnings other than the usual output.+     $ECHO "$_lt_compiler_boilerplate" | $SED '/^$/d' >conftest.exp+     $SED '/^$/d; /^ *+/d' conftest.err >conftest.er2+     if test ! -s conftest.er2 || diff conftest.exp conftest.er2 >/dev/null; then+       lt_cv_prog_compiler_rtti_exceptions=yes+     fi+   fi+   $RM conftest*++fi+{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_cv_prog_compiler_rtti_exceptions" >&5+$as_echo "$lt_cv_prog_compiler_rtti_exceptions" >&6; }++if test yes = "$lt_cv_prog_compiler_rtti_exceptions"; then+    lt_prog_compiler_no_builtin_flag="$lt_prog_compiler_no_builtin_flag -fno-rtti -fno-exceptions"+else+    :+fi++fi+++++++  lt_prog_compiler_wl=+lt_prog_compiler_pic=+lt_prog_compiler_static=+++  if test yes = "$GCC"; then+    lt_prog_compiler_wl='-Wl,'+    lt_prog_compiler_static='-static'++    case $host_os in+      aix*)+      # All AIX code is PIC.+      if test ia64 = "$host_cpu"; then+	# AIX 5 now supports IA64 processor+	lt_prog_compiler_static='-Bstatic'+      fi+      lt_prog_compiler_pic='-fPIC'+      ;;++    amigaos*)+      case $host_cpu in+      powerpc)+            # see comment about AmigaOS4 .so support+            lt_prog_compiler_pic='-fPIC'+        ;;+      m68k)+            # FIXME: we need at least 68020 code to build shared libraries, but+            # adding the '-m68020' flag to GCC prevents building anything better,+            # like '-m68040'.+            lt_prog_compiler_pic='-m68020 -resident32 -malways-restore-a4'+        ;;+      esac+      ;;++    beos* | irix5* | irix6* | nonstopux* | osf3* | osf4* | osf5*)+      # PIC is the default for these OSes.+      ;;++    mingw* | cygwin* | pw32* | os2* | cegcc*)+      # This hack is so that the source file can tell whether it is being+      # built for inclusion in a dll (and should export symbols for example).+      # Although the cygwin gcc ignores -fPIC, still need this for old-style+      # (--disable-auto-import) libraries+      lt_prog_compiler_pic='-DDLL_EXPORT'+      case $host_os in+      os2*)+	lt_prog_compiler_static='$wl-static'+	;;+      esac+      ;;++    darwin* | rhapsody*)+      # PIC is the default on this platform+      # Common symbols not allowed in MH_DYLIB files+      lt_prog_compiler_pic='-fno-common'+      ;;++    haiku*)+      # PIC is the default for Haiku.+      # The "-static" flag exists, but is broken.+      lt_prog_compiler_static=+      ;;++    hpux*)+      # PIC is the default for 64-bit PA HP-UX, but not for 32-bit+      # PA HP-UX.  On IA64 HP-UX, PIC is the default but the pic flag+      # sets the default TLS model and affects inlining.+      case $host_cpu in+      hppa*64*)+	# +Z the default+	;;+      *)+	lt_prog_compiler_pic='-fPIC'+	;;+      esac+      ;;++    interix[3-9]*)+      # Interix 3.x gcc -fpic/-fPIC options generate broken code.+      # Instead, we relocate shared libraries at runtime.+      ;;++    msdosdjgpp*)+      # Just because we use GCC doesn't mean we suddenly get shared libraries+      # on systems that don't support them.+      lt_prog_compiler_can_build_shared=no+      enable_shared=no+      ;;++    *nto* | *qnx*)+      # QNX uses GNU C++, but need to define -shared option too, otherwise+      # it will coredump.+      lt_prog_compiler_pic='-fPIC -shared'+      ;;++    sysv4*MP*)+      if test -d /usr/nec; then+	lt_prog_compiler_pic=-Kconform_pic+      fi+      ;;++    *)+      lt_prog_compiler_pic='-fPIC'+      ;;+    esac++    case $cc_basename in+    nvcc*) # Cuda Compiler Driver 2.2+      lt_prog_compiler_wl='-Xlinker '+      if test -n "$lt_prog_compiler_pic"; then+        lt_prog_compiler_pic="-Xcompiler $lt_prog_compiler_pic"+      fi+      ;;+    esac+  else+    # PORTME Check for flag to pass linker flags through the system compiler.+    case $host_os in+    aix*)+      lt_prog_compiler_wl='-Wl,'+      if test ia64 = "$host_cpu"; then+	# AIX 5 now supports IA64 processor+	lt_prog_compiler_static='-Bstatic'+      else+	lt_prog_compiler_static='-bnso -bI:/lib/syscalls.exp'+      fi+      ;;++    darwin* | rhapsody*)+      # PIC is the default on this platform+      # Common symbols not allowed in MH_DYLIB files+      lt_prog_compiler_pic='-fno-common'+      case $cc_basename in+      nagfor*)+        # NAG Fortran compiler+        lt_prog_compiler_wl='-Wl,-Wl,,'+        lt_prog_compiler_pic='-PIC'+        lt_prog_compiler_static='-Bstatic'+        ;;+      esac+      ;;++    mingw* | cygwin* | pw32* | os2* | cegcc*)+      # This hack is so that the source file can tell whether it is being+      # built for inclusion in a dll (and should export symbols for example).+      lt_prog_compiler_pic='-DDLL_EXPORT'+      case $host_os in+      os2*)+	lt_prog_compiler_static='$wl-static'+	;;+      esac+      ;;++    hpux9* | hpux10* | hpux11*)+      lt_prog_compiler_wl='-Wl,'+      # PIC is the default for IA64 HP-UX and 64-bit HP-UX, but+      # not for PA HP-UX.+      case $host_cpu in+      hppa*64*|ia64*)+	# +Z the default+	;;+      *)+	lt_prog_compiler_pic='+Z'+	;;+      esac+      # Is there a better lt_prog_compiler_static that works with the bundled CC?+      lt_prog_compiler_static='$wl-a ${wl}archive'+      ;;++    irix5* | irix6* | nonstopux*)+      lt_prog_compiler_wl='-Wl,'+      # PIC (with -KPIC) is the default.+      lt_prog_compiler_static='-non_shared'+      ;;++    linux* | k*bsd*-gnu | kopensolaris*-gnu | gnu*)+      case $cc_basename in+      # old Intel for x86_64, which still supported -KPIC.+      ecc*)+	lt_prog_compiler_wl='-Wl,'+	lt_prog_compiler_pic='-KPIC'+	lt_prog_compiler_static='-static'+        ;;+      # flang / f18. f95 an alias for gfortran or flang on Debian+      flang* | f18* | f95*)+	lt_prog_compiler_wl='-Wl,'+	lt_prog_compiler_pic='-fPIC'+	lt_prog_compiler_static='-static'+        ;;+      # icc used to be incompatible with GCC.+      # ICC 10 doesn't accept -KPIC any more.+      icc* | ifort*)+	lt_prog_compiler_wl='-Wl,'+	lt_prog_compiler_pic='-fPIC'+	lt_prog_compiler_static='-static'+        ;;+      # Lahey Fortran 8.1.+      lf95*)+	lt_prog_compiler_wl='-Wl,'+	lt_prog_compiler_pic='--shared'+	lt_prog_compiler_static='--static'+	;;+      nagfor*)+	# NAG Fortran compiler+	lt_prog_compiler_wl='-Wl,-Wl,,'+	lt_prog_compiler_pic='-PIC'+	lt_prog_compiler_static='-Bstatic'+	;;+      tcc*)+	# Fabrice Bellard et al's Tiny C Compiler+	lt_prog_compiler_wl='-Wl,'+	lt_prog_compiler_pic='-fPIC'+	lt_prog_compiler_static='-static'+	;;+      pgcc* | pgf77* | pgf90* | pgf95* | pgfortran*)+        # Portland Group compilers (*not* the Pentium gcc compiler,+	# which looks to be a dead project)+	lt_prog_compiler_wl='-Wl,'+	lt_prog_compiler_pic='-fpic'+	lt_prog_compiler_static='-Bstatic'+        ;;+      ccc*)+        lt_prog_compiler_wl='-Wl,'+        # All Alpha code is PIC.+        lt_prog_compiler_static='-non_shared'+        ;;+      xl* | bgxl* | bgf* | mpixl*)+	# IBM XL C 8.0/Fortran 10.1, 11.1 on PPC and BlueGene+	lt_prog_compiler_wl='-Wl,'+	lt_prog_compiler_pic='-qpic'+	lt_prog_compiler_static='-qstaticlink'+	;;+      *)+	case `$CC -V 2>&1 | $SED 5q` in+	*Sun\ Ceres\ Fortran* | *Sun*Fortran*\ [1-7].* | *Sun*Fortran*\ 8.[0-3]*)+	  # Sun Fortran 8.3 passes all unrecognized flags to the linker+	  lt_prog_compiler_pic='-KPIC'+	  lt_prog_compiler_static='-Bstatic'+	  lt_prog_compiler_wl=''+	  ;;+	*Sun\ F* | *Sun*Fortran*)+	  lt_prog_compiler_pic='-KPIC'+	  lt_prog_compiler_static='-Bstatic'+	  lt_prog_compiler_wl='-Qoption ld '+	  ;;+	*Sun\ C*)+	  # Sun C 5.9+	  lt_prog_compiler_pic='-KPIC'+	  lt_prog_compiler_static='-Bstatic'+	  lt_prog_compiler_wl='-Wl,'+	  ;;+        *Intel*\ [CF]*Compiler*)+	  lt_prog_compiler_wl='-Wl,'+	  lt_prog_compiler_pic='-fPIC'+	  lt_prog_compiler_static='-static'+	  ;;+	*Portland\ Group*)+	  lt_prog_compiler_wl='-Wl,'+	  lt_prog_compiler_pic='-fpic'+	  lt_prog_compiler_static='-Bstatic'+	  ;;+	esac+	;;+      esac+      ;;++    newsos6)+      lt_prog_compiler_pic='-KPIC'+      lt_prog_compiler_static='-Bstatic'+      ;;++    *nto* | *qnx*)+      # QNX uses GNU C++, but need to define -shared option too, otherwise+      # it will coredump.+      lt_prog_compiler_pic='-fPIC -shared'+      ;;++    osf3* | osf4* | osf5*)+      lt_prog_compiler_wl='-Wl,'+      # All OSF/1 code is PIC.+      lt_prog_compiler_static='-non_shared'+      ;;++    rdos*)+      lt_prog_compiler_static='-non_shared'+      ;;++    solaris*)+      lt_prog_compiler_pic='-KPIC'+      lt_prog_compiler_static='-Bstatic'+      case $cc_basename in+      f77* | f90* | f95* | sunf77* | sunf90* | sunf95*)+	lt_prog_compiler_wl='-Qoption ld ';;+      *)+	lt_prog_compiler_wl='-Wl,';;+      esac+      ;;++    sunos4*)+      lt_prog_compiler_wl='-Qoption ld '+      lt_prog_compiler_pic='-PIC'+      lt_prog_compiler_static='-Bstatic'+      ;;++    sysv4 | sysv4.2uw2* | sysv4.3*)+      lt_prog_compiler_wl='-Wl,'+      lt_prog_compiler_pic='-KPIC'+      lt_prog_compiler_static='-Bstatic'+      ;;++    sysv4*MP*)+      if test -d /usr/nec; then+	lt_prog_compiler_pic='-Kconform_pic'+	lt_prog_compiler_static='-Bstatic'+      fi+      ;;++    sysv5* | unixware* | sco3.2v5* | sco5v6* | OpenUNIX*)+      lt_prog_compiler_wl='-Wl,'+      lt_prog_compiler_pic='-KPIC'+      lt_prog_compiler_static='-Bstatic'+      ;;++    unicos*)+      lt_prog_compiler_wl='-Wl,'+      lt_prog_compiler_can_build_shared=no+      ;;++    uts4*)+      lt_prog_compiler_pic='-pic'+      lt_prog_compiler_static='-Bstatic'+      ;;++    *)+      lt_prog_compiler_can_build_shared=no+      ;;+    esac+  fi++case $host_os in+  # For platforms that do not support PIC, -DPIC is meaningless:+  *djgpp*)+    lt_prog_compiler_pic=+    ;;+  *)+    lt_prog_compiler_pic="$lt_prog_compiler_pic -DPIC"+    ;;+esac++{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $compiler option to produce PIC" >&5+$as_echo_n "checking for $compiler option to produce PIC... " >&6; }+if ${lt_cv_prog_compiler_pic+:} false; then :+  $as_echo_n "(cached) " >&6+else+  lt_cv_prog_compiler_pic=$lt_prog_compiler_pic+fi+{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_cv_prog_compiler_pic" >&5+$as_echo "$lt_cv_prog_compiler_pic" >&6; }+lt_prog_compiler_pic=$lt_cv_prog_compiler_pic++#+# Check to make sure the PIC flag actually works.+#+if test -n "$lt_prog_compiler_pic"; then+  { $as_echo "$as_me:${as_lineno-$LINENO}: checking if $compiler PIC flag $lt_prog_compiler_pic works" >&5+$as_echo_n "checking if $compiler PIC flag $lt_prog_compiler_pic works... " >&6; }+if ${lt_cv_prog_compiler_pic_works+:} false; then :+  $as_echo_n "(cached) " >&6+else+  lt_cv_prog_compiler_pic_works=no+   ac_outfile=conftest.$ac_objext+   echo "$lt_simple_compile_test_code" > conftest.$ac_ext+   lt_compiler_flag="$lt_prog_compiler_pic -DPIC"  ## exclude from sc_useless_quotes_in_assignment+   # Insert the option either (1) after the last *FLAGS variable, or+   # (2) before a word containing "conftest.", or (3) at the end.+   # Note that $ac_compile itself does not contain backslashes and begins+   # with a dollar sign (not a hyphen), so the echo should work correctly.+   # The option is referenced via a variable to avoid confusing sed.+   lt_compile=`echo "$ac_compile" | $SED \+   -e 's:.*FLAGS}\{0,1\} :&$lt_compiler_flag :; t' \+   -e 's: [^ ]*conftest\.: $lt_compiler_flag&:; t' \+   -e 's:$: $lt_compiler_flag:'`+   (eval echo "\"\$as_me:$LINENO: $lt_compile\"" >&5)+   (eval "$lt_compile" 2>conftest.err)+   ac_status=$?+   cat conftest.err >&5+   echo "$as_me:$LINENO: \$? = $ac_status" >&5+   if (exit $ac_status) && test -s "$ac_outfile"; then+     # The compiler can only warn and ignore the option if not recognized+     # So say no if there are warnings other than the usual output.+     $ECHO "$_lt_compiler_boilerplate" | $SED '/^$/d' >conftest.exp+     $SED '/^$/d; /^ *+/d' conftest.err >conftest.er2+     if test ! -s conftest.er2 || diff conftest.exp conftest.er2 >/dev/null; then+       lt_cv_prog_compiler_pic_works=yes+     fi+   fi+   $RM conftest*++fi+{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_cv_prog_compiler_pic_works" >&5+$as_echo "$lt_cv_prog_compiler_pic_works" >&6; }++if test yes = "$lt_cv_prog_compiler_pic_works"; then+    case $lt_prog_compiler_pic in+     "" | " "*) ;;+     *) lt_prog_compiler_pic=" $lt_prog_compiler_pic" ;;+     esac+else+    lt_prog_compiler_pic=+     lt_prog_compiler_can_build_shared=no+fi++fi++++++++++++#+# Check to make sure the static flag actually works.+#+wl=$lt_prog_compiler_wl eval lt_tmp_static_flag=\"$lt_prog_compiler_static\"+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking if $compiler static flag $lt_tmp_static_flag works" >&5+$as_echo_n "checking if $compiler static flag $lt_tmp_static_flag works... " >&6; }+if ${lt_cv_prog_compiler_static_works+:} false; then :+  $as_echo_n "(cached) " >&6+else+  lt_cv_prog_compiler_static_works=no+   save_LDFLAGS=$LDFLAGS+   LDFLAGS="$LDFLAGS $lt_tmp_static_flag"+   echo "$lt_simple_link_test_code" > conftest.$ac_ext+   if (eval $ac_link 2>conftest.err) && test -s conftest$ac_exeext; then+     # The linker can only warn and ignore the option if not recognized+     # So say no if there are warnings+     if test -s conftest.err; then+       # Append any errors to the config.log.+       cat conftest.err 1>&5+       $ECHO "$_lt_linker_boilerplate" | $SED '/^$/d' > conftest.exp+       $SED '/^$/d; /^ *+/d' conftest.err >conftest.er2+       if diff conftest.exp conftest.er2 >/dev/null; then+         lt_cv_prog_compiler_static_works=yes+       fi+     else+       lt_cv_prog_compiler_static_works=yes+     fi+   fi+   $RM -r conftest*+   LDFLAGS=$save_LDFLAGS++fi+{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_cv_prog_compiler_static_works" >&5+$as_echo "$lt_cv_prog_compiler_static_works" >&6; }++if test yes = "$lt_cv_prog_compiler_static_works"; then+    :+else+    lt_prog_compiler_static=+fi++++++++  { $as_echo "$as_me:${as_lineno-$LINENO}: checking if $compiler supports -c -o file.$ac_objext" >&5+$as_echo_n "checking if $compiler supports -c -o file.$ac_objext... " >&6; }+if ${lt_cv_prog_compiler_c_o+:} false; then :+  $as_echo_n "(cached) " >&6+else+  lt_cv_prog_compiler_c_o=no+   $RM -r conftest 2>/dev/null+   mkdir conftest+   cd conftest+   mkdir out+   echo "$lt_simple_compile_test_code" > conftest.$ac_ext++   lt_compiler_flag="-o out/conftest2.$ac_objext"+   # Insert the option either (1) after the last *FLAGS variable, or+   # (2) before a word containing "conftest.", or (3) at the end.+   # Note that $ac_compile itself does not contain backslashes and begins+   # with a dollar sign (not a hyphen), so the echo should work correctly.+   lt_compile=`echo "$ac_compile" | $SED \+   -e 's:.*FLAGS}\{0,1\} :&$lt_compiler_flag :; t' \+   -e 's: [^ ]*conftest\.: $lt_compiler_flag&:; t' \+   -e 's:$: $lt_compiler_flag:'`+   (eval echo "\"\$as_me:$LINENO: $lt_compile\"" >&5)+   (eval "$lt_compile" 2>out/conftest.err)+   ac_status=$?+   cat out/conftest.err >&5+   echo "$as_me:$LINENO: \$? = $ac_status" >&5+   if (exit $ac_status) && test -s out/conftest2.$ac_objext+   then+     # The compiler can only warn and ignore the option if not recognized+     # So say no if there are warnings+     $ECHO "$_lt_compiler_boilerplate" | $SED '/^$/d' > out/conftest.exp+     $SED '/^$/d; /^ *+/d' out/conftest.err >out/conftest.er2+     if test ! -s out/conftest.er2 || diff out/conftest.exp out/conftest.er2 >/dev/null; then+       lt_cv_prog_compiler_c_o=yes+     fi+   fi+   chmod u+w . 2>&5+   $RM conftest*+   # SGI C++ compiler will create directory out/ii_files/ for+   # template instantiation+   test -d out/ii_files && $RM out/ii_files/* && rmdir out/ii_files+   $RM out/* && rmdir out+   cd ..+   $RM -r conftest+   $RM conftest*++fi+{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_cv_prog_compiler_c_o" >&5+$as_echo "$lt_cv_prog_compiler_c_o" >&6; }+++++++  { $as_echo "$as_me:${as_lineno-$LINENO}: checking if $compiler supports -c -o file.$ac_objext" >&5+$as_echo_n "checking if $compiler supports -c -o file.$ac_objext... " >&6; }+if ${lt_cv_prog_compiler_c_o+:} false; then :+  $as_echo_n "(cached) " >&6+else+  lt_cv_prog_compiler_c_o=no+   $RM -r conftest 2>/dev/null+   mkdir conftest+   cd conftest+   mkdir out+   echo "$lt_simple_compile_test_code" > conftest.$ac_ext++   lt_compiler_flag="-o out/conftest2.$ac_objext"+   # Insert the option either (1) after the last *FLAGS variable, or+   # (2) before a word containing "conftest.", or (3) at the end.+   # Note that $ac_compile itself does not contain backslashes and begins+   # with a dollar sign (not a hyphen), so the echo should work correctly.+   lt_compile=`echo "$ac_compile" | $SED \+   -e 's:.*FLAGS}\{0,1\} :&$lt_compiler_flag :; t' \+   -e 's: [^ ]*conftest\.: $lt_compiler_flag&:; t' \+   -e 's:$: $lt_compiler_flag:'`+   (eval echo "\"\$as_me:$LINENO: $lt_compile\"" >&5)+   (eval "$lt_compile" 2>out/conftest.err)+   ac_status=$?+   cat out/conftest.err >&5+   echo "$as_me:$LINENO: \$? = $ac_status" >&5+   if (exit $ac_status) && test -s out/conftest2.$ac_objext+   then+     # The compiler can only warn and ignore the option if not recognized+     # So say no if there are warnings+     $ECHO "$_lt_compiler_boilerplate" | $SED '/^$/d' > out/conftest.exp+     $SED '/^$/d; /^ *+/d' out/conftest.err >out/conftest.er2+     if test ! -s out/conftest.er2 || diff out/conftest.exp out/conftest.er2 >/dev/null; then+       lt_cv_prog_compiler_c_o=yes+     fi+   fi+   chmod u+w . 2>&5+   $RM conftest*+   # SGI C++ compiler will create directory out/ii_files/ for+   # template instantiation+   test -d out/ii_files && $RM out/ii_files/* && rmdir out/ii_files+   $RM out/* && rmdir out+   cd ..+   $RM -r conftest+   $RM conftest*++fi+{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_cv_prog_compiler_c_o" >&5+$as_echo "$lt_cv_prog_compiler_c_o" >&6; }+++++hard_links=nottested+if test no = "$lt_cv_prog_compiler_c_o" && test no != "$need_locks"; then+  # do not overwrite the value of need_locks provided by the user+  { $as_echo "$as_me:${as_lineno-$LINENO}: checking if we can lock with hard links" >&5+$as_echo_n "checking if we can lock with hard links... " >&6; }+  hard_links=yes+  $RM conftest*+  ln conftest.a conftest.b 2>/dev/null && hard_links=no+  touch conftest.a+  ln conftest.a conftest.b 2>&5 || hard_links=no+  ln conftest.a conftest.b 2>/dev/null && hard_links=no+  { $as_echo "$as_me:${as_lineno-$LINENO}: result: $hard_links" >&5+$as_echo "$hard_links" >&6; }+  if test no = "$hard_links"; then+    { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: '$CC' does not support '-c -o', so 'make -j' may be unsafe" >&5+$as_echo "$as_me: WARNING: '$CC' does not support '-c -o', so 'make -j' may be unsafe" >&2;}+    need_locks=warn+  fi+else+  need_locks=no+fi+++++++  { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether the $compiler linker ($LD) supports shared libraries" >&5+$as_echo_n "checking whether the $compiler linker ($LD) supports shared libraries... " >&6; }++  runpath_var=+  allow_undefined_flag=+  always_export_symbols=no+  archive_cmds=+  archive_expsym_cmds=+  compiler_needs_object=no+  enable_shared_with_static_runtimes=no+  export_dynamic_flag_spec=+  export_symbols_cmds='$NM $libobjs $convenience | $global_symbol_pipe | $SED '\''s/.* //'\'' | sort | uniq > $export_symbols'+  hardcode_automatic=no+  hardcode_direct=no+  hardcode_direct_absolute=no+  hardcode_libdir_flag_spec=+  hardcode_libdir_separator=+  hardcode_minus_L=no+  hardcode_shlibpath_var=unsupported+  inherit_rpath=no+  link_all_deplibs=unknown+  module_cmds=+  module_expsym_cmds=+  old_archive_from_new_cmds=+  old_archive_from_expsyms_cmds=+  thread_safe_flag_spec=+  whole_archive_flag_spec=+  # include_expsyms should be a list of space-separated symbols to be *always*+  # included in the symbol list+  include_expsyms=+  # exclude_expsyms can be an extended regexp of symbols to exclude+  # it will be wrapped by ' (' and ')$', so one must not match beginning or+  # end of line.  Example: 'a|bc|.*d.*' will exclude the symbols 'a' and 'bc',+  # as well as any symbol that contains 'd'.+  exclude_expsyms='_GLOBAL_OFFSET_TABLE_|_GLOBAL__F[ID]_.*'+  # Although _GLOBAL_OFFSET_TABLE_ is a valid symbol C name, most a.out+  # platforms (ab)use it in PIC code, but their linkers get confused if+  # the symbol is explicitly referenced.  Since portable code cannot+  # rely on this symbol name, it's probably fine to never include it in+  # preloaded symbol tables.+  # Exclude shared library initialization/finalization symbols.+  extract_expsyms_cmds=++  case $host_os in+  cygwin* | mingw* | pw32* | cegcc*)+    # FIXME: the MSVC++ and ICC port hasn't been tested in a loooong time+    # When not using gcc, we currently assume that we are using+    # Microsoft Visual C++ or Intel C++ Compiler.+    if test yes != "$GCC"; then+      with_gnu_ld=no+    fi+    ;;+  interix*)+    # we just hope/assume this is gcc and not c89 (= MSVC++ or ICC)+    with_gnu_ld=yes+    ;;+  openbsd* | bitrig*)+    with_gnu_ld=no+    ;;+  linux* | k*bsd*-gnu | gnu*)+    link_all_deplibs=no+    ;;+  esac++  ld_shlibs=yes++  # On some targets, GNU ld is compatible enough with the native linker+  # that we're better off using the native interface for both.+  lt_use_gnu_ld_interface=no+  if test yes = "$with_gnu_ld"; then+    case $host_os in+      aix*)+	# The AIX port of GNU ld has always aspired to compatibility+	# with the native linker.  However, as the warning in the GNU ld+	# block says, versions before 2.19.5* couldn't really create working+	# shared libraries, regardless of the interface used.+	case `$LD -v 2>&1` in+	  *\ \(GNU\ Binutils\)\ 2.19.5*) ;;+	  *\ \(GNU\ Binutils\)\ 2.[2-9]*) ;;+	  *\ \(GNU\ Binutils\)\ [3-9]*) ;;+	  *)+	    lt_use_gnu_ld_interface=yes+	    ;;+	esac+	;;+      *)+	lt_use_gnu_ld_interface=yes+	;;+    esac+  fi++  if test yes = "$lt_use_gnu_ld_interface"; then+    # If archive_cmds runs LD, not CC, wlarc should be empty+    wlarc='$wl'++    # Set some defaults for GNU ld with shared library support. These+    # are reset later if shared libraries are not supported. Putting them+    # here allows them to be overridden if necessary.+    runpath_var=LD_RUN_PATH+    hardcode_libdir_flag_spec='$wl-rpath $wl$libdir'+    export_dynamic_flag_spec='$wl--export-dynamic'+    # ancient GNU ld didn't support --whole-archive et. al.+    if $LD --help 2>&1 | $GREP 'no-whole-archive' > /dev/null; then+      whole_archive_flag_spec=$wlarc'--whole-archive$convenience '$wlarc'--no-whole-archive'+    else+      whole_archive_flag_spec=+    fi+    supports_anon_versioning=no+    case `$LD -v | $SED -e 's/([^)]\+)\s\+//' 2>&1` in+      *GNU\ gold*) supports_anon_versioning=yes ;;+      *\ [01].* | *\ 2.[0-9].* | *\ 2.10.*) ;; # catch versions < 2.11+      *\ 2.11.93.0.2\ *) supports_anon_versioning=yes ;; # RH7.3 ...+      *\ 2.11.92.0.12\ *) supports_anon_versioning=yes ;; # Mandrake 8.2 ...+      *\ 2.11.*) ;; # other 2.11 versions+      *) supports_anon_versioning=yes ;;+    esac++    # See if GNU ld supports shared libraries.+    case $host_os in+    aix[3-9]*)+      # On AIX/PPC, the GNU linker is very broken+      if test ia64 != "$host_cpu"; then+	ld_shlibs=no+	cat <<_LT_EOF 1>&2++*** Warning: the GNU linker, at least up to release 2.19, is reported+*** to be unable to reliably create shared libraries on AIX.+*** Therefore, libtool is disabling shared libraries support.  If you+*** really care for shared libraries, you may want to install binutils+*** 2.20 or above, or modify your PATH so that a non-GNU linker is found.+*** You will then need to restart the configuration process.++_LT_EOF+      fi+      ;;++    amigaos*)+      case $host_cpu in+      powerpc)+            # see comment about AmigaOS4 .so support+            archive_cmds='$CC -shared $libobjs $deplibs $compiler_flags $wl-soname $wl$soname -o $lib'+            archive_expsym_cmds=''+        ;;+      m68k)+            archive_cmds='$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)'+            hardcode_libdir_flag_spec='-L$libdir'+            hardcode_minus_L=yes+        ;;+      esac+      ;;++    beos*)+      if $LD --help 2>&1 | $GREP ': supported targets:.* elf' > /dev/null; then+	allow_undefined_flag=unsupported+	# Joseph Beckenbach <jrb3@best.com> says some releases of gcc+	# support --undefined.  This deserves some investigation.  FIXME+	archive_cmds='$CC -nostart $libobjs $deplibs $compiler_flags $wl-soname $wl$soname -o $lib'+      else+	ld_shlibs=no+      fi+      ;;++    cygwin* | mingw* | pw32* | cegcc*)+      # _LT_TAGVAR(hardcode_libdir_flag_spec, ) is actually meaningless,+      # as there is no search path for DLLs.+      hardcode_libdir_flag_spec='-L$libdir'+      export_dynamic_flag_spec='$wl--export-all-symbols'+      allow_undefined_flag=unsupported+      always_export_symbols=no+      enable_shared_with_static_runtimes=yes+      export_symbols_cmds='$NM $libobjs $convenience | $global_symbol_pipe | $SED -e '\''/^[BCDGRS][ ]/s/.*[ ]\([^ ]*\)/\1 DATA/;s/^.*[ ]__nm__\([^ ]*\)[ ][^ ]*/\1 DATA/;/^I[ ]/d;/^[AITW][ ]/s/.* //'\'' | sort | uniq > $export_symbols'+      exclude_expsyms='[_]+GLOBAL_OFFSET_TABLE_|[_]+GLOBAL__[FID]_.*|[_]+head_[A-Za-z0-9_]+_dll|[A-Za-z0-9_]+_dll_iname'++      if $LD --help 2>&1 | $GREP 'auto-import' > /dev/null; then+        archive_cmds='$CC -shared $libobjs $deplibs $compiler_flags -o $output_objdir/$soname $wl--enable-auto-image-base -Xlinker --out-implib -Xlinker $lib'+	# If the export-symbols file already is a .def file, use it as+	# is; otherwise, prepend EXPORTS...+	archive_expsym_cmds='if   test DEF = "`$SED -n     -e '\''s/^[	 ]*//'\''     -e '\''/^\(;.*\)*$/d'\''     -e '\''s/^\(EXPORTS\|LIBRARY\)\([	 ].*\)*$/DEF/p'\''     -e q     $export_symbols`" ; then+          cp $export_symbols $output_objdir/$soname.def;+        else+          echo EXPORTS > $output_objdir/$soname.def;+          cat $export_symbols >> $output_objdir/$soname.def;+        fi~+        $CC -shared $output_objdir/$soname.def $libobjs $deplibs $compiler_flags -o $output_objdir/$soname $wl--enable-auto-image-base -Xlinker --out-implib -Xlinker $lib'+      else+	ld_shlibs=no+      fi+      ;;++    haiku*)+      archive_cmds='$CC -shared $libobjs $deplibs $compiler_flags $wl-soname $wl$soname -o $lib'+      link_all_deplibs=yes+      ;;++    os2*)+      hardcode_libdir_flag_spec='-L$libdir'+      hardcode_minus_L=yes+      allow_undefined_flag=unsupported+      shrext_cmds=.dll+      archive_cmds='$ECHO "LIBRARY ${soname%$shared_ext} INITINSTANCE TERMINSTANCE" > $output_objdir/$libname.def~+	$ECHO "DESCRIPTION \"$libname\"" >> $output_objdir/$libname.def~+	$ECHO "DATA MULTIPLE NONSHARED" >> $output_objdir/$libname.def~+	$ECHO EXPORTS >> $output_objdir/$libname.def~+	emxexp $libobjs | $SED /"_DLL_InitTerm"/d >> $output_objdir/$libname.def~+	$CC -Zdll -Zcrtdll -o $output_objdir/$soname $libobjs $deplibs $compiler_flags $output_objdir/$libname.def~+	emximp -o $lib $output_objdir/$libname.def'+      archive_expsym_cmds='$ECHO "LIBRARY ${soname%$shared_ext} INITINSTANCE TERMINSTANCE" > $output_objdir/$libname.def~+	$ECHO "DESCRIPTION \"$libname\"" >> $output_objdir/$libname.def~+	$ECHO "DATA MULTIPLE NONSHARED" >> $output_objdir/$libname.def~+	$ECHO EXPORTS >> $output_objdir/$libname.def~+	prefix_cmds="$SED"~+	if test EXPORTS = "`$SED 1q $export_symbols`"; then+	  prefix_cmds="$prefix_cmds -e 1d";+	fi~+	prefix_cmds="$prefix_cmds -e \"s/^\(.*\)$/_\1/g\""~+	cat $export_symbols | $prefix_cmds >> $output_objdir/$libname.def~+	$CC -Zdll -Zcrtdll -o $output_objdir/$soname $libobjs $deplibs $compiler_flags $output_objdir/$libname.def~+	emximp -o $lib $output_objdir/$libname.def'+      old_archive_From_new_cmds='emximp -o $output_objdir/${libname}_dll.a $output_objdir/$libname.def'+      enable_shared_with_static_runtimes=yes+      file_list_spec='@'+      ;;++    interix[3-9]*)+      hardcode_direct=no+      hardcode_shlibpath_var=no+      hardcode_libdir_flag_spec='$wl-rpath,$libdir'+      export_dynamic_flag_spec='$wl-E'+      # Hack: On Interix 3.x, we cannot compile PIC because of a broken gcc.+      # Instead, shared libraries are loaded at an image base (0x10000000 by+      # default) and relocated if they conflict, which is a slow very memory+      # consuming and fragmenting process.  To avoid this, we pick a random,+      # 256 KiB-aligned image base between 0x50000000 and 0x6FFC0000 at link+      # time.  Moving up from 0x10000000 also allows more sbrk(2) space.+      archive_cmds='$CC -shared $pic_flag $libobjs $deplibs $compiler_flags $wl-h,$soname $wl--image-base,`expr ${RANDOM-$$} % 4096 / 2 \* 262144 + 1342177280` -o $lib'+      archive_expsym_cmds='$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'+      ;;++    gnu* | linux* | tpf* | k*bsd*-gnu | kopensolaris*-gnu)+      tmp_diet=no+      if test linux-dietlibc = "$host_os"; then+	case $cc_basename in+	  diet\ *) tmp_diet=yes;;	# linux-dietlibc with static linking (!diet-dyn)+	esac+      fi+      if $LD --help 2>&1 | $EGREP ': supported targets:.* elf' > /dev/null \+	 && test no = "$tmp_diet"+      then+	tmp_addflag=' $pic_flag'+	tmp_sharedflag='-shared'+	case $cc_basename,$host_cpu in+        pgcc*)				# Portland Group C compiler+	  whole_archive_flag_spec='$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'+	  tmp_addflag=' $pic_flag'+	  ;;+	pgf77* | pgf90* | pgf95* | pgfortran*)+					# Portland Group f77 and f90 compilers+	  whole_archive_flag_spec='$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'+	  tmp_addflag=' $pic_flag -Mnomain' ;;+	ecc*,ia64* | icc*,ia64*)	# Intel C compiler on ia64+	  tmp_addflag=' -i_dynamic' ;;+	efc*,ia64* | ifort*,ia64*)	# Intel Fortran compiler on ia64+	  tmp_addflag=' -i_dynamic -nofor_main' ;;+	ifc* | ifort*)			# Intel Fortran compiler+	  tmp_addflag=' -nofor_main' ;;+	lf95*)				# Lahey Fortran 8.1+	  whole_archive_flag_spec=+	  tmp_sharedflag='--shared' ;;+        nagfor*)                        # NAGFOR 5.3+          tmp_sharedflag='-Wl,-shared' ;;+	xl[cC]* | bgxl[cC]* | mpixl[cC]*) # IBM XL C 8.0 on PPC (deal with xlf below)+	  tmp_sharedflag='-qmkshrobj'+	  tmp_addflag= ;;+	nvcc*)	# Cuda Compiler Driver 2.2+	  whole_archive_flag_spec='$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'+	  compiler_needs_object=yes+	  ;;+	esac+	case `$CC -V 2>&1 | $SED 5q` in+	*Sun\ C*)			# Sun C 5.9+	  whole_archive_flag_spec='$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'+	  compiler_needs_object=yes+	  tmp_sharedflag='-G' ;;+	*Sun\ F*)			# Sun Fortran 8.3+	  tmp_sharedflag='-G' ;;+	esac+	archive_cmds='$CC '"$tmp_sharedflag""$tmp_addflag"' $libobjs $deplibs $compiler_flags $wl-soname $wl$soname -o $lib'++        if test yes = "$supports_anon_versioning"; then+          archive_expsym_cmds='echo "{ global:" > $output_objdir/$libname.ver~+            cat $export_symbols | $SED -e "s/\(.*\)/\1;/" >> $output_objdir/$libname.ver~+            echo "local: *; };" >> $output_objdir/$libname.ver~+            $CC '"$tmp_sharedflag""$tmp_addflag"' $libobjs $deplibs $compiler_flags $wl-soname $wl$soname $wl-version-script $wl$output_objdir/$libname.ver -o $lib'+        fi++	case $cc_basename in+	tcc*)+	  hardcode_libdir_flag_spec='$wl-rpath $wl$libdir'+	  export_dynamic_flag_spec='-rdynamic'+	  ;;+	xlf* | bgf* | bgxlf* | mpixlf*)+	  # IBM XL Fortran 10.1 on PPC cannot create shared libs itself+	  whole_archive_flag_spec='--whole-archive$convenience --no-whole-archive'+	  hardcode_libdir_flag_spec='$wl-rpath $wl$libdir'+	  archive_cmds='$LD -shared $libobjs $deplibs $linker_flags -soname $soname -o $lib'+	  if test yes = "$supports_anon_versioning"; then+	    archive_expsym_cmds='echo "{ global:" > $output_objdir/$libname.ver~+              cat $export_symbols | $SED -e "s/\(.*\)/\1;/" >> $output_objdir/$libname.ver~+              echo "local: *; };" >> $output_objdir/$libname.ver~+              $LD -shared $libobjs $deplibs $linker_flags -soname $soname -version-script $output_objdir/$libname.ver -o $lib'+	  fi+	  ;;+	esac+      else+        ld_shlibs=no+      fi+      ;;++    netbsd* | netbsdelf*-gnu)+      if echo __ELF__ | $CC -E - | $GREP __ELF__ >/dev/null; then+	archive_cmds='$LD -Bshareable $libobjs $deplibs $linker_flags -o $lib'+	wlarc=+      else+	archive_cmds='$CC -shared $pic_flag $libobjs $deplibs $compiler_flags $wl-soname $wl$soname -o $lib'+	archive_expsym_cmds='$CC -shared $pic_flag $libobjs $deplibs $compiler_flags $wl-soname $wl$soname $wl-retain-symbols-file $wl$export_symbols -o $lib'+      fi+      ;;++    solaris*)+      if $LD -v 2>&1 | $GREP 'BFD 2\.8' > /dev/null; then+	ld_shlibs=no+	cat <<_LT_EOF 1>&2++*** Warning: The releases 2.8.* of the GNU linker cannot reliably+*** create shared libraries on Solaris systems.  Therefore, libtool+*** is disabling shared libraries support.  We urge you to upgrade GNU+*** binutils to release 2.9.1 or newer.  Another option is to modify+*** your PATH or compiler configuration so that the native linker is+*** used, and then restart.++_LT_EOF+      elif $LD --help 2>&1 | $GREP ': supported targets:.* elf' > /dev/null; then+	archive_cmds='$CC -shared $pic_flag $libobjs $deplibs $compiler_flags $wl-soname $wl$soname -o $lib'+	archive_expsym_cmds='$CC -shared $pic_flag $libobjs $deplibs $compiler_flags $wl-soname $wl$soname $wl-retain-symbols-file $wl$export_symbols -o $lib'+      else+	ld_shlibs=no+      fi+      ;;++    sysv5* | sco3.2v5* | sco5v6* | unixware* | OpenUNIX*)+      case `$LD -v 2>&1` in+        *\ [01].* | *\ 2.[0-9].* | *\ 2.1[0-5].*)+	ld_shlibs=no+	cat <<_LT_EOF 1>&2++*** Warning: Releases of the GNU linker prior to 2.16.91.0.3 cannot+*** reliably create shared libraries on SCO systems.  Therefore, libtool+*** is disabling shared libraries support.  We urge you to upgrade GNU+*** binutils to release 2.16.91.0.3 or newer.  Another option is to modify+*** your PATH or compiler configuration so that the native linker is+*** used, and then restart.++_LT_EOF+	;;+	*)+	  # For security reasons, it is highly recommended that you always+	  # use absolute paths for naming shared libraries, and exclude the+	  # DT_RUNPATH tag from executables and libraries.  But doing so+	  # requires that you compile everything twice, which is a pain.+	  if $LD --help 2>&1 | $GREP ': supported targets:.* elf' > /dev/null; then+	    hardcode_libdir_flag_spec='$wl-rpath $wl$libdir'+	    archive_cmds='$CC -shared $libobjs $deplibs $compiler_flags $wl-soname $wl$soname -o $lib'+	    archive_expsym_cmds='$CC -shared $libobjs $deplibs $compiler_flags $wl-soname $wl$soname $wl-retain-symbols-file $wl$export_symbols -o $lib'+	  else+	    ld_shlibs=no+	  fi+	;;+      esac+      ;;++    sunos4*)+      archive_cmds='$LD -assert pure-text -Bshareable -o $lib $libobjs $deplibs $linker_flags'+      wlarc=+      hardcode_direct=yes+      hardcode_shlibpath_var=no+      ;;++    *)+      if $LD --help 2>&1 | $GREP ': supported targets:.* elf' > /dev/null; then+	archive_cmds='$CC -shared $pic_flag $libobjs $deplibs $compiler_flags $wl-soname $wl$soname -o $lib'+	archive_expsym_cmds='$CC -shared $pic_flag $libobjs $deplibs $compiler_flags $wl-soname $wl$soname $wl-retain-symbols-file $wl$export_symbols -o $lib'+      else+	ld_shlibs=no+      fi+      ;;+    esac++    if test no = "$ld_shlibs"; then+      runpath_var=+      hardcode_libdir_flag_spec=+      export_dynamic_flag_spec=+      whole_archive_flag_spec=+    fi+  else+    # PORTME fill in a description of your system's linker (not GNU ld)+    case $host_os in+    aix3*)+      allow_undefined_flag=unsupported+      always_export_symbols=yes+      archive_expsym_cmds='$LD -o $output_objdir/$soname $libobjs $deplibs $linker_flags -bE:$export_symbols -T512 -H512 -bM:SRE~$AR $AR_FLAGS $lib $output_objdir/$soname'+      # Note: this linker hardcodes the directories in LIBPATH if there+      # are no directories specified by -L.+      hardcode_minus_L=yes+      if test yes = "$GCC" && test -z "$lt_prog_compiler_static"; then+	# Neither direct hardcoding nor static linking is supported with a+	# broken collect2.+	hardcode_direct=unsupported+      fi+      ;;++    aix[4-9]*)+      if test ia64 = "$host_cpu"; then+	# On IA64, the linker does run time linking by default, so we don't+	# have to do anything special.+	aix_use_runtimelinking=no+	exp_sym_flag='-Bexport'+	no_entry_flag=+      else+	# If we're using GNU nm, then we don't want the "-C" option.+	# -C means demangle to GNU nm, but means don't demangle to AIX nm.+	# Without the "-l" option, or with the "-B" option, AIX nm treats+	# weak defined symbols like other global defined symbols, whereas+	# GNU nm marks them as "W".+	# While the 'weak' keyword is ignored in the Export File, we need+	# it in the Import File for the 'aix-soname' feature, so we have+	# to replace the "-B" option with "-P" for AIX nm.+	if $NM -V 2>&1 | $GREP 'GNU' > /dev/null; then+	  export_symbols_cmds='$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'+	else+	  export_symbols_cmds='`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'+	fi+	aix_use_runtimelinking=no++	# Test if we are trying to use run time linking or normal+	# AIX style linking. If -brtl is somewhere in LDFLAGS, we+	# have runtime linking enabled, and use it for executables.+	# For shared libraries, we enable/disable runtime linking+	# depending on the kind of the shared library created -+	# when "with_aix_soname,aix_use_runtimelinking" is:+	# "aix,no"   lib.a(lib.so.V) shared, rtl:no,  for executables+	# "aix,yes"  lib.so          shared, rtl:yes, for executables+	#            lib.a           static archive+	# "both,no"  lib.so.V(shr.o) shared, rtl:yes+	#            lib.a(lib.so.V) shared, rtl:no,  for executables+	# "both,yes" lib.so.V(shr.o) shared, rtl:yes, for executables+	#            lib.a(lib.so.V) shared, rtl:no+	# "svr4,*"   lib.so.V(shr.o) shared, rtl:yes, for executables+	#            lib.a           static archive+	case $host_os in aix4.[23]|aix4.[23].*|aix[5-9]*)+	  for ld_flag in $LDFLAGS; do+	  if (test x-brtl = "x$ld_flag" || test x-Wl,-brtl = "x$ld_flag"); then+	    aix_use_runtimelinking=yes+	    break+	  fi+	  done+	  if test svr4,no = "$with_aix_soname,$aix_use_runtimelinking"; then+	    # With aix-soname=svr4, we create the lib.so.V shared archives only,+	    # so we don't have lib.a shared libs to link our executables.+	    # We have to force runtime linking in this case.+	    aix_use_runtimelinking=yes+	    LDFLAGS="$LDFLAGS -Wl,-brtl"+	  fi+	  ;;+	esac++	exp_sym_flag='-bexport'+	no_entry_flag='-bnoentry'+      fi++      # When large executables or shared objects are built, AIX ld can+      # have problems creating the table of contents.  If linking a library+      # or program results in "error TOC overflow" add -mminimal-toc to+      # CXXFLAGS/CFLAGS for g++/gcc.  In the cases where that is not+      # enough to fix the problem, add -Wl,-bbigtoc to LDFLAGS.++      archive_cmds=''+      hardcode_direct=yes+      hardcode_direct_absolute=yes+      hardcode_libdir_separator=':'+      link_all_deplibs=yes+      file_list_spec='$wl-f,'+      case $with_aix_soname,$aix_use_runtimelinking in+      aix,*) ;; # traditional, no import file+      svr4,* | *,yes) # use import file+	# The Import File defines what to hardcode.+	hardcode_direct=no+	hardcode_direct_absolute=no+	;;+      esac++      if test yes = "$GCC"; then+	case $host_os in aix4.[012]|aix4.[012].*)+	# We only want to do this on AIX 4.2 and lower, the check+	# below for broken collect2 doesn't work under 4.3++	  collect2name=`$CC -print-prog-name=collect2`+	  if test -f "$collect2name" &&+	   strings "$collect2name" | $GREP resolve_lib_name >/dev/null+	  then+	  # We have reworked collect2+	  :+	  else+	  # We have old collect2+	  hardcode_direct=unsupported+	  # It fails to find uninstalled libraries when the uninstalled+	  # path is not listed in the libpath.  Setting hardcode_minus_L+	  # to unsupported forces relinking+	  hardcode_minus_L=yes+	  hardcode_libdir_flag_spec='-L$libdir'+	  hardcode_libdir_separator=+	  fi+	  ;;+	esac+	shared_flag='-shared'+	if test yes = "$aix_use_runtimelinking"; then+	  shared_flag="$shared_flag "'$wl-G'+	fi+	# Need to ensure runtime linking is disabled for the traditional+	# shared library, or the linker may eventually find shared libraries+	# /with/ Import File - we do not want to mix them.+	shared_flag_aix='-shared'+	shared_flag_svr4='-shared $wl-G'+      else+	# not using gcc+	if test ia64 = "$host_cpu"; then+	# VisualAge C++, Version 5.5 for AIX 5L for IA-64, Beta 3 Release+	# chokes on -Wl,-G. The following line is correct:+	  shared_flag='-G'+	else+	  if test yes = "$aix_use_runtimelinking"; then+	    shared_flag='$wl-G'+	  else+	    shared_flag='$wl-bM:SRE'+	  fi+	  shared_flag_aix='$wl-bM:SRE'+	  shared_flag_svr4='$wl-G'+	fi+      fi++      export_dynamic_flag_spec='$wl-bexpall'+      # It seems that -bexpall does not export symbols beginning with+      # underscore (_), so it is better to generate a list of symbols to export.+      always_export_symbols=yes+      if test aix,yes = "$with_aix_soname,$aix_use_runtimelinking"; then+	# Warning - without using the other runtime loading flags (-brtl),+	# -berok will link without error, but may produce a broken library.+	allow_undefined_flag='-berok'+        # Determine the default libpath from the value encoded in an+        # empty executable.+        if test set = "${lt_cv_aix_libpath+set}"; then+  aix_libpath=$lt_cv_aix_libpath+else+  if ${lt_cv_aix_libpath_+:} false; then :+  $as_echo_n "(cached) " >&6+else+  cat confdefs.h - <<_ACEOF >conftest.$ac_ext+/* end confdefs.h.  */++int+main ()+{++  ;+  return 0;+}+_ACEOF+if ac_fn_c_try_link "$LINENO"; then :++  lt_aix_libpath_sed='+      /Import File Strings/,/^$/ {+	  /^0/ {+	      s/^0  *\([^ ]*\) *$/\1/+	      p+	  }+      }'+  lt_cv_aix_libpath_=`dump -H conftest$ac_exeext 2>/dev/null | $SED -n -e "$lt_aix_libpath_sed"`+  # Check for a 64-bit object if we didn't find anything.+  if test -z "$lt_cv_aix_libpath_"; then+    lt_cv_aix_libpath_=`dump -HX64 conftest$ac_exeext 2>/dev/null | $SED -n -e "$lt_aix_libpath_sed"`+  fi+fi+rm -f core conftest.err conftest.$ac_objext \+    conftest$ac_exeext conftest.$ac_ext+  if test -z "$lt_cv_aix_libpath_"; then+    lt_cv_aix_libpath_=/usr/lib:/lib+  fi++fi++  aix_libpath=$lt_cv_aix_libpath_+fi++        hardcode_libdir_flag_spec='$wl-blibpath:$libdir:'"$aix_libpath"+        archive_expsym_cmds='$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+      else+	if test ia64 = "$host_cpu"; then+	  hardcode_libdir_flag_spec='$wl-R $libdir:/usr/lib:/lib'+	  allow_undefined_flag="-z nodefs"+	  archive_expsym_cmds="\$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"+	else+	 # Determine the default libpath from the value encoded in an+	 # empty executable.+	 if test set = "${lt_cv_aix_libpath+set}"; then+  aix_libpath=$lt_cv_aix_libpath+else+  if ${lt_cv_aix_libpath_+:} false; then :+  $as_echo_n "(cached) " >&6+else+  cat confdefs.h - <<_ACEOF >conftest.$ac_ext+/* end confdefs.h.  */++int+main ()+{++  ;+  return 0;+}+_ACEOF+if ac_fn_c_try_link "$LINENO"; then :++  lt_aix_libpath_sed='+      /Import File Strings/,/^$/ {+	  /^0/ {+	      s/^0  *\([^ ]*\) *$/\1/+	      p+	  }+      }'+  lt_cv_aix_libpath_=`dump -H conftest$ac_exeext 2>/dev/null | $SED -n -e "$lt_aix_libpath_sed"`+  # Check for a 64-bit object if we didn't find anything.+  if test -z "$lt_cv_aix_libpath_"; then+    lt_cv_aix_libpath_=`dump -HX64 conftest$ac_exeext 2>/dev/null | $SED -n -e "$lt_aix_libpath_sed"`+  fi+fi+rm -f core conftest.err conftest.$ac_objext \+    conftest$ac_exeext conftest.$ac_ext+  if test -z "$lt_cv_aix_libpath_"; then+    lt_cv_aix_libpath_=/usr/lib:/lib+  fi++fi++  aix_libpath=$lt_cv_aix_libpath_+fi++	 hardcode_libdir_flag_spec='$wl-blibpath:$libdir:'"$aix_libpath"+	  # Warning - without using the other run time loading flags,+	  # -berok will link without error, but may produce a broken library.+	  no_undefined_flag=' $wl-bernotok'+	  allow_undefined_flag=' $wl-berok'+	  if test yes = "$with_gnu_ld"; then+	    # We only use this code for GNU lds that support --whole-archive.+	    whole_archive_flag_spec='$wl--whole-archive$convenience $wl--no-whole-archive'+	  else+	    # Exported symbols can be pulled into shared objects from archives+	    whole_archive_flag_spec='$convenience'+	  fi+	  archive_cmds_need_lc=yes+	  archive_expsym_cmds='$RM -r $output_objdir/$realname.d~$MKDIR $output_objdir/$realname.d'+	  # -brtl affects multiple linker settings, -berok does not and is overridden later+	  compiler_flags_filtered='`func_echo_all "$compiler_flags " | $SED -e "s%-brtl\\([, ]\\)%-berok\\1%g"`'+	  if test svr4 != "$with_aix_soname"; then+	    # This is similar to how AIX traditionally builds its shared libraries.+	    archive_expsym_cmds="$archive_expsym_cmds"'~$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'+	  fi+	  if test aix != "$with_aix_soname"; then+	    archive_expsym_cmds="$archive_expsym_cmds"'~$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'+	  else+	    # used by -dlpreopen to get the symbols+	    archive_expsym_cmds="$archive_expsym_cmds"'~$MV  $output_objdir/$realname.d/$soname $output_objdir'+	  fi+	  archive_expsym_cmds="$archive_expsym_cmds"'~$RM -r $output_objdir/$realname.d'+	fi+      fi+      ;;++    amigaos*)+      case $host_cpu in+      powerpc)+            # see comment about AmigaOS4 .so support+            archive_cmds='$CC -shared $libobjs $deplibs $compiler_flags $wl-soname $wl$soname -o $lib'+            archive_expsym_cmds=''+        ;;+      m68k)+            archive_cmds='$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)'+            hardcode_libdir_flag_spec='-L$libdir'+            hardcode_minus_L=yes+        ;;+      esac+      ;;++    bsdi[45]*)+      export_dynamic_flag_spec=-rdynamic+      ;;++    cygwin* | mingw* | pw32* | cegcc*)+      # When not using gcc, we currently assume that we are using+      # Microsoft Visual C++ or Intel C++ Compiler.+      # hardcode_libdir_flag_spec is actually meaningless, as there is+      # no search path for DLLs.+      case $cc_basename in+      cl* | icl*)+	# Native MSVC or ICC+	hardcode_libdir_flag_spec=' '+	allow_undefined_flag=unsupported+	always_export_symbols=yes+	file_list_spec='@'+	# Tell ltmain to make .lib files, not .a files.+	libext=lib+	# Tell ltmain to make .dll files, not .so files.+	shrext_cmds=.dll+	# FIXME: Setting linknames here is a bad hack.+	archive_cmds='$CC -o $output_objdir/$soname $libobjs $compiler_flags $deplibs -Wl,-DLL,-IMPLIB:"$tool_output_objdir$libname.dll.lib"~linknames='+	archive_expsym_cmds='if   test DEF = "`$SED -n     -e '\''s/^[	 ]*//'\''     -e '\''/^\(;.*\)*$/d'\''     -e '\''s/^\(EXPORTS\|LIBRARY\)\([	 ].*\)*$/DEF/p'\''     -e q     $export_symbols`" ; then+            cp "$export_symbols" "$output_objdir/$soname.def";+            echo "$tool_output_objdir$soname.def" > "$output_objdir/$soname.exp";+          else+            $SED -e '\''s/^/-link -EXPORT:/'\'' < $export_symbols > $output_objdir/$soname.exp;+          fi~+          $CC -o $tool_output_objdir$soname $libobjs $compiler_flags $deplibs "@$tool_output_objdir$soname.exp" -Wl,-DLL,-IMPLIB:"$tool_output_objdir$libname.dll.lib"~+          linknames='+	# The linker will not automatically build a static lib if we build a DLL.+	# _LT_TAGVAR(old_archive_from_new_cmds, )='true'+	enable_shared_with_static_runtimes=yes+	exclude_expsyms='_NULL_IMPORT_DESCRIPTOR|_IMPORT_DESCRIPTOR_.*'+	export_symbols_cmds='$NM $libobjs $convenience | $global_symbol_pipe | $SED -e '\''/^[BCDGRS][ ]/s/.*[ ]\([^ ]*\)/\1,DATA/'\'' | $SED -e '\''/^[AITW][ ]/s/.*[ ]//'\'' | sort | uniq > $export_symbols'+	# Don't use ranlib+	old_postinstall_cmds='chmod 644 $oldlib'+	postlink_cmds='lt_outputfile="@OUTPUT@"~+          lt_tool_outputfile="@TOOL_OUTPUT@"~+          case $lt_outputfile in+            *.exe|*.EXE) ;;+            *)+              lt_outputfile=$lt_outputfile.exe+              lt_tool_outputfile=$lt_tool_outputfile.exe+              ;;+          esac~+          if test : != "$MANIFEST_TOOL" && test -f "$lt_outputfile.manifest"; then+            $MANIFEST_TOOL -manifest "$lt_tool_outputfile.manifest" -outputresource:"$lt_tool_outputfile" || exit 1;+            $RM "$lt_outputfile.manifest";+          fi'+	;;+      *)+	# Assume MSVC and ICC wrapper+	hardcode_libdir_flag_spec=' '+	allow_undefined_flag=unsupported+	# Tell ltmain to make .lib files, not .a files.+	libext=lib+	# Tell ltmain to make .dll files, not .so files.+	shrext_cmds=.dll+	# FIXME: Setting linknames here is a bad hack.+	archive_cmds='$CC -o $lib $libobjs $compiler_flags `func_echo_all "$deplibs" | $SED '\''s/ -lc$//'\''` -link -dll~linknames='+	# The linker will automatically build a .lib file if we build a DLL.+	old_archive_from_new_cmds='true'+	# FIXME: Should let the user specify the lib program.+	old_archive_cmds='lib -OUT:$oldlib$oldobjs$old_deplibs'+	enable_shared_with_static_runtimes=yes+	;;+      esac+      ;;++    darwin* | rhapsody*)+++  archive_cmds_need_lc=no+  hardcode_direct=no+  hardcode_automatic=yes+  hardcode_shlibpath_var=unsupported+  if test yes = "$lt_cv_ld_force_load"; then+    whole_archive_flag_spec='`for conv in $convenience\"\"; do test  -n \"$conv\" && new_convenience=\"$new_convenience $wl-force_load,$conv\"; done; func_echo_all \"$new_convenience\"`'++  else+    whole_archive_flag_spec=''+  fi+  link_all_deplibs=yes+  allow_undefined_flag=$_lt_dar_allow_undefined+  case $cc_basename in+     ifort*|nagfor*) _lt_dar_can_shared=yes ;;+     *) _lt_dar_can_shared=$GCC ;;+  esac+  if test yes = "$_lt_dar_can_shared"; then+    output_verbose_link_cmd=func_echo_all+    archive_cmds="\$CC -dynamiclib \$allow_undefined_flag -o \$lib \$libobjs \$deplibs \$compiler_flags -install_name \$rpath/\$soname \$verstring $_lt_dar_single_mod$_lt_dsymutil"+    module_cmds="\$CC \$allow_undefined_flag -o \$lib -bundle \$libobjs \$deplibs \$compiler_flags$_lt_dsymutil"+    archive_expsym_cmds="$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"+    module_expsym_cmds="$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"++  else+  ld_shlibs=no+  fi++      ;;++    dgux*)+      archive_cmds='$LD -G -h $soname -o $lib $libobjs $deplibs $linker_flags'+      hardcode_libdir_flag_spec='-L$libdir'+      hardcode_shlibpath_var=no+      ;;++    # FreeBSD 2.2.[012] allows us to include c++rt0.o to get C++ constructor+    # support.  Future versions do this automatically, but an explicit c++rt0.o+    # does not break anything, and helps significantly (at the cost of a little+    # extra space).+    freebsd2.2*)+      archive_cmds='$LD -Bshareable -o $lib $libobjs $deplibs $linker_flags /usr/lib/c++rt0.o'+      hardcode_libdir_flag_spec='-R$libdir'+      hardcode_direct=yes+      hardcode_shlibpath_var=no+      ;;++    # Unfortunately, older versions of FreeBSD 2 do not have this feature.+    freebsd2.*)+      archive_cmds='$LD -Bshareable -o $lib $libobjs $deplibs $linker_flags'+      hardcode_direct=yes+      hardcode_minus_L=yes+      hardcode_shlibpath_var=no+      ;;++    # FreeBSD 3 and greater uses gcc -shared to do shared libraries.+    freebsd* | dragonfly* | midnightbsd*)+      archive_cmds='$CC -shared $pic_flag -o $lib $libobjs $deplibs $compiler_flags'+      hardcode_libdir_flag_spec='-R$libdir'+      hardcode_direct=yes+      hardcode_shlibpath_var=no+      ;;++    hpux9*)+      if test yes = "$GCC"; then+	archive_cmds='$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'+      else+	archive_cmds='$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'+      fi+      hardcode_libdir_flag_spec='$wl+b $wl$libdir'+      hardcode_libdir_separator=:+      hardcode_direct=yes++      # hardcode_minus_L: Not really in the search PATH,+      # but as the default location of the library.+      hardcode_minus_L=yes+      export_dynamic_flag_spec='$wl-E'+      ;;++    hpux10*)+      if test yes,no = "$GCC,$with_gnu_ld"; then+	archive_cmds='$CC -shared $pic_flag $wl+h $wl$soname $wl+b $wl$install_libdir -o $lib $libobjs $deplibs $compiler_flags'+      else+	archive_cmds='$LD -b +h $soname +b $install_libdir -o $lib $libobjs $deplibs $linker_flags'+      fi+      if test no = "$with_gnu_ld"; then+	hardcode_libdir_flag_spec='$wl+b $wl$libdir'+	hardcode_libdir_separator=:+	hardcode_direct=yes+	hardcode_direct_absolute=yes+	export_dynamic_flag_spec='$wl-E'+	# hardcode_minus_L: Not really in the search PATH,+	# but as the default location of the library.+	hardcode_minus_L=yes+      fi+      ;;++    hpux11*)+      if test yes,no = "$GCC,$with_gnu_ld"; then+	case $host_cpu in+	hppa*64*)+	  archive_cmds='$CC -shared $wl+h $wl$soname -o $lib $libobjs $deplibs $compiler_flags'+	  ;;+	ia64*)+	  archive_cmds='$CC -shared $pic_flag $wl+h $wl$soname $wl+nodefaultrpath -o $lib $libobjs $deplibs $compiler_flags'+	  ;;+	*)+	  archive_cmds='$CC -shared $pic_flag $wl+h $wl$soname $wl+b $wl$install_libdir -o $lib $libobjs $deplibs $compiler_flags'+	  ;;+	esac+      else+	case $host_cpu in+	hppa*64*)+	  archive_cmds='$CC -b $wl+h $wl$soname -o $lib $libobjs $deplibs $compiler_flags'+	  ;;+	ia64*)+	  archive_cmds='$CC -b $wl+h $wl$soname $wl+nodefaultrpath -o $lib $libobjs $deplibs $compiler_flags'+	  ;;+	*)++	  # Older versions of the 11.00 compiler do not understand -b yet+	  # (HP92453-01 A.11.01.20 doesn't, HP92453-01 B.11.X.35175-35176.GP does)+	  { $as_echo "$as_me:${as_lineno-$LINENO}: checking if $CC understands -b" >&5+$as_echo_n "checking if $CC understands -b... " >&6; }+if ${lt_cv_prog_compiler__b+:} false; then :+  $as_echo_n "(cached) " >&6+else+  lt_cv_prog_compiler__b=no+   save_LDFLAGS=$LDFLAGS+   LDFLAGS="$LDFLAGS -b"+   echo "$lt_simple_link_test_code" > conftest.$ac_ext+   if (eval $ac_link 2>conftest.err) && test -s conftest$ac_exeext; then+     # The linker can only warn and ignore the option if not recognized+     # So say no if there are warnings+     if test -s conftest.err; then+       # Append any errors to the config.log.+       cat conftest.err 1>&5+       $ECHO "$_lt_linker_boilerplate" | $SED '/^$/d' > conftest.exp+       $SED '/^$/d; /^ *+/d' conftest.err >conftest.er2+       if diff conftest.exp conftest.er2 >/dev/null; then+         lt_cv_prog_compiler__b=yes+       fi+     else+       lt_cv_prog_compiler__b=yes+     fi+   fi+   $RM -r conftest*+   LDFLAGS=$save_LDFLAGS++fi+{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_cv_prog_compiler__b" >&5+$as_echo "$lt_cv_prog_compiler__b" >&6; }++if test yes = "$lt_cv_prog_compiler__b"; then+    archive_cmds='$CC -b $wl+h $wl$soname $wl+b $wl$install_libdir -o $lib $libobjs $deplibs $compiler_flags'+else+    archive_cmds='$LD -b +h $soname +b $install_libdir -o $lib $libobjs $deplibs $linker_flags'+fi++	  ;;+	esac+      fi+      if test no = "$with_gnu_ld"; then+	hardcode_libdir_flag_spec='$wl+b $wl$libdir'+	hardcode_libdir_separator=:++	case $host_cpu in+	hppa*64*|ia64*)+	  hardcode_direct=no+	  hardcode_shlibpath_var=no+	  ;;+	*)+	  hardcode_direct=yes+	  hardcode_direct_absolute=yes+	  export_dynamic_flag_spec='$wl-E'++	  # hardcode_minus_L: Not really in the search PATH,+	  # but as the default location of the library.+	  hardcode_minus_L=yes+	  ;;+	esac+      fi+      ;;++    irix5* | irix6* | nonstopux*)+      if test yes = "$GCC"; then+	archive_cmds='$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'+	# Try to use the -exported_symbol ld option, if it does not+	# work, assume that -exports_file does not work either and+	# implicitly export all symbols.+	# This should be the same for all languages, so no per-tag cache variable.+	{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether the $host_os linker accepts -exported_symbol" >&5+$as_echo_n "checking whether the $host_os linker accepts -exported_symbol... " >&6; }+if ${lt_cv_irix_exported_symbol+:} false; then :+  $as_echo_n "(cached) " >&6+else+  save_LDFLAGS=$LDFLAGS+	   LDFLAGS="$LDFLAGS -shared $wl-exported_symbol ${wl}foo $wl-update_registry $wl/dev/null"+	   cat confdefs.h - <<_ACEOF >conftest.$ac_ext+/* end confdefs.h.  */+int foo (void) { return 0; }+_ACEOF+if ac_fn_c_try_link "$LINENO"; then :+  lt_cv_irix_exported_symbol=yes+else+  lt_cv_irix_exported_symbol=no+fi+rm -f core conftest.err conftest.$ac_objext \+    conftest$ac_exeext conftest.$ac_ext+           LDFLAGS=$save_LDFLAGS+fi+{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_cv_irix_exported_symbol" >&5+$as_echo "$lt_cv_irix_exported_symbol" >&6; }+	if test yes = "$lt_cv_irix_exported_symbol"; then+          archive_expsym_cmds='$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'+	fi+	link_all_deplibs=no+      else+	archive_cmds='$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'+	archive_expsym_cmds='$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'+      fi+      archive_cmds_need_lc='no'+      hardcode_libdir_flag_spec='$wl-rpath $wl$libdir'+      hardcode_libdir_separator=:+      inherit_rpath=yes+      link_all_deplibs=yes+      ;;++    linux*)+      case $cc_basename in+      tcc*)+	# Fabrice Bellard et al's Tiny C Compiler+	ld_shlibs=yes+	archive_cmds='$CC -shared $pic_flag -o $lib $libobjs $deplibs $compiler_flags'+	hardcode_libdir_flag_spec='$wl-rpath $wl$libdir'+	;;+      esac+      ;;++    netbsd* | netbsdelf*-gnu)+      if echo __ELF__ | $CC -E - | $GREP __ELF__ >/dev/null; then+	archive_cmds='$LD -Bshareable -o $lib $libobjs $deplibs $linker_flags'  # a.out+      else+	archive_cmds='$LD -shared -o $lib $libobjs $deplibs $linker_flags'      # ELF+      fi+      hardcode_libdir_flag_spec='-R$libdir'+      hardcode_direct=yes+      hardcode_shlibpath_var=no+      ;;++    newsos6)+      archive_cmds='$LD -G -h $soname -o $lib $libobjs $deplibs $linker_flags'+      hardcode_direct=yes+      hardcode_libdir_flag_spec='$wl-rpath $wl$libdir'+      hardcode_libdir_separator=:+      hardcode_shlibpath_var=no+      ;;++    *nto* | *qnx*)+      ;;++    openbsd* | bitrig*)+      if test -f /usr/libexec/ld.so; then+	hardcode_direct=yes+	hardcode_shlibpath_var=no+	hardcode_direct_absolute=yes+	if test -z "`echo __ELF__ | $CC -E - | $GREP __ELF__`"; then+	  archive_cmds='$CC -shared $pic_flag -o $lib $libobjs $deplibs $compiler_flags'+	  archive_expsym_cmds='$CC -shared $pic_flag -o $lib $libobjs $deplibs $compiler_flags $wl-retain-symbols-file,$export_symbols'+	  hardcode_libdir_flag_spec='$wl-rpath,$libdir'+	  export_dynamic_flag_spec='$wl-E'+	else+	  archive_cmds='$CC -shared $pic_flag -o $lib $libobjs $deplibs $compiler_flags'+	  hardcode_libdir_flag_spec='$wl-rpath,$libdir'+	fi+      else+	ld_shlibs=no+      fi+      ;;++    os2*)+      hardcode_libdir_flag_spec='-L$libdir'+      hardcode_minus_L=yes+      allow_undefined_flag=unsupported+      shrext_cmds=.dll+      archive_cmds='$ECHO "LIBRARY ${soname%$shared_ext} INITINSTANCE TERMINSTANCE" > $output_objdir/$libname.def~+	$ECHO "DESCRIPTION \"$libname\"" >> $output_objdir/$libname.def~+	$ECHO "DATA MULTIPLE NONSHARED" >> $output_objdir/$libname.def~+	$ECHO EXPORTS >> $output_objdir/$libname.def~+	emxexp $libobjs | $SED /"_DLL_InitTerm"/d >> $output_objdir/$libname.def~+	$CC -Zdll -Zcrtdll -o $output_objdir/$soname $libobjs $deplibs $compiler_flags $output_objdir/$libname.def~+	emximp -o $lib $output_objdir/$libname.def'+      archive_expsym_cmds='$ECHO "LIBRARY ${soname%$shared_ext} INITINSTANCE TERMINSTANCE" > $output_objdir/$libname.def~+	$ECHO "DESCRIPTION \"$libname\"" >> $output_objdir/$libname.def~+	$ECHO "DATA MULTIPLE NONSHARED" >> $output_objdir/$libname.def~+	$ECHO EXPORTS >> $output_objdir/$libname.def~+	prefix_cmds="$SED"~+	if test EXPORTS = "`$SED 1q $export_symbols`"; then+	  prefix_cmds="$prefix_cmds -e 1d";+	fi~+	prefix_cmds="$prefix_cmds -e \"s/^\(.*\)$/_\1/g\""~+	cat $export_symbols | $prefix_cmds >> $output_objdir/$libname.def~+	$CC -Zdll -Zcrtdll -o $output_objdir/$soname $libobjs $deplibs $compiler_flags $output_objdir/$libname.def~+	emximp -o $lib $output_objdir/$libname.def'+      old_archive_From_new_cmds='emximp -o $output_objdir/${libname}_dll.a $output_objdir/$libname.def'+      enable_shared_with_static_runtimes=yes+      file_list_spec='@'+      ;;++    osf3*)+      if test yes = "$GCC"; then+	allow_undefined_flag=' $wl-expect_unresolved $wl\*'+	archive_cmds='$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'+      else+	allow_undefined_flag=' -expect_unresolved \*'+	archive_cmds='$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'+      fi+      archive_cmds_need_lc='no'+      hardcode_libdir_flag_spec='$wl-rpath $wl$libdir'+      hardcode_libdir_separator=:+      ;;++    osf4* | osf5*)	# as osf3* with the addition of -msym flag+      if test yes = "$GCC"; then+	allow_undefined_flag=' $wl-expect_unresolved $wl\*'+	archive_cmds='$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'+	hardcode_libdir_flag_spec='$wl-rpath $wl$libdir'+      else+	allow_undefined_flag=' -expect_unresolved \*'+	archive_cmds='$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'+	archive_expsym_cmds='for i in `cat $export_symbols`; do printf "%s %s\\n" -exported_symbol "\$i" >> $lib.exp; done; printf "%s\\n" "-hidden">> $lib.exp~+          $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'++	# Both c and cxx compiler support -rpath directly+	hardcode_libdir_flag_spec='-rpath $libdir'+      fi+      archive_cmds_need_lc='no'+      hardcode_libdir_separator=:+      ;;++    solaris*)+      no_undefined_flag=' -z defs'+      if test yes = "$GCC"; then+	wlarc='$wl'+	archive_cmds='$CC -shared $pic_flag $wl-z ${wl}text $wl-h $wl$soname -o $lib $libobjs $deplibs $compiler_flags'+	archive_expsym_cmds='echo "{ global:" > $lib.exp~cat $export_symbols | $SED -e "s/\(.*\)/\1;/" >> $lib.exp~echo "local: *; };" >> $lib.exp~+          $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'+      else+	case `$CC -V 2>&1` in+	*"Compilers 5.0"*)+	  wlarc=''+	  archive_cmds='$LD -G$allow_undefined_flag -h $soname -o $lib $libobjs $deplibs $linker_flags'+	  archive_expsym_cmds='echo "{ global:" > $lib.exp~cat $export_symbols | $SED -e "s/\(.*\)/\1;/" >> $lib.exp~echo "local: *; };" >> $lib.exp~+            $LD -G$allow_undefined_flag -M $lib.exp -h $soname -o $lib $libobjs $deplibs $linker_flags~$RM $lib.exp'+	  ;;+	*)+	  wlarc='$wl'+	  archive_cmds='$CC -G$allow_undefined_flag -h $soname -o $lib $libobjs $deplibs $compiler_flags'+	  archive_expsym_cmds='echo "{ global:" > $lib.exp~cat $export_symbols | $SED -e "s/\(.*\)/\1;/" >> $lib.exp~echo "local: *; };" >> $lib.exp~+            $CC -G$allow_undefined_flag -M $lib.exp -h $soname -o $lib $libobjs $deplibs $compiler_flags~$RM $lib.exp'+	  ;;+	esac+      fi+      hardcode_libdir_flag_spec='-R$libdir'+      hardcode_shlibpath_var=no+      case $host_os in+      solaris2.[0-5] | solaris2.[0-5].*) ;;+      *)+	# The compiler driver will combine and reorder linker options,+	# but understands '-z linker_flag'.  GCC discards it without '$wl',+	# but is careful enough not to reorder.+	# Supported since Solaris 2.6 (maybe 2.5.1?)+	if test yes = "$GCC"; then+	  whole_archive_flag_spec='$wl-z ${wl}allextract$convenience $wl-z ${wl}defaultextract'+	else+	  whole_archive_flag_spec='-z allextract$convenience -z defaultextract'+	fi+	;;+      esac+      link_all_deplibs=yes+      ;;++    sunos4*)+      if test sequent = "$host_vendor"; then+	# Use $CC to link under sequent, because it throws in some extra .o+	# files that make .init and .fini sections work.+	archive_cmds='$CC -G $wl-h $soname -o $lib $libobjs $deplibs $compiler_flags'+      else+	archive_cmds='$LD -assert pure-text -Bstatic -o $lib $libobjs $deplibs $linker_flags'+      fi+      hardcode_libdir_flag_spec='-L$libdir'+      hardcode_direct=yes+      hardcode_minus_L=yes+      hardcode_shlibpath_var=no+      ;;++    sysv4)+      case $host_vendor in+	sni)+	  archive_cmds='$LD -G -h $soname -o $lib $libobjs $deplibs $linker_flags'+	  hardcode_direct=yes # is this really true???+	;;+	siemens)+	  ## LD is ld it makes a PLAMLIB+	  ## CC just makes a GrossModule.+	  archive_cmds='$LD -G -o $lib $libobjs $deplibs $linker_flags'+	  reload_cmds='$CC -r -o $output$reload_objs'+	  hardcode_direct=no+        ;;+	motorola)+	  archive_cmds='$LD -G -h $soname -o $lib $libobjs $deplibs $linker_flags'+	  hardcode_direct=no #Motorola manual says yes, but my tests say they lie+	;;+      esac+      runpath_var='LD_RUN_PATH'+      hardcode_shlibpath_var=no+      ;;++    sysv4.3*)+      archive_cmds='$LD -G -h $soname -o $lib $libobjs $deplibs $linker_flags'+      hardcode_shlibpath_var=no+      export_dynamic_flag_spec='-Bexport'+      ;;++    sysv4*MP*)+      if test -d /usr/nec; then+	archive_cmds='$LD -G -h $soname -o $lib $libobjs $deplibs $linker_flags'+	hardcode_shlibpath_var=no+	runpath_var=LD_RUN_PATH+	hardcode_runpath_var=yes+	ld_shlibs=yes+      fi+      ;;++    sysv4*uw2* | sysv5OpenUNIX* | sysv5UnixWare7.[01].[10]* | unixware7* | sco3.2v5.0.[024]*)+      no_undefined_flag='$wl-z,text'+      archive_cmds_need_lc=no+      hardcode_shlibpath_var=no+      runpath_var='LD_RUN_PATH'++      if test yes = "$GCC"; then+	archive_cmds='$CC -shared $wl-h,$soname -o $lib $libobjs $deplibs $compiler_flags'+	archive_expsym_cmds='$CC -shared $wl-Bexport:$export_symbols $wl-h,$soname -o $lib $libobjs $deplibs $compiler_flags'+      else+	archive_cmds='$CC -G $wl-h,$soname -o $lib $libobjs $deplibs $compiler_flags'+	archive_expsym_cmds='$CC -G $wl-Bexport:$export_symbols $wl-h,$soname -o $lib $libobjs $deplibs $compiler_flags'+      fi+      ;;++    sysv5* | sco3.2v5* | sco5v6*)+      # Note: We CANNOT use -z defs as we might desire, because we do not+      # link with -lc, and that would cause any symbols used from libc to+      # always be unresolved, which means just about no library would+      # ever link correctly.  If we're not using GNU ld we use -z text+      # though, which does catch some bad symbols but isn't as heavy-handed+      # as -z defs.+      no_undefined_flag='$wl-z,text'+      allow_undefined_flag='$wl-z,nodefs'+      archive_cmds_need_lc=no+      hardcode_shlibpath_var=no+      hardcode_libdir_flag_spec='$wl-R,$libdir'+      hardcode_libdir_separator=':'+      link_all_deplibs=yes+      export_dynamic_flag_spec='$wl-Bexport'+      runpath_var='LD_RUN_PATH'++      if test yes = "$GCC"; then+	archive_cmds='$CC -shared $wl-h,$soname -o $lib $libobjs $deplibs $compiler_flags'+	archive_expsym_cmds='$CC -shared $wl-Bexport:$export_symbols $wl-h,$soname -o $lib $libobjs $deplibs $compiler_flags'+      else+	archive_cmds='$CC -G $wl-h,$soname -o $lib $libobjs $deplibs $compiler_flags'+	archive_expsym_cmds='$CC -G $wl-Bexport:$export_symbols $wl-h,$soname -o $lib $libobjs $deplibs $compiler_flags'+      fi+      ;;++    uts4*)+      archive_cmds='$LD -G -h $soname -o $lib $libobjs $deplibs $linker_flags'+      hardcode_libdir_flag_spec='-L$libdir'+      hardcode_shlibpath_var=no+      ;;++    *)+      ld_shlibs=no+      ;;+    esac++    if test sni = "$host_vendor"; then+      case $host in+      sysv4 | sysv4.2uw2* | sysv4.3* | sysv5*)+	export_dynamic_flag_spec='$wl-Blargedynsym'+	;;+      esac+    fi+  fi++{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ld_shlibs" >&5+$as_echo "$ld_shlibs" >&6; }+test no = "$ld_shlibs" && can_build_shared=no++with_gnu_ld=$with_gnu_ld++++++++++++++++#+# Do we need to explicitly link libc?+#+case "x$archive_cmds_need_lc" in+x|xyes)+  # Assume -lc should be added+  archive_cmds_need_lc=yes++  if test yes,yes = "$GCC,$enable_shared"; then+    case $archive_cmds in+    *'~'*)+      # FIXME: we may have to deal with multi-command sequences.+      ;;+    '$CC '*)+      # Test whether the compiler implicitly links with -lc since on some+      # systems, -lgcc has to come before -lc. If gcc already passes -lc+      # to ld, don't add -lc before -lgcc.+      { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether -lc should be explicitly linked in" >&5+$as_echo_n "checking whether -lc should be explicitly linked in... " >&6; }+if ${lt_cv_archive_cmds_need_lc+:} false; then :+  $as_echo_n "(cached) " >&6+else+  $RM conftest*+	echo "$lt_simple_compile_test_code" > conftest.$ac_ext++	if { { eval echo "\"\$as_me\":${as_lineno-$LINENO}: \"$ac_compile\""; } >&5+  (eval $ac_compile) 2>&5+  ac_status=$?+  $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5+  test $ac_status = 0; } 2>conftest.err; then+	  soname=conftest+	  lib=conftest+	  libobjs=conftest.$ac_objext+	  deplibs=+	  wl=$lt_prog_compiler_wl+	  pic_flag=$lt_prog_compiler_pic+	  compiler_flags=-v+	  linker_flags=-v+	  verstring=+	  output_objdir=.+	  libname=conftest+	  lt_save_allow_undefined_flag=$allow_undefined_flag+	  allow_undefined_flag=+	  if { { eval echo "\"\$as_me\":${as_lineno-$LINENO}: \"$archive_cmds 2\>\&1 \| $GREP \" -lc \" \>/dev/null 2\>\&1\""; } >&5+  (eval $archive_cmds 2\>\&1 \| $GREP \" -lc \" \>/dev/null 2\>\&1) 2>&5+  ac_status=$?+  $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5+  test $ac_status = 0; }+	  then+	    lt_cv_archive_cmds_need_lc=no+	  else+	    lt_cv_archive_cmds_need_lc=yes+	  fi+	  allow_undefined_flag=$lt_save_allow_undefined_flag+	else+	  cat conftest.err 1>&5+	fi+	$RM conftest*++fi+{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_cv_archive_cmds_need_lc" >&5+$as_echo "$lt_cv_archive_cmds_need_lc" >&6; }+      archive_cmds_need_lc=$lt_cv_archive_cmds_need_lc+      ;;+    esac+  fi+  ;;+esac+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++  { $as_echo "$as_me:${as_lineno-$LINENO}: checking dynamic linker characteristics" >&5+$as_echo_n "checking dynamic linker characteristics... " >&6; }++if test yes = "$GCC"; then+  case $host_os in+    darwin*) lt_awk_arg='/^libraries:/,/LR/' ;;+    *) lt_awk_arg='/^libraries:/' ;;+  esac+  case $host_os in+    mingw* | cegcc*) lt_sed_strip_eq='s|=\([A-Za-z]:\)|\1|g' ;;+    *) lt_sed_strip_eq='s|=/|/|g' ;;+  esac+  lt_search_path_spec=`$CC -print-search-dirs | awk $lt_awk_arg | $SED -e "s/^libraries://" -e $lt_sed_strip_eq`+  case $lt_search_path_spec in+  *\;*)+    # if the path contains ";" then we assume it to be the separator+    # otherwise default to the standard path separator (i.e. ":") - it is+    # assumed that no part of a normal pathname contains ";" but that should+    # okay in the real world where ";" in dirpaths is itself problematic.+    lt_search_path_spec=`$ECHO "$lt_search_path_spec" | $SED 's/;/ /g'`+    ;;+  *)+    lt_search_path_spec=`$ECHO "$lt_search_path_spec" | $SED "s/$PATH_SEPARATOR/ /g"`+    ;;+  esac+  # Ok, now we have the path, separated by spaces, we can step through it+  # and add multilib dir if necessary...+  lt_tmp_lt_search_path_spec=+  lt_multi_os_dir=/`$CC $CPPFLAGS $CFLAGS $LDFLAGS -print-multi-os-directory 2>/dev/null`+  # ...but if some path component already ends with the multilib dir we assume+  # that all is fine and trust -print-search-dirs as is (GCC 4.2? or newer).+  case "$lt_multi_os_dir; $lt_search_path_spec " in+  "/; "* | "/.; "* | "/./; "* | *"$lt_multi_os_dir "* | *"$lt_multi_os_dir/ "*)+    lt_multi_os_dir=+    ;;+  esac+  for lt_sys_path in $lt_search_path_spec; do+    if test -d "$lt_sys_path$lt_multi_os_dir"; then+      lt_tmp_lt_search_path_spec="$lt_tmp_lt_search_path_spec $lt_sys_path$lt_multi_os_dir"+    elif test -n "$lt_multi_os_dir"; then+      test -d "$lt_sys_path" && \+	lt_tmp_lt_search_path_spec="$lt_tmp_lt_search_path_spec $lt_sys_path"+    fi+  done+  lt_search_path_spec=`$ECHO "$lt_tmp_lt_search_path_spec" | awk '+BEGIN {RS = " "; FS = "/|\n";} {+  lt_foo = "";+  lt_count = 0;+  for (lt_i = NF; lt_i > 0; lt_i--) {+    if ($lt_i != "" && $lt_i != ".") {+      if ($lt_i == "..") {+        lt_count++;+      } else {+        if (lt_count == 0) {+          lt_foo = "/" $lt_i lt_foo;+        } else {+          lt_count--;+        }+      }+    }+  }+  if (lt_foo != "") { lt_freq[lt_foo]++; }+  if (lt_freq[lt_foo] == 1) { print lt_foo; }+}'`+  # AWK program above erroneously prepends '/' to C:/dos/paths+  # for these hosts.+  case $host_os in+    mingw* | cegcc*) lt_search_path_spec=`$ECHO "$lt_search_path_spec" |\+      $SED 's|/\([A-Za-z]:\)|\1|g'` ;;+  esac+  sys_lib_search_path_spec=`$ECHO "$lt_search_path_spec" | $lt_NL2SP`+else+  sys_lib_search_path_spec="/lib /usr/lib /usr/local/lib"+fi+library_names_spec=+libname_spec='lib$name'+soname_spec=+shrext_cmds=.so+postinstall_cmds=+postuninstall_cmds=+finish_cmds=+finish_eval=+shlibpath_var=+shlibpath_overrides_runpath=unknown+version_type=none+dynamic_linker="$host_os ld.so"+sys_lib_dlsearch_path_spec="/lib /usr/lib"+need_lib_prefix=unknown+hardcode_into_libs=no++# when you set need_version to no, make sure it does not cause -set_version+# flags to be left without arguments+need_version=unknown++++case $host_os in+aix3*)+  version_type=linux # correct to gnu/linux during the next big refactor+  library_names_spec='$libname$release$shared_ext$versuffix $libname.a'+  shlibpath_var=LIBPATH++  # AIX 3 has no versioning support, so we append a major version to the name.+  soname_spec='$libname$release$shared_ext$major'+  ;;++aix[4-9]*)+  version_type=linux # correct to gnu/linux during the next big refactor+  need_lib_prefix=no+  need_version=no+  hardcode_into_libs=yes+  if test ia64 = "$host_cpu"; then+    # AIX 5 supports IA64+    library_names_spec='$libname$release$shared_ext$major $libname$release$shared_ext$versuffix $libname$shared_ext'+    shlibpath_var=LD_LIBRARY_PATH+  else+    # With GCC up to 2.95.x, collect2 would create an import file+    # for dependence libraries.  The import file would start with+    # the line '#! .'.  This would cause the generated library to+    # depend on '.', always an invalid library.  This was fixed in+    # development snapshots of GCC prior to 3.0.+    case $host_os in+      aix4 | aix4.[01] | aix4.[01].*)+      if { echo '#if __GNUC__ > 2 || (__GNUC__ == 2 && __GNUC_MINOR__ >= 97)'+	   echo ' yes '+	   echo '#endif'; } | $CC -E - | $GREP yes > /dev/null; then+	:+      else+	can_build_shared=no+      fi+      ;;+    esac+    # Using Import Files as archive members, it is possible to support+    # filename-based versioning of shared library archives on AIX. While+    # this would work for both with and without runtime linking, it will+    # prevent static linking of such archives. So we do filename-based+    # shared library versioning with .so extension only, which is used+    # when both runtime linking and shared linking is enabled.+    # Unfortunately, runtime linking may impact performance, so we do+    # not want this to be the default eventually. Also, we use the+    # versioned .so libs for executables only if there is the -brtl+    # linker flag in LDFLAGS as well, or --with-aix-soname=svr4 only.+    # To allow for filename-based versioning support, we need to create+    # libNAME.so.V as an archive file, containing:+    # *) an Import File, referring to the versioned filename of the+    #    archive as well as the shared archive member, telling the+    #    bitwidth (32 or 64) of that shared object, and providing the+    #    list of exported symbols of that shared object, eventually+    #    decorated with the 'weak' keyword+    # *) the shared object with the F_LOADONLY flag set, to really avoid+    #    it being seen by the linker.+    # At run time we better use the real file rather than another symlink,+    # but for link time we create the symlink libNAME.so -> libNAME.so.V++    case $with_aix_soname,$aix_use_runtimelinking in+    # AIX (on Power*) has no versioning support, so currently we cannot hardcode correct+    # soname into executable. Probably we can add versioning support to+    # collect2, so additional links can be useful in future.+    aix,yes) # traditional libtool+      dynamic_linker='AIX unversionable lib.so'+      # If using run time linking (on AIX 4.2 or later) use lib<name>.so+      # instead of lib<name>.a to let people know that these are not+      # typical AIX shared libraries.+      library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$shared_ext'+      ;;+    aix,no) # traditional AIX only+      dynamic_linker='AIX lib.a(lib.so.V)'+      # We preserve .a as extension for shared libraries through AIX4.2+      # and later when we are not doing run time linking.+      library_names_spec='$libname$release.a $libname.a'+      soname_spec='$libname$release$shared_ext$major'+      ;;+    svr4,*) # full svr4 only+      dynamic_linker="AIX lib.so.V($shared_archive_member_spec.o)"+      library_names_spec='$libname$release$shared_ext$major $libname$shared_ext'+      # We do not specify a path in Import Files, so LIBPATH fires.+      shlibpath_overrides_runpath=yes+      ;;+    *,yes) # both, prefer svr4+      dynamic_linker="AIX lib.so.V($shared_archive_member_spec.o), lib.a(lib.so.V)"+      library_names_spec='$libname$release$shared_ext$major $libname$shared_ext'+      # unpreferred sharedlib libNAME.a needs extra handling+      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"'+      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"'+      # We do not specify a path in Import Files, so LIBPATH fires.+      shlibpath_overrides_runpath=yes+      ;;+    *,no) # both, prefer aix+      dynamic_linker="AIX lib.a(lib.so.V), lib.so.V($shared_archive_member_spec.o)"+      library_names_spec='$libname$release.a $libname.a'+      soname_spec='$libname$release$shared_ext$major'+      # unpreferred sharedlib libNAME.so.V and symlink libNAME.so need extra handling+      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)'+      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"'+      ;;+    esac+    shlibpath_var=LIBPATH+  fi+  ;;++amigaos*)+  case $host_cpu in+  powerpc)+    # Since July 2007 AmigaOS4 officially supports .so libraries.+    # When compiling the executable, add -use-dynld -Lsobjs: to the compileline.+    library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$shared_ext'+    ;;+  m68k)+    library_names_spec='$libname.ixlibrary $libname.a'+    # Create ${libname}_ixlibrary.a entries in /sys/libs.+    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'+    ;;+  esac+  ;;++beos*)+  library_names_spec='$libname$shared_ext'+  dynamic_linker="$host_os ld.so"+  shlibpath_var=LIBRARY_PATH+  ;;++bsdi[45]*)+  version_type=linux # correct to gnu/linux during the next big refactor+  need_version=no+  library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$shared_ext'+  soname_spec='$libname$release$shared_ext$major'+  finish_cmds='PATH="\$PATH:/sbin" ldconfig $libdir'+  shlibpath_var=LD_LIBRARY_PATH+  sys_lib_search_path_spec="/shlib /usr/lib /usr/X11/lib /usr/contrib/lib /lib /usr/local/lib"+  sys_lib_dlsearch_path_spec="/shlib /usr/lib /usr/local/lib"+  # the default ld.so.conf also contains /usr/contrib/lib and+  # /usr/X11R6/lib (/usr/X11 is a link to /usr/X11R6), but let us allow+  # libtool to hard-code these into programs+  ;;++cygwin* | mingw* | pw32* | cegcc*)+  version_type=windows+  shrext_cmds=.dll+  need_version=no+  need_lib_prefix=no++  case $GCC,$cc_basename in+  yes,*)+    # gcc+    library_names_spec='$libname.dll.a'+    # DLL is installed to $(libdir)/../bin by postinstall_cmds+    postinstall_cmds='base_file=`basename \$file`~+      dlpath=`$SHELL 2>&1 -c '\''. $dir/'\''\$base_file'\''i; echo \$dlname'\''`~+      dldir=$destdir/`dirname \$dlpath`~+      test -d \$dldir || mkdir -p \$dldir~+      $install_prog $dir/$dlname \$dldir/$dlname~+      chmod a+x \$dldir/$dlname~+      if test -n '\''$stripme'\'' && test -n '\''$striplib'\''; then+        eval '\''$striplib \$dldir/$dlname'\'' || exit \$?;+      fi'+    postuninstall_cmds='dldll=`$SHELL 2>&1 -c '\''. $file; echo \$dlname'\''`~+      dlpath=$dir/\$dldll~+       $RM \$dlpath'+    shlibpath_overrides_runpath=yes++    case $host_os in+    cygwin*)+      # Cygwin DLLs use 'cyg' prefix rather than 'lib'+      soname_spec='`echo $libname | $SED -e 's/^lib/cyg/'``echo $release | $SED -e 's/[.]/-/g'`$versuffix$shared_ext'++      sys_lib_search_path_spec="$sys_lib_search_path_spec /usr/lib/w32api"+      ;;+    mingw* | cegcc*)+      # MinGW DLLs use traditional 'lib' prefix+      soname_spec='$libname`echo $release | $SED -e 's/[.]/-/g'`$versuffix$shared_ext'+      ;;+    pw32*)+      # pw32 DLLs use 'pw' prefix rather than 'lib'+      library_names_spec='`echo $libname | $SED -e 's/^lib/pw/'``echo $release | $SED -e 's/[.]/-/g'`$versuffix$shared_ext'+      ;;+    esac+    dynamic_linker='Win32 ld.exe'+    ;;++  *,cl* | *,icl*)+    # Native MSVC or ICC+    libname_spec='$name'+    soname_spec='$libname`echo $release | $SED -e 's/[.]/-/g'`$versuffix$shared_ext'+    library_names_spec='$libname.dll.lib'++    case $build_os in+    mingw*)+      sys_lib_search_path_spec=+      lt_save_ifs=$IFS+      IFS=';'+      for lt_path in $LIB+      do+        IFS=$lt_save_ifs+        # Let DOS variable expansion print the short 8.3 style file name.+        lt_path=`cd "$lt_path" 2>/dev/null && cmd //C "for %i in (".") do @echo %~si"`+        sys_lib_search_path_spec="$sys_lib_search_path_spec $lt_path"+      done+      IFS=$lt_save_ifs+      # Convert to MSYS style.+      sys_lib_search_path_spec=`$ECHO "$sys_lib_search_path_spec" | $SED -e 's|\\\\|/|g' -e 's| \\([a-zA-Z]\\):| /\\1|g' -e 's|^ ||'`+      ;;+    cygwin*)+      # Convert to unix form, then to dos form, then back to unix form+      # but this time dos style (no spaces!) so that the unix form looks+      # like /cygdrive/c/PROGRA~1:/cygdr...+      sys_lib_search_path_spec=`cygpath --path --unix "$LIB"`+      sys_lib_search_path_spec=`cygpath --path --dos "$sys_lib_search_path_spec" 2>/dev/null`+      sys_lib_search_path_spec=`cygpath --path --unix "$sys_lib_search_path_spec" | $SED -e "s/$PATH_SEPARATOR/ /g"`+      ;;+    *)+      sys_lib_search_path_spec=$LIB+      if $ECHO "$sys_lib_search_path_spec" | $GREP ';[c-zC-Z]:/' >/dev/null; then+        # It is most probably a Windows format PATH.+        sys_lib_search_path_spec=`$ECHO "$sys_lib_search_path_spec" | $SED -e 's/;/ /g'`+      else+        sys_lib_search_path_spec=`$ECHO "$sys_lib_search_path_spec" | $SED -e "s/$PATH_SEPARATOR/ /g"`+      fi+      # FIXME: find the short name or the path components, as spaces are+      # common. (e.g. "Program Files" -> "PROGRA~1")+      ;;+    esac++    # DLL is installed to $(libdir)/../bin by postinstall_cmds+    postinstall_cmds='base_file=`basename \$file`~+      dlpath=`$SHELL 2>&1 -c '\''. $dir/'\''\$base_file'\''i; echo \$dlname'\''`~+      dldir=$destdir/`dirname \$dlpath`~+      test -d \$dldir || mkdir -p \$dldir~+      $install_prog $dir/$dlname \$dldir/$dlname'+    postuninstall_cmds='dldll=`$SHELL 2>&1 -c '\''. $file; echo \$dlname'\''`~+      dlpath=$dir/\$dldll~+       $RM \$dlpath'+    shlibpath_overrides_runpath=yes+    dynamic_linker='Win32 link.exe'+    ;;++  *)+    # Assume MSVC and ICC wrapper+    library_names_spec='$libname`echo $release | $SED -e 's/[.]/-/g'`$versuffix$shared_ext $libname.lib'+    dynamic_linker='Win32 ld.exe'+    ;;+  esac+  # FIXME: first we should search . and the directory the executable is in+  shlibpath_var=PATH+  ;;++darwin* | rhapsody*)+  dynamic_linker="$host_os dyld"+  version_type=darwin+  need_lib_prefix=no+  need_version=no+  library_names_spec='$libname$release$major$shared_ext $libname$shared_ext'+  soname_spec='$libname$release$major$shared_ext'+  shlibpath_overrides_runpath=yes+  shlibpath_var=DYLD_LIBRARY_PATH+  shrext_cmds='`test .$module = .yes && echo .so || echo .dylib`'++  sys_lib_search_path_spec="$sys_lib_search_path_spec /usr/local/lib"+  sys_lib_dlsearch_path_spec='/usr/local/lib /lib /usr/lib'+  ;;++dgux*)+  version_type=linux # correct to gnu/linux during the next big refactor+  need_lib_prefix=no+  need_version=no+  library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$shared_ext'+  soname_spec='$libname$release$shared_ext$major'+  shlibpath_var=LD_LIBRARY_PATH+  ;;++freebsd* | dragonfly* | midnightbsd*)+  # DragonFly does not have aout.  When/if they implement a new+  # versioning mechanism, adjust this.+  if test -x /usr/bin/objformat; then+    objformat=`/usr/bin/objformat`+  else+    case $host_os in+    freebsd[23].*) objformat=aout ;;+    *) objformat=elf ;;+    esac+  fi+  version_type=freebsd-$objformat+  case $version_type in+    freebsd-elf*)+      library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$shared_ext'+      soname_spec='$libname$release$shared_ext$major'+      need_version=no+      need_lib_prefix=no+      ;;+    freebsd-*)+      library_names_spec='$libname$release$shared_ext$versuffix $libname$shared_ext$versuffix'+      need_version=yes+      ;;+  esac+  shlibpath_var=LD_LIBRARY_PATH+  case $host_os in+  freebsd2.*)+    shlibpath_overrides_runpath=yes+    ;;+  freebsd3.[01]* | freebsdelf3.[01]*)+    shlibpath_overrides_runpath=yes+    hardcode_into_libs=yes+    ;;+  freebsd3.[2-9]* | freebsdelf3.[2-9]* | \+  freebsd4.[0-5] | freebsdelf4.[0-5] | freebsd4.1.1 | freebsdelf4.1.1)+    shlibpath_overrides_runpath=no+    hardcode_into_libs=yes+    ;;+  *) # from 4.6 on, and DragonFly+    shlibpath_overrides_runpath=yes+    hardcode_into_libs=yes+    ;;+  esac+  ;;++haiku*)+  version_type=linux # correct to gnu/linux during the next big refactor+  need_lib_prefix=no+  need_version=no+  dynamic_linker="$host_os runtime_loader"+  library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$shared_ext'+  soname_spec='$libname$release$shared_ext$major'+  shlibpath_var=LIBRARY_PATH+  shlibpath_overrides_runpath=no+  sys_lib_dlsearch_path_spec='/boot/home/config/lib /boot/common/lib /boot/system/lib'+  hardcode_into_libs=yes+  ;;++hpux9* | hpux10* | hpux11*)+  # Give a soname corresponding to the major version so that dld.sl refuses to+  # link against other versions.+  version_type=sunos+  need_lib_prefix=no+  need_version=no+  case $host_cpu in+  ia64*)+    shrext_cmds='.so'+    hardcode_into_libs=yes+    dynamic_linker="$host_os dld.so"+    shlibpath_var=LD_LIBRARY_PATH+    shlibpath_overrides_runpath=yes # Unless +noenvvar is specified.+    library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$shared_ext'+    soname_spec='$libname$release$shared_ext$major'+    if test 32 = "$HPUX_IA64_MODE"; then+      sys_lib_search_path_spec="/usr/lib/hpux32 /usr/local/lib/hpux32 /usr/local/lib"+      sys_lib_dlsearch_path_spec=/usr/lib/hpux32+    else+      sys_lib_search_path_spec="/usr/lib/hpux64 /usr/local/lib/hpux64"+      sys_lib_dlsearch_path_spec=/usr/lib/hpux64+    fi+    ;;+  hppa*64*)+    shrext_cmds='.sl'+    hardcode_into_libs=yes+    dynamic_linker="$host_os dld.sl"+    shlibpath_var=LD_LIBRARY_PATH # How should we handle SHLIB_PATH+    shlibpath_overrides_runpath=yes # Unless +noenvvar is specified.+    library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$shared_ext'+    soname_spec='$libname$release$shared_ext$major'+    sys_lib_search_path_spec="/usr/lib/pa20_64 /usr/ccs/lib/pa20_64"+    sys_lib_dlsearch_path_spec=$sys_lib_search_path_spec+    ;;+  *)+    shrext_cmds='.sl'+    dynamic_linker="$host_os dld.sl"+    shlibpath_var=SHLIB_PATH+    shlibpath_overrides_runpath=no # +s is required to enable SHLIB_PATH+    library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$shared_ext'+    soname_spec='$libname$release$shared_ext$major'+    ;;+  esac+  # HP-UX runs *really* slowly unless shared libraries are mode 555, ...+  postinstall_cmds='chmod 555 $lib'+  # or fails outright, so override atomically:+  install_override_mode=555+  ;;++interix[3-9]*)+  version_type=linux # correct to gnu/linux during the next big refactor+  need_lib_prefix=no+  need_version=no+  library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$shared_ext'+  soname_spec='$libname$release$shared_ext$major'+  dynamic_linker='Interix 3.x ld.so.1 (PE, like ELF)'+  shlibpath_var=LD_LIBRARY_PATH+  shlibpath_overrides_runpath=no+  hardcode_into_libs=yes+  ;;++irix5* | irix6* | nonstopux*)+  case $host_os in+    nonstopux*) version_type=nonstopux ;;+    *)+	if test yes = "$lt_cv_prog_gnu_ld"; then+		version_type=linux # correct to gnu/linux during the next big refactor+	else+		version_type=irix+	fi ;;+  esac+  need_lib_prefix=no+  need_version=no+  soname_spec='$libname$release$shared_ext$major'+  library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$release$shared_ext $libname$shared_ext'+  case $host_os in+  irix5* | nonstopux*)+    libsuff= shlibsuff=+    ;;+  *)+    case $LD in # libtool.m4 will add one of these switches to LD+    *-32|*"-32 "|*-melf32bsmip|*"-melf32bsmip ")+      libsuff= shlibsuff= libmagic=32-bit;;+    *-n32|*"-n32 "|*-melf32bmipn32|*"-melf32bmipn32 ")+      libsuff=32 shlibsuff=N32 libmagic=N32;;+    *-64|*"-64 "|*-melf64bmip|*"-melf64bmip ")+      libsuff=64 shlibsuff=64 libmagic=64-bit;;+    *) libsuff= shlibsuff= libmagic=never-match;;+    esac+    ;;+  esac+  shlibpath_var=LD_LIBRARY${shlibsuff}_PATH+  shlibpath_overrides_runpath=no+  sys_lib_search_path_spec="/usr/lib$libsuff /lib$libsuff /usr/local/lib$libsuff"+  sys_lib_dlsearch_path_spec="/usr/lib$libsuff /lib$libsuff"+  hardcode_into_libs=yes+  ;;++# No shared lib support for Linux oldld, aout, or coff.+linux*oldld* | linux*aout* | linux*coff*)+  dynamic_linker=no+  ;;++linux*android*)+  version_type=none # Android doesn't support versioned libraries.+  need_lib_prefix=no+  need_version=no+  library_names_spec='$libname$release$shared_ext'+  soname_spec='$libname$release$shared_ext'+  finish_cmds=+  shlibpath_var=LD_LIBRARY_PATH+  shlibpath_overrides_runpath=yes++  # This implies no fast_install, which is unacceptable.+  # Some rework will be needed to allow for fast_install+  # before this can be enabled.+  hardcode_into_libs=yes++  dynamic_linker='Android linker'+  # Don't embed -rpath directories since the linker doesn't support them.+  hardcode_libdir_flag_spec='-L$libdir'+  ;;++# This must be glibc/ELF.+linux* | k*bsd*-gnu | kopensolaris*-gnu | gnu*)+  version_type=linux # correct to gnu/linux during the next big refactor+  need_lib_prefix=no+  need_version=no+  library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$shared_ext'+  soname_spec='$libname$release$shared_ext$major'+  finish_cmds='PATH="\$PATH:/sbin" ldconfig -n $libdir'+  shlibpath_var=LD_LIBRARY_PATH+  shlibpath_overrides_runpath=no++  # Some binutils ld are patched to set DT_RUNPATH+  if ${lt_cv_shlibpath_overrides_runpath+:} false; then :+  $as_echo_n "(cached) " >&6+else+  lt_cv_shlibpath_overrides_runpath=no+    save_LDFLAGS=$LDFLAGS+    save_libdir=$libdir+    eval "libdir=/foo; wl=\"$lt_prog_compiler_wl\"; \+	 LDFLAGS=\"\$LDFLAGS $hardcode_libdir_flag_spec\""+    cat confdefs.h - <<_ACEOF >conftest.$ac_ext+/* end confdefs.h.  */++int+main ()+{++  ;+  return 0;+}+_ACEOF+if ac_fn_c_try_link "$LINENO"; then :+  if  ($OBJDUMP -p conftest$ac_exeext) 2>/dev/null | grep "RUNPATH.*$libdir" >/dev/null; then :+  lt_cv_shlibpath_overrides_runpath=yes+fi+fi+rm -f core conftest.err conftest.$ac_objext \+    conftest$ac_exeext conftest.$ac_ext+    LDFLAGS=$save_LDFLAGS+    libdir=$save_libdir++fi++  shlibpath_overrides_runpath=$lt_cv_shlibpath_overrides_runpath++  # This implies no fast_install, which is unacceptable.+  # Some rework will be needed to allow for fast_install+  # before this can be enabled.+  hardcode_into_libs=yes++  # Ideally, we could use ldconfig to report *all* directores which are+  # searched for libraries, however this is still not possible.  Aside from not+  # being certain /sbin/ldconfig is available, command+  # 'ldconfig -N -X -v | grep ^/' on 64bit Fedora does not report /usr/lib64,+  # even though it is searched at run-time.  Try to do the best guess by+  # appending ld.so.conf contents (and includes) to the search path.+  if test -f /etc/ld.so.conf; then+    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' ' '`+    sys_lib_dlsearch_path_spec="/lib /usr/lib $lt_ld_extra"+  fi++  # We used to test for /lib/ld.so.1 and disable shared libraries on+  # powerpc, because MkLinux only supported shared libraries with the+  # GNU dynamic linker.  Since this was broken with cross compilers,+  # most powerpc-linux boxes support dynamic linking these days and+  # people can always --disable-shared, the test was removed, and we+  # assume the GNU/Linux dynamic linker is in use.+  dynamic_linker='GNU/Linux ld.so'+  ;;++netbsdelf*-gnu)+  version_type=linux+  need_lib_prefix=no+  need_version=no+  library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major ${libname}${shared_ext}'+  soname_spec='${libname}${release}${shared_ext}$major'+  shlibpath_var=LD_LIBRARY_PATH+  shlibpath_overrides_runpath=no+  hardcode_into_libs=yes+  dynamic_linker='NetBSD ld.elf_so'+  ;;++netbsd*)+  version_type=sunos+  need_lib_prefix=no+  need_version=no+  if echo __ELF__ | $CC -E - | $GREP __ELF__ >/dev/null; then+    library_names_spec='$libname$release$shared_ext$versuffix $libname$shared_ext$versuffix'+    finish_cmds='PATH="\$PATH:/sbin" ldconfig -m $libdir'+    dynamic_linker='NetBSD (a.out) ld.so'+  else+    library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$shared_ext'+    soname_spec='$libname$release$shared_ext$major'+    dynamic_linker='NetBSD ld.elf_so'+  fi+  shlibpath_var=LD_LIBRARY_PATH+  shlibpath_overrides_runpath=yes+  hardcode_into_libs=yes+  ;;++newsos6)+  version_type=linux # correct to gnu/linux during the next big refactor+  library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$shared_ext'+  shlibpath_var=LD_LIBRARY_PATH+  shlibpath_overrides_runpath=yes+  ;;++*nto* | *qnx*)+  version_type=qnx+  need_lib_prefix=no+  need_version=no+  library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$shared_ext'+  soname_spec='$libname$release$shared_ext$major'+  shlibpath_var=LD_LIBRARY_PATH+  shlibpath_overrides_runpath=no+  hardcode_into_libs=yes+  dynamic_linker='ldqnx.so'+  ;;++openbsd* | bitrig*)+  version_type=sunos+  sys_lib_dlsearch_path_spec=/usr/lib+  need_lib_prefix=no+  if test -z "`echo __ELF__ | $CC -E - | $GREP __ELF__`"; then+    need_version=no+  else+    need_version=yes+  fi+  library_names_spec='$libname$release$shared_ext$versuffix $libname$shared_ext$versuffix'+  finish_cmds='PATH="\$PATH:/sbin" ldconfig -m $libdir'+  shlibpath_var=LD_LIBRARY_PATH+  shlibpath_overrides_runpath=yes+  ;;++os2*)+  libname_spec='$name'+  version_type=windows+  shrext_cmds=.dll+  need_version=no+  need_lib_prefix=no+  # OS/2 can only load a DLL with a base name of 8 characters or less.+  soname_spec='`test -n "$os2dllname" && libname="$os2dllname";+    v=$($ECHO $release$versuffix | tr -d .-);+    n=$($ECHO $libname | cut -b -$((8 - ${#v})) | tr . _);+    $ECHO $n$v`$shared_ext'+  library_names_spec='${libname}_dll.$libext'+  dynamic_linker='OS/2 ld.exe'+  shlibpath_var=BEGINLIBPATH+  sys_lib_search_path_spec="/lib /usr/lib /usr/local/lib"+  sys_lib_dlsearch_path_spec=$sys_lib_search_path_spec+  postinstall_cmds='base_file=`basename \$file`~+    dlpath=`$SHELL 2>&1 -c '\''. $dir/'\''\$base_file'\''i; $ECHO \$dlname'\''`~+    dldir=$destdir/`dirname \$dlpath`~+    test -d \$dldir || mkdir -p \$dldir~+    $install_prog $dir/$dlname \$dldir/$dlname~+    chmod a+x \$dldir/$dlname~+    if test -n '\''$stripme'\'' && test -n '\''$striplib'\''; then+      eval '\''$striplib \$dldir/$dlname'\'' || exit \$?;+    fi'+  postuninstall_cmds='dldll=`$SHELL 2>&1 -c '\''. $file; $ECHO \$dlname'\''`~+    dlpath=$dir/\$dldll~+    $RM \$dlpath'+  ;;++osf3* | osf4* | osf5*)+  version_type=osf+  need_lib_prefix=no+  need_version=no+  soname_spec='$libname$release$shared_ext$major'+  library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$shared_ext'+  shlibpath_var=LD_LIBRARY_PATH+  sys_lib_search_path_spec="/usr/shlib /usr/ccs/lib /usr/lib/cmplrs/cc /usr/lib /usr/local/lib /var/shlib"+  sys_lib_dlsearch_path_spec=$sys_lib_search_path_spec+  ;;++rdos*)+  dynamic_linker=no+  ;;++solaris*)+  version_type=linux # correct to gnu/linux during the next big refactor+  need_lib_prefix=no+  need_version=no+  library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$shared_ext'+  soname_spec='$libname$release$shared_ext$major'+  shlibpath_var=LD_LIBRARY_PATH+  shlibpath_overrides_runpath=yes+  hardcode_into_libs=yes+  # ldd complains unless libraries are executable+  postinstall_cmds='chmod +x $lib'+  ;;++sunos4*)+  version_type=sunos+  library_names_spec='$libname$release$shared_ext$versuffix $libname$shared_ext$versuffix'+  finish_cmds='PATH="\$PATH:/usr/etc" ldconfig $libdir'+  shlibpath_var=LD_LIBRARY_PATH+  shlibpath_overrides_runpath=yes+  if test yes = "$with_gnu_ld"; then+    need_lib_prefix=no+  fi+  need_version=yes+  ;;++sysv4 | sysv4.3*)+  version_type=linux # correct to gnu/linux during the next big refactor+  library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$shared_ext'+  soname_spec='$libname$release$shared_ext$major'+  shlibpath_var=LD_LIBRARY_PATH+  case $host_vendor in+    sni)+      shlibpath_overrides_runpath=no+      need_lib_prefix=no+      runpath_var=LD_RUN_PATH+      ;;+    siemens)+      need_lib_prefix=no+      ;;+    motorola)+      need_lib_prefix=no+      need_version=no+      shlibpath_overrides_runpath=no+      sys_lib_search_path_spec='/lib /usr/lib /usr/ccs/lib'+      ;;+  esac+  ;;++sysv4*MP*)+  if test -d /usr/nec; then+    version_type=linux # correct to gnu/linux during the next big refactor+    library_names_spec='$libname$shared_ext.$versuffix $libname$shared_ext.$major $libname$shared_ext'+    soname_spec='$libname$shared_ext.$major'+    shlibpath_var=LD_LIBRARY_PATH+  fi+  ;;++sysv5* | sco3.2v5* | sco5v6* | unixware* | OpenUNIX* | sysv4*uw2*)+  version_type=sco+  need_lib_prefix=no+  need_version=no+  library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext $libname$shared_ext'+  soname_spec='$libname$release$shared_ext$major'+  shlibpath_var=LD_LIBRARY_PATH+  shlibpath_overrides_runpath=yes+  hardcode_into_libs=yes+  if test yes = "$with_gnu_ld"; then+    sys_lib_search_path_spec='/usr/local/lib /usr/gnu/lib /usr/ccs/lib /usr/lib /lib'+  else+    sys_lib_search_path_spec='/usr/ccs/lib /usr/lib'+    case $host_os in+      sco3.2v5*)+        sys_lib_search_path_spec="$sys_lib_search_path_spec /lib"+	;;+    esac+  fi+  sys_lib_dlsearch_path_spec='/usr/lib'+  ;;++tpf*)+  # TPF is a cross-target only.  Preferred cross-host = GNU/Linux.+  version_type=linux # correct to gnu/linux during the next big refactor+  need_lib_prefix=no+  need_version=no+  library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$shared_ext'+  shlibpath_var=LD_LIBRARY_PATH+  shlibpath_overrides_runpath=no+  hardcode_into_libs=yes+  ;;++uts4*)+  version_type=linux # correct to gnu/linux during the next big refactor+  library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$shared_ext'+  soname_spec='$libname$release$shared_ext$major'+  shlibpath_var=LD_LIBRARY_PATH+  ;;++*)+  dynamic_linker=no+  ;;+esac+{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $dynamic_linker" >&5+$as_echo "$dynamic_linker" >&6; }+test no = "$dynamic_linker" && can_build_shared=no++variables_saved_for_relink="PATH $shlibpath_var $runpath_var"+if test yes = "$GCC"; then+  variables_saved_for_relink="$variables_saved_for_relink GCC_EXEC_PREFIX COMPILER_PATH LIBRARY_PATH"+fi++if test set = "${lt_cv_sys_lib_search_path_spec+set}"; then+  sys_lib_search_path_spec=$lt_cv_sys_lib_search_path_spec+fi++if test set = "${lt_cv_sys_lib_dlsearch_path_spec+set}"; then+  sys_lib_dlsearch_path_spec=$lt_cv_sys_lib_dlsearch_path_spec+fi++# remember unaugmented sys_lib_dlsearch_path content for libtool script decls...+configure_time_dlsearch_path=$sys_lib_dlsearch_path_spec++# ... but it needs LT_SYS_LIBRARY_PATH munging for other configure-time code+func_munge_path_list sys_lib_dlsearch_path_spec "$LT_SYS_LIBRARY_PATH"++# to be used as default LT_SYS_LIBRARY_PATH value in generated libtool+configure_time_lt_sys_library_path=$LT_SYS_LIBRARY_PATH++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++  { $as_echo "$as_me:${as_lineno-$LINENO}: checking how to hardcode library paths into programs" >&5+$as_echo_n "checking how to hardcode library paths into programs... " >&6; }+hardcode_action=+if test -n "$hardcode_libdir_flag_spec" ||+   test -n "$runpath_var" ||+   test yes = "$hardcode_automatic"; then++  # We can hardcode non-existent directories.+  if test no != "$hardcode_direct" &&+     # If the only mechanism to avoid hardcoding is shlibpath_var, we+     # have to relink, otherwise we might link with an installed library+     # when we should be linking with a yet-to-be-installed one+     ## test no != "$_LT_TAGVAR(hardcode_shlibpath_var, )" &&+     test no != "$hardcode_minus_L"; then+    # Linking always hardcodes the temporary library directory.+    hardcode_action=relink+  else+    # We can link without hardcoding, and we can hardcode nonexisting dirs.+    hardcode_action=immediate+  fi+else+  # We cannot hardcode anything, or else we can only hardcode existing+  # directories.+  hardcode_action=unsupported+fi+{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $hardcode_action" >&5+$as_echo "$hardcode_action" >&6; }++if test relink = "$hardcode_action" ||+   test yes = "$inherit_rpath"; then+  # Fast installation is not supported+  enable_fast_install=no+elif test yes = "$shlibpath_overrides_runpath" ||+     test no = "$enable_shared"; then+  # Fast installation is not necessary+  enable_fast_install=needless+fi+++++++  if test yes != "$enable_dlopen"; then+  enable_dlopen=unknown+  enable_dlopen_self=unknown+  enable_dlopen_self_static=unknown+else+  lt_cv_dlopen=no+  lt_cv_dlopen_libs=++  case $host_os in+  beos*)+    lt_cv_dlopen=load_add_on+    lt_cv_dlopen_libs=+    lt_cv_dlopen_self=yes+    ;;++  mingw* | pw32* | cegcc*)+    lt_cv_dlopen=LoadLibrary+    lt_cv_dlopen_libs=+    ;;++  cygwin*)+    lt_cv_dlopen=dlopen+    lt_cv_dlopen_libs=+    ;;++  darwin*)+    # if libdl is installed we need to link against it+    { $as_echo "$as_me:${as_lineno-$LINENO}: checking for dlopen in -ldl" >&5+$as_echo_n "checking for dlopen in -ldl... " >&6; }+if ${ac_cv_lib_dl_dlopen+:} false; then :+  $as_echo_n "(cached) " >&6+else+  ac_check_lib_save_LIBS=$LIBS+LIBS="-ldl  $LIBS"+cat confdefs.h - <<_ACEOF >conftest.$ac_ext+/* end confdefs.h.  */++/* Override any GCC internal prototype to avoid an error.+   Use char because int might match the return type of a GCC+   builtin and then its argument prototype would still apply.  */+#ifdef __cplusplus+extern "C"+#endif+char dlopen ();+int+main ()+{+return dlopen ();+  ;+  return 0;+}+_ACEOF+if ac_fn_c_try_link "$LINENO"; then :+  ac_cv_lib_dl_dlopen=yes+else+  ac_cv_lib_dl_dlopen=no+fi+rm -f core conftest.err conftest.$ac_objext \+    conftest$ac_exeext conftest.$ac_ext+LIBS=$ac_check_lib_save_LIBS+fi+{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_dl_dlopen" >&5+$as_echo "$ac_cv_lib_dl_dlopen" >&6; }+if test "x$ac_cv_lib_dl_dlopen" = xyes; then :+  lt_cv_dlopen=dlopen lt_cv_dlopen_libs=-ldl+else++    lt_cv_dlopen=dyld+    lt_cv_dlopen_libs=+    lt_cv_dlopen_self=yes++fi++    ;;++  tpf*)+    # Don't try to run any link tests for TPF.  We know it's impossible+    # because TPF is a cross-compiler, and we know how we open DSOs.+    lt_cv_dlopen=dlopen+    lt_cv_dlopen_libs=+    lt_cv_dlopen_self=no+    ;;++  *)+    ac_fn_c_check_func "$LINENO" "shl_load" "ac_cv_func_shl_load"+if test "x$ac_cv_func_shl_load" = xyes; then :+  lt_cv_dlopen=shl_load+else+  { $as_echo "$as_me:${as_lineno-$LINENO}: checking for shl_load in -ldld" >&5+$as_echo_n "checking for shl_load in -ldld... " >&6; }+if ${ac_cv_lib_dld_shl_load+:} false; then :+  $as_echo_n "(cached) " >&6+else+  ac_check_lib_save_LIBS=$LIBS+LIBS="-ldld  $LIBS"+cat confdefs.h - <<_ACEOF >conftest.$ac_ext+/* end confdefs.h.  */++/* Override any GCC internal prototype to avoid an error.+   Use char because int might match the return type of a GCC+   builtin and then its argument prototype would still apply.  */+#ifdef __cplusplus+extern "C"+#endif+char shl_load ();+int+main ()+{+return shl_load ();+  ;+  return 0;+}+_ACEOF+if ac_fn_c_try_link "$LINENO"; then :+  ac_cv_lib_dld_shl_load=yes+else+  ac_cv_lib_dld_shl_load=no+fi+rm -f core conftest.err conftest.$ac_objext \+    conftest$ac_exeext conftest.$ac_ext+LIBS=$ac_check_lib_save_LIBS+fi+{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_dld_shl_load" >&5+$as_echo "$ac_cv_lib_dld_shl_load" >&6; }+if test "x$ac_cv_lib_dld_shl_load" = xyes; then :+  lt_cv_dlopen=shl_load lt_cv_dlopen_libs=-ldld+else+  ac_fn_c_check_func "$LINENO" "dlopen" "ac_cv_func_dlopen"+if test "x$ac_cv_func_dlopen" = xyes; then :+  lt_cv_dlopen=dlopen+else+  { $as_echo "$as_me:${as_lineno-$LINENO}: checking for dlopen in -ldl" >&5+$as_echo_n "checking for dlopen in -ldl... " >&6; }+if ${ac_cv_lib_dl_dlopen+:} false; then :+  $as_echo_n "(cached) " >&6+else+  ac_check_lib_save_LIBS=$LIBS+LIBS="-ldl  $LIBS"+cat confdefs.h - <<_ACEOF >conftest.$ac_ext+/* end confdefs.h.  */++/* Override any GCC internal prototype to avoid an error.+   Use char because int might match the return type of a GCC+   builtin and then its argument prototype would still apply.  */+#ifdef __cplusplus+extern "C"+#endif+char dlopen ();+int+main ()+{+return dlopen ();+  ;+  return 0;+}+_ACEOF+if ac_fn_c_try_link "$LINENO"; then :+  ac_cv_lib_dl_dlopen=yes+else+  ac_cv_lib_dl_dlopen=no+fi+rm -f core conftest.err conftest.$ac_objext \+    conftest$ac_exeext conftest.$ac_ext+LIBS=$ac_check_lib_save_LIBS+fi+{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_dl_dlopen" >&5+$as_echo "$ac_cv_lib_dl_dlopen" >&6; }+if test "x$ac_cv_lib_dl_dlopen" = xyes; then :+  lt_cv_dlopen=dlopen lt_cv_dlopen_libs=-ldl+else+  { $as_echo "$as_me:${as_lineno-$LINENO}: checking for dlopen in -lsvld" >&5+$as_echo_n "checking for dlopen in -lsvld... " >&6; }+if ${ac_cv_lib_svld_dlopen+:} false; then :+  $as_echo_n "(cached) " >&6+else+  ac_check_lib_save_LIBS=$LIBS+LIBS="-lsvld  $LIBS"+cat confdefs.h - <<_ACEOF >conftest.$ac_ext+/* end confdefs.h.  */++/* Override any GCC internal prototype to avoid an error.+   Use char because int might match the return type of a GCC+   builtin and then its argument prototype would still apply.  */+#ifdef __cplusplus+extern "C"+#endif+char dlopen ();+int+main ()+{+return dlopen ();+  ;+  return 0;+}+_ACEOF+if ac_fn_c_try_link "$LINENO"; then :+  ac_cv_lib_svld_dlopen=yes+else+  ac_cv_lib_svld_dlopen=no+fi+rm -f core conftest.err conftest.$ac_objext \+    conftest$ac_exeext conftest.$ac_ext+LIBS=$ac_check_lib_save_LIBS+fi+{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_svld_dlopen" >&5+$as_echo "$ac_cv_lib_svld_dlopen" >&6; }+if test "x$ac_cv_lib_svld_dlopen" = xyes; then :+  lt_cv_dlopen=dlopen lt_cv_dlopen_libs=-lsvld+else+  { $as_echo "$as_me:${as_lineno-$LINENO}: checking for dld_link in -ldld" >&5+$as_echo_n "checking for dld_link in -ldld... " >&6; }+if ${ac_cv_lib_dld_dld_link+:} false; then :+  $as_echo_n "(cached) " >&6+else+  ac_check_lib_save_LIBS=$LIBS+LIBS="-ldld  $LIBS"+cat confdefs.h - <<_ACEOF >conftest.$ac_ext+/* end confdefs.h.  */++/* Override any GCC internal prototype to avoid an error.+   Use char because int might match the return type of a GCC+   builtin and then its argument prototype would still apply.  */+#ifdef __cplusplus+extern "C"+#endif+char dld_link ();+int+main ()+{+return dld_link ();+  ;+  return 0;+}+_ACEOF+if ac_fn_c_try_link "$LINENO"; then :+  ac_cv_lib_dld_dld_link=yes+else+  ac_cv_lib_dld_dld_link=no+fi+rm -f core conftest.err conftest.$ac_objext \+    conftest$ac_exeext conftest.$ac_ext+LIBS=$ac_check_lib_save_LIBS+fi+{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_dld_dld_link" >&5+$as_echo "$ac_cv_lib_dld_dld_link" >&6; }+if test "x$ac_cv_lib_dld_dld_link" = xyes; then :+  lt_cv_dlopen=dld_link lt_cv_dlopen_libs=-ldld+fi+++fi+++fi+++fi+++fi+++fi++    ;;+  esac++  if test no = "$lt_cv_dlopen"; then+    enable_dlopen=no+  else+    enable_dlopen=yes+  fi++  case $lt_cv_dlopen in+  dlopen)+    save_CPPFLAGS=$CPPFLAGS+    test yes = "$ac_cv_header_dlfcn_h" && CPPFLAGS="$CPPFLAGS -DHAVE_DLFCN_H"++    save_LDFLAGS=$LDFLAGS+    wl=$lt_prog_compiler_wl eval LDFLAGS=\"\$LDFLAGS $export_dynamic_flag_spec\"++    save_LIBS=$LIBS+    LIBS="$lt_cv_dlopen_libs $LIBS"++    { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether a program can dlopen itself" >&5+$as_echo_n "checking whether a program can dlopen itself... " >&6; }+if ${lt_cv_dlopen_self+:} false; then :+  $as_echo_n "(cached) " >&6+else+  	  if test yes = "$cross_compiling"; then :+  lt_cv_dlopen_self=cross+else+  lt_dlunknown=0; lt_dlno_uscore=1; lt_dlneed_uscore=2+  lt_status=$lt_dlunknown+  cat > conftest.$ac_ext <<_LT_EOF+#line $LINENO "configure"+#include "confdefs.h"++#if HAVE_DLFCN_H+#include <dlfcn.h>+#endif++#include <stdio.h>++#ifdef RTLD_GLOBAL+#  define LT_DLGLOBAL		RTLD_GLOBAL+#else+#  ifdef DL_GLOBAL+#    define LT_DLGLOBAL		DL_GLOBAL+#  else+#    define LT_DLGLOBAL		0+#  endif+#endif++/* We may have to define LT_DLLAZY_OR_NOW in the command line if we+   find out it does not work in some platform. */+#ifndef LT_DLLAZY_OR_NOW+#  ifdef RTLD_LAZY+#    define LT_DLLAZY_OR_NOW		RTLD_LAZY+#  else+#    ifdef DL_LAZY+#      define LT_DLLAZY_OR_NOW		DL_LAZY+#    else+#      ifdef RTLD_NOW+#        define LT_DLLAZY_OR_NOW	RTLD_NOW+#      else+#        ifdef DL_NOW+#          define LT_DLLAZY_OR_NOW	DL_NOW+#        else+#          define LT_DLLAZY_OR_NOW	0+#        endif+#      endif+#    endif+#  endif+#endif++/* When -fvisibility=hidden is used, assume the code has been annotated+   correspondingly for the symbols needed.  */+#if defined __GNUC__ && (((__GNUC__ == 3) && (__GNUC_MINOR__ >= 3)) || (__GNUC__ > 3))+int fnord () __attribute__((visibility("default")));+#endif++int fnord () { return 42; }+int main ()+{+  void *self = dlopen (0, LT_DLGLOBAL|LT_DLLAZY_OR_NOW);+  int status = $lt_dlunknown;++  if (self)+    {+      if (dlsym (self,"fnord"))       status = $lt_dlno_uscore;+      else+        {+	  if (dlsym( self,"_fnord"))  status = $lt_dlneed_uscore;+          else puts (dlerror ());+	}+      /* dlclose (self); */+    }+  else+    puts (dlerror ());++  return status;+}+_LT_EOF+  if { { eval echo "\"\$as_me\":${as_lineno-$LINENO}: \"$ac_link\""; } >&5+  (eval $ac_link) 2>&5+  ac_status=$?+  $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5+  test $ac_status = 0; } && test -s "conftest$ac_exeext" 2>/dev/null; then+    (./conftest; exit; ) >&5 2>/dev/null+    lt_status=$?+    case x$lt_status in+      x$lt_dlno_uscore) lt_cv_dlopen_self=yes ;;+      x$lt_dlneed_uscore) lt_cv_dlopen_self=yes ;;+      x$lt_dlunknown|x*) lt_cv_dlopen_self=no ;;+    esac+  else :+    # compilation failed+    lt_cv_dlopen_self=no+  fi+fi+rm -fr conftest*+++fi+{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_cv_dlopen_self" >&5+$as_echo "$lt_cv_dlopen_self" >&6; }++    if test yes = "$lt_cv_dlopen_self"; then+      wl=$lt_prog_compiler_wl eval LDFLAGS=\"\$LDFLAGS $lt_prog_compiler_static\"+      { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether a statically linked program can dlopen itself" >&5+$as_echo_n "checking whether a statically linked program can dlopen itself... " >&6; }+if ${lt_cv_dlopen_self_static+:} false; then :+  $as_echo_n "(cached) " >&6+else+  	  if test yes = "$cross_compiling"; then :+  lt_cv_dlopen_self_static=cross+else+  lt_dlunknown=0; lt_dlno_uscore=1; lt_dlneed_uscore=2+  lt_status=$lt_dlunknown+  cat > conftest.$ac_ext <<_LT_EOF+#line $LINENO "configure"+#include "confdefs.h"++#if HAVE_DLFCN_H+#include <dlfcn.h>+#endif++#include <stdio.h>++#ifdef RTLD_GLOBAL+#  define LT_DLGLOBAL		RTLD_GLOBAL+#else+#  ifdef DL_GLOBAL+#    define LT_DLGLOBAL		DL_GLOBAL+#  else+#    define LT_DLGLOBAL		0+#  endif+#endif++/* We may have to define LT_DLLAZY_OR_NOW in the command line if we+   find out it does not work in some platform. */+#ifndef LT_DLLAZY_OR_NOW+#  ifdef RTLD_LAZY+#    define LT_DLLAZY_OR_NOW		RTLD_LAZY+#  else+#    ifdef DL_LAZY+#      define LT_DLLAZY_OR_NOW		DL_LAZY+#    else+#      ifdef RTLD_NOW+#        define LT_DLLAZY_OR_NOW	RTLD_NOW+#      else+#        ifdef DL_NOW+#          define LT_DLLAZY_OR_NOW	DL_NOW+#        else+#          define LT_DLLAZY_OR_NOW	0+#        endif+#      endif+#    endif+#  endif+#endif++/* When -fvisibility=hidden is used, assume the code has been annotated+   correspondingly for the symbols needed.  */+#if defined __GNUC__ && (((__GNUC__ == 3) && (__GNUC_MINOR__ >= 3)) || (__GNUC__ > 3))+int fnord () __attribute__((visibility("default")));+#endif++int fnord () { return 42; }+int main ()+{+  void *self = dlopen (0, LT_DLGLOBAL|LT_DLLAZY_OR_NOW);+  int status = $lt_dlunknown;++  if (self)+    {+      if (dlsym (self,"fnord"))       status = $lt_dlno_uscore;+      else+        {+	  if (dlsym( self,"_fnord"))  status = $lt_dlneed_uscore;+          else puts (dlerror ());+	}+      /* dlclose (self); */+    }+  else+    puts (dlerror ());++  return status;+}+_LT_EOF+  if { { eval echo "\"\$as_me\":${as_lineno-$LINENO}: \"$ac_link\""; } >&5+  (eval $ac_link) 2>&5+  ac_status=$?+  $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5+  test $ac_status = 0; } && test -s "conftest$ac_exeext" 2>/dev/null; then+    (./conftest; exit; ) >&5 2>/dev/null+    lt_status=$?+    case x$lt_status in+      x$lt_dlno_uscore) lt_cv_dlopen_self_static=yes ;;+      x$lt_dlneed_uscore) lt_cv_dlopen_self_static=yes ;;+      x$lt_dlunknown|x*) lt_cv_dlopen_self_static=no ;;+    esac+  else :+    # compilation failed+    lt_cv_dlopen_self_static=no+  fi+fi+rm -fr conftest*+++fi+{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_cv_dlopen_self_static" >&5+$as_echo "$lt_cv_dlopen_self_static" >&6; }+    fi++    CPPFLAGS=$save_CPPFLAGS+    LDFLAGS=$save_LDFLAGS+    LIBS=$save_LIBS+    ;;+  esac++  case $lt_cv_dlopen_self in+  yes|no) enable_dlopen_self=$lt_cv_dlopen_self ;;+  *) enable_dlopen_self=unknown ;;+  esac++  case $lt_cv_dlopen_self_static in+  yes|no) enable_dlopen_self_static=$lt_cv_dlopen_self_static ;;+  *) enable_dlopen_self_static=unknown ;;+  esac+fi++++++++++++++++++striplib=+old_striplib=+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether stripping libraries is possible" >&5+$as_echo_n "checking whether stripping libraries is possible... " >&6; }+if test -z "$STRIP"; then+  { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5+$as_echo "no" >&6; }+else+  if $STRIP -V 2>&1 | $GREP "GNU strip" >/dev/null; then+    old_striplib="$STRIP --strip-debug"+    striplib="$STRIP --strip-unneeded"+    { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5+$as_echo "yes" >&6; }+  else+    case $host_os in+    darwin*)+      # FIXME - insert some real tests, host_os isn't really good enough+      striplib="$STRIP -x"+      old_striplib="$STRIP -S"+      { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5+$as_echo "yes" >&6; }+      ;;+    freebsd*)+      if $STRIP -V 2>&1 | $GREP "elftoolchain" >/dev/null; then+        old_striplib="$STRIP --strip-debug"+        striplib="$STRIP --strip-unneeded"+        { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5+$as_echo "yes" >&6; }+      else+        { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5+$as_echo "no" >&6; }+      fi+      ;;+    *)+      { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5+$as_echo "no" >&6; }+      ;;+    esac+  fi+fi+++++++++++++  # Report what library types will actually be built+  { $as_echo "$as_me:${as_lineno-$LINENO}: checking if libtool supports shared libraries" >&5+$as_echo_n "checking if libtool supports shared libraries... " >&6; }+  { $as_echo "$as_me:${as_lineno-$LINENO}: result: $can_build_shared" >&5+$as_echo "$can_build_shared" >&6; }++  { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether to build shared libraries" >&5+$as_echo_n "checking whether to build shared libraries... " >&6; }+  test no = "$can_build_shared" && enable_shared=no++  # On AIX, shared libraries and static libraries use the same namespace, and+  # are all built from PIC.+  case $host_os in+  aix3*)+    test yes = "$enable_shared" && enable_static=no+    if test -n "$RANLIB"; then+      archive_cmds="$archive_cmds~\$RANLIB \$lib"+      postinstall_cmds='$RANLIB $lib'+    fi+    ;;++  aix[4-9]*)+    if test ia64 != "$host_cpu"; then+      case $enable_shared,$with_aix_soname,$aix_use_runtimelinking in+      yes,aix,yes) ;;			# shared object as lib.so file only+      yes,svr4,*) ;;			# shared object as lib.so archive member only+      yes,*) enable_static=no ;;	# shared object in lib.a archive as well+      esac+    fi+    ;;+  esac+  { $as_echo "$as_me:${as_lineno-$LINENO}: result: $enable_shared" >&5+$as_echo "$enable_shared" >&6; }++  { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether to build static libraries" >&5+$as_echo_n "checking whether to build static libraries... " >&6; }+  # Make sure either enable_shared or enable_static is yes.+  test yes = "$enable_shared" || enable_static=yes+  { $as_echo "$as_me:${as_lineno-$LINENO}: result: $enable_static" >&5+$as_echo "$enable_static" >&6; }+++++fi+ac_ext=c+ac_cpp='$CPP $CPPFLAGS'+ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5'+ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5'+ac_compiler_gnu=$ac_cv_c_compiler_gnu++CC=$lt_save_CC++      if test -n "$CXX" && ( test no != "$CXX" &&+    ( (test g++ = "$CXX" && `g++ -v >/dev/null 2>&1` ) ||+    (test g++ != "$CXX"))); then+  ac_ext=cpp+ac_cpp='$CXXCPP $CPPFLAGS'+ac_compile='$CXX -c $CXXFLAGS $CPPFLAGS conftest.$ac_ext >&5'+ac_link='$CXX -o conftest$ac_exeext $CXXFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5'+ac_compiler_gnu=$ac_cv_cxx_compiler_gnu+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking how to run the C++ preprocessor" >&5+$as_echo_n "checking how to run the C++ preprocessor... " >&6; }+if test -z "$CXXCPP"; then+  if ${ac_cv_prog_CXXCPP+:} false; then :+  $as_echo_n "(cached) " >&6+else+      # Double quotes because CXXCPP needs to be expanded+    for CXXCPP in "$CXX -E" "/lib/cpp"+    do+      ac_preproc_ok=false+for ac_cxx_preproc_warn_flag in '' yes+do+  # Use a header file that comes with gcc, so configuring glibc+  # with a fresh cross-compiler works.+  # Prefer <limits.h> to <assert.h> if __STDC__ is defined, since+  # <limits.h> exists even on freestanding compilers.+  # On the NeXT, cc -E runs the code through the compiler's parser,+  # not just through cpp. "Syntax error" is here to catch this case.+  cat confdefs.h - <<_ACEOF >conftest.$ac_ext+/* end confdefs.h.  */+#ifdef __STDC__+# include <limits.h>+#else+# include <assert.h>+#endif+		     Syntax error+_ACEOF+if ac_fn_cxx_try_cpp "$LINENO"; then :++else+  # Broken: fails on valid input.+continue+fi+rm -f conftest.err conftest.i conftest.$ac_ext++  # OK, works on sane cases.  Now check whether nonexistent headers+  # can be detected and how.+  cat confdefs.h - <<_ACEOF >conftest.$ac_ext+/* end confdefs.h.  */+#include <ac_nonexistent.h>+_ACEOF+if ac_fn_cxx_try_cpp "$LINENO"; then :+  # Broken: success on invalid input.+continue+else+  # Passes both tests.+ac_preproc_ok=:+break+fi+rm -f conftest.err conftest.i conftest.$ac_ext++done+# Because of `break', _AC_PREPROC_IFELSE's cleaning code was skipped.+rm -f conftest.i conftest.err conftest.$ac_ext+if $ac_preproc_ok; then :+  break+fi++    done+    ac_cv_prog_CXXCPP=$CXXCPP++fi+  CXXCPP=$ac_cv_prog_CXXCPP+else+  ac_cv_prog_CXXCPP=$CXXCPP+fi+{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $CXXCPP" >&5+$as_echo "$CXXCPP" >&6; }+ac_preproc_ok=false+for ac_cxx_preproc_warn_flag in '' yes+do+  # Use a header file that comes with gcc, so configuring glibc+  # with a fresh cross-compiler works.+  # Prefer <limits.h> to <assert.h> if __STDC__ is defined, since+  # <limits.h> exists even on freestanding compilers.+  # On the NeXT, cc -E runs the code through the compiler's parser,+  # not just through cpp. "Syntax error" is here to catch this case.+  cat confdefs.h - <<_ACEOF >conftest.$ac_ext+/* end confdefs.h.  */+#ifdef __STDC__+# include <limits.h>+#else+# include <assert.h>+#endif+		     Syntax error+_ACEOF+if ac_fn_cxx_try_cpp "$LINENO"; then :++else+  # Broken: fails on valid input.+continue+fi+rm -f conftest.err conftest.i conftest.$ac_ext++  # OK, works on sane cases.  Now check whether nonexistent headers+  # can be detected and how.+  cat confdefs.h - <<_ACEOF >conftest.$ac_ext+/* end confdefs.h.  */+#include <ac_nonexistent.h>+_ACEOF+if ac_fn_cxx_try_cpp "$LINENO"; then :+  # Broken: success on invalid input.+continue+else+  # Passes both tests.+ac_preproc_ok=:+break+fi+rm -f conftest.err conftest.i conftest.$ac_ext++done+# Because of `break', _AC_PREPROC_IFELSE's cleaning code was skipped.+rm -f conftest.i conftest.err conftest.$ac_ext+if $ac_preproc_ok; then :++else+  { { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5+$as_echo "$as_me: error: in \`$ac_pwd':" >&2;}+as_fn_error $? "C++ preprocessor \"$CXXCPP\" fails sanity check+See \`config.log' for more details" "$LINENO" 5; }+fi++ac_ext=c+ac_cpp='$CPP $CPPFLAGS'+ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5'+ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5'+ac_compiler_gnu=$ac_cv_c_compiler_gnu++else+  _lt_caught_CXX_error=yes+fi++ac_ext=cpp+ac_cpp='$CXXCPP $CPPFLAGS'+ac_compile='$CXX -c $CXXFLAGS $CPPFLAGS conftest.$ac_ext >&5'+ac_link='$CXX -o conftest$ac_exeext $CXXFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5'+ac_compiler_gnu=$ac_cv_cxx_compiler_gnu++archive_cmds_need_lc_CXX=no+allow_undefined_flag_CXX=+always_export_symbols_CXX=no+archive_expsym_cmds_CXX=+compiler_needs_object_CXX=no+export_dynamic_flag_spec_CXX=+hardcode_direct_CXX=no+hardcode_direct_absolute_CXX=no+hardcode_libdir_flag_spec_CXX=+hardcode_libdir_separator_CXX=+hardcode_minus_L_CXX=no+hardcode_shlibpath_var_CXX=unsupported+hardcode_automatic_CXX=no+inherit_rpath_CXX=no+module_cmds_CXX=+module_expsym_cmds_CXX=+link_all_deplibs_CXX=unknown+old_archive_cmds_CXX=$old_archive_cmds+reload_flag_CXX=$reload_flag+reload_cmds_CXX=$reload_cmds+no_undefined_flag_CXX=+whole_archive_flag_spec_CXX=+enable_shared_with_static_runtimes_CXX=no++# Source file extension for C++ test sources.+ac_ext=cpp++# Object file extension for compiled C++ test sources.+objext=o+objext_CXX=$objext++# No sense in running all these tests if we already determined that+# the CXX compiler isn't working.  Some variables (like enable_shared)+# are currently assumed to apply to all compilers on this platform,+# and will be corrupted by setting them based on a non-working compiler.+if test yes != "$_lt_caught_CXX_error"; then+  # Code to be used in simple compile tests+  lt_simple_compile_test_code="int some_variable = 0;"++  # Code to be used in simple link tests+  lt_simple_link_test_code='int main(int, char *[]) { return(0); }'++  # ltmain only uses $CC for tagged configurations so make sure $CC is set.+++++++# If no C compiler was specified, use CC.+LTCC=${LTCC-"$CC"}++# If no C compiler flags were specified, use CFLAGS.+LTCFLAGS=${LTCFLAGS-"$CFLAGS"}++# Allow CC to be a program name with arguments.+compiler=$CC+++  # save warnings/boilerplate of simple test code+  ac_outfile=conftest.$ac_objext+echo "$lt_simple_compile_test_code" >conftest.$ac_ext+eval "$ac_compile" 2>&1 >/dev/null | $SED '/^$/d; /^ *+/d' >conftest.err+_lt_compiler_boilerplate=`cat conftest.err`+$RM conftest*++  ac_outfile=conftest.$ac_objext+echo "$lt_simple_link_test_code" >conftest.$ac_ext+eval "$ac_link" 2>&1 >/dev/null | $SED '/^$/d; /^ *+/d' >conftest.err+_lt_linker_boilerplate=`cat conftest.err`+$RM -r conftest*+++  # Allow CC to be a program name with arguments.+  lt_save_CC=$CC+  lt_save_CFLAGS=$CFLAGS+  lt_save_LD=$LD+  lt_save_GCC=$GCC+  GCC=$GXX+  lt_save_with_gnu_ld=$with_gnu_ld+  lt_save_path_LD=$lt_cv_path_LD+  if test -n "${lt_cv_prog_gnu_ldcxx+set}"; then+    lt_cv_prog_gnu_ld=$lt_cv_prog_gnu_ldcxx+  else+    $as_unset lt_cv_prog_gnu_ld+  fi+  if test -n "${lt_cv_path_LDCXX+set}"; then+    lt_cv_path_LD=$lt_cv_path_LDCXX+  else+    $as_unset lt_cv_path_LD+  fi+  test -z "${LDCXX+set}" || LD=$LDCXX+  CC=${CXX-"c++"}+  CFLAGS=$CXXFLAGS+  compiler=$CC+  compiler_CXX=$CC+  func_cc_basename $compiler+cc_basename=$func_cc_basename_result+++  if test -n "$compiler"; then+    # We don't want -fno-exception when compiling C++ code, so set the+    # no_builtin_flag separately+    if test yes = "$GXX"; then+      lt_prog_compiler_no_builtin_flag_CXX=' -fno-builtin'+    else+      lt_prog_compiler_no_builtin_flag_CXX=+    fi++    if test yes = "$GXX"; then+      # Set up default GNU C++ configuration++++# Check whether --with-gnu-ld was given.+if test "${with_gnu_ld+set}" = set; then :+  withval=$with_gnu_ld; test no = "$withval" || with_gnu_ld=yes+else+  with_gnu_ld=no+fi++ac_prog=ld+if test yes = "$GCC"; then+  # Check if gcc -print-prog-name=ld gives a path.+  { $as_echo "$as_me:${as_lineno-$LINENO}: checking for ld used by $CC" >&5+$as_echo_n "checking for ld used by $CC... " >&6; }+  case $host in+  *-*-mingw*)+    # gcc leaves a trailing carriage return, which upsets mingw+    ac_prog=`($CC -print-prog-name=ld) 2>&5 | tr -d '\015'` ;;+  *)+    ac_prog=`($CC -print-prog-name=ld) 2>&5` ;;+  esac+  case $ac_prog in+    # Accept absolute paths.+    [\\/]* | ?:[\\/]*)+      re_direlt='/[^/][^/]*/\.\./'+      # Canonicalize the pathname of ld+      ac_prog=`$ECHO "$ac_prog"| $SED 's%\\\\%/%g'`+      while $ECHO "$ac_prog" | $GREP "$re_direlt" > /dev/null 2>&1; do+	ac_prog=`$ECHO $ac_prog| $SED "s%$re_direlt%/%"`+      done+      test -z "$LD" && LD=$ac_prog+      ;;+  "")+    # If it fails, then pretend we aren't using GCC.+    ac_prog=ld+    ;;+  *)+    # If it is relative, then search for the first ld in PATH.+    with_gnu_ld=unknown+    ;;+  esac+elif test yes = "$with_gnu_ld"; then+  { $as_echo "$as_me:${as_lineno-$LINENO}: checking for GNU ld" >&5+$as_echo_n "checking for GNU ld... " >&6; }+else+  { $as_echo "$as_me:${as_lineno-$LINENO}: checking for non-GNU ld" >&5+$as_echo_n "checking for non-GNU ld... " >&6; }+fi+if ${lt_cv_path_LD+:} false; then :+  $as_echo_n "(cached) " >&6+else+  if test -z "$LD"; then+  lt_save_ifs=$IFS; IFS=$PATH_SEPARATOR+  for ac_dir in $PATH; do+    IFS=$lt_save_ifs+    test -z "$ac_dir" && ac_dir=.+    if test -f "$ac_dir/$ac_prog" || test -f "$ac_dir/$ac_prog$ac_exeext"; then+      lt_cv_path_LD=$ac_dir/$ac_prog+      # Check to see if the program is GNU ld.  I'd rather use --version,+      # but apparently some variants of GNU ld only accept -v.+      # Break only if it was the GNU/non-GNU ld that we prefer.+      case `"$lt_cv_path_LD" -v 2>&1 </dev/null` in+      *GNU* | *'with BFD'*)+	test no != "$with_gnu_ld" && break+	;;+      *)+	test yes != "$with_gnu_ld" && break+	;;+      esac+    fi+  done+  IFS=$lt_save_ifs+else+  lt_cv_path_LD=$LD # Let the user override the test with a path.+fi+fi++LD=$lt_cv_path_LD+if test -n "$LD"; then+  { $as_echo "$as_me:${as_lineno-$LINENO}: result: $LD" >&5+$as_echo "$LD" >&6; }+else+  { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5+$as_echo "no" >&6; }+fi+test -z "$LD" && as_fn_error $? "no acceptable ld found in \$PATH" "$LINENO" 5+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking if the linker ($LD) is GNU ld" >&5+$as_echo_n "checking if the linker ($LD) is GNU ld... " >&6; }+if ${lt_cv_prog_gnu_ld+:} false; then :+  $as_echo_n "(cached) " >&6+else+  # I'd rather use --version here, but apparently some GNU lds only accept -v.+case `$LD -v 2>&1 </dev/null` in+*GNU* | *'with BFD'*)+  lt_cv_prog_gnu_ld=yes+  ;;+*)+  lt_cv_prog_gnu_ld=no+  ;;+esac+fi+{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_cv_prog_gnu_ld" >&5+$as_echo "$lt_cv_prog_gnu_ld" >&6; }+with_gnu_ld=$lt_cv_prog_gnu_ld++++++++      # Check if GNU C++ uses GNU ld as the underlying linker, since the+      # archiving commands below assume that GNU ld is being used.+      if test yes = "$with_gnu_ld"; then+        archive_cmds_CXX='$CC $pic_flag -shared -nostdlib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags $wl-soname $wl$soname -o $lib'+        archive_expsym_cmds_CXX='$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'++        hardcode_libdir_flag_spec_CXX='$wl-rpath $wl$libdir'+        export_dynamic_flag_spec_CXX='$wl--export-dynamic'++        # If archive_cmds runs LD, not CC, wlarc should be empty+        # XXX I think wlarc can be eliminated in ltcf-cxx, but I need to+        #     investigate it a little bit more. (MM)+        wlarc='$wl'++        # ancient GNU ld didn't support --whole-archive et. al.+        if eval "`$CC -print-prog-name=ld` --help 2>&1" |+	  $GREP 'no-whole-archive' > /dev/null; then+          whole_archive_flag_spec_CXX=$wlarc'--whole-archive$convenience '$wlarc'--no-whole-archive'+        else+          whole_archive_flag_spec_CXX=+        fi+      else+        with_gnu_ld=no+        wlarc=++        # A generic and very simple default shared library creation+        # command for GNU C++ for the case where it uses the native+        # linker, instead of GNU ld.  If possible, this setting should+        # overridden to take advantage of the native linker features on+        # the platform it is being used on.+        archive_cmds_CXX='$CC -shared -nostdlib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags -o $lib'+      fi++      # Commands to make compiler produce verbose output that lists+      # what "hidden" libraries, object files and flags are used when+      # linking a shared library.+      output_verbose_link_cmd='$CC -shared $CFLAGS -v conftest.$objext 2>&1 | $GREP -v "^Configured with:" | $GREP " \-L"'++    else+      GXX=no+      with_gnu_ld=no+      wlarc=+    fi++    # PORTME: fill in a description of your system's C++ link characteristics+    { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether the $compiler linker ($LD) supports shared libraries" >&5+$as_echo_n "checking whether the $compiler linker ($LD) supports shared libraries... " >&6; }+    ld_shlibs_CXX=yes+    case $host_os in+      aix3*)+        # FIXME: insert proper C++ library support+        ld_shlibs_CXX=no+        ;;+      aix[4-9]*)+        if test ia64 = "$host_cpu"; then+          # On IA64, the linker does run time linking by default, so we don't+          # have to do anything special.+          aix_use_runtimelinking=no+          exp_sym_flag='-Bexport'+          no_entry_flag=+        else+          aix_use_runtimelinking=no++          # Test if we are trying to use run time linking or normal+          # AIX style linking. If -brtl is somewhere in LDFLAGS, we+          # have runtime linking enabled, and use it for executables.+          # For shared libraries, we enable/disable runtime linking+          # depending on the kind of the shared library created -+          # when "with_aix_soname,aix_use_runtimelinking" is:+          # "aix,no"   lib.a(lib.so.V) shared, rtl:no,  for executables+          # "aix,yes"  lib.so          shared, rtl:yes, for executables+          #            lib.a           static archive+          # "both,no"  lib.so.V(shr.o) shared, rtl:yes+          #            lib.a(lib.so.V) shared, rtl:no,  for executables+          # "both,yes" lib.so.V(shr.o) shared, rtl:yes, for executables+          #            lib.a(lib.so.V) shared, rtl:no+          # "svr4,*"   lib.so.V(shr.o) shared, rtl:yes, for executables+          #            lib.a           static archive+          case $host_os in aix4.[23]|aix4.[23].*|aix[5-9]*)+	    for ld_flag in $LDFLAGS; do+	      case $ld_flag in+	      *-brtl*)+	        aix_use_runtimelinking=yes+	        break+	        ;;+	      esac+	    done+	    if test svr4,no = "$with_aix_soname,$aix_use_runtimelinking"; then+	      # With aix-soname=svr4, we create the lib.so.V shared archives only,+	      # so we don't have lib.a shared libs to link our executables.+	      # We have to force runtime linking in this case.+	      aix_use_runtimelinking=yes+	      LDFLAGS="$LDFLAGS -Wl,-brtl"+	    fi+	    ;;+          esac++          exp_sym_flag='-bexport'+          no_entry_flag='-bnoentry'+        fi++        # When large executables or shared objects are built, AIX ld can+        # have problems creating the table of contents.  If linking a library+        # or program results in "error TOC overflow" add -mminimal-toc to+        # CXXFLAGS/CFLAGS for g++/gcc.  In the cases where that is not+        # enough to fix the problem, add -Wl,-bbigtoc to LDFLAGS.++        archive_cmds_CXX=''+        hardcode_direct_CXX=yes+        hardcode_direct_absolute_CXX=yes+        hardcode_libdir_separator_CXX=':'+        link_all_deplibs_CXX=yes+        file_list_spec_CXX='$wl-f,'+        case $with_aix_soname,$aix_use_runtimelinking in+        aix,*) ;;	# no import file+        svr4,* | *,yes) # use import file+          # The Import File defines what to hardcode.+          hardcode_direct_CXX=no+          hardcode_direct_absolute_CXX=no+          ;;+        esac++        if test yes = "$GXX"; then+          case $host_os in aix4.[012]|aix4.[012].*)+          # We only want to do this on AIX 4.2 and lower, the check+          # below for broken collect2 doesn't work under 4.3++	  collect2name=`$CC -print-prog-name=collect2`+	  if test -f "$collect2name" &&+	     strings "$collect2name" | $GREP resolve_lib_name >/dev/null+	  then+	    # We have reworked collect2+	    :+	  else+	    # We have old collect2+	    hardcode_direct_CXX=unsupported+	    # It fails to find uninstalled libraries when the uninstalled+	    # path is not listed in the libpath.  Setting hardcode_minus_L+	    # to unsupported forces relinking+	    hardcode_minus_L_CXX=yes+	    hardcode_libdir_flag_spec_CXX='-L$libdir'+	    hardcode_libdir_separator_CXX=+	  fi+          esac+          shared_flag='-shared'+	  if test yes = "$aix_use_runtimelinking"; then+	    shared_flag=$shared_flag' $wl-G'+	  fi+	  # Need to ensure runtime linking is disabled for the traditional+	  # shared library, or the linker may eventually find shared libraries+	  # /with/ Import File - we do not want to mix them.+	  shared_flag_aix='-shared'+	  shared_flag_svr4='-shared $wl-G'+        else+          # not using gcc+          if test ia64 = "$host_cpu"; then+	  # VisualAge C++, Version 5.5 for AIX 5L for IA-64, Beta 3 Release+	  # chokes on -Wl,-G. The following line is correct:+	  shared_flag='-G'+          else+	    if test yes = "$aix_use_runtimelinking"; then+	      shared_flag='$wl-G'+	    else+	      shared_flag='$wl-bM:SRE'+	    fi+	    shared_flag_aix='$wl-bM:SRE'+	    shared_flag_svr4='$wl-G'+          fi+        fi++        export_dynamic_flag_spec_CXX='$wl-bexpall'+        # It seems that -bexpall does not export symbols beginning with+        # underscore (_), so it is better to generate a list of symbols to+	# export.+        always_export_symbols_CXX=yes+	if test aix,yes = "$with_aix_soname,$aix_use_runtimelinking"; then+          # Warning - without using the other runtime loading flags (-brtl),+          # -berok will link without error, but may produce a broken library.+          # The "-G" linker flag allows undefined symbols.+          no_undefined_flag_CXX='-bernotok'+          # Determine the default libpath from the value encoded in an empty+          # executable.+          if test set = "${lt_cv_aix_libpath+set}"; then+  aix_libpath=$lt_cv_aix_libpath+else+  if ${lt_cv_aix_libpath__CXX+:} false; then :+  $as_echo_n "(cached) " >&6+else+  cat confdefs.h - <<_ACEOF >conftest.$ac_ext+/* end confdefs.h.  */++int+main ()+{++  ;+  return 0;+}+_ACEOF+if ac_fn_cxx_try_link "$LINENO"; then :++  lt_aix_libpath_sed='+      /Import File Strings/,/^$/ {+	  /^0/ {+	      s/^0  *\([^ ]*\) *$/\1/+	      p+	  }+      }'+  lt_cv_aix_libpath__CXX=`dump -H conftest$ac_exeext 2>/dev/null | $SED -n -e "$lt_aix_libpath_sed"`+  # Check for a 64-bit object if we didn't find anything.+  if test -z "$lt_cv_aix_libpath__CXX"; then+    lt_cv_aix_libpath__CXX=`dump -HX64 conftest$ac_exeext 2>/dev/null | $SED -n -e "$lt_aix_libpath_sed"`+  fi+fi+rm -f core conftest.err conftest.$ac_objext \+    conftest$ac_exeext conftest.$ac_ext+  if test -z "$lt_cv_aix_libpath__CXX"; then+    lt_cv_aix_libpath__CXX=/usr/lib:/lib+  fi++fi++  aix_libpath=$lt_cv_aix_libpath__CXX+fi++          hardcode_libdir_flag_spec_CXX='$wl-blibpath:$libdir:'"$aix_libpath"++          archive_expsym_cmds_CXX='$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+        else+          if test ia64 = "$host_cpu"; then+	    hardcode_libdir_flag_spec_CXX='$wl-R $libdir:/usr/lib:/lib'+	    allow_undefined_flag_CXX="-z nodefs"+	    archive_expsym_cmds_CXX="\$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"+          else+	    # Determine the default libpath from the value encoded in an+	    # empty executable.+	    if test set = "${lt_cv_aix_libpath+set}"; then+  aix_libpath=$lt_cv_aix_libpath+else+  if ${lt_cv_aix_libpath__CXX+:} false; then :+  $as_echo_n "(cached) " >&6+else+  cat confdefs.h - <<_ACEOF >conftest.$ac_ext+/* end confdefs.h.  */++int+main ()+{++  ;+  return 0;+}+_ACEOF+if ac_fn_cxx_try_link "$LINENO"; then :++  lt_aix_libpath_sed='+      /Import File Strings/,/^$/ {+	  /^0/ {+	      s/^0  *\([^ ]*\) *$/\1/+	      p+	  }+      }'+  lt_cv_aix_libpath__CXX=`dump -H conftest$ac_exeext 2>/dev/null | $SED -n -e "$lt_aix_libpath_sed"`+  # Check for a 64-bit object if we didn't find anything.+  if test -z "$lt_cv_aix_libpath__CXX"; then+    lt_cv_aix_libpath__CXX=`dump -HX64 conftest$ac_exeext 2>/dev/null | $SED -n -e "$lt_aix_libpath_sed"`+  fi+fi+rm -f core conftest.err conftest.$ac_objext \+    conftest$ac_exeext conftest.$ac_ext+  if test -z "$lt_cv_aix_libpath__CXX"; then+    lt_cv_aix_libpath__CXX=/usr/lib:/lib+  fi++fi++  aix_libpath=$lt_cv_aix_libpath__CXX+fi++	    hardcode_libdir_flag_spec_CXX='$wl-blibpath:$libdir:'"$aix_libpath"+	    # Warning - without using the other run time loading flags,+	    # -berok will link without error, but may produce a broken library.+	    no_undefined_flag_CXX=' $wl-bernotok'+	    allow_undefined_flag_CXX=' $wl-berok'+	    if test yes = "$with_gnu_ld"; then+	      # We only use this code for GNU lds that support --whole-archive.+	      whole_archive_flag_spec_CXX='$wl--whole-archive$convenience $wl--no-whole-archive'+	    else+	      # Exported symbols can be pulled into shared objects from archives+	      whole_archive_flag_spec_CXX='$convenience'+	    fi+	    archive_cmds_need_lc_CXX=yes+	    archive_expsym_cmds_CXX='$RM -r $output_objdir/$realname.d~$MKDIR $output_objdir/$realname.d'+	    # -brtl affects multiple linker settings, -berok does not and is overridden later+	    compiler_flags_filtered='`func_echo_all "$compiler_flags " | $SED -e "s%-brtl\\([, ]\\)%-berok\\1%g"`'+	    if test svr4 != "$with_aix_soname"; then+	      # This is similar to how AIX traditionally builds its shared+	      # libraries. Need -bnortl late, we may have -brtl in LDFLAGS.+	      archive_expsym_cmds_CXX="$archive_expsym_cmds_CXX"'~$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'+	    fi+	    if test aix != "$with_aix_soname"; then+	      archive_expsym_cmds_CXX="$archive_expsym_cmds_CXX"'~$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'+	    else+	      # used by -dlpreopen to get the symbols+	      archive_expsym_cmds_CXX="$archive_expsym_cmds_CXX"'~$MV  $output_objdir/$realname.d/$soname $output_objdir'+	    fi+	    archive_expsym_cmds_CXX="$archive_expsym_cmds_CXX"'~$RM -r $output_objdir/$realname.d'+          fi+        fi+        ;;++      beos*)+	if $LD --help 2>&1 | $GREP ': supported targets:.* elf' > /dev/null; then+	  allow_undefined_flag_CXX=unsupported+	  # Joseph Beckenbach <jrb3@best.com> says some releases of gcc+	  # support --undefined.  This deserves some investigation.  FIXME+	  archive_cmds_CXX='$CC -nostart $libobjs $deplibs $compiler_flags $wl-soname $wl$soname -o $lib'+	else+	  ld_shlibs_CXX=no+	fi+	;;++      chorus*)+        case $cc_basename in+          *)+	  # FIXME: insert proper C++ library support+	  ld_shlibs_CXX=no+	  ;;+        esac+        ;;++      cygwin* | mingw* | pw32* | cegcc*)+	case $GXX,$cc_basename in+	,cl* | no,cl* | ,icl* | no,icl*)+	  # Native MSVC or ICC+	  # hardcode_libdir_flag_spec is actually meaningless, as there is+	  # no search path for DLLs.+	  hardcode_libdir_flag_spec_CXX=' '+	  allow_undefined_flag_CXX=unsupported+	  always_export_symbols_CXX=yes+	  file_list_spec_CXX='@'+	  # Tell ltmain to make .lib files, not .a files.+	  libext=lib+	  # Tell ltmain to make .dll files, not .so files.+	  shrext_cmds=.dll+	  # FIXME: Setting linknames here is a bad hack.+	  archive_cmds_CXX='$CC -o $output_objdir/$soname $libobjs $compiler_flags $deplibs -Wl,-DLL,-IMPLIB:"$tool_output_objdir$libname.dll.lib"~linknames='+	  archive_expsym_cmds_CXX='if   test DEF = "`$SED -n     -e '\''s/^[	 ]*//'\''     -e '\''/^\(;.*\)*$/d'\''     -e '\''s/^\(EXPORTS\|LIBRARY\)\([	 ].*\)*$/DEF/p'\''     -e q     $export_symbols`" ; then+              cp "$export_symbols" "$output_objdir/$soname.def";+              echo "$tool_output_objdir$soname.def" > "$output_objdir/$soname.exp";+            else+              $SED -e '\''s/^/-link -EXPORT:/'\'' < $export_symbols > $output_objdir/$soname.exp;+            fi~+            $CC -o $tool_output_objdir$soname $libobjs $compiler_flags $deplibs "@$tool_output_objdir$soname.exp" -Wl,-DLL,-IMPLIB:"$tool_output_objdir$libname.dll.lib"~+            linknames='+	  # The linker will not automatically build a static lib if we build a DLL.+	  # _LT_TAGVAR(old_archive_from_new_cmds, CXX)='true'+	  enable_shared_with_static_runtimes_CXX=yes+	  # Don't use ranlib+	  old_postinstall_cmds_CXX='chmod 644 $oldlib'+	  postlink_cmds_CXX='lt_outputfile="@OUTPUT@"~+            lt_tool_outputfile="@TOOL_OUTPUT@"~+            case $lt_outputfile in+              *.exe|*.EXE) ;;+              *)+                lt_outputfile=$lt_outputfile.exe+                lt_tool_outputfile=$lt_tool_outputfile.exe+                ;;+            esac~+            func_to_tool_file "$lt_outputfile"~+            if test : != "$MANIFEST_TOOL" && test -f "$lt_outputfile.manifest"; then+              $MANIFEST_TOOL -manifest "$lt_tool_outputfile.manifest" -outputresource:"$lt_tool_outputfile" || exit 1;+              $RM "$lt_outputfile.manifest";+            fi'+	  ;;+	*)+	  # g+++	  # _LT_TAGVAR(hardcode_libdir_flag_spec, CXX) is actually meaningless,+	  # as there is no search path for DLLs.+	  hardcode_libdir_flag_spec_CXX='-L$libdir'+	  export_dynamic_flag_spec_CXX='$wl--export-all-symbols'+	  allow_undefined_flag_CXX=unsupported+	  always_export_symbols_CXX=no+	  enable_shared_with_static_runtimes_CXX=yes++	  if $LD --help 2>&1 | $GREP 'auto-import' > /dev/null; then+	    archive_cmds_CXX='$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'+	    # If the export-symbols file already is a .def file, use it as+	    # is; otherwise, prepend EXPORTS...+	    archive_expsym_cmds_CXX='if   test DEF = "`$SED -n     -e '\''s/^[	 ]*//'\''     -e '\''/^\(;.*\)*$/d'\''     -e '\''s/^\(EXPORTS\|LIBRARY\)\([	 ].*\)*$/DEF/p'\''     -e q     $export_symbols`" ; then+              cp $export_symbols $output_objdir/$soname.def;+            else+              echo EXPORTS > $output_objdir/$soname.def;+              cat $export_symbols >> $output_objdir/$soname.def;+            fi~+            $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'+	  else+	    ld_shlibs_CXX=no+	  fi+	  ;;+	esac+	;;+      darwin* | rhapsody*)+++  archive_cmds_need_lc_CXX=no+  hardcode_direct_CXX=no+  hardcode_automatic_CXX=yes+  hardcode_shlibpath_var_CXX=unsupported+  if test yes = "$lt_cv_ld_force_load"; then+    whole_archive_flag_spec_CXX='`for conv in $convenience\"\"; do test  -n \"$conv\" && new_convenience=\"$new_convenience $wl-force_load,$conv\"; done; func_echo_all \"$new_convenience\"`'++  else+    whole_archive_flag_spec_CXX=''+  fi+  link_all_deplibs_CXX=yes+  allow_undefined_flag_CXX=$_lt_dar_allow_undefined+  case $cc_basename in+     ifort*|nagfor*) _lt_dar_can_shared=yes ;;+     *) _lt_dar_can_shared=$GCC ;;+  esac+  if test yes = "$_lt_dar_can_shared"; then+    output_verbose_link_cmd=func_echo_all+    archive_cmds_CXX="\$CC -dynamiclib \$allow_undefined_flag -o \$lib \$libobjs \$deplibs \$compiler_flags -install_name \$rpath/\$soname \$verstring $_lt_dar_single_mod$_lt_dsymutil"+    module_cmds_CXX="\$CC \$allow_undefined_flag -o \$lib -bundle \$libobjs \$deplibs \$compiler_flags$_lt_dsymutil"+    archive_expsym_cmds_CXX="$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"+    module_expsym_cmds_CXX="$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"+       if test yes != "$lt_cv_apple_cc_single_mod"; then+      archive_cmds_CXX="\$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"+      archive_expsym_cmds_CXX="$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"+    fi++  else+  ld_shlibs_CXX=no+  fi++	;;++      os2*)+	hardcode_libdir_flag_spec_CXX='-L$libdir'+	hardcode_minus_L_CXX=yes+	allow_undefined_flag_CXX=unsupported+	shrext_cmds=.dll+	archive_cmds_CXX='$ECHO "LIBRARY ${soname%$shared_ext} INITINSTANCE TERMINSTANCE" > $output_objdir/$libname.def~+	  $ECHO "DESCRIPTION \"$libname\"" >> $output_objdir/$libname.def~+	  $ECHO "DATA MULTIPLE NONSHARED" >> $output_objdir/$libname.def~+	  $ECHO EXPORTS >> $output_objdir/$libname.def~+	  emxexp $libobjs | $SED /"_DLL_InitTerm"/d >> $output_objdir/$libname.def~+	  $CC -Zdll -Zcrtdll -o $output_objdir/$soname $libobjs $deplibs $compiler_flags $output_objdir/$libname.def~+	  emximp -o $lib $output_objdir/$libname.def'+	archive_expsym_cmds_CXX='$ECHO "LIBRARY ${soname%$shared_ext} INITINSTANCE TERMINSTANCE" > $output_objdir/$libname.def~+	  $ECHO "DESCRIPTION \"$libname\"" >> $output_objdir/$libname.def~+	  $ECHO "DATA MULTIPLE NONSHARED" >> $output_objdir/$libname.def~+	  $ECHO EXPORTS >> $output_objdir/$libname.def~+	  prefix_cmds="$SED"~+	  if test EXPORTS = "`$SED 1q $export_symbols`"; then+	    prefix_cmds="$prefix_cmds -e 1d";+	  fi~+	  prefix_cmds="$prefix_cmds -e \"s/^\(.*\)$/_\1/g\""~+	  cat $export_symbols | $prefix_cmds >> $output_objdir/$libname.def~+	  $CC -Zdll -Zcrtdll -o $output_objdir/$soname $libobjs $deplibs $compiler_flags $output_objdir/$libname.def~+	  emximp -o $lib $output_objdir/$libname.def'+	old_archive_From_new_cmds_CXX='emximp -o $output_objdir/${libname}_dll.a $output_objdir/$libname.def'+	enable_shared_with_static_runtimes_CXX=yes+	file_list_spec_CXX='@'+	;;++      dgux*)+        case $cc_basename in+          ec++*)+	    # FIXME: insert proper C++ library support+	    ld_shlibs_CXX=no+	    ;;+          ghcx*)+	    # Green Hills C++ Compiler+	    # FIXME: insert proper C++ library support+	    ld_shlibs_CXX=no+	    ;;+          *)+	    # FIXME: insert proper C++ library support+	    ld_shlibs_CXX=no+	    ;;+        esac+        ;;++      freebsd2.*)+        # C++ shared libraries reported to be fairly broken before+	# switch to ELF+        ld_shlibs_CXX=no+        ;;++      freebsd-elf*)+        archive_cmds_need_lc_CXX=no+        ;;++      freebsd* | dragonfly* | midnightbsd*)+        # FreeBSD 3 and later use GNU C++ and GNU ld with standard ELF+        # conventions+        ld_shlibs_CXX=yes+        ;;++      haiku*)+        archive_cmds_CXX='$CC -shared $libobjs $deplibs $compiler_flags $wl-soname $wl$soname -o $lib'+        link_all_deplibs_CXX=yes+        ;;++      hpux9*)+        hardcode_libdir_flag_spec_CXX='$wl+b $wl$libdir'+        hardcode_libdir_separator_CXX=:+        export_dynamic_flag_spec_CXX='$wl-E'+        hardcode_direct_CXX=yes+        hardcode_minus_L_CXX=yes # Not in the search PATH,+				             # but as the default+				             # location of the library.++        case $cc_basename in+          CC*)+            # FIXME: insert proper C++ library support+            ld_shlibs_CXX=no+            ;;+          aCC*)+            archive_cmds_CXX='$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'+            # Commands to make compiler produce verbose output that lists+            # what "hidden" libraries, object files and flags are used when+            # linking a shared library.+            #+            # There doesn't appear to be a way to prevent this compiler from+            # explicitly linking system object files so we need to strip them+            # from the output so that they don't get included in the library+            # dependencies.+            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"'+            ;;+          *)+            if test yes = "$GXX"; then+              archive_cmds_CXX='$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'+            else+              # FIXME: insert proper C++ library support+              ld_shlibs_CXX=no+            fi+            ;;+        esac+        ;;++      hpux10*|hpux11*)+        if test no = "$with_gnu_ld"; then+	  hardcode_libdir_flag_spec_CXX='$wl+b $wl$libdir'+	  hardcode_libdir_separator_CXX=:++          case $host_cpu in+            hppa*64*|ia64*)+              ;;+            *)+	      export_dynamic_flag_spec_CXX='$wl-E'+              ;;+          esac+        fi+        case $host_cpu in+          hppa*64*|ia64*)+            hardcode_direct_CXX=no+            hardcode_shlibpath_var_CXX=no+            ;;+          *)+            hardcode_direct_CXX=yes+            hardcode_direct_absolute_CXX=yes+            hardcode_minus_L_CXX=yes # Not in the search PATH,+					         # but as the default+					         # location of the library.+            ;;+        esac++        case $cc_basename in+          CC*)+	    # FIXME: insert proper C++ library support+	    ld_shlibs_CXX=no+	    ;;+          aCC*)+	    case $host_cpu in+	      hppa*64*)+	        archive_cmds_CXX='$CC -b $wl+h $wl$soname -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags'+	        ;;+	      ia64*)+	        archive_cmds_CXX='$CC -b $wl+h $wl$soname $wl+nodefaultrpath -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags'+	        ;;+	      *)+	        archive_cmds_CXX='$CC -b $wl+h $wl$soname $wl+b $wl$install_libdir -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags'+	        ;;+	    esac+	    # Commands to make compiler produce verbose output that lists+	    # what "hidden" libraries, object files and flags are used when+	    # linking a shared library.+	    #+	    # There doesn't appear to be a way to prevent this compiler from+	    # explicitly linking system object files so we need to strip them+	    # from the output so that they don't get included in the library+	    # dependencies.+	    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"'+	    ;;+          *)+	    if test yes = "$GXX"; then+	      if test no = "$with_gnu_ld"; then+	        case $host_cpu in+	          hppa*64*)+	            archive_cmds_CXX='$CC -shared -nostdlib -fPIC $wl+h $wl$soname -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags'+	            ;;+	          ia64*)+	            archive_cmds_CXX='$CC -shared -nostdlib $pic_flag $wl+h $wl$soname $wl+nodefaultrpath -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags'+	            ;;+	          *)+	            archive_cmds_CXX='$CC -shared -nostdlib $pic_flag $wl+h $wl$soname $wl+b $wl$install_libdir -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags'+	            ;;+	        esac+	      fi+	    else+	      # FIXME: insert proper C++ library support+	      ld_shlibs_CXX=no+	    fi+	    ;;+        esac+        ;;++      interix[3-9]*)+	hardcode_direct_CXX=no+	hardcode_shlibpath_var_CXX=no+	hardcode_libdir_flag_spec_CXX='$wl-rpath,$libdir'+	export_dynamic_flag_spec_CXX='$wl-E'+	# Hack: On Interix 3.x, we cannot compile PIC because of a broken gcc.+	# Instead, shared libraries are loaded at an image base (0x10000000 by+	# default) and relocated if they conflict, which is a slow very memory+	# consuming and fragmenting process.  To avoid this, we pick a random,+	# 256 KiB-aligned image base between 0x50000000 and 0x6FFC0000 at link+	# time.  Moving up from 0x10000000 also allows more sbrk(2) space.+	archive_cmds_CXX='$CC -shared $pic_flag $libobjs $deplibs $compiler_flags $wl-h,$soname $wl--image-base,`expr ${RANDOM-$$} % 4096 / 2 \* 262144 + 1342177280` -o $lib'+	archive_expsym_cmds_CXX='$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'+	;;+      irix5* | irix6*)+        case $cc_basename in+          CC*)+	    # SGI C+++	    archive_cmds_CXX='$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'++	    # Archives containing C++ object files must be created using+	    # "CC -ar", where "CC" is the IRIX C++ compiler.  This is+	    # necessary to make sure instantiated templates are included+	    # in the archive.+	    old_archive_cmds_CXX='$CC -ar -WR,-u -o $oldlib $oldobjs'+	    ;;+          *)+	    if test yes = "$GXX"; then+	      if test no = "$with_gnu_ld"; then+	        archive_cmds_CXX='$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'+	      else+	        archive_cmds_CXX='$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'+	      fi+	    fi+	    link_all_deplibs_CXX=yes+	    ;;+        esac+        hardcode_libdir_flag_spec_CXX='$wl-rpath $wl$libdir'+        hardcode_libdir_separator_CXX=:+        inherit_rpath_CXX=yes+        ;;++      linux* | k*bsd*-gnu | kopensolaris*-gnu | gnu*)+        case $cc_basename in+          KCC*)+	    # Kuck and Associates, Inc. (KAI) C++ Compiler++	    # KCC will only create a shared library if the output file+	    # ends with ".so" (or ".sl" for HP-UX), so rename the library+	    # to its proper name (with version) after linking.+	    archive_cmds_CXX='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'+	    archive_expsym_cmds_CXX='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'+	    # Commands to make compiler produce verbose output that lists+	    # what "hidden" libraries, object files and flags are used when+	    # linking a shared library.+	    #+	    # There doesn't appear to be a way to prevent this compiler from+	    # explicitly linking system object files so we need to strip them+	    # from the output so that they don't get included in the library+	    # dependencies.+	    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"'++	    hardcode_libdir_flag_spec_CXX='$wl-rpath,$libdir'+	    export_dynamic_flag_spec_CXX='$wl--export-dynamic'++	    # Archives containing C++ object files must be created using+	    # "CC -Bstatic", where "CC" is the KAI C++ compiler.+	    old_archive_cmds_CXX='$CC -Bstatic -o $oldlib $oldobjs'+	    ;;+	  icpc* | ecpc* )+	    # Intel C+++	    with_gnu_ld=yes+	    # version 8.0 and above of icpc choke on multiply defined symbols+	    # if we add $predep_objects and $postdep_objects, however 7.1 and+	    # earlier do not add the objects themselves.+	    case `$CC -V 2>&1` in+	      *"Version 7."*)+	        archive_cmds_CXX='$CC -shared $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags $wl-soname $wl$soname -o $lib'+		archive_expsym_cmds_CXX='$CC -shared $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags $wl-soname $wl$soname $wl-retain-symbols-file $wl$export_symbols -o $lib'+		;;+	      *)  # Version 8.0 or newer+	        tmp_idyn=+	        case $host_cpu in+		  ia64*) tmp_idyn=' -i_dynamic';;+		esac+	        archive_cmds_CXX='$CC -shared'"$tmp_idyn"' $libobjs $deplibs $compiler_flags $wl-soname $wl$soname -o $lib'+		archive_expsym_cmds_CXX='$CC -shared'"$tmp_idyn"' $libobjs $deplibs $compiler_flags $wl-soname $wl$soname $wl-retain-symbols-file $wl$export_symbols -o $lib'+		;;+	    esac+	    archive_cmds_need_lc_CXX=no+	    hardcode_libdir_flag_spec_CXX='$wl-rpath,$libdir'+	    export_dynamic_flag_spec_CXX='$wl--export-dynamic'+	    whole_archive_flag_spec_CXX='$wl--whole-archive$convenience $wl--no-whole-archive'+	    ;;+          pgCC* | pgcpp*)+            # Portland Group C++ compiler+	    case `$CC -V` in+	    *pgCC\ [1-5].* | *pgcpp\ [1-5].*)+	      prelink_cmds_CXX='tpldir=Template.dir~+               rm -rf $tpldir~+               $CC --prelink_objects --instantiation_dir $tpldir $objs $libobjs $compile_deplibs~+               compile_command="$compile_command `find $tpldir -name \*.o | sort | $NL2SP`"'+	      old_archive_cmds_CXX='tpldir=Template.dir~+                rm -rf $tpldir~+                $CC --prelink_objects --instantiation_dir $tpldir $oldobjs$old_deplibs~+                $AR $AR_FLAGS $oldlib$oldobjs$old_deplibs `find $tpldir -name \*.o | sort | $NL2SP`~+                $RANLIB $oldlib'+	      archive_cmds_CXX='tpldir=Template.dir~+                rm -rf $tpldir~+                $CC --prelink_objects --instantiation_dir $tpldir $predep_objects $libobjs $deplibs $convenience $postdep_objects~+                $CC -shared $pic_flag $predep_objects $libobjs $deplibs `find $tpldir -name \*.o | sort | $NL2SP` $postdep_objects $compiler_flags $wl-soname $wl$soname -o $lib'+	      archive_expsym_cmds_CXX='tpldir=Template.dir~+                rm -rf $tpldir~+                $CC --prelink_objects --instantiation_dir $tpldir $predep_objects $libobjs $deplibs $convenience $postdep_objects~+                $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'+	      ;;+	    *) # Version 6 and above use weak symbols+	      archive_cmds_CXX='$CC -shared $pic_flag $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags $wl-soname $wl$soname -o $lib'+	      archive_expsym_cmds_CXX='$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'+	      ;;+	    esac++	    hardcode_libdir_flag_spec_CXX='$wl--rpath $wl$libdir'+	    export_dynamic_flag_spec_CXX='$wl--export-dynamic'+	    whole_archive_flag_spec_CXX='$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'+            ;;+	  cxx*)+	    # Compaq C+++	    archive_cmds_CXX='$CC -shared $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags $wl-soname $wl$soname -o $lib'+	    archive_expsym_cmds_CXX='$CC -shared $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags $wl-soname $wl$soname  -o $lib $wl-retain-symbols-file $wl$export_symbols'++	    runpath_var=LD_RUN_PATH+	    hardcode_libdir_flag_spec_CXX='-rpath $libdir'+	    hardcode_libdir_separator_CXX=:++	    # Commands to make compiler produce verbose output that lists+	    # what "hidden" libraries, object files and flags are used when+	    # linking a shared library.+	    #+	    # There doesn't appear to be a way to prevent this compiler from+	    # explicitly linking system object files so we need to strip them+	    # from the output so that they don't get included in the library+	    # dependencies.+	    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'+	    ;;+	  xl* | mpixl* | bgxl*)+	    # IBM XL 8.0 on PPC, with GNU ld+	    hardcode_libdir_flag_spec_CXX='$wl-rpath $wl$libdir'+	    export_dynamic_flag_spec_CXX='$wl--export-dynamic'+	    archive_cmds_CXX='$CC -qmkshrobj $libobjs $deplibs $compiler_flags $wl-soname $wl$soname -o $lib'+	    if test yes = "$supports_anon_versioning"; then+	      archive_expsym_cmds_CXX='echo "{ global:" > $output_objdir/$libname.ver~+                cat $export_symbols | $SED -e "s/\(.*\)/\1;/" >> $output_objdir/$libname.ver~+                echo "local: *; };" >> $output_objdir/$libname.ver~+                $CC -qmkshrobj $libobjs $deplibs $compiler_flags $wl-soname $wl$soname $wl-version-script $wl$output_objdir/$libname.ver -o $lib'+	    fi+	    ;;+	  *)+	    case `$CC -V 2>&1 | $SED 5q` in+	    *Sun\ C*)+	      # Sun C++ 5.9+	      no_undefined_flag_CXX=' -zdefs'+	      archive_cmds_CXX='$CC -G$allow_undefined_flag -h$soname -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags'+	      archive_expsym_cmds_CXX='$CC -G$allow_undefined_flag -h$soname -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags $wl-retain-symbols-file $wl$export_symbols'+	      hardcode_libdir_flag_spec_CXX='-R$libdir'+	      whole_archive_flag_spec_CXX='$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'+	      compiler_needs_object_CXX=yes++	      # Not sure whether something based on+	      # $CC $CFLAGS -v conftest.$objext -o libconftest$shared_ext 2>&1+	      # would be better.+	      output_verbose_link_cmd='func_echo_all'++	      # Archives containing C++ object files must be created using+	      # "CC -xar", where "CC" is the Sun C++ compiler.  This is+	      # necessary to make sure instantiated templates are included+	      # in the archive.+	      old_archive_cmds_CXX='$CC -xar -o $oldlib $oldobjs'+	      ;;+	    esac+	    ;;+	esac+	;;++      lynxos*)+        # FIXME: insert proper C++ library support+	ld_shlibs_CXX=no+	;;++      m88k*)+        # FIXME: insert proper C++ library support+        ld_shlibs_CXX=no+	;;++      mvs*)+        case $cc_basename in+          cxx*)+	    # FIXME: insert proper C++ library support+	    ld_shlibs_CXX=no+	    ;;+	  *)+	    # FIXME: insert proper C++ library support+	    ld_shlibs_CXX=no+	    ;;+	esac+	;;++      netbsd*)+        if echo __ELF__ | $CC -E - | $GREP __ELF__ >/dev/null; then+	  archive_cmds_CXX='$LD -Bshareable  -o $lib $predep_objects $libobjs $deplibs $postdep_objects $linker_flags'+	  wlarc=+	  hardcode_libdir_flag_spec_CXX='-R$libdir'+	  hardcode_direct_CXX=yes+	  hardcode_shlibpath_var_CXX=no+	fi+	# Workaround some broken pre-1.5 toolchains+	output_verbose_link_cmd='$CC -shared $CFLAGS -v conftest.$objext 2>&1 | $GREP conftest.$objext | $SED -e "s:-lgcc -lc -lgcc::"'+	;;++      *nto* | *qnx*)+        ld_shlibs_CXX=yes+	;;++      openbsd* | bitrig*)+	if test -f /usr/libexec/ld.so; then+	  hardcode_direct_CXX=yes+	  hardcode_shlibpath_var_CXX=no+	  hardcode_direct_absolute_CXX=yes+	  archive_cmds_CXX='$CC -shared $pic_flag $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags -o $lib'+	  hardcode_libdir_flag_spec_CXX='$wl-rpath,$libdir'+	  if test -z "`echo __ELF__ | $CC -E - | grep __ELF__`"; then+	    archive_expsym_cmds_CXX='$CC -shared $pic_flag $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags $wl-retain-symbols-file,$export_symbols -o $lib'+	    export_dynamic_flag_spec_CXX='$wl-E'+	    whole_archive_flag_spec_CXX=$wlarc'--whole-archive$convenience '$wlarc'--no-whole-archive'+	  fi+	  output_verbose_link_cmd=func_echo_all+	else+	  ld_shlibs_CXX=no+	fi+	;;++      osf3* | osf4* | osf5*)+        case $cc_basename in+          KCC*)+	    # Kuck and Associates, Inc. (KAI) C++ Compiler++	    # KCC will only create a shared library if the output file+	    # ends with ".so" (or ".sl" for HP-UX), so rename the library+	    # to its proper name (with version) after linking.+	    archive_cmds_CXX='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'++	    hardcode_libdir_flag_spec_CXX='$wl-rpath,$libdir'+	    hardcode_libdir_separator_CXX=:++	    # Archives containing C++ object files must be created using+	    # the KAI C++ compiler.+	    case $host in+	      osf3*) old_archive_cmds_CXX='$CC -Bstatic -o $oldlib $oldobjs' ;;+	      *) old_archive_cmds_CXX='$CC -o $oldlib $oldobjs' ;;+	    esac+	    ;;+          RCC*)+	    # Rational C++ 2.4.1+	    # FIXME: insert proper C++ library support+	    ld_shlibs_CXX=no+	    ;;+          cxx*)+	    case $host in+	      osf3*)+	        allow_undefined_flag_CXX=' $wl-expect_unresolved $wl\*'+	        archive_cmds_CXX='$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'+	        hardcode_libdir_flag_spec_CXX='$wl-rpath $wl$libdir'+		;;+	      *)+	        allow_undefined_flag_CXX=' -expect_unresolved \*'+	        archive_cmds_CXX='$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'+	        archive_expsym_cmds_CXX='for i in `cat $export_symbols`; do printf "%s %s\\n" -exported_symbol "\$i" >> $lib.exp; done~+                  echo "-hidden">> $lib.exp~+                  $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~+                  $RM $lib.exp'+	        hardcode_libdir_flag_spec_CXX='-rpath $libdir'+		;;+	    esac++	    hardcode_libdir_separator_CXX=:++	    # Commands to make compiler produce verbose output that lists+	    # what "hidden" libraries, object files and flags are used when+	    # linking a shared library.+	    #+	    # There doesn't appear to be a way to prevent this compiler from+	    # explicitly linking system object files so we need to strip them+	    # from the output so that they don't get included in the library+	    # dependencies.+	    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"'+	    ;;+	  *)+	    if test yes,no = "$GXX,$with_gnu_ld"; then+	      allow_undefined_flag_CXX=' $wl-expect_unresolved $wl\*'+	      case $host in+	        osf3*)+	          archive_cmds_CXX='$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'+		  ;;+	        *)+	          archive_cmds_CXX='$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'+		  ;;+	      esac++	      hardcode_libdir_flag_spec_CXX='$wl-rpath $wl$libdir'+	      hardcode_libdir_separator_CXX=:++	      # Commands to make compiler produce verbose output that lists+	      # what "hidden" libraries, object files and flags are used when+	      # linking a shared library.+	      output_verbose_link_cmd='$CC -shared $CFLAGS -v conftest.$objext 2>&1 | $GREP -v "^Configured with:" | $GREP " \-L"'++	    else+	      # FIXME: insert proper C++ library support+	      ld_shlibs_CXX=no+	    fi+	    ;;+        esac+        ;;++      psos*)+        # FIXME: insert proper C++ library support+        ld_shlibs_CXX=no+        ;;++      sunos4*)+        case $cc_basename in+          CC*)+	    # Sun C++ 4.x+	    # FIXME: insert proper C++ library support+	    ld_shlibs_CXX=no+	    ;;+          lcc*)+	    # Lucid+	    # FIXME: insert proper C++ library support+	    ld_shlibs_CXX=no+	    ;;+          *)+	    # FIXME: insert proper C++ library support+	    ld_shlibs_CXX=no+	    ;;+        esac+        ;;++      solaris*)+        case $cc_basename in+          CC* | sunCC*)+	    # Sun C++ 4.2, 5.x and Centerline C+++            archive_cmds_need_lc_CXX=yes+	    no_undefined_flag_CXX=' -zdefs'+	    archive_cmds_CXX='$CC -G$allow_undefined_flag -h$soname -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags'+	    archive_expsym_cmds_CXX='echo "{ global:" > $lib.exp~cat $export_symbols | $SED -e "s/\(.*\)/\1;/" >> $lib.exp~echo "local: *; };" >> $lib.exp~+              $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'++	    hardcode_libdir_flag_spec_CXX='-R$libdir'+	    hardcode_shlibpath_var_CXX=no+	    case $host_os in+	      solaris2.[0-5] | solaris2.[0-5].*) ;;+	      *)+		# The compiler driver will combine and reorder linker options,+		# but understands '-z linker_flag'.+	        # Supported since Solaris 2.6 (maybe 2.5.1?)+		whole_archive_flag_spec_CXX='-z allextract$convenience -z defaultextract'+	        ;;+	    esac+	    link_all_deplibs_CXX=yes++	    output_verbose_link_cmd='func_echo_all'++	    # Archives containing C++ object files must be created using+	    # "CC -xar", where "CC" is the Sun C++ compiler.  This is+	    # necessary to make sure instantiated templates are included+	    # in the archive.+	    old_archive_cmds_CXX='$CC -xar -o $oldlib $oldobjs'+	    ;;+          gcx*)+	    # Green Hills C++ Compiler+	    archive_cmds_CXX='$CC -shared $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags $wl-h $wl$soname -o $lib'++	    # The C++ compiler must be used to create the archive.+	    old_archive_cmds_CXX='$CC $LDFLAGS -archive -o $oldlib $oldobjs'+	    ;;+          *)+	    # GNU C++ compiler with Solaris linker+	    if test yes,no = "$GXX,$with_gnu_ld"; then+	      no_undefined_flag_CXX=' $wl-z ${wl}defs'+	      if $CC --version | $GREP -v '^2\.7' > /dev/null; then+	        archive_cmds_CXX='$CC -shared $pic_flag -nostdlib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags $wl-h $wl$soname -o $lib'+	        archive_expsym_cmds_CXX='echo "{ global:" > $lib.exp~cat $export_symbols | $SED -e "s/\(.*\)/\1;/" >> $lib.exp~echo "local: *; };" >> $lib.exp~+                  $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'++	        # Commands to make compiler produce verbose output that lists+	        # what "hidden" libraries, object files and flags are used when+	        # linking a shared library.+	        output_verbose_link_cmd='$CC -shared $CFLAGS -v conftest.$objext 2>&1 | $GREP -v "^Configured with:" | $GREP " \-L"'+	      else+	        # g++ 2.7 appears to require '-G' NOT '-shared' on this+	        # platform.+	        archive_cmds_CXX='$CC -G -nostdlib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags $wl-h $wl$soname -o $lib'+	        archive_expsym_cmds_CXX='echo "{ global:" > $lib.exp~cat $export_symbols | $SED -e "s/\(.*\)/\1;/" >> $lib.exp~echo "local: *; };" >> $lib.exp~+                  $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'++	        # Commands to make compiler produce verbose output that lists+	        # what "hidden" libraries, object files and flags are used when+	        # linking a shared library.+	        output_verbose_link_cmd='$CC -G $CFLAGS -v conftest.$objext 2>&1 | $GREP -v "^Configured with:" | $GREP " \-L"'+	      fi++	      hardcode_libdir_flag_spec_CXX='$wl-R $wl$libdir'+	      case $host_os in+		solaris2.[0-5] | solaris2.[0-5].*) ;;+		*)+		  whole_archive_flag_spec_CXX='$wl-z ${wl}allextract$convenience $wl-z ${wl}defaultextract'+		  ;;+	      esac+	    fi+	    ;;+        esac+        ;;++    sysv4*uw2* | sysv5OpenUNIX* | sysv5UnixWare7.[01].[10]* | unixware7* | sco3.2v5.0.[024]*)+      no_undefined_flag_CXX='$wl-z,text'+      archive_cmds_need_lc_CXX=no+      hardcode_shlibpath_var_CXX=no+      runpath_var='LD_RUN_PATH'++      case $cc_basename in+        CC*)+	  archive_cmds_CXX='$CC -G $wl-h,$soname -o $lib $libobjs $deplibs $compiler_flags'+	  archive_expsym_cmds_CXX='$CC -G $wl-Bexport:$export_symbols $wl-h,$soname -o $lib $libobjs $deplibs $compiler_flags'+	  ;;+	*)+	  archive_cmds_CXX='$CC -shared $wl-h,$soname -o $lib $libobjs $deplibs $compiler_flags'+	  archive_expsym_cmds_CXX='$CC -shared $wl-Bexport:$export_symbols $wl-h,$soname -o $lib $libobjs $deplibs $compiler_flags'+	  ;;+      esac+      ;;++      sysv5* | sco3.2v5* | sco5v6*)+	# Note: We CANNOT use -z defs as we might desire, because we do not+	# link with -lc, and that would cause any symbols used from libc to+	# always be unresolved, which means just about no library would+	# ever link correctly.  If we're not using GNU ld we use -z text+	# though, which does catch some bad symbols but isn't as heavy-handed+	# as -z defs.+	no_undefined_flag_CXX='$wl-z,text'+	allow_undefined_flag_CXX='$wl-z,nodefs'+	archive_cmds_need_lc_CXX=no+	hardcode_shlibpath_var_CXX=no+	hardcode_libdir_flag_spec_CXX='$wl-R,$libdir'+	hardcode_libdir_separator_CXX=':'+	link_all_deplibs_CXX=yes+	export_dynamic_flag_spec_CXX='$wl-Bexport'+	runpath_var='LD_RUN_PATH'++	case $cc_basename in+          CC*)+	    archive_cmds_CXX='$CC -G $wl-h,$soname -o $lib $libobjs $deplibs $compiler_flags'+	    archive_expsym_cmds_CXX='$CC -G $wl-Bexport:$export_symbols $wl-h,$soname -o $lib $libobjs $deplibs $compiler_flags'+	    old_archive_cmds_CXX='$CC -Tprelink_objects $oldobjs~+              '"$old_archive_cmds_CXX"+	    reload_cmds_CXX='$CC -Tprelink_objects $reload_objs~+              '"$reload_cmds_CXX"+	    ;;+	  *)+	    archive_cmds_CXX='$CC -shared $wl-h,$soname -o $lib $libobjs $deplibs $compiler_flags'+	    archive_expsym_cmds_CXX='$CC -shared $wl-Bexport:$export_symbols $wl-h,$soname -o $lib $libobjs $deplibs $compiler_flags'+	    ;;+	esac+      ;;++      tandem*)+        case $cc_basename in+          NCC*)+	    # NonStop-UX NCC 3.20+	    # FIXME: insert proper C++ library support+	    ld_shlibs_CXX=no+	    ;;+          *)+	    # FIXME: insert proper C++ library support+	    ld_shlibs_CXX=no+	    ;;+        esac+        ;;++      vxworks*)+        # FIXME: insert proper C++ library support+        ld_shlibs_CXX=no+        ;;++      *)+        # FIXME: insert proper C++ library support+        ld_shlibs_CXX=no+        ;;+    esac++    { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ld_shlibs_CXX" >&5+$as_echo "$ld_shlibs_CXX" >&6; }+    test no = "$ld_shlibs_CXX" && can_build_shared=no++    GCC_CXX=$GXX+    LD_CXX=$LD++    ## CAVEAT EMPTOR:+    ## There is no encapsulation within the following macros, do not change+    ## the running order or otherwise move them around unless you know exactly+    ## what you are doing...+    # Dependencies to place before and after the object being linked:+predep_objects_CXX=+postdep_objects_CXX=+predeps_CXX=+postdeps_CXX=+compiler_lib_search_path_CXX=++cat > conftest.$ac_ext <<_LT_EOF+class Foo+{+public:+  Foo (void) { a = 0; }+private:+  int a;+};+_LT_EOF+++_lt_libdeps_save_CFLAGS=$CFLAGS+case "$CC $CFLAGS " in #(+*\ -flto*\ *) CFLAGS="$CFLAGS -fno-lto" ;;+*\ -fwhopr*\ *) CFLAGS="$CFLAGS -fno-whopr" ;;+*\ -fuse-linker-plugin*\ *) CFLAGS="$CFLAGS -fno-use-linker-plugin" ;;+esac++if { { eval echo "\"\$as_me\":${as_lineno-$LINENO}: \"$ac_compile\""; } >&5+  (eval $ac_compile) 2>&5+  ac_status=$?+  $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5+  test $ac_status = 0; }; then+  # Parse the compiler output and extract the necessary+  # objects, libraries and library flags.++  # Sentinel used to keep track of whether or not we are before+  # the conftest object file.+  pre_test_object_deps_done=no++  for p in `eval "$output_verbose_link_cmd"`; do+    case $prev$p in++    -L* | -R* | -l*)+       # Some compilers place space between "-{L,R}" and the path.+       # Remove the space.+       if test x-L = "$p" ||+          test x-R = "$p"; then+	 prev=$p+	 continue+       fi++       # Expand the sysroot to ease extracting the directories later.+       if test -z "$prev"; then+         case $p in+         -L*) func_stripname_cnf '-L' '' "$p"; prev=-L; p=$func_stripname_result ;;+         -R*) func_stripname_cnf '-R' '' "$p"; prev=-R; p=$func_stripname_result ;;+         -l*) func_stripname_cnf '-l' '' "$p"; prev=-l; p=$func_stripname_result ;;+         esac+       fi+       case $p in+       =*) func_stripname_cnf '=' '' "$p"; p=$lt_sysroot$func_stripname_result ;;+       esac+       if test no = "$pre_test_object_deps_done"; then+	 case $prev in+	 -L | -R)+	   # Internal compiler library paths should come after those+	   # provided the user.  The postdeps already come after the+	   # user supplied libs so there is no need to process them.+	   if test -z "$compiler_lib_search_path_CXX"; then+	     compiler_lib_search_path_CXX=$prev$p+	   else+	     compiler_lib_search_path_CXX="${compiler_lib_search_path_CXX} $prev$p"+	   fi+	   ;;+	 # The "-l" case would never come before the object being+	 # linked, so don't bother handling this case.+	 esac+       else+	 if test -z "$postdeps_CXX"; then+	   postdeps_CXX=$prev$p+	 else+	   postdeps_CXX="${postdeps_CXX} $prev$p"+	 fi+       fi+       prev=+       ;;++    *.lto.$objext) ;; # Ignore GCC LTO objects+    *.$objext)+       # This assumes that the test object file only shows up+       # once in the compiler output.+       if test "$p" = "conftest.$objext"; then+	 pre_test_object_deps_done=yes+	 continue+       fi++       if test no = "$pre_test_object_deps_done"; then+	 if test -z "$predep_objects_CXX"; then+	   predep_objects_CXX=$p+	 else+	   predep_objects_CXX="$predep_objects_CXX $p"+	 fi+       else+	 if test -z "$postdep_objects_CXX"; then+	   postdep_objects_CXX=$p+	 else+	   postdep_objects_CXX="$postdep_objects_CXX $p"+	 fi+       fi+       ;;++    *) ;; # Ignore the rest.++    esac+  done++  # Clean up.+  rm -f a.out a.exe+else+  echo "libtool.m4: error: problem compiling CXX test program"+fi++$RM -f confest.$objext+CFLAGS=$_lt_libdeps_save_CFLAGS++# PORTME: override above test on systems where it is broken+case $host_os in+interix[3-9]*)+  # Interix 3.5 installs completely hosed .la files for C++, so rather than+  # hack all around it, let's just trust "g++" to DTRT.+  predep_objects_CXX=+  postdep_objects_CXX=+  postdeps_CXX=+  ;;+esac+++case " $postdeps_CXX " in+*" -lc "*) archive_cmds_need_lc_CXX=no ;;+esac+ compiler_lib_search_dirs_CXX=+if test -n "${compiler_lib_search_path_CXX}"; then+ compiler_lib_search_dirs_CXX=`echo " ${compiler_lib_search_path_CXX}" | $SED -e 's! -L! !g' -e 's!^ !!'`+fi++++++++++++++++++++++++++++++++    lt_prog_compiler_wl_CXX=+lt_prog_compiler_pic_CXX=+lt_prog_compiler_static_CXX=+++  # C++ specific cases for pic, static, wl, etc.+  if test yes = "$GXX"; then+    lt_prog_compiler_wl_CXX='-Wl,'+    lt_prog_compiler_static_CXX='-static'++    case $host_os in+    aix*)+      # All AIX code is PIC.+      if test ia64 = "$host_cpu"; then+	# AIX 5 now supports IA64 processor+	lt_prog_compiler_static_CXX='-Bstatic'+      fi+      lt_prog_compiler_pic_CXX='-fPIC'+      ;;++    amigaos*)+      case $host_cpu in+      powerpc)+            # see comment about AmigaOS4 .so support+            lt_prog_compiler_pic_CXX='-fPIC'+        ;;+      m68k)+            # FIXME: we need at least 68020 code to build shared libraries, but+            # adding the '-m68020' flag to GCC prevents building anything better,+            # like '-m68040'.+            lt_prog_compiler_pic_CXX='-m68020 -resident32 -malways-restore-a4'+        ;;+      esac+      ;;++    beos* | irix5* | irix6* | nonstopux* | osf3* | osf4* | osf5*)+      # PIC is the default for these OSes.+      ;;+    mingw* | cygwin* | os2* | pw32* | cegcc*)+      # This hack is so that the source file can tell whether it is being+      # built for inclusion in a dll (and should export symbols for example).+      # Although the cygwin gcc ignores -fPIC, still need this for old-style+      # (--disable-auto-import) libraries+      lt_prog_compiler_pic_CXX='-DDLL_EXPORT'+      case $host_os in+      os2*)+	lt_prog_compiler_static_CXX='$wl-static'+	;;+      esac+      ;;+    darwin* | rhapsody*)+      # PIC is the default on this platform+      # Common symbols not allowed in MH_DYLIB files+      lt_prog_compiler_pic_CXX='-fno-common'+      ;;+    *djgpp*)+      # DJGPP does not support shared libraries at all+      lt_prog_compiler_pic_CXX=+      ;;+    haiku*)+      # PIC is the default for Haiku.+      # The "-static" flag exists, but is broken.+      lt_prog_compiler_static_CXX=+      ;;+    interix[3-9]*)+      # Interix 3.x gcc -fpic/-fPIC options generate broken code.+      # Instead, we relocate shared libraries at runtime.+      ;;+    sysv4*MP*)+      if test -d /usr/nec; then+	lt_prog_compiler_pic_CXX=-Kconform_pic+      fi+      ;;+    hpux*)+      # PIC is the default for 64-bit PA HP-UX, but not for 32-bit+      # PA HP-UX.  On IA64 HP-UX, PIC is the default but the pic flag+      # sets the default TLS model and affects inlining.+      case $host_cpu in+      hppa*64*)+	;;+      *)+	lt_prog_compiler_pic_CXX='-fPIC'+	;;+      esac+      ;;+    *qnx* | *nto*)+      # QNX uses GNU C++, but need to define -shared option too, otherwise+      # it will coredump.+      lt_prog_compiler_pic_CXX='-fPIC -shared'+      ;;+    *)+      lt_prog_compiler_pic_CXX='-fPIC'+      ;;+    esac+  else+    case $host_os in+      aix[4-9]*)+	# All AIX code is PIC.+	if test ia64 = "$host_cpu"; then+	  # AIX 5 now supports IA64 processor+	  lt_prog_compiler_static_CXX='-Bstatic'+	else+	  lt_prog_compiler_static_CXX='-bnso -bI:/lib/syscalls.exp'+	fi+	;;+      chorus*)+	case $cc_basename in+	cxch68*)+	  # Green Hills C++ Compiler+	  # _LT_TAGVAR(lt_prog_compiler_static, CXX)="--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"+	  ;;+	esac+	;;+      mingw* | cygwin* | os2* | pw32* | cegcc*)+	# This hack is so that the source file can tell whether it is being+	# built for inclusion in a dll (and should export symbols for example).+	lt_prog_compiler_pic_CXX='-DDLL_EXPORT'+	;;+      dgux*)+	case $cc_basename in+	  ec++*)+	    lt_prog_compiler_pic_CXX='-KPIC'+	    ;;+	  ghcx*)+	    # Green Hills C++ Compiler+	    lt_prog_compiler_pic_CXX='-pic'+	    ;;+	  *)+	    ;;+	esac+	;;+      freebsd* | dragonfly* | midnightbsd*)+	# FreeBSD uses GNU C+++	;;+      hpux9* | hpux10* | hpux11*)+	case $cc_basename in+	  CC*)+	    lt_prog_compiler_wl_CXX='-Wl,'+	    lt_prog_compiler_static_CXX='$wl-a ${wl}archive'+	    if test ia64 != "$host_cpu"; then+	      lt_prog_compiler_pic_CXX='+Z'+	    fi+	    ;;+	  aCC*)+	    lt_prog_compiler_wl_CXX='-Wl,'+	    lt_prog_compiler_static_CXX='$wl-a ${wl}archive'+	    case $host_cpu in+	    hppa*64*|ia64*)+	      # +Z the default+	      ;;+	    *)+	      lt_prog_compiler_pic_CXX='+Z'+	      ;;+	    esac+	    ;;+	  *)+	    ;;+	esac+	;;+      interix*)+	# This is c89, which is MS Visual C++ (no shared libs)+	# Anyone wants to do a port?+	;;+      irix5* | irix6* | nonstopux*)+	case $cc_basename in+	  CC*)+	    lt_prog_compiler_wl_CXX='-Wl,'+	    lt_prog_compiler_static_CXX='-non_shared'+	    # CC pic flag -KPIC is the default.+	    ;;+	  *)+	    ;;+	esac+	;;+      linux* | k*bsd*-gnu | kopensolaris*-gnu | gnu*)+	case $cc_basename in+	  KCC*)+	    # KAI C++ Compiler+	    lt_prog_compiler_wl_CXX='--backend -Wl,'+	    lt_prog_compiler_pic_CXX='-fPIC'+	    ;;+	  ecpc* )+	    # old Intel C++ for x86_64, which still supported -KPIC.+	    lt_prog_compiler_wl_CXX='-Wl,'+	    lt_prog_compiler_pic_CXX='-KPIC'+	    lt_prog_compiler_static_CXX='-static'+	    ;;+	  icpc* )+	    # Intel C++, used to be incompatible with GCC.+	    # ICC 10 doesn't accept -KPIC any more.+	    lt_prog_compiler_wl_CXX='-Wl,'+	    lt_prog_compiler_pic_CXX='-fPIC'+	    lt_prog_compiler_static_CXX='-static'+	    ;;+	  pgCC* | pgcpp*)+	    # Portland Group C++ compiler+	    lt_prog_compiler_wl_CXX='-Wl,'+	    lt_prog_compiler_pic_CXX='-fpic'+	    lt_prog_compiler_static_CXX='-Bstatic'+	    ;;+	  cxx*)+	    # Compaq C+++	    # Make sure the PIC flag is empty.  It appears that all Alpha+	    # Linux and Compaq Tru64 Unix objects are PIC.+	    lt_prog_compiler_pic_CXX=+	    lt_prog_compiler_static_CXX='-non_shared'+	    ;;+	  xlc* | xlC* | bgxl[cC]* | mpixl[cC]*)+	    # IBM XL 8.0, 9.0 on PPC and BlueGene+	    lt_prog_compiler_wl_CXX='-Wl,'+	    lt_prog_compiler_pic_CXX='-qpic'+	    lt_prog_compiler_static_CXX='-qstaticlink'+	    ;;+	  *)+	    case `$CC -V 2>&1 | $SED 5q` in+	    *Sun\ C*)+	      # Sun C++ 5.9+	      lt_prog_compiler_pic_CXX='-KPIC'+	      lt_prog_compiler_static_CXX='-Bstatic'+	      lt_prog_compiler_wl_CXX='-Qoption ld '+	      ;;+	    esac+	    ;;+	esac+	;;+      lynxos*)+	;;+      m88k*)+	;;+      mvs*)+	case $cc_basename in+	  cxx*)+	    lt_prog_compiler_pic_CXX='-W c,exportall'+	    ;;+	  *)+	    ;;+	esac+	;;+      netbsd* | netbsdelf*-gnu)+	;;+      *qnx* | *nto*)+        # QNX uses GNU C++, but need to define -shared option too, otherwise+        # it will coredump.+        lt_prog_compiler_pic_CXX='-fPIC -shared'+        ;;+      osf3* | osf4* | osf5*)+	case $cc_basename in+	  KCC*)+	    lt_prog_compiler_wl_CXX='--backend -Wl,'+	    ;;+	  RCC*)+	    # Rational C++ 2.4.1+	    lt_prog_compiler_pic_CXX='-pic'+	    ;;+	  cxx*)+	    # Digital/Compaq C+++	    lt_prog_compiler_wl_CXX='-Wl,'+	    # Make sure the PIC flag is empty.  It appears that all Alpha+	    # Linux and Compaq Tru64 Unix objects are PIC.+	    lt_prog_compiler_pic_CXX=+	    lt_prog_compiler_static_CXX='-non_shared'+	    ;;+	  *)+	    ;;+	esac+	;;+      psos*)+	;;+      solaris*)+	case $cc_basename in+	  CC* | sunCC*)+	    # Sun C++ 4.2, 5.x and Centerline C+++	    lt_prog_compiler_pic_CXX='-KPIC'+	    lt_prog_compiler_static_CXX='-Bstatic'+	    lt_prog_compiler_wl_CXX='-Qoption ld '+	    ;;+	  gcx*)+	    # Green Hills C++ Compiler+	    lt_prog_compiler_pic_CXX='-PIC'+	    ;;+	  *)+	    ;;+	esac+	;;+      sunos4*)+	case $cc_basename in+	  CC*)+	    # Sun C++ 4.x+	    lt_prog_compiler_pic_CXX='-pic'+	    lt_prog_compiler_static_CXX='-Bstatic'+	    ;;+	  lcc*)+	    # Lucid+	    lt_prog_compiler_pic_CXX='-pic'+	    ;;+	  *)+	    ;;+	esac+	;;+      sysv5* | unixware* | sco3.2v5* | sco5v6* | OpenUNIX*)+	case $cc_basename in+	  CC*)+	    lt_prog_compiler_wl_CXX='-Wl,'+	    lt_prog_compiler_pic_CXX='-KPIC'+	    lt_prog_compiler_static_CXX='-Bstatic'+	    ;;+	esac+	;;+      tandem*)+	case $cc_basename in+	  NCC*)+	    # NonStop-UX NCC 3.20+	    lt_prog_compiler_pic_CXX='-KPIC'+	    ;;+	  *)+	    ;;+	esac+	;;+      vxworks*)+	;;+      *)+	lt_prog_compiler_can_build_shared_CXX=no+	;;+    esac+  fi++case $host_os in+  # For platforms that do not support PIC, -DPIC is meaningless:+  *djgpp*)+    lt_prog_compiler_pic_CXX=+    ;;+  *)+    lt_prog_compiler_pic_CXX="$lt_prog_compiler_pic_CXX -DPIC"+    ;;+esac++{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $compiler option to produce PIC" >&5+$as_echo_n "checking for $compiler option to produce PIC... " >&6; }+if ${lt_cv_prog_compiler_pic_CXX+:} false; then :+  $as_echo_n "(cached) " >&6+else+  lt_cv_prog_compiler_pic_CXX=$lt_prog_compiler_pic_CXX+fi+{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_cv_prog_compiler_pic_CXX" >&5+$as_echo "$lt_cv_prog_compiler_pic_CXX" >&6; }+lt_prog_compiler_pic_CXX=$lt_cv_prog_compiler_pic_CXX++#+# Check to make sure the PIC flag actually works.+#+if test -n "$lt_prog_compiler_pic_CXX"; then+  { $as_echo "$as_me:${as_lineno-$LINENO}: checking if $compiler PIC flag $lt_prog_compiler_pic_CXX works" >&5+$as_echo_n "checking if $compiler PIC flag $lt_prog_compiler_pic_CXX works... " >&6; }+if ${lt_cv_prog_compiler_pic_works_CXX+:} false; then :+  $as_echo_n "(cached) " >&6+else+  lt_cv_prog_compiler_pic_works_CXX=no+   ac_outfile=conftest.$ac_objext+   echo "$lt_simple_compile_test_code" > conftest.$ac_ext+   lt_compiler_flag="$lt_prog_compiler_pic_CXX -DPIC"  ## exclude from sc_useless_quotes_in_assignment+   # Insert the option either (1) after the last *FLAGS variable, or+   # (2) before a word containing "conftest.", or (3) at the end.+   # Note that $ac_compile itself does not contain backslashes and begins+   # with a dollar sign (not a hyphen), so the echo should work correctly.+   # The option is referenced via a variable to avoid confusing sed.+   lt_compile=`echo "$ac_compile" | $SED \+   -e 's:.*FLAGS}\{0,1\} :&$lt_compiler_flag :; t' \+   -e 's: [^ ]*conftest\.: $lt_compiler_flag&:; t' \+   -e 's:$: $lt_compiler_flag:'`+   (eval echo "\"\$as_me:$LINENO: $lt_compile\"" >&5)+   (eval "$lt_compile" 2>conftest.err)+   ac_status=$?+   cat conftest.err >&5+   echo "$as_me:$LINENO: \$? = $ac_status" >&5+   if (exit $ac_status) && test -s "$ac_outfile"; then+     # The compiler can only warn and ignore the option if not recognized+     # So say no if there are warnings other than the usual output.+     $ECHO "$_lt_compiler_boilerplate" | $SED '/^$/d' >conftest.exp+     $SED '/^$/d; /^ *+/d' conftest.err >conftest.er2+     if test ! -s conftest.er2 || diff conftest.exp conftest.er2 >/dev/null; then+       lt_cv_prog_compiler_pic_works_CXX=yes+     fi+   fi+   $RM conftest*++fi+{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_cv_prog_compiler_pic_works_CXX" >&5+$as_echo "$lt_cv_prog_compiler_pic_works_CXX" >&6; }++if test yes = "$lt_cv_prog_compiler_pic_works_CXX"; then+    case $lt_prog_compiler_pic_CXX in+     "" | " "*) ;;+     *) lt_prog_compiler_pic_CXX=" $lt_prog_compiler_pic_CXX" ;;+     esac+else+    lt_prog_compiler_pic_CXX=+     lt_prog_compiler_can_build_shared_CXX=no+fi++fi++++++#+# Check to make sure the static flag actually works.+#+wl=$lt_prog_compiler_wl_CXX eval lt_tmp_static_flag=\"$lt_prog_compiler_static_CXX\"+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking if $compiler static flag $lt_tmp_static_flag works" >&5+$as_echo_n "checking if $compiler static flag $lt_tmp_static_flag works... " >&6; }+if ${lt_cv_prog_compiler_static_works_CXX+:} false; then :+  $as_echo_n "(cached) " >&6+else+  lt_cv_prog_compiler_static_works_CXX=no+   save_LDFLAGS=$LDFLAGS+   LDFLAGS="$LDFLAGS $lt_tmp_static_flag"+   echo "$lt_simple_link_test_code" > conftest.$ac_ext+   if (eval $ac_link 2>conftest.err) && test -s conftest$ac_exeext; then+     # The linker can only warn and ignore the option if not recognized+     # So say no if there are warnings+     if test -s conftest.err; then+       # Append any errors to the config.log.+       cat conftest.err 1>&5+       $ECHO "$_lt_linker_boilerplate" | $SED '/^$/d' > conftest.exp+       $SED '/^$/d; /^ *+/d' conftest.err >conftest.er2+       if diff conftest.exp conftest.er2 >/dev/null; then+         lt_cv_prog_compiler_static_works_CXX=yes+       fi+     else+       lt_cv_prog_compiler_static_works_CXX=yes+     fi+   fi+   $RM -r conftest*+   LDFLAGS=$save_LDFLAGS++fi+{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_cv_prog_compiler_static_works_CXX" >&5+$as_echo "$lt_cv_prog_compiler_static_works_CXX" >&6; }++if test yes = "$lt_cv_prog_compiler_static_works_CXX"; then+    :+else+    lt_prog_compiler_static_CXX=+fi+++++    { $as_echo "$as_me:${as_lineno-$LINENO}: checking if $compiler supports -c -o file.$ac_objext" >&5+$as_echo_n "checking if $compiler supports -c -o file.$ac_objext... " >&6; }+if ${lt_cv_prog_compiler_c_o_CXX+:} false; then :+  $as_echo_n "(cached) " >&6+else+  lt_cv_prog_compiler_c_o_CXX=no+   $RM -r conftest 2>/dev/null+   mkdir conftest+   cd conftest+   mkdir out+   echo "$lt_simple_compile_test_code" > conftest.$ac_ext++   lt_compiler_flag="-o out/conftest2.$ac_objext"+   # Insert the option either (1) after the last *FLAGS variable, or+   # (2) before a word containing "conftest.", or (3) at the end.+   # Note that $ac_compile itself does not contain backslashes and begins+   # with a dollar sign (not a hyphen), so the echo should work correctly.+   lt_compile=`echo "$ac_compile" | $SED \+   -e 's:.*FLAGS}\{0,1\} :&$lt_compiler_flag :; t' \+   -e 's: [^ ]*conftest\.: $lt_compiler_flag&:; t' \+   -e 's:$: $lt_compiler_flag:'`+   (eval echo "\"\$as_me:$LINENO: $lt_compile\"" >&5)+   (eval "$lt_compile" 2>out/conftest.err)+   ac_status=$?+   cat out/conftest.err >&5+   echo "$as_me:$LINENO: \$? = $ac_status" >&5+   if (exit $ac_status) && test -s out/conftest2.$ac_objext+   then+     # The compiler can only warn and ignore the option if not recognized+     # So say no if there are warnings+     $ECHO "$_lt_compiler_boilerplate" | $SED '/^$/d' > out/conftest.exp+     $SED '/^$/d; /^ *+/d' out/conftest.err >out/conftest.er2+     if test ! -s out/conftest.er2 || diff out/conftest.exp out/conftest.er2 >/dev/null; then+       lt_cv_prog_compiler_c_o_CXX=yes+     fi+   fi+   chmod u+w . 2>&5+   $RM conftest*+   # SGI C++ compiler will create directory out/ii_files/ for+   # template instantiation+   test -d out/ii_files && $RM out/ii_files/* && rmdir out/ii_files+   $RM out/* && rmdir out+   cd ..+   $RM -r conftest+   $RM conftest*++fi+{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_cv_prog_compiler_c_o_CXX" >&5+$as_echo "$lt_cv_prog_compiler_c_o_CXX" >&6; }++++    { $as_echo "$as_me:${as_lineno-$LINENO}: checking if $compiler supports -c -o file.$ac_objext" >&5+$as_echo_n "checking if $compiler supports -c -o file.$ac_objext... " >&6; }+if ${lt_cv_prog_compiler_c_o_CXX+:} false; then :+  $as_echo_n "(cached) " >&6+else+  lt_cv_prog_compiler_c_o_CXX=no+   $RM -r conftest 2>/dev/null+   mkdir conftest+   cd conftest+   mkdir out+   echo "$lt_simple_compile_test_code" > conftest.$ac_ext++   lt_compiler_flag="-o out/conftest2.$ac_objext"+   # Insert the option either (1) after the last *FLAGS variable, or+   # (2) before a word containing "conftest.", or (3) at the end.+   # Note that $ac_compile itself does not contain backslashes and begins+   # with a dollar sign (not a hyphen), so the echo should work correctly.+   lt_compile=`echo "$ac_compile" | $SED \+   -e 's:.*FLAGS}\{0,1\} :&$lt_compiler_flag :; t' \+   -e 's: [^ ]*conftest\.: $lt_compiler_flag&:; t' \+   -e 's:$: $lt_compiler_flag:'`+   (eval echo "\"\$as_me:$LINENO: $lt_compile\"" >&5)+   (eval "$lt_compile" 2>out/conftest.err)+   ac_status=$?+   cat out/conftest.err >&5+   echo "$as_me:$LINENO: \$? = $ac_status" >&5+   if (exit $ac_status) && test -s out/conftest2.$ac_objext+   then+     # The compiler can only warn and ignore the option if not recognized+     # So say no if there are warnings+     $ECHO "$_lt_compiler_boilerplate" | $SED '/^$/d' > out/conftest.exp+     $SED '/^$/d; /^ *+/d' out/conftest.err >out/conftest.er2+     if test ! -s out/conftest.er2 || diff out/conftest.exp out/conftest.er2 >/dev/null; then+       lt_cv_prog_compiler_c_o_CXX=yes+     fi+   fi+   chmod u+w . 2>&5+   $RM conftest*+   # SGI C++ compiler will create directory out/ii_files/ for+   # template instantiation+   test -d out/ii_files && $RM out/ii_files/* && rmdir out/ii_files+   $RM out/* && rmdir out+   cd ..+   $RM -r conftest+   $RM conftest*++fi+{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_cv_prog_compiler_c_o_CXX" >&5+$as_echo "$lt_cv_prog_compiler_c_o_CXX" >&6; }+++++hard_links=nottested+if test no = "$lt_cv_prog_compiler_c_o_CXX" && test no != "$need_locks"; then+  # do not overwrite the value of need_locks provided by the user+  { $as_echo "$as_me:${as_lineno-$LINENO}: checking if we can lock with hard links" >&5+$as_echo_n "checking if we can lock with hard links... " >&6; }+  hard_links=yes+  $RM conftest*+  ln conftest.a conftest.b 2>/dev/null && hard_links=no+  touch conftest.a+  ln conftest.a conftest.b 2>&5 || hard_links=no+  ln conftest.a conftest.b 2>/dev/null && hard_links=no+  { $as_echo "$as_me:${as_lineno-$LINENO}: result: $hard_links" >&5+$as_echo "$hard_links" >&6; }+  if test no = "$hard_links"; then+    { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: '$CC' does not support '-c -o', so 'make -j' may be unsafe" >&5+$as_echo "$as_me: WARNING: '$CC' does not support '-c -o', so 'make -j' may be unsafe" >&2;}+    need_locks=warn+  fi+else+  need_locks=no+fi++++    { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether the $compiler linker ($LD) supports shared libraries" >&5+$as_echo_n "checking whether the $compiler linker ($LD) supports shared libraries... " >&6; }++  export_symbols_cmds_CXX='$NM $libobjs $convenience | $global_symbol_pipe | $SED '\''s/.* //'\'' | sort | uniq > $export_symbols'+  exclude_expsyms_CXX='_GLOBAL_OFFSET_TABLE_|_GLOBAL__F[ID]_.*'+  case $host_os in+  aix[4-9]*)+    # If we're using GNU nm, then we don't want the "-C" option.+    # -C means demangle to GNU nm, but means don't demangle to AIX nm.+    # Without the "-l" option, or with the "-B" option, AIX nm treats+    # weak defined symbols like other global defined symbols, whereas+    # GNU nm marks them as "W".+    # While the 'weak' keyword is ignored in the Export File, we need+    # it in the Import File for the 'aix-soname' feature, so we have+    # to replace the "-B" option with "-P" for AIX nm.+    if $NM -V 2>&1 | $GREP 'GNU' > /dev/null; then+      export_symbols_cmds_CXX='$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'+    else+      export_symbols_cmds_CXX='`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'+    fi+    ;;+  pw32*)+    export_symbols_cmds_CXX=$ltdll_cmds+    ;;+  cygwin* | mingw* | cegcc*)+    case $cc_basename in+    cl* | icl*)+      exclude_expsyms_CXX='_NULL_IMPORT_DESCRIPTOR|_IMPORT_DESCRIPTOR_.*'+      ;;+    *)+      export_symbols_cmds_CXX='$NM $libobjs $convenience | $global_symbol_pipe | $SED -e '\''/^[BCDGRS][ ]/s/.*[ ]\([^ ]*\)/\1 DATA/;s/^.*[ ]__nm__\([^ ]*\)[ ][^ ]*/\1 DATA/;/^I[ ]/d;/^[AITW][ ]/s/.* //'\'' | sort | uniq > $export_symbols'+      exclude_expsyms_CXX='[_]+GLOBAL_OFFSET_TABLE_|[_]+GLOBAL__[FID]_.*|[_]+head_[A-Za-z0-9_]+_dll|[A-Za-z0-9_]+_dll_iname'+      ;;+    esac+    ;;+  linux* | k*bsd*-gnu | gnu*)+    link_all_deplibs_CXX=no+    ;;+  *)+    export_symbols_cmds_CXX='$NM $libobjs $convenience | $global_symbol_pipe | $SED '\''s/.* //'\'' | sort | uniq > $export_symbols'+    ;;+  esac++{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ld_shlibs_CXX" >&5+$as_echo "$ld_shlibs_CXX" >&6; }+test no = "$ld_shlibs_CXX" && can_build_shared=no++with_gnu_ld_CXX=$with_gnu_ld+++++++#+# Do we need to explicitly link libc?+#+case "x$archive_cmds_need_lc_CXX" in+x|xyes)+  # Assume -lc should be added+  archive_cmds_need_lc_CXX=yes++  if test yes,yes = "$GCC,$enable_shared"; then+    case $archive_cmds_CXX in+    *'~'*)+      # FIXME: we may have to deal with multi-command sequences.+      ;;+    '$CC '*)+      # Test whether the compiler implicitly links with -lc since on some+      # systems, -lgcc has to come before -lc. If gcc already passes -lc+      # to ld, don't add -lc before -lgcc.+      { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether -lc should be explicitly linked in" >&5+$as_echo_n "checking whether -lc should be explicitly linked in... " >&6; }+if ${lt_cv_archive_cmds_need_lc_CXX+:} false; then :+  $as_echo_n "(cached) " >&6+else+  $RM conftest*+	echo "$lt_simple_compile_test_code" > conftest.$ac_ext++	if { { eval echo "\"\$as_me\":${as_lineno-$LINENO}: \"$ac_compile\""; } >&5+  (eval $ac_compile) 2>&5+  ac_status=$?+  $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5+  test $ac_status = 0; } 2>conftest.err; then+	  soname=conftest+	  lib=conftest+	  libobjs=conftest.$ac_objext+	  deplibs=+	  wl=$lt_prog_compiler_wl_CXX+	  pic_flag=$lt_prog_compiler_pic_CXX+	  compiler_flags=-v+	  linker_flags=-v+	  verstring=+	  output_objdir=.+	  libname=conftest+	  lt_save_allow_undefined_flag=$allow_undefined_flag_CXX+	  allow_undefined_flag_CXX=+	  if { { eval echo "\"\$as_me\":${as_lineno-$LINENO}: \"$archive_cmds_CXX 2\>\&1 \| $GREP \" -lc \" \>/dev/null 2\>\&1\""; } >&5+  (eval $archive_cmds_CXX 2\>\&1 \| $GREP \" -lc \" \>/dev/null 2\>\&1) 2>&5+  ac_status=$?+  $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5+  test $ac_status = 0; }+	  then+	    lt_cv_archive_cmds_need_lc_CXX=no+	  else+	    lt_cv_archive_cmds_need_lc_CXX=yes+	  fi+	  allow_undefined_flag_CXX=$lt_save_allow_undefined_flag+	else+	  cat conftest.err 1>&5+	fi+	$RM conftest*++fi+{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_cv_archive_cmds_need_lc_CXX" >&5+$as_echo "$lt_cv_archive_cmds_need_lc_CXX" >&6; }+      archive_cmds_need_lc_CXX=$lt_cv_archive_cmds_need_lc_CXX+      ;;+    esac+  fi+  ;;+esac+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++    { $as_echo "$as_me:${as_lineno-$LINENO}: checking dynamic linker characteristics" >&5+$as_echo_n "checking dynamic linker characteristics... " >&6; }++library_names_spec=+libname_spec='lib$name'+soname_spec=+shrext_cmds=.so+postinstall_cmds=+postuninstall_cmds=+finish_cmds=+finish_eval=+shlibpath_var=+shlibpath_overrides_runpath=unknown+version_type=none+dynamic_linker="$host_os ld.so"+sys_lib_dlsearch_path_spec="/lib /usr/lib"+need_lib_prefix=unknown+hardcode_into_libs=no++# when you set need_version to no, make sure it does not cause -set_version+# flags to be left without arguments+need_version=unknown++++case $host_os in+aix3*)+  version_type=linux # correct to gnu/linux during the next big refactor+  library_names_spec='$libname$release$shared_ext$versuffix $libname.a'+  shlibpath_var=LIBPATH++  # AIX 3 has no versioning support, so we append a major version to the name.+  soname_spec='$libname$release$shared_ext$major'+  ;;++aix[4-9]*)+  version_type=linux # correct to gnu/linux during the next big refactor+  need_lib_prefix=no+  need_version=no+  hardcode_into_libs=yes+  if test ia64 = "$host_cpu"; then+    # AIX 5 supports IA64+    library_names_spec='$libname$release$shared_ext$major $libname$release$shared_ext$versuffix $libname$shared_ext'+    shlibpath_var=LD_LIBRARY_PATH+  else+    # With GCC up to 2.95.x, collect2 would create an import file+    # for dependence libraries.  The import file would start with+    # the line '#! .'.  This would cause the generated library to+    # depend on '.', always an invalid library.  This was fixed in+    # development snapshots of GCC prior to 3.0.+    case $host_os in+      aix4 | aix4.[01] | aix4.[01].*)+      if { echo '#if __GNUC__ > 2 || (__GNUC__ == 2 && __GNUC_MINOR__ >= 97)'+	   echo ' yes '+	   echo '#endif'; } | $CC -E - | $GREP yes > /dev/null; then+	:+      else+	can_build_shared=no+      fi+      ;;+    esac+    # Using Import Files as archive members, it is possible to support+    # filename-based versioning of shared library archives on AIX. While+    # this would work for both with and without runtime linking, it will+    # prevent static linking of such archives. So we do filename-based+    # shared library versioning with .so extension only, which is used+    # when both runtime linking and shared linking is enabled.+    # Unfortunately, runtime linking may impact performance, so we do+    # not want this to be the default eventually. Also, we use the+    # versioned .so libs for executables only if there is the -brtl+    # linker flag in LDFLAGS as well, or --with-aix-soname=svr4 only.+    # To allow for filename-based versioning support, we need to create+    # libNAME.so.V as an archive file, containing:+    # *) an Import File, referring to the versioned filename of the+    #    archive as well as the shared archive member, telling the+    #    bitwidth (32 or 64) of that shared object, and providing the+    #    list of exported symbols of that shared object, eventually+    #    decorated with the 'weak' keyword+    # *) the shared object with the F_LOADONLY flag set, to really avoid+    #    it being seen by the linker.+    # At run time we better use the real file rather than another symlink,+    # but for link time we create the symlink libNAME.so -> libNAME.so.V++    case $with_aix_soname,$aix_use_runtimelinking in+    # AIX (on Power*) has no versioning support, so currently we cannot hardcode correct+    # soname into executable. Probably we can add versioning support to+    # collect2, so additional links can be useful in future.+    aix,yes) # traditional libtool+      dynamic_linker='AIX unversionable lib.so'+      # If using run time linking (on AIX 4.2 or later) use lib<name>.so+      # instead of lib<name>.a to let people know that these are not+      # typical AIX shared libraries.+      library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$shared_ext'+      ;;+    aix,no) # traditional AIX only+      dynamic_linker='AIX lib.a(lib.so.V)'+      # We preserve .a as extension for shared libraries through AIX4.2+      # and later when we are not doing run time linking.+      library_names_spec='$libname$release.a $libname.a'+      soname_spec='$libname$release$shared_ext$major'+      ;;+    svr4,*) # full svr4 only+      dynamic_linker="AIX lib.so.V($shared_archive_member_spec.o)"+      library_names_spec='$libname$release$shared_ext$major $libname$shared_ext'+      # We do not specify a path in Import Files, so LIBPATH fires.+      shlibpath_overrides_runpath=yes+      ;;+    *,yes) # both, prefer svr4+      dynamic_linker="AIX lib.so.V($shared_archive_member_spec.o), lib.a(lib.so.V)"+      library_names_spec='$libname$release$shared_ext$major $libname$shared_ext'+      # unpreferred sharedlib libNAME.a needs extra handling+      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"'+      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"'+      # We do not specify a path in Import Files, so LIBPATH fires.+      shlibpath_overrides_runpath=yes+      ;;+    *,no) # both, prefer aix+      dynamic_linker="AIX lib.a(lib.so.V), lib.so.V($shared_archive_member_spec.o)"+      library_names_spec='$libname$release.a $libname.a'+      soname_spec='$libname$release$shared_ext$major'+      # unpreferred sharedlib libNAME.so.V and symlink libNAME.so need extra handling+      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)'+      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"'+      ;;+    esac+    shlibpath_var=LIBPATH+  fi+  ;;++amigaos*)+  case $host_cpu in+  powerpc)+    # Since July 2007 AmigaOS4 officially supports .so libraries.+    # When compiling the executable, add -use-dynld -Lsobjs: to the compileline.+    library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$shared_ext'+    ;;+  m68k)+    library_names_spec='$libname.ixlibrary $libname.a'+    # Create ${libname}_ixlibrary.a entries in /sys/libs.+    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'+    ;;+  esac+  ;;++beos*)+  library_names_spec='$libname$shared_ext'+  dynamic_linker="$host_os ld.so"+  shlibpath_var=LIBRARY_PATH+  ;;++bsdi[45]*)+  version_type=linux # correct to gnu/linux during the next big refactor+  need_version=no+  library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$shared_ext'+  soname_spec='$libname$release$shared_ext$major'+  finish_cmds='PATH="\$PATH:/sbin" ldconfig $libdir'+  shlibpath_var=LD_LIBRARY_PATH+  sys_lib_search_path_spec="/shlib /usr/lib /usr/X11/lib /usr/contrib/lib /lib /usr/local/lib"+  sys_lib_dlsearch_path_spec="/shlib /usr/lib /usr/local/lib"+  # the default ld.so.conf also contains /usr/contrib/lib and+  # /usr/X11R6/lib (/usr/X11 is a link to /usr/X11R6), but let us allow+  # libtool to hard-code these into programs+  ;;++cygwin* | mingw* | pw32* | cegcc*)+  version_type=windows+  shrext_cmds=.dll+  need_version=no+  need_lib_prefix=no++  case $GCC,$cc_basename in+  yes,*)+    # gcc+    library_names_spec='$libname.dll.a'+    # DLL is installed to $(libdir)/../bin by postinstall_cmds+    postinstall_cmds='base_file=`basename \$file`~+      dlpath=`$SHELL 2>&1 -c '\''. $dir/'\''\$base_file'\''i; echo \$dlname'\''`~+      dldir=$destdir/`dirname \$dlpath`~+      test -d \$dldir || mkdir -p \$dldir~+      $install_prog $dir/$dlname \$dldir/$dlname~+      chmod a+x \$dldir/$dlname~+      if test -n '\''$stripme'\'' && test -n '\''$striplib'\''; then+        eval '\''$striplib \$dldir/$dlname'\'' || exit \$?;+      fi'+    postuninstall_cmds='dldll=`$SHELL 2>&1 -c '\''. $file; echo \$dlname'\''`~+      dlpath=$dir/\$dldll~+       $RM \$dlpath'+    shlibpath_overrides_runpath=yes++    case $host_os in+    cygwin*)+      # Cygwin DLLs use 'cyg' prefix rather than 'lib'+      soname_spec='`echo $libname | $SED -e 's/^lib/cyg/'``echo $release | $SED -e 's/[.]/-/g'`$versuffix$shared_ext'++      ;;+    mingw* | cegcc*)+      # MinGW DLLs use traditional 'lib' prefix+      soname_spec='$libname`echo $release | $SED -e 's/[.]/-/g'`$versuffix$shared_ext'+      ;;+    pw32*)+      # pw32 DLLs use 'pw' prefix rather than 'lib'+      library_names_spec='`echo $libname | $SED -e 's/^lib/pw/'``echo $release | $SED -e 's/[.]/-/g'`$versuffix$shared_ext'+      ;;+    esac+    dynamic_linker='Win32 ld.exe'+    ;;++  *,cl* | *,icl*)+    # Native MSVC or ICC+    libname_spec='$name'+    soname_spec='$libname`echo $release | $SED -e 's/[.]/-/g'`$versuffix$shared_ext'+    library_names_spec='$libname.dll.lib'++    case $build_os in+    mingw*)+      sys_lib_search_path_spec=+      lt_save_ifs=$IFS+      IFS=';'+      for lt_path in $LIB+      do+        IFS=$lt_save_ifs+        # Let DOS variable expansion print the short 8.3 style file name.+        lt_path=`cd "$lt_path" 2>/dev/null && cmd //C "for %i in (".") do @echo %~si"`+        sys_lib_search_path_spec="$sys_lib_search_path_spec $lt_path"+      done+      IFS=$lt_save_ifs+      # Convert to MSYS style.+      sys_lib_search_path_spec=`$ECHO "$sys_lib_search_path_spec" | $SED -e 's|\\\\|/|g' -e 's| \\([a-zA-Z]\\):| /\\1|g' -e 's|^ ||'`+      ;;+    cygwin*)+      # Convert to unix form, then to dos form, then back to unix form+      # but this time dos style (no spaces!) so that the unix form looks+      # like /cygdrive/c/PROGRA~1:/cygdr...+      sys_lib_search_path_spec=`cygpath --path --unix "$LIB"`+      sys_lib_search_path_spec=`cygpath --path --dos "$sys_lib_search_path_spec" 2>/dev/null`+      sys_lib_search_path_spec=`cygpath --path --unix "$sys_lib_search_path_spec" | $SED -e "s/$PATH_SEPARATOR/ /g"`+      ;;+    *)+      sys_lib_search_path_spec=$LIB+      if $ECHO "$sys_lib_search_path_spec" | $GREP ';[c-zC-Z]:/' >/dev/null; then+        # It is most probably a Windows format PATH.+        sys_lib_search_path_spec=`$ECHO "$sys_lib_search_path_spec" | $SED -e 's/;/ /g'`+      else+        sys_lib_search_path_spec=`$ECHO "$sys_lib_search_path_spec" | $SED -e "s/$PATH_SEPARATOR/ /g"`+      fi+      # FIXME: find the short name or the path components, as spaces are+      # common. (e.g. "Program Files" -> "PROGRA~1")+      ;;+    esac++    # DLL is installed to $(libdir)/../bin by postinstall_cmds+    postinstall_cmds='base_file=`basename \$file`~+      dlpath=`$SHELL 2>&1 -c '\''. $dir/'\''\$base_file'\''i; echo \$dlname'\''`~+      dldir=$destdir/`dirname \$dlpath`~+      test -d \$dldir || mkdir -p \$dldir~+      $install_prog $dir/$dlname \$dldir/$dlname'+    postuninstall_cmds='dldll=`$SHELL 2>&1 -c '\''. $file; echo \$dlname'\''`~+      dlpath=$dir/\$dldll~+       $RM \$dlpath'+    shlibpath_overrides_runpath=yes+    dynamic_linker='Win32 link.exe'+    ;;++  *)+    # Assume MSVC and ICC wrapper+    library_names_spec='$libname`echo $release | $SED -e 's/[.]/-/g'`$versuffix$shared_ext $libname.lib'+    dynamic_linker='Win32 ld.exe'+    ;;+  esac+  # FIXME: first we should search . and the directory the executable is in+  shlibpath_var=PATH+  ;;++darwin* | rhapsody*)+  dynamic_linker="$host_os dyld"+  version_type=darwin+  need_lib_prefix=no+  need_version=no+  library_names_spec='$libname$release$major$shared_ext $libname$shared_ext'+  soname_spec='$libname$release$major$shared_ext'+  shlibpath_overrides_runpath=yes+  shlibpath_var=DYLD_LIBRARY_PATH+  shrext_cmds='`test .$module = .yes && echo .so || echo .dylib`'++  sys_lib_dlsearch_path_spec='/usr/local/lib /lib /usr/lib'+  ;;++dgux*)+  version_type=linux # correct to gnu/linux during the next big refactor+  need_lib_prefix=no+  need_version=no+  library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$shared_ext'+  soname_spec='$libname$release$shared_ext$major'+  shlibpath_var=LD_LIBRARY_PATH+  ;;++freebsd* | dragonfly* | midnightbsd*)+  # DragonFly does not have aout.  When/if they implement a new+  # versioning mechanism, adjust this.+  if test -x /usr/bin/objformat; then+    objformat=`/usr/bin/objformat`+  else+    case $host_os in+    freebsd[23].*) objformat=aout ;;+    *) objformat=elf ;;+    esac+  fi+  version_type=freebsd-$objformat+  case $version_type in+    freebsd-elf*)+      library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$shared_ext'+      soname_spec='$libname$release$shared_ext$major'+      need_version=no+      need_lib_prefix=no+      ;;+    freebsd-*)+      library_names_spec='$libname$release$shared_ext$versuffix $libname$shared_ext$versuffix'+      need_version=yes+      ;;+  esac+  shlibpath_var=LD_LIBRARY_PATH+  case $host_os in+  freebsd2.*)+    shlibpath_overrides_runpath=yes+    ;;+  freebsd3.[01]* | freebsdelf3.[01]*)+    shlibpath_overrides_runpath=yes+    hardcode_into_libs=yes+    ;;+  freebsd3.[2-9]* | freebsdelf3.[2-9]* | \+  freebsd4.[0-5] | freebsdelf4.[0-5] | freebsd4.1.1 | freebsdelf4.1.1)+    shlibpath_overrides_runpath=no+    hardcode_into_libs=yes+    ;;+  *) # from 4.6 on, and DragonFly+    shlibpath_overrides_runpath=yes+    hardcode_into_libs=yes+    ;;+  esac+  ;;++haiku*)+  version_type=linux # correct to gnu/linux during the next big refactor+  need_lib_prefix=no+  need_version=no+  dynamic_linker="$host_os runtime_loader"+  library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$shared_ext'+  soname_spec='$libname$release$shared_ext$major'+  shlibpath_var=LIBRARY_PATH+  shlibpath_overrides_runpath=no+  sys_lib_dlsearch_path_spec='/boot/home/config/lib /boot/common/lib /boot/system/lib'+  hardcode_into_libs=yes+  ;;++hpux9* | hpux10* | hpux11*)+  # Give a soname corresponding to the major version so that dld.sl refuses to+  # link against other versions.+  version_type=sunos+  need_lib_prefix=no+  need_version=no+  case $host_cpu in+  ia64*)+    shrext_cmds='.so'+    hardcode_into_libs=yes+    dynamic_linker="$host_os dld.so"+    shlibpath_var=LD_LIBRARY_PATH+    shlibpath_overrides_runpath=yes # Unless +noenvvar is specified.+    library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$shared_ext'+    soname_spec='$libname$release$shared_ext$major'+    if test 32 = "$HPUX_IA64_MODE"; then+      sys_lib_search_path_spec="/usr/lib/hpux32 /usr/local/lib/hpux32 /usr/local/lib"+      sys_lib_dlsearch_path_spec=/usr/lib/hpux32+    else+      sys_lib_search_path_spec="/usr/lib/hpux64 /usr/local/lib/hpux64"+      sys_lib_dlsearch_path_spec=/usr/lib/hpux64+    fi+    ;;+  hppa*64*)+    shrext_cmds='.sl'+    hardcode_into_libs=yes+    dynamic_linker="$host_os dld.sl"+    shlibpath_var=LD_LIBRARY_PATH # How should we handle SHLIB_PATH+    shlibpath_overrides_runpath=yes # Unless +noenvvar is specified.+    library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$shared_ext'+    soname_spec='$libname$release$shared_ext$major'+    sys_lib_search_path_spec="/usr/lib/pa20_64 /usr/ccs/lib/pa20_64"+    sys_lib_dlsearch_path_spec=$sys_lib_search_path_spec+    ;;+  *)+    shrext_cmds='.sl'+    dynamic_linker="$host_os dld.sl"+    shlibpath_var=SHLIB_PATH+    shlibpath_overrides_runpath=no # +s is required to enable SHLIB_PATH+    library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$shared_ext'+    soname_spec='$libname$release$shared_ext$major'+    ;;+  esac+  # HP-UX runs *really* slowly unless shared libraries are mode 555, ...+  postinstall_cmds='chmod 555 $lib'+  # or fails outright, so override atomically:+  install_override_mode=555+  ;;++interix[3-9]*)+  version_type=linux # correct to gnu/linux during the next big refactor+  need_lib_prefix=no+  need_version=no+  library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$shared_ext'+  soname_spec='$libname$release$shared_ext$major'+  dynamic_linker='Interix 3.x ld.so.1 (PE, like ELF)'+  shlibpath_var=LD_LIBRARY_PATH+  shlibpath_overrides_runpath=no+  hardcode_into_libs=yes+  ;;++irix5* | irix6* | nonstopux*)+  case $host_os in+    nonstopux*) version_type=nonstopux ;;+    *)+	if test yes = "$lt_cv_prog_gnu_ld"; then+		version_type=linux # correct to gnu/linux during the next big refactor+	else+		version_type=irix+	fi ;;+  esac+  need_lib_prefix=no+  need_version=no+  soname_spec='$libname$release$shared_ext$major'+  library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$release$shared_ext $libname$shared_ext'+  case $host_os in+  irix5* | nonstopux*)+    libsuff= shlibsuff=+    ;;+  *)+    case $LD in # libtool.m4 will add one of these switches to LD+    *-32|*"-32 "|*-melf32bsmip|*"-melf32bsmip ")+      libsuff= shlibsuff= libmagic=32-bit;;+    *-n32|*"-n32 "|*-melf32bmipn32|*"-melf32bmipn32 ")+      libsuff=32 shlibsuff=N32 libmagic=N32;;+    *-64|*"-64 "|*-melf64bmip|*"-melf64bmip ")+      libsuff=64 shlibsuff=64 libmagic=64-bit;;+    *) libsuff= shlibsuff= libmagic=never-match;;+    esac+    ;;+  esac+  shlibpath_var=LD_LIBRARY${shlibsuff}_PATH+  shlibpath_overrides_runpath=no+  sys_lib_search_path_spec="/usr/lib$libsuff /lib$libsuff /usr/local/lib$libsuff"+  sys_lib_dlsearch_path_spec="/usr/lib$libsuff /lib$libsuff"+  hardcode_into_libs=yes+  ;;++# No shared lib support for Linux oldld, aout, or coff.+linux*oldld* | linux*aout* | linux*coff*)+  dynamic_linker=no+  ;;++linux*android*)+  version_type=none # Android doesn't support versioned libraries.+  need_lib_prefix=no+  need_version=no+  library_names_spec='$libname$release$shared_ext'+  soname_spec='$libname$release$shared_ext'+  finish_cmds=+  shlibpath_var=LD_LIBRARY_PATH+  shlibpath_overrides_runpath=yes++  # This implies no fast_install, which is unacceptable.+  # Some rework will be needed to allow for fast_install+  # before this can be enabled.+  hardcode_into_libs=yes++  dynamic_linker='Android linker'+  # Don't embed -rpath directories since the linker doesn't support them.+  hardcode_libdir_flag_spec_CXX='-L$libdir'+  ;;++# This must be glibc/ELF.+linux* | k*bsd*-gnu | kopensolaris*-gnu | gnu*)+  version_type=linux # correct to gnu/linux during the next big refactor+  need_lib_prefix=no+  need_version=no+  library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$shared_ext'+  soname_spec='$libname$release$shared_ext$major'+  finish_cmds='PATH="\$PATH:/sbin" ldconfig -n $libdir'+  shlibpath_var=LD_LIBRARY_PATH+  shlibpath_overrides_runpath=no++  # Some binutils ld are patched to set DT_RUNPATH+  if ${lt_cv_shlibpath_overrides_runpath+:} false; then :+  $as_echo_n "(cached) " >&6+else+  lt_cv_shlibpath_overrides_runpath=no+    save_LDFLAGS=$LDFLAGS+    save_libdir=$libdir+    eval "libdir=/foo; wl=\"$lt_prog_compiler_wl_CXX\"; \+	 LDFLAGS=\"\$LDFLAGS $hardcode_libdir_flag_spec_CXX\""+    cat confdefs.h - <<_ACEOF >conftest.$ac_ext+/* end confdefs.h.  */++int+main ()+{++  ;+  return 0;+}+_ACEOF+if ac_fn_cxx_try_link "$LINENO"; then :+  if  ($OBJDUMP -p conftest$ac_exeext) 2>/dev/null | grep "RUNPATH.*$libdir" >/dev/null; then :+  lt_cv_shlibpath_overrides_runpath=yes+fi+fi+rm -f core conftest.err conftest.$ac_objext \+    conftest$ac_exeext conftest.$ac_ext+    LDFLAGS=$save_LDFLAGS+    libdir=$save_libdir++fi++  shlibpath_overrides_runpath=$lt_cv_shlibpath_overrides_runpath++  # This implies no fast_install, which is unacceptable.+  # Some rework will be needed to allow for fast_install+  # before this can be enabled.+  hardcode_into_libs=yes++  # Ideally, we could use ldconfig to report *all* directores which are+  # searched for libraries, however this is still not possible.  Aside from not+  # being certain /sbin/ldconfig is available, command+  # 'ldconfig -N -X -v | grep ^/' on 64bit Fedora does not report /usr/lib64,+  # even though it is searched at run-time.  Try to do the best guess by+  # appending ld.so.conf contents (and includes) to the search path.+  if test -f /etc/ld.so.conf; then+    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' ' '`+    sys_lib_dlsearch_path_spec="/lib /usr/lib $lt_ld_extra"+  fi++  # We used to test for /lib/ld.so.1 and disable shared libraries on+  # powerpc, because MkLinux only supported shared libraries with the+  # GNU dynamic linker.  Since this was broken with cross compilers,+  # most powerpc-linux boxes support dynamic linking these days and+  # people can always --disable-shared, the test was removed, and we+  # assume the GNU/Linux dynamic linker is in use.+  dynamic_linker='GNU/Linux ld.so'+  ;;++netbsdelf*-gnu)+  version_type=linux+  need_lib_prefix=no+  need_version=no+  library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major ${libname}${shared_ext}'+  soname_spec='${libname}${release}${shared_ext}$major'+  shlibpath_var=LD_LIBRARY_PATH+  shlibpath_overrides_runpath=no+  hardcode_into_libs=yes+  dynamic_linker='NetBSD ld.elf_so'+  ;;++netbsd*)+  version_type=sunos+  need_lib_prefix=no+  need_version=no+  if echo __ELF__ | $CC -E - | $GREP __ELF__ >/dev/null; then+    library_names_spec='$libname$release$shared_ext$versuffix $libname$shared_ext$versuffix'+    finish_cmds='PATH="\$PATH:/sbin" ldconfig -m $libdir'+    dynamic_linker='NetBSD (a.out) ld.so'+  else+    library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$shared_ext'+    soname_spec='$libname$release$shared_ext$major'+    dynamic_linker='NetBSD ld.elf_so'+  fi+  shlibpath_var=LD_LIBRARY_PATH+  shlibpath_overrides_runpath=yes+  hardcode_into_libs=yes+  ;;++newsos6)+  version_type=linux # correct to gnu/linux during the next big refactor+  library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$shared_ext'+  shlibpath_var=LD_LIBRARY_PATH+  shlibpath_overrides_runpath=yes+  ;;++*nto* | *qnx*)+  version_type=qnx+  need_lib_prefix=no+  need_version=no+  library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$shared_ext'+  soname_spec='$libname$release$shared_ext$major'+  shlibpath_var=LD_LIBRARY_PATH+  shlibpath_overrides_runpath=no+  hardcode_into_libs=yes+  dynamic_linker='ldqnx.so'+  ;;++openbsd* | bitrig*)+  version_type=sunos+  sys_lib_dlsearch_path_spec=/usr/lib+  need_lib_prefix=no+  if test -z "`echo __ELF__ | $CC -E - | $GREP __ELF__`"; then+    need_version=no+  else+    need_version=yes+  fi+  library_names_spec='$libname$release$shared_ext$versuffix $libname$shared_ext$versuffix'+  finish_cmds='PATH="\$PATH:/sbin" ldconfig -m $libdir'+  shlibpath_var=LD_LIBRARY_PATH+  shlibpath_overrides_runpath=yes+  ;;++os2*)+  libname_spec='$name'+  version_type=windows+  shrext_cmds=.dll+  need_version=no+  need_lib_prefix=no+  # OS/2 can only load a DLL with a base name of 8 characters or less.+  soname_spec='`test -n "$os2dllname" && libname="$os2dllname";+    v=$($ECHO $release$versuffix | tr -d .-);+    n=$($ECHO $libname | cut -b -$((8 - ${#v})) | tr . _);+    $ECHO $n$v`$shared_ext'+  library_names_spec='${libname}_dll.$libext'+  dynamic_linker='OS/2 ld.exe'+  shlibpath_var=BEGINLIBPATH+  sys_lib_search_path_spec="/lib /usr/lib /usr/local/lib"+  sys_lib_dlsearch_path_spec=$sys_lib_search_path_spec+  postinstall_cmds='base_file=`basename \$file`~+    dlpath=`$SHELL 2>&1 -c '\''. $dir/'\''\$base_file'\''i; $ECHO \$dlname'\''`~+    dldir=$destdir/`dirname \$dlpath`~+    test -d \$dldir || mkdir -p \$dldir~+    $install_prog $dir/$dlname \$dldir/$dlname~+    chmod a+x \$dldir/$dlname~+    if test -n '\''$stripme'\'' && test -n '\''$striplib'\''; then+      eval '\''$striplib \$dldir/$dlname'\'' || exit \$?;+    fi'+  postuninstall_cmds='dldll=`$SHELL 2>&1 -c '\''. $file; $ECHO \$dlname'\''`~+    dlpath=$dir/\$dldll~+    $RM \$dlpath'+  ;;++osf3* | osf4* | osf5*)+  version_type=osf+  need_lib_prefix=no+  need_version=no+  soname_spec='$libname$release$shared_ext$major'+  library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$shared_ext'+  shlibpath_var=LD_LIBRARY_PATH+  sys_lib_search_path_spec="/usr/shlib /usr/ccs/lib /usr/lib/cmplrs/cc /usr/lib /usr/local/lib /var/shlib"+  sys_lib_dlsearch_path_spec=$sys_lib_search_path_spec+  ;;++rdos*)+  dynamic_linker=no+  ;;++solaris*)+  version_type=linux # correct to gnu/linux during the next big refactor+  need_lib_prefix=no+  need_version=no+  library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$shared_ext'+  soname_spec='$libname$release$shared_ext$major'+  shlibpath_var=LD_LIBRARY_PATH+  shlibpath_overrides_runpath=yes+  hardcode_into_libs=yes+  # ldd complains unless libraries are executable+  postinstall_cmds='chmod +x $lib'+  ;;++sunos4*)+  version_type=sunos+  library_names_spec='$libname$release$shared_ext$versuffix $libname$shared_ext$versuffix'+  finish_cmds='PATH="\$PATH:/usr/etc" ldconfig $libdir'+  shlibpath_var=LD_LIBRARY_PATH+  shlibpath_overrides_runpath=yes+  if test yes = "$with_gnu_ld"; then+    need_lib_prefix=no+  fi+  need_version=yes+  ;;++sysv4 | sysv4.3*)+  version_type=linux # correct to gnu/linux during the next big refactor+  library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$shared_ext'+  soname_spec='$libname$release$shared_ext$major'+  shlibpath_var=LD_LIBRARY_PATH+  case $host_vendor in+    sni)+      shlibpath_overrides_runpath=no+      need_lib_prefix=no+      runpath_var=LD_RUN_PATH+      ;;+    siemens)+      need_lib_prefix=no+      ;;+    motorola)+      need_lib_prefix=no+      need_version=no+      shlibpath_overrides_runpath=no+      sys_lib_search_path_spec='/lib /usr/lib /usr/ccs/lib'+      ;;+  esac+  ;;++sysv4*MP*)+  if test -d /usr/nec; then+    version_type=linux # correct to gnu/linux during the next big refactor+    library_names_spec='$libname$shared_ext.$versuffix $libname$shared_ext.$major $libname$shared_ext'+    soname_spec='$libname$shared_ext.$major'+    shlibpath_var=LD_LIBRARY_PATH+  fi+  ;;++sysv5* | sco3.2v5* | sco5v6* | unixware* | OpenUNIX* | sysv4*uw2*)+  version_type=sco+  need_lib_prefix=no+  need_version=no+  library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext $libname$shared_ext'+  soname_spec='$libname$release$shared_ext$major'+  shlibpath_var=LD_LIBRARY_PATH+  shlibpath_overrides_runpath=yes+  hardcode_into_libs=yes+  if test yes = "$with_gnu_ld"; then+    sys_lib_search_path_spec='/usr/local/lib /usr/gnu/lib /usr/ccs/lib /usr/lib /lib'+  else+    sys_lib_search_path_spec='/usr/ccs/lib /usr/lib'+    case $host_os in+      sco3.2v5*)+        sys_lib_search_path_spec="$sys_lib_search_path_spec /lib"+	;;+    esac+  fi+  sys_lib_dlsearch_path_spec='/usr/lib'+  ;;++tpf*)+  # TPF is a cross-target only.  Preferred cross-host = GNU/Linux.+  version_type=linux # correct to gnu/linux during the next big refactor+  need_lib_prefix=no+  need_version=no+  library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$shared_ext'+  shlibpath_var=LD_LIBRARY_PATH+  shlibpath_overrides_runpath=no+  hardcode_into_libs=yes+  ;;++uts4*)+  version_type=linux # correct to gnu/linux during the next big refactor+  library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$shared_ext'+  soname_spec='$libname$release$shared_ext$major'+  shlibpath_var=LD_LIBRARY_PATH+  ;;++*)+  dynamic_linker=no+  ;;+esac+{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $dynamic_linker" >&5+$as_echo "$dynamic_linker" >&6; }+test no = "$dynamic_linker" && can_build_shared=no++variables_saved_for_relink="PATH $shlibpath_var $runpath_var"+if test yes = "$GCC"; then+  variables_saved_for_relink="$variables_saved_for_relink GCC_EXEC_PREFIX COMPILER_PATH LIBRARY_PATH"+fi++if test set = "${lt_cv_sys_lib_search_path_spec+set}"; then+  sys_lib_search_path_spec=$lt_cv_sys_lib_search_path_spec+fi++if test set = "${lt_cv_sys_lib_dlsearch_path_spec+set}"; then+  sys_lib_dlsearch_path_spec=$lt_cv_sys_lib_dlsearch_path_spec+fi++# remember unaugmented sys_lib_dlsearch_path content for libtool script decls...+configure_time_dlsearch_path=$sys_lib_dlsearch_path_spec++# ... but it needs LT_SYS_LIBRARY_PATH munging for other configure-time code+func_munge_path_list sys_lib_dlsearch_path_spec "$LT_SYS_LIBRARY_PATH"++# to be used as default LT_SYS_LIBRARY_PATH value in generated libtool+configure_time_lt_sys_library_path=$LT_SYS_LIBRARY_PATH+++++++++++++++++++++++++++++++++++++++++    { $as_echo "$as_me:${as_lineno-$LINENO}: checking how to hardcode library paths into programs" >&5+$as_echo_n "checking how to hardcode library paths into programs... " >&6; }+hardcode_action_CXX=+if test -n "$hardcode_libdir_flag_spec_CXX" ||+   test -n "$runpath_var_CXX" ||+   test yes = "$hardcode_automatic_CXX"; then++  # We can hardcode non-existent directories.+  if test no != "$hardcode_direct_CXX" &&+     # If the only mechanism to avoid hardcoding is shlibpath_var, we+     # have to relink, otherwise we might link with an installed library+     # when we should be linking with a yet-to-be-installed one+     ## test no != "$_LT_TAGVAR(hardcode_shlibpath_var, CXX)" &&+     test no != "$hardcode_minus_L_CXX"; then+    # Linking always hardcodes the temporary library directory.+    hardcode_action_CXX=relink+  else+    # We can link without hardcoding, and we can hardcode nonexisting dirs.+    hardcode_action_CXX=immediate+  fi+else+  # We cannot hardcode anything, or else we can only hardcode existing+  # directories.+  hardcode_action_CXX=unsupported+fi+{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $hardcode_action_CXX" >&5+$as_echo "$hardcode_action_CXX" >&6; }++if test relink = "$hardcode_action_CXX" ||+   test yes = "$inherit_rpath_CXX"; then+  # Fast installation is not supported+  enable_fast_install=no+elif test yes = "$shlibpath_overrides_runpath" ||+     test no = "$enable_shared"; then+  # Fast installation is not necessary+  enable_fast_install=needless+fi++++++++  fi # test -n "$compiler"++  CC=$lt_save_CC+  CFLAGS=$lt_save_CFLAGS+  LDCXX=$LD+  LD=$lt_save_LD+  GCC=$lt_save_GCC+  with_gnu_ld=$lt_save_with_gnu_ld+  lt_cv_path_LDCXX=$lt_cv_path_LD+  lt_cv_path_LD=$lt_save_path_LD+  lt_cv_prog_gnu_ldcxx=$lt_cv_prog_gnu_ld+  lt_cv_prog_gnu_ld=$lt_save_with_gnu_ld+fi # test yes != "$_lt_caught_CXX_error"++ac_ext=c+ac_cpp='$CPP $CPPFLAGS'+ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5'+ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5'+ac_compiler_gnu=$ac_cv_c_compiler_gnu++++++++++++++++        ac_config_commands="$ac_config_commands libtool"+++++# Only expand once:+++++# Test for 64-bit build.+# The cast to long int works around a bug in the HP C Compiler+# version HP92453-01 B.11.11.23709.GP, which incorrectly rejects+# declarations like `int a3[[(sizeof (unsigned char)) >= 0]];'.+# This bug is HP SR number 8606223364.+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking size of size_t" >&5+$as_echo_n "checking size of size_t... " >&6; }+if ${ac_cv_sizeof_size_t+:} false; then :+  $as_echo_n "(cached) " >&6+else+  if ac_fn_c_compute_int "$LINENO" "(long int) (sizeof (size_t))" "ac_cv_sizeof_size_t"        "$ac_includes_default"; then :++else+  if test "$ac_cv_type_size_t" = yes; then+     { { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5+$as_echo "$as_me: error: in \`$ac_pwd':" >&2;}+as_fn_error 77 "cannot compute sizeof (size_t)+See \`config.log' for more details" "$LINENO" 5; }+   else+     ac_cv_sizeof_size_t=0+   fi+fi++fi+{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_sizeof_size_t" >&5+$as_echo "$ac_cv_sizeof_size_t" >&6; }++++cat >>confdefs.h <<_ACEOF+#define SIZEOF_SIZE_T $ac_cv_sizeof_size_t+_ACEOF++++    { $as_echo "$as_me:${as_lineno-$LINENO}: checking for C compiler vendor" >&5+$as_echo_n "checking for C compiler vendor... " >&6; }+if ${ax_cv_c_compiler_vendor+:} false; then :+  $as_echo_n "(cached) " >&6+else++	vendors="+		intel:		__ICC,__ECC,__INTEL_COMPILER+		ibm:		__xlc__,__xlC__,__IBMC__,__IBMCPP__,__ibmxl__+		pathscale:	__PATHCC__,__PATHSCALE__+		clang:		__clang__+		cray:		_CRAYC+		fujitsu:	__FUJITSU+		sdcc:		SDCC,__SDCC+		sx:		_SX+		nvhpc:		__NVCOMPILER+		portland:	__PGI+		gnu:		__GNUC__+		sun:		__SUNPRO_C,__SUNPRO_CC,__SUNPRO_F90,__SUNPRO_F95+		hp:		__HP_cc,__HP_aCC+		dec:		__DECC,__DECCXX,__DECC_VER,__DECCXX_VER+		borland:	__BORLANDC__,__CODEGEARC__,__TURBOC__+		comeau:		__COMO__+		kai:		__KCC+		lcc:		__LCC__+		sgi:		__sgi,sgi+		microsoft:	_MSC_VER+		metrowerks:	__MWERKS__+		watcom:		__WATCOMC__+		tcc:		__TINYC__+		unknown:	UNKNOWN+	"+	for ventest in $vendors; do+	    case $ventest in+		*:)+		    vendor=$ventest+		    continue+		    ;;+		*)+		    vencpp="defined("`echo $ventest | sed 's/,/) || defined(/g'`")"+		    ;;+	    esac++	    cat confdefs.h - <<_ACEOF >conftest.$ac_ext+/* end confdefs.h.  */++int+main ()+{++#if !($vencpp)+      thisisanerror;+#endif++  ;+  return 0;+}+_ACEOF+if ac_fn_c_try_compile "$LINENO"; then :+  break+fi+rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext+	done++	ax_cv_c_compiler_vendor=`echo $vendor | cut -d: -f1`++fi+{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ax_cv_c_compiler_vendor" >&5+$as_echo "$ax_cv_c_compiler_vendor" >&6; }+++++++# Check whether --enable-portable-binary was given.+if test "${enable_portable_binary+set}" = set; then :+  enableval=$enable_portable_binary; acx_maxopt_portable=$enableval+else+  acx_maxopt_portable=no+fi+++# Try to determine "good" native compiler flags if none specified via CFLAGS+if test "x$ac_test_CFLAGS" = "x"; then+  case $ax_cv_c_compiler_vendor in+    dec) CFLAGS="$CFLAGS -newc -w0 -O5 -ansi_alias -ansi_args -fp_reorder -tune host"+	 if test "x$acx_maxopt_portable" = xno; then+           CFLAGS="$CFLAGS -arch host"+         fi;;++    sun) CFLAGS="$CFLAGS -native -fast -xO5 -dalign"+	 if test "x$acx_maxopt_portable" = xyes; then+	   CFLAGS="$CFLAGS -xarch=generic"+         fi;;++    hp)  CFLAGS="$CFLAGS +Oall +Optrs_ansi +DSnative"+	 if test "x$acx_maxopt_portable" = xyes; then+	   CFLAGS="$CFLAGS +DAportable"+	 fi;;++    ibm) if test "x$acx_maxopt_portable" = xno; then+           xlc_opt="-qarch=auto -qtune=auto"+	 else+           xlc_opt="-qtune=auto"+	 fi+         as_CACHEVAR=`$as_echo "ax_cv_check_cflags__$xlc_opt" | $as_tr_sh`+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether the C compiler accepts $xlc_opt" >&5+$as_echo_n "checking whether the C compiler accepts $xlc_opt... " >&6; }+if eval \${$as_CACHEVAR+:} false; then :+  $as_echo_n "(cached) " >&6+else++  ax_check_save_flags=$CFLAGS+  if test x"$GCC" = xyes ; then+    add_gnu_werror="-Werror"+  fi+  CFLAGS="$CFLAGS  $xlc_opt $add_gnu_werror"+  cat confdefs.h - <<_ACEOF >conftest.$ac_ext+/* end confdefs.h.  */++int+main ()+{++  ;+  return 0;+}+_ACEOF+if ac_fn_c_try_compile "$LINENO"; then :+  eval "$as_CACHEVAR=yes"+else+  eval "$as_CACHEVAR=no"+fi+rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext+  CFLAGS=$ax_check_save_flags+fi+eval ac_res=\$$as_CACHEVAR+	       { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_res" >&5+$as_echo "$ac_res" >&6; }+if eval test \"x\$"$as_CACHEVAR"\" = x"yes"; then :+  CFLAGS="$CFLAGS -O3 -qansialias -w $xlc_opt"+else+  CFLAGS="$CFLAGS -O3 -qansialias -w"+                echo "******************************************************"+                echo "*  You seem to have the IBM  C compiler.  It is      *"+                echo "*  recommended for best performance that you use:    *"+                echo "*                                                    *"+                echo "*    CFLAGS=-O3 -qarch=xxx -qtune=xxx -qansialias -w *"+                echo "*                      ^^^        ^^^                *"+                echo "*  where xxx is pwr2, pwr3, 604, or whatever kind of *"+                echo "*  CPU you have.  (Set the CFLAGS environment var.   *"+                echo "*  and re-run configure.)  For more info, man cc.    *"+                echo "******************************************************"+fi++         ;;++    intel) CFLAGS="$CFLAGS -O3 -ansi_alias"+	if test "x$acx_maxopt_portable" = xno; then+	  icc_archflag=unknown+	  icc_flags=""+	  case $host_cpu in+	    i686*|x86_64*)+              # icc accepts gcc assembly syntax, so these should work:++ac_ext=c+ac_cpp='$CPP $CPPFLAGS'+ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5'+ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5'+ac_compiler_gnu=$ac_cv_c_compiler_gnu++{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for x86 cpuid 0 output" >&5+$as_echo_n "checking for x86 cpuid 0 output... " >&6; }+if ${ax_cv_gcc_x86_cpuid_0+:} false; then :+  $as_echo_n "(cached) " >&6+else+  if test "$cross_compiling" = yes; then :+  ax_cv_gcc_x86_cpuid_0=unknown+else+  cat confdefs.h - <<_ACEOF >conftest.$ac_ext+/* end confdefs.h.  */+#include <stdio.h>+int+main ()+{++     int op = 0, level = 0, eax, ebx, ecx, edx;+     FILE *f;+      __asm__ __volatile__ ("xchg %%ebx, %1\n"+        "cpuid\n"+        "xchg %%ebx, %1\n"+        : "=a" (eax), "=r" (ebx), "=c" (ecx), "=d" (edx)+        : "a" (op), "2" (level));++     f = fopen("conftest_cpuid", "w"); if (!f) return 1;+     fprintf(f, "%x:%x:%x:%x\n", eax, ebx, ecx, edx);+     fclose(f);+     return 0;++  ;+  return 0;+}+_ACEOF+if ac_fn_c_try_run "$LINENO"; then :+  ax_cv_gcc_x86_cpuid_0=`cat conftest_cpuid`; rm -f conftest_cpuid+else+  ax_cv_gcc_x86_cpuid_0=unknown; rm -f conftest_cpuid+fi+rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \+  conftest.$ac_objext conftest.beam conftest.$ac_ext+fi++fi+{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ax_cv_gcc_x86_cpuid_0" >&5+$as_echo "$ax_cv_gcc_x86_cpuid_0" >&6; }+ac_ext=c+ac_cpp='$CPP $CPPFLAGS'+ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5'+ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5'+ac_compiler_gnu=$ac_cv_c_compiler_gnu+++++ac_ext=c+ac_cpp='$CPP $CPPFLAGS'+ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5'+ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5'+ac_compiler_gnu=$ac_cv_c_compiler_gnu++{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for x86 cpuid 1 output" >&5+$as_echo_n "checking for x86 cpuid 1 output... " >&6; }+if ${ax_cv_gcc_x86_cpuid_1+:} false; then :+  $as_echo_n "(cached) " >&6+else+  if test "$cross_compiling" = yes; then :+  ax_cv_gcc_x86_cpuid_1=unknown+else+  cat confdefs.h - <<_ACEOF >conftest.$ac_ext+/* end confdefs.h.  */+#include <stdio.h>+int+main ()+{++     int op = 1, level = 0, eax, ebx, ecx, edx;+     FILE *f;+      __asm__ __volatile__ ("xchg %%ebx, %1\n"+        "cpuid\n"+        "xchg %%ebx, %1\n"+        : "=a" (eax), "=r" (ebx), "=c" (ecx), "=d" (edx)+        : "a" (op), "2" (level));++     f = fopen("conftest_cpuid", "w"); if (!f) return 1;+     fprintf(f, "%x:%x:%x:%x\n", eax, ebx, ecx, edx);+     fclose(f);+     return 0;++  ;+  return 0;+}+_ACEOF+if ac_fn_c_try_run "$LINENO"; then :+  ax_cv_gcc_x86_cpuid_1=`cat conftest_cpuid`; rm -f conftest_cpuid+else+  ax_cv_gcc_x86_cpuid_1=unknown; rm -f conftest_cpuid+fi+rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \+  conftest.$ac_objext conftest.beam conftest.$ac_ext+fi++fi+{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ax_cv_gcc_x86_cpuid_1" >&5+$as_echo "$ax_cv_gcc_x86_cpuid_1" >&6; }+ac_ext=c+ac_cpp='$CPP $CPPFLAGS'+ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5'+ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5'+ac_compiler_gnu=$ac_cv_c_compiler_gnu++++	      case $ax_cv_gcc_x86_cpuid_0 in # see AX_GCC_ARCHFLAG+                *:756e6547:6c65746e:49656e69) # Intel+                  case $ax_cv_gcc_x86_cpuid_1 in+		    *0?6[78ab]?:*:*:*|?6[78ab]?:*:*:*|6[78ab]?:*:*:*) icc_flags="-xK" ;;+		    *0?6[9d]?:*:*:*|?6[9d]?:*:*:*|6[9d]?:*:*:*|*1?65?:*:*:*) icc_flags="-xSSE2 -xB -xK" ;;+		    *0?6e?:*:*:*|?6e?:*:*:*|6e?:*:*:*) icc_flags="-xSSE3 -xP -xO -xB -xK" ;;+		    *0?6f?:*:*:*|?6f?:*:*:*|6f?:*:*:*|*1?66?:*:*:*) icc_flags="-xSSSE3 -xT -xB -xK" ;;+		    *1?6[7d]?:*:*:*) icc_flags="-xSSE4.1 -xS -xT -xB -xK" ;;+		    *1?6[aef]?:*:*:*|*2?6[5cef]?:*:*:*) icc_flags="-xSSE4.2 -xS -xT -xB -xK" ;;+		    *2?6[ad]?:*:*:*) icc_flags="-xAVX -SSE4.2 -xS -xT -xB -xK" ;;+		    *3?6[ae]?:*:*:*) icc_flags="-xCORE-AVX-I -xAVX -SSE4.2 -xS -xT -xB -xK" ;;+		    *3?6[cf]?:*:*:*|*4?6[56]?:*:*:*) icc_flags="-xCORE-AVX2 -xCORE-AVX-I -xAVX -SSE4.2 -xS -xT -xB -xK" ;;+		    *000?f[346]?:*:*:*|?f[346]?:*:*:*|f[346]?:*:*:*) icc_flags="-xSSE3 -xP -xO -xN -xW -xK" ;;+		    *00??f??:*:*:*|??f??:*:*:*|?f??:*:*:*|f??:*:*:*) icc_flags="-xSSE2 -xN -xW -xK" ;;+                  esac ;;+              esac ;;+          esac+          if test "x$icc_flags" != x; then+            for flag in $icc_flags; do+              as_CACHEVAR=`$as_echo "ax_cv_check_cflags__$flag" | $as_tr_sh`+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether the C compiler accepts $flag" >&5+$as_echo_n "checking whether the C compiler accepts $flag... " >&6; }+if eval \${$as_CACHEVAR+:} false; then :+  $as_echo_n "(cached) " >&6+else++  ax_check_save_flags=$CFLAGS+  if test x"$GCC" = xyes ; then+    add_gnu_werror="-Werror"+  fi+  CFLAGS="$CFLAGS  $flag $add_gnu_werror"+  cat confdefs.h - <<_ACEOF >conftest.$ac_ext+/* end confdefs.h.  */++int+main ()+{++  ;+  return 0;+}+_ACEOF+if ac_fn_c_try_compile "$LINENO"; then :+  eval "$as_CACHEVAR=yes"+else+  eval "$as_CACHEVAR=no"+fi+rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext+  CFLAGS=$ax_check_save_flags+fi+eval ac_res=\$$as_CACHEVAR+	       { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_res" >&5+$as_echo "$ac_res" >&6; }+if eval test \"x\$"$as_CACHEVAR"\" = x"yes"; then :+  icc_archflag=$flag; break+else+  :+fi++            done+          fi+          { $as_echo "$as_me:${as_lineno-$LINENO}: checking for icc architecture flag" >&5+$as_echo_n "checking for icc architecture flag... " >&6; }+	  { $as_echo "$as_me:${as_lineno-$LINENO}: result: $icc_archflag" >&5+$as_echo "$icc_archflag" >&6; }+          if test "x$icc_archflag" != xunknown; then+            CFLAGS="$CFLAGS $icc_archflag"+          fi+        fi+	;;++    nvhpc)+     # default optimization flags for nvhpc+     CFLAGS="$CFLAGS -O3"+     ;;++    gnu)+     # default optimization flags for gcc on all systems+     CFLAGS="$CFLAGS -O3 -fomit-frame-pointer"++     # -malign-double for x86 systems+     # LIBFFI_LOCAL: don't do this.+     # The testsuite doesn't use these flags and we'll get test failures.+     # AX_CHECK_COMPILE_FLAG(-malign-double, CFLAGS="$CFLAGS -malign-double")++     #  -fstrict-aliasing for gcc-2.95++     { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether the C compiler accepts -fstrict-aliasing" >&5+$as_echo_n "checking whether the C compiler accepts -fstrict-aliasing... " >&6; }+if ${ax_cv_check_cflags___fstrict_aliasing+:} false; then :+  $as_echo_n "(cached) " >&6+else++  ax_check_save_flags=$CFLAGS+  if test x"$GCC" = xyes ; then+    add_gnu_werror="-Werror"+  fi+  CFLAGS="$CFLAGS  -fstrict-aliasing $add_gnu_werror"+  cat confdefs.h - <<_ACEOF >conftest.$ac_ext+/* end confdefs.h.  */++int+main ()+{++  ;+  return 0;+}+_ACEOF+if ac_fn_c_try_compile "$LINENO"; then :+  ax_cv_check_cflags___fstrict_aliasing=yes+else+  ax_cv_check_cflags___fstrict_aliasing=no+fi+rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext+  CFLAGS=$ax_check_save_flags+fi+{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ax_cv_check_cflags___fstrict_aliasing" >&5+$as_echo "$ax_cv_check_cflags___fstrict_aliasing" >&6; }+if test "x$ax_cv_check_cflags___fstrict_aliasing" = xyes; then :+  CFLAGS="$CFLAGS -fstrict-aliasing"+else+  :+fi+++     # note that we enable "unsafe" fp optimization with other compilers, too+     { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether the C compiler accepts -ffast-math" >&5+$as_echo_n "checking whether the C compiler accepts -ffast-math... " >&6; }+if ${ax_cv_check_cflags___ffast_math+:} false; then :+  $as_echo_n "(cached) " >&6+else++  ax_check_save_flags=$CFLAGS+  if test x"$GCC" = xyes ; then+    add_gnu_werror="-Werror"+  fi+  CFLAGS="$CFLAGS  -ffast-math $add_gnu_werror"+  cat confdefs.h - <<_ACEOF >conftest.$ac_ext+/* end confdefs.h.  */++int+main ()+{++  ;+  return 0;+}+_ACEOF+if ac_fn_c_try_compile "$LINENO"; then :+  ax_cv_check_cflags___ffast_math=yes+else+  ax_cv_check_cflags___ffast_math=no+fi+rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext+  CFLAGS=$ax_check_save_flags+fi+{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ax_cv_check_cflags___ffast_math" >&5+$as_echo "$ax_cv_check_cflags___ffast_math" >&6; }+if test "x$ax_cv_check_cflags___ffast_math" = xyes; then :+  CFLAGS="$CFLAGS -ffast-math"+else+  :+fi+++++++++# Check whether --with-gcc-arch was given.+if test "${with_gcc_arch+set}" = set; then :+  withval=$with_gcc_arch; ax_gcc_arch=$withval+else+  ax_gcc_arch=yes+fi+++{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for gcc architecture flag" >&5+$as_echo_n "checking for gcc architecture flag... " >&6; }+{ $as_echo "$as_me:${as_lineno-$LINENO}: result: " >&5+$as_echo "" >&6; }+if ${ax_cv_gcc_archflag+:} false; then :+  $as_echo_n "(cached) " >&6+else++ax_cv_gcc_archflag="unknown"++if test "$GCC" = yes; then++if test "x$ax_gcc_arch" = xyes; then+ax_gcc_arch=""+if test "$cross_compiling" = no; then+case $host_cpu in+  i[3456]86*|x86_64*|amd64*) # use cpuid codes++ac_ext=c+ac_cpp='$CPP $CPPFLAGS'+ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5'+ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5'+ac_compiler_gnu=$ac_cv_c_compiler_gnu++{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for x86 cpuid 0 output" >&5+$as_echo_n "checking for x86 cpuid 0 output... " >&6; }+if ${ax_cv_gcc_x86_cpuid_0+:} false; then :+  $as_echo_n "(cached) " >&6+else+  if test "$cross_compiling" = yes; then :+  ax_cv_gcc_x86_cpuid_0=unknown+else+  cat confdefs.h - <<_ACEOF >conftest.$ac_ext+/* end confdefs.h.  */+#include <stdio.h>+int+main ()+{++     int op = 0, level = 0, eax, ebx, ecx, edx;+     FILE *f;+      __asm__ __volatile__ ("xchg %%ebx, %1\n"+        "cpuid\n"+        "xchg %%ebx, %1\n"+        : "=a" (eax), "=r" (ebx), "=c" (ecx), "=d" (edx)+        : "a" (op), "2" (level));++     f = fopen("conftest_cpuid", "w"); if (!f) return 1;+     fprintf(f, "%x:%x:%x:%x\n", eax, ebx, ecx, edx);+     fclose(f);+     return 0;++  ;+  return 0;+}+_ACEOF+if ac_fn_c_try_run "$LINENO"; then :+  ax_cv_gcc_x86_cpuid_0=`cat conftest_cpuid`; rm -f conftest_cpuid+else+  ax_cv_gcc_x86_cpuid_0=unknown; rm -f conftest_cpuid+fi+rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \+  conftest.$ac_objext conftest.beam conftest.$ac_ext+fi++fi+{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ax_cv_gcc_x86_cpuid_0" >&5+$as_echo "$ax_cv_gcc_x86_cpuid_0" >&6; }+ac_ext=c+ac_cpp='$CPP $CPPFLAGS'+ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5'+ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5'+ac_compiler_gnu=$ac_cv_c_compiler_gnu+++++ac_ext=c+ac_cpp='$CPP $CPPFLAGS'+ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5'+ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5'+ac_compiler_gnu=$ac_cv_c_compiler_gnu++{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for x86 cpuid 1 output" >&5+$as_echo_n "checking for x86 cpuid 1 output... " >&6; }+if ${ax_cv_gcc_x86_cpuid_1+:} false; then :+  $as_echo_n "(cached) " >&6+else+  if test "$cross_compiling" = yes; then :+  ax_cv_gcc_x86_cpuid_1=unknown+else+  cat confdefs.h - <<_ACEOF >conftest.$ac_ext+/* end confdefs.h.  */+#include <stdio.h>+int+main ()+{++     int op = 1, level = 0, eax, ebx, ecx, edx;+     FILE *f;+      __asm__ __volatile__ ("xchg %%ebx, %1\n"+        "cpuid\n"+        "xchg %%ebx, %1\n"+        : "=a" (eax), "=r" (ebx), "=c" (ecx), "=d" (edx)+        : "a" (op), "2" (level));++     f = fopen("conftest_cpuid", "w"); if (!f) return 1;+     fprintf(f, "%x:%x:%x:%x\n", eax, ebx, ecx, edx);+     fclose(f);+     return 0;++  ;+  return 0;+}+_ACEOF+if ac_fn_c_try_run "$LINENO"; then :+  ax_cv_gcc_x86_cpuid_1=`cat conftest_cpuid`; rm -f conftest_cpuid+else+  ax_cv_gcc_x86_cpuid_1=unknown; rm -f conftest_cpuid+fi+rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \+  conftest.$ac_objext conftest.beam conftest.$ac_ext+fi++fi+{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ax_cv_gcc_x86_cpuid_1" >&5+$as_echo "$ax_cv_gcc_x86_cpuid_1" >&6; }+ac_ext=c+ac_cpp='$CPP $CPPFLAGS'+ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5'+ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5'+ac_compiler_gnu=$ac_cv_c_compiler_gnu++++     case $ax_cv_gcc_x86_cpuid_0 in+       *:756e6547:6c65746e:49656e69) # Intel+          case $ax_cv_gcc_x86_cpuid_1 in+	    *5[4578]?:*:*:*) ax_gcc_arch="pentium-mmx pentium" ;;+	    *5[123]?:*:*:*) ax_gcc_arch=pentium ;;+	    *0?61?:*:*:*|?61?:*:*:*|61?:*:*:*) ax_gcc_arch=pentiumpro ;;+	    *0?6[356]?:*:*:*|?6[356]?:*:*:*|6[356]?:*:*:*) ax_gcc_arch="pentium2 pentiumpro" ;;+	    *0?6[78ab]?:*:*:*|?6[78ab]?:*:*:*|6[78ab]?:*:*:*) ax_gcc_arch="pentium3 pentiumpro" ;;+	    *0?6[9d]?:*:*:*|?6[9d]?:*:*:*|6[9d]?:*:*:*|*1?65?:*:*:*) ax_gcc_arch="pentium-m pentium3 pentiumpro" ;;+	    *0?6e?:*:*:*|?6e?:*:*:*|6e?:*:*:*) ax_gcc_arch="yonah pentium-m pentium3 pentiumpro" ;;+	    *0?6f?:*:*:*|?6f?:*:*:*|6f?:*:*:*|*1?66?:*:*:*) ax_gcc_arch="core2 pentium-m pentium3 pentiumpro" ;;+	    *1?6[7d]?:*:*:*) ax_gcc_arch="penryn core2 pentium-m pentium3 pentiumpro" ;;+	    *1?6[aef]?:*:*:*|*2?6e?:*:*:*) ax_gcc_arch="nehalem corei7 core2 pentium-m pentium3 pentiumpro" ;;+	    *2?6[5cf]?:*:*:*) ax_gcc_arch="westmere corei7 core2 pentium-m pentium3 pentiumpro" ;;+	    *2?6[ad]?:*:*:*) ax_gcc_arch="sandybridge corei7-avx corei7 core2 pentium-m pentium3 pentiumpro" ;;+	    *3?6[ae]?:*:*:*) ax_gcc_arch="ivybridge core-avx-i corei7-avx corei7 core2 pentium-m pentium3 pentiumpro" ;;+	    *3?6[cf]?:*:*:*|*4?6[56]?:*:*:*) ax_gcc_arch="haswell core-avx2 core-avx-i corei7-avx corei7 core2 pentium-m pentium3 pentiumpro" ;;+	    *3?6d?:*:*:*|*4?6[7f]?:*:*:*|*5?66?:*:*:*) ax_gcc_arch="broadwell core-avx2 core-avx-i corei7-avx corei7 core2 pentium-m pentium3 pentiumpro" ;;+	    *1?6c?:*:*:*|*2?6[67]?:*:*:*|*3?6[56]?:*:*:*) ax_gcc_arch="bonnell atom core2 pentium-m pentium3 pentiumpro" ;;+	    *3?67?:*:*:*|*[45]?6[ad]?:*:*:*) ax_gcc_arch="silvermont atom core2 pentium-m pentium3 pentiumpro" ;;+	    *000?f[012]?:*:*:*|?f[012]?:*:*:*|f[012]?:*:*:*) ax_gcc_arch="pentium4 pentiumpro" ;;+	    *000?f[346]?:*:*:*|?f[346]?:*:*:*|f[346]?:*:*:*) ax_gcc_arch="nocona prescott pentium4 pentiumpro" ;;+	    # fallback+	    *5??:*:*:*) ax_gcc_arch=pentium ;;+	    *??6??:*:*:*) ax_gcc_arch="core2 pentiumpro" ;;+	    *6??:*:*:*) ax_gcc_arch=pentiumpro ;;+	    *00??f??:*:*:*|??f??:*:*:*|?f??:*:*:*|f??:*:*:*) ax_gcc_arch="pentium4 pentiumpro" ;;+          esac ;;+       *:68747541:444d4163:69746e65) # AMD+          case $ax_cv_gcc_x86_cpuid_1 in+	    *5[67]?:*:*:*) ax_gcc_arch=k6 ;;+	    *5[8]?:*:*:*) ax_gcc_arch="k6-2 k6" ;;+	    *5[9d]?:*:*:*) ax_gcc_arch="k6-3 k6" ;;+	    *6[12]?:*:*:*) ax_gcc_arch="athlon k7" ;;+	    *6[34]?:*:*:*) ax_gcc_arch="athlon-tbird k7" ;;+	    *6[678a]?:*:*:*) ax_gcc_arch="athlon-xp athlon-4 athlon k7" ;;+	    *000?f[4578bcef]?:*:*:*|?f[4578bcef]?:*:*:*|f[4578bcef]?:*:*:*|*001?f[4578bcf]?:*:*:*|1?f[4578bcf]?:*:*:*) ax_gcc_arch="athlon64 k8" ;;+	    *002?f[13457bcf]?:*:*:*|2?f[13457bcf]?:*:*:*|*004?f[138bcf]?:*:*:*|4?f[138bcf]?:*:*:*|*005?f[df]?:*:*:*|5?f[df]?:*:*:*|*006?f[8bcf]?:*:*:*|6?f[8bcf]?:*:*:*|*007?f[cf]?:*:*:*|7?f[cf]?:*:*:*|*00c?f1?:*:*:*|c?f1?:*:*:*|*020?f3?:*:*:*|20?f3?:*:*:*) ax_gcc_arch="athlon64-sse3 k8-sse3 athlon64 k8" ;;+	    *010?f[245689a]?:*:*:*|10?f[245689a]?:*:*:*|*030?f1?:*:*:*|30?f1?:*:*:*) ax_gcc_arch="barcelona amdfam10 k8" ;;+	    *050?f[12]?:*:*:*|50?f[12]?:*:*:*) ax_gcc_arch="btver1 amdfam10 k8" ;;+	    *060?f1?:*:*:*|60?f1?:*:*:*) ax_gcc_arch="bdver1 amdfam10 k8" ;;+	    *060?f2?:*:*:*|60?f2?:*:*:*|*061?f[03]?:*:*:*|61?f[03]?:*:*:*) ax_gcc_arch="bdver2 bdver1 amdfam10 k8" ;;+	    *063?f0?:*:*:*|63?f0?:*:*:*) ax_gcc_arch="bdver3 bdver2 bdver1 amdfam10 k8" ;;+	    *07[03]?f0?:*:*:*|7[03]?f0?:*:*:*) ax_gcc_arch="btver2 btver1 amdfam10 k8" ;;+	    # fallback+	    *0[13]??f??:*:*:*|[13]??f??:*:*:*) ax_gcc_arch="barcelona amdfam10 k8" ;;+	    *020?f??:*:*:*|20?f??:*:*:*) ax_gcc_arch="athlon64-sse3 k8-sse3 athlon64 k8" ;;+	    *05??f??:*:*:*|5??f??:*:*:*) ax_gcc_arch="btver1 amdfam10 k8" ;;+	    *060?f??:*:*:*|60?f??:*:*:*) ax_gcc_arch="bdver1 amdfam10 k8" ;;+	    *061?f??:*:*:*|61?f??:*:*:*) ax_gcc_arch="bdver2 bdver1 amdfam10 k8" ;;+	    *06??f??:*:*:*|6??f??:*:*:*) ax_gcc_arch="bdver3 bdver2 bdver1 amdfam10 k8" ;;+	    *070?f??:*:*:*|70?f??:*:*:*) ax_gcc_arch="btver2 btver1 amdfam10 k8" ;;+	    *???f??:*:*:*) ax_gcc_arch="amdfam10 k8" ;;+          esac ;;+	*:746e6543:736c7561:48727561) # IDT / VIA (Centaur)+	   case $ax_cv_gcc_x86_cpuid_1 in+	     *54?:*:*:*) ax_gcc_arch=winchip-c6 ;;+	     *5[89]?:*:*:*) ax_gcc_arch=winchip2 ;;+	     *66?:*:*:*) ax_gcc_arch=winchip2 ;;+	     *6[78]?:*:*:*) ax_gcc_arch=c3 ;;+	     *6[9adf]?:*:*:*) ax_gcc_arch="c3-2 c3" ;;+	   esac ;;+     esac+     if test x"$ax_gcc_arch" = x; then # fallback+	case $host_cpu in+	  i586*) ax_gcc_arch=pentium ;;+	  i686*) ax_gcc_arch=pentiumpro ;;+        esac+     fi+     ;;++  sparc*)+     # Extract the first word of "prtdiag", so it can be a program name with args.+set dummy prtdiag; ac_word=$2+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5+$as_echo_n "checking for $ac_word... " >&6; }+if ${ac_cv_path_PRTDIAG+:} false; then :+  $as_echo_n "(cached) " >&6+else+  case $PRTDIAG in+  [\\/]* | ?:[\\/]*)+  ac_cv_path_PRTDIAG="$PRTDIAG" # Let the user override the test with a path.+  ;;+  *)+  as_save_IFS=$IFS; IFS=$PATH_SEPARATOR+as_dummy="$PATH:/usr/platform/`uname -i`/sbin/:/usr/platform/`uname -m`/sbin/"+for as_dir in $as_dummy+do+  IFS=$as_save_IFS+  test -z "$as_dir" && as_dir=.+    for ac_exec_ext in '' $ac_executable_extensions; do+  if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then+    ac_cv_path_PRTDIAG="$as_dir/$ac_word$ac_exec_ext"+    $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5+    break 2+  fi+done+  done+IFS=$as_save_IFS++  test -z "$ac_cv_path_PRTDIAG" && ac_cv_path_PRTDIAG="prtdiag"+  ;;+esac+fi+PRTDIAG=$ac_cv_path_PRTDIAG+if test -n "$PRTDIAG"; then+  { $as_echo "$as_me:${as_lineno-$LINENO}: result: $PRTDIAG" >&5+$as_echo "$PRTDIAG" >&6; }+else+  { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5+$as_echo "no" >&6; }+fi+++     cputype=`(((grep cpu /proc/cpuinfo | cut -d: -f2) ; ($PRTDIAG -v |grep -i sparc) ; grep -i cpu /var/run/dmesg.boot ) | head -n 1) 2> /dev/null`+     cputype=`echo "$cputype" | tr -d ' -' | $SED 's/SPARCIIi/SPARCII/' |tr $as_cr_LETTERS $as_cr_letters`+     case $cputype in+         *ultrasparciv*) ax_gcc_arch="ultrasparc4 ultrasparc3 ultrasparc v9" ;;+         *ultrasparciii*) ax_gcc_arch="ultrasparc3 ultrasparc v9" ;;+         *ultrasparc*) ax_gcc_arch="ultrasparc v9" ;;+         *supersparc*|*tms390z5[05]*) ax_gcc_arch="supersparc v8" ;;+         *hypersparc*|*rt62[056]*) ax_gcc_arch="hypersparc v8" ;;+         *cypress*) ax_gcc_arch=cypress ;;+     esac ;;++  alphaev5) ax_gcc_arch=ev5 ;;+  alphaev56) ax_gcc_arch=ev56 ;;+  alphapca56) ax_gcc_arch="pca56 ev56" ;;+  alphapca57) ax_gcc_arch="pca57 pca56 ev56" ;;+  alphaev6) ax_gcc_arch=ev6 ;;+  alphaev67) ax_gcc_arch=ev67 ;;+  alphaev68) ax_gcc_arch="ev68 ev67" ;;+  alphaev69) ax_gcc_arch="ev69 ev68 ev67" ;;+  alphaev7) ax_gcc_arch="ev7 ev69 ev68 ev67" ;;+  alphaev79) ax_gcc_arch="ev79 ev7 ev69 ev68 ev67" ;;++  powerpc*)+     cputype=`((grep cpu /proc/cpuinfo | head -n 1 | cut -d: -f2 | cut -d, -f1 | $SED 's/ //g') ; /usr/bin/machine ; /bin/machine; grep CPU /var/run/dmesg.boot | head -n 1 | cut -d" " -f2) 2> /dev/null`+     cputype=`echo $cputype | $SED -e 's/ppc//g;s/ *//g'`+     case $cputype in+       *750*) ax_gcc_arch="750 G3" ;;+       *740[0-9]*) ax_gcc_arch="$cputype 7400 G4" ;;+       *74[4-5][0-9]*) ax_gcc_arch="$cputype 7450 G4" ;;+       *74[0-9][0-9]*) ax_gcc_arch="$cputype G4" ;;+       *970*) ax_gcc_arch="970 G5 power4";;+       *POWER4*|*power4*|*gq*) ax_gcc_arch="power4 970";;+       *POWER5*|*power5*|*gr*|*gs*) ax_gcc_arch="power5 power4 970";;+       603ev|8240) ax_gcc_arch="$cputype 603e 603";;+       *POWER7*) ax_gcc_arch="power7";;+       *POWER8*) ax_gcc_arch="power8";;+       *POWER9*) ax_gcc_arch="power9";;+       *POWER10*) ax_gcc_arch="power10";;+       *) ax_gcc_arch=$cputype ;;+     esac+     ax_gcc_arch="$ax_gcc_arch powerpc"+     ;;+  aarch64)+     cpuimpl=`grep 'CPU implementer' /proc/cpuinfo 2> /dev/null | cut -d: -f2 | tr -d " " | head -n 1`+     cpuarch=`grep 'CPU architecture' /proc/cpuinfo 2> /dev/null | cut -d: -f2 | tr -d " " | head -n 1`+     cpuvar=`grep 'CPU variant' /proc/cpuinfo 2> /dev/null | cut -d: -f2 | tr -d " " | head -n 1`+     case $cpuimpl in+       0x42) case $cpuarch in+               8) case $cpuvar in+                    0x0) ax_gcc_arch="thunderx2t99 vulcan armv8.1-a armv8-a+lse armv8-a native" ;;+                  esac+                  ;;+             esac+             ;;+       0x43) case $cpuarch in+               8) case $cpuvar in+                    0x0) ax_gcc_arch="thunderx armv8-a native" ;;+                    0x1) ax_gcc_arch="thunderx+lse armv8.1-a armv8-a+lse armv8-a native" ;;+                  esac+                  ;;+             esac+             ;;+      esac+      ;;+esac+fi # not cross-compiling+fi # guess arch++if test "x$ax_gcc_arch" != x -a "x$ax_gcc_arch" != xno; then+if test "x$acx_maxopt_portable" = xyes; then # if we require portable code+  flag_prefixes="-mtune="+  if test "x$ax_cv_c_compiler_vendor" = xclang; then flag_prefixes="-march="; fi+  # -mcpu=$arch and m$arch generate nonportable code on every arch except+  # x86.  And some other arches (e.g. Alpha) don't accept -mtune.  Grrr.+  case $host_cpu in i*86|x86_64*|amd64*) flag_prefixes="$flag_prefixes -mcpu= -m";; esac+else+  flag_prefixes="-march= -mcpu= -m"+fi+for flag_prefix in $flag_prefixes; do+  for arch in $ax_gcc_arch; do+    flag="$flag_prefix$arch"+    as_CACHEVAR=`$as_echo "ax_cv_check_cflags__$flag" | $as_tr_sh`+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether the C compiler accepts $flag" >&5+$as_echo_n "checking whether the C compiler accepts $flag... " >&6; }+if eval \${$as_CACHEVAR+:} false; then :+  $as_echo_n "(cached) " >&6+else++  ax_check_save_flags=$CFLAGS+  if test x"$GCC" = xyes ; then+    add_gnu_werror="-Werror"+  fi+  CFLAGS="$CFLAGS  $flag $add_gnu_werror"+  cat confdefs.h - <<_ACEOF >conftest.$ac_ext+/* end confdefs.h.  */++int+main ()+{++  ;+  return 0;+}+_ACEOF+if ac_fn_c_try_compile "$LINENO"; then :+  eval "$as_CACHEVAR=yes"+else+  eval "$as_CACHEVAR=no"+fi+rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext+  CFLAGS=$ax_check_save_flags+fi+eval ac_res=\$$as_CACHEVAR+	       { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_res" >&5+$as_echo "$ac_res" >&6; }+if eval test \"x\$"$as_CACHEVAR"\" = x"yes"; then :+  if test "x$ax_cv_c_compiler_vendor" = xclang; then+      if test "x$acx_maxopt_portable" = xyes; then+	if test "x$flag" = "x-march=$arch"; then flag=-mtune=$arch; fi+      fi+    fi; ax_cv_gcc_archflag=$flag; break+else+  :+fi++  done+  test "x$ax_cv_gcc_archflag" = xunknown || break+done+fi++fi # $GCC=yes++fi++{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for gcc architecture flag" >&5+$as_echo_n "checking for gcc architecture flag... " >&6; }+{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ax_cv_gcc_archflag" >&5+$as_echo "$ax_cv_gcc_archflag" >&6; }+if test "x$ax_cv_gcc_archflag" = xunknown; then+  :+else+  CFLAGS="$CFLAGS $ax_cv_gcc_archflag"+fi++     ;;++    microsoft)+     # default optimization flags for MSVC opt builds+     CFLAGS="$CFLAGS -O2"+     ;;+  esac++  if test -z "$CFLAGS"; then+	echo ""+	echo "********************************************************"+        echo "* WARNING: Don't know the best CFLAGS for this system  *"+        echo "* Use ./configure CFLAGS=... to specify your own flags *"+	echo "* (otherwise, a default of CFLAGS=-O3 will be used)    *"+	echo "********************************************************"+	echo ""+        CFLAGS="$CFLAGS -O3"+  fi++  as_CACHEVAR=`$as_echo "ax_cv_check_cflags__$CFLAGS" | $as_tr_sh`+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether the C compiler accepts $CFLAGS" >&5+$as_echo_n "checking whether the C compiler accepts $CFLAGS... " >&6; }+if eval \${$as_CACHEVAR+:} false; then :+  $as_echo_n "(cached) " >&6+else++  ax_check_save_flags=$CFLAGS+  if test x"$GCC" = xyes ; then+    add_gnu_werror="-Werror"+  fi+  CFLAGS="$CFLAGS  $CFLAGS $add_gnu_werror"+  cat confdefs.h - <<_ACEOF >conftest.$ac_ext+/* end confdefs.h.  */++int+main ()+{++  ;+  return 0;+}+_ACEOF+if ac_fn_c_try_compile "$LINENO"; then :+  eval "$as_CACHEVAR=yes"+else+  eval "$as_CACHEVAR=no"+fi+rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext+  CFLAGS=$ax_check_save_flags+fi+eval ac_res=\$$as_CACHEVAR+	       { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_res" >&5+$as_echo "$ac_res" >&6; }+if eval test \"x\$"$as_CACHEVAR"\" = x"yes"; then :+  :+else++	echo ""+        echo "********************************************************"+        echo "* WARNING: The guessed CFLAGS don't seem to work with  *"+        echo "* your compiler.                                       *"+        echo "* Use ./configure CFLAGS=... to specify your own flags *"+        echo "********************************************************"+        echo ""++fi+++fi++# The AX_CFLAGS_WARN_ALL macro doesn't currently work for sunpro+# compiler.+if test "$ax_cv_c_compiler_vendor" != "sun"; then+      ac_ext=c+ac_cpp='$CPP $CPPFLAGS'+ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5'+ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5'+ac_compiler_gnu=$ac_cv_c_compiler_gnu++++++    { $as_echo "$as_me:${as_lineno-$LINENO}: checking CFLAGS for most reasonable warnings" >&5+$as_echo_n "checking CFLAGS for most reasonable warnings... " >&6; }+if ${ac_cv_cflags_warn_all+:} false; then :+  $as_echo_n "(cached) " >&6+else++	ac_cv_cflags_warn_all=""+	ac_save_cflags_warn_all_found="yes"+		case "$ax_cv_c_compiler_vendor" in #(+  intel) :+    ac_cv_cflags_warn_all="-w2" ;; #(+  ibm) :+    ac_cv_cflags_warn_all="-qsrcmsg -qinfo=all:noppt:noppc:noobs:nocnd" ;; #(+  pathscale) :+     ;; #(+  clang) :+    ac_cv_cflags_warn_all="-Wall" ;; #(+  cray) :+    ac_cv_cflags_warn_all="-h msglevel 2" ;; #(+  fujitsu) :+     ;; #(+  sdcc) :+     ;; #(+  sx) :+    ac_cv_cflags_warn_all="-pvctl,fullmsg" ;; #(+  portland) :+     ;; #(+  gnu) :+    ac_cv_cflags_warn_all="-Wall" ;; #(+  sun) :+    ac_cv_cflags_warn_all="-v" ;; #(+  hp) :+    ac_cv_cflags_warn_all="+w1" ;; #(+  dec) :+    ac_cv_cflags_warn_all="-verbose -w0 -warnprotos" ;; #(+  borland) :+     ;; #(+  comeau) :+     ;; #(+  kai) :+     ;; #(+  lcc) :+     ;; #(+  sgi) :+    ac_cv_cflags_warn_all="-fullwarn" ;; #(+  microsoft) :+     ;; #(+  metrowerks) :+     ;; #(+  watcom) :+     ;; #(+  tcc) :+     ;; #(+  unknown) :++				    ac_cv_cflags_warn_all=""+				    ac_save_cflags_warn_all_found="no"+				 ;; #(+  *) :++				    { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: Unknown compiler vendor returned by AX_COMPILER_VENDOR" >&5+$as_echo "$as_me: WARNING: Unknown compiler vendor returned by AX_COMPILER_VENDOR" >&2;}+				    ac_cv_cflags_warn_all=""+				    ac_save_cflags_warn_all_found="no"++	 ;;+esac++	if test "x$ac_save_cflags_warn_all_found" = "xyes"; then :+  	    if test "x$ac_cv_cflags_warn_all" != "x"; then :++if ${CFLAGS+:} false; then :++  case " $CFLAGS " in #(+  *" $ac_cv_cflags_warn_all "*) :+    { { $as_echo "$as_me:${as_lineno-$LINENO}: : CFLAGS already contains \$ac_cv_cflags_warn_all"; } >&5+  (: CFLAGS already contains $ac_cv_cflags_warn_all) 2>&5+  ac_status=$?+  $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5+  test $ac_status = 0; } ;; #(+  *) :++     CFLAGS="$ac_cv_cflags_warn_all $CFLAGS"+     { { $as_echo "$as_me:${as_lineno-$LINENO}: : CFLAGS=\"\$CFLAGS\""; } >&5+  (: CFLAGS="$CFLAGS") 2>&5+  ac_status=$?+  $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5+  test $ac_status = 0; }+     ;;+esac++else++  CFLAGS=$ac_cv_cflags_warn_all+  { { $as_echo "$as_me:${as_lineno-$LINENO}: : CFLAGS=\"\$CFLAGS\""; } >&5+  (: CFLAGS="$CFLAGS") 2>&5+  ac_status=$?+  $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5+  test $ac_status = 0; }++fi++fi++else+  	    true++fi+fi+{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_cflags_warn_all" >&5+$as_echo "$ac_cv_cflags_warn_all" >&6; }++    ac_ext=c+ac_cpp='$CPP $CPPFLAGS'+ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5'+ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5'+ac_compiler_gnu=$ac_cv_c_compiler_gnu+++fi++if test "x$GCC" = "xyes"; then+  CFLAGS="$CFLAGS -fexceptions"+fi++cat > local.exp <<EOF+set CC_FOR_TARGET "$CC"+set CXX_FOR_TARGET "$CXX"+set compiler_vendor "$ax_cv_c_compiler_vendor"+EOF+++{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether to enable maintainer-specific portions of Makefiles" >&5+$as_echo_n "checking whether to enable maintainer-specific portions of Makefiles... " >&6; }+    # Check whether --enable-maintainer-mode was given.+if test "${enable_maintainer_mode+set}" = set; then :+  enableval=$enable_maintainer_mode; USE_MAINTAINER_MODE=$enableval+else+  USE_MAINTAINER_MODE=no+fi++  { $as_echo "$as_me:${as_lineno-$LINENO}: result: $USE_MAINTAINER_MODE" >&5+$as_echo "$USE_MAINTAINER_MODE" >&6; }+   if test $USE_MAINTAINER_MODE = yes; then+  MAINTAINER_MODE_TRUE=+  MAINTAINER_MODE_FALSE='#'+else+  MAINTAINER_MODE_TRUE='#'+  MAINTAINER_MODE_FALSE=+fi++  MAINT=$MAINTAINER_MODE_TRUE++++for ac_header in sys/memfd.h+do :+  ac_fn_c_check_header_mongrel "$LINENO" "sys/memfd.h" "ac_cv_header_sys_memfd_h" "$ac_includes_default"+if test "x$ac_cv_header_sys_memfd_h" = xyes; then :+  cat >>confdefs.h <<_ACEOF+#define HAVE_SYS_MEMFD_H 1+_ACEOF++fi++done++for ac_func in memfd_create+do :+  ac_fn_c_check_func "$LINENO" "memfd_create" "ac_cv_func_memfd_create"+if test "x$ac_cv_func_memfd_create" = xyes; then :+  cat >>confdefs.h <<_ACEOF+#define HAVE_MEMFD_CREATE 1+_ACEOF++fi+done+++HAVE_LONG_DOUBLE_VARIANT=0++. ${srcdir}/configure.host++if test -n "${UNSUPPORTED}"; then+  as_fn_error $? "\"libffi has not been ported to $host.\"" "$LINENO" 5+fi++++++for ac_func in memcpy+do :+  ac_fn_c_check_func "$LINENO" "memcpy" "ac_cv_func_memcpy"+if test "x$ac_cv_func_memcpy" = xyes; then :+  cat >>confdefs.h <<_ACEOF+#define HAVE_MEMCPY 1+_ACEOF++fi+done++for ac_header in alloca.h+do :+  ac_fn_c_check_header_mongrel "$LINENO" "alloca.h" "ac_cv_header_alloca_h" "$ac_includes_default"+if test "x$ac_cv_header_alloca_h" = xyes; then :+  cat >>confdefs.h <<_ACEOF+#define HAVE_ALLOCA_H 1+_ACEOF++fi++done+++# The cast to long int works around a bug in the HP C Compiler+# version HP92453-01 B.11.11.23709.GP, which incorrectly rejects+# declarations like `int a3[[(sizeof (unsigned char)) >= 0]];'.+# This bug is HP SR number 8606223364.+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking size of double" >&5+$as_echo_n "checking size of double... " >&6; }+if ${ac_cv_sizeof_double+:} false; then :+  $as_echo_n "(cached) " >&6+else+  if ac_fn_c_compute_int "$LINENO" "(long int) (sizeof (double))" "ac_cv_sizeof_double"        "$ac_includes_default"; then :++else+  if test "$ac_cv_type_double" = yes; then+     { { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5+$as_echo "$as_me: error: in \`$ac_pwd':" >&2;}+as_fn_error 77 "cannot compute sizeof (double)+See \`config.log' for more details" "$LINENO" 5; }+   else+     ac_cv_sizeof_double=0+   fi+fi++fi+{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_sizeof_double" >&5+$as_echo "$ac_cv_sizeof_double" >&6; }++++cat >>confdefs.h <<_ACEOF+#define SIZEOF_DOUBLE $ac_cv_sizeof_double+_ACEOF+++# The cast to long int works around a bug in the HP C Compiler+# version HP92453-01 B.11.11.23709.GP, which incorrectly rejects+# declarations like `int a3[[(sizeof (unsigned char)) >= 0]];'.+# This bug is HP SR number 8606223364.+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking size of long double" >&5+$as_echo_n "checking size of long double... " >&6; }+if ${ac_cv_sizeof_long_double+:} false; then :+  $as_echo_n "(cached) " >&6+else+  if ac_fn_c_compute_int "$LINENO" "(long int) (sizeof (long double))" "ac_cv_sizeof_long_double"        "$ac_includes_default"; then :++else+  if test "$ac_cv_type_long_double" = yes; then+     { { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5+$as_echo "$as_me: error: in \`$ac_pwd':" >&2;}+as_fn_error 77 "cannot compute sizeof (long double)+See \`config.log' for more details" "$LINENO" 5; }+   else+     ac_cv_sizeof_long_double=0+   fi+fi++fi+{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_sizeof_long_double" >&5+$as_echo "$ac_cv_sizeof_long_double" >&6; }++++cat >>confdefs.h <<_ACEOF+#define SIZEOF_LONG_DOUBLE $ac_cv_sizeof_long_double+_ACEOF++++# Also AC_SUBST this variable for ffi.h.+if test -z "$HAVE_LONG_DOUBLE"; then+  HAVE_LONG_DOUBLE=0+  if test $ac_cv_sizeof_long_double != 0; then+    if test $HAVE_LONG_DOUBLE_VARIANT != 0; then++$as_echo "#define HAVE_LONG_DOUBLE_VARIANT 1" >>confdefs.h++      HAVE_LONG_DOUBLE=1+    else+      if test $ac_cv_sizeof_double != $ac_cv_sizeof_long_double; then+        HAVE_LONG_DOUBLE=1++$as_echo "#define HAVE_LONG_DOUBLE 1" >>confdefs.h++      fi+    fi+  fi+fi++++ac_fn_c_check_type "$LINENO" "__int128_t" "ac_cv_type___int128_t" "$ac_includes_default"+if test "x$ac_cv_type___int128_t" = xyes; then :++$as_echo "#define HAVE_INT128 1" >>confdefs.h++fi+++ { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether byte ordering is bigendian" >&5+$as_echo_n "checking whether byte ordering is bigendian... " >&6; }+if ${ac_cv_c_bigendian+:} false; then :+  $as_echo_n "(cached) " >&6+else+  ac_cv_c_bigendian=unknown+    # See if we're dealing with a universal compiler.+    cat confdefs.h - <<_ACEOF >conftest.$ac_ext+/* end confdefs.h.  */+#ifndef __APPLE_CC__+	       not a universal capable compiler+	     #endif+	     typedef int dummy;++_ACEOF+if ac_fn_c_try_compile "$LINENO"; then :++	# Check for potential -arch flags.  It is not universal unless+	# there are at least two -arch flags with different values.+	ac_arch=+	ac_prev=+	for ac_word in $CC $CFLAGS $CPPFLAGS $LDFLAGS; do+	 if test -n "$ac_prev"; then+	   case $ac_word in+	     i?86 | x86_64 | ppc | ppc64)+	       if test -z "$ac_arch" || test "$ac_arch" = "$ac_word"; then+		 ac_arch=$ac_word+	       else+		 ac_cv_c_bigendian=universal+		 break+	       fi+	       ;;+	   esac+	   ac_prev=+	 elif test "x$ac_word" = "x-arch"; then+	   ac_prev=arch+	 fi+       done+fi+rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext+    if test $ac_cv_c_bigendian = unknown; then+      # See if sys/param.h defines the BYTE_ORDER macro.+      cat confdefs.h - <<_ACEOF >conftest.$ac_ext+/* end confdefs.h.  */+#include <sys/types.h>+	     #include <sys/param.h>++int+main ()+{+#if ! (defined BYTE_ORDER && defined BIG_ENDIAN \+		     && defined LITTLE_ENDIAN && BYTE_ORDER && BIG_ENDIAN \+		     && LITTLE_ENDIAN)+	      bogus endian macros+	     #endif++  ;+  return 0;+}+_ACEOF+if ac_fn_c_try_compile "$LINENO"; then :+  # It does; now see whether it defined to BIG_ENDIAN or not.+	 cat confdefs.h - <<_ACEOF >conftest.$ac_ext+/* end confdefs.h.  */+#include <sys/types.h>+		#include <sys/param.h>++int+main ()+{+#if BYTE_ORDER != BIG_ENDIAN+		 not big endian+		#endif++  ;+  return 0;+}+_ACEOF+if ac_fn_c_try_compile "$LINENO"; then :+  ac_cv_c_bigendian=yes+else+  ac_cv_c_bigendian=no+fi+rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext+fi+rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext+    fi+    if test $ac_cv_c_bigendian = unknown; then+      # See if <limits.h> defines _LITTLE_ENDIAN or _BIG_ENDIAN (e.g., Solaris).+      cat confdefs.h - <<_ACEOF >conftest.$ac_ext+/* end confdefs.h.  */+#include <limits.h>++int+main ()+{+#if ! (defined _LITTLE_ENDIAN || defined _BIG_ENDIAN)+	      bogus endian macros+	     #endif++  ;+  return 0;+}+_ACEOF+if ac_fn_c_try_compile "$LINENO"; then :+  # It does; now see whether it defined to _BIG_ENDIAN or not.+	 cat confdefs.h - <<_ACEOF >conftest.$ac_ext+/* end confdefs.h.  */+#include <limits.h>++int+main ()+{+#ifndef _BIG_ENDIAN+		 not big endian+		#endif++  ;+  return 0;+}+_ACEOF+if ac_fn_c_try_compile "$LINENO"; then :+  ac_cv_c_bigendian=yes+else+  ac_cv_c_bigendian=no+fi+rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext+fi+rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext+    fi+    if test $ac_cv_c_bigendian = unknown; then+      # Compile a test program.+      if test "$cross_compiling" = yes; then :+  # Try to guess by grepping values from an object file.+	 cat confdefs.h - <<_ACEOF >conftest.$ac_ext+/* end confdefs.h.  */+short int ascii_mm[] =+		  { 0x4249, 0x4765, 0x6E44, 0x6961, 0x6E53, 0x7953, 0 };+		short int ascii_ii[] =+		  { 0x694C, 0x5454, 0x656C, 0x6E45, 0x6944, 0x6E61, 0 };+		int use_ascii (int i) {+		  return ascii_mm[i] + ascii_ii[i];+		}+		short int ebcdic_ii[] =+		  { 0x89D3, 0xE3E3, 0x8593, 0x95C5, 0x89C4, 0x9581, 0 };+		short int ebcdic_mm[] =+		  { 0xC2C9, 0xC785, 0x95C4, 0x8981, 0x95E2, 0xA8E2, 0 };+		int use_ebcdic (int i) {+		  return ebcdic_mm[i] + ebcdic_ii[i];+		}+		extern int foo;++int+main ()+{+return use_ascii (foo) == use_ebcdic (foo);+  ;+  return 0;+}+_ACEOF+if ac_fn_c_try_compile "$LINENO"; then :+  if grep BIGenDianSyS conftest.$ac_objext >/dev/null; then+	      ac_cv_c_bigendian=yes+	    fi+	    if grep LiTTleEnDian conftest.$ac_objext >/dev/null ; then+	      if test "$ac_cv_c_bigendian" = unknown; then+		ac_cv_c_bigendian=no+	      else+		# finding both strings is unlikely to happen, but who knows?+		ac_cv_c_bigendian=unknown+	      fi+	    fi+fi+rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext+else+  cat confdefs.h - <<_ACEOF >conftest.$ac_ext+/* end confdefs.h.  */+$ac_includes_default+int+main ()+{++	     /* Are we little or big endian?  From Harbison&Steele.  */+	     union+	     {+	       long int l;+	       char c[sizeof (long int)];+	     } u;+	     u.l = 1;+	     return u.c[sizeof (long int) - 1] == 1;++  ;+  return 0;+}+_ACEOF+if ac_fn_c_try_run "$LINENO"; then :+  ac_cv_c_bigendian=no+else+  ac_cv_c_bigendian=yes+fi+rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \+  conftest.$ac_objext conftest.beam conftest.$ac_ext+fi++    fi+fi+{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_c_bigendian" >&5+$as_echo "$ac_cv_c_bigendian" >&6; }+ case $ac_cv_c_bigendian in #(+   yes)+     $as_echo "#define WORDS_BIGENDIAN 1" >>confdefs.h+;; #(+   no)+      ;; #(+   universal)++$as_echo "#define AC_APPLE_UNIVERSAL_BUILD 1" >>confdefs.h++     ;; #(+   *)+     as_fn_error $? "unknown endianness+ presetting ac_cv_c_bigendian=no (or yes) will help" "$LINENO" 5 ;;+ esac++++  { $as_echo "$as_me:${as_lineno-$LINENO}: checking assembler .cfi pseudo-op support" >&5+$as_echo_n "checking assembler .cfi pseudo-op support... " >&6; }+if ${gcc_cv_as_cfi_pseudo_op+:} false; then :+  $as_echo_n "(cached) " >&6+else+   ac_ext=c+ac_cpp='$CPP $CPPFLAGS'+ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5'+ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5'+ac_compiler_gnu=$ac_cv_c_compiler_gnu++    cat confdefs.h - <<_ACEOF >conftest.$ac_ext+/* end confdefs.h.  */++        #ifdef _MSC_VER+        Nope.+        #endif+        int foo (void)+        {+          __asm__ (".cfi_remember_state\n\t"+                   ".cfi_restore_state\n\t");+          return 0;+        }++_ACEOF+if ac_fn_c_try_compile "$LINENO"; then :+  gcc_cv_as_cfi_pseudo_op=yes+else+  gcc_cv_as_cfi_pseudo_op=no+fi+rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext+    ac_ext=c+ac_cpp='$CPP $CPPFLAGS'+ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5'+ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5'+ac_compiler_gnu=$ac_cv_c_compiler_gnu+++fi+{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $gcc_cv_as_cfi_pseudo_op" >&5+$as_echo "$gcc_cv_as_cfi_pseudo_op" >&6; }++  if test "x$gcc_cv_as_cfi_pseudo_op" = xyes; then++$as_echo "#define HAVE_AS_CFI_PSEUDO_OP 1" >>confdefs.h++  fi+++++case "$TARGET" in+  SPARC)+    { $as_echo "$as_me:${as_lineno-$LINENO}: checking assembler and linker support unaligned pc related relocs" >&5+$as_echo_n "checking assembler and linker support unaligned pc related relocs... " >&6; }+if ${libffi_cv_as_sparc_ua_pcrel+:} false; then :+  $as_echo_n "(cached) " >&6+else++	save_CFLAGS="$CFLAGS"+	save_LDFLAGS="$LDFLAGS"+	CFLAGS="$CFLAGS -fpic"+	LDFLAGS="$LDFLAGS -shared"+	cat confdefs.h - <<_ACEOF >conftest.$ac_ext+/* end confdefs.h.  */+asm (".text; foo: nop; .data; .align 4; .byte 0; .uaword %r_disp32(foo); .text");+int+main ()+{++  ;+  return 0;+}+_ACEOF+if ac_fn_c_try_link "$LINENO"; then :+  libffi_cv_as_sparc_ua_pcrel=yes+else+  libffi_cv_as_sparc_ua_pcrel=no+fi+rm -f core conftest.err conftest.$ac_objext \+    conftest$ac_exeext conftest.$ac_ext+	CFLAGS="$save_CFLAGS"+	LDFLAGS="$save_LDFLAGS"+fi+{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $libffi_cv_as_sparc_ua_pcrel" >&5+$as_echo "$libffi_cv_as_sparc_ua_pcrel" >&6; }+    if test "x$libffi_cv_as_sparc_ua_pcrel" = xyes; then++$as_echo "#define HAVE_AS_SPARC_UA_PCREL 1" >>confdefs.h++    fi++    { $as_echo "$as_me:${as_lineno-$LINENO}: checking assembler .register pseudo-op support" >&5+$as_echo_n "checking assembler .register pseudo-op support... " >&6; }+if ${libffi_cv_as_register_pseudo_op+:} false; then :+  $as_echo_n "(cached) " >&6+else++       libffi_cv_as_register_pseudo_op=unknown+       # Check if we have .register+       cat confdefs.h - <<_ACEOF >conftest.$ac_ext+/* end confdefs.h.  */++int+main ()+{+asm (".register %g2, #scratch");+  ;+  return 0;+}+_ACEOF+if ac_fn_c_try_compile "$LINENO"; then :+  libffi_cv_as_register_pseudo_op=yes+else+  libffi_cv_as_register_pseudo_op=no+fi+rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext++fi+{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $libffi_cv_as_register_pseudo_op" >&5+$as_echo "$libffi_cv_as_register_pseudo_op" >&6; }+    if test "x$libffi_cv_as_register_pseudo_op" = xyes; then++$as_echo "#define HAVE_AS_REGISTER_PSEUDO_OP 1" >>confdefs.h++    fi+    ;;++  X86*)+    { $as_echo "$as_me:${as_lineno-$LINENO}: checking assembler supports pc related relocs" >&5+$as_echo_n "checking assembler supports pc related relocs... " >&6; }+if ${libffi_cv_as_x86_pcrel+:} false; then :+  $as_echo_n "(cached) " >&6+else++	libffi_cv_as_x86_pcrel=no+	echo '.text; foo: nop; .data; .long foo-.; .text' > conftest.s+	if $CC $CFLAGS -c conftest.s > /dev/null 2>&1; then+	    libffi_cv_as_x86_pcrel=yes+	fi++fi+{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $libffi_cv_as_x86_pcrel" >&5+$as_echo "$libffi_cv_as_x86_pcrel" >&6; }+    if test "x$libffi_cv_as_x86_pcrel" = xyes; then++$as_echo "#define HAVE_AS_X86_PCREL 1" >>confdefs.h++    fi+    ;;++  S390)+    { $as_echo "$as_me:${as_lineno-$LINENO}: checking compiler uses zarch features" >&5+$as_echo_n "checking compiler uses zarch features... " >&6; }+if ${libffi_cv_as_s390_zarch+:} false; then :+  $as_echo_n "(cached) " >&6+else++	libffi_cv_as_s390_zarch=no+	echo 'void foo(void) { bar(); bar(); }' > conftest.c+	if $CC $CFLAGS -S conftest.c > /dev/null 2>&1; then+	    if $GREP -q brasl conftest.s; then+	        libffi_cv_as_s390_zarch=yes+	    fi+	fi++fi+{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $libffi_cv_as_s390_zarch" >&5+$as_echo "$libffi_cv_as_s390_zarch" >&6; }+    if test "x$libffi_cv_as_s390_zarch" = xyes; then++$as_echo "#define HAVE_AS_S390_ZARCH 1" >>confdefs.h++    fi+    ;;+  wasm64)+    if test -z "$WASM64_MEMORY64"; then+      WASM64_MEMORY64=1+    fi+    CFLAGS="$CFLAGS -sMEMORY64=$WASM64_MEMORY64"+    ;;+  LOONGARCH64)+    CFLAGS="$CFLAGS -mcmodel=medium"+    ;;+  LOONGARCH32)+    # No special for LoongArch32 now.+    ;;+esac++{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether compiler supports pointer authentication" >&5+$as_echo_n "checking whether compiler supports pointer authentication... " >&6; }+if ${libffi_cv_as_ptrauth+:} false; then :+  $as_echo_n "(cached) " >&6+else++   libffi_cv_as_ptrauth=unknown+   cat confdefs.h - <<_ACEOF >conftest.$ac_ext+/* end confdefs.h.  */++int+main ()+{++#ifdef __clang__+# if __has_feature(ptrauth_calls)+#  define HAVE_ARM64E_PTRAUTH 1+# endif+#endif++#ifndef HAVE_ARM64E_PTRAUTH+# error Pointer authentication not supported+#endif++  ;+  return 0;+}+_ACEOF+if ac_fn_c_try_compile "$LINENO"; then :+  libffi_cv_as_ptrauth=yes+else+  libffi_cv_as_ptrauth=no+fi+rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext++fi+{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $libffi_cv_as_ptrauth" >&5+$as_echo "$libffi_cv_as_ptrauth" >&6; }+if test "x$libffi_cv_as_ptrauth" = xyes; then++$as_echo "#define HAVE_ARM64E_PTRAUTH 1" >>confdefs.h++fi++# On PaX enable kernels that have MPROTECT enable we can't use PROT_EXEC;+# if EMUTRAMP is active too ffi could try mapping without PROT_EXEC,+# but the kernel needs to recognize the trampoline generated by ffi.+# Otherwise fallback to double mmap trick.+# Check whether --enable-pax_emutramp was given.+if test "${enable_pax_emutramp+set}" = set; then :+  enableval=$enable_pax_emutramp; if test "$enable_pax_emutramp" = "yes"; then+    { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: EMUTRAMP is experimental only.  Use --enable-pax_emutramp=experimental to enforce." >&5+$as_echo "$as_me: WARNING: EMUTRAMP is experimental only.  Use --enable-pax_emutramp=experimental to enforce." >&2;}+  elif test "$enable_pax_emutramp" = "experimental"; then++$as_echo "#define FFI_MMAP_EXEC_EMUTRAMP_PAX 1" >>confdefs.h++  fi+fi+++{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for _ prefix in compiled symbols" >&5+$as_echo_n "checking for _ prefix in compiled symbols... " >&6; }+if ${lt_cv_sys_symbol_underscore+:} false; then :+  $as_echo_n "(cached) " >&6+else+  lt_cv_sys_symbol_underscore=no+  cat > conftest.$ac_ext <<_LT_EOF+void nm_test_func(){}+int main(){nm_test_func;return 0;}+_LT_EOF+  if { { eval echo "\"\$as_me\":${as_lineno-$LINENO}: \"$ac_compile\""; } >&5+  (eval $ac_compile) 2>&5+  ac_status=$?+  $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5+  test $ac_status = 0; }; then+    # Now try to grab the symbols.+    ac_nlist=conftest.nm+    if { { eval echo "\"\$as_me\":${as_lineno-$LINENO}: \"$NM conftest.$ac_objext \| $lt_cv_sys_global_symbol_pipe \> $ac_nlist\""; } >&5+  (eval $NM conftest.$ac_objext \| $lt_cv_sys_global_symbol_pipe \> $ac_nlist) 2>&5+  ac_status=$?+  $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5+  test $ac_status = 0; } && test -s "$ac_nlist"; then+      # See whether the symbols have a leading underscore.+      if grep '^. _nm_test_func' "$ac_nlist" >/dev/null; then+        lt_cv_sys_symbol_underscore=yes+      else+        if grep '^. nm_test_func ' "$ac_nlist" >/dev/null; then+	  :+        else+	  echo "configure: cannot find nm_test_func in $ac_nlist" >&5+        fi+      fi+    else+      echo "configure: cannot run $lt_cv_sys_global_symbol_pipe" >&5+    fi+  else+    echo "configure: failed program was:" >&5+    cat conftest.c >&5+  fi+  rm -rf conftest*++fi+{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_cv_sys_symbol_underscore" >&5+$as_echo "$lt_cv_sys_symbol_underscore" >&6; }+  sys_symbol_underscore=$lt_cv_sys_symbol_underscore+++if test "x$sys_symbol_underscore" = xyes; then++$as_echo "#define SYMBOL_UNDERSCORE 1" >>confdefs.h++fi++FFI_EXEC_TRAMPOLINE_TABLE=0+case "$target" in+     *arm*-apple-* | aarch64-apple-*)+       FFI_EXEC_TRAMPOLINE_TABLE=1++$as_echo "#define FFI_EXEC_TRAMPOLINE_TABLE 1" >>confdefs.h++     ;;+     *-apple-* | *-*-dragonfly* | *-*-freebsd* | *-*-kfreebsd* | *-*-openbsd* | *-pc-solaris* | *-linux-android*)++$as_echo "#define FFI_MMAP_EXEC_WRIT 1" >>confdefs.h++     ;;+esac+ if test x$FFI_EXEC_TRAMPOLINE_TABLE = x1; then+  FFI_EXEC_TRAMPOLINE_TABLE_TRUE=+  FFI_EXEC_TRAMPOLINE_TABLE_FALSE='#'+else+  FFI_EXEC_TRAMPOLINE_TABLE_TRUE='#'+  FFI_EXEC_TRAMPOLINE_TABLE_FALSE=+fi++++if test x$TARGET = xX86_64; then+    { $as_echo "$as_me:${as_lineno-$LINENO}: checking toolchain supports unwind section type" >&5+$as_echo_n "checking toolchain supports unwind section type... " >&6; }+if ${libffi_cv_as_x86_64_unwind_section_type+:} false; then :+  $as_echo_n "(cached) " >&6+else++        cat  > conftest1.s << EOF+.text+.globl foo+foo:+jmp bar+.section .eh_frame,"a",@unwind+bar:+EOF++        cat > conftest2.c  << EOF+extern void foo();+int main(){foo();}+EOF++	libffi_cv_as_x86_64_unwind_section_type=no+	# we ensure that we can compile _and_ link an assembly file containing an @unwind section+	# since the compiler can support it and not the linker (ie old binutils)+	if $CC -Wa,--fatal-warnings $CFLAGS -c conftest1.s > /dev/null 2>&1 && \+           $CC conftest2.c conftest1.o > /dev/null 2>&1 ; then+	    libffi_cv_as_x86_64_unwind_section_type=yes+	fi++fi+{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $libffi_cv_as_x86_64_unwind_section_type" >&5+$as_echo "$libffi_cv_as_x86_64_unwind_section_type" >&6; }+    if test "x$libffi_cv_as_x86_64_unwind_section_type" = xyes; then++$as_echo "#define HAVE_AS_X86_64_UNWIND_SECTION_TYPE 1" >>confdefs.h++    fi+fi++if test "x$GCC" = "xyes"; then+  { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether the C compiler accepts -fno-lto" >&5+$as_echo_n "checking whether the C compiler accepts -fno-lto... " >&6; }+if ${ax_cv_check_cflags___fno_lto+:} false; then :+  $as_echo_n "(cached) " >&6+else++  ax_check_save_flags=$CFLAGS+  if test x"$GCC" = xyes ; then+    add_gnu_werror="-Werror"+  fi+  CFLAGS="$CFLAGS  -fno-lto $add_gnu_werror"+  cat confdefs.h - <<_ACEOF >conftest.$ac_ext+/* end confdefs.h.  */++int+main ()+{++  ;+  return 0;+}+_ACEOF+if ac_fn_c_try_compile "$LINENO"; then :+  ax_cv_check_cflags___fno_lto=yes+else+  ax_cv_check_cflags___fno_lto=no+fi+rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext+  CFLAGS=$ax_check_save_flags+fi+{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ax_cv_check_cflags___fno_lto" >&5+$as_echo "$ax_cv_check_cflags___fno_lto" >&6; }+if test "x$ax_cv_check_cflags___fno_lto" = xyes; then :+  libffi_cv_no_lto=-fno-lto+else+  :+fi+++  { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether .eh_frame section should be read-only" >&5+$as_echo_n "checking whether .eh_frame section should be read-only... " >&6; }+if ${libffi_cv_ro_eh_frame+:} false; then :+  $as_echo_n "(cached) " >&6+else++  	libffi_cv_ro_eh_frame=yes+  	echo 'extern void foo (void); void bar (void) { foo (); foo (); }' > conftest.c+  	if $CC $CFLAGS -c -fpic -fexceptions $libffi_cv_no_lto -o conftest.o conftest.c > /dev/null 2>&1; then+	    if $READELF -WS conftest.o 2>/dev/null | $GREP -q -n 'eh_frame .* WA'; then+	        libffi_cv_ro_eh_frame=no+	    fi+  	fi+  	rm -f conftest.*++fi+{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $libffi_cv_ro_eh_frame" >&5+$as_echo "$libffi_cv_ro_eh_frame" >&6; }+  if test "x$libffi_cv_ro_eh_frame" = xyes; then++$as_echo "#define HAVE_RO_EH_FRAME 1" >>confdefs.h+++$as_echo "#define EH_FRAME_FLAGS \"a\"" >>confdefs.h++  else++$as_echo "#define EH_FRAME_FLAGS \"aw\"" >>confdefs.h++  fi++  { $as_echo "$as_me:${as_lineno-$LINENO}: checking for __attribute__((visibility(\"hidden\")))" >&5+$as_echo_n "checking for __attribute__((visibility(\"hidden\")))... " >&6; }+if ${libffi_cv_hidden_visibility_attribute+:} false; then :+  $as_echo_n "(cached) " >&6+else++  	echo 'int __attribute__ ((visibility ("hidden"))) foo (void) { return 1  ; }' > conftest.c+  	libffi_cv_hidden_visibility_attribute=no+  	if { ac_try='${CC-cc} -Werror -S conftest.c -o conftest.s 1>&5'+  { { eval echo "\"\$as_me\":${as_lineno-$LINENO}: \"$ac_try\""; } >&5+  (eval $ac_try) 2>&5+  ac_status=$?+  $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5+  test $ac_status = 0; }; }; then+  	    if $EGREP '(\.hidden|\.private_extern).*foo|foo.*,hidden' conftest.s >/dev/null; then+  		libffi_cv_hidden_visibility_attribute=yes+  	    fi+  	fi+  	rm -f conftest.*++fi+{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $libffi_cv_hidden_visibility_attribute" >&5+$as_echo "$libffi_cv_hidden_visibility_attribute" >&6; }+  if test $libffi_cv_hidden_visibility_attribute = yes; then++$as_echo "#define HAVE_HIDDEN_VISIBILITY_ATTRIBUTE 1" >>confdefs.h++  fi+fi++++++EXTRA_SOURCES=` printf " %s " "$SOURCES" | sed -E "s/ ([^ ]+)/src\/$TARGETDIR\/\1 /g" `++EXTRA_ASM_SOURCES=` printf " %s " "$ASM_SOURCES" | sed -E "s/ ([^ ]+)/src\/$TARGETDIR\/\1 /g" `+++# Check whether --enable-debug was given.+if test "${enable_debug+set}" = set; then :+  enableval=$enable_debug; if test "$enable_debug" = "yes"; then++$as_echo "#define FFI_DEBUG 1" >>confdefs.h++  fi+fi++ if test "$enable_debug" = "yes"; then+  FFI_DEBUG_TRUE=+  FFI_DEBUG_FALSE='#'+else+  FFI_DEBUG_TRUE='#'+  FFI_DEBUG_FALSE=+fi+++# Check whether --enable-structs was given.+if test "${enable_structs+set}" = set; then :+  enableval=$enable_structs; if test "$enable_structs" = "no"; then++$as_echo "#define FFI_NO_STRUCTS 1" >>confdefs.h++  fi+fi++ if test "$enable_debug" = "yes"; then+  FFI_DEBUG_TRUE=+  FFI_DEBUG_FALSE='#'+else+  FFI_DEBUG_TRUE='#'+  FFI_DEBUG_FALSE=+fi+++# Check whether --enable-raw-api was given.+if test "${enable_raw_api+set}" = set; then :+  enableval=$enable_raw_api; if test "$enable_raw_api" = "no"; then++$as_echo "#define FFI_NO_RAW_API 1" >>confdefs.h++  fi+fi+++# Check whether --enable-exec-static-tramp was given.+if test "${enable_exec_static_tramp+set}" = set; then :+  enableval=$enable_exec_static_tramp;+fi+++if test "$enable_exec_static_tramp" != no; then+case "$target" in+     *-cygwin* | *-msys*)+       # Only define static trampolines if we are using the cygwin runtime.+       # Will this need to be changed for mingw?+       if test "x$GCC" = "xyes"; then++$as_echo "#define FFI_EXEC_STATIC_TRAMP 1" >>confdefs.h++       fi+     ;;+     *arm*-*-linux-* | aarch64*-*-linux-* | i*86-*-linux-* | x86_64-*-linux-* \+     | loongarch*-*-linux-* | s390x*-linux-* | powerpc*-linux-* \+     | riscv*-linux-*)++$as_echo "#define FFI_EXEC_STATIC_TRAMP 1" >>confdefs.h++     ;;+esac+fi++# Check whether --enable-purify-safety was given.+if test "${enable_purify_safety+set}" = set; then :+  enableval=$enable_purify_safety; if test "$enable_purify_safety" = "yes"; then++$as_echo "#define USING_PURIFY 1" >>confdefs.h++  fi+fi+++# Check linker support.++  # If we're not using GNU ld, then there's no point in even trying these+  # tests.  Check for that first.  We should have already tested for gld+  # by now (in libtool), but require it now just to be safe...+  test -z "$SECTION_LDFLAGS" && SECTION_LDFLAGS=''+  test -z "$OPT_LDFLAGS" && OPT_LDFLAGS=''++++  # The name set by libtool depends on the version of libtool.  Shame on us+  # for depending on an impl detail, but c'est la vie.  Older versions used+  # ac_cv_prog_gnu_ld, but now it's lt_cv_prog_gnu_ld, and is copied back on+  # top of with_gnu_ld (which is also set by --with-gnu-ld, so that actually+  # makes sense).  We'll test with_gnu_ld everywhere else, so if that isn't+  # set (hence we're using an older libtool), then set it.+  if test x${with_gnu_ld+set} != xset; then+    if test x${ac_cv_prog_gnu_ld+set} != xset; then+      # We got through "ac_require(ac_prog_ld)" and still not set?  Huh?+      with_gnu_ld=no+    else+      with_gnu_ld=$ac_cv_prog_gnu_ld+    fi+  fi++  # Start by getting the version number.  I think the libtool test already+  # does some of this, but throws away the result.+  libat_ld_is_gold=no+  if $LD --version 2>/dev/null | grep 'GNU gold'> /dev/null 2>&1; then+    libat_ld_is_gold=yes+  fi+  libat_ld_is_lld=no+  if $LD --version 2>/dev/null | grep 'LLD '> /dev/null 2>&1; then+    libat_ld_is_lld=yes+  fi+  libat_ld_is_mold=no+  if $LD --version 2>/dev/null | grep 'mold '> /dev/null 2>&1; then+    libat_ld_is_mold=yes+  fi++  ldver=`$LD --version 2>/dev/null |+         sed -e 's/GNU gold /GNU ld /;s/GNU ld version /GNU ld /;s/GNU ld ([^)]*) /GNU ld /;s/GNU ld \([0-9.][0-9.]*\).*/\1/; q'`++  libat_gnu_ld_version=`echo $ldver | \+         $AWK -F. '{ if (NF<3) $3=0; print ($1*100+$2)*100+$3 }'`++  # Set --gc-sections.+  if test "$with_gnu_ld" = "notbroken"; then+    # GNU ld it is!  Joy and bunny rabbits!++    # All these tests are for C++; save the language and the compiler flags.+    # Need to do this so that g++ won't try to link in libstdc+++    ac_test_CFLAGS="${CFLAGS+set}"+    ac_save_CFLAGS="$CFLAGS"+    CFLAGS='-x c++  -Wl,--gc-sections'++    # Check for -Wl,--gc-sections+    # XXX This test is broken at the moment, as symbols required for linking+    # are now in libsupc++ (not built yet).  In addition, this test has+    # cored on solaris in the past.  In addition, --gc-sections doesn't+    # really work at the moment (keeps on discarding used sections, first+    # .eh_frame and now some of the glibc sections for iconv).+    # Bzzzzt.  Thanks for playing, maybe next time.+    { $as_echo "$as_me:${as_lineno-$LINENO}: checking for ld that supports -Wl,--gc-sections" >&5+$as_echo_n "checking for ld that supports -Wl,--gc-sections... " >&6; }+    if test "$cross_compiling" = yes; then :+  ac_sectionLDflags=yes+else+  cat confdefs.h - <<_ACEOF >conftest.$ac_ext+/* end confdefs.h.  */++     int main(void)+     {+       try { throw 1; }+       catch (...) { };+       return 0;+     }++_ACEOF+if ac_fn_c_try_run "$LINENO"; then :+  ac_sectionLDflags=yes+else+  ac_sectionLDflags=no+fi+rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \+  conftest.$ac_objext conftest.beam conftest.$ac_ext+fi++    if test "$ac_test_CFLAGS" = set; then+      CFLAGS="$ac_save_CFLAGS"+    else+      # this is the suspicious part+      CFLAGS=''+    fi+    if test "$ac_sectionLDflags" = "yes"; then+      SECTION_LDFLAGS="-Wl,--gc-sections $SECTION_LDFLAGS"+    fi+    { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_sectionLDflags" >&5+$as_echo "$ac_sectionLDflags" >&6; }+  fi++  # Set linker optimization flags.+  if test x"$with_gnu_ld" = x"yes"; then+    OPT_LDFLAGS="-Wl,-O1 $OPT_LDFLAGS"+  fi+++++++ # Check whether --enable-symvers was given.+if test "${enable_symvers+set}" = set; then :+  enableval=$enable_symvers;+      case "$enableval" in+       yes|no|gnu*|sun) ;;+       *) as_fn_error $? "Unknown argument to enable/disable symvers" "$LINENO" 5 ;;+                          esac++else+  enable_symvers=yes+fi++++# If we never went through the LIBFFI_CHECK_LINKER_FEATURES macro, then we+# don't know enough about $LD to do tricks...+++# Turn a 'yes' into a suitable default.+if test x$enable_symvers = xyes ; then+  # FIXME  The following test is too strict, in theory.+  if test $enable_shared = no || test "x$LD" = x; then+    enable_symvers=no+  else+    if test $with_gnu_ld = yes ; then+      enable_symvers=gnu+    else+      case ${target_os} in+        # Sun symbol versioning exists since Solaris 2.5.+        solaris2.[5-9]* | solaris2.1[0-9]*)+          enable_symvers=sun ;;+        *)+          enable_symvers=no ;;+      esac+    fi+  fi+fi++# Check if 'sun' was requested on non-Solaris 2 platforms.+if test x$enable_symvers = xsun ; then+  case ${target_os} in+    solaris2*)+      # All fine.+      ;;+    *)+      # Unlikely to work.+      { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: === You have requested Sun symbol versioning, but" >&5+$as_echo "$as_me: WARNING: === You have requested Sun symbol versioning, but" >&2;}+      { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: === you are not targetting Solaris 2." >&5+$as_echo "$as_me: WARNING: === you are not targetting Solaris 2." >&2;}+      { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: === Symbol versioning will be disabled." >&5+$as_echo "$as_me: WARNING: === Symbol versioning will be disabled." >&2;}+      enable_symvers=no+      ;;+  esac+fi++# Check to see if libgcc_s exists, indicating that shared libgcc is possible.+if test $enable_symvers != no; then+  { $as_echo "$as_me:${as_lineno-$LINENO}: checking for shared libgcc" >&5+$as_echo_n "checking for shared libgcc... " >&6; }+  ac_save_CFLAGS="$CFLAGS"+  CFLAGS=' -lgcc_s'+  cat confdefs.h - <<_ACEOF >conftest.$ac_ext+/* end confdefs.h.  */++int+main ()+{+return 0;+  ;+  return 0;+}+_ACEOF+if ac_fn_c_try_link "$LINENO"; then :+  libat_shared_libgcc=yes+else+  libat_shared_libgcc=no+fi+rm -f core conftest.err conftest.$ac_objext \+    conftest$ac_exeext conftest.$ac_ext+  CFLAGS="$ac_save_CFLAGS"+  if test $libat_shared_libgcc = no; then+    cat > conftest.c <<EOF+int main (void) { return 0; }+EOF+    libat_libgcc_s_suffix=`${CC-cc} $CFLAGS $CPPFLAGS $LDFLAGS \+			     -shared -shared-libgcc -o conftest.so \+			     conftest.c -v 2>&1 >/dev/null \+			     | sed -n 's/^.* -lgcc_s\([^ ]*\) .*$/\1/p'`+    rm -f conftest.c conftest.so+    if test x${libat_libgcc_s_suffix+set} = xset; then+      CFLAGS=" -lgcc_s$libat_libgcc_s_suffix"+      cat confdefs.h - <<_ACEOF >conftest.$ac_ext+/* end confdefs.h.  */++int+main ()+{+return 0;+  ;+  return 0;+}+_ACEOF+if ac_fn_c_try_link "$LINENO"; then :+  libat_shared_libgcc=yes+fi+rm -f core conftest.err conftest.$ac_objext \+    conftest$ac_exeext conftest.$ac_ext+      CFLAGS="$ac_save_CFLAGS"+    fi+  fi+  { $as_echo "$as_me:${as_lineno-$LINENO}: result: $libat_shared_libgcc" >&5+$as_echo "$libat_shared_libgcc" >&6; }+fi++# For GNU ld, we need at least this version.  The format is described in+# LIBFFI_CHECK_LINKER_FEATURES above.+libat_min_gnu_ld_version=21400+# XXXXXXXXXXX libat_gnu_ld_version=21390++# Check to see if unspecified "yes" value can win, given results above.+# Change "yes" into either "no" or a style name.+if test $enable_symvers != no && test $libat_shared_libgcc = yes; then+  if test $with_gnu_ld = yes; then+    if test $libat_gnu_ld_version -ge $libat_min_gnu_ld_version ; then+      enable_symvers=gnu+    elif test $libat_ld_is_gold = yes ; then+      enable_symvers=gnu+    elif test $libat_ld_is_lld = yes ; then+      enable_symvers=gnu+    elif test $libat_ld_is_mold = yes ; then+      enable_symvers=gnu+    else+      # The right tools, the right setup, but too old.  Fallbacks?+      { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: === Linker version $libat_gnu_ld_version is too old for" >&5+$as_echo "$as_me: WARNING: === Linker version $libat_gnu_ld_version is too old for" >&2;}+      { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: === full symbol versioning support in this release of GCC." >&5+$as_echo "$as_me: WARNING: === full symbol versioning support in this release of GCC." >&2;}+      { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: === You would need to upgrade your binutils to version" >&5+$as_echo "$as_me: WARNING: === You would need to upgrade your binutils to version" >&2;}+      { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: === $libat_min_gnu_ld_version or later and rebuild GCC." >&5+$as_echo "$as_me: WARNING: === $libat_min_gnu_ld_version or later and rebuild GCC." >&2;}+      if test $libat_gnu_ld_version -ge 21200 ; then+        # Globbing fix is present, proper block support is not.+                        { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: === Symbol versioning will be disabled." >&5+$as_echo "$as_me: WARNING: === Symbol versioning will be disabled." >&2;}+        enable_symvers=no+      else+        # 2.11 or older.+        { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: === Symbol versioning will be disabled." >&5+$as_echo "$as_me: WARNING: === Symbol versioning will be disabled." >&2;}+        enable_symvers=no+      fi+    fi+  elif test $enable_symvers = sun; then+    : All interesting versions of Sun ld support sun style symbol versioning.+  else+    # just fail for now+    { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: === You have requested some kind of symbol versioning, but" >&5+$as_echo "$as_me: WARNING: === You have requested some kind of symbol versioning, but" >&2;}+    { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: === either you are not using a supported linker, or you are" >&5+$as_echo "$as_me: WARNING: === either you are not using a supported linker, or you are" >&2;}+    { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: === not building a shared libgcc_s (which is required)." >&5+$as_echo "$as_me: WARNING: === not building a shared libgcc_s (which is required)." >&2;}+    { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: === Symbol versioning will be disabled." >&5+$as_echo "$as_me: WARNING: === Symbol versioning will be disabled." >&2;}+    enable_symvers=no+  fi+fi+if test $enable_symvers = gnu; then++$as_echo "#define LIBFFI_GNU_SYMBOL_VERSIONING 1" >>confdefs.h++fi++ if test $enable_symvers != no; then+  LIBFFI_BUILD_VERSIONED_SHLIB_TRUE=+  LIBFFI_BUILD_VERSIONED_SHLIB_FALSE='#'+else+  LIBFFI_BUILD_VERSIONED_SHLIB_TRUE='#'+  LIBFFI_BUILD_VERSIONED_SHLIB_FALSE=+fi++ if test $enable_symvers = gnu; then+  LIBFFI_BUILD_VERSIONED_SHLIB_GNU_TRUE=+  LIBFFI_BUILD_VERSIONED_SHLIB_GNU_FALSE='#'+else+  LIBFFI_BUILD_VERSIONED_SHLIB_GNU_TRUE='#'+  LIBFFI_BUILD_VERSIONED_SHLIB_GNU_FALSE=+fi++ if test $enable_symvers = sun; then+  LIBFFI_BUILD_VERSIONED_SHLIB_SUN_TRUE=+  LIBFFI_BUILD_VERSIONED_SHLIB_SUN_FALSE='#'+else+  LIBFFI_BUILD_VERSIONED_SHLIB_SUN_TRUE='#'+  LIBFFI_BUILD_VERSIONED_SHLIB_SUN_FALSE=+fi++{ $as_echo "$as_me:${as_lineno-$LINENO}: versioning on shared library symbols is $enable_symvers" >&5+$as_echo "$as_me: versioning on shared library symbols is $enable_symvers" >&6;}+++ac_config_files="$ac_config_files include/ffi.h"+++EXTRA_LIBS=` printf " %s " "$LIBS" | sed -E 's/ -l([^ ]*)/\1 /g' `++ac_config_files="$ac_config_files libffi-clib.buildinfo"+++cat >confcache <<\_ACEOF+# This file is a shell script that caches the results of configure+# tests run on this system so they can be shared between configure+# scripts and configure runs, see configure's option --config-cache.+# It is not useful on other systems.  If it contains results you don't+# want to keep, you may remove or edit it.+#+# config.status only pays attention to the cache file if you give it+# the --recheck option to rerun configure.+#+# `ac_cv_env_foo' variables (set or unset) will be overridden when+# loading this file, other *unset* `ac_cv_foo' will be assigned the+# following values.++_ACEOF++# The following way of writing the cache mishandles newlines in values,+# but we know of no workaround that is simple, portable, and efficient.+# So, we kill variables containing newlines.+# Ultrix sh set writes to stderr and can't be redirected directly,+# and sets the high bit in the cache file unless we assign to the vars.+(+  for ac_var in `(set) 2>&1 | sed -n 's/^\([a-zA-Z_][a-zA-Z0-9_]*\)=.*/\1/p'`; do+    eval ac_val=\$$ac_var+    case $ac_val in #(+    *${as_nl}*)+      case $ac_var in #(+      *_cv_*) { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: cache variable $ac_var contains a newline" >&5+$as_echo "$as_me: WARNING: cache variable $ac_var contains a newline" >&2;} ;;+      esac+      case $ac_var in #(+      _ | IFS | as_nl) ;; #(+      BASH_ARGV | BASH_SOURCE) eval $ac_var= ;; #(+      *) { eval $ac_var=; unset $ac_var;} ;;+      esac ;;+    esac+  done++  (set) 2>&1 |+    case $as_nl`(ac_space=' '; set) 2>&1` in #(+    *${as_nl}ac_space=\ *)+      # `set' does not quote correctly, so add quotes: double-quote+      # substitution turns \\\\ into \\, and sed turns \\ into \.+      sed -n \+	"s/'/'\\\\''/g;+	  s/^\\([_$as_cr_alnum]*_cv_[_$as_cr_alnum]*\\)=\\(.*\\)/\\1='\\2'/p"+      ;; #(+    *)+      # `set' quotes correctly as required by POSIX, so do not add quotes.+      sed -n "/^[_$as_cr_alnum]*_cv_[_$as_cr_alnum]*=/p"+      ;;+    esac |+    sort+) |+  sed '+     /^ac_cv_env_/b end+     t clear+     :clear+     s/^\([^=]*\)=\(.*[{}].*\)$/test "${\1+set}" = set || &/+     t end+     s/^\([^=]*\)=\(.*\)$/\1=${\1=\2}/+     :end' >>confcache+if diff "$cache_file" confcache >/dev/null 2>&1; then :; else+  if test -w "$cache_file"; then+    if test "x$cache_file" != "x/dev/null"; then+      { $as_echo "$as_me:${as_lineno-$LINENO}: updating cache $cache_file" >&5+$as_echo "$as_me: updating cache $cache_file" >&6;}+      if test ! -f "$cache_file" || test -h "$cache_file"; then+	cat confcache >"$cache_file"+      else+        case $cache_file in #(+        */* | ?:*)+	  mv -f confcache "$cache_file"$$ &&+	  mv -f "$cache_file"$$ "$cache_file" ;; #(+        *)+	  mv -f confcache "$cache_file" ;;+	esac+      fi+    fi+  else+    { $as_echo "$as_me:${as_lineno-$LINENO}: not updating unwritable cache $cache_file" >&5+$as_echo "$as_me: not updating unwritable cache $cache_file" >&6;}+  fi+fi+rm -f confcache++test "x$prefix" = xNONE && prefix=$ac_default_prefix+# Let make expand exec_prefix.+test "x$exec_prefix" = xNONE && exec_prefix='${prefix}'++DEFS=-DHAVE_CONFIG_H++ac_libobjs=+ac_ltlibobjs=+U=+for ac_i in : $LIBOBJS; do test "x$ac_i" = x: && continue+  # 1. Remove the extension, and $U if already installed.+  ac_script='s/\$U\././;s/\.o$//;s/\.obj$//'+  ac_i=`$as_echo "$ac_i" | sed "$ac_script"`+  # 2. Prepend LIBOBJDIR.  When used with automake>=1.10 LIBOBJDIR+  #    will be set to the directory where LIBOBJS objects are built.+  as_fn_append ac_libobjs " \${LIBOBJDIR}$ac_i\$U.$ac_objext"+  as_fn_append ac_ltlibobjs " \${LIBOBJDIR}$ac_i"'$U.lo'+done+LIBOBJS=$ac_libobjs++LTLIBOBJS=$ac_ltlibobjs+++if test -z "${AMDEP_TRUE}" && test -z "${AMDEP_FALSE}"; then+  as_fn_error $? "conditional \"AMDEP\" was never defined.+Usually this means the macro was only invoked conditionally." "$LINENO" 5+fi+if test -z "${am__fastdepCCAS_TRUE}" && test -z "${am__fastdepCCAS_FALSE}"; then+  as_fn_error $? "conditional \"am__fastdepCCAS\" was never defined.+Usually this means the macro was only invoked conditionally." "$LINENO" 5+fi+if test -z "${MAINTAINER_MODE_TRUE}" && test -z "${MAINTAINER_MODE_FALSE}"; then+  as_fn_error $? "conditional \"MAINTAINER_MODE\" was never defined.+Usually this means the macro was only invoked conditionally." "$LINENO" 5+fi++if test -z "${FFI_EXEC_TRAMPOLINE_TABLE_TRUE}" && test -z "${FFI_EXEC_TRAMPOLINE_TABLE_FALSE}"; then+  as_fn_error $? "conditional \"FFI_EXEC_TRAMPOLINE_TABLE\" was never defined.+Usually this means the macro was only invoked conditionally." "$LINENO" 5+fi+if test -z "${FFI_DEBUG_TRUE}" && test -z "${FFI_DEBUG_FALSE}"; then+  as_fn_error $? "conditional \"FFI_DEBUG\" was never defined.+Usually this means the macro was only invoked conditionally." "$LINENO" 5+fi+if test -z "${FFI_DEBUG_TRUE}" && test -z "${FFI_DEBUG_FALSE}"; then+  as_fn_error $? "conditional \"FFI_DEBUG\" was never defined.+Usually this means the macro was only invoked conditionally." "$LINENO" 5+fi+if test -z "${LIBFFI_BUILD_VERSIONED_SHLIB_TRUE}" && test -z "${LIBFFI_BUILD_VERSIONED_SHLIB_FALSE}"; then+  as_fn_error $? "conditional \"LIBFFI_BUILD_VERSIONED_SHLIB\" was never defined.+Usually this means the macro was only invoked conditionally." "$LINENO" 5+fi+if test -z "${LIBFFI_BUILD_VERSIONED_SHLIB_GNU_TRUE}" && test -z "${LIBFFI_BUILD_VERSIONED_SHLIB_GNU_FALSE}"; then+  as_fn_error $? "conditional \"LIBFFI_BUILD_VERSIONED_SHLIB_GNU\" was never defined.+Usually this means the macro was only invoked conditionally." "$LINENO" 5+fi+if test -z "${LIBFFI_BUILD_VERSIONED_SHLIB_SUN_TRUE}" && test -z "${LIBFFI_BUILD_VERSIONED_SHLIB_SUN_FALSE}"; then+  as_fn_error $? "conditional \"LIBFFI_BUILD_VERSIONED_SHLIB_SUN\" was never defined.+Usually this means the macro was only invoked conditionally." "$LINENO" 5+fi++: "${CONFIG_STATUS=./config.status}"+ac_write_fail=0+ac_clean_files_save=$ac_clean_files+ac_clean_files="$ac_clean_files $CONFIG_STATUS"+{ $as_echo "$as_me:${as_lineno-$LINENO}: creating $CONFIG_STATUS" >&5+$as_echo "$as_me: creating $CONFIG_STATUS" >&6;}+as_write_fail=0+cat >$CONFIG_STATUS <<_ASEOF || as_write_fail=1+#! $SHELL+# Generated by $as_me.+# Run this file to recreate the current configuration.+# Compiler output produced by configure, useful for debugging+# configure, is in config.log if it exists.++debug=false+ac_cs_recheck=false+ac_cs_silent=false++SHELL=\${CONFIG_SHELL-$SHELL}+export SHELL+_ASEOF+cat >>$CONFIG_STATUS <<\_ASEOF || as_write_fail=1+## -------------------- ##+## M4sh Initialization. ##+## -------------------- ##++# Be more Bourne compatible+DUALCASE=1; export DUALCASE # for MKS sh+if test -n "${ZSH_VERSION+set}" && (emulate sh) >/dev/null 2>&1; then :+  emulate sh+  NULLCMD=:+  # Pre-4.2 versions of Zsh do word splitting on ${1+"$@"}, which+  # is contrary to our usage.  Disable this feature.+  alias -g '${1+"$@"}'='"$@"'+  setopt NO_GLOB_SUBST+else+  case `(set -o) 2>/dev/null` in #(+  *posix*) :+    set -o posix ;; #(+  *) :+     ;;+esac+fi+++as_nl='+'+export as_nl+# Printing a long string crashes Solaris 7 /usr/bin/printf.+as_echo='\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\'+as_echo=$as_echo$as_echo$as_echo$as_echo$as_echo+as_echo=$as_echo$as_echo$as_echo$as_echo$as_echo$as_echo+# Prefer a ksh shell builtin over an external printf program on Solaris,+# but without wasting forks for bash or zsh.+if test -z "$BASH_VERSION$ZSH_VERSION" \+    && (test "X`print -r -- $as_echo`" = "X$as_echo") 2>/dev/null; then+  as_echo='print -r --'+  as_echo_n='print -rn --'+elif (test "X`printf %s $as_echo`" = "X$as_echo") 2>/dev/null; then+  as_echo='printf %s\n'+  as_echo_n='printf %s'+else+  if test "X`(/usr/ucb/echo -n -n $as_echo) 2>/dev/null`" = "X-n $as_echo"; then+    as_echo_body='eval /usr/ucb/echo -n "$1$as_nl"'+    as_echo_n='/usr/ucb/echo -n'+  else+    as_echo_body='eval expr "X$1" : "X\\(.*\\)"'+    as_echo_n_body='eval+      arg=$1;+      case $arg in #(+      *"$as_nl"*)+	expr "X$arg" : "X\\(.*\\)$as_nl";+	arg=`expr "X$arg" : ".*$as_nl\\(.*\\)"`;;+      esac;+      expr "X$arg" : "X\\(.*\\)" | tr -d "$as_nl"+    '+    export as_echo_n_body+    as_echo_n='sh -c $as_echo_n_body as_echo'+  fi+  export as_echo_body+  as_echo='sh -c $as_echo_body as_echo'+fi++# The user is always right.+if test "${PATH_SEPARATOR+set}" != set; then+  PATH_SEPARATOR=:+  (PATH='/bin;/bin'; FPATH=$PATH; sh -c :) >/dev/null 2>&1 && {+    (PATH='/bin:/bin'; FPATH=$PATH; sh -c :) >/dev/null 2>&1 ||+      PATH_SEPARATOR=';'+  }+fi+++# IFS+# We need space, tab and new line, in precisely that order.  Quoting is+# there to prevent editors from complaining about space-tab.+# (If _AS_PATH_WALK were called with IFS unset, it would disable word+# splitting by setting IFS to empty value.)+IFS=" ""	$as_nl"++# Find who we are.  Look in the path if we contain no directory separator.+as_myself=+case $0 in #((+  *[\\/]* ) as_myself=$0 ;;+  *) as_save_IFS=$IFS; IFS=$PATH_SEPARATOR+for as_dir in $PATH+do+  IFS=$as_save_IFS+  test -z "$as_dir" && as_dir=.+    test -r "$as_dir/$0" && as_myself=$as_dir/$0 && break+  done+IFS=$as_save_IFS++     ;;+esac+# We did not find ourselves, most probably we were run as `sh COMMAND'+# in which case we are not to be found in the path.+if test "x$as_myself" = x; then+  as_myself=$0+fi+if test ! -f "$as_myself"; then+  $as_echo "$as_myself: error: cannot find myself; rerun with an absolute file name" >&2+  exit 1+fi++# Unset variables that we do not need and which cause bugs (e.g. in+# pre-3.0 UWIN ksh).  But do not cause bugs in bash 2.01; the "|| exit 1"+# suppresses any "Segmentation fault" message there.  '((' could+# trigger a bug in pdksh 5.2.14.+for as_var in BASH_ENV ENV MAIL MAILPATH+do eval test x\${$as_var+set} = xset \+  && ( (unset $as_var) || exit 1) >/dev/null 2>&1 && unset $as_var || :+done+PS1='$ '+PS2='> '+PS4='+ '++# NLS nuisances.+LC_ALL=C+export LC_ALL+LANGUAGE=C+export LANGUAGE++# CDPATH.+(unset CDPATH) >/dev/null 2>&1 && unset CDPATH+++# as_fn_error STATUS ERROR [LINENO LOG_FD]+# ----------------------------------------+# Output "`basename $0`: error: ERROR" to stderr. If LINENO and LOG_FD are+# provided, also output the error to LOG_FD, referencing LINENO. Then exit the+# script with STATUS, using 1 if that was 0.+as_fn_error ()+{+  as_status=$1; test $as_status -eq 0 && as_status=1+  if test "$4"; then+    as_lineno=${as_lineno-"$3"} as_lineno_stack=as_lineno_stack=$as_lineno_stack+    $as_echo "$as_me:${as_lineno-$LINENO}: error: $2" >&$4+  fi+  $as_echo "$as_me: error: $2" >&2+  as_fn_exit $as_status+} # as_fn_error+++# as_fn_set_status STATUS+# -----------------------+# Set $? to STATUS, without forking.+as_fn_set_status ()+{+  return $1+} # as_fn_set_status++# as_fn_exit STATUS+# -----------------+# Exit the shell with STATUS, even in a "trap 0" or "set -e" context.+as_fn_exit ()+{+  set +e+  as_fn_set_status $1+  exit $1+} # as_fn_exit++# as_fn_unset VAR+# ---------------+# Portably unset VAR.+as_fn_unset ()+{+  { eval $1=; unset $1;}+}+as_unset=as_fn_unset+# as_fn_append VAR VALUE+# ----------------------+# Append the text in VALUE to the end of the definition contained in VAR. Take+# advantage of any shell optimizations that allow amortized linear growth over+# repeated appends, instead of the typical quadratic growth present in naive+# implementations.+if (eval "as_var=1; as_var+=2; test x\$as_var = x12") 2>/dev/null; then :+  eval 'as_fn_append ()+  {+    eval $1+=\$2+  }'+else+  as_fn_append ()+  {+    eval $1=\$$1\$2+  }+fi # as_fn_append++# as_fn_arith ARG...+# ------------------+# Perform arithmetic evaluation on the ARGs, and store the result in the+# global $as_val. Take advantage of shells that can avoid forks. The arguments+# must be portable across $(()) and expr.+if (eval "test \$(( 1 + 1 )) = 2") 2>/dev/null; then :+  eval 'as_fn_arith ()+  {+    as_val=$(( $* ))+  }'+else+  as_fn_arith ()+  {+    as_val=`expr "$@" || test $? -eq 1`+  }+fi # as_fn_arith+++if expr a : '\(a\)' >/dev/null 2>&1 &&+   test "X`expr 00001 : '.*\(...\)'`" = X001; then+  as_expr=expr+else+  as_expr=false+fi++if (basename -- /) >/dev/null 2>&1 && test "X`basename -- / 2>&1`" = "X/"; then+  as_basename=basename+else+  as_basename=false+fi++if (as_dir=`dirname -- /` && test "X$as_dir" = X/) >/dev/null 2>&1; then+  as_dirname=dirname+else+  as_dirname=false+fi++as_me=`$as_basename -- "$0" ||+$as_expr X/"$0" : '.*/\([^/][^/]*\)/*$' \| \+	 X"$0" : 'X\(//\)$' \| \+	 X"$0" : 'X\(/\)' \| . 2>/dev/null ||+$as_echo X/"$0" |+    sed '/^.*\/\([^/][^/]*\)\/*$/{+	    s//\1/+	    q+	  }+	  /^X\/\(\/\/\)$/{+	    s//\1/+	    q+	  }+	  /^X\/\(\/\).*/{+	    s//\1/+	    q+	  }+	  s/.*/./; q'`++# Avoid depending upon Character Ranges.+as_cr_letters='abcdefghijklmnopqrstuvwxyz'+as_cr_LETTERS='ABCDEFGHIJKLMNOPQRSTUVWXYZ'+as_cr_Letters=$as_cr_letters$as_cr_LETTERS+as_cr_digits='0123456789'+as_cr_alnum=$as_cr_Letters$as_cr_digits++ECHO_C= ECHO_N= ECHO_T=+case `echo -n x` in #(((((+-n*)+  case `echo 'xy\c'` in+  *c*) ECHO_T='	';;	# ECHO_T is single tab character.+  xy)  ECHO_C='\c';;+  *)   echo `echo ksh88 bug on AIX 6.1` > /dev/null+       ECHO_T='	';;+  esac;;+*)+  ECHO_N='-n';;+esac++rm -f conf$$ conf$$.exe conf$$.file+if test -d conf$$.dir; then+  rm -f conf$$.dir/conf$$.file+else+  rm -f conf$$.dir+  mkdir conf$$.dir 2>/dev/null+fi+if (echo >conf$$.file) 2>/dev/null; then+  if ln -s conf$$.file conf$$ 2>/dev/null; then+    as_ln_s='ln -s'+    # ... but there are two gotchas:+    # 1) On MSYS, both `ln -s file dir' and `ln file dir' fail.+    # 2) DJGPP < 2.04 has no symlinks; `ln -s' creates a wrapper executable.+    # In both cases, we have to default to `cp -pR'.+    ln -s conf$$.file conf$$.dir 2>/dev/null && test ! -f conf$$.exe ||+      as_ln_s='cp -pR'+  elif ln conf$$.file conf$$ 2>/dev/null; then+    as_ln_s=ln+  else+    as_ln_s='cp -pR'+  fi+else+  as_ln_s='cp -pR'+fi+rm -f conf$$ conf$$.exe conf$$.dir/conf$$.file conf$$.file+rmdir conf$$.dir 2>/dev/null+++# as_fn_mkdir_p+# -------------+# Create "$as_dir" as a directory, including parents if necessary.+as_fn_mkdir_p ()+{++  case $as_dir in #(+  -*) as_dir=./$as_dir;;+  esac+  test -d "$as_dir" || eval $as_mkdir_p || {+    as_dirs=+    while :; do+      case $as_dir in #(+      *\'*) as_qdir=`$as_echo "$as_dir" | sed "s/'/'\\\\\\\\''/g"`;; #'(+      *) as_qdir=$as_dir;;+      esac+      as_dirs="'$as_qdir' $as_dirs"+      as_dir=`$as_dirname -- "$as_dir" ||+$as_expr X"$as_dir" : 'X\(.*[^/]\)//*[^/][^/]*/*$' \| \+	 X"$as_dir" : 'X\(//\)[^/]' \| \+	 X"$as_dir" : 'X\(//\)$' \| \+	 X"$as_dir" : 'X\(/\)' \| . 2>/dev/null ||+$as_echo X"$as_dir" |+    sed '/^X\(.*[^/]\)\/\/*[^/][^/]*\/*$/{+	    s//\1/+	    q+	  }+	  /^X\(\/\/\)[^/].*/{+	    s//\1/+	    q+	  }+	  /^X\(\/\/\)$/{+	    s//\1/+	    q+	  }+	  /^X\(\/\).*/{+	    s//\1/+	    q+	  }+	  s/.*/./; q'`+      test -d "$as_dir" && break+    done+    test -z "$as_dirs" || eval "mkdir $as_dirs"+  } || test -d "$as_dir" || as_fn_error $? "cannot create directory $as_dir"+++} # as_fn_mkdir_p+if mkdir -p . 2>/dev/null; then+  as_mkdir_p='mkdir -p "$as_dir"'+else+  test -d ./-p && rmdir ./-p+  as_mkdir_p=false+fi+++# as_fn_executable_p FILE+# -----------------------+# Test if FILE is an executable regular file.+as_fn_executable_p ()+{+  test -f "$1" && test -x "$1"+} # as_fn_executable_p+as_test_x='test -x'+as_executable_p=as_fn_executable_p++# Sed expression to map a string onto a valid CPP name.+as_tr_cpp="eval sed 'y%*$as_cr_letters%P$as_cr_LETTERS%;s%[^_$as_cr_alnum]%_%g'"++# Sed expression to map a string onto a valid variable name.+as_tr_sh="eval sed 'y%*+%pp%;s%[^_$as_cr_alnum]%_%g'"+++exec 6>&1+## ----------------------------------- ##+## Main body of $CONFIG_STATUS script. ##+## ----------------------------------- ##+_ASEOF+test $as_write_fail = 0 && chmod +x $CONFIG_STATUS || ac_write_fail=1++cat >>$CONFIG_STATUS <<\_ACEOF || ac_write_fail=1+# Save the log message, to keep $0 and so on meaningful, and to+# report actual input values of CONFIG_FILES etc. instead of their+# values after options handling.+ac_log="+This file was extended by libffi $as_me 3.6.0, which was+generated by GNU Autoconf 2.69.  Invocation command line was++  CONFIG_FILES    = $CONFIG_FILES+  CONFIG_HEADERS  = $CONFIG_HEADERS+  CONFIG_LINKS    = $CONFIG_LINKS+  CONFIG_COMMANDS = $CONFIG_COMMANDS+  $ $0 $@++on `(hostname || uname -n) 2>/dev/null | sed 1q`+"++_ACEOF++case $ac_config_files in *"+"*) set x $ac_config_files; shift; ac_config_files=$*;;+esac++case $ac_config_headers in *"+"*) set x $ac_config_headers; shift; ac_config_headers=$*;;+esac+++cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1+# Files that config.status was made for.+config_files="$ac_config_files"+config_headers="$ac_config_headers"+config_commands="$ac_config_commands"++_ACEOF++cat >>$CONFIG_STATUS <<\_ACEOF || ac_write_fail=1+ac_cs_usage="\+\`$as_me' instantiates files and other configuration actions+from templates according to the current configuration.  Unless the files+and actions are specified as TAGs, all are instantiated by default.++Usage: $0 [OPTION]... [TAG]...++  -h, --help       print this help, then exit+  -V, --version    print version number and configuration settings, then exit+      --config     print configuration, then exit+  -q, --quiet, --silent+                   do not print progress messages+  -d, --debug      don't remove temporary files+      --recheck    update $as_me by reconfiguring in the same conditions+      --file=FILE[:TEMPLATE]+                   instantiate the configuration file FILE+      --header=FILE[:TEMPLATE]+                   instantiate the configuration header FILE++Configuration files:+$config_files++Configuration headers:+$config_headers++Configuration commands:+$config_commands++Report bugs to <http://github.com/libffi/libffi/issues>."++_ACEOF+cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1+ac_cs_config="`$as_echo "$ac_configure_args" | sed 's/^ //; s/[\\""\`\$]/\\\\&/g'`"+ac_cs_version="\\+libffi config.status 3.6.0+configured by $0, generated by GNU Autoconf 2.69,+  with options \\"\$ac_cs_config\\"++Copyright (C) 2012 Free Software Foundation, Inc.+This config.status script is free software; the Free Software Foundation+gives unlimited permission to copy, distribute and modify it."++ac_pwd='$ac_pwd'+srcdir='$srcdir'+AWK='$AWK'+test -n "\$AWK" || AWK=awk+_ACEOF++cat >>$CONFIG_STATUS <<\_ACEOF || ac_write_fail=1+# The default lists apply if the user does not specify any file.+ac_need_defaults=:+while test $# != 0+do+  case $1 in+  --*=?*)+    ac_option=`expr "X$1" : 'X\([^=]*\)='`+    ac_optarg=`expr "X$1" : 'X[^=]*=\(.*\)'`+    ac_shift=:+    ;;+  --*=)+    ac_option=`expr "X$1" : 'X\([^=]*\)='`+    ac_optarg=+    ac_shift=:+    ;;+  *)+    ac_option=$1+    ac_optarg=$2+    ac_shift=shift+    ;;+  esac++  case $ac_option in+  # Handling of the options.+  -recheck | --recheck | --rechec | --reche | --rech | --rec | --re | --r)+    ac_cs_recheck=: ;;+  --version | --versio | --versi | --vers | --ver | --ve | --v | -V )+    $as_echo "$ac_cs_version"; exit ;;+  --config | --confi | --conf | --con | --co | --c )+    $as_echo "$ac_cs_config"; exit ;;+  --debug | --debu | --deb | --de | --d | -d )+    debug=: ;;+  --file | --fil | --fi | --f )+    $ac_shift+    case $ac_optarg in+    *\'*) ac_optarg=`$as_echo "$ac_optarg" | sed "s/'/'\\\\\\\\''/g"` ;;+    '') as_fn_error $? "missing file argument" ;;+    esac+    as_fn_append CONFIG_FILES " '$ac_optarg'"+    ac_need_defaults=false;;+  --header | --heade | --head | --hea )+    $ac_shift+    case $ac_optarg in+    *\'*) ac_optarg=`$as_echo "$ac_optarg" | sed "s/'/'\\\\\\\\''/g"` ;;+    esac+    as_fn_append CONFIG_HEADERS " '$ac_optarg'"+    ac_need_defaults=false;;+  --he | --h)+    # Conflict between --help and --header+    as_fn_error $? "ambiguous option: \`$1'+Try \`$0 --help' for more information.";;+  --help | --hel | -h )+    $as_echo "$ac_cs_usage"; exit ;;+  -q | -quiet | --quiet | --quie | --qui | --qu | --q \+  | -silent | --silent | --silen | --sile | --sil | --si | --s)+    ac_cs_silent=: ;;++  # This is an error.+  -*) as_fn_error $? "unrecognized option: \`$1'+Try \`$0 --help' for more information." ;;++  *) as_fn_append ac_config_targets " $1"+     ac_need_defaults=false ;;++  esac+  shift+done++ac_configure_extra_args=++if $ac_cs_silent; then+  exec 6>/dev/null+  ac_configure_extra_args="$ac_configure_extra_args --silent"+fi++_ACEOF+cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1+if \$ac_cs_recheck; then+  set X $SHELL '$0' $ac_configure_args \$ac_configure_extra_args --no-create --no-recursion+  shift+  \$as_echo "running CONFIG_SHELL=$SHELL \$*" >&6+  CONFIG_SHELL='$SHELL'+  export CONFIG_SHELL+  exec "\$@"+fi++_ACEOF+cat >>$CONFIG_STATUS <<\_ACEOF || ac_write_fail=1+exec 5>>config.log+{+  echo+  sed 'h;s/./-/g;s/^.../## /;s/...$/ ##/;p;x;p;x' <<_ASBOX+## Running $as_me. ##+_ASBOX+  $as_echo "$ac_log"+} >&5++_ACEOF+cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1+#+# INIT-COMMANDS+#+ax_enable_builddir_srcdir="$srcdir"                    # $srcdir+ax_enable_builddir_host="$HOST"                        # $HOST / $host+ax_enable_builddir_version="$VERSION"                  # $VERSION+ax_enable_builddir_package="$PACKAGE"                  # $PACKAGE+ax_enable_builddir_auxdir="$ax_enable_builddir_auxdir" # $AUX+ax_enable_builddir_sed="$ax_enable_builddir_sed"       # $SED+ax_enable_builddir="$ax_enable_builddir"               # $SUB++AMDEP_TRUE="$AMDEP_TRUE" MAKE="${MAKE-make}"+++# The HP-UX ksh and POSIX shell print the target directory to stdout+# if CDPATH is set.+(unset CDPATH) >/dev/null 2>&1 && unset CDPATH++sed_quote_subst='$sed_quote_subst'+double_quote_subst='$double_quote_subst'+delay_variable_subst='$delay_variable_subst'+macro_version='`$ECHO "$macro_version" | $SED "$delay_single_quote_subst"`'+macro_revision='`$ECHO "$macro_revision" | $SED "$delay_single_quote_subst"`'+enable_shared='`$ECHO "$enable_shared" | $SED "$delay_single_quote_subst"`'+enable_static='`$ECHO "$enable_static" | $SED "$delay_single_quote_subst"`'+pic_mode='`$ECHO "$pic_mode" | $SED "$delay_single_quote_subst"`'+enable_fast_install='`$ECHO "$enable_fast_install" | $SED "$delay_single_quote_subst"`'+shared_archive_member_spec='`$ECHO "$shared_archive_member_spec" | $SED "$delay_single_quote_subst"`'+SHELL='`$ECHO "$SHELL" | $SED "$delay_single_quote_subst"`'+ECHO='`$ECHO "$ECHO" | $SED "$delay_single_quote_subst"`'+PATH_SEPARATOR='`$ECHO "$PATH_SEPARATOR" | $SED "$delay_single_quote_subst"`'+host_alias='`$ECHO "$host_alias" | $SED "$delay_single_quote_subst"`'+host='`$ECHO "$host" | $SED "$delay_single_quote_subst"`'+host_os='`$ECHO "$host_os" | $SED "$delay_single_quote_subst"`'+build_alias='`$ECHO "$build_alias" | $SED "$delay_single_quote_subst"`'+build='`$ECHO "$build" | $SED "$delay_single_quote_subst"`'+build_os='`$ECHO "$build_os" | $SED "$delay_single_quote_subst"`'+SED='`$ECHO "$SED" | $SED "$delay_single_quote_subst"`'+Xsed='`$ECHO "$Xsed" | $SED "$delay_single_quote_subst"`'+GREP='`$ECHO "$GREP" | $SED "$delay_single_quote_subst"`'+EGREP='`$ECHO "$EGREP" | $SED "$delay_single_quote_subst"`'+FGREP='`$ECHO "$FGREP" | $SED "$delay_single_quote_subst"`'+LD='`$ECHO "$LD" | $SED "$delay_single_quote_subst"`'+NM='`$ECHO "$NM" | $SED "$delay_single_quote_subst"`'+LN_S='`$ECHO "$LN_S" | $SED "$delay_single_quote_subst"`'+max_cmd_len='`$ECHO "$max_cmd_len" | $SED "$delay_single_quote_subst"`'+ac_objext='`$ECHO "$ac_objext" | $SED "$delay_single_quote_subst"`'+exeext='`$ECHO "$exeext" | $SED "$delay_single_quote_subst"`'+lt_unset='`$ECHO "$lt_unset" | $SED "$delay_single_quote_subst"`'+lt_SP2NL='`$ECHO "$lt_SP2NL" | $SED "$delay_single_quote_subst"`'+lt_NL2SP='`$ECHO "$lt_NL2SP" | $SED "$delay_single_quote_subst"`'+lt_cv_to_host_file_cmd='`$ECHO "$lt_cv_to_host_file_cmd" | $SED "$delay_single_quote_subst"`'+lt_cv_to_tool_file_cmd='`$ECHO "$lt_cv_to_tool_file_cmd" | $SED "$delay_single_quote_subst"`'+reload_flag='`$ECHO "$reload_flag" | $SED "$delay_single_quote_subst"`'+reload_cmds='`$ECHO "$reload_cmds" | $SED "$delay_single_quote_subst"`'+FILECMD='`$ECHO "$FILECMD" | $SED "$delay_single_quote_subst"`'+OBJDUMP='`$ECHO "$OBJDUMP" | $SED "$delay_single_quote_subst"`'+deplibs_check_method='`$ECHO "$deplibs_check_method" | $SED "$delay_single_quote_subst"`'+file_magic_cmd='`$ECHO "$file_magic_cmd" | $SED "$delay_single_quote_subst"`'+file_magic_glob='`$ECHO "$file_magic_glob" | $SED "$delay_single_quote_subst"`'+want_nocaseglob='`$ECHO "$want_nocaseglob" | $SED "$delay_single_quote_subst"`'+DLLTOOL='`$ECHO "$DLLTOOL" | $SED "$delay_single_quote_subst"`'+sharedlib_from_linklib_cmd='`$ECHO "$sharedlib_from_linklib_cmd" | $SED "$delay_single_quote_subst"`'+AR='`$ECHO "$AR" | $SED "$delay_single_quote_subst"`'+lt_ar_flags='`$ECHO "$lt_ar_flags" | $SED "$delay_single_quote_subst"`'+AR_FLAGS='`$ECHO "$AR_FLAGS" | $SED "$delay_single_quote_subst"`'+archiver_list_spec='`$ECHO "$archiver_list_spec" | $SED "$delay_single_quote_subst"`'+STRIP='`$ECHO "$STRIP" | $SED "$delay_single_quote_subst"`'+RANLIB='`$ECHO "$RANLIB" | $SED "$delay_single_quote_subst"`'+old_postinstall_cmds='`$ECHO "$old_postinstall_cmds" | $SED "$delay_single_quote_subst"`'+old_postuninstall_cmds='`$ECHO "$old_postuninstall_cmds" | $SED "$delay_single_quote_subst"`'+old_archive_cmds='`$ECHO "$old_archive_cmds" | $SED "$delay_single_quote_subst"`'+lock_old_archive_extraction='`$ECHO "$lock_old_archive_extraction" | $SED "$delay_single_quote_subst"`'+CC='`$ECHO "$CC" | $SED "$delay_single_quote_subst"`'+CFLAGS='`$ECHO "$CFLAGS" | $SED "$delay_single_quote_subst"`'+compiler='`$ECHO "$compiler" | $SED "$delay_single_quote_subst"`'+GCC='`$ECHO "$GCC" | $SED "$delay_single_quote_subst"`'+lt_cv_sys_global_symbol_pipe='`$ECHO "$lt_cv_sys_global_symbol_pipe" | $SED "$delay_single_quote_subst"`'+lt_cv_sys_global_symbol_to_cdecl='`$ECHO "$lt_cv_sys_global_symbol_to_cdecl" | $SED "$delay_single_quote_subst"`'+lt_cv_sys_global_symbol_to_import='`$ECHO "$lt_cv_sys_global_symbol_to_import" | $SED "$delay_single_quote_subst"`'+lt_cv_sys_global_symbol_to_c_name_address='`$ECHO "$lt_cv_sys_global_symbol_to_c_name_address" | $SED "$delay_single_quote_subst"`'+lt_cv_sys_global_symbol_to_c_name_address_lib_prefix='`$ECHO "$lt_cv_sys_global_symbol_to_c_name_address_lib_prefix" | $SED "$delay_single_quote_subst"`'+lt_cv_nm_interface='`$ECHO "$lt_cv_nm_interface" | $SED "$delay_single_quote_subst"`'+nm_file_list_spec='`$ECHO "$nm_file_list_spec" | $SED "$delay_single_quote_subst"`'+lt_sysroot='`$ECHO "$lt_sysroot" | $SED "$delay_single_quote_subst"`'+lt_cv_truncate_bin='`$ECHO "$lt_cv_truncate_bin" | $SED "$delay_single_quote_subst"`'+objdir='`$ECHO "$objdir" | $SED "$delay_single_quote_subst"`'+MAGIC_CMD='`$ECHO "$MAGIC_CMD" | $SED "$delay_single_quote_subst"`'+lt_prog_compiler_no_builtin_flag='`$ECHO "$lt_prog_compiler_no_builtin_flag" | $SED "$delay_single_quote_subst"`'+lt_prog_compiler_pic='`$ECHO "$lt_prog_compiler_pic" | $SED "$delay_single_quote_subst"`'+lt_prog_compiler_wl='`$ECHO "$lt_prog_compiler_wl" | $SED "$delay_single_quote_subst"`'+lt_prog_compiler_static='`$ECHO "$lt_prog_compiler_static" | $SED "$delay_single_quote_subst"`'+lt_cv_prog_compiler_c_o='`$ECHO "$lt_cv_prog_compiler_c_o" | $SED "$delay_single_quote_subst"`'+need_locks='`$ECHO "$need_locks" | $SED "$delay_single_quote_subst"`'+MANIFEST_TOOL='`$ECHO "$MANIFEST_TOOL" | $SED "$delay_single_quote_subst"`'+DSYMUTIL='`$ECHO "$DSYMUTIL" | $SED "$delay_single_quote_subst"`'+NMEDIT='`$ECHO "$NMEDIT" | $SED "$delay_single_quote_subst"`'+LIPO='`$ECHO "$LIPO" | $SED "$delay_single_quote_subst"`'+OTOOL='`$ECHO "$OTOOL" | $SED "$delay_single_quote_subst"`'+OTOOL64='`$ECHO "$OTOOL64" | $SED "$delay_single_quote_subst"`'+libext='`$ECHO "$libext" | $SED "$delay_single_quote_subst"`'+shrext_cmds='`$ECHO "$shrext_cmds" | $SED "$delay_single_quote_subst"`'+extract_expsyms_cmds='`$ECHO "$extract_expsyms_cmds" | $SED "$delay_single_quote_subst"`'+archive_cmds_need_lc='`$ECHO "$archive_cmds_need_lc" | $SED "$delay_single_quote_subst"`'+enable_shared_with_static_runtimes='`$ECHO "$enable_shared_with_static_runtimes" | $SED "$delay_single_quote_subst"`'+export_dynamic_flag_spec='`$ECHO "$export_dynamic_flag_spec" | $SED "$delay_single_quote_subst"`'+whole_archive_flag_spec='`$ECHO "$whole_archive_flag_spec" | $SED "$delay_single_quote_subst"`'+compiler_needs_object='`$ECHO "$compiler_needs_object" | $SED "$delay_single_quote_subst"`'+old_archive_from_new_cmds='`$ECHO "$old_archive_from_new_cmds" | $SED "$delay_single_quote_subst"`'+old_archive_from_expsyms_cmds='`$ECHO "$old_archive_from_expsyms_cmds" | $SED "$delay_single_quote_subst"`'+archive_cmds='`$ECHO "$archive_cmds" | $SED "$delay_single_quote_subst"`'+archive_expsym_cmds='`$ECHO "$archive_expsym_cmds" | $SED "$delay_single_quote_subst"`'+module_cmds='`$ECHO "$module_cmds" | $SED "$delay_single_quote_subst"`'+module_expsym_cmds='`$ECHO "$module_expsym_cmds" | $SED "$delay_single_quote_subst"`'+with_gnu_ld='`$ECHO "$with_gnu_ld" | $SED "$delay_single_quote_subst"`'+allow_undefined_flag='`$ECHO "$allow_undefined_flag" | $SED "$delay_single_quote_subst"`'+no_undefined_flag='`$ECHO "$no_undefined_flag" | $SED "$delay_single_quote_subst"`'+hardcode_libdir_flag_spec='`$ECHO "$hardcode_libdir_flag_spec" | $SED "$delay_single_quote_subst"`'+hardcode_libdir_separator='`$ECHO "$hardcode_libdir_separator" | $SED "$delay_single_quote_subst"`'+hardcode_direct='`$ECHO "$hardcode_direct" | $SED "$delay_single_quote_subst"`'+hardcode_direct_absolute='`$ECHO "$hardcode_direct_absolute" | $SED "$delay_single_quote_subst"`'+hardcode_minus_L='`$ECHO "$hardcode_minus_L" | $SED "$delay_single_quote_subst"`'+hardcode_shlibpath_var='`$ECHO "$hardcode_shlibpath_var" | $SED "$delay_single_quote_subst"`'+hardcode_automatic='`$ECHO "$hardcode_automatic" | $SED "$delay_single_quote_subst"`'+inherit_rpath='`$ECHO "$inherit_rpath" | $SED "$delay_single_quote_subst"`'+link_all_deplibs='`$ECHO "$link_all_deplibs" | $SED "$delay_single_quote_subst"`'+always_export_symbols='`$ECHO "$always_export_symbols" | $SED "$delay_single_quote_subst"`'+export_symbols_cmds='`$ECHO "$export_symbols_cmds" | $SED "$delay_single_quote_subst"`'+exclude_expsyms='`$ECHO "$exclude_expsyms" | $SED "$delay_single_quote_subst"`'+include_expsyms='`$ECHO "$include_expsyms" | $SED "$delay_single_quote_subst"`'+prelink_cmds='`$ECHO "$prelink_cmds" | $SED "$delay_single_quote_subst"`'+postlink_cmds='`$ECHO "$postlink_cmds" | $SED "$delay_single_quote_subst"`'+file_list_spec='`$ECHO "$file_list_spec" | $SED "$delay_single_quote_subst"`'+variables_saved_for_relink='`$ECHO "$variables_saved_for_relink" | $SED "$delay_single_quote_subst"`'+need_lib_prefix='`$ECHO "$need_lib_prefix" | $SED "$delay_single_quote_subst"`'+need_version='`$ECHO "$need_version" | $SED "$delay_single_quote_subst"`'+version_type='`$ECHO "$version_type" | $SED "$delay_single_quote_subst"`'+runpath_var='`$ECHO "$runpath_var" | $SED "$delay_single_quote_subst"`'+shlibpath_var='`$ECHO "$shlibpath_var" | $SED "$delay_single_quote_subst"`'+shlibpath_overrides_runpath='`$ECHO "$shlibpath_overrides_runpath" | $SED "$delay_single_quote_subst"`'+libname_spec='`$ECHO "$libname_spec" | $SED "$delay_single_quote_subst"`'+library_names_spec='`$ECHO "$library_names_spec" | $SED "$delay_single_quote_subst"`'+soname_spec='`$ECHO "$soname_spec" | $SED "$delay_single_quote_subst"`'+install_override_mode='`$ECHO "$install_override_mode" | $SED "$delay_single_quote_subst"`'+postinstall_cmds='`$ECHO "$postinstall_cmds" | $SED "$delay_single_quote_subst"`'+postuninstall_cmds='`$ECHO "$postuninstall_cmds" | $SED "$delay_single_quote_subst"`'+finish_cmds='`$ECHO "$finish_cmds" | $SED "$delay_single_quote_subst"`'+finish_eval='`$ECHO "$finish_eval" | $SED "$delay_single_quote_subst"`'+hardcode_into_libs='`$ECHO "$hardcode_into_libs" | $SED "$delay_single_quote_subst"`'+sys_lib_search_path_spec='`$ECHO "$sys_lib_search_path_spec" | $SED "$delay_single_quote_subst"`'+configure_time_dlsearch_path='`$ECHO "$configure_time_dlsearch_path" | $SED "$delay_single_quote_subst"`'+configure_time_lt_sys_library_path='`$ECHO "$configure_time_lt_sys_library_path" | $SED "$delay_single_quote_subst"`'+hardcode_action='`$ECHO "$hardcode_action" | $SED "$delay_single_quote_subst"`'+enable_dlopen='`$ECHO "$enable_dlopen" | $SED "$delay_single_quote_subst"`'+enable_dlopen_self='`$ECHO "$enable_dlopen_self" | $SED "$delay_single_quote_subst"`'+enable_dlopen_self_static='`$ECHO "$enable_dlopen_self_static" | $SED "$delay_single_quote_subst"`'+old_striplib='`$ECHO "$old_striplib" | $SED "$delay_single_quote_subst"`'+striplib='`$ECHO "$striplib" | $SED "$delay_single_quote_subst"`'+compiler_lib_search_dirs='`$ECHO "$compiler_lib_search_dirs" | $SED "$delay_single_quote_subst"`'+predep_objects='`$ECHO "$predep_objects" | $SED "$delay_single_quote_subst"`'+postdep_objects='`$ECHO "$postdep_objects" | $SED "$delay_single_quote_subst"`'+predeps='`$ECHO "$predeps" | $SED "$delay_single_quote_subst"`'+postdeps='`$ECHO "$postdeps" | $SED "$delay_single_quote_subst"`'+compiler_lib_search_path='`$ECHO "$compiler_lib_search_path" | $SED "$delay_single_quote_subst"`'+LD_CXX='`$ECHO "$LD_CXX" | $SED "$delay_single_quote_subst"`'+reload_flag_CXX='`$ECHO "$reload_flag_CXX" | $SED "$delay_single_quote_subst"`'+reload_cmds_CXX='`$ECHO "$reload_cmds_CXX" | $SED "$delay_single_quote_subst"`'+old_archive_cmds_CXX='`$ECHO "$old_archive_cmds_CXX" | $SED "$delay_single_quote_subst"`'+compiler_CXX='`$ECHO "$compiler_CXX" | $SED "$delay_single_quote_subst"`'+GCC_CXX='`$ECHO "$GCC_CXX" | $SED "$delay_single_quote_subst"`'+lt_prog_compiler_no_builtin_flag_CXX='`$ECHO "$lt_prog_compiler_no_builtin_flag_CXX" | $SED "$delay_single_quote_subst"`'+lt_prog_compiler_pic_CXX='`$ECHO "$lt_prog_compiler_pic_CXX" | $SED "$delay_single_quote_subst"`'+lt_prog_compiler_wl_CXX='`$ECHO "$lt_prog_compiler_wl_CXX" | $SED "$delay_single_quote_subst"`'+lt_prog_compiler_static_CXX='`$ECHO "$lt_prog_compiler_static_CXX" | $SED "$delay_single_quote_subst"`'+lt_cv_prog_compiler_c_o_CXX='`$ECHO "$lt_cv_prog_compiler_c_o_CXX" | $SED "$delay_single_quote_subst"`'+archive_cmds_need_lc_CXX='`$ECHO "$archive_cmds_need_lc_CXX" | $SED "$delay_single_quote_subst"`'+enable_shared_with_static_runtimes_CXX='`$ECHO "$enable_shared_with_static_runtimes_CXX" | $SED "$delay_single_quote_subst"`'+export_dynamic_flag_spec_CXX='`$ECHO "$export_dynamic_flag_spec_CXX" | $SED "$delay_single_quote_subst"`'+whole_archive_flag_spec_CXX='`$ECHO "$whole_archive_flag_spec_CXX" | $SED "$delay_single_quote_subst"`'+compiler_needs_object_CXX='`$ECHO "$compiler_needs_object_CXX" | $SED "$delay_single_quote_subst"`'+old_archive_from_new_cmds_CXX='`$ECHO "$old_archive_from_new_cmds_CXX" | $SED "$delay_single_quote_subst"`'+old_archive_from_expsyms_cmds_CXX='`$ECHO "$old_archive_from_expsyms_cmds_CXX" | $SED "$delay_single_quote_subst"`'+archive_cmds_CXX='`$ECHO "$archive_cmds_CXX" | $SED "$delay_single_quote_subst"`'+archive_expsym_cmds_CXX='`$ECHO "$archive_expsym_cmds_CXX" | $SED "$delay_single_quote_subst"`'+module_cmds_CXX='`$ECHO "$module_cmds_CXX" | $SED "$delay_single_quote_subst"`'+module_expsym_cmds_CXX='`$ECHO "$module_expsym_cmds_CXX" | $SED "$delay_single_quote_subst"`'+with_gnu_ld_CXX='`$ECHO "$with_gnu_ld_CXX" | $SED "$delay_single_quote_subst"`'+allow_undefined_flag_CXX='`$ECHO "$allow_undefined_flag_CXX" | $SED "$delay_single_quote_subst"`'+no_undefined_flag_CXX='`$ECHO "$no_undefined_flag_CXX" | $SED "$delay_single_quote_subst"`'+hardcode_libdir_flag_spec_CXX='`$ECHO "$hardcode_libdir_flag_spec_CXX" | $SED "$delay_single_quote_subst"`'+hardcode_libdir_separator_CXX='`$ECHO "$hardcode_libdir_separator_CXX" | $SED "$delay_single_quote_subst"`'+hardcode_direct_CXX='`$ECHO "$hardcode_direct_CXX" | $SED "$delay_single_quote_subst"`'+hardcode_direct_absolute_CXX='`$ECHO "$hardcode_direct_absolute_CXX" | $SED "$delay_single_quote_subst"`'+hardcode_minus_L_CXX='`$ECHO "$hardcode_minus_L_CXX" | $SED "$delay_single_quote_subst"`'+hardcode_shlibpath_var_CXX='`$ECHO "$hardcode_shlibpath_var_CXX" | $SED "$delay_single_quote_subst"`'+hardcode_automatic_CXX='`$ECHO "$hardcode_automatic_CXX" | $SED "$delay_single_quote_subst"`'+inherit_rpath_CXX='`$ECHO "$inherit_rpath_CXX" | $SED "$delay_single_quote_subst"`'+link_all_deplibs_CXX='`$ECHO "$link_all_deplibs_CXX" | $SED "$delay_single_quote_subst"`'+always_export_symbols_CXX='`$ECHO "$always_export_symbols_CXX" | $SED "$delay_single_quote_subst"`'+export_symbols_cmds_CXX='`$ECHO "$export_symbols_cmds_CXX" | $SED "$delay_single_quote_subst"`'+exclude_expsyms_CXX='`$ECHO "$exclude_expsyms_CXX" | $SED "$delay_single_quote_subst"`'+include_expsyms_CXX='`$ECHO "$include_expsyms_CXX" | $SED "$delay_single_quote_subst"`'+prelink_cmds_CXX='`$ECHO "$prelink_cmds_CXX" | $SED "$delay_single_quote_subst"`'+postlink_cmds_CXX='`$ECHO "$postlink_cmds_CXX" | $SED "$delay_single_quote_subst"`'+file_list_spec_CXX='`$ECHO "$file_list_spec_CXX" | $SED "$delay_single_quote_subst"`'+hardcode_action_CXX='`$ECHO "$hardcode_action_CXX" | $SED "$delay_single_quote_subst"`'+compiler_lib_search_dirs_CXX='`$ECHO "$compiler_lib_search_dirs_CXX" | $SED "$delay_single_quote_subst"`'+predep_objects_CXX='`$ECHO "$predep_objects_CXX" | $SED "$delay_single_quote_subst"`'+postdep_objects_CXX='`$ECHO "$postdep_objects_CXX" | $SED "$delay_single_quote_subst"`'+predeps_CXX='`$ECHO "$predeps_CXX" | $SED "$delay_single_quote_subst"`'+postdeps_CXX='`$ECHO "$postdeps_CXX" | $SED "$delay_single_quote_subst"`'+compiler_lib_search_path_CXX='`$ECHO "$compiler_lib_search_path_CXX" | $SED "$delay_single_quote_subst"`'++LTCC='$LTCC'+LTCFLAGS='$LTCFLAGS'+compiler='$compiler_DEFAULT'++# A function that is used when there is no print builtin or printf.+func_fallback_echo ()+{+  eval 'cat <<_LTECHO_EOF+\$1+_LTECHO_EOF'+}++# Quote evaled strings.+for var in SHELL \+ECHO \+PATH_SEPARATOR \+SED \+GREP \+EGREP \+FGREP \+LD \+NM \+LN_S \+lt_SP2NL \+lt_NL2SP \+reload_flag \+FILECMD \+OBJDUMP \+deplibs_check_method \+file_magic_cmd \+file_magic_glob \+want_nocaseglob \+DLLTOOL \+sharedlib_from_linklib_cmd \+AR \+archiver_list_spec \+STRIP \+RANLIB \+CC \+CFLAGS \+compiler \+lt_cv_sys_global_symbol_pipe \+lt_cv_sys_global_symbol_to_cdecl \+lt_cv_sys_global_symbol_to_import \+lt_cv_sys_global_symbol_to_c_name_address \+lt_cv_sys_global_symbol_to_c_name_address_lib_prefix \+lt_cv_nm_interface \+nm_file_list_spec \+lt_cv_truncate_bin \+lt_prog_compiler_no_builtin_flag \+lt_prog_compiler_pic \+lt_prog_compiler_wl \+lt_prog_compiler_static \+lt_cv_prog_compiler_c_o \+need_locks \+MANIFEST_TOOL \+DSYMUTIL \+NMEDIT \+LIPO \+OTOOL \+OTOOL64 \+shrext_cmds \+export_dynamic_flag_spec \+whole_archive_flag_spec \+compiler_needs_object \+with_gnu_ld \+allow_undefined_flag \+no_undefined_flag \+hardcode_libdir_flag_spec \+hardcode_libdir_separator \+exclude_expsyms \+include_expsyms \+file_list_spec \+variables_saved_for_relink \+libname_spec \+library_names_spec \+soname_spec \+install_override_mode \+finish_eval \+old_striplib \+striplib \+compiler_lib_search_dirs \+predep_objects \+postdep_objects \+predeps \+postdeps \+compiler_lib_search_path \+LD_CXX \+reload_flag_CXX \+compiler_CXX \+lt_prog_compiler_no_builtin_flag_CXX \+lt_prog_compiler_pic_CXX \+lt_prog_compiler_wl_CXX \+lt_prog_compiler_static_CXX \+lt_cv_prog_compiler_c_o_CXX \+export_dynamic_flag_spec_CXX \+whole_archive_flag_spec_CXX \+compiler_needs_object_CXX \+with_gnu_ld_CXX \+allow_undefined_flag_CXX \+no_undefined_flag_CXX \+hardcode_libdir_flag_spec_CXX \+hardcode_libdir_separator_CXX \+exclude_expsyms_CXX \+include_expsyms_CXX \+file_list_spec_CXX \+compiler_lib_search_dirs_CXX \+predep_objects_CXX \+postdep_objects_CXX \+predeps_CXX \+postdeps_CXX \+compiler_lib_search_path_CXX; do+    case \`eval \\\\\$ECHO \\\\""\\\\\$\$var"\\\\"\` in+    *[\\\\\\\`\\"\\\$]*)+      eval "lt_\$var=\\\\\\"\\\`\\\$ECHO \\"\\\$\$var\\" | \\\$SED \\"\\\$sed_quote_subst\\"\\\`\\\\\\"" ## exclude from sc_prohibit_nested_quotes+      ;;+    *)+      eval "lt_\$var=\\\\\\"\\\$\$var\\\\\\""+      ;;+    esac+done++# Double-quote double-evaled strings.+for var in reload_cmds \+old_postinstall_cmds \+old_postuninstall_cmds \+old_archive_cmds \+extract_expsyms_cmds \+old_archive_from_new_cmds \+old_archive_from_expsyms_cmds \+archive_cmds \+archive_expsym_cmds \+module_cmds \+module_expsym_cmds \+export_symbols_cmds \+prelink_cmds \+postlink_cmds \+postinstall_cmds \+postuninstall_cmds \+finish_cmds \+sys_lib_search_path_spec \+configure_time_dlsearch_path \+configure_time_lt_sys_library_path \+reload_cmds_CXX \+old_archive_cmds_CXX \+old_archive_from_new_cmds_CXX \+old_archive_from_expsyms_cmds_CXX \+archive_cmds_CXX \+archive_expsym_cmds_CXX \+module_cmds_CXX \+module_expsym_cmds_CXX \+export_symbols_cmds_CXX \+prelink_cmds_CXX \+postlink_cmds_CXX; do+    case \`eval \\\\\$ECHO \\\\""\\\\\$\$var"\\\\"\` in+    *[\\\\\\\`\\"\\\$]*)+      eval "lt_\$var=\\\\\\"\\\`\\\$ECHO \\"\\\$\$var\\" | \\\$SED -e \\"\\\$double_quote_subst\\" -e \\"\\\$sed_quote_subst\\" -e \\"\\\$delay_variable_subst\\"\\\`\\\\\\"" ## exclude from sc_prohibit_nested_quotes+      ;;+    *)+      eval "lt_\$var=\\\\\\"\\\$\$var\\\\\\""+      ;;+    esac+done++ac_aux_dir='$ac_aux_dir'++# See if we are running on zsh, and set the options that allow our+# commands through without removal of \ escapes INIT.+if test -n "\${ZSH_VERSION+set}"; then+   setopt NO_GLOB_SUBST+fi+++    PACKAGE='$PACKAGE'+    VERSION='$VERSION'+    RM='$RM'+    ofile='$ofile'+++++++_ACEOF++cat >>$CONFIG_STATUS <<\_ACEOF || ac_write_fail=1++# Handling of arguments.+for ac_config_target in $ac_config_targets+do+  case $ac_config_target in+    "fficonfig.h") CONFIG_HEADERS="$CONFIG_HEADERS fficonfig.h" ;;+    "buildir") CONFIG_COMMANDS="$CONFIG_COMMANDS buildir" ;;+    "depfiles") CONFIG_COMMANDS="$CONFIG_COMMANDS depfiles" ;;+    "libtool") CONFIG_COMMANDS="$CONFIG_COMMANDS libtool" ;;+    "include/ffi.h") CONFIG_FILES="$CONFIG_FILES include/ffi.h" ;;+    "libffi-clib.buildinfo") CONFIG_FILES="$CONFIG_FILES libffi-clib.buildinfo" ;;++  *) as_fn_error $? "invalid argument: \`$ac_config_target'" "$LINENO" 5;;+  esac+done+++# If the user did not use the arguments to specify the items to instantiate,+# then the envvar interface is used.  Set only those that are not.+# We use the long form for the default assignment because of an extremely+# bizarre bug on SunOS 4.1.3.+if $ac_need_defaults; then+  test "${CONFIG_FILES+set}" = set || CONFIG_FILES=$config_files+  test "${CONFIG_HEADERS+set}" = set || CONFIG_HEADERS=$config_headers+  test "${CONFIG_COMMANDS+set}" = set || CONFIG_COMMANDS=$config_commands+fi++# Have a temporary directory for convenience.  Make it in the build tree+# simply because there is no reason against having it here, and in addition,+# creating and moving files from /tmp can sometimes cause problems.+# Hook for its removal unless debugging.+# Note that there is a small window in which the directory will not be cleaned:+# after its creation but before its name has been assigned to `$tmp'.+$debug ||+{+  tmp= ac_tmp=+  trap 'exit_status=$?+  : "${ac_tmp:=$tmp}"+  { test ! -d "$ac_tmp" || rm -fr "$ac_tmp"; } && exit $exit_status+' 0+  trap 'as_fn_exit 1' 1 2 13 15+}+# Create a (secure) tmp directory for tmp files.++{+  tmp=`(umask 077 && mktemp -d "./confXXXXXX") 2>/dev/null` &&+  test -d "$tmp"+}  ||+{+  tmp=./conf$$-$RANDOM+  (umask 077 && mkdir "$tmp")+} || as_fn_error $? "cannot create a temporary directory in ." "$LINENO" 5+ac_tmp=$tmp++# Set up the scripts for CONFIG_FILES section.+# No need to generate them if there are no CONFIG_FILES.+# This happens for instance with `./config.status config.h'.+if test -n "$CONFIG_FILES"; then+++ac_cr=`echo X | tr X '\015'`+# On cygwin, bash can eat \r inside `` if the user requested igncr.+# But we know of no other shell where ac_cr would be empty at this+# point, so we can use a bashism as a fallback.+if test "x$ac_cr" = x; then+  eval ac_cr=\$\'\\r\'+fi+ac_cs_awk_cr=`$AWK 'BEGIN { print "a\rb" }' </dev/null 2>/dev/null`+if test "$ac_cs_awk_cr" = "a${ac_cr}b"; then+  ac_cs_awk_cr='\\r'+else+  ac_cs_awk_cr=$ac_cr+fi++echo 'BEGIN {' >"$ac_tmp/subs1.awk" &&+_ACEOF+++{+  echo "cat >conf$$subs.awk <<_ACEOF" &&+  echo "$ac_subst_vars" | sed 's/.*/&!$&$ac_delim/' &&+  echo "_ACEOF"+} >conf$$subs.sh ||+  as_fn_error $? "could not make $CONFIG_STATUS" "$LINENO" 5+ac_delim_num=`echo "$ac_subst_vars" | grep -c '^'`+ac_delim='%!_!# '+for ac_last_try in false false false false false :; do+  . ./conf$$subs.sh ||+    as_fn_error $? "could not make $CONFIG_STATUS" "$LINENO" 5++  ac_delim_n=`sed -n "s/.*$ac_delim\$/X/p" conf$$subs.awk | grep -c X`+  if test $ac_delim_n = $ac_delim_num; then+    break+  elif $ac_last_try; then+    as_fn_error $? "could not make $CONFIG_STATUS" "$LINENO" 5+  else+    ac_delim="$ac_delim!$ac_delim _$ac_delim!! "+  fi+done+rm -f conf$$subs.sh++cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1+cat >>"\$ac_tmp/subs1.awk" <<\\_ACAWK &&+_ACEOF+sed -n '+h+s/^/S["/; s/!.*/"]=/+p+g+s/^[^!]*!//+:repl+t repl+s/'"$ac_delim"'$//+t delim+:nl+h+s/\(.\{148\}\)..*/\1/+t more1+s/["\\]/\\&/g; s/^/"/; s/$/\\n"\\/+p+n+b repl+:more1+s/["\\]/\\&/g; s/^/"/; s/$/"\\/+p+g+s/.\{148\}//+t nl+:delim+h+s/\(.\{148\}\)..*/\1/+t more2+s/["\\]/\\&/g; s/^/"/; s/$/"/+p+b+:more2+s/["\\]/\\&/g; s/^/"/; s/$/"\\/+p+g+s/.\{148\}//+t delim+' <conf$$subs.awk | sed '+/^[^""]/{+  N+  s/\n//+}+' >>$CONFIG_STATUS || ac_write_fail=1+rm -f conf$$subs.awk+cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1+_ACAWK+cat >>"\$ac_tmp/subs1.awk" <<_ACAWK &&+  for (key in S) S_is_set[key] = 1+  FS = ""++}+{+  line = $ 0+  nfields = split(line, field, "@")+  substed = 0+  len = length(field[1])+  for (i = 2; i < nfields; i++) {+    key = field[i]+    keylen = length(key)+    if (S_is_set[key]) {+      value = S[key]+      line = substr(line, 1, len) "" value "" substr(line, len + keylen + 3)+      len += length(value) + length(field[++i])+      substed = 1+    } else+      len += 1 + keylen+  }++  print line+}++_ACAWK+_ACEOF+cat >>$CONFIG_STATUS <<\_ACEOF || ac_write_fail=1+if sed "s/$ac_cr//" < /dev/null > /dev/null 2>&1; then+  sed "s/$ac_cr\$//; s/$ac_cr/$ac_cs_awk_cr/g"+else+  cat+fi < "$ac_tmp/subs1.awk" > "$ac_tmp/subs.awk" \+  || as_fn_error $? "could not setup config files machinery" "$LINENO" 5+_ACEOF++# VPATH may cause trouble with some makes, so we remove sole $(srcdir),+# ${srcdir} and @srcdir@ entries from VPATH if srcdir is ".", strip leading and+# trailing colons and then remove the whole line if VPATH becomes empty+# (actually we leave an empty line to preserve line numbers).+if test "x$srcdir" = x.; then+  ac_vpsub='/^[	 ]*VPATH[	 ]*=[	 ]*/{+h+s///+s/^/:/+s/[	 ]*$/:/+s/:\$(srcdir):/:/g+s/:\${srcdir}:/:/g+s/:@srcdir@:/:/g+s/^:*//+s/:*$//+x+s/\(=[	 ]*\).*/\1/+G+s/\n//+s/^[^=]*=[	 ]*$//+}'+fi++cat >>$CONFIG_STATUS <<\_ACEOF || ac_write_fail=1+fi # test -n "$CONFIG_FILES"++# Set up the scripts for CONFIG_HEADERS section.+# No need to generate them if there are no CONFIG_HEADERS.+# This happens for instance with `./config.status Makefile'.+if test -n "$CONFIG_HEADERS"; then+cat >"$ac_tmp/defines.awk" <<\_ACAWK ||+BEGIN {+_ACEOF++# Transform confdefs.h into an awk script `defines.awk', embedded as+# here-document in config.status, that substitutes the proper values into+# config.h.in to produce config.h.++# Create a delimiter string that does not exist in confdefs.h, to ease+# handling of long lines.+ac_delim='%!_!# '+for ac_last_try in false false :; do+  ac_tt=`sed -n "/$ac_delim/p" confdefs.h`+  if test -z "$ac_tt"; then+    break+  elif $ac_last_try; then+    as_fn_error $? "could not make $CONFIG_HEADERS" "$LINENO" 5+  else+    ac_delim="$ac_delim!$ac_delim _$ac_delim!! "+  fi+done++# For the awk script, D is an array of macro values keyed by name,+# likewise P contains macro parameters if any.  Preserve backslash+# newline sequences.++ac_word_re=[_$as_cr_Letters][_$as_cr_alnum]*+sed -n '+s/.\{148\}/&'"$ac_delim"'/g+t rset+:rset+s/^[	 ]*#[	 ]*define[	 ][	 ]*/ /+t def+d+:def+s/\\$//+t bsnl+s/["\\]/\\&/g+s/^ \('"$ac_word_re"'\)\(([^()]*)\)[	 ]*\(.*\)/P["\1"]="\2"\+D["\1"]=" \3"/p+s/^ \('"$ac_word_re"'\)[	 ]*\(.*\)/D["\1"]=" \2"/p+d+:bsnl+s/["\\]/\\&/g+s/^ \('"$ac_word_re"'\)\(([^()]*)\)[	 ]*\(.*\)/P["\1"]="\2"\+D["\1"]=" \3\\\\\\n"\\/p+t cont+s/^ \('"$ac_word_re"'\)[	 ]*\(.*\)/D["\1"]=" \2\\\\\\n"\\/p+t cont+d+:cont+n+s/.\{148\}/&'"$ac_delim"'/g+t clear+:clear+s/\\$//+t bsnlc+s/["\\]/\\&/g; s/^/"/; s/$/"/p+d+:bsnlc+s/["\\]/\\&/g; s/^/"/; s/$/\\\\\\n"\\/p+b cont+' <confdefs.h | sed '+s/'"$ac_delim"'/"\\\+"/g' >>$CONFIG_STATUS || ac_write_fail=1++cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1+  for (key in D) D_is_set[key] = 1+  FS = ""+}+/^[\t ]*#[\t ]*(define|undef)[\t ]+$ac_word_re([\t (]|\$)/ {+  line = \$ 0+  split(line, arg, " ")+  if (arg[1] == "#") {+    defundef = arg[2]+    mac1 = arg[3]+  } else {+    defundef = substr(arg[1], 2)+    mac1 = arg[2]+  }+  split(mac1, mac2, "(") #)+  macro = mac2[1]+  prefix = substr(line, 1, index(line, defundef) - 1)+  if (D_is_set[macro]) {+    # Preserve the white space surrounding the "#".+    print prefix "define", macro P[macro] D[macro]+    next+  } else {+    # Replace #undef with comments.  This is necessary, for example,+    # in the case of _POSIX_SOURCE, which is predefined and required+    # on some systems where configure will not decide to define it.+    if (defundef == "undef") {+      print "/*", prefix defundef, macro, "*/"+      next+    }+  }+}+{ print }+_ACAWK+_ACEOF+cat >>$CONFIG_STATUS <<\_ACEOF || ac_write_fail=1+  as_fn_error $? "could not setup config headers machinery" "$LINENO" 5+fi # test -n "$CONFIG_HEADERS"+++eval set X "  :F $CONFIG_FILES  :H $CONFIG_HEADERS    :C $CONFIG_COMMANDS"+shift+for ac_tag+do+  case $ac_tag in+  :[FHLC]) ac_mode=$ac_tag; continue;;+  esac+  case $ac_mode$ac_tag in+  :[FHL]*:*);;+  :L* | :C*:*) as_fn_error $? "invalid tag \`$ac_tag'" "$LINENO" 5;;+  :[FH]-) ac_tag=-:-;;+  :[FH]*) ac_tag=$ac_tag:$ac_tag.in;;+  esac+  ac_save_IFS=$IFS+  IFS=:+  set x $ac_tag+  IFS=$ac_save_IFS+  shift+  ac_file=$1+  shift++  case $ac_mode in+  :L) ac_source=$1;;+  :[FH])+    ac_file_inputs=+    for ac_f+    do+      case $ac_f in+      -) ac_f="$ac_tmp/stdin";;+      *) # Look for the file first in the build tree, then in the source tree+	 # (if the path is not absolute).  The absolute path cannot be DOS-style,+	 # because $ac_f cannot contain `:'.+	 test -f "$ac_f" ||+	   case $ac_f in+	   [\\/$]*) false;;+	   *) test -f "$srcdir/$ac_f" && ac_f="$srcdir/$ac_f";;+	   esac ||+	   as_fn_error 1 "cannot find input file: \`$ac_f'" "$LINENO" 5;;+      esac+      case $ac_f in *\'*) ac_f=`$as_echo "$ac_f" | sed "s/'/'\\\\\\\\''/g"`;; esac+      as_fn_append ac_file_inputs " '$ac_f'"+    done++    # Let's still pretend it is `configure' which instantiates (i.e., don't+    # use $as_me), people would be surprised to read:+    #    /* config.h.  Generated by config.status.  */+    configure_input='Generated from '`+	  $as_echo "$*" | sed 's|^[^:]*/||;s|:[^:]*/|, |g'+	`' by configure.'+    if test x"$ac_file" != x-; then+      configure_input="$ac_file.  $configure_input"+      { $as_echo "$as_me:${as_lineno-$LINENO}: creating $ac_file" >&5+$as_echo "$as_me: creating $ac_file" >&6;}+    fi+    # Neutralize special characters interpreted by sed in replacement strings.+    case $configure_input in #(+    *\&* | *\|* | *\\* )+       ac_sed_conf_input=`$as_echo "$configure_input" |+       sed 's/[\\\\&|]/\\\\&/g'`;; #(+    *) ac_sed_conf_input=$configure_input;;+    esac++    case $ac_tag in+    *:-:* | *:-) cat >"$ac_tmp/stdin" \+      || as_fn_error $? "could not create $ac_file" "$LINENO" 5 ;;+    esac+    ;;+  esac++  ac_dir=`$as_dirname -- "$ac_file" ||+$as_expr X"$ac_file" : 'X\(.*[^/]\)//*[^/][^/]*/*$' \| \+	 X"$ac_file" : 'X\(//\)[^/]' \| \+	 X"$ac_file" : 'X\(//\)$' \| \+	 X"$ac_file" : 'X\(/\)' \| . 2>/dev/null ||+$as_echo X"$ac_file" |+    sed '/^X\(.*[^/]\)\/\/*[^/][^/]*\/*$/{+	    s//\1/+	    q+	  }+	  /^X\(\/\/\)[^/].*/{+	    s//\1/+	    q+	  }+	  /^X\(\/\/\)$/{+	    s//\1/+	    q+	  }+	  /^X\(\/\).*/{+	    s//\1/+	    q+	  }+	  s/.*/./; q'`+  as_dir="$ac_dir"; as_fn_mkdir_p+  ac_builddir=.++case "$ac_dir" in+.) ac_dir_suffix= ac_top_builddir_sub=. ac_top_build_prefix= ;;+*)+  ac_dir_suffix=/`$as_echo "$ac_dir" | sed 's|^\.[\\/]||'`+  # A ".." for each directory in $ac_dir_suffix.+  ac_top_builddir_sub=`$as_echo "$ac_dir_suffix" | sed 's|/[^\\/]*|/..|g;s|/||'`+  case $ac_top_builddir_sub in+  "") ac_top_builddir_sub=. ac_top_build_prefix= ;;+  *)  ac_top_build_prefix=$ac_top_builddir_sub/ ;;+  esac ;;+esac+ac_abs_top_builddir=$ac_pwd+ac_abs_builddir=$ac_pwd$ac_dir_suffix+# for backward compatibility:+ac_top_builddir=$ac_top_build_prefix++case $srcdir in+  .)  # We are building in place.+    ac_srcdir=.+    ac_top_srcdir=$ac_top_builddir_sub+    ac_abs_top_srcdir=$ac_pwd ;;+  [\\/]* | ?:[\\/]* )  # Absolute name.+    ac_srcdir=$srcdir$ac_dir_suffix;+    ac_top_srcdir=$srcdir+    ac_abs_top_srcdir=$srcdir ;;+  *) # Relative name.+    ac_srcdir=$ac_top_build_prefix$srcdir$ac_dir_suffix+    ac_top_srcdir=$ac_top_build_prefix$srcdir+    ac_abs_top_srcdir=$ac_pwd/$srcdir ;;+esac+ac_abs_srcdir=$ac_abs_top_srcdir$ac_dir_suffix+++  case $ac_mode in+  :F)+  #+  # CONFIG_FILE+  #++_ACEOF++cat >>$CONFIG_STATUS <<\_ACEOF || ac_write_fail=1+# If the template does not know about datarootdir, expand it.+# FIXME: This hack should be removed a few years after 2.60.+ac_datarootdir_hack=; ac_datarootdir_seen=+ac_sed_dataroot='+/datarootdir/ {+  p+  q+}+/@datadir@/p+/@docdir@/p+/@infodir@/p+/@localedir@/p+/@mandir@/p'+case `eval "sed -n \"\$ac_sed_dataroot\" $ac_file_inputs"` in+*datarootdir*) ac_datarootdir_seen=yes;;+*@datadir@*|*@docdir@*|*@infodir@*|*@localedir@*|*@mandir@*)+  { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: $ac_file_inputs seems to ignore the --datarootdir setting" >&5+$as_echo "$as_me: WARNING: $ac_file_inputs seems to ignore the --datarootdir setting" >&2;}+_ACEOF+cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1+  ac_datarootdir_hack='+  s&@datadir@&$datadir&g+  s&@docdir@&$docdir&g+  s&@infodir@&$infodir&g+  s&@localedir@&$localedir&g+  s&@mandir@&$mandir&g+  s&\\\${datarootdir}&$datarootdir&g' ;;+esac+_ACEOF++# Neutralize VPATH when `$srcdir' = `.'.+# Shell code in configure.ac might set extrasub.+# FIXME: do we really want to maintain this feature?+cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1+ac_sed_extra="$ac_vpsub+$extrasub+_ACEOF+cat >>$CONFIG_STATUS <<\_ACEOF || ac_write_fail=1+:t+/@[a-zA-Z_][a-zA-Z_0-9]*@/!b+s|@configure_input@|$ac_sed_conf_input|;t t+s&@top_builddir@&$ac_top_builddir_sub&;t t+s&@top_build_prefix@&$ac_top_build_prefix&;t t+s&@srcdir@&$ac_srcdir&;t t+s&@abs_srcdir@&$ac_abs_srcdir&;t t+s&@top_srcdir@&$ac_top_srcdir&;t t+s&@abs_top_srcdir@&$ac_abs_top_srcdir&;t t+s&@builddir@&$ac_builddir&;t t+s&@abs_builddir@&$ac_abs_builddir&;t t+s&@abs_top_builddir@&$ac_abs_top_builddir&;t t+$ac_datarootdir_hack+"+eval sed \"\$ac_sed_extra\" "$ac_file_inputs" | $AWK -f "$ac_tmp/subs.awk" \+  >$ac_tmp/out || as_fn_error $? "could not create $ac_file" "$LINENO" 5++test -z "$ac_datarootdir_hack$ac_datarootdir_seen" &&+  { ac_out=`sed -n '/\${datarootdir}/p' "$ac_tmp/out"`; test -n "$ac_out"; } &&+  { ac_out=`sed -n '/^[	 ]*datarootdir[	 ]*:*=/p' \+      "$ac_tmp/out"`; test -z "$ac_out"; } &&+  { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: $ac_file contains a reference to the variable \`datarootdir'+which seems to be undefined.  Please make sure it is defined" >&5+$as_echo "$as_me: WARNING: $ac_file contains a reference to the variable \`datarootdir'+which seems to be undefined.  Please make sure it is defined" >&2;}++  rm -f "$ac_tmp/stdin"+  case $ac_file in+  -) cat "$ac_tmp/out" && rm -f "$ac_tmp/out";;+  *) rm -f "$ac_file" && mv "$ac_tmp/out" "$ac_file";;+  esac \+  || as_fn_error $? "could not create $ac_file" "$LINENO" 5+ ;;+  :H)+  #+  # CONFIG_HEADER+  #+  if test x"$ac_file" != x-; then+    {+      $as_echo "/* $configure_input  */" \+      && eval '$AWK -f "$ac_tmp/defines.awk"' "$ac_file_inputs"+    } >"$ac_tmp/config.h" \+      || as_fn_error $? "could not create $ac_file" "$LINENO" 5+    if diff "$ac_file" "$ac_tmp/config.h" >/dev/null 2>&1; then+      { $as_echo "$as_me:${as_lineno-$LINENO}: $ac_file is unchanged" >&5+$as_echo "$as_me: $ac_file is unchanged" >&6;}+    else+      rm -f "$ac_file"+      mv "$ac_tmp/config.h" "$ac_file" \+	|| as_fn_error $? "could not create $ac_file" "$LINENO" 5+    fi+  else+    $as_echo "/* $configure_input  */" \+      && eval '$AWK -f "$ac_tmp/defines.awk"' "$ac_file_inputs" \+      || as_fn_error $? "could not create -" "$LINENO" 5+  fi+# Compute "$ac_file"'s index in $config_headers.+_am_arg="$ac_file"+_am_stamp_count=1+for _am_header in $config_headers :; do+  case $_am_header in+    $_am_arg | $_am_arg:* )+      break ;;+    * )+      _am_stamp_count=`expr $_am_stamp_count + 1` ;;+  esac+done+echo "timestamp for $_am_arg" >`$as_dirname -- "$_am_arg" ||+$as_expr X"$_am_arg" : 'X\(.*[^/]\)//*[^/][^/]*/*$' \| \+	 X"$_am_arg" : 'X\(//\)[^/]' \| \+	 X"$_am_arg" : 'X\(//\)$' \| \+	 X"$_am_arg" : 'X\(/\)' \| . 2>/dev/null ||+$as_echo X"$_am_arg" |+    sed '/^X\(.*[^/]\)\/\/*[^/][^/]*\/*$/{+	    s//\1/+	    q+	  }+	  /^X\(\/\/\)[^/].*/{+	    s//\1/+	    q+	  }+	  /^X\(\/\/\)$/{+	    s//\1/+	    q+	  }+	  /^X\(\/\).*/{+	    s//\1/+	    q+	  }+	  s/.*/./; q'`/stamp-h$_am_stamp_count+ ;;++  :C)  { $as_echo "$as_me:${as_lineno-$LINENO}: executing $ac_file commands" >&5+$as_echo "$as_me: executing $ac_file commands" >&6;}+ ;;+  esac+++  case $ac_file$ac_mode in+    "buildir":C)   ac_top_srcdir="$ax_enable_builddir_srcdir"+  if test ".$ax_enable_builddir" = ".." ; then+    if test -f "$top_srcdir/Makefile" ; then+      { $as_echo "$as_me:${as_lineno-$LINENO}: skipping top_srcdir/Makefile - left untouched" >&5+$as_echo "$as_me: skipping top_srcdir/Makefile - left untouched" >&6;}+    else+      { $as_echo "$as_me:${as_lineno-$LINENO}: skipping top_srcdir/Makefile - not created" >&5+$as_echo "$as_me: skipping top_srcdir/Makefile - not created" >&6;}+    fi+  else+    if test -f "$ac_top_srcdir/Makefile" ; then+      a=`grep "^VERSION " "$ac_top_srcdir/Makefile"` ; b=`grep "^VERSION " Makefile`+      test "$a" != "$b" && rm "$ac_top_srcdir/Makefile"+    fi+    if test -f "$ac_top_srcdir/Makefile" ; then+	echo "$ac_top_srcdir/Makefile : $ac_top_srcdir/Makefile.in" > $tmp/conftemp.mk+	echo "	@ echo 'REMOVED,,,' >\$@" >> $tmp/conftemp.mk+      eval "${MAKE-make} -f $tmp/conftemp.mk 2>/dev/null >/dev/null"+      if grep '^REMOVED,,,' "$ac_top_srcdir/Makefile" >/dev/null+      then rm $ac_top_srcdir/Makefile ; fi+      cp $tmp/conftemp.mk $ac_top_srcdir/makefiles.mk~      ## DEBUGGING+    fi+    if test ! -f "$ac_top_srcdir/Makefile" ; then+      { $as_echo "$as_me:${as_lineno-$LINENO}: create top_srcdir/Makefile guessed from local Makefile" >&5+$as_echo "$as_me: create top_srcdir/Makefile guessed from local Makefile" >&6;}+      x='`' ; cat >$tmp/conftemp.sed <<_EOF+/^\$/n+x+/^\$/bS+x+/\\\\\$/{H;d;}+{H;s/.*//;x;}+bM+:S+x+/\\\\\$/{h;d;}+{h;s/.*//;x;}+:M+s/\\(\\n\\)	/\\1 /g+/^	/d+/^[	 ]*[\\#]/d+/^VPATH *=/d+s/^srcdir *=.*/srcdir = ./+s/^top_srcdir *=.*/top_srcdir = ./+/[:=]/!d+/^\\./d+/ = /b+/ .= /b+/:/!b+s/:.*/:/+s/ /  /g+s/ \\([a-z][a-z-]*[a-zA-Z0-9]\\)\\([ :]\\)/ \\1 \\1-all\\2/g+s/^\\([a-z][a-z-]*[a-zA-Z0-9]\\)\\([ :]\\)/\\1 \\1-all\\2/+s/  / /g+/^all all-all[ :]/i\\+all-configured : all-all+s/ [a-zA-Z0-9-]*-all [a-zA-Z0-9-]*-all-all//g+/-all-all/d+a\\+	@ HOST="\$(HOST)\" \\\\\\+	; test ".\$\$HOST" = "." && HOST=$x sh $ax_enable_builddir_auxdir/config.guess $x \\\\\\+	; BUILD=$x grep "^#### \$\$HOST " Makefile | sed -e 's/.*|//' $x \\\\\\+	; use=$x basename "\$\@" -all $x; n=$x echo \$\$BUILD | wc -w $x \\\\\\+	; echo "MAKE \$\$HOST : \$\$n * \$\@"; if test "\$\$n" -eq "0" ; then : \\\\\\+	; BUILD=$x grep "^####.*|" Makefile |tail -1| sed -e 's/.*|//' $x ; fi \\\\\\+	; test ".\$\$BUILD" = "." && BUILD="." \\\\\\+	; test "\$\$use" = "\$\@" && BUILD=$x echo "\$\$BUILD" | tail -1 $x \\\\\\+	; for i in \$\$BUILD ; do test ".\$\$i" = "." && continue \\\\\\+	; (cd "\$\$i" && test ! -f configure && \$(MAKE) \$\$use) || exit; done+/dist-all *:/a\\+	@ HOST="\$(HOST)\" \\\\\\+	; test ".\$\$HOST" = "." && HOST=$x sh $ax_enable_builddir_auxdir/config.guess $x \\\\\\+	; BUILD=$x grep "^#### \$\$HOST " Makefile | sed -e 's/.*|//' $x \\\\\\+	; found=$x echo \$\$BUILD | wc -w $x \\\\\\+	; echo "MAKE \$\$HOST : \$\$found \$(PACKAGE)-\$(VERSION).tar.*" \\\\\\+	; if test "\$\$found" -eq "0" ; then : \\\\\\+	; BUILD=$x grep "^#### .*|" Makefile |tail -1| sed -e 's/.*|//' $x \\\\\\+	; fi ; for i in \$\$BUILD ; do test ".\$\$i" = "." && continue \\\\\\+	; for f in \$\$i/\$(PACKAGE)-\$(VERSION).tar.* \\\\\\+	; do test -f "\$\$f" && mv "\$\$f" \$(PUB). ; done ; break ; done+/dist-[a-zA-Z0-9]*-all *:/a\\+	@ HOST="\$(HOST)\" \\\\\\+	; test ".\$\$HOST" = "." && HOST=$x sh ./config.guess $x \\\\\\+	; BUILD=$x grep "^#### \$\$HOST " Makefile | sed -e 's/.*|//' $x \\\\\\+	; found=$x echo \$\$BUILD | wc -w $x \\\\\\+	; echo "MAKE \$\$HOST : \$\$found \$(PACKAGE)-\$(VERSION).*" \\\\\\+	; if test "\$\$found" -eq "0" ; then : \\\\\\+	; BUILD=$x grep "^#### .*|" Makefile |tail -1| sed -e 's/.*|//' $x \\\\\\+	; fi ; for i in \$\$BUILD ; do test ".\$\$i" = "." && continue \\\\\\+	; for f in \$\$i/\$(PACKAGE)-\$(VERSION).* \\\\\\+	; do test -f "\$\$f" && mv "\$\$f" \$(PUB). ; done ; break ; done+/distclean-all *:/a\\+	@ HOST="\$(HOST)\" \\\\\\+	; test ".\$\$HOST" = "." && HOST=$x sh $ax_enable_builddir_auxdir/config.guess $x \\\\\\+	; BUILD=$x grep "^#### .*|" Makefile | sed -e 's/.*|//' $x \\\\\\+	; use=$x basename "\$\@" -all $x; n=$x echo \$\$BUILD | wc -w $x \\\\\\+	; echo "MAKE \$\$HOST : \$\$n * \$\@ (all local builds)" \\\\\\+	; test ".\$\$BUILD" = "." && BUILD="." \\\\\\+	; for i in \$\$BUILD ; do test ".\$\$i" = "." && continue \\\\\\+	; echo "# rm -r \$\$i"; done ; echo "# (sleep 3)" ; sleep 3 \\\\\\+	; for i in \$\$BUILD ; do test ".\$\$i" = "." && continue \\\\\\+	; echo "\$\$i" | grep "^/" > /dev/null && continue \\\\\\+	; echo "\$\$i" | grep "^../" > /dev/null && continue \\\\\\+	; echo "rm -r \$\$i"; (rm -r "\$\$i") ; done ; rm Makefile+_EOF+      cp "$tmp/conftemp.sed" "$ac_top_srcdir/makefile.sed~"            ## DEBUGGING+      $ax_enable_builddir_sed -f $tmp/conftemp.sed Makefile >$ac_top_srcdir/Makefile+      if test -f "$ac_top_srcdir/Makefile.mk" ; then+        { $as_echo "$as_me:${as_lineno-$LINENO}: extend top_srcdir/Makefile with top_srcdir/Makefile.mk" >&5+$as_echo "$as_me: extend top_srcdir/Makefile with top_srcdir/Makefile.mk" >&6;}+        cat $ac_top_srcdir/Makefile.mk >>$ac_top_srcdir/Makefile+      fi ; xxxx="####"+      echo "$xxxx CONFIGURATIONS FOR TOPLEVEL MAKEFILE: " >>$ac_top_srcdir/Makefile+      # sanity check+      if grep '^; echo "MAKE ' $ac_top_srcdir/Makefile >/dev/null ; then+        { $as_echo "$as_me:${as_lineno-$LINENO}: buggy sed found - it deletes tab in \"a\" text parts" >&5+$as_echo "$as_me: buggy sed found - it deletes tab in \"a\" text parts" >&6;}+        $ax_enable_builddir_sed -e '/^@ HOST=/s/^/	/' -e '/^; /s/^/	/' $ac_top_srcdir/Makefile \+          >$ac_top_srcdir/Makefile~+        (test -s $ac_top_srcdir/Makefile~ && mv $ac_top_srcdir/Makefile~ $ac_top_srcdir/Makefile) 2>/dev/null+      fi+    else+      xxxx="\\#\\#\\#\\#"+      # echo "/^$xxxx *$ax_enable_builddir_host /d" >$tmp/conftemp.sed+      echo "s!^$xxxx [^|]* | *$ax_enable_builddir *\$!$xxxx ...... $ax_enable_builddir!" >$tmp/conftemp.sed+      $ax_enable_builddir_sed -f "$tmp/conftemp.sed" "$ac_top_srcdir/Makefile" >$tmp/mkfile.tmp+        cp "$tmp/conftemp.sed" "$ac_top_srcdir/makefiles.sed~"         ## DEBUGGING+        cp "$tmp/mkfile.tmp"   "$ac_top_srcdir/makefiles.out~"         ## DEBUGGING+      if cmp -s "$ac_top_srcdir/Makefile" "$tmp/mkfile.tmp" 2>/dev/null ; then+        { $as_echo "$as_me:${as_lineno-$LINENO}: keeping top_srcdir/Makefile from earlier configure" >&5+$as_echo "$as_me: keeping top_srcdir/Makefile from earlier configure" >&6;}+        rm "$tmp/mkfile.tmp"+      else+        { $as_echo "$as_me:${as_lineno-$LINENO}: reusing top_srcdir/Makefile from earlier configure" >&5+$as_echo "$as_me: reusing top_srcdir/Makefile from earlier configure" >&6;}+        mv "$tmp/mkfile.tmp" "$ac_top_srcdir/Makefile"+      fi+    fi+    { $as_echo "$as_me:${as_lineno-$LINENO}: build in $ax_enable_builddir (HOST=$ax_enable_builddir_host)" >&5+$as_echo "$as_me: build in $ax_enable_builddir (HOST=$ax_enable_builddir_host)" >&6;}+    xxxx="####"+    echo "$xxxx" "$ax_enable_builddir_host" "|$ax_enable_builddir" >>$ac_top_srcdir/Makefile+  fi+ ;;+    "depfiles":C) test x"$AMDEP_TRUE" != x"" || {+  # Older Autoconf quotes --file arguments for eval, but not when files+  # are listed without --file.  Let's play safe and only enable the eval+  # if we detect the quoting.+  # TODO: see whether this extra hack can be removed once we start+  # requiring Autoconf 2.70 or later.+  case $CONFIG_FILES in #(+  *\'*) :+    eval set x "$CONFIG_FILES" ;; #(+  *) :+    set x $CONFIG_FILES ;; #(+  *) :+     ;;+esac+  shift+  # Used to flag and report bootstrapping failures.+  am_rc=0+  for am_mf+  do+    # Strip MF so we end up with the name of the file.+    am_mf=`$as_echo "$am_mf" | sed -e 's/:.*$//'`+    # Check whether this is an Automake generated Makefile which includes+    # dependency-tracking related rules and includes.+    # Grep'ing the whole file directly is not great: AIX grep has a line+    # limit of 2048, but all sed's we know have understand at least 4000.+    sed -n 's,^am--depfiles:.*,X,p' "$am_mf" | grep X >/dev/null 2>&1 \+      || continue+    am_dirpart=`$as_dirname -- "$am_mf" ||+$as_expr X"$am_mf" : 'X\(.*[^/]\)//*[^/][^/]*/*$' \| \+	 X"$am_mf" : 'X\(//\)[^/]' \| \+	 X"$am_mf" : 'X\(//\)$' \| \+	 X"$am_mf" : 'X\(/\)' \| . 2>/dev/null ||+$as_echo X"$am_mf" |+    sed '/^X\(.*[^/]\)\/\/*[^/][^/]*\/*$/{+	    s//\1/+	    q+	  }+	  /^X\(\/\/\)[^/].*/{+	    s//\1/+	    q+	  }+	  /^X\(\/\/\)$/{+	    s//\1/+	    q+	  }+	  /^X\(\/\).*/{+	    s//\1/+	    q+	  }+	  s/.*/./; q'`+    am_filepart=`$as_basename -- "$am_mf" ||+$as_expr X/"$am_mf" : '.*/\([^/][^/]*\)/*$' \| \+	 X"$am_mf" : 'X\(//\)$' \| \+	 X"$am_mf" : 'X\(/\)' \| . 2>/dev/null ||+$as_echo X/"$am_mf" |+    sed '/^.*\/\([^/][^/]*\)\/*$/{+	    s//\1/+	    q+	  }+	  /^X\/\(\/\/\)$/{+	    s//\1/+	    q+	  }+	  /^X\/\(\/\).*/{+	    s//\1/+	    q+	  }+	  s/.*/./; q'`+    { echo "$as_me:$LINENO: cd "$am_dirpart" \+      && sed -e '/# am--include-marker/d' "$am_filepart" \+        | $MAKE -f - am--depfiles" >&5+   (cd "$am_dirpart" \+      && sed -e '/# am--include-marker/d' "$am_filepart" \+        | $MAKE -f - am--depfiles) >&5 2>&5+   ac_status=$?+   echo "$as_me:$LINENO: \$? = $ac_status" >&5+   (exit $ac_status); } || am_rc=$?+  done+  if test $am_rc -ne 0; then+    { { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5+$as_echo "$as_me: error: in \`$ac_pwd':" >&2;}+as_fn_error $? "Something went wrong bootstrapping makefile fragments+    for automatic dependency tracking.  If GNU make was not used, consider+    re-running the configure script with MAKE=\"gmake\" (or whatever is+    necessary).  You can also try re-running configure with the+    '--disable-dependency-tracking' option to at least be able to build+    the package (albeit without support for automatic dependency tracking).+See \`config.log' for more details" "$LINENO" 5; }+  fi+  { am_dirpart=; unset am_dirpart;}+  { am_filepart=; unset am_filepart;}+  { am_mf=; unset am_mf;}+  { am_rc=; unset am_rc;}+  rm -f conftest-deps.mk+}+ ;;+    "libtool":C)++    # See if we are running on zsh, and set the options that allow our+    # commands through without removal of \ escapes.+    if test -n "${ZSH_VERSION+set}"; then+      setopt NO_GLOB_SUBST+    fi++    cfgfile=${ofile}T+    trap "$RM \"$cfgfile\"; exit 1" 1 2 15+    $RM "$cfgfile"++    cat <<_LT_EOF >> "$cfgfile"+#! $SHELL+# Generated automatically by $as_me ($PACKAGE) $VERSION+# NOTE: Changes made to this file will be lost: look at ltmain.sh.++# Provide generalized library-building support services.+# Written by Gordon Matzigkeit, 1996++# Copyright (C) 2014 Free Software Foundation, Inc.+# This is free software; see the source for copying conditions.  There is NO+# warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.++# GNU Libtool is free software; you can redistribute it and/or modify+# it under the terms of the GNU General Public License as published by+# the Free Software Foundation; either version 2 of of the License, or+# (at your option) any later version.+#+# As a special exception to the GNU General Public License, if you+# distribute this file as part of a program or library that is built+# using GNU Libtool, you may include this file under the  same+# distribution terms that you use for the rest of that program.+#+# GNU Libtool is distributed in the hope that it will be useful, but+# WITHOUT ANY WARRANTY; without even the implied warranty of+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the+# GNU General Public License for more details.+#+# You should have received a copy of the GNU General Public License+# along with this program.  If not, see <http://www.gnu.org/licenses/>.+++# The names of the tagged configurations supported by this script.+available_tags='CXX '++# Configured defaults for sys_lib_dlsearch_path munging.+: \${LT_SYS_LIBRARY_PATH="$configure_time_lt_sys_library_path"}++# ### BEGIN LIBTOOL CONFIG++# Which release of libtool.m4 was used?+macro_version=$macro_version+macro_revision=$macro_revision++# Whether or not to build shared libraries.+build_libtool_libs=$enable_shared++# Whether or not to build static libraries.+build_old_libs=$enable_static++# What type of objects to build.+pic_mode=$pic_mode++# Whether or not to optimize for fast installation.+fast_install=$enable_fast_install++# Shared archive member basename,for filename based shared library versioning on AIX.+shared_archive_member_spec=$shared_archive_member_spec++# Shell to use when invoking shell scripts.+SHELL=$lt_SHELL++# An echo program that protects backslashes.+ECHO=$lt_ECHO++# The PATH separator for the build system.+PATH_SEPARATOR=$lt_PATH_SEPARATOR++# The host system.+host_alias=$host_alias+host=$host+host_os=$host_os++# The build system.+build_alias=$build_alias+build=$build+build_os=$build_os++# A sed program that does not truncate output.+SED=$lt_SED++# Sed that helps us avoid accidentally triggering echo(1) options like -n.+Xsed="\$SED -e 1s/^X//"++# A grep program that handles long lines.+GREP=$lt_GREP++# An ERE matcher.+EGREP=$lt_EGREP++# A literal string matcher.+FGREP=$lt_FGREP++# A BSD- or MS-compatible name lister.+NM=$lt_NM++# Whether we need soft or hard links.+LN_S=$lt_LN_S++# What is the maximum length of a command?+max_cmd_len=$max_cmd_len++# Object file suffix (normally "o").+objext=$ac_objext++# Executable file suffix (normally "").+exeext=$exeext++# whether the shell understands "unset".+lt_unset=$lt_unset++# turn spaces into newlines.+SP2NL=$lt_lt_SP2NL++# turn newlines into spaces.+NL2SP=$lt_lt_NL2SP++# convert \$build file names to \$host format.+to_host_file_cmd=$lt_cv_to_host_file_cmd++# convert \$build files to toolchain format.+to_tool_file_cmd=$lt_cv_to_tool_file_cmd++# A file(cmd) program that detects file types.+FILECMD=$lt_FILECMD++# An object symbol dumper.+OBJDUMP=$lt_OBJDUMP++# Method to check whether dependent libraries are shared objects.+deplibs_check_method=$lt_deplibs_check_method++# Command to use when deplibs_check_method = "file_magic".+file_magic_cmd=$lt_file_magic_cmd++# How to find potential files when deplibs_check_method = "file_magic".+file_magic_glob=$lt_file_magic_glob++# Find potential files using nocaseglob when deplibs_check_method = "file_magic".+want_nocaseglob=$lt_want_nocaseglob++# DLL creation program.+DLLTOOL=$lt_DLLTOOL++# Command to associate shared and link libraries.+sharedlib_from_linklib_cmd=$lt_sharedlib_from_linklib_cmd++# The archiver.+AR=$lt_AR++# Flags to create an archive (by configure).+lt_ar_flags=$lt_ar_flags++# Flags to create an archive.+AR_FLAGS=\${ARFLAGS-"\$lt_ar_flags"}++# How to feed a file listing to the archiver.+archiver_list_spec=$lt_archiver_list_spec++# A symbol stripping program.+STRIP=$lt_STRIP++# Commands used to install an old-style archive.+RANLIB=$lt_RANLIB+old_postinstall_cmds=$lt_old_postinstall_cmds+old_postuninstall_cmds=$lt_old_postuninstall_cmds++# Whether to use a lock for old archive extraction.+lock_old_archive_extraction=$lock_old_archive_extraction++# A C compiler.+LTCC=$lt_CC++# LTCC compiler flags.+LTCFLAGS=$lt_CFLAGS++# Take the output of nm and produce a listing of raw symbols and C names.+global_symbol_pipe=$lt_lt_cv_sys_global_symbol_pipe++# Transform the output of nm in a proper C declaration.+global_symbol_to_cdecl=$lt_lt_cv_sys_global_symbol_to_cdecl++# Transform the output of nm into a list of symbols to manually relocate.+global_symbol_to_import=$lt_lt_cv_sys_global_symbol_to_import++# Transform the output of nm in a C name address pair.+global_symbol_to_c_name_address=$lt_lt_cv_sys_global_symbol_to_c_name_address++# Transform the output of nm in a C name address pair when lib prefix is needed.+global_symbol_to_c_name_address_lib_prefix=$lt_lt_cv_sys_global_symbol_to_c_name_address_lib_prefix++# The name lister interface.+nm_interface=$lt_lt_cv_nm_interface++# Specify filename containing input files for \$NM.+nm_file_list_spec=$lt_nm_file_list_spec++# The root where to search for dependent libraries,and where our libraries should be installed.+lt_sysroot=$lt_sysroot++# Command to truncate a binary pipe.+lt_truncate_bin=$lt_lt_cv_truncate_bin++# The name of the directory that contains temporary libtool files.+objdir=$objdir++# Used to examine libraries when file_magic_cmd begins with "file".+MAGIC_CMD=$MAGIC_CMD++# Must we lock files when doing compilation?+need_locks=$lt_need_locks++# Manifest tool.+MANIFEST_TOOL=$lt_MANIFEST_TOOL++# Tool to manipulate archived DWARF debug symbol files on Mac OS X.+DSYMUTIL=$lt_DSYMUTIL++# Tool to change global to local symbols on Mac OS X.+NMEDIT=$lt_NMEDIT++# Tool to manipulate fat objects and archives on Mac OS X.+LIPO=$lt_LIPO++# ldd/readelf like tool for Mach-O binaries on Mac OS X.+OTOOL=$lt_OTOOL++# ldd/readelf like tool for 64 bit Mach-O binaries on Mac OS X 10.4.+OTOOL64=$lt_OTOOL64++# Old archive suffix (normally "a").+libext=$libext++# Shared library suffix (normally ".so").+shrext_cmds=$lt_shrext_cmds++# The commands to extract the exported symbol list from a shared archive.+extract_expsyms_cmds=$lt_extract_expsyms_cmds++# Variables whose values should be saved in libtool wrapper scripts and+# restored at link time.+variables_saved_for_relink=$lt_variables_saved_for_relink++# Do we need the "lib" prefix for modules?+need_lib_prefix=$need_lib_prefix++# Do we need a version for libraries?+need_version=$need_version++# Library versioning type.+version_type=$version_type++# Shared library runtime path variable.+runpath_var=$runpath_var++# Shared library path variable.+shlibpath_var=$shlibpath_var++# Is shlibpath searched before the hard-coded library search path?+shlibpath_overrides_runpath=$shlibpath_overrides_runpath++# Format of library name prefix.+libname_spec=$lt_libname_spec++# List of archive names.  First name is the real one, the rest are links.+# The last name is the one that the linker finds with -lNAME+library_names_spec=$lt_library_names_spec++# The coded name of the library, if different from the real name.+soname_spec=$lt_soname_spec++# Permission mode override for installation of shared libraries.+install_override_mode=$lt_install_override_mode++# Command to use after installation of a shared archive.+postinstall_cmds=$lt_postinstall_cmds++# Command to use after uninstallation of a shared archive.+postuninstall_cmds=$lt_postuninstall_cmds++# Commands used to finish a libtool library installation in a directory.+finish_cmds=$lt_finish_cmds++# As "finish_cmds", except a single script fragment to be evaled but+# not shown.+finish_eval=$lt_finish_eval++# Whether we should hardcode library paths into libraries.+hardcode_into_libs=$hardcode_into_libs++# Compile-time system search path for libraries.+sys_lib_search_path_spec=$lt_sys_lib_search_path_spec++# Detected run-time system search path for libraries.+sys_lib_dlsearch_path_spec=$lt_configure_time_dlsearch_path++# Explicit LT_SYS_LIBRARY_PATH set during ./configure time.+configure_time_lt_sys_library_path=$lt_configure_time_lt_sys_library_path++# Whether dlopen is supported.+dlopen_support=$enable_dlopen++# Whether dlopen of programs is supported.+dlopen_self=$enable_dlopen_self++# Whether dlopen of statically linked programs is supported.+dlopen_self_static=$enable_dlopen_self_static++# Commands to strip libraries.+old_striplib=$lt_old_striplib+striplib=$lt_striplib+++# The linker used to build libraries.+LD=$lt_LD++# How to create reloadable object files.+reload_flag=$lt_reload_flag+reload_cmds=$lt_reload_cmds++# Commands used to build an old-style archive.+old_archive_cmds=$lt_old_archive_cmds++# A language specific compiler.+CC=$lt_compiler++# Is the compiler the GNU compiler?+with_gcc=$GCC++# Compiler flag to turn off builtin functions.+no_builtin_flag=$lt_lt_prog_compiler_no_builtin_flag++# Additional compiler flags for building library objects.+pic_flag=$lt_lt_prog_compiler_pic++# How to pass a linker flag through the compiler.+wl=$lt_lt_prog_compiler_wl++# Compiler flag to prevent dynamic linking.+link_static_flag=$lt_lt_prog_compiler_static++# Does compiler simultaneously support -c and -o options?+compiler_c_o=$lt_lt_cv_prog_compiler_c_o++# Whether or not to add -lc for building shared libraries.+build_libtool_need_lc=$archive_cmds_need_lc++# Whether or not to disallow shared libs when runtime libs are static.+allow_libtool_libs_with_static_runtimes=$enable_shared_with_static_runtimes++# Compiler flag to allow reflexive dlopens.+export_dynamic_flag_spec=$lt_export_dynamic_flag_spec++# Compiler flag to generate shared objects directly from archives.+whole_archive_flag_spec=$lt_whole_archive_flag_spec++# Whether the compiler copes with passing no objects directly.+compiler_needs_object=$lt_compiler_needs_object++# Create an old-style archive from a shared archive.+old_archive_from_new_cmds=$lt_old_archive_from_new_cmds++# Create a temporary old-style archive to link instead of a shared archive.+old_archive_from_expsyms_cmds=$lt_old_archive_from_expsyms_cmds++# Commands used to build a shared archive.+archive_cmds=$lt_archive_cmds+archive_expsym_cmds=$lt_archive_expsym_cmds++# Commands used to build a loadable module if different from building+# a shared archive.+module_cmds=$lt_module_cmds+module_expsym_cmds=$lt_module_expsym_cmds++# Whether we are building with GNU ld or not.+with_gnu_ld=$lt_with_gnu_ld++# Flag that allows shared libraries with undefined symbols to be built.+allow_undefined_flag=$lt_allow_undefined_flag++# Flag that enforces no undefined symbols.+no_undefined_flag=$lt_no_undefined_flag++# Flag to hardcode \$libdir into a binary during linking.+# This must work even if \$libdir does not exist+hardcode_libdir_flag_spec=$lt_hardcode_libdir_flag_spec++# Whether we need a single "-rpath" flag with a separated argument.+hardcode_libdir_separator=$lt_hardcode_libdir_separator++# Set to "yes" if using DIR/libNAME\$shared_ext during linking hardcodes+# DIR into the resulting binary.+hardcode_direct=$hardcode_direct++# Set to "yes" if using DIR/libNAME\$shared_ext during linking hardcodes+# DIR into the resulting binary and the resulting library dependency is+# "absolute",i.e impossible to change by setting \$shlibpath_var if the+# library is relocated.+hardcode_direct_absolute=$hardcode_direct_absolute++# Set to "yes" if using the -LDIR flag during linking hardcodes DIR+# into the resulting binary.+hardcode_minus_L=$hardcode_minus_L++# Set to "yes" if using SHLIBPATH_VAR=DIR during linking hardcodes DIR+# into the resulting binary.+hardcode_shlibpath_var=$hardcode_shlibpath_var++# Set to "yes" if building a shared library automatically hardcodes DIR+# into the library and all subsequent libraries and executables linked+# against it.+hardcode_automatic=$hardcode_automatic++# Set to yes if linker adds runtime paths of dependent libraries+# to runtime path list.+inherit_rpath=$inherit_rpath++# Whether libtool must link a program against all its dependency libraries.+link_all_deplibs=$link_all_deplibs++# Set to "yes" if exported symbols are required.+always_export_symbols=$always_export_symbols++# The commands to list exported symbols.+export_symbols_cmds=$lt_export_symbols_cmds++# Symbols that should not be listed in the preloaded symbols.+exclude_expsyms=$lt_exclude_expsyms++# Symbols that must always be exported.+include_expsyms=$lt_include_expsyms++# Commands necessary for linking programs (against libraries) with templates.+prelink_cmds=$lt_prelink_cmds++# Commands necessary for finishing linking programs.+postlink_cmds=$lt_postlink_cmds++# Specify filename containing input files.+file_list_spec=$lt_file_list_spec++# How to hardcode a shared library path into an executable.+hardcode_action=$hardcode_action++# The directories searched by this compiler when creating a shared library.+compiler_lib_search_dirs=$lt_compiler_lib_search_dirs++# Dependencies to place before and after the objects being linked to+# create a shared library.+predep_objects=$lt_predep_objects+postdep_objects=$lt_postdep_objects+predeps=$lt_predeps+postdeps=$lt_postdeps++# The library search path used internally by the compiler when linking+# a shared library.+compiler_lib_search_path=$lt_compiler_lib_search_path++# ### END LIBTOOL CONFIG++_LT_EOF++    cat <<'_LT_EOF' >> "$cfgfile"++# ### BEGIN FUNCTIONS SHARED WITH CONFIGURE++# func_munge_path_list VARIABLE PATH+# -----------------------------------+# VARIABLE is name of variable containing _space_ separated list of+# directories to be munged by the contents of PATH, which is string+# having a format:+# "DIR[:DIR]:"+#       string "DIR[ DIR]" will be prepended to VARIABLE+# ":DIR[:DIR]"+#       string "DIR[ DIR]" will be appended to VARIABLE+# "DIRP[:DIRP]::[DIRA:]DIRA"+#       string "DIRP[ DIRP]" will be prepended to VARIABLE and string+#       "DIRA[ DIRA]" will be appended to VARIABLE+# "DIR[:DIR]"+#       VARIABLE will be replaced by "DIR[ DIR]"+func_munge_path_list ()+{+    case x$2 in+    x)+        ;;+    *:)+        eval $1=\"`$ECHO $2 | $SED 's/:/ /g'` \$$1\"+        ;;+    x:*)+        eval $1=\"\$$1 `$ECHO $2 | $SED 's/:/ /g'`\"+        ;;+    *::*)+        eval $1=\"\$$1\ `$ECHO $2 | $SED -e 's/.*:://' -e 's/:/ /g'`\"+        eval $1=\"`$ECHO $2 | $SED -e 's/::.*//' -e 's/:/ /g'`\ \$$1\"+        ;;+    *)+        eval $1=\"`$ECHO $2 | $SED 's/:/ /g'`\"+        ;;+    esac+}+++# Calculate cc_basename.  Skip known compiler wrappers and cross-prefix.+func_cc_basename ()+{+    for cc_temp in $*""; do+      case $cc_temp in+        compile | *[\\/]compile | ccache | *[\\/]ccache ) ;;+        distcc | *[\\/]distcc | purify | *[\\/]purify ) ;;+        \-*) ;;+        *) break;;+      esac+    done+    func_cc_basename_result=`$ECHO "$cc_temp" | $SED "s%.*/%%; s%^$host_alias-%%"`+}+++# ### END FUNCTIONS SHARED WITH CONFIGURE++_LT_EOF++  case $host_os in+  aix3*)+    cat <<\_LT_EOF >> "$cfgfile"+# AIX sometimes has problems with the GCC collect2 program.  For some+# reason, if we set the COLLECT_NAMES environment variable, the problems+# vanish in a puff of smoke.+if test set != "${COLLECT_NAMES+set}"; then+  COLLECT_NAMES=+  export COLLECT_NAMES+fi+_LT_EOF+    ;;+  esac+++ltmain=$ac_aux_dir/ltmain.sh+++  # We use sed instead of cat because bash on DJGPP gets confused if+  # if finds mixed CR/LF and LF-only lines.  Since sed operates in+  # text mode, it properly converts lines to CR/LF.  This bash problem+  # is reportedly fixed, but why not run on old versions too?+  $SED '$q' "$ltmain" >> "$cfgfile" \+     || (rm -f "$cfgfile"; exit 1)++   mv -f "$cfgfile" "$ofile" ||+    (rm -f "$ofile" && cp "$cfgfile" "$ofile" && rm -f "$cfgfile")+  chmod +x "$ofile"+++    cat <<_LT_EOF >> "$ofile"++# ### BEGIN LIBTOOL TAG CONFIG: CXX++# The linker used to build libraries.+LD=$lt_LD_CXX++# How to create reloadable object files.+reload_flag=$lt_reload_flag_CXX+reload_cmds=$lt_reload_cmds_CXX++# Commands used to build an old-style archive.+old_archive_cmds=$lt_old_archive_cmds_CXX++# A language specific compiler.+CC=$lt_compiler_CXX++# Is the compiler the GNU compiler?+with_gcc=$GCC_CXX++# Compiler flag to turn off builtin functions.+no_builtin_flag=$lt_lt_prog_compiler_no_builtin_flag_CXX++# Additional compiler flags for building library objects.+pic_flag=$lt_lt_prog_compiler_pic_CXX++# How to pass a linker flag through the compiler.+wl=$lt_lt_prog_compiler_wl_CXX++# Compiler flag to prevent dynamic linking.+link_static_flag=$lt_lt_prog_compiler_static_CXX++# Does compiler simultaneously support -c and -o options?+compiler_c_o=$lt_lt_cv_prog_compiler_c_o_CXX++# Whether or not to add -lc for building shared libraries.+build_libtool_need_lc=$archive_cmds_need_lc_CXX++# Whether or not to disallow shared libs when runtime libs are static.+allow_libtool_libs_with_static_runtimes=$enable_shared_with_static_runtimes_CXX++# Compiler flag to allow reflexive dlopens.+export_dynamic_flag_spec=$lt_export_dynamic_flag_spec_CXX++# Compiler flag to generate shared objects directly from archives.+whole_archive_flag_spec=$lt_whole_archive_flag_spec_CXX++# Whether the compiler copes with passing no objects directly.+compiler_needs_object=$lt_compiler_needs_object_CXX++# Create an old-style archive from a shared archive.+old_archive_from_new_cmds=$lt_old_archive_from_new_cmds_CXX++# Create a temporary old-style archive to link instead of a shared archive.+old_archive_from_expsyms_cmds=$lt_old_archive_from_expsyms_cmds_CXX++# Commands used to build a shared archive.+archive_cmds=$lt_archive_cmds_CXX+archive_expsym_cmds=$lt_archive_expsym_cmds_CXX++# Commands used to build a loadable module if different from building+# a shared archive.+module_cmds=$lt_module_cmds_CXX+module_expsym_cmds=$lt_module_expsym_cmds_CXX++# Whether we are building with GNU ld or not.+with_gnu_ld=$lt_with_gnu_ld_CXX++# Flag that allows shared libraries with undefined symbols to be built.+allow_undefined_flag=$lt_allow_undefined_flag_CXX++# Flag that enforces no undefined symbols.+no_undefined_flag=$lt_no_undefined_flag_CXX++# Flag to hardcode \$libdir into a binary during linking.+# This must work even if \$libdir does not exist+hardcode_libdir_flag_spec=$lt_hardcode_libdir_flag_spec_CXX++# Whether we need a single "-rpath" flag with a separated argument.+hardcode_libdir_separator=$lt_hardcode_libdir_separator_CXX++# Set to "yes" if using DIR/libNAME\$shared_ext during linking hardcodes+# DIR into the resulting binary.+hardcode_direct=$hardcode_direct_CXX++# Set to "yes" if using DIR/libNAME\$shared_ext during linking hardcodes+# DIR into the resulting binary and the resulting library dependency is+# "absolute",i.e impossible to change by setting \$shlibpath_var if the+# library is relocated.+hardcode_direct_absolute=$hardcode_direct_absolute_CXX++# Set to "yes" if using the -LDIR flag during linking hardcodes DIR+# into the resulting binary.+hardcode_minus_L=$hardcode_minus_L_CXX++# Set to "yes" if using SHLIBPATH_VAR=DIR during linking hardcodes DIR+# into the resulting binary.+hardcode_shlibpath_var=$hardcode_shlibpath_var_CXX++# Set to "yes" if building a shared library automatically hardcodes DIR+# into the library and all subsequent libraries and executables linked+# against it.+hardcode_automatic=$hardcode_automatic_CXX++# Set to yes if linker adds runtime paths of dependent libraries+# to runtime path list.+inherit_rpath=$inherit_rpath_CXX++# Whether libtool must link a program against all its dependency libraries.+link_all_deplibs=$link_all_deplibs_CXX++# Set to "yes" if exported symbols are required.+always_export_symbols=$always_export_symbols_CXX++# The commands to list exported symbols.+export_symbols_cmds=$lt_export_symbols_cmds_CXX++# Symbols that should not be listed in the preloaded symbols.+exclude_expsyms=$lt_exclude_expsyms_CXX++# Symbols that must always be exported.+include_expsyms=$lt_include_expsyms_CXX++# Commands necessary for linking programs (against libraries) with templates.+prelink_cmds=$lt_prelink_cmds_CXX++# Commands necessary for finishing linking programs.+postlink_cmds=$lt_postlink_cmds_CXX++# Specify filename containing input files.+file_list_spec=$lt_file_list_spec_CXX++# How to hardcode a shared library path into an executable.+hardcode_action=$hardcode_action_CXX++# The directories searched by this compiler when creating a shared library.+compiler_lib_search_dirs=$lt_compiler_lib_search_dirs_CXX++# Dependencies to place before and after the objects being linked to+# create a shared library.+predep_objects=$lt_predep_objects_CXX+postdep_objects=$lt_postdep_objects_CXX+predeps=$lt_predeps_CXX+postdeps=$lt_postdeps_CXX++# The library search path used internally by the compiler when linking+# a shared library.+compiler_lib_search_path=$lt_compiler_lib_search_path_CXX++# ### END LIBTOOL TAG CONFIG: CXX+_LT_EOF++ ;;++  esac+done # for ac_tag+++as_fn_exit 0+_ACEOF+ac_clean_files=$ac_clean_files_save++test $ac_write_fail = 0 ||+  as_fn_error $? "write failure creating $CONFIG_STATUS" "$LINENO" 5+++# configure is writing to config.log, and then calls config.status.+# config.status does its own redirection, appending to config.log.+# Unfortunately, on DOS this fails, as config.log is still kept open+# by configure, so config.status won't be able to write to it; its+# output is simply discarded.  So we exec the FD to /dev/null,+# effectively closing config.log, so it can be properly (re)opened and+# appended to by config.status.  When coming back to configure, we+# need to make the FD available again.+if test "$no_create" != yes; then+  ac_cs_success=:+  ac_config_status_args=+  test "$silent" = yes &&+    ac_config_status_args="$ac_config_status_args --quiet"+  exec 5>/dev/null+  $SHELL $CONFIG_STATUS $ac_config_status_args || ac_cs_success=false+  exec 5>>config.log+  # Use ||, not &&, to avoid exiting from the if with $? = 1, which+  # would make configure fail if this is the last instruction.+  $ac_cs_success || as_fn_exit 1+fi+if test -n "$ac_unrecognized_opts" && test "$enable_option_checking" != no; then+  { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: unrecognized options: $ac_unrecognized_opts" >&5+$as_echo "$as_me: WARNING: unrecognized options: $ac_unrecognized_opts" >&2;}+fi  
configure.ac view
@@ -2,7 +2,7 @@  AC_PREREQ([2.68]) -AC_INIT([libffi],[3.5.2],[http://github.com/libffi/libffi/issues])+AC_INIT([libffi],[3.6.0],[http://github.com/libffi/libffi/issues]) AC_CONFIG_HEADERS([fficonfig.h])  FFI_VERSION_STRING="3.5.2"@@ -111,6 +111,10 @@ AC_SUBST(HAVE_LONG_DOUBLE) AC_SUBST(HAVE_LONG_DOUBLE_VARIANT) +AC_CHECK_TYPE(__int128_t,+	      AC_DEFINE(HAVE_INT128, 1,+			[Define if __int128_t and __uint128_t are supported.]))+ AC_C_BIGENDIAN  GCC_AS_CFI_PSEUDO_OP@@ -182,6 +186,12 @@     fi     CFLAGS="$CFLAGS -sMEMORY64=$WASM64_MEMORY64"     ;;+  LOONGARCH64)+    CFLAGS="$CFLAGS -mcmodel=medium"+    ;;+  LOONGARCH32)+    # No special for LoongArch32 now.+    ;; esac  AC_CACHE_CHECK([whether compiler supports pointer authentication],@@ -370,7 +380,8 @@        fi      ;;      *arm*-*-linux-* | aarch64*-*-linux-* | i*86-*-linux-* | x86_64-*-linux-* \-     | loongarch*-*-linux-* | s390x*-linux-* | powerpc*-linux-*)+     | loongarch*-*-linux-* | s390x*-linux-* | powerpc*-linux-* \+     | riscv*-linux-*)        AC_DEFINE(FFI_EXEC_STATIC_TRAMP, 1,                  [Define this if you want statically defined trampolines])      ;;
configure.host view
@@ -141,8 +141,13 @@ 	SOURCES="ffi.c"; ASM_SOURCES="sysv.S" 	;; -  loongarch64-*-*)-	TARGET=LOONGARCH64; TARGETDIR=loongarch64+  loongarch*-*-*)+	if test $ac_cv_sizeof_size_t = 4; then+	  TARGET=LOONGARCH32+	else+	  TARGET=LOONGARCH64+	fi+	TARGETDIR=loongarch 	SOURCES="ffi.c"; ASM_SOURCES="sysv.S" 	;; 
fficonfig.h.in view
@@ -59,6 +59,9 @@ /* Define if __attribute__((visibility("hidden"))) is supported. */ #undef HAVE_HIDDEN_VISIBILITY_ATTRIBUTE +/* Define if __int128_t and __uint128_t are supported. */+#undef HAVE_INT128+ /* Define to 1 if you have the <inttypes.h> header file. */ #undef HAVE_INTTYPES_H @@ -68,10 +71,10 @@ /* Define if you support more than one size of the long double type */ #undef HAVE_LONG_DOUBLE_VARIANT -/* Define to 1 if you have the 'memcpy' function. */+/* Define to 1 if you have the `memcpy' function. */ #undef HAVE_MEMCPY -/* Define to 1 if you have the 'memfd_create' function. */+/* Define to 1 if you have the `memfd_create' function. */ #undef HAVE_MEMFD_CREATE  /* Define if .eh_frame sections should be read-only. */@@ -110,6 +113,9 @@ /* Define to the sub-directory where libtool stores uninstalled libraries. */ #undef LT_OBJDIR +/* Name of package */+#undef PACKAGE+ /* Define to the address where bug reports for this package should be sent. */ #undef PACKAGE_BUGREPORT @@ -128,16 +134,16 @@ /* Define to the version of this package. */ #undef PACKAGE_VERSION -/* The size of 'double', as computed by sizeof. */+/* The size of `double', as computed by sizeof. */ #undef SIZEOF_DOUBLE -/* The size of 'long double', as computed by sizeof. */+/* The size of `long double', as computed by sizeof. */ #undef SIZEOF_LONG_DOUBLE -/* The size of 'size_t', as computed by sizeof. */+/* The size of `size_t', as computed by sizeof. */ #undef SIZEOF_SIZE_T -/* Define to 1 if all of the C89 standard headers exist (not just the ones+/* Define to 1 if all of the C90 standard headers exist (not just the ones    required in a freestanding environment). This macro is provided for    backward compatibility; new code need not use it. */ #undef STDC_HEADERS@@ -148,6 +154,9 @@ /* Define this if you are using Purify and want to suppress spurious messages.    */ #undef USING_PURIFY++/* Version number of package */+#undef VERSION  /* Define WORDS_BIGENDIAN to 1 if your processor stores words with the most    significant byte first (like Motorola and SPARC, unlike Intel). */
include/ffi.h.in view
@@ -77,9 +77,11 @@ #define FFI_TYPE_STRUCT     13 #define FFI_TYPE_POINTER    14 #define FFI_TYPE_COMPLEX    15+#define FFI_TYPE_UINT128    16+#define FFI_TYPE_SINT128    17  /* This should always refer to the last type code (for sanity checks).  */-#define FFI_TYPE_LAST       FFI_TYPE_COMPLEX+#define FFI_TYPE_LAST       FFI_TYPE_SINT128  #include <ffitarget.h> @@ -227,6 +229,11 @@ FFI_EXTERN ffi_type ffi_type_complex_double; FFI_EXTERN ffi_type ffi_type_complex_longdouble; #endif++#ifdef FFI_TARGET_HAS_INT128+FFI_EXTERN ffi_type ffi_type_uint128;+FFI_EXTERN ffi_type ffi_type_sint128;+#endif #endif /* LIBFFI_HIDE_BASIC_TYPES */  typedef enum {@@ -344,6 +351,11 @@   void *trampoline_table;   void *trampoline_table_entry; #else+  /* Anonymous unions are C11 (a GNU extension in C99); __extension__ keeps+     the field names without tripping -Wpedantic under -std=c99 (#795).  */+#ifdef __GNUC__+  __extension__+#endif   union {     char tramp[FFI_TRAMPOLINE_SIZE];     void *ftramp;
install-sh view
@@ -1,7 +1,7 @@ #!/bin/sh # install - install a program, script, or datafile -scriptversion=2024-06-19.01; # UTC+scriptversion=2020-11-14.01; # UTC  # This originates from X11R5 (mit/util/scripts/install.sh), which was # later released in X11R6 (xc/config/util/install.sh) with the@@ -124,9 +124,9 @@  If -S is not specified, no backups are attempted. -Report bugs to <bug-automake@gnu.org>.-GNU Automake home page: <https://www.gnu.org/software/automake/>.-General help using GNU software: <https://www.gnu.org/gethelp/>."+Email bug reports to bug-automake@gnu.org.+Automake home page: https://www.gnu.org/software/automake/+"  while test $# -ne 0; do   case $1 in@@ -170,7 +170,7 @@      -T) is_target_a_directory=never;; -    --version) echo "$0 (GNU Automake) $scriptversion"; exit $?;;+    --version) echo "$0 $scriptversion"; exit $?;;      --) shift         break;;@@ -345,7 +345,7 @@ 	' 0  	# Because "mkdir -p" follows existing symlinks and we likely work-	# directly in world-writable /tmp, make sure that the '$tmpdir'+	# directly in world-writeable /tmp, make sure that the '$tmpdir' 	# directory is successfully created first before we actually test 	# 'mkdir -p'. 	if (umask $mkdir_umask &&@@ -353,7 +353,7 @@ 	    exec $mkdirprog $mkdir_mode -p -- "$tmpdir/a/b") >/dev/null 2>&1 	then 	  if test -z "$dir_arg" || {-	       # Check for POSIX incompatibility with -m.+	       # Check for POSIX incompatibilities with -m. 	       # HP-UX 11.23 and IRIX 6.5 mkdir -m -p sets group- or 	       # other-writable bit of parent directory when it shouldn't. 	       # FreeBSD 6.1 mkdir -m -p sets mode of existing directory.
libffi-clib.cabal view
@@ -1,6 +1,6 @@ cabal-version:      3.12 name:               libffi-clib-version:            3.5.2+version:            3.6.0 synopsis:           libffi clibs description:        C source code for the libffi package license:            MIT
ltmain.sh view
@@ -2,11 +2,11 @@ ## DO NOT EDIT - This file generated from ./build-aux/ltmain.in ##               by inline-source v2019-02-19.15 -# libtool (GNU libtool) 2.5.4+# libtool (GNU libtool) 2.4.7 # Provide generalized library-building support services. # Written by Gordon Matzigkeit <gord@gnu.ai.mit.edu>, 1996 -# Copyright (C) 1996-2019, 2021-2024 Free Software Foundation, Inc.+# Copyright (C) 1996-2019, 2021-2022 Free Software Foundation, Inc. # This is free software; see the source for copying conditions.  There is NO # warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. @@ -31,8 +31,8 @@  PROGRAM=libtool PACKAGE=libtool-VERSION=2.5.4-package_revision=2.5.4+VERSION="2.4.7 Debian-2.4.7-7build1"+package_revision=2.4.7   ## ------ ##@@ -72,11 +72,11 @@ # This is free software.  There is NO warranty; not even for # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. #-# Copyright (C) 2004-2019, 2021, 2023-2024 Bootstrap Authors+# Copyright (C) 2004-2019, 2021 Bootstrap Authors # # This file is dual licensed under the terms of the MIT license-# <https://opensource.org/licenses/MIT>, and GPL version 2 or later-# <https://www.gnu.org/licenses/gpl-2.0.html>.  You must apply one of+# <https://opensource.org/license/MIT>, and GPL version 2 or later+# <http://www.gnu.org/licenses/gpl-2.0.html>.  You must apply one of # these licenses when using or redistributing this software or any of # the files within it.  See the URLs above, or the file `LICENSE` # included in the Bootstrap distribution for the full license texts.@@ -143,7 +143,7 @@ ' IFS="$sp	$nl" -# There are apparently some systems that use ';' as a PATH separator!+# There are apparently some retarded systems that use ';' as a PATH separator! if test "${PATH_SEPARATOR+set}" != set; then   PATH_SEPARATOR=:   (PATH='/bin;/bin'; FPATH=$PATH; sh -c :) >/dev/null 2>&1 && {@@ -430,7 +430,7 @@ # putting '$debug_cmd' at the start of all your functions, you can get # bash to show function call trace with: #-#    debug_cmd='eval echo "${FUNCNAME[0]} $*" >&2' bash your-script-name+#    debug_cmd='echo "${FUNCNAME[0]} $*" >&2' bash your-script-name debug_cmd=${debug_cmd-":"} exit_cmd=: @@ -572,27 +572,15 @@ # --------------------- # Append VALUE onto the existing contents of VAR. -  # We should try to minimise forks, especially on Windows where they are-  # unreasonably slow, so skip the feature probes when bash or zsh are-  # being used:-  if test set = "${BASH_VERSION+set}${ZSH_VERSION+set}"; then-    : ${_G_HAVE_ARITH_OP="yes"}-    : ${_G_HAVE_XSI_OPS="yes"}-    # The += operator was introduced in bash 3.1-    case $BASH_VERSION in-      [12].* | 3.0 | 3.0*) ;;-      *)-        : ${_G_HAVE_PLUSEQ_OP="yes"}-        ;;-    esac-  fi-   # _G_HAVE_PLUSEQ_OP   # Can be empty, in which case the shell is probed, "yes" if += is-  # usable or anything else if it does not work.-  test -z "$_G_HAVE_PLUSEQ_OP" \-    && (eval 'x=a; x+=" b"; test "a b" = "$x"') 2>/dev/null \-    && _G_HAVE_PLUSEQ_OP=yes+  # useable or anything else if it does not work.+  if test -z "$_G_HAVE_PLUSEQ_OP" &&  \+      __PLUSEQ_TEST="a" &&  \+      __PLUSEQ_TEST+=" b" 2>/dev/null &&  \+      test "a b" = "$__PLUSEQ_TEST"; then+    _G_HAVE_PLUSEQ_OP=yes+  fi  if test yes = "$_G_HAVE_PLUSEQ_OP" then@@ -739,7 +727,7 @@ #             to NONDIR_REPLACEMENT. #             value returned in "$func_dirname_result" #   basename: Compute filename of FILE.-#             value returned in "$func_basename_result"+#             value retuned in "$func_basename_result" # For efficiency, we do not delegate to the functions above but instead # duplicate the functionality here. eval 'func_dirname_and_basename ()@@ -897,7 +885,7 @@       # While some portion of DIR does not yet exist...       while test ! -d "$_G_directory_path"; do         # ...make a list in topmost first order.  Use a colon delimited-	# list in case some portion of path contains whitespace.+	# list incase some portion of path contains whitespace.         _G_dir_list=$_G_directory_path:$_G_dir_list          # If the last portion added has no slash in it, the list is done@@ -1536,11 +1524,11 @@ # This is free software.  There is NO warranty; not even for # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. #-# Copyright (C) 2010-2019, 2021, 2023-2024 Bootstrap Authors+# Copyright (C) 2010-2019, 2021 Bootstrap Authors # # This file is dual licensed under the terms of the MIT license-# <https://opensource.org/licenses/MIT>, and GPL version 2 or later-# <https://www.gnu.org/licenses/gpl-2.0.html>.  You must apply one of+# <https://opensource.org/license/MIT>, and GPL version 2 or later+# <http://www.gnu.org/licenses/gpl-2.0.html>.  You must apply one of # these licenses when using or redistributing this software or any of # the files within it.  See the URLs above, or the file `LICENSE` # included in the Bootstrap distribution for the full license texts.@@ -1706,6 +1694,8 @@ {     $debug_cmd +    _G_rc_run_hooks=false+     case " $hookable_fns " in       *" $1 "*) ;;       *) func_fatal_error "'$1' does not support hook functions." ;;@@ -2215,30 +2205,7 @@ # End:  # Set a version string.-scriptversion='(GNU libtool) 2.5.4'--# func_version-# -------------# Echo version message to standard output and exit.-func_version ()-{-    $debug_cmd--	year=`date +%Y`--	cat <<EOF-$progname $scriptversion-Copyright (C) $year Free Software Foundation, Inc.-License GPLv2+: GNU GPL version 2 or later <https://gnu.org/licenses/gpl.html>-This is free software: you are free to change and redistribute it.-There is NO WARRANTY, to the extent permitted by law.--Originally written by Gordon Matzigkeit, 1996-(See AUTHORS for complete contributor listing)-EOF--    exit $?-}+scriptversion='(GNU libtool) 2.4.7'   # func_echo ARG...@@ -2261,6 +2228,18 @@ }  +# func_warning ARG...+# -------------------+# Libtool warnings are not categorized, so override funclib.sh+# func_warning with this simpler definition.+func_warning ()+{+    $debug_cmd++    $warning_func ${1+"$@"}+}++ ## ---------------- ## ## Options parsing. ## ## ---------------- ##@@ -2272,23 +2251,19 @@  # Short help message in response to '-h'. usage_message="Options:-       --config                 show all configuration variables-       --debug                  enable verbose shell tracing-   -n, --dry-run                display commands without modifying any files-       --features               display basic configuration information-       --finish                 use operation '--mode=finish'-       --mode=MODE              use operation mode MODE-       --no-finish              don't update shared library cache-       --no-quiet, --no-silent  print default informational messages-       --no-warnings            equivalent to '-Wnone'-       --preserve-dup-deps      don't remove duplicate dependency libraries-       --quiet, --silent        don't print informational messages-       --reorder-cache=DIRS     reorder shared library cache for preferred DIRS-       --tag=TAG                use configuration variables from tag TAG-   -v, --verbose                print more informational messages than default-       --version                print version information-   -W, --warnings=CATEGORY      report the warnings falling in CATEGORY [all]-   -h, --help, --help-all       print short, long, or detailed help message+       --config             show all configuration variables+       --debug              enable verbose shell tracing+   -n, --dry-run            display commands without modifying any files+       --features           display basic configuration information and exit+       --mode=MODE          use operation mode MODE+       --no-warnings        equivalent to '-Wnone'+       --preserve-dup-deps  don't remove duplicate dependency libraries+       --quiet, --silent    don't print informational messages+       --tag=TAG            use configuration variables from tag TAG+   -v, --verbose            print more informational messages than default+       --version            print version information+   -W, --warnings=CATEGORY  report the warnings falling in CATEGORY [all]+   -h, --help, --help-all   print short, long, or detailed help message "  # Additional text appended to 'usage_message' in response to '--help'.@@ -2321,13 +2296,13 @@        compiler:       $LTCC        compiler flags: $LTCFLAGS        linker:         $LD (gnu? $with_gnu_ld)-       version:        $progname $scriptversion+       version:        $progname $scriptversion Debian-2.4.7-7build1        automake:       `($AUTOMAKE --version) 2>/dev/null |$SED 1q`        autoconf:       `($AUTOCONF --version) 2>/dev/null |$SED 1q`  Report bugs to <bug-libtool@gnu.org>.-GNU libtool home page: <https://www.gnu.org/software/libtool/>.-General help using GNU software: <https://www.gnu.org/gethelp/>."+GNU libtool home page: <http://www.gnu.org/s/libtool/>.+General help using GNU software: <http://www.gnu.org/gethelp/>."     exit 0 } @@ -2517,17 +2492,16 @@     opt_dry_run=false     opt_help=false     opt_mode=-    opt_reorder_cache=false     opt_preserve_dup_deps=false     opt_quiet=false-    opt_finishing=true-    opt_warning=      nonopt=     preserve_args=      _G_rc_lt_options_prep=: +    _G_rc_lt_options_prep=:+     # Shorthand for --mode=foo, only valid as the first argument     case $1 in     clean|clea|cle|cl)@@ -2611,18 +2585,14 @@                           clean|compile|execute|finish|install|link|relink|uninstall) ;;                            # Catch anything else as an error-                          *) func_error "invalid argument '$1' for $_G_opt"+                          *) func_error "invalid argument for $_G_opt"                              exit_cmd=exit+                             break                              ;;                         esac                         shift                         ;; -        --no-finish)-                        opt_finishing=false-                        func_append preserve_args " $_G_opt"-                        ;;-         --no-silent|--no-quiet)                         opt_quiet=false                         func_append preserve_args " $_G_opt"@@ -2638,24 +2608,6 @@                         func_append preserve_args " $_G_opt"                         ;; -        --reorder-cache)-                        opt_reorder_cache=true-                        shared_lib_dirs=$1-                        if test -n "$shared_lib_dirs"; then-                          case $1 in-                            # Must begin with /:-                            /*) ;;--                            # Catch anything else as an error (relative paths)-                            *) func_error "invalid argument '$1' for $_G_opt"-                               func_error "absolute paths are required for $_G_opt"-                               exit_cmd=exit-                               ;;-                          esac-                        fi-                        shift-                        ;;-         --silent|--quiet)                         opt_quiet=:                         opt_verbose=false@@ -2692,19 +2644,7 @@ func_add_hook func_parse_options libtool_parse_options  -# func_warning ARG...-# --------------------# Libtool warnings are not categorized, so override funclib.sh-# func_warning with this simpler definition.-func_warning ()-{-    if $opt_warning; then-        $debug_cmd-        $warning_func ${1+"$@"}-    fi-} - # libtool_validate_options [ARG]... # --------------------------------- # Perform any sanity checks on option settings and/or unconsumed@@ -2720,10 +2660,17 @@     # preserve --debug     test : = "$debug_cmd" || func_append preserve_args " --debug" -    # Keeping compiler generated duplicates in $postdeps and $predeps is not-    # harmful, and is necessary in a majority of systems that use it to satisfy-    # symbol dependencies.-    opt_duplicate_compiler_generated_deps=:+    case $host in+      # Solaris2 added to fix http://debbugs.gnu.org/cgi/bugreport.cgi?bug=16452+      # see also: http://gcc.gnu.org/bugzilla/show_bug.cgi?id=59788+      *cygwin* | *mingw* | *pw32* | *cegcc* | *solaris2* | *os2*)+        # don't eliminate duplications in $postdeps and $predeps+        opt_duplicate_compiler_generated_deps=:+        ;;+      *)+        opt_duplicate_compiler_generated_deps=$opt_preserve_dup_deps+        ;;+    esac      $opt_help || {       # Sanity checks first:@@ -3048,7 +2995,7 @@  # func_convert_core_file_wine_to_w32 ARG # Helper function used by file name conversion functions when $build is *nix,-# and $host is mingw, windows, cygwin, or some other w32 environment. Relies on a+# and $host is mingw, cygwin, or some other w32 environment. Relies on a # correctly configured wine environment available, with the winepath program # in $build's $PATH. #@@ -3080,10 +3027,9 @@  # func_convert_core_path_wine_to_w32 ARG # Helper function used by path conversion functions when $build is *nix, and-# $host is mingw, windows, cygwin, or some other w32 environment. Relies on a-# correctly configured wine environment available, with the winepath program-# in $build's $PATH. Assumes ARG has no leading or trailing path separator-# characters.+# $host is mingw, cygwin, or some other w32 environment. Relies on a correctly+# configured wine environment available, with the winepath program in $build's+# $PATH. Assumes ARG has no leading or trailing path separator characters. # # ARG is path to be converted from $build format to win32. # Result is available in $func_convert_core_path_wine_to_w32_result.@@ -3226,15 +3172,6 @@ # end func_convert_path_front_back_pathsep  -# func_convert_delimited_path PATH ORIG_DELIMITER NEW_DELIMITER-# Replaces a delimiter for a given path.-func_convert_delimited_path ()-{-	converted_path=`$ECHO "$1" | $SED "s#$2#$3#g"`-}-# end func_convert_delimited_path-- ################################################## # $build to $host FILE NAME CONVERSION FUNCTIONS # ##################################################@@ -3569,65 +3506,6 @@ }  -# func_reorder_shared_lib_cache DIRS-# Reorder the shared library cache by unconfiguring previous shared library cache-# and configuring preferred search directories before previous search directories.-# Previous shared library cache: /usr/lib /usr/local/lib-# Preferred search directories: /tmp/testing-# Reordered shared library cache: /tmp/testing /usr/lib /usr/local/lib-func_reorder_shared_lib_cache ()-{-	$debug_cmd--	case $host_os in-	  openbsd*)-	    get_search_directories=`PATH="$PATH:/sbin" ldconfig -r | $GREP "search directories" | $SED "s#.*search directories:\ ##g"`-	    func_convert_delimited_path "$get_search_directories" ':' '\ '-	    save_search_directories=$converted_path-	    func_convert_delimited_path "$1" ':' '\ '--	    # Ensure directories exist-	    for dir in $converted_path; do-	      # Ensure each directory is an absolute path-	      case $dir in-	        /*) ;;-	        *) func_error "Directory '$dir' is not an absolute path"-	           exit $EXIT_FAILURE ;;-	      esac-	      # Ensure no trailing slashes-	      func_stripname '' '/' "$dir"-	      dir=$func_stripname_result-	      if test -d "$dir"; then-	        if test -n "$preferred_search_directories"; then-	          preferred_search_directories="$preferred_search_directories $dir"-	        else-	          preferred_search_directories=$dir-	        fi-	      else-	        func_error "Directory '$dir' does not exist"-	        exit $EXIT_FAILURE-	      fi-	    done--	    PATH="$PATH:/sbin" ldconfig -U $save_search_directories-	    PATH="$PATH:/sbin" ldconfig -m $preferred_search_directories $save_search_directories-	    get_search_directories=`PATH="$PATH:/sbin" ldconfig -r | $GREP "search directories" | $SED "s#.*search directories:\ ##g"`-	    func_convert_delimited_path "$get_search_directories" ':' '\ '-	    reordered_search_directories=$converted_path--	    $ECHO "Original: $save_search_directories"-	    $ECHO "Reordered: $reordered_search_directories"-	    exit $EXIT_SUCCESS-	  ;;-	  *)-	    func_error "--reorder-cache is not supported for host_os=$host_os."-	    exit $EXIT_FAILURE-	  ;;-	esac-}-# end func_reorder_shared_lib_cache-- # func_mode_compile arg... func_mode_compile () {@@ -3806,7 +3684,7 @@      # On Cygwin there's no "real" PIC flag so we must build both object types     case $host_os in-    cygwin* | mingw* | windows* | pw32* | os2* | cegcc*)+    cygwin* | mingw* | pw32* | os2* | cegcc*)       pic_mode=default       ;;     esac@@ -4200,12 +4078,6 @@ fi  -# If option '--reorder-cache', reorder the shared library cache and exit.-if $opt_reorder_cache; then-    func_reorder_shared_lib_cache $shared_lib_dirs-fi-- # func_mode_execute arg... func_mode_execute () {@@ -4390,7 +4262,7 @@       fi     fi -    if test -n "$finish_cmds$finish_eval" && test -n "$libdirs" && $opt_finishing; then+    if test -n "$finish_cmds$finish_eval" && test -n "$libdirs"; then       for libdir in $libdirs; do 	if test -n "$finish_cmds"; then 	  # Do each command in the finish commands.@@ -4415,12 +4287,6 @@       for libdir in $libdirs; do 	$ECHO "   $libdir"       done-      if test "false" = "$opt_finishing"; then-        echo-        echo "NOTE: finish_cmds were not executed during testing, so you must"-        echo "manually run ldconfig to add a given test directory, LIBDIR, to"-        echo "the search path for generated executables."-      fi       echo       echo "If you ever happen to want to link against installed libraries"       echo "in a given directory, LIBDIR, you must either use libtool, and"@@ -4657,15 +4523,8 @@ 	func_append dir "$objdir"  	if test -n "$relink_command"; then-	  # Strip any trailing slash from the destination.-	  func_stripname '' '/' "$libdir"-	  destlibdir=$func_stripname_result--	  func_stripname '' '/' "$destdir"-	  s_destdir=$func_stripname_result- 	  # Determine the prefix the user has applied to our future dir.-	  inst_prefix_dir=`$ECHO "X$s_destdir" | $Xsed -e "s%$destlibdir\$%%"`+	  inst_prefix_dir=`$ECHO "$destdir" | $SED -e "s%$libdir\$%%"`  	  # Don't allow the user to place us outside of our expected 	  # location b/c this prevents finding dependent libraries that@@ -4702,7 +4561,7 @@ 	      'exit $?' 	  tstripme=$stripme 	  case $host_os in-	  cygwin* | mingw* | windows* | pw32* | cegcc*)+	  cygwin* | mingw* | pw32* | cegcc*) 	    case $realname in 	    *.dll.a) 	      tstripme=@@ -4815,7 +4674,7 @@  	# Do a test to see if this is really a libtool program. 	case $host in-	*cygwin* | *mingw* | *windows*)+	*cygwin* | *mingw*) 	    if func_ltwrapper_executable_p "$file"; then 	      func_ltwrapper_scriptname "$file" 	      wrapper=$func_ltwrapper_scriptname_result@@ -5043,7 +4902,7 @@ 	      $RM $export_symbols 	      eval "$SED -n -e '/^: @PROGRAM@ $/d' -e 's/^.* \(.*\)$/\1/p' "'< "$nlist" > "$export_symbols"' 	      case $host in-	      *cygwin* | *mingw* | *windows* | *cegcc* )+	      *cygwin* | *mingw* | *cegcc* )                 eval "echo EXPORTS "'> "$output_objdir/$outputname.def"'                 eval 'cat "$export_symbols" >> "$output_objdir/$outputname.def"' 	        ;;@@ -5055,7 +4914,7 @@ 	      eval '$GREP -f "$output_objdir/$outputname.exp" < "$nlist" > "$nlist"T' 	      eval '$MV "$nlist"T "$nlist"' 	      case $host in-	        *cygwin* | *mingw* | *windows* | *cegcc* )+	        *cygwin* | *mingw* | *cegcc* ) 	          eval "echo EXPORTS "'> "$output_objdir/$outputname.def"' 	          eval 'cat "$nlist" >> "$output_objdir/$outputname.def"' 	          ;;@@ -5069,7 +4928,7 @@ 	  func_basename "$dlprefile" 	  name=$func_basename_result           case $host in-	    *cygwin* | *mingw* | *windows* | *cegcc* )+	    *cygwin* | *mingw* | *cegcc* ) 	      # if an import library, we need to obtain dlname 	      if func_win32_import_lib_p "$dlprefile"; then 	        func_tr_sh "$dlprefile"@@ -5095,16 +4954,8 @@ 	            eval '$ECHO ": $name " >> "$nlist"' 	          fi 	          func_to_tool_file "$dlprefile" func_convert_file_msys_to_w32-	          case $host in-	            i[3456]86-*-mingw32*)-	              eval "$NM \"$func_to_tool_file_result\" 2>/dev/null | $global_symbol_pipe |-	                $SED -e '/I __imp/d' -e 's/I __nm_/D /;s/_nm__//' >> '$nlist'"-	            ;;-	            *)-	              eval "$NM \"$func_to_tool_file_result\" 2>/dev/null | $global_symbol_pipe |-	                $SED -e '/I __imp/d' -e 's/I __nm_/D /;s/__nm_//' >> '$nlist'"-	            ;;-	          esac+	          eval "$NM \"$func_to_tool_file_result\" 2>/dev/null | $global_symbol_pipe |+	            $SED -e '/I __imp/d' -e 's/I __nm_/D /;s/_nm__//' >> '$nlist'" 	        } 	      else # not an import lib 	        $opt_dry_run || {@@ -5252,7 +5103,7 @@ 	# Transform the symbol file into the correct name. 	symfileobj=$output_objdir/${my_outputname}S.$objext 	case $host in-	*cygwin* | *mingw* | *windows* | *cegcc* )+	*cygwin* | *mingw* | *cegcc* ) 	  if test -f "$output_objdir/$my_outputname.def"; then 	    compile_command=`$ECHO "$compile_command" | $SED "s%@SYMFILE@%$output_objdir/$my_outputname.def $symfileobj%"` 	    finalize_command=`$ECHO "$finalize_command" | $SED "s%@SYMFILE@%$output_objdir/$my_outputname.def $symfileobj%"`@@ -5328,7 +5179,7 @@   *ar\ archive*) # could be an import, or static     # Keep the egrep pattern in sync with the one in _LT_CHECK_MAGIC_METHOD.     if eval $OBJDUMP -f $1 | $SED -e '10q' 2>/dev/null |-       $EGREP 'file format (pei*-i386(.*architecture: i386)?|pe-arm-wince|pe-x86-64|pe-aarch64)' >/dev/null; then+       $EGREP 'file format (pei*-i386(.*architecture: i386)?|pe-arm-wince|pe-x86-64)' >/dev/null; then       case $nm_interface in       "MS dumpbin") 	if func_cygming_ms_implib_p "$1" ||@@ -5595,7 +5446,7 @@ # # Emit a libtool wrapper script on stdout. # Don't directly open a file because we may want to-# incorporate the script contents within a cygwin/mingw/windows+# incorporate the script contents within a cygwin/mingw # wrapper executable.  Must ONLY be called from within # func_mode_link because it depends on a number of variables # set therein.@@ -5603,7 +5454,7 @@ # ARG is the value that the WRAPPER_SCRIPT_BELONGS_IN_OBJDIR # variable will take.  If 'yes', then the emitted script # will assume that the directory where it is stored is-# the $objdir directory.  This is a cygwin/mingw/windows-specific+# the $objdir directory.  This is a cygwin/mingw-specific # behavior. func_emit_wrapper () {@@ -5728,7 +5579,7 @@ "   case $host in   # Backslashes separate directories on plain windows-  *-*-mingw* | *-*-windows* | *-*-os2* | *-cegcc*)+  *-*-mingw | *-*-os2* | *-cegcc*)     $ECHO "\       if test -n \"\$lt_option_debug\"; then         \$ECHO \"$outputname:$output:\$LINENO: newargv[0]: \$progdir\\\\\$program\" 1>&2@@ -5796,7 +5647,7 @@     file=\`ls -ld \"\$thisdir/\$file\" | $SED -n 's/.*-> //p'\`   done -  # Usually 'no', except on cygwin/mingw/windows when embedded into+  # Usually 'no', except on cygwin/mingw when embedded into   # the cwrapper.   WRAPPER_SCRIPT_BELONGS_IN_OBJDIR=$func_emit_wrapper_arg1   if test \"\$WRAPPER_SCRIPT_BELONGS_IN_OBJDIR\" = \"yes\"; then@@ -5928,7 +5779,7 @@ #endif #include <stdio.h> #include <stdlib.h>-#if defined _WIN32 && !defined __GNUC__+#ifdef _MSC_VER # include <direct.h> # include <process.h> # include <io.h>@@ -5953,7 +5804,7 @@ /* declarations of non-ANSI functions */ #if defined __MINGW32__ # ifdef __STRICT_ANSI__-_CRTIMP int __cdecl _putenv (const char *);+int _putenv (const char *); # endif #elif defined __CYGWIN__ # ifdef __STRICT_ANSI__@@ -6151,7 +6002,7 @@ 	{ EOF 	    case $host in-	      *mingw* | *windows* | *cygwin* )+	      *mingw* | *cygwin* ) 		# make stdout use "unix" line endings 		echo "          setmode(1,_O_BINARY);" 		;;@@ -6170,7 +6021,7 @@         {           /* however, if there is an option in the LTWRAPPER_OPTION_PREFIX              namespace, but it is not one of the ones we know about and-             have already dealt with, above (including dump-script), then+             have already dealt with, above (inluding dump-script), then              report an error. Otherwise, targets might begin to believe              they are allowed to use options in the LTWRAPPER_OPTION_PREFIX              namespace. The first time any user complains about this, we'll@@ -6254,7 +6105,7 @@ EOF  	    case $host_os in-	      mingw* | windows*)+	      mingw*) 	    cat <<"EOF"   {     char* p;@@ -6296,7 +6147,7 @@ EOF  	    case $host_os in-	      mingw* | windows*)+	      mingw*) 		cat <<"EOF"   /* execv doesn't actually work on mingw as expected on unix */   newargz = prepare_spawn (newargz);@@ -6715,7 +6566,7 @@  EOF 	    case $host_os in-	      mingw* | windows*)+	      mingw*) 		cat <<"EOF"  /* Prepares an argument vector before calling spawn().@@ -6890,7 +6741,7 @@     $debug_cmd      case $host in-    *-*-cygwin* | *-*-mingw* | *-*-windows* | *-*-pw32* | *-*-os2* | *-cegcc*)+    *-*-cygwin* | *-*-mingw* | *-*-pw32* | *-*-os2* | *-cegcc*)       # It is impossible to link a dll without this setting, and       # we shouldn't force the makefile maintainer to figure out       # what system we are compiling for in order to pass an extra@@ -6914,7 +6765,6 @@     finalize_command=$nonopt      compile_rpath=-    compile_rpath_tail=     finalize_rpath=     compile_shlibpath=     finalize_shlibpath=@@ -6955,12 +6805,10 @@     xrpath=     perm_rpath=     temp_rpath=-    temp_rpath_tail=     thread_safe=no     vinfo=     vinfo_number=no     weak_libs=-    rpath_arg=     single_module=$wl-single_module     func_infer_tag $base_compile @@ -7223,7 +7071,7 @@ 	  case $arg in 	  [\\/]* | [A-Za-z]:[\\/]*) ;; 	  *)-	    func_fatal_error "argument to -rpath is not absolute: $arg"+	    func_fatal_error "only absolute run-paths are allowed" 	    ;; 	  esac 	  if test rpath = "$prev"; then@@ -7399,7 +7247,7 @@ 	  ;; 	esac 	case $host in-	*-*-cygwin* | *-*-mingw* | *-*-windows* | *-*-pw32* | *-*-os2* | *-cegcc*)+	*-*-cygwin* | *-*-mingw* | *-*-pw32* | *-*-os2* | *-cegcc*) 	  testbindir=`$ECHO "$dir" | $SED 's*/lib$*/bin*'` 	  case :$dllsearchpath: in 	  *":$dir:"*) ;;@@ -7419,7 +7267,7 @@       -l*) 	if test X-lc = "X$arg" || test X-lm = "X$arg"; then 	  case $host in-	  *-*-cygwin* | *-*-mingw* | *-*-windows* | *-*-pw32* | *-*-beos* | *-cegcc* | *-*-haiku*)+	  *-*-cygwin* | *-*-mingw* | *-*-pw32* | *-*-beos* | *-cegcc* | *-*-haiku*) 	    # These systems don't actually have a C or math library (as such) 	    continue 	    ;;@@ -7427,7 +7275,7 @@ 	    # These systems don't actually have a C library (as such) 	    test X-lc = "X$arg" && continue 	    ;;-	  *-*-openbsd* | *-*-freebsd* | *-*-dragonfly* | *-*-midnightbsd*)+	  *-*-openbsd* | *-*-freebsd* | *-*-dragonfly* | *-*-bitrig* | *-*-midnightbsd*) 	    # Do not include libc due to us having libc/libc_r. 	    test X-lc = "X$arg" && continue 	    ;;@@ -7447,7 +7295,7 @@ 	  esac 	elif test X-lc_r = "X$arg"; then 	 case $host in-	 *-*-openbsd* | *-*-freebsd* | *-*-dragonfly* | *-*-midnightbsd*)+	 *-*-openbsd* | *-*-freebsd* | *-*-dragonfly* | *-*-bitrig* | *-*-midnightbsd*) 	   # Do not include libc_r directly, use -pthread flag. 	   continue 	   ;;@@ -7470,8 +7318,7 @@       # Tru64 UNIX uses -model [arg] to determine the layout of C++       # classes, name mangling, and exception handling.       # Darwin uses the -arch flag to determine output architecture.-      # -q <option> for IBM XL C/C++ compiler.-      -model|-arch|-isysroot|--sysroot|-q)+      -model|-arch|-isysroot|--sysroot) 	func_append compiler_flags " $arg" 	func_append compile_command " $arg" 	func_append finalize_command " $arg"@@ -7492,7 +7339,7 @@ 	continue 	;;       -mt|-mthreads|-kthread|-Kthread|-pthreads|--thread-safe \-      |-threads|-fopenmp|-fopenmp=*|-openmp|-mp|-xopenmp|-omp|-qsmp=*)+      |-threads|-fopenmp|-openmp|-mp|-xopenmp|-omp|-qsmp=*) 	func_append compiler_flags " $arg" 	func_append compile_command " $arg" 	func_append finalize_command " $arg"@@ -7515,7 +7362,7 @@        -no-install) 	case $host in-	*-*-cygwin* | *-*-mingw* | *-*-windows* | *-*-pw32* | *-*-os2* | *-*-darwin* | *-cegcc*)+	*-*-cygwin* | *-*-mingw* | *-*-pw32* | *-*-os2* | *-*-darwin* | *-cegcc*) 	  # The PATH hackery in wrapper scripts is required on Windows 	  # and Darwin in order for the loader to find any dlls it needs. 	  func_warning "'-no-install' is ignored for $host"@@ -7575,7 +7422,7 @@ 	  dir=$lt_sysroot$func_stripname_result 	  ;; 	*)-	  func_fatal_error "argument ($arg) to '-R' is not an absolute path: $dir"+	  func_fatal_error "only absolute run-paths are allowed" 	  ;; 	esac 	case "$xrpath " in@@ -7700,29 +7547,15 @@       # -O*, -g*, -flto*, -fwhopr*, -fuse-linker-plugin GCC link-time optimization       # -specs=*             GCC specs files       # -stdlib=*            select c++ std lib with clang-      # -fdiagnostics-color* simply affects output-      # -frecord-gcc-switches used to verify flags were respected       # -fsanitize=*         Clang/GCC memory and address sanitizer-      # -fno-sanitize*       Clang/GCC memory and address sanitizer-      # -shared-libsan       Link with shared sanitizer runtimes (Clang)-      # -static-libsan       Link with static sanitizer runtimes (Clang)-      # -no-canonical-prefixes Do not expand any symbolic links       # -fuse-ld=*           Linker select flags for GCC       # -static-*            direct GCC to link specific libraries statically       # -fcilkplus           Cilk Plus language extension features for C/C++-      # -rtlib=*             select c runtime lib with clang-      # --unwindlib=*        select unwinder library with clang-      # -f{file|debug|macro|profile}-prefix-map=* needed for lto linking       # -Wa,*                Pass flags directly to the assembler-      # -Werror, -Werror=*   Report (specified) warnings as errors       -64|-mips[0-9]|-r[0-9][0-9]*|-xarch=*|-xtarget=*|+DA*|+DD*|-q*|-m*| \       -t[45]*|-txscale*|-p|-pg|--coverage|-fprofile-*|-F*|@*|-tp=*|--sysroot=*| \-      -O*|-g*|-flto*|-fwhopr*|-fuse-linker-plugin|-fstack-protector*|-no-canonical-prefixes| \-      -stdlib=*|-rtlib=*|--unwindlib=*| \-      -specs=*|-fsanitize=*|-fno-sanitize*|-shared-libsan|-static-libsan| \-      -ffile-prefix-map=*|-fdebug-prefix-map=*|-fmacro-prefix-map=*|-fprofile-prefix-map=*| \-      -fdiagnostics-color*|-frecord-gcc-switches| \-      -fuse-ld=*|-static-*|-fcilkplus|-Wa,*|-Werror|-Werror=*)+      -O*|-g*|-flto*|-fwhopr*|-fuse-linker-plugin|-fstack-protector*|-stdlib=*| \+      -specs=*|-fsanitize=*|-fuse-ld=*|-static-*|-fcilkplus|-Wa,*)         func_quote_arg pretty "$arg" 	arg=$func_quote_arg_result         func_append compile_command " $arg"@@ -7880,20 +7713,8 @@        # Now actually substitute the argument into the commands.       if test -n "$arg"; then-	if test -n "$rpath_arg"; then-          func_append finalize_rpath " ${arg##*,}"-	  unset rpath_arg-	else-	  case $arg in-          -Wl,-rpath,*)-	    func_append finalize_rpath " ${arg##*,}";;-          -Wl,-rpath)-	    rpath_arg=1;;-          *)-            func_append compile_command " $arg"-	    func_append finalize_command " $arg"-	  esac-        fi+	func_append compile_command " $arg"+	func_append finalize_command " $arg"       fi     done # argument parsing loop @@ -8027,7 +7848,10 @@ 	case $pass in 	dlopen) libs=$dlfiles ;; 	dlpreopen) libs=$dlprefiles ;;-	link) libs="$deplibs %DEPLIBS% $dependency_libs" ;;+	link)+	  libs="$deplibs %DEPLIBS%"+	  test "X$link_all_deplibs" != Xno && libs="$libs $dependency_libs"+	  ;; 	esac       fi       if test lib,dlpreopen = "$linkmode,$pass"; then@@ -8064,7 +7888,7 @@ 	found=false 	case $deplib in 	-mt|-mthreads|-kthread|-Kthread|-pthread|-pthreads|--thread-safe \-        |-threads|-fopenmp|-fopenmp=*|-openmp|-mp|-xopenmp|-omp|-qsmp=*)+        |-threads|-fopenmp|-openmp|-mp|-xopenmp|-omp|-qsmp=*) 	  if test prog,link = "$linkmode,$pass"; then 	    compile_deplibs="$deplib $compile_deplibs" 	    finalize_deplibs="$deplib $finalize_deplibs"@@ -8241,15 +8065,18 @@ 		;; 	      esac 	      if $valid_a_lib; then-		func_warning "Linking the shared library $output against the static library $deplib is not portable!"+		echo+		$ECHO "*** Warning: Linking the shared library $output against the"+		$ECHO "*** static library $deplib is not portable!" 		deplibs="$deplib $deplibs" 	      else-		func_warning "Trying to link with static lib archive $deplib."-		func_warning "I have the capability to make that library automatically link in when"-		func_warning "you link to this library.  But I can only do this if you have a"-		func_warning "shared version of the library, which you do not appear to have"-		func_warning "because the file extensions .$libext of this argument makes me believe"-		func_warning "that it is just a static archive that I should not use here."+		echo+		$ECHO "*** Warning: Trying to link with static lib archive $deplib."+		echo "*** I have the capability to make that library automatically link in when"+		echo "*** you link to this library.  But I can only do this if you have a"+		echo "*** shared version of the library, which you do not appear to have"+		echo "*** because the file extensions .$libext of this argument makes me believe"+		echo "*** that it is just a static archive that I should not use here." 	      fi 	      ;; 	    esac@@ -8343,19 +8170,19 @@ 	    # It is a libtool convenience library, so add in its objects. 	    func_append convenience " $ladir/$objdir/$old_library" 	    func_append old_convenience " $ladir/$objdir/$old_library"+	    tmp_libs=+	    for deplib in $dependency_libs; do+	      deplibs="$deplib $deplibs"+	      if $opt_preserve_dup_deps; then+		case "$tmp_libs " in+		*" $deplib "*) func_append specialdeplibs " $deplib" ;;+		esac+	      fi+	      func_append tmp_libs " $deplib"+	    done 	  elif test prog != "$linkmode" && test lib != "$linkmode"; then 	    func_fatal_error "'$lib' is not a convenience library" 	  fi-	  tmp_libs=-	  for deplib in $dependency_libs; do-	    deplibs="$deplib $deplibs"-	    if $opt_preserve_dup_deps; then-	      case "$tmp_libs " in-	      *" $deplib "*) func_append specialdeplibs " $deplib" ;;-	      esac-	    fi-	    func_append tmp_libs " $deplib"-	  done 	  continue 	fi # $pass = conv @@ -8444,7 +8271,7 @@ 	  fi 	  case $host in 	    # special handling for platforms with PE-DLLs.-	    *cygwin* | *mingw* | *windows* | *cegcc* )+	    *cygwin* | *mingw* | *cegcc* ) 	      # Linker will automatically link against shared library if both 	      # static and shared are present.  Therefore, ensure we extract 	      # symbols from the import library if a shared library is present@@ -8544,10 +8371,7 @@ 	      # Make sure the rpath contains only unique directories. 	      case $temp_rpath: in 	      *"$absdir:"*) ;;-              *) case $absdir in-                 "$progdir/"*) func_append temp_rpath "$absdir:" ;;-                 *)            func_append temp_rpath_tail "$absdir:" ;;-                 esac+	      *) func_append temp_rpath "$absdir:" ;; 	      esac 	    fi @@ -8557,12 +8381,9 @@ 	    case " $sys_lib_dlsearch_path " in 	    *" $absdir "*) ;; 	    *)-	      case "$compile_rpath$compile_rpath_tail " in+	      case "$compile_rpath " in 	      *" $absdir "*) ;;-	      *) case $absdir in-                 "$progdir/"*) func_append compile_rpath " $absdir" ;;-                 *) func_append compile_rpath_tail " $absdir" ;;-		 esac+	      *) func_append compile_rpath " $absdir" ;; 	      esac 	      ;; 	    esac@@ -8593,8 +8414,8 @@ 	fi 	if test -n "$library_names" && 	   { test no = "$use_static_libs" || test -z "$old_library"; }; then-	  case $host_os in-	  cygwin* | mingw* | windows* | cegcc* | os2*)+	  case $host in+	  *cygwin* | *mingw* | *cegcc* | *os2*) 	      # No point in relinking DLLs because paths are not encoded 	      func_append notinst_deplibs " $lib" 	      need_relink=no@@ -8620,11 +8441,11 @@ 	  if test -z "$dlopenmodule" && test yes = "$shouldnotlink" && test link = "$pass"; then 	    echo 	    if test prog = "$linkmode"; then-	      func_warning "Linking the executable $output against the loadable module"+	      $ECHO "*** Warning: Linking the executable $output against the loadable module" 	    else-	      func_warning "Linking the shared library $output against the loadable module"+	      $ECHO "*** Warning: Linking the shared library $output against the loadable module" 	    fi-	    func_warning "$linklib is not portable!"+	    $ECHO "*** $linklib is not portable!" 	  fi 	  if test lib = "$linkmode" && 	     test yes = "$hardcode_into_libs"; then@@ -8634,12 +8455,9 @@ 	    case " $sys_lib_dlsearch_path " in 	    *" $absdir "*) ;; 	    *)-	      case "$compile_rpath$compile_rpath_tail " in+	      case "$compile_rpath " in 	      *" $absdir "*) ;;-	      *) case $absdir in-                 "$progdir/"*) func_append compile_rpath " $absdir" ;;-                 *) func_append compile_rpath_tail " $absdir" ;;-		 esac+	      *) func_append compile_rpath " $absdir" ;; 	      esac 	      ;; 	    esac@@ -8666,8 +8484,8 @@ 	      soname=$dlname 	    elif test -n "$soname_spec"; then 	      # bleh windows-	      case $host_os in-	      cygwin* | mingw* | windows* | cegcc* | os2*)+	      case $host in+	      *cygwin* | mingw* | *cegcc* | *os2*) 	        func_arith $current - $age 		major=$func_arith_result 		versuffix=-$major@@ -8714,7 +8532,6 @@ 		case $host in 		  *-*-sco3.2v5.0.[024]*) add_dir=-L$dir ;; 		  *-*-sysv4*uw2*) add_dir=-L$dir ;;-		  *-*-emscripten*) add_dir=-L$dir ;; 		  *-*-sysv5OpenUNIX* | *-*-sysv5UnixWare7.[01].[10]* | \ 		    *-*-unixware7*) add_dir=-L$dir ;; 		  *-*-darwin* )@@ -8723,10 +8540,11 @@ 		    if /usr/bin/file -L $add 2> /dev/null | 			 $GREP ": [^:]* bundle" >/dev/null; then 		      if test "X$dlopenmodule" != "X$lib"; then-			func_warning "lib $linklib is a module, not a shared library"+			$ECHO "*** Warning: lib $linklib is a module, not a shared library" 			if test -z "$old_library"; then-			  func_warning "And there doesn't seem to be a static archive available"-			  func_warning "The link will probably fail, sorry"+			  echo+			  echo "*** And there doesn't seem to be a static archive available"+			  echo "*** The link will probably fail, sorry" 			else 			  add=$dir/$old_library 			fi@@ -8809,7 +8627,7 @@ 	       test no = "$hardcode_direct_absolute"; then 	      add=$libdir/$linklib 	    elif test yes = "$hardcode_minus_L"; then-	      add_dir=-L$lt_sysroot$libdir+	      add_dir=-L$libdir 	      add=-l$name 	    elif test yes = "$hardcode_shlibpath_var"; then 	      case :$finalize_shlibpath: in@@ -8826,7 +8644,7 @@ 	      fi 	    else 	      # We cannot seem to hardcode it, guess we'll fake it.-	      add_dir=-L$lt_sysroot$libdir+	      add_dir=-L$libdir 	      # Try looking first in the location we're being installed to. 	      if test -n "$inst_prefix_dir"; then 		case $libdir in@@ -8866,19 +8684,21 @@  	    # Just print a warning and add the library to dependency_libs so 	    # that the program can be linked against the static library.-	    func_warning "This system cannot link to static lib archive $lib."-	    func_warning "I have the capability to make that library automatically link in when"-	    func_warning "you link to this library.  But I can only do this if you have a"-	    func_warning "shared version of the library, which you do not appear to have."+	    echo+	    $ECHO "*** Warning: This system cannot link to static lib archive $lib."+	    echo "*** I have the capability to make that library automatically link in when"+	    echo "*** you link to this library.  But I can only do this if you have a"+	    echo "*** shared version of the library, which you do not appear to have." 	    if test yes = "$module"; then-	      func_warning "But as you try to build a module library, libtool will still create "-	      func_warning "a static module, that should work as long as the dlopening application"-	      func_warning "is linked with the -dlopen flag to resolve symbols at runtime."+	      echo "*** But as you try to build a module library, libtool will still create "+	      echo "*** a static module, that should work as long as the dlopening application"+	      echo "*** is linked with the -dlopen flag to resolve symbols at runtime." 	      if test -z "$global_symbol_pipe"; then-		func_warning "However, this would only work if libtool was able to extract symbol"-		func_warning "lists from a program, using 'nm' or equivalent, but libtool could"-		func_warning "not find such a program.  So, this module is probably useless."-		func_warning "'nm' from GNU binutils and a full rebuild may help."+		echo+		echo "*** However, this would only work if libtool was able to extract symbol"+		echo "*** lists from a program, using 'nm' or equivalent, but libtool could"+		echo "*** not find such a program.  So, this module is probably useless."+		echo "*** 'nm' from GNU binutils and a full rebuild may help." 	      fi 	      if test no = "$build_old_libs"; then 		build_libtool_libs=module@@ -9001,10 +8821,6 @@ 	  fi # link_all_deplibs != no 	fi # linkmode = lib       done # for deplib in $libs--      func_append temp_rpath "$temp_rpath_tail"-      func_append compile_rpath "$compile_rpath_tail"-       if test link = "$pass"; then 	if test prog = "$linkmode"; then 	  compile_deplibs="$new_inherited_linker_flags $compile_deplibs"@@ -9042,46 +8858,42 @@ 	  # Add libraries to $var in reverse order 	  eval tmp_libs=\"\$$var\" 	  new_libs=-	  # FIXME: Pedantically, this is the right thing to do, so-	  #        that some nasty dependency loop isn't accidentally-	  #        broken: new_libs="$deplib $new_libs" 	  for deplib in $tmp_libs; do-	    if $opt_preserve_dup_deps; then-	      new_libs="$deplib $new_libs"-	    else-	      # Pragmatically, this seems to cause very few problems in-	      # practice:-	      case $deplib in-	      -L*) new_libs="$deplib $new_libs" ;;-	      -R*) ;;+	    # FIXME: Pedantically, this is the right thing to do, so+	    #        that some nasty dependency loop isn't accidentally+	    #        broken:+	    #new_libs="$deplib $new_libs"+	    # Pragmatically, this seems to cause very few problems in+	    # practice:+	    case $deplib in+	    -L*) new_libs="$deplib $new_libs" ;;+	    -R*) ;;+	    *)+	      # And here is the reason: when a library appears more+	      # than once as an explicit dependence of a library, or+	      # is implicitly linked in more than once by the+	      # compiler, it is considered special, and multiple+	      # occurrences thereof are not removed.  Compare this+	      # with having the same library being listed as a+	      # dependency of multiple other libraries: in this case,+	      # we know (pedantically, we assume) the library does not+	      # need to be listed more than once, so we keep only the+	      # last copy.  This is not always right, but it is rare+	      # enough that we require users that really mean to play+	      # such unportable linking tricks to link the library+	      # using -Wl,-lname, so that libtool does not consider it+	      # for duplicate removal.+	      case " $specialdeplibs " in+	      *" $deplib "*) new_libs="$deplib $new_libs" ;; 	      *)-	        # And here is the reason: when a library appears more-	        # than once as an explicit dependence of a library, or-	        # is implicitly linked in more than once by the-	        # compiler, it is considered special, and multiple-	        # occurrences thereof are not removed.  Compare this-	        # with having the same library being listed as a-	        # dependency of multiple other libraries: in this case,-	        # we know (pedantically, we assume) the library does not-	        # need to be listed more than once, so we keep only the-	        # last copy.  This is not always right, but it is rare-	        # enough that we require users that really mean to play-	        # such unportable linking tricks to link the library-	        # using -Wl,-lname, so that libtool does not consider it-	        # for duplicate removal.  And if not possible for portability-	        # reasons, then --preserve-dup-deps should be used.-	        case " $specialdeplibs " in-	        *" $deplib "*) new_libs="$deplib $new_libs" ;;-	        *)-	          case " $new_libs " in-	          *" $deplib "*) ;;-	          *) new_libs="$deplib $new_libs" ;;-	          esac-	          ;;-	        esac-	        ;;+		case " $new_libs " in+		*" $deplib "*) ;;+		*) new_libs="$deplib $new_libs" ;;+		esac+		;; 	      esac-	    fi+	      ;;+	    esac 	  done 	  tmp_libs= 	  for deplib in $new_libs; do@@ -9213,7 +9025,9 @@ 	if test pass_all != "$deplibs_check_method"; then 	  func_fatal_error "cannot build libtool library '$output' from non-libtool objects on this host:$objs" 	else-	  func_warning "Linking the shared library $output against the non-libtool objects $objs is not portable!"+	  echo+	  $ECHO "*** Warning: Linking the shared library $output against the non-libtool"+	  $ECHO "*** objects $objs is not portable!" 	  func_append libobjs " $objs" 	fi       fi@@ -9274,13 +9088,13 @@ 	  # 	  case $version_type in 	  # correct linux to gnu/linux during the next big refactor-	  darwin|freebsd-elf|linux|midnightbsd-elf|osf|qnx|windows|none)+	  darwin|freebsd-elf|linux|midnightbsd-elf|osf|windows|none) 	    func_arith $number_major + $number_minor 	    current=$func_arith_result 	    age=$number_minor 	    revision=$number_revision 	    ;;-	  freebsd-aout|sco|sunos)+	  freebsd-aout|qnx|sunos) 	    current=$number_major 	    revision=$number_minor 	    age=0@@ -9430,9 +9244,8 @@ 	  ;;  	qnx)-	  func_arith $current - $age-	  major=.$func_arith_result-	  versuffix=$major.$age.$revision+	  major=.$current+	  versuffix=.$current 	  ;;  	sco)@@ -9585,7 +9398,7 @@       if test yes = "$build_libtool_libs"; then 	if test -n "$rpath"; then 	  case $host in-	  *-*-cygwin* | *-*-mingw* | *-*-windows* | *-*-pw32* | *-*-os2* | *-*-beos* | *-cegcc* | *-*-haiku*)+	  *-*-cygwin* | *-*-mingw* | *-*-pw32* | *-*-os2* | *-*-beos* | *-cegcc* | *-*-haiku*) 	    # these systems don't actually have a c library (as such)! 	    ;; 	  *-*-rhapsody* | *-*-darwin1.[012])@@ -9636,6 +9449,108 @@ 	  # implementing what was already the behavior. 	  newdeplibs=$deplibs 	  ;;+	test_compile)+	  # This code stresses the "libraries are programs" paradigm to its+	  # limits. Maybe even breaks it.  We compile a program, linking it+	  # against the deplibs as a proxy for the library.  Then we can check+	  # whether they linked in statically or dynamically with ldd.+	  $opt_dry_run || $RM conftest.c+	  cat > conftest.c <<EOF+	  int main() { return 0; }+EOF+	  $opt_dry_run || $RM conftest+	  if $LTCC $LTCFLAGS -o conftest conftest.c $deplibs; then+	    ldd_output=`ldd conftest`+	    for i in $deplibs; do+	      case $i in+	      -l*)+		func_stripname -l '' "$i"+		name=$func_stripname_result+		if test yes = "$allow_libtool_libs_with_static_runtimes"; then+		  case " $predeps $postdeps " in+		  *" $i "*)+		    func_append newdeplibs " $i"+		    i=+		    ;;+		  esac+		fi+		if test -n "$i"; then+		  libname=`eval "\\$ECHO \"$libname_spec\""`+		  deplib_matches=`eval "\\$ECHO \"$library_names_spec\""`+		  set dummy $deplib_matches; shift+		  deplib_match=$1+		  if test `expr "$ldd_output" : ".*$deplib_match"` -ne 0; then+		    func_append newdeplibs " $i"+		  else+		    droppeddeps=yes+		    echo+		    $ECHO "*** Warning: dynamic linker does not accept needed library $i."+		    echo "*** I have the capability to make that library automatically link in when"+		    echo "*** you link to this library.  But I can only do this if you have a"+		    echo "*** shared version of the library, which I believe you do not have"+		    echo "*** because a test_compile did reveal that the linker did not use it for"+		    echo "*** its dynamic dependency list that programs get resolved with at runtime."+		  fi+		fi+		;;+	      *)+		func_append newdeplibs " $i"+		;;+	      esac+	    done+	  else+	    # Error occurred in the first compile.  Let's try to salvage+	    # the situation: Compile a separate program for each library.+	    for i in $deplibs; do+	      case $i in+	      -l*)+		func_stripname -l '' "$i"+		name=$func_stripname_result+		$opt_dry_run || $RM conftest+		if $LTCC $LTCFLAGS -o conftest conftest.c $i; then+		  ldd_output=`ldd conftest`+		  if test yes = "$allow_libtool_libs_with_static_runtimes"; then+		    case " $predeps $postdeps " in+		    *" $i "*)+		      func_append newdeplibs " $i"+		      i=+		      ;;+		    esac+		  fi+		  if test -n "$i"; then+		    libname=`eval "\\$ECHO \"$libname_spec\""`+		    deplib_matches=`eval "\\$ECHO \"$library_names_spec\""`+		    set dummy $deplib_matches; shift+		    deplib_match=$1+		    if test `expr "$ldd_output" : ".*$deplib_match"` -ne 0; then+		      func_append newdeplibs " $i"+		    else+		      droppeddeps=yes+		      echo+		      $ECHO "*** Warning: dynamic linker does not accept needed library $i."+		      echo "*** I have the capability to make that library automatically link in when"+		      echo "*** you link to this library.  But I can only do this if you have a"+		      echo "*** shared version of the library, which you do not appear to have"+		      echo "*** because a test_compile did reveal that the linker did not use this one"+		      echo "*** as a dynamic dependency that programs can get resolved with at runtime."+		    fi+		  fi+		else+		  droppeddeps=yes+		  echo+		  $ECHO "*** Warning!  Library $i is needed by this library but I was not able to"+		  echo "*** make it link in!  You will probably need to install it or some"+		  echo "*** library that it depends on before this library will be fully"+		  echo "*** functional.  Installing it before continuing would be even better."+		fi+		;;+	      *)+		func_append newdeplibs " $i"+		;;+	      esac+	    done+	  fi+	  ;; 	file_magic*) 	  set dummy $deplibs_check_method; shift 	  file_magic_regex=`expr "$deplibs_check_method" : "$1 \(.*\)"`@@ -9699,16 +9614,17 @@ 	      fi 	      if test -n "$a_deplib"; then 		droppeddeps=yes-		func_warning "Linker path does not have real file for library $a_deplib."-		func_warning "I have the capability to make that library automatically link in when"-		func_warning "you link to this library.  But I can only do this if you have a"-		func_warning "shared version of the library, which you do not appear to have"-		func_warning "because I did check the linker path looking for a file starting"+		echo+		$ECHO "*** Warning: linker path does not have real file for library $a_deplib."+		echo "*** I have the capability to make that library automatically link in when"+		echo "*** you link to this library.  But I can only do this if you have a"+		echo "*** shared version of the library, which you do not appear to have"+		echo "*** because I did check the linker path looking for a file starting" 		if test -z "$potlib"; then-		  func_warning "with $libname but no candidates were found. (...for file magic test)"+		  $ECHO "*** with $libname but no candidates were found. (...for file magic test)" 		else-		  func_warning "with $libname and none of the candidates passed a file format test"-		  func_warning "using a file magic. Last file checked: $potlib"+		  $ECHO "*** with $libname and none of the candidates passed a file format test"+		  $ECHO "*** using a file magic. Last file checked: $potlib" 		fi 	      fi 	      ;;@@ -9752,16 +9668,17 @@ 	      fi 	      if test -n "$a_deplib"; then 		droppeddeps=yes-		func_warning "Linker path does not have real file for library $a_deplib."-		func_warning "I have the capability to make that library automatically link in when"-		func_warning "you link to this library.  But I can only do this if you have a"-		func_warning "shared version of the library, which you do not appear to have"-		func_warning "because I did check the linker path looking for a file starting"+		echo+		$ECHO "*** Warning: linker path does not have real file for library $a_deplib."+		echo "*** I have the capability to make that library automatically link in when"+		echo "*** you link to this library.  But I can only do this if you have a"+		echo "*** shared version of the library, which you do not appear to have"+		echo "*** because I did check the linker path looking for a file starting" 		if test -z "$potlib"; then-		  func_warning "with $libname but no candidates were found. (...for regex pattern test)"+		  $ECHO "*** with $libname but no candidates were found. (...for regex pattern test)" 		else-		  func_warning "with $libname and none of the candidates passed a file format test"-		  func_warning "using a regex pattern. Last file checked: $potlib"+		  $ECHO "*** with $libname and none of the candidates passed a file format test"+		  $ECHO "*** using a regex pattern. Last file checked: $potlib" 		fi 	      fi 	      ;;@@ -9785,11 +9702,11 @@ 	  *[!\	\ ]*) 	    echo 	    if test none = "$deplibs_check_method"; then-	      func_warning "Inter-library dependencies are not supported in this platform."+	      echo "*** Warning: inter-library dependencies are not supported in this platform." 	    else-	      func_warning "Inter-library dependencies are not known to be supported."+	      echo "*** Warning: inter-library dependencies are not known to be supported." 	    fi-	    func_warning "All declared inter-library dependencies are being dropped."+	    echo "*** All declared inter-library dependencies are being dropped." 	    droppeddeps=yes 	    ;; 	  esac@@ -9810,15 +9727,17 @@  	if test yes = "$droppeddeps"; then 	  if test yes = "$module"; then-	    func_warning "libtool could not satisfy all declared inter-library"-	    func_warning "dependencies of module $libname.  Therefore, libtool will create"-	    func_warning "a static module, that should work as long as the dlopening"-	    func_warning "application is linked with the -dlopen flag."+	    echo+	    echo "*** Warning: libtool could not satisfy all declared inter-library"+	    $ECHO "*** dependencies of module $libname.  Therefore, libtool will create"+	    echo "*** a static module, that should work as long as the dlopening"+	    echo "*** application is linked with the -dlopen flag." 	    if test -z "$global_symbol_pipe"; then-	      func_warning "However, this would only work if libtool was able to extract symbol"-	      func_warning "lists from a program, using 'nm' or equivalent, but libtool could"-	      func_warning "not find such a program.  So, this module is probably useless."-	      func_warning "'nm' from GNU binutils and a full rebuild may help."+	      echo+	      echo "*** However, this would only work if libtool was able to extract symbol"+	      echo "*** lists from a program, using 'nm' or equivalent, but libtool could"+	      echo "*** not find such a program.  So, this module is probably useless."+	      echo "*** 'nm' from GNU binutils and a full rebuild may help." 	    fi 	    if test no = "$build_old_libs"; then 	      oldlibs=$output_objdir/$libname.$libext@@ -9993,7 +9912,7 @@  	orig_export_symbols= 	case $host_os in-	cygwin* | mingw* | windows* | cegcc*)+	cygwin* | mingw* | cegcc*) 	  if test -n "$export_symbols" && test -z "$export_symbols_regex"; then 	    # exporting using user supplied symfile 	    func_dll_def_p "$export_symbols" || {@@ -10191,7 +10110,20 @@ 	  last_robj= 	  k=1 -	  if test -n "$save_libobjs" && test : != "$skipped_export" && test -n "$file_list_spec"; then+	  if test -n "$save_libobjs" && test : != "$skipped_export" && test yes = "$with_gnu_ld"; then+	    output=$output_objdir/$output_la.lnkscript+	    func_verbose "creating GNU ld script: $output"+	    echo 'INPUT (' > $output+	    for obj in $save_libobjs+	    do+	      func_to_tool_file "$obj"+	      $ECHO "$func_to_tool_file_result" >> $output+	    done+	    echo ')' >> $output+	    func_append delfiles " $output"+	    func_to_tool_file "$output"+	    output=$func_to_tool_file_result+	  elif test -n "$save_libobjs" && test : != "$skipped_export" && test -n "$file_list_spec"; then 	    output=$output_objdir/$output_la.lnk 	    func_verbose "creating linker input file list: $output" 	    : > $output@@ -10210,19 +10142,6 @@ 	    func_append delfiles " $output" 	    func_to_tool_file "$output" 	    output=$firstobj\"$file_list_spec$func_to_tool_file_result\"-	  elif test -n "$save_libobjs" && test : != "$skipped_export" && test yes = "$with_gnu_ld"; then-	    output=$output_objdir/$output_la.lnkscript-	    func_verbose "creating GNU ld script: $output"-	    echo 'INPUT (' > $output-	    for obj in $save_libobjs-	    do-	      func_to_tool_file "$obj"-	      $ECHO "$func_to_tool_file_result" >> $output-	    done-	    echo ')' >> $output-	    func_append delfiles " $output"-	    func_to_tool_file "$output"-	    output=$func_to_tool_file_result 	  else 	    if test -n "$save_libobjs"; then 	      func_verbose "creating reloadable object files..."@@ -10663,7 +10582,7 @@ 	  esac 	fi 	case $host in-	*-*-cygwin* | *-*-mingw* | *-*-windows* | *-*-pw32* | *-*-os2* | *-cegcc*)+	*-*-cygwin* | *-*-mingw* | *-*-pw32* | *-*-os2* | *-cegcc*) 	  testbindir=`$ECHO "$libdir" | $SED -e 's*/lib$*/bin*'` 	  case :$dllsearchpath: in 	  *":$libdir:"*) ;;@@ -10741,7 +10660,7 @@         # Disable wrappers for cegcc and mingw32ce hosts, we are cross compiling anyway.         wrappers_required=false         ;;-      *cygwin* | *mingw* | *windows* )+      *cygwin* | *mingw* )         test yes = "$build_libtool_libs" || wrappers_required=false         ;;       *)@@ -10895,7 +10814,7 @@ 	  *) exeext= ;; 	esac 	case $host in-	  *cygwin* | *mingw* | windows* )+	  *cygwin* | *mingw* ) 	    func_dirname_and_basename "$output" "" "." 	    output_name=$func_basename_result 	    output_path=$func_dirname_result@@ -11229,7 +11148,7 @@ 	  # tests/bindir.at for full details. 	  tdlname=$dlname 	  case $host,$output,$installed,$module,$dlname in-	    *cygwin*,*lai,yes,no,*.dll | *mingw*,*lai,yes,no,*.dll | *windows*,*lai,yes,no,*.dll | *cegcc*,*lai,yes,no,*.dll)+	    *cygwin*,*lai,yes,no,*.dll | *mingw*,*lai,yes,no,*.dll | *cegcc*,*lai,yes,no,*.dll) 	      # If a -bindir argument was supplied, place the dll there. 	      if test -n "$bindir"; then 		func_relative_path "$install_libdir" "$bindir"
m4/libtool.m4 view
@@ -1,6 +1,6 @@ # libtool.m4 - Configure libtool for the host system. -*-Autoconf-*- #-#   Copyright (C) 1996-2001, 2003-2019, 2021-2024 Free Software+#   Copyright (C) 1996-2001, 2003-2019, 2021-2022 Free Software #   Foundation, Inc. #   Written by Gordon Matzigkeit, 1996 #@@ -9,13 +9,13 @@ # modifications, as long as this notice is preserved.  m4_define([_LT_COPYING], [dnl-# Copyright (C) 2024 Free Software Foundation, Inc.+# Copyright (C) 2014 Free Software Foundation, Inc. # This is free software; see the source for copying conditions.  There is NO # warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  # GNU Libtool is free software; you can redistribute it and/or modify # it under the terms of the GNU General Public License as published by-# the Free Software Foundation; either version 2 of the License, or+# the Free Software Foundation; either version 2 of of the License, or # (at your option) any later version. # # As a special exception to the GNU General Public License, if you@@ -32,7 +32,7 @@ # along with this program.  If not, see <http://www.gnu.org/licenses/>. ]) -# serial 63 LT_INIT+# serial 59 LT_INIT   # LT_PREREQ(VERSION)@@ -60,7 +60,7 @@ # LT_INIT([OPTIONS]) # ------------------ AC_DEFUN([LT_INIT],-[AC_PREREQ([2.64])dnl We use AC_PATH_PROGS_FEATURE_CHECK+[AC_PREREQ([2.62])dnl We use AC_PATH_PROGS_FEATURE_CHECK AC_REQUIRE([AC_CONFIG_AUX_DIR_DEFAULT])dnl AC_BEFORE([$0], [LT_LANG])dnl AC_BEFORE([$0], [LT_OUTPUT])dnl@@ -616,7 +616,7 @@ # LT_OUTPUT # --------- # This macro allows early generation of the libtool script (before-# AC_OUTPUT is called), in case it is used in configure for compilation+# AC_OUTPUT is called), incase it is used in configure for compilation # tests. AC_DEFUN([LT_OUTPUT], [: ${CONFIG_LT=./config.lt}@@ -651,9 +651,9 @@ m4_ifset([AC_PACKAGE_VERSION], [ AC_PACKAGE_VERSION]) configured by $[0], generated by m4_PACKAGE_STRING. -Copyright (C) 2024 Free Software Foundation, Inc.+Copyright (C) 2011 Free Software Foundation, Inc. This config.lt script is free software; the Free Software Foundation-gives unlimited permission to copy, distribute and modify it."+gives unlimited permision to copy, distribute and modify it."  while test 0 != $[#] do@@ -974,7 +974,6 @@ $RM -r conftest* ])# _LT_LINKER_BOILERPLATE - # _LT_REQUIRED_DARWIN_CHECKS # ------------------------- m4_defun_once([_LT_REQUIRED_DARWIN_CHECKS],[@@ -1025,21 +1024,6 @@ 	rm -f conftest.*       fi]) -    # Feature test to disable chained fixups since it is not-    # compatible with '-undefined dynamic_lookup'-    AC_CACHE_CHECK([for -no_fixup_chains linker flag],-      [lt_cv_support_no_fixup_chains],-      [ save_LDFLAGS=$LDFLAGS-        LDFLAGS="$LDFLAGS -Wl,-no_fixup_chains"-        AC_LINK_IFELSE(-          [AC_LANG_PROGRAM([],[])],-          lt_cv_support_no_fixup_chains=yes,-          lt_cv_support_no_fixup_chains=no-        )-        LDFLAGS=$save_LDFLAGS-      ]-    )-     AC_CACHE_CHECK([for -exported_symbols_list linker flag],       [lt_cv_ld_exported_symbols_list],       [lt_cv_ld_exported_symbols_list=no@@ -1064,7 +1048,7 @@       echo "$RANLIB libconftest.a" >&AS_MESSAGE_LOG_FD       $RANLIB libconftest.a 2>&AS_MESSAGE_LOG_FD       cat > conftest.c << _LT_EOF-int main(void) { return 0;}+int main() { return 0;} _LT_EOF       echo "$LTCC $LTCFLAGS $LDFLAGS -o conftest conftest.c -Wl,-force_load,./libconftest.a" >&AS_MESSAGE_LOG_FD       $LTCC $LTCFLAGS $LDFLAGS -o conftest conftest.c -Wl,-force_load,./libconftest.a 2>conftest.err@@ -1089,32 +1073,13 @@         10.[[012]],*|,*powerpc*-darwin[[5-8]]*)           _lt_dar_allow_undefined='$wl-flat_namespace $wl-undefined ${wl}suppress' ;;         *)-          _lt_dar_allow_undefined='$wl-undefined ${wl}dynamic_lookup'-          if test yes = "$lt_cv_support_no_fixup_chains"; then-            AS_VAR_APPEND([_lt_dar_allow_undefined], [' $wl-no_fixup_chains'])-          fi-        ;;+          _lt_dar_allow_undefined='$wl-undefined ${wl}dynamic_lookup' ;;       esac     ;;   esac     if test yes = "$lt_cv_apple_cc_single_mod"; then       _lt_dar_single_mod='$single_module'     fi-    _lt_dar_needs_single_mod=no-    case $host_os in-    rhapsody* | darwin1.*)-      _lt_dar_needs_single_mod=yes ;;-    darwin*)-      # When targeting Mac OS X 10.4 (darwin 8) or later,-      # -single_module is the default and -multi_module is unsupported.-      # The toolchain on macOS 10.14 (darwin 18) and later cannot-      # target any OS version that needs -single_module.-      case ${MACOSX_DEPLOYMENT_TARGET-10.0},$host in-      10.0,*-darwin[[567]].*|10.[[0-3]],*-darwin[[5-9]].*|10.[[0-3]],*-darwin1[[0-7]].*)-        _lt_dar_needs_single_mod=yes ;;-      esac-    ;;-    esac     if test yes = "$lt_cv_ld_exported_symbols_list"; then       _lt_dar_export_syms=' $wl-exported_symbols_list,$output_objdir/$libname-symbols.expsym'     else@@ -1160,7 +1125,7 @@     _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"     _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"     m4_if([$1], [CXX],-[   if test yes = "$_lt_dar_needs_single_mod" -a yes != "$lt_cv_apple_cc_single_mod"; then+[   if test yes != "$lt_cv_apple_cc_single_mod"; then       _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"       _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"     fi@@ -1290,9 +1255,7 @@ case $with_sysroot in #(  yes)    if test yes = "$GCC"; then-     # Trim trailing / since we'll always append absolute paths and we want-     # to avoid //, if only for less confusing output for the user.-     lt_sysroot=`$CC --print-sysroot 2>/dev/null | $SED 's:/\+$::'`+     lt_sysroot=`$CC --print-sysroot 2>/dev/null`    fi    ;; #(  /*)@@ -1404,7 +1367,7 @@   ;;  x86_64-*kfreebsd*-gnu|x86_64-*linux*|powerpc*-*linux*| \-s390*-*linux*|s390*-*tpf*|sparc*-*linux*|x86_64-gnu*)+s390*-*linux*|s390*-*tpf*|sparc*-*linux*)   # Find out what ABI is being produced by ac_compile, and set linker   # options accordingly.  Note that the listed cases only cover the   # situations where additional linker options are needed (such as when@@ -1419,7 +1382,7 @@ 	  x86_64-*kfreebsd*-gnu) 	    LD="${LD-ld} -m elf_i386_fbsd" 	    ;;-	  x86_64-*linux*|x86_64-gnu*)+	  x86_64-*linux*) 	    case `$FILECMD conftest.o` in 	      *x86-64*) 		LD="${LD-ld} -m elf32_x86_64"@@ -1448,7 +1411,7 @@ 	  x86_64-*kfreebsd*-gnu) 	    LD="${LD-ld} -m elf_x86_64_fbsd" 	    ;;-	  x86_64-*linux*|x86_64-gnu*)+	  x86_64-*linux*) 	    LD="${LD-ld} -m elf_x86_64" 	    ;; 	  powerpcle-*linux*)@@ -1531,7 +1494,7 @@  # Use ARFLAGS variable as AR's operation code to sync the variable naming with # Automake.  If both AR_FLAGS and ARFLAGS are specified, AR_FLAGS should have-# higher priority because that's what people were doing historically (setting+# higher priority because thats what people were doing historically (setting # ARFLAGS for automake and AR_FLAGS for libtool).  FIXME: Make the AR_FLAGS # variable obsoleted/removed. @@ -1581,7 +1544,7 @@ test -z "$STRIP" && STRIP=: _LT_DECL([], [STRIP], [1], [A symbol stripping program]) -AC_REQUIRE([AC_PROG_RANLIB])+AC_CHECK_TOOL(RANLIB, ranlib, :) test -z "$RANLIB" && RANLIB=: _LT_DECL([], [RANLIB], [1],     [Commands used to install an old-style archive])@@ -1592,8 +1555,15 @@ old_postuninstall_cmds=  if test -n "$RANLIB"; then+  case $host_os in+  bitrig* | openbsd*)+    old_postinstall_cmds="$old_postinstall_cmds~\$RANLIB -t \$tool_oldlib"+    ;;+  *)+    old_postinstall_cmds="$old_postinstall_cmds~\$RANLIB \$tool_oldlib"+    ;;+  esac   old_archive_cmds="$old_archive_cmds~\$RANLIB \$tool_oldlib"-  old_postinstall_cmds="$old_postinstall_cmds~\$RANLIB \$tool_oldlib" fi  case $host_os in@@ -1725,14 +1695,14 @@     lt_cv_sys_max_cmd_len=12288;    # 12K is about right     ;; -  gnu* | ironclad*)-    # Under GNU Hurd and Ironclad, this test is not required because there-    # is no limit to the length of command line arguments.+  gnu*)+    # Under GNU Hurd, this test is not required because there is+    # no limit to the length of command line arguments.     # Libtool will interpret -1 as no limit whatsoever     lt_cv_sys_max_cmd_len=-1;     ;; -  cygwin* | mingw* | windows* | cegcc*)+  cygwin* | mingw* | cegcc*)     # On Win9x/ME, this test blows up -- it succeeds, but takes     # about 5 minutes as the teststring grows exponentially.     # Worse, since 9x/ME are not pre-emptively multitasking,@@ -1754,7 +1724,7 @@     lt_cv_sys_max_cmd_len=8192;     ;; -  darwin* | dragonfly* | freebsd* | midnightbsd* | netbsd* | openbsd*)+  bitrig* | darwin* | dragonfly* | freebsd* | midnightbsd* | netbsd* | openbsd*)     # This has been around since 386BSD, at least.  Likely further.     if test -x /sbin/sysctl; then       lt_cv_sys_max_cmd_len=`/sbin/sysctl -n kern.argmax`@@ -1914,11 +1884,11 @@ /* When -fvisibility=hidden is used, assume the code has been annotated    correspondingly for the symbols needed.  */ #if defined __GNUC__ && (((__GNUC__ == 3) && (__GNUC_MINOR__ >= 3)) || (__GNUC__ > 3))-int fnord (void) __attribute__((visibility("default")));+int fnord () __attribute__((visibility("default"))); #endif -int fnord (void) { return 42; }-int main (void)+int fnord () { return 42; }+int main () {   void *self = dlopen (0, LT_DLGLOBAL|LT_DLLAZY_OR_NOW);   int status = $lt_dlunknown;@@ -1975,7 +1945,7 @@     lt_cv_dlopen_self=yes     ;; -  mingw* | windows* | pw32* | cegcc*)+  mingw* | pw32* | cegcc*)     lt_cv_dlopen=LoadLibrary     lt_cv_dlopen_libs=     ;;@@ -2343,7 +2313,7 @@     *) lt_awk_arg='/^libraries:/' ;;   esac   case $host_os in-    mingw* | windows* | cegcc*) lt_sed_strip_eq='s|=\([[A-Za-z]]:\)|\1|g' ;;+    mingw* | cegcc*) lt_sed_strip_eq='s|=\([[A-Za-z]]:\)|\1|g' ;;     *) lt_sed_strip_eq='s|=/|/|g' ;;   esac   lt_search_path_spec=`$CC -print-search-dirs | awk $lt_awk_arg | $SED -e "s/^libraries://" -e $lt_sed_strip_eq`@@ -2401,7 +2371,7 @@   # AWK program above erroneously prepends '/' to C:/dos/paths   # for these hosts.   case $host_os in-    mingw* | windows* | cegcc*) lt_search_path_spec=`$ECHO "$lt_search_path_spec" |\+    mingw* | cegcc*) lt_search_path_spec=`$ECHO "$lt_search_path_spec" |\       $SED 's|/\([[A-Za-z]]:\)|\1|g'` ;;   esac   sys_lib_search_path_spec=`$ECHO "$lt_search_path_spec" | $lt_NL2SP`@@ -2476,7 +2446,7 @@     # Unfortunately, runtime linking may impact performance, so we do     # not want this to be the default eventually. Also, we use the     # versioned .so libs for executables only if there is the -brtl-    # linker flag in LDFLAGS as well, or --enable-aix-soname=svr4 only.+    # linker flag in LDFLAGS as well, or --with-aix-soname=svr4 only.     # To allow for filename-based versioning support, we need to create     # libNAME.so.V as an archive file, containing:     # *) an Import File, referring to the versioned filename of the@@ -2570,7 +2540,7 @@   # libtool to hard-code these into programs   ;; -cygwin* | mingw* | windows* | pw32* | cegcc*)+cygwin* | mingw* | pw32* | cegcc*)   version_type=windows   shrext_cmds=.dll   need_version=no@@ -2581,29 +2551,15 @@     # gcc     library_names_spec='$libname.dll.a'     # DLL is installed to $(libdir)/../bin by postinstall_cmds-    # If user builds GCC with multilib enabled,-    # it should just install on $(libdir)-    # not on $(libdir)/../bin or 32 bits dlls would override 64 bit ones.-    if test xyes = x"$multilib"; then-      postinstall_cmds='base_file=`basename \$file`~-        dlpath=`$SHELL 2>&1 -c '\''. $dir/'\''\$base_file'\''i; echo \$dlname'\''`~-        dldir=$destdir/`dirname \$dlpath`~-        $install_prog $dir/$dlname $destdir/$dlname~-        chmod a+x $destdir/$dlname~-        if test -n '\''$stripme'\'' && test -n '\''$striplib'\''; then-          eval '\''$striplib $destdir/$dlname'\'' || exit \$?;-        fi'-    else-      postinstall_cmds='base_file=`basename \$file`~-        dlpath=`$SHELL 2>&1 -c '\''. $dir/'\''\$base_file'\''i; echo \$dlname'\''`~-        dldir=$destdir/`dirname \$dlpath`~-        test -d \$dldir || mkdir -p \$dldir~-        $install_prog $dir/$dlname \$dldir/$dlname~-        chmod a+x \$dldir/$dlname~-        if test -n '\''$stripme'\'' && test -n '\''$striplib'\''; then-          eval '\''$striplib \$dldir/$dlname'\'' || exit \$?;-        fi'-    fi+    postinstall_cmds='base_file=`basename \$file`~+      dlpath=`$SHELL 2>&1 -c '\''. $dir/'\''\$base_file'\''i; echo \$dlname'\''`~+      dldir=$destdir/`dirname \$dlpath`~+      test -d \$dldir || mkdir -p \$dldir~+      $install_prog $dir/$dlname \$dldir/$dlname~+      chmod a+x \$dldir/$dlname~+      if test -n '\''$stripme'\'' && test -n '\''$striplib'\''; then+        eval '\''$striplib \$dldir/$dlname'\'' || exit \$?;+      fi'     postuninstall_cmds='dldll=`$SHELL 2>&1 -c '\''. $file; echo \$dlname'\''`~       dlpath=$dir/\$dldll~        $RM \$dlpath'@@ -2616,7 +2572,7 @@ m4_if([$1], [],[       sys_lib_search_path_spec="$sys_lib_search_path_spec /usr/lib/w32api"])       ;;-    mingw* | windows* | cegcc*)+    mingw* | cegcc*)       # MinGW DLLs use traditional 'lib' prefix       soname_spec='$libname`echo $release | $SED -e 's/[[.]]/-/g'`$versuffix$shared_ext'       ;;@@ -2635,7 +2591,7 @@     library_names_spec='$libname.dll.lib'      case $build_os in-    mingw* | windows*)+    mingw*)       sys_lib_search_path_spec=       lt_save_ifs=$IFS       IFS=';'@@ -2742,21 +2698,7 @@       need_version=yes       ;;   esac-  case $host_cpu in-    powerpc64)-      # On FreeBSD bi-arch platforms, a different variable is used for 32-bit-      # binaries.  See <https://man.freebsd.org/cgi/man.cgi?query=ld.so>.-      AC_COMPILE_IFELSE(-        [AC_LANG_SOURCE(-           [[int test_pointer_size[sizeof (void *) - 5];-           ]])],-        [shlibpath_var=LD_LIBRARY_PATH],-        [shlibpath_var=LD_32_LIBRARY_PATH])-      ;;-    *)-      shlibpath_var=LD_LIBRARY_PATH-      ;;-  esac+  shlibpath_var=LD_LIBRARY_PATH   case $host_os in   freebsd2.*)     shlibpath_overrides_runpath=yes@@ -2786,9 +2728,8 @@   soname_spec='$libname$release$shared_ext$major'   shlibpath_var=LIBRARY_PATH   shlibpath_overrides_runpath=no-  sys_lib_search_path_spec='/boot/system/non-packaged/develop/lib /boot/system/develop/lib'-  sys_lib_dlsearch_path_spec='/boot/home/config/non-packaged/lib /boot/home/config/lib /boot/system/non-packaged/lib /boot/system/lib'-  hardcode_into_libs=no+  sys_lib_dlsearch_path_spec='/boot/home/config/lib /boot/common/lib /boot/system/lib'+  hardcode_into_libs=yes   ;;  hpux9* | hpux10* | hpux11*)@@ -2898,7 +2839,7 @@   version_type=none # Android doesn't support versioned libraries.   need_lib_prefix=no   need_version=no-  library_names_spec='$libname$release$shared_ext $libname$shared_ext'+  library_names_spec='$libname$release$shared_ext'   soname_spec='$libname$release$shared_ext'   finish_cmds=   shlibpath_var=LD_LIBRARY_PATH@@ -2910,9 +2851,8 @@   hardcode_into_libs=yes    dynamic_linker='Android linker'-  # -rpath works at least for libraries that are not overridden by-  # libraries installed in system locations.-  _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='$wl-rpath $wl$libdir'+  # Don't embed -rpath directories since the linker doesn't support them.+  _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-L$libdir'   ;;  # This must be glibc/ELF.@@ -2946,10 +2886,7 @@   # before this can be enabled.   hardcode_into_libs=yes -  # Add ABI-specific directories to the system library path.-  sys_lib_dlsearch_path_spec="/lib64 /usr/lib64 /lib /usr/lib"--  # Ideally, we could use ldconfig to report *all* directories which are+  # Ideally, we could use ldconfig to report *all* directores which are   # searched for libraries, however this is still not possible.  Aside from not   # being certain /sbin/ldconfig is available, command   # 'ldconfig -N -X -v | grep ^/' on 64bit Fedora does not report /usr/lib64,@@ -2957,7 +2894,7 @@   # appending ld.so.conf contents (and includes) to the search path.   if test -f /etc/ld.so.conf; then     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' ' '`-    sys_lib_dlsearch_path_spec="$sys_lib_dlsearch_path_spec $lt_ld_extra"+    sys_lib_dlsearch_path_spec="/lib /usr/lib $lt_ld_extra"   fi    # We used to test for /lib/ld.so.1 and disable shared libraries on@@ -2973,8 +2910,8 @@   version_type=linux   need_lib_prefix=no   need_version=no-  library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$shared_ext'-  soname_spec='$libname$release$shared_ext$major'+  library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major ${libname}${shared_ext}'+  soname_spec='${libname}${release}${shared_ext}$major'   shlibpath_var=LD_LIBRARY_PATH   shlibpath_overrides_runpath=no   hardcode_into_libs=yes@@ -2999,18 +2936,6 @@   hardcode_into_libs=yes   ;; -*-mlibc)-  version_type=linux # correct to gnu/linux during the next big refactor-  need_lib_prefix=no-  need_version=no-  library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$shared_ext'-  soname_spec='$libname$release$shared_ext$major'-  dynamic_linker='mlibc ld.so'-  shlibpath_var=LD_LIBRARY_PATH-  shlibpath_overrides_runpath=no-  hardcode_into_libs=yes-  ;;- newsos6)   version_type=linux # correct to gnu/linux during the next big refactor   library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$shared_ext'@@ -3030,7 +2955,7 @@   dynamic_linker='ldqnx.so'   ;; -openbsd*)+openbsd* | bitrig*)   version_type=sunos   sys_lib_dlsearch_path_spec=/usr/lib   need_lib_prefix=no@@ -3090,17 +3015,6 @@   dynamic_linker=no   ;; -serenity*)-  version_type=linux # correct to gnu/linux during the next big refactor-  need_lib_prefix=no-  need_version=no-  library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$shared_ext'-  soname_spec='$libname$release$shared_ext$major'-  shlibpath_var=LD_LIBRARY_PATH-  shlibpath_overrides_runpath=no-  dynamic_linker='SerenityOS LibELF'-  ;;- solaris*)   version_type=linux # correct to gnu/linux during the next big refactor   need_lib_prefix=no@@ -3198,21 +3112,6 @@   shlibpath_var=LD_LIBRARY_PATH   ;; -emscripten*)-  version_type=none-  need_lib_prefix=no-  need_version=no-  library_names_spec='$libname$release$shared_ext'-  soname_spec='$libname$release$shared_ext'-  finish_cmds=-  dynamic_linker="Emscripten linker"-  _LT_COMPILER_PIC($1)='-fPIC'-  _LT_TAGVAR(archive_cmds, $1)='$CC -sSIDE_MODULE=2 -shared $libobjs $deplibs $compiler_flags -o $lib'-  _LT_TAGVAR(archive_expsym_cmds, $1)='$SED "s|^|_|" $export_symbols >$output_objdir/$soname.expsym~$CC -sSIDE_MODULE=2 -shared $libobjs $deplibs $compiler_flags -o $lib -s EXPORTED_FUNCTIONS=@$output_objdir/$soname.expsym'-  _LT_TAGVAR(archive_cmds_need_lc, $1)=no-  _LT_TAGVAR(no_undefined_flag, $1)=-  ;;- *)   dynamic_linker=no   ;;@@ -3388,7 +3287,7 @@   # Check if gcc -print-prog-name=ld gives a path.   AC_MSG_CHECKING([for ld used by $CC])   case $host in-  *-*-mingw* | *-*-windows*)+  *-*-mingw*)     # gcc leaves a trailing carriage return, which upsets mingw     ac_prog=`($CC -print-prog-name=ld) 2>&5 | tr -d '\015'` ;;   *)@@ -3497,7 +3396,7 @@ esac reload_cmds='$LD$reload_flag -o $output$reload_objs' case $host_os in-  cygwin* | mingw* | windows* | pw32* | cegcc*)+  cygwin* | mingw* | pw32* | cegcc*)     if test yes != "$GCC"; then       reload_cmds=false     fi@@ -3569,6 +3468,7 @@ # 'none' -- dependencies not supported. # 'unknown' -- same as none, but documents that we really don't know. # 'pass_all' -- all dependencies passed with no checks.+# 'test_compile' -- check by making test program. # 'file_magic [[regex]]' -- check by looking for files in library path # that responds to the $file_magic_cmd with a given extended regex. # If you have 'file' or equivalent on your system and you're not sure@@ -3595,7 +3495,7 @@   lt_cv_file_magic_cmd='func_win32_libid'   ;; -mingw* | windows* | pw32*)+mingw* | pw32*)   # Base MSYS/MinGW do not provide the 'file' command needed by   # func_win32_libid shell function, so use a weaker test based on 'objdump',   # unless we find 'file', for example because we are cross-compiling.@@ -3604,7 +3504,7 @@     lt_cv_file_magic_cmd='func_win32_libid'   else     # Keep this pattern in sync with the one in func_win32_libid.-    lt_cv_deplibs_check_method='file_magic file format (pei*-i386(.*architecture: i386)?|pe-arm-wince|pe-x86-64|pe-aarch64)'+    lt_cv_deplibs_check_method='file_magic file format (pei*-i386(.*architecture: i386)?|pe-arm-wince|pe-x86-64)'     lt_cv_file_magic_cmd='$OBJDUMP -f'   fi   ;;@@ -3677,10 +3577,6 @@   lt_cv_deplibs_check_method=pass_all   ;; -*-mlibc)-  lt_cv_deplibs_check_method=pass_all-  ;;- netbsd* | netbsdelf*-gnu)   if echo __ELF__ | $CC -E - | $GREP __ELF__ > /dev/null; then     lt_cv_deplibs_check_method='match_pattern /lib[[^/]]+(\.so\.[[0-9]]+\.[[0-9]]+|_pic\.a)$'@@ -3699,7 +3595,7 @@   lt_cv_deplibs_check_method=pass_all   ;; -openbsd*)+openbsd* | bitrig*)   if test -z "`echo __ELF__ | $CC -E - | $GREP __ELF__`"; then     lt_cv_deplibs_check_method='match_pattern /lib[[^/]]+(\.so\.[[0-9]]+\.[[0-9]]+|\.so|_pic\.a)$'   else@@ -3715,10 +3611,6 @@   lt_cv_deplibs_check_method=pass_all   ;; -serenity*)-  lt_cv_deplibs_check_method=pass_all-  ;;- solaris*)   lt_cv_deplibs_check_method=pass_all   ;;@@ -3767,7 +3659,7 @@ want_nocaseglob=no if test "$build" = "$host"; then   case $host_os in-  mingw* | windows* | pw32*)+  mingw* | pw32*)     if ( shopt | grep nocaseglob ) >/dev/null 2>&1; then       want_nocaseglob=yes     else@@ -3819,7 +3711,7 @@ 	# Tru64's nm complains that /dev/null is an invalid object file 	# MSYS converts /dev/null to NUL, MinGW nm treats NUL as empty 	case $build_os in-	mingw* | windows*) lt_bad_file=conftest.nm/nofile ;;+	mingw*) lt_bad_file=conftest.nm/nofile ;; 	*) lt_bad_file=/dev/null ;; 	esac 	case `"$tmp_nm" -B $lt_bad_file 2>&1 | $SED '1q'` in@@ -3910,7 +3802,7 @@ [lt_cv_sharedlib_from_linklib_cmd='unknown'  case $host_os in-cygwin* | mingw* | windows* | pw32* | cegcc*)+cygwin* | mingw* | pw32* | cegcc*)   # two different shell functions defined in ltmain.sh;   # decide which one to use based on capabilities of $DLLTOOL   case `$DLLTOOL --help 2>&1` in@@ -3942,16 +3834,16 @@ m4_defun([_LT_PATH_MANIFEST_TOOL], [AC_CHECK_TOOL(MANIFEST_TOOL, mt, :) test -z "$MANIFEST_TOOL" && MANIFEST_TOOL=mt-AC_CACHE_CHECK([if $MANIFEST_TOOL is a manifest tool], [lt_cv_path_manifest_tool],-  [lt_cv_path_manifest_tool=no+AC_CACHE_CHECK([if $MANIFEST_TOOL is a manifest tool], [lt_cv_path_mainfest_tool],+  [lt_cv_path_mainfest_tool=no   echo "$as_me:$LINENO: $MANIFEST_TOOL '-?'" >&AS_MESSAGE_LOG_FD   $MANIFEST_TOOL '-?' 2>conftest.err > conftest.out   cat conftest.err >&AS_MESSAGE_LOG_FD   if $GREP 'Manifest Tool' conftest.out > /dev/null; then-    lt_cv_path_manifest_tool=yes+    lt_cv_path_mainfest_tool=yes   fi   rm -f conftest*])-if test yes != "$lt_cv_path_manifest_tool"; then+if test yes != "$lt_cv_path_mainfest_tool"; then   MANIFEST_TOOL=: fi _LT_DECL([], [MANIFEST_TOOL], [1], [Manifest tool])dnl@@ -3980,7 +3872,7 @@ [AC_REQUIRE([AC_CANONICAL_HOST])dnl LIBM= case $host in-*-*-beos* | *-*-cegcc* | *-*-cygwin* | *-*-haiku* | *-*-mingw* | *-*-pw32* | *-*-darwin*)+*-*-beos* | *-*-cegcc* | *-*-cygwin* | *-*-haiku* | *-*-pw32* | *-*-darwin*)   # These system don't have libm, or don't need it   ;; *-ncr-sysv4.3*)@@ -4055,7 +3947,7 @@ aix*)   symcode='[[BCDT]]'   ;;-cygwin* | mingw* | windows* | pw32* | cegcc*)+cygwin* | mingw* | pw32* | cegcc*)   symcode='[[ABCDGISTW]]'   ;; hpux*)@@ -4070,7 +3962,7 @@   symcode='[[BCDEGQRST]]'   ;; solaris*)-  symcode='[[BCDRT]]'+  symcode='[[BDRT]]'   ;; sco3.2v5*)   symcode='[[DT]]'@@ -4134,7 +4026,7 @@ # Handle CRLF in mingw tool chain opt_cr= case $build_os in-mingw* | windows*)+mingw*)   opt_cr=`$ECHO 'x\{0,1\}' | tr x '\015'` # option cr in regexp   ;; esac@@ -4185,7 +4077,7 @@ #ifdef __cplusplus } #endif-int main(void){nm_test_var='a';nm_test_func();return(0);}+int main(){nm_test_var='a';nm_test_func();return(0);} _LT_EOF    if AC_TRY_EVAL(ac_compile); then@@ -4362,7 +4254,7 @@     beos* | irix5* | irix6* | nonstopux* | osf3* | osf4* | osf5*)       # PIC is the default for these OSes.       ;;-    mingw* | windows* | cygwin* | os2* | pw32* | cegcc*)+    mingw* | cygwin* | os2* | pw32* | cegcc*)       # This hack is so that the source file can tell whether it is being       # built for inclusion in a dll (and should export symbols for example).       # Although the cygwin gcc ignores -fPIC, still need this for old-style@@ -4438,7 +4330,7 @@ 	  ;; 	esac 	;;-      mingw* | windows* | cygwin* | os2* | pw32* | cegcc*)+      mingw* | cygwin* | os2* | pw32* | cegcc*) 	# This hack is so that the source file can tell whether it is being 	# built for inclusion in a dll (and should export symbols for example). 	m4_if([$1], [GCJ], [],@@ -4566,8 +4458,6 @@ 	;;       netbsd* | netbsdelf*-gnu) 	;;-      *-mlibc)-	;;       *qnx* | *nto*)         # QNX uses GNU C++, but need to define -shared option too, otherwise         # it will coredump.@@ -4596,8 +4486,6 @@ 	;;       psos*) 	;;-      serenity*)-        ;;       solaris*) 	case $cc_basename in 	  CC* | sunCC*)@@ -4690,7 +4578,7 @@       # PIC is the default for these OSes.       ;; -    mingw* | windows* | cygwin* | pw32* | os2* | cegcc*)+    mingw* | cygwin* | pw32* | os2* | cegcc*)       # This hack is so that the source file can tell whether it is being       # built for inclusion in a dll (and should export symbols for example).       # Although the cygwin gcc ignores -fPIC, still need this for old-style@@ -4794,7 +4682,7 @@       esac       ;; -    mingw* | windows* | cygwin* | pw32* | os2* | cegcc*)+    mingw* | cygwin* | pw32* | os2* | cegcc*)       # This hack is so that the source file can tell whether it is being       # built for inclusion in a dll (and should export symbols for example).       m4_if([$1], [GCJ], [],@@ -4836,8 +4724,8 @@ 	_LT_TAGVAR(lt_prog_compiler_pic, $1)='-KPIC' 	_LT_TAGVAR(lt_prog_compiler_static, $1)='-static'         ;;-      *flang* | ftn | f18* | f95*)-        # Flang compiler.+      # flang / f18. f95 an alias for gfortran or flang on Debian+      flang* | f18* | f95*) 	_LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,' 	_LT_TAGVAR(lt_prog_compiler_pic, $1)='-fPIC' 	_LT_TAGVAR(lt_prog_compiler_static, $1)='-static'@@ -4924,12 +4812,6 @@       _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic'       ;; -    *-mlibc)-      _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'-      _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fPIC'-      _LT_TAGVAR(lt_prog_compiler_static, $1)='-static'-      ;;-     *nto* | *qnx*)       # QNX uses GNU C++, but need to define -shared option too, otherwise       # it will coredump.@@ -4946,9 +4828,6 @@       _LT_TAGVAR(lt_prog_compiler_static, $1)='-non_shared'       ;; -    serenity*)-      ;;-     solaris*)       _LT_TAGVAR(lt_prog_compiler_pic, $1)='-KPIC'       _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic'@@ -5084,7 +4963,7 @@   pw32*)     _LT_TAGVAR(export_symbols_cmds, $1)=$ltdll_cmds     ;;-  cygwin* | mingw* | windows* | cegcc*)+  cygwin* | mingw* | cegcc*)     case $cc_basename in     cl* | icl*)       _LT_TAGVAR(exclude_expsyms, $1)='_NULL_IMPORT_DESCRIPTOR|_IMPORT_DESCRIPTOR_.*'@@ -5095,6 +4974,9 @@       ;;     esac     ;;+  linux* | k*bsd*-gnu | gnu*)+    _LT_TAGVAR(link_all_deplibs, $1)=no+    ;;   *)     _LT_TAGVAR(export_symbols_cmds, $1)='$NM $libobjs $convenience | $global_symbol_pipe | $SED '\''s/.* //'\'' | sort | uniq > $export_symbols'     ;;@@ -5142,7 +5024,7 @@   extract_expsyms_cmds=    case $host_os in-  cygwin* | mingw* | windows* | pw32* | cegcc*)+  cygwin* | mingw* | pw32* | cegcc*)     # FIXME: the MSVC++ and ICC port hasn't been tested in a loooong time     # When not using gcc, we currently assume that we are using     # Microsoft Visual C++ or Intel C++ Compiler.@@ -5154,6 +5036,12 @@     # we just hope/assume this is gcc and not c89 (= MSVC++ or ICC)     with_gnu_ld=yes     ;;+  openbsd* | bitrig*)+    with_gnu_ld=no+    ;;+  linux* | k*bsd*-gnu | gnu*)+    _LT_TAGVAR(link_all_deplibs, $1)=no+    ;;   esac    _LT_TAGVAR(ld_shlibs, $1)=yes@@ -5254,7 +5142,7 @@       fi       ;; -    cygwin* | mingw* | windows* | pw32* | cegcc*)+    cygwin* | mingw* | pw32* | cegcc*)       # _LT_TAGVAR(hardcode_libdir_flag_spec, $1) is actually meaningless,       # as there is no search path for DLLs.       _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-L$libdir'@@ -5264,7 +5152,6 @@       _LT_TAGVAR(enable_shared_with_static_runtimes, $1)=yes       _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'       _LT_TAGVAR(exclude_expsyms, $1)=['[_]+GLOBAL_OFFSET_TABLE_|[_]+GLOBAL__[FID]_.*|[_]+head_[A-Za-z0-9_]+_dll|[A-Za-z0-9_]+_dll_iname']-      _LT_TAGVAR(file_list_spec, $1)='@'        if $LD --help 2>&1 | $GREP 'auto-import' > /dev/null; then         _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'@@ -5284,7 +5171,7 @@      haiku*)       _LT_TAGVAR(archive_cmds, $1)='$CC -shared $libobjs $deplibs $compiler_flags $wl-soname $wl$soname -o $lib'-      _LT_TAGVAR(link_all_deplibs, $1)=no+      _LT_TAGVAR(link_all_deplibs, $1)=yes       ;;      os2*)@@ -5311,7 +5198,7 @@ 	cat $export_symbols | $prefix_cmds >> $output_objdir/$libname.def~ 	$CC -Zdll -Zcrtdll -o $output_objdir/$soname $libobjs $deplibs $compiler_flags $output_objdir/$libname.def~ 	emximp -o $lib $output_objdir/$libname.def'-      _LT_TAGVAR(old_archive_from_new_cmds, $1)='emximp -o $output_objdir/${libname}_dll.a $output_objdir/$libname.def'+      _LT_TAGVAR(old_archive_From_new_cmds, $1)='emximp -o $output_objdir/${libname}_dll.a $output_objdir/$libname.def'       _LT_TAGVAR(enable_shared_with_static_runtimes, $1)=yes       _LT_TAGVAR(file_list_spec, $1)='@'       ;;@@ -5411,11 +5298,6 @@       fi       ;; -    *-mlibc)-	_LT_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag $libobjs $deplibs $compiler_flags $wl-soname $wl$soname -o $lib'-	_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'-      ;;-     netbsd* | netbsdelf*-gnu)       if echo __ELF__ | $CC -E - | $GREP __ELF__ >/dev/null; then 	_LT_TAGVAR(archive_cmds, $1)='$LD -Bshareable $libobjs $deplibs $linker_flags -o $lib'@@ -5718,7 +5600,7 @@       _LT_TAGVAR(export_dynamic_flag_spec, $1)=-rdynamic       ;; -    cygwin* | mingw* | windows* | pw32* | cegcc*)+    cygwin* | mingw* | pw32* | cegcc*)       # When not using gcc, we currently assume that we are using       # Microsoft Visual C++ or Intel C++ Compiler.       # hardcode_libdir_flag_spec is actually meaningless, as there is@@ -5735,14 +5617,14 @@ 	# Tell ltmain to make .dll files, not .so files. 	shrext_cmds=.dll 	# FIXME: Setting linknames here is a bad hack.-	_LT_TAGVAR(archive_cmds, $1)='$CC -Fe$output_objdir/$soname $libobjs $compiler_flags $deplibs -Wl,-DLL,-IMPLIB:"$tool_output_objdir$libname.dll.lib"~linknames='+	_LT_TAGVAR(archive_cmds, $1)='$CC -o $output_objdir/$soname $libobjs $compiler_flags $deplibs -Wl,-DLL,-IMPLIB:"$tool_output_objdir$libname.dll.lib"~linknames=' 	_LT_TAGVAR(archive_expsym_cmds, $1)='if _LT_DLL_DEF_P([$export_symbols]); then             cp "$export_symbols" "$output_objdir/$soname.def";             echo "$tool_output_objdir$soname.def" > "$output_objdir/$soname.exp";           else             $SED -e '\''s/^/-link -EXPORT:/'\'' < $export_symbols > $output_objdir/$soname.exp;           fi~-          $CC -Fe$tool_output_objdir$soname $libobjs $compiler_flags $deplibs "@$tool_output_objdir$soname.exp" -Wl,-DLL,-IMPLIB:"$tool_output_objdir$libname.dll.lib"~+          $CC -o $tool_output_objdir$soname $libobjs $compiler_flags $deplibs "@$tool_output_objdir$soname.exp" -Wl,-DLL,-IMPLIB:"$tool_output_objdir$libname.dll.lib"~           linknames=' 	# The linker will not automatically build a static lib if we build a DLL. 	# _LT_TAGVAR(old_archive_from_new_cmds, $1)='true'@@ -5937,6 +5819,7 @@ 	if test yes = "$lt_cv_irix_exported_symbol"; then           _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' 	fi+	_LT_TAGVAR(link_all_deplibs, $1)=no       else 	_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' 	_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'@@ -5959,9 +5842,6 @@       esac       ;; -    *-mlibc)-      ;;-     netbsd* | netbsdelf*-gnu)       if echo __ELF__ | $CC -E - | $GREP __ELF__ >/dev/null; then 	_LT_TAGVAR(archive_cmds, $1)='$LD -Bshareable -o $lib $libobjs $deplibs $linker_flags'  # a.out@@ -5984,7 +5864,7 @@     *nto* | *qnx*)       ;; -    openbsd*)+    openbsd* | bitrig*)       if test -f /usr/libexec/ld.so; then 	_LT_TAGVAR(hardcode_direct, $1)=yes 	_LT_TAGVAR(hardcode_shlibpath_var, $1)=no@@ -6027,7 +5907,7 @@ 	cat $export_symbols | $prefix_cmds >> $output_objdir/$libname.def~ 	$CC -Zdll -Zcrtdll -o $output_objdir/$soname $libobjs $deplibs $compiler_flags $output_objdir/$libname.def~ 	emximp -o $lib $output_objdir/$libname.def'-      _LT_TAGVAR(old_archive_from_new_cmds, $1)='emximp -o $output_objdir/${libname}_dll.a $output_objdir/$libname.def'+      _LT_TAGVAR(old_archive_From_new_cmds, $1)='emximp -o $output_objdir/${libname}_dll.a $output_objdir/$libname.def'       _LT_TAGVAR(enable_shared_with_static_runtimes, $1)=yes       _LT_TAGVAR(file_list_spec, $1)='@'       ;;@@ -6063,9 +5943,6 @@       _LT_TAGVAR(hardcode_libdir_separator, $1)=:       ;; -    serenity*)-      ;;-     solaris*)       _LT_TAGVAR(no_undefined_flag, $1)=' -z defs'       if test yes = "$GCC"; then@@ -6324,7 +6201,7 @@ _LT_TAGDECL([], [hardcode_direct_absolute], [0],     [Set to "yes" if using DIR/libNAME$shared_ext during linking hardcodes     DIR into the resulting binary and the resulting library dependency is-    "absolute", i.e. impossible to change by setting $shlibpath_var if the+    "absolute", i.e impossible to change by setting $shlibpath_var if the     library is relocated]) _LT_TAGDECL([], [hardcode_minus_L], [0],     [Set to "yes" if using the -LDIR flag during linking hardcodes DIR@@ -6382,7 +6259,7 @@ lt_simple_compile_test_code="int some_variable = 0;"  # Code to be used in simple link tests-lt_simple_link_test_code='int main(void){return(0);}'+lt_simple_link_test_code='int main(){return(0);}'  _LT_TAG_COMPILER # Save the default compiler, since it gets overwritten when the other@@ -6571,7 +6448,8 @@         wlarc='$wl'          # ancient GNU ld didn't support --whole-archive et. al.-        if $LD --help 2>&1 | $GREP 'no-whole-archive' > /dev/null; then+        if eval "`$CC -print-prog-name=ld` --help 2>&1" |+	  $GREP 'no-whole-archive' > /dev/null; then           _LT_TAGVAR(whole_archive_flag_spec, $1)=$wlarc'--whole-archive$convenience '$wlarc'--no-whole-archive'         else           _LT_TAGVAR(whole_archive_flag_spec, $1)=@@ -6591,7 +6469,7 @@       # Commands to make compiler produce verbose output that lists       # what "hidden" libraries, object files and flags are used when       # linking a shared library.-      output_verbose_link_cmd='$CC -shared $CFLAGS -v conftest.$objext 2>&1 | $GREP -v "^Configured with:" | $GREP " [[-]]L"'+      output_verbose_link_cmd='$CC -shared $CFLAGS -v conftest.$objext 2>&1 | $GREP -v "^Configured with:" | $GREP " \-L"'      else       GXX=no@@ -6800,7 +6678,7 @@         esac         ;; -      cygwin* | mingw* | windows* | pw32* | cegcc*)+      cygwin* | mingw* | pw32* | cegcc*) 	case $GXX,$cc_basename in 	,cl* | no,cl* | ,icl* | no,icl*) 	  # Native MSVC or ICC@@ -6853,7 +6731,6 @@ 	  _LT_TAGVAR(allow_undefined_flag, $1)=unsupported 	  _LT_TAGVAR(always_export_symbols, $1)=no 	  _LT_TAGVAR(enable_shared_with_static_runtimes, $1)=yes-	  _LT_TAGVAR(file_list_spec, $1)='@'  	  if $LD --help 2>&1 | $GREP 'auto-import' > /dev/null; then 	    _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'@@ -6900,7 +6777,7 @@ 	  cat $export_symbols | $prefix_cmds >> $output_objdir/$libname.def~ 	  $CC -Zdll -Zcrtdll -o $output_objdir/$soname $libobjs $deplibs $compiler_flags $output_objdir/$libname.def~ 	  emximp -o $lib $output_objdir/$libname.def'-	_LT_TAGVAR(old_archive_from_new_cmds, $1)='emximp -o $output_objdir/${libname}_dll.a $output_objdir/$libname.def'+	_LT_TAGVAR(old_archive_From_new_cmds, $1)='emximp -o $output_objdir/${libname}_dll.a $output_objdir/$libname.def' 	_LT_TAGVAR(enable_shared_with_static_runtimes, $1)=yes 	_LT_TAGVAR(file_list_spec, $1)='@' 	;;@@ -6941,7 +6818,7 @@        haiku*)         _LT_TAGVAR(archive_cmds, $1)='$CC -shared $libobjs $deplibs $compiler_flags $wl-soname $wl$soname -o $lib'-        _LT_TAGVAR(link_all_deplibs, $1)=no+        _LT_TAGVAR(link_all_deplibs, $1)=yes         ;;        hpux9*)@@ -6968,7 +6845,7 @@             # explicitly linking system object files so we need to strip them             # from the output so that they don't get included in the library             # dependencies.-            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"'+            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"'             ;;           *)             if test yes = "$GXX"; then@@ -7033,7 +6910,7 @@ 	    # explicitly linking system object files so we need to strip them 	    # from the output so that they don't get included in the library 	    # dependencies.-	    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"'+	    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"' 	    ;;           *) 	    if test yes = "$GXX"; then@@ -7265,10 +7142,6 @@ 	esac 	;; -      *-mlibc)-        _LT_TAGVAR(ld_shlibs, $1)=yes-	;;-       netbsd*)         if echo __ELF__ | $CC -E - | $GREP __ELF__ >/dev/null; then 	  _LT_TAGVAR(archive_cmds, $1)='$LD -Bshareable  -o $lib $predep_objects $libobjs $deplibs $postdep_objects $linker_flags'@@ -7285,7 +7158,7 @@         _LT_TAGVAR(ld_shlibs, $1)=yes 	;; -      openbsd*)+      openbsd* | bitrig*) 	if test -f /usr/libexec/ld.so; then 	  _LT_TAGVAR(hardcode_direct, $1)=yes 	  _LT_TAGVAR(hardcode_shlibpath_var, $1)=no@@ -7376,7 +7249,7 @@ 	      # Commands to make compiler produce verbose output that lists 	      # what "hidden" libraries, object files and flags are used when 	      # linking a shared library.-	      output_verbose_link_cmd='$CC -shared $CFLAGS -v conftest.$objext 2>&1 | $GREP -v "^Configured with:" | $GREP " [[-]]L"'+	      output_verbose_link_cmd='$CC -shared $CFLAGS -v conftest.$objext 2>&1 | $GREP -v "^Configured with:" | $GREP " \-L"'  	    else 	      # FIXME: insert proper C++ library support@@ -7391,9 +7264,6 @@         _LT_TAGVAR(ld_shlibs, $1)=no         ;; -      serenity*)-        ;;-       sunos4*)         case $cc_basename in           CC*)@@ -7463,7 +7333,7 @@ 	        # Commands to make compiler produce verbose output that lists 	        # what "hidden" libraries, object files and flags are used when 	        # linking a shared library.-	        output_verbose_link_cmd='$CC -shared $CFLAGS -v conftest.$objext 2>&1 | $GREP -v "^Configured with:" | $GREP " [[-]]L"'+	        output_verbose_link_cmd='$CC -shared $CFLAGS -v conftest.$objext 2>&1 | $GREP -v "^Configured with:" | $GREP " \-L"' 	      else 	        # g++ 2.7 appears to require '-G' NOT '-shared' on this 	        # platform.@@ -7474,7 +7344,7 @@ 	        # Commands to make compiler produce verbose output that lists 	        # what "hidden" libraries, object files and flags are used when 	        # linking a shared library.-	        output_verbose_link_cmd='$CC -G $CFLAGS -v conftest.$objext 2>&1 | $GREP -v "^Configured with:" | $GREP " [[-]]L"'+	        output_verbose_link_cmd='$CC -G $CFLAGS -v conftest.$objext 2>&1 | $GREP -v "^Configured with:" | $GREP " \-L"' 	      fi  	      _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='$wl-R $wl$libdir'@@ -7712,11 +7582,10 @@     case $prev$p in      -L* | -R* | -l*)-       # Some compilers place space between "-{L,R,l}" and the path.+       # Some compilers place space between "-{L,R}" and the path.        # Remove the space.-       if test x-L = x"$p" ||-          test x-R = x"$p" ||-          test x-l = x"$p"; then+       if test x-L = "$p" ||+          test x-R = "$p"; then 	 prev=$p 	 continue        fi@@ -8374,7 +8243,7 @@ # ---------------- # Check for a file(cmd) program that can be used to detect file type and magic m4_defun([_LT_DECL_FILECMD],-[AC_CHECK_PROG([FILECMD], [file], [file], [:])+[AC_CHECK_TOOL([FILECMD], [file], [:]) _LT_DECL([], [FILECMD], [1], [A file(cmd) program that detects file types]) ])# _LD_DECL_FILECMD @@ -8390,6 +8259,73 @@ _LT_DECL([], [Xsed], ["\$SED -e 1s/^X//"],     [Sed that helps us avoid accidentally triggering echo(1) options like -n]) ])# _LT_DECL_SED++m4_ifndef([AC_PROG_SED], [+############################################################+# NOTE: This macro has been submitted for inclusion into   #+#  GNU Autoconf as AC_PROG_SED.  When it is available in   #+#  a released version of Autoconf we should remove this    #+#  macro and use it instead.                               #+############################################################++m4_defun([AC_PROG_SED],+[AC_MSG_CHECKING([for a sed that does not truncate output])+AC_CACHE_VAL(lt_cv_path_SED,+[# Loop through the user's path and test for sed and gsed.+# Then use that list of sed's as ones to test for truncation.+as_save_IFS=$IFS; IFS=$PATH_SEPARATOR+for as_dir in $PATH+do+  IFS=$as_save_IFS+  test -z "$as_dir" && as_dir=.+  for lt_ac_prog in sed gsed; do+    for ac_exec_ext in '' $ac_executable_extensions; do+      if $as_executable_p "$as_dir/$lt_ac_prog$ac_exec_ext"; then+        lt_ac_sed_list="$lt_ac_sed_list $as_dir/$lt_ac_prog$ac_exec_ext"+      fi+    done+  done+done+IFS=$as_save_IFS+lt_ac_max=0+lt_ac_count=0+# Add /usr/xpg4/bin/sed as it is typically found on Solaris+# along with /bin/sed that truncates output.+for lt_ac_sed in $lt_ac_sed_list /usr/xpg4/bin/sed; do+  test ! -f "$lt_ac_sed" && continue+  cat /dev/null > conftest.in+  lt_ac_count=0+  echo $ECHO_N "0123456789$ECHO_C" >conftest.in+  # Check for GNU sed and select it if it is found.+  if "$lt_ac_sed" --version 2>&1 < /dev/null | grep 'GNU' > /dev/null; then+    lt_cv_path_SED=$lt_ac_sed+    break+  fi+  while true; do+    cat conftest.in conftest.in >conftest.tmp+    mv conftest.tmp conftest.in+    cp conftest.in conftest.nl+    echo >>conftest.nl+    $lt_ac_sed -e 's/a$//' < conftest.nl >conftest.out || break+    cmp -s conftest.out conftest.nl || break+    # 10000 chars as input seems more than enough+    test 10 -lt "$lt_ac_count" && break+    lt_ac_count=`expr $lt_ac_count + 1`+    if test "$lt_ac_count" -gt "$lt_ac_max"; then+      lt_ac_max=$lt_ac_count+      lt_cv_path_SED=$lt_ac_sed+    fi+  done+done+])+SED=$lt_cv_path_SED+AC_SUBST([SED])+AC_MSG_RESULT([$SED])+])#AC_PROG_SED+])#m4_ifndef++# Old name:+AU_ALIAS([LT_AC_PROG_SED], [AC_PROG_SED]) dnl aclocal-1.4 backwards compatibility: dnl AC_DEFUN([LT_AC_PROG_SED], []) @@ -8436,7 +8372,7 @@ [case $host in   *-*-mingw* )     case $build in-      *-*-mingw* | *-*-windows* ) # actually msys+      *-*-mingw* ) # actually msys         lt_cv_to_host_file_cmd=func_convert_file_msys_to_w32         ;;       *-*-cygwin* )@@ -8449,7 +8385,7 @@     ;;   *-*-cygwin* )     case $build in-      *-*-mingw* | *-*-windows* ) # actually msys+      *-*-mingw* ) # actually msys         lt_cv_to_host_file_cmd=func_convert_file_msys_to_cygwin         ;;       *-*-cygwin* )@@ -8475,9 +8411,9 @@ [#assume ordinary cross tools, or native build. lt_cv_to_tool_file_cmd=func_convert_file_noop case $host in-  *-*-mingw* | *-*-windows* )+  *-*-mingw* )     case $build in-      *-*-mingw* | *-*-windows* ) # actually msys+      *-*-mingw* ) # actually msys         lt_cv_to_tool_file_cmd=func_convert_file_msys_to_w32         ;;     esac
m4/ltoptions.m4 view
@@ -1,6 +1,6 @@ # Helper functions for option handling.                    -*- Autoconf -*- #-#   Copyright (C) 2004-2005, 2007-2009, 2011-2019, 2021-2024 Free+#   Copyright (C) 2004-2005, 2007-2009, 2011-2019, 2021-2022 Free #   Software Foundation, Inc. #   Written by Gary V. Vaughan, 2004 #@@ -8,7 +8,7 @@ # unlimited permission to copy and/or distribute it, with or without # modifications, as long as this notice is preserved. -# serial 10 ltoptions.m4+# serial 8 ltoptions.m4  # This is to help aclocal find these macros, as it can't see m4_define. AC_DEFUN([LTOPTIONS_VERSION], [m4_if([1])])@@ -128,7 +128,7 @@ [enable_win32_dll=yes  case $host in-*-*-cygwin* | *-*-mingw* | *-*-windows* | *-*-pw32* | *-*-cegcc*)+*-*-cygwin* | *-*-mingw* | *-*-pw32* | *-*-cegcc*)   AC_CHECK_TOOL(AS, as, false)   AC_CHECK_TOOL(DLLTOOL, dlltool, false)   AC_CHECK_TOOL(OBJDUMP, objdump, false)@@ -323,39 +323,29 @@  # _LT_WITH_AIX_SONAME([DEFAULT]) # -----------------------------------# implement the --enable-aix-soname configure option, and support the-# `aix-soname=aix' and `aix-soname=both' and `aix-soname=svr4' LT_INIT options.-# DEFAULT is either `aix', `both', or `svr4'.  If omitted, it defaults to `aix'.+# implement the --with-aix-soname flag, and support the `aix-soname=aix'+# and `aix-soname=both' and `aix-soname=svr4' LT_INIT options. DEFAULT+# is either `aix', `both' or `svr4'.  If omitted, it defaults to `aix'. m4_define([_LT_WITH_AIX_SONAME], [m4_define([_LT_WITH_AIX_SONAME_DEFAULT], [m4_if($1, svr4, svr4, m4_if($1, both, both, aix))])dnl shared_archive_member_spec= case $host,$enable_shared in power*-*-aix[[5-9]]*,yes)   AC_MSG_CHECKING([which variant of shared library versioning to provide])-  AC_ARG_ENABLE([aix-soname],-    [AS_HELP_STRING([--enable-aix-soname=aix|svr4|both],+  AC_ARG_WITH([aix-soname],+    [AS_HELP_STRING([--with-aix-soname=aix|svr4|both],       [shared library versioning (aka "SONAME") variant to provide on AIX, @<:@default=]_LT_WITH_AIX_SONAME_DEFAULT[@:>@.])],-    [case $enableval in-     aix|svr4|both)-       ;;-     *)-       AC_MSG_ERROR([Unknown argument to --enable-aix-soname])-       ;;-     esac-     lt_cv_with_aix_soname=$enable_aix_soname],-    [_AC_ENABLE_IF([with], [aix-soname],-        [case $withval in-         aix|svr4|both)-           ;;-         *)-           AC_MSG_ERROR([Unknown argument to --with-aix-soname])-           ;;-         esac-         lt_cv_with_aix_soname=$with_aix_soname],-        [AC_CACHE_VAL([lt_cv_with_aix_soname],-           [lt_cv_with_aix_soname=]_LT_WITH_AIX_SONAME_DEFAULT)])-     enable_aix_soname=$lt_cv_with_aix_soname])-  with_aix_soname=$enable_aix_soname+    [case $withval in+    aix|svr4|both)+      ;;+    *)+      AC_MSG_ERROR([Unknown argument to --with-aix-soname])+      ;;+    esac+    lt_cv_with_aix_soname=$with_aix_soname],+    [AC_CACHE_VAL([lt_cv_with_aix_soname],+      [lt_cv_with_aix_soname=]_LT_WITH_AIX_SONAME_DEFAULT)+    with_aix_soname=$lt_cv_with_aix_soname])   AC_MSG_RESULT([$with_aix_soname])   if test aix != "$with_aix_soname"; then     # For the AIX way of multilib, we name the shared archive member@@ -386,50 +376,30 @@  # _LT_WITH_PIC([MODE]) # ---------------------# implement the --enable-pic flag, and support the 'pic-only' and 'no-pic'+# implement the --with-pic flag, and support the 'pic-only' and 'no-pic' # LT_INIT options. # MODE is either 'yes' or 'no'.  If omitted, it defaults to 'both'. m4_define([_LT_WITH_PIC],-[AC_ARG_ENABLE([pic],-    [AS_HELP_STRING([--enable-pic@<:@=PKGS@:>@],+[AC_ARG_WITH([pic],+    [AS_HELP_STRING([--with-pic@<:@=PKGS@:>@], 	[try to use only PIC/non-PIC objects @<:@default=use both@:>@])],     [lt_p=${PACKAGE-default}-     case $enableval in-     yes|no) pic_mode=$enableval ;;-     *)-       pic_mode=default-       # Look at the argument we got.  We use all the common list separators.-       lt_save_ifs=$IFS; IFS=$IFS$PATH_SEPARATOR,-       for lt_pkg in $enableval; do-	 IFS=$lt_save_ifs-	 if test "X$lt_pkg" = "X$lt_p"; then-	   pic_mode=yes-	 fi-       done-       IFS=$lt_save_ifs-       ;;-     esac],-    [dnl Continue to support --with-pic and --without-pic, for backward-     dnl compatibility.-     _AC_ENABLE_IF([with], [pic],-	[lt_p=${PACKAGE-default}-	 case $withval in-	 yes|no) pic_mode=$withval ;;-	 *)-	   pic_mode=default-	   # Look at the argument we got.  We use all the common list separators.-	   lt_save_ifs=$IFS; IFS=$IFS$PATH_SEPARATOR,-	   for lt_pkg in $withval; do-	     IFS=$lt_save_ifs-	     if test "X$lt_pkg" = "X$lt_p"; then-	       pic_mode=yes-	     fi-	   done-	   IFS=$lt_save_ifs-	   ;;-	 esac],-	[pic_mode=m4_default([$1], [default])])]-    )+    case $withval in+    yes|no) pic_mode=$withval ;;+    *)+      pic_mode=default+      # Look at the argument we got.  We use all the common list separators.+      lt_save_ifs=$IFS; IFS=$IFS$PATH_SEPARATOR,+      for lt_pkg in $withval; do+	IFS=$lt_save_ifs+	if test "X$lt_pkg" = "X$lt_p"; then+	  pic_mode=yes+	fi+      done+      IFS=$lt_save_ifs+      ;;+    esac],+    [pic_mode=m4_default([$1], [default])])  _LT_DECL([], [pic_mode], [0], [What type of objects to build])dnl ])# _LT_WITH_PIC
m4/ltsugar.m4 view
@@ -1,6 +1,6 @@ # ltsugar.m4 -- libtool m4 base layer.                         -*-Autoconf-*- #-# Copyright (C) 2004-2005, 2007-2008, 2011-2019, 2021-2024 Free Software+# Copyright (C) 2004-2005, 2007-2008, 2011-2019, 2021-2022 Free Software # Foundation, Inc. # Written by Gary V. Vaughan, 2004 #
m4/ltversion.m4 view
@@ -1,6 +1,6 @@ # ltversion.m4 -- version numbers			-*- Autoconf -*- #-#   Copyright (C) 2004, 2011-2019, 2021-2024 Free Software Foundation,+#   Copyright (C) 2004, 2011-2019, 2021-2022 Free Software Foundation, #   Inc. #   Written by Scott James Remnant, 2004 #@@ -10,15 +10,15 @@  # @configure_input@ -# serial 4441 ltversion.m4+# serial 4245 ltversion.m4 # This file is part of GNU Libtool -m4_define([LT_PACKAGE_VERSION], [2.5.4])-m4_define([LT_PACKAGE_REVISION], [2.5.4])+m4_define([LT_PACKAGE_VERSION], [2.4.7])+m4_define([LT_PACKAGE_REVISION], [2.4.7])  AC_DEFUN([LTVERSION_VERSION],-[macro_version='2.5.4'-macro_revision='2.5.4'+[macro_version='2.4.7'+macro_revision='2.4.7' _LT_DECL(, macro_version, 0, [Which release of libtool.m4 was used?]) _LT_DECL(, macro_revision, 0) ])
m4/lt~obsolete.m4 view
@@ -1,6 +1,6 @@ # lt~obsolete.m4 -- aclocal satisfying obsolete definitions.    -*-Autoconf-*- #-#   Copyright (C) 2004-2005, 2007, 2009, 2011-2019, 2021-2024 Free+#   Copyright (C) 2004-2005, 2007, 2009, 2011-2019, 2021-2022 Free #   Software Foundation, Inc. #   Written by Scott James Remnant, 2004. #
src/aarch64/ffi.c view
@@ -28,6 +28,7 @@ #include <ffi_common.h> #include "internal.h" #ifdef _WIN32+#define WIN32_LEAN_AND_MEAN #include <windows.h> /* FlushInstructionCache */ #endif #include <tramp.h>@@ -387,7 +388,7 @@   void *x0;  #define BTI_J "hint #36"-  asm volatile (+  __asm__ volatile ( 	"adr	%0, 0f\n" "	add	%0, %0, %1\n" "	br	%0\n"@@ -467,18 +468,18 @@ 	*(float *)dest = *(float *)reg;       break;     case AARCH64_RET_S2:-      asm ("ldp q16, q17, [%1]\n\t"+      __asm__ ("ldp q16, q17, [%1]\n\t" 	   "st2 { v16.s, v17.s }[0], [%0]" 	   : : "r"(dest), "r"(reg) : "memory", "v16", "v17");       break;     case AARCH64_RET_S3:-      asm ("ldp q16, q17, [%1]\n\t"+      __asm__ ("ldp q16, q17, [%1]\n\t" 	   "ldr q18, [%1, #32]\n\t" 	   "st3 { v16.s, v17.s, v18.s }[0], [%0]" 	   : : "r"(dest), "r"(reg) : "memory", "v16", "v17", "v18");       break;     case AARCH64_RET_S4:-      asm ("ldp q16, q17, [%1]\n\t"+      __asm__ ("ldp q16, q17, [%1]\n\t" 	   "ldp q18, q19, [%1, #32]\n\t" 	   "st4 { v16.s, v17.s, v18.s, v19.s }[0], [%0]" 	   : : "r"(dest), "r"(reg) : "memory", "v16", "v17", "v18", "v19");@@ -495,18 +496,18 @@ 	*(double *)dest = *(double *)reg;       break;     case AARCH64_RET_D2:-      asm ("ldp q16, q17, [%1]\n\t"+      __asm__ ("ldp q16, q17, [%1]\n\t" 	   "st2 { v16.d, v17.d }[0], [%0]" 	   : : "r"(dest), "r"(reg) : "memory", "v16", "v17");       break;     case AARCH64_RET_D3:-      asm ("ldp q16, q17, [%1]\n\t"+      __asm__ ("ldp q16, q17, [%1]\n\t" 	   "ldr q18, [%1, #32]\n\t" 	   "st3 { v16.d, v17.d, v18.d }[0], [%0]" 	   : : "r"(dest), "r"(reg) : "memory", "v16", "v17", "v18");       break;     case AARCH64_RET_D4:-      asm ("ldp q16, q17, [%1]\n\t"+      __asm__ ("ldp q16, q17, [%1]\n\t" 	   "ldp q18, q19, [%1, #32]\n\t" 	   "st4 { v16.d, v17.d, v18.d, v19.d }[0], [%0]" 	   : : "r"(dest), "r"(reg) : "memory", "v16", "v17", "v18", "v19");@@ -537,6 +538,32 @@   return allocate_to_stack (state, stack, size, size); } +static void *+allocate_int128_to_reg_or_stack (struct call_context *context,+			         struct arg_state *state, void *stack)+{+  unsigned ngrn = state->ngrn;+  void *ret;++  /* The normal AArch64 ABI requires even Xreg; Darwin does not. */+#ifndef __APPLE__+  ngrn += ngrn & 1;+#endif++  if (ngrn < N_X_ARG_REG)+    {+      ret = &context->x[ngrn];+      ngrn += 2;+    }+  else+    {+      ret = allocate_to_stack (state, stack, 16, 16);+      ngrn = N_X_ARG_REG;+    }+  state->ngrn = ngrn;+  return ret;+}+ ffi_status FFI_HIDDEN ffi_prep_cif_machdep (ffi_cif *cif) {@@ -576,6 +603,11 @@       flags = (sizeof(void *) == 4 ? AARCH64_RET_UINT32 : AARCH64_RET_INT64);       break; +    case FFI_TYPE_UINT128:+    case FFI_TYPE_SINT128:+      flags = AARCH64_RET_INT128;+      break;+     case FFI_TYPE_FLOAT:     case FFI_TYPE_DOUBLE:     case FFI_TYPE_LONGDOUBLE:@@ -741,6 +773,12 @@ 	  } 	  break; +	case FFI_TYPE_UINT128:+	case FFI_TYPE_SINT128:+	  dest = allocate_int128_to_reg_or_stack (context, &state, stack);+	  memcpy (dest, a, 16);+	  break;+ 	case FFI_TYPE_FLOAT: 	case FFI_TYPE_DOUBLE: 	case FFI_TYPE_LONGDOUBLE:@@ -1021,6 +1059,11 @@ 	case FFI_TYPE_SINT64: 	case FFI_TYPE_POINTER: 	  avalue[i] = allocate_int_to_reg_or_stack (context, &state, stack, s);+	  break;++	case FFI_TYPE_UINT128:+	case FFI_TYPE_SINT128:+	  avalue[i] = allocate_int128_to_reg_or_stack (context, &state, stack); 	  break;  	case FFI_TYPE_FLOAT:
src/aarch64/ffitarget.h view
@@ -94,4 +94,6 @@ #define FFI_TARGET_HAS_COMPLEX_TYPE #endif +#define FFI_TARGET_HAS_INT128 1+ #endif
src/aarch64/internal.h view
@@ -91,10 +91,10 @@   #define SIGN_LR_LINUX_ONLY   #define BRANCH_TO_REG braaz   #define PAC_CFI_WINDOW_SAVE-  #define GNU_PROPERTY_AARCH64_POINTER_AUTH 0+  #define AARCH64_POINTER_AUTH 0   /* Linux PAC Support */   #elif defined(__ARM_FEATURE_PAC_DEFAULT)-    #define GNU_PROPERTY_AARCH64_POINTER_AUTH (1 << 1)+    #define AARCH64_POINTER_AUTH (1 << 1)     #define PAC_CFI_WINDOW_SAVE cfi_window_save     #define TMP_REG x9     #define BRANCH_TO_REG br@@ -141,6 +141,6 @@     #define SIGN_LR_LINUX_ONLY     #define BRANCH_TO_REG br     #define PAC_CFI_WINDOW_SAVE-    #define GNU_PROPERTY_AARCH64_POINTER_AUTH 0+    #define AARCH64_POINTER_AUTH 0   #endif /* HAVE_ARM64E_PTRAUTH */ #endif /* LIBFFI_ASM */
src/aarch64/sysv.S view
@@ -70,10 +70,16 @@  * The ELF Notes section needs to indicate if BTI is supported, as the first ELF loaded that doesn't  * declare this support disables it for memory region containing the loaded library.  */-# define GNU_PROPERTY_AARCH64_BTI (1 << 0)         /* Has Branch Target Identification */+# define AARCH64_BTI (1 << 0)         /* Has Branch Target Identification */ 	.text 	.align 4 +#if defined(__ARM_FEATURE_GCS_DEFAULT) && __ARM_FEATURE_GCS_DEFAULT == 1+#define AARCH64_GCS (1<<2)+#else+#define AARCH64_GCS 0 /* No GCS */+#endif+ /* ffi_call_SYSV    extern void ffi_call_SYSV (void *stack, void *frame, 			      void (*fn)(void), void *rvalue,@@ -681,19 +687,44 @@ #endif /* FFI_CLOSURES */ #endif /* __arm64__ */ +#define GNU_PROPERTY(value)						\+	.pushsection .note.gnu.property, "a";				\+	.balign 8;							\+	.long 4;							\+	.long 0x10;							\+	.long 0x5;							\+	.asciz "GNU";							\+	.long 0xc0000000; /* GNU_PROPERTY_AARCH64_FEATURE_1_AND */	\+	.long 4;							\+	.long value;							\+	.long 0;							\+	.popsection;++#ifdef __ARM_BUILDATTR64_FV+/* Add AArch64 feature bits build attributes.  */+# define FEATURE_1_AND_MARK(value)					\+    .aeabi_subsection aeabi_feature_and_bits, optional, ULEB128;	\+    .if ((value) & AARCH64_BTI);					\+    .aeabi_attribute Tag_Feature_BTI, 1;				\+    .else;								\+    .aeabi_attribute Tag_Feature_BTI, 0;				\+    .endif;								\+    .if ((value) & AARCH64_POINTER_AUTH);				\+    .aeabi_attribute Tag_Feature_PAC, 1;				\+    .else;								\+    .aeabi_attribute Tag_Feature_PAC, 0;				\+    .endif;								\+    .if ((value) & AARCH64_GCS);					\+    .aeabi_attribute Tag_Feature_GCS, 1;				\+    .else;								\+    .aeabi_attribute Tag_Feature_GCS, 0;				\+    .endif;+#else+/* Add a NT_GNU_PROPERTY_TYPE_0 note.  */+# define FEATURE_1_AND_MARK(value) GNU_PROPERTY (value)+#endif /* __ARM_BUILDATTR64_FV */+ #if defined __ELF__ && defined __linux__ 	.section .note.GNU-stack,"",%progbits--	.pushsection .note.gnu.property, "a";-	.balign 8;-	.long 4;-	.long 0x10;-	.long 0x5;-	.asciz "GNU";-	.long 0xc0000000; /* GNU_PROPERTY_AARCH64_FEATURE_1_AND */-	.long 4;-	.long GNU_PROPERTY_AARCH64_BTI | GNU_PROPERTY_AARCH64_POINTER_AUTH;-	.long 0;-	.popsection;+FEATURE_1_AND_MARK(AARCH64_BTI | AARCH64_POINTER_AUTH | AARCH64_GCS) #endif-
src/alpha/ffi.c view
@@ -52,14 +52,14 @@ static inline UINT64 lds(void *ptr) {   UINT64 ret;-  asm("lds %0,%1" : "=f"(ret) : "m"(*(UINT32 *)ptr));+  __asm__("lds %0,%1" : "=f"(ret) : "m"(*(UINT32 *)ptr));   return ret; }  /* And the reverse.  */ static inline void sts(void *ptr, UINT64 val) {-  asm("sts %1,%0" : "=m"(*(UINT32 *)ptr) : "f"(val));+  __asm__("sts %1,%0" : "=m"(*(UINT32 *)ptr) : "f"(val)); }  ffi_status FFI_HIDDEN@@ -95,6 +95,8 @@ 	  bytes += 8; 	  break; +	case FFI_TYPE_SINT128:+	case FFI_TYPE_UINT128: 	case FFI_TYPE_VOID: 	case FFI_TYPE_STRUCT: 	  /* Passed by value in N slots.  */@@ -149,6 +151,8 @@     case FFI_TYPE_POINTER:       flags = ALPHA_FLAGS(ALPHA_ST_INT, ALPHA_LD_INT64);       break;+    case FFI_TYPE_SINT128:+    case FFI_TYPE_UINT128:     case FFI_TYPE_LONGDOUBLE:     case FFI_TYPE_STRUCT:       /* Passed in memory, with a hidden pointer.  */@@ -281,6 +285,8 @@ 	  argp[argn++] = (unsigned long)valp; 	  break; +	case FFI_TYPE_SINT128:+	case FFI_TYPE_UINT128: 	case FFI_TYPE_VOID: 	case FFI_TYPE_STRUCT: 	  size = ty->size;@@ -351,7 +357,7 @@      instead, since both Compaq as and gas can handle it.       0x86 is PAL_imb in Tru64 UNIX <alpha/pal.h>.  */-  asm volatile ("call_pal 0x86" : : : "memory");+  __asm__ volatile ("call_pal 0x86" : : : "memory");    return FFI_OK; }@@ -418,6 +424,8 @@ 	  argn += 1; 	  break; +	case FFI_TYPE_SINT128:+	case FFI_TYPE_UINT128: 	case FFI_TYPE_VOID: 	case FFI_TYPE_STRUCT: 	  size = ty->size;
src/alpha/ffitarget.h view
@@ -46,6 +46,7 @@  #define FFI_TARGET_SPECIFIC_STACK_SPACE_ALLOCATION #define FFI_TARGET_HAS_COMPLEX_TYPE+#define FFI_TARGET_HAS_INT128  /* ---- Definitions for closures ----------------------------------------- */ 
src/arm/sysv.S view
@@ -120,7 +120,7 @@ #endif  -#ifndef __clang__+#ifdef __ELF__ 	/* We require interworking on LDM, which implies ARMv5T, 	   which implies the existance of BLX.  */  	.arch	armv5t
src/closures.c view
@@ -393,11 +393,9 @@  #define USE_LOCKS 1 #define USE_DL_PREFIX 1-#ifdef __GNUC__-#ifndef USE_BUILTIN_FFS-#define USE_BUILTIN_FFS 1-#endif-#endif+/* dlmalloc's bit-index macros use __builtin_clz/__builtin_ctz directly on any+   GNU-compatible compiler, so USE_BUILTIN_FFS (and pulling in <strings.h> for+   ffs()) is no longer needed (libffi #754).  */  /* We need to use mmap, not sbrk.  */ #define HAVE_MORECORE 0
src/dlmalloc.c view
@@ -1,5172 +1,6443 @@ /*   This is a version (aka dlmalloc) of malloc/free/realloc written by   Doug Lea and released to the public domain, as explained at-  http://creativecommons.org/licenses/publicdomain.  Send questions,-  comments, complaints, performance data, etc to dl@cs.oswego.edu--* Version 2.8.3 Thu Sep 22 11:16:15 2005  Doug Lea  (dl at gee)--   Note: There may be an updated version of this malloc obtainable at-           ftp://gee.cs.oswego.edu/pub/misc/malloc.c-         Check before installing!--* Quickstart--  This library is all in one file to simplify the most common usage:-  ftp it, compile it (-O3), and link it into another program. All of-  the compile-time options default to reasonable values for use on-  most platforms.  You might later want to step through various-  compile-time and dynamic tuning options.--  For convenience, an include file for code using this malloc is at:-     ftp://gee.cs.oswego.edu/pub/misc/malloc-2.8.3.h-  You don't really need this .h file unless you call functions not-  defined in your system include files.  The .h file contains only the-  excerpts from this file needed for using this malloc on ANSI C/C++-  systems, so long as you haven't changed compile-time options about-  naming and tuning parameters.  If you do, then you can create your-  own malloc.h that does include all settings by cutting at the point-  indicated below. Note that you may already by default be using a C-  library containing a malloc that is based on some version of this-  malloc (for example in linux). You might still want to use the one-  in this file to customize settings or to avoid overheads associated-  with library versions.--* Vital statistics:--  Supported pointer/size_t representation:       4 or 8 bytes-       size_t MUST be an unsigned type of the same width as-       pointers. (If you are using an ancient system that declares-       size_t as a signed type, or need it to be a different width-       than pointers, you can use a previous release of this malloc-       (e.g. 2.7.2) supporting these.)--  Alignment:                                     8 bytes (default)-       This suffices for nearly all current machines and C compilers.-       However, you can define MALLOC_ALIGNMENT to be wider than this-       if necessary (up to 128bytes), at the expense of using more space.--  Minimum overhead per allocated chunk:   4 or  8 bytes (if 4byte sizes)-                                          8 or 16 bytes (if 8byte sizes)-       Each malloced chunk has a hidden word of overhead holding size-       and status information, and additional cross-check word-       if FOOTERS is defined.--  Minimum allocated size: 4-byte ptrs:  16 bytes    (including overhead)-                          8-byte ptrs:  32 bytes    (including overhead)--       Even a request for zero bytes (i.e., malloc(0)) returns a-       pointer to something of the minimum allocatable size.-       The maximum overhead wastage (i.e., number of extra bytes-       allocated than were requested in malloc) is less than or equal-       to the minimum size, except for requests >= mmap_threshold that-       are serviced via mmap(), where the worst case wastage is about-       32 bytes plus the remainder from a system page (the minimal-       mmap unit); typically 4096 or 8192 bytes.--  Security: static-safe; optionally more or less-       The "security" of malloc refers to the ability of malicious-       code to accentuate the effects of errors (for example, freeing-       space that is not currently malloc'ed or overwriting past the-       ends of chunks) in code that calls malloc.  This malloc-       guarantees not to modify any memory locations below the base of-       heap, i.e., static variables, even in the presence of usage-       errors.  The routines additionally detect most improper frees-       and reallocs.  All this holds as long as the static bookkeeping-       for malloc itself is not corrupted by some other means.  This-       is only one aspect of security -- these checks do not, and-       cannot, detect all possible programming errors.--       If FOOTERS is defined nonzero, then each allocated chunk-       carries an additional check word to verify that it was malloced-       from its space.  These check words are the same within each-       execution of a program using malloc, but differ across-       executions, so externally crafted fake chunks cannot be-       freed. This improves security by rejecting frees/reallocs that-       could corrupt heap memory, in addition to the checks preventing-       writes to statics that are always on.  This may further improve-       security at the expense of time and space overhead.  (Note that-       FOOTERS may also be worth using with MSPACES.)--       By default detected errors cause the program to abort (calling-       "abort()"). You can override this to instead proceed past-       errors by defining PROCEED_ON_ERROR.  In this case, a bad free-       has no effect, and a malloc that encounters a bad address-       caused by user overwrites will ignore the bad address by-       dropping pointers and indices to all known memory. This may-       be appropriate for programs that should continue if at all-       possible in the face of programming errors, although they may-       run out of memory because dropped memory is never reclaimed.--       If you don't like either of these options, you can define-       CORRUPTION_ERROR_ACTION and USAGE_ERROR_ACTION to do anything-       else. And if if you are sure that your program using malloc has-       no errors or vulnerabilities, you can define INSECURE to 1,-       which might (or might not) provide a small performance improvement.--  Thread-safety: NOT thread-safe unless USE_LOCKS defined-       When USE_LOCKS is defined, each public call to malloc, free,-       etc is surrounded with either a pthread mutex or a win32-       spinlock (depending on WIN32). This is not especially fast, and-       can be a major bottleneck.  It is designed only to provide-       minimal protection in concurrent environments, and to provide a-       basis for extensions.  If you are using malloc in a concurrent-       program, consider instead using ptmalloc, which is derived from-       a version of this malloc. (See http://www.malloc.de).--  System requirements: Any combination of MORECORE and/or MMAP/MUNMAP-       This malloc can use unix sbrk or any emulation (invoked using-       the CALL_MORECORE macro) and/or mmap/munmap or any emulation-       (invoked using CALL_MMAP/CALL_MUNMAP) to get and release system-       memory.  On most unix systems, it tends to work best if both-       MORECORE and MMAP are enabled.  On Win32, it uses emulations-       based on VirtualAlloc. It also uses common C library functions-       like memset.--  Compliance: I believe it is compliant with the Single Unix Specification-       (See http://www.unix.org). Also SVID/XPG, ANSI C, and probably-       others as well.--* Overview of algorithms--  This is not the fastest, most space-conserving, most portable, or-  most tunable malloc ever written. However it is among the fastest-  while also being among the most space-conserving, portable and-  tunable.  Consistent balance across these factors results in a good-  general-purpose allocator for malloc-intensive programs.--  In most ways, this malloc is a best-fit allocator. Generally, it-  chooses the best-fitting existing chunk for a request, with ties-  broken in approximately least-recently-used order. (This strategy-  normally maintains low fragmentation.) However, for requests less-  than 256bytes, it deviates from best-fit when there is not an-  exactly fitting available chunk by preferring to use space adjacent-  to that used for the previous small request, as well as by breaking-  ties in approximately most-recently-used order. (These enhance-  locality of series of small allocations.)  And for very large requests-  (>= 256Kb by default), it relies on system memory mapping-  facilities, if supported.  (This helps avoid carrying around and-  possibly fragmenting memory used only for large chunks.)--  All operations (except malloc_stats and mallinfo) have execution-  times that are bounded by a constant factor of the number of bits in-  a size_t, not counting any clearing in calloc or copying in realloc,-  or actions surrounding MORECORE and MMAP that have times-  proportional to the number of non-contiguous regions returned by-  system allocation routines, which is often just 1.--  The implementation is not very modular and seriously overuses-  macros. Perhaps someday all C compilers will do as good a job-  inlining modular code as can now be done by brute-force expansion,-  but now, enough of them seem not to.--  Some compilers issue a lot of warnings about code that is-  dead/unreachable only on some platforms, and also about intentional-  uses of negation on unsigned types. All known cases of each can be-  ignored.--  For a longer but out of date high-level description, see-     http://gee.cs.oswego.edu/dl/html/malloc.html--* MSPACES-  If MSPACES is defined, then in addition to malloc, free, etc.,-  this file also defines mspace_malloc, mspace_free, etc. These-  are versions of malloc routines that take an "mspace" argument-  obtained using create_mspace, to control all internal bookkeeping.-  If ONLY_MSPACES is defined, only these versions are compiled.-  So if you would like to use this allocator for only some allocations,-  and your system malloc for others, you can compile with-  ONLY_MSPACES and then do something like...-    static mspace mymspace = create_mspace(0,0); // for example-    #define mymalloc(bytes)  mspace_malloc(mymspace, bytes)--  (Note: If you only need one instance of an mspace, you can instead-  use "USE_DL_PREFIX" to relabel the global malloc.)--  You can similarly create thread-local allocators by storing-  mspaces as thread-locals. For example:-    static __thread mspace tlms = 0;-    void*  tlmalloc(size_t bytes) {-      if (tlms == 0) tlms = create_mspace(0, 0);-      return mspace_malloc(tlms, bytes);-    }-    void  tlfree(void* mem) { mspace_free(tlms, mem); }--  Unless FOOTERS is defined, each mspace is completely independent.-  You cannot allocate from one and free to another (although-  conformance is only weakly checked, so usage errors are not always-  caught). If FOOTERS is defined, then each chunk carries around a tag-  indicating its originating mspace, and frees are directed to their-  originating spaces.-- -------------------------  Compile-time options -----------------------------Be careful in setting #define values for numerical constants of type-size_t. On some systems, literal values are not automatically extended-to size_t precision unless they are explicitly casted.--WIN32                    default: defined if _WIN32 defined-  Defining WIN32 sets up defaults for MS environment and compilers.-  Otherwise defaults are for unix.--MALLOC_ALIGNMENT         default: (size_t)8-  Controls the minimum alignment for malloc'ed chunks.  It must be a-  power of two and at least 8, even on machines for which smaller-  alignments would suffice. It may be defined as larger than this-  though. Note however that code and data structures are optimized for-  the case of 8-byte alignment.--MSPACES                  default: 0 (false)-  If true, compile in support for independent allocation spaces.-  This is only supported if HAVE_MMAP is true.--ONLY_MSPACES             default: 0 (false)-  If true, only compile in mspace versions, not regular versions.--USE_LOCKS                default: 0 (false)-  Causes each call to each public routine to be surrounded with-  pthread or WIN32 mutex lock/unlock. (If set true, this can be-  overridden on a per-mspace basis for mspace versions.)--FOOTERS                  default: 0-  If true, provide extra checking and dispatching by placing-  information in the footers of allocated chunks. This adds-  space and time overhead.--INSECURE                 default: 0-  If true, omit checks for usage errors and heap space overwrites.--USE_DL_PREFIX            default: NOT defined-  Causes compiler to prefix all public routines with the string 'dl'.-  This can be useful when you only want to use this malloc in one part-  of a program, using your regular system malloc elsewhere.--ABORT                    default: defined as abort()-  Defines how to abort on failed checks.  On most systems, a failed-  check cannot die with an "assert" or even print an informative-  message, because the underlying print routines in turn call malloc,-  which will fail again.  Generally, the best policy is to simply call-  abort(). It's not very useful to do more than this because many-  errors due to overwriting will show up as address faults (null, odd-  addresses etc) rather than malloc-triggered checks, so will also-  abort.  Also, most compilers know that abort() does not return, so-  can better optimize code conditionally calling it.--PROCEED_ON_ERROR           default: defined as 0 (false)-  Controls whether detected bad addresses cause them to bypassed-  rather than aborting. If set, detected bad arguments to free and-  realloc are ignored. And all bookkeeping information is zeroed out-  upon a detected overwrite of freed heap space, thus losing the-  ability to ever return it from malloc again, but enabling the-  application to proceed. If PROCEED_ON_ERROR is defined, the-  static variable malloc_corruption_error_count is compiled in-  and can be examined to see if errors have occurred. This option-  generates slower code than the default abort policy.--DEBUG                    default: NOT defined-  The DEBUG setting is mainly intended for people trying to modify-  this code or diagnose problems when porting to new platforms.-  However, it may also be able to better isolate user errors than just-  using runtime checks.  The assertions in the check routines spell-  out in more detail the assumptions and invariants underlying the-  algorithms.  The checking is fairly extensive, and will slow down-  execution noticeably. Calling malloc_stats or mallinfo with DEBUG-  set will attempt to check every non-mmapped allocated and free chunk-  in the course of computing the summaries.--ABORT_ON_ASSERT_FAILURE   default: defined as 1 (true)-  Debugging assertion failures can be nearly impossible if your-  version of the assert macro causes malloc to be called, which will-  lead to a cascade of further failures, blowing the runtime stack.-  ABORT_ON_ASSERT_FAILURE cause assertions failures to call abort(),-  which will usually make debugging easier.--MALLOC_FAILURE_ACTION     default: sets errno to ENOMEM, or no-op on win32-  The action to take before "return 0" when malloc fails to be able to-  return memory because there is none available.--HAVE_MORECORE             default: 1 (true) unless win32 or ONLY_MSPACES-  True if this system supports sbrk or an emulation of it.--MORECORE                  default: sbrk-  The name of the sbrk-style system routine to call to obtain more-  memory.  See below for guidance on writing custom MORECORE-  functions. The type of the argument to sbrk/MORECORE varies across-  systems.  It cannot be size_t, because it supports negative-  arguments, so it is normally the signed type of the same width as-  size_t (sometimes declared as "intptr_t").  It doesn't much matter-  though. Internally, we only call it with arguments less than half-  the max value of a size_t, which should work across all reasonable-  possibilities, although sometimes generating compiler warnings.  See-  near the end of this file for guidelines for creating a custom-  version of MORECORE.--MORECORE_CONTIGUOUS       default: 1 (true)-  If true, take advantage of fact that consecutive calls to MORECORE-  with positive arguments always return contiguous increasing-  addresses.  This is true of unix sbrk. It does not hurt too much to-  set it true anyway, since malloc copes with non-contiguities.-  Setting it false when definitely non-contiguous saves time-  and possibly wasted space it would take to discover this though.--MORECORE_CANNOT_TRIM      default: NOT defined-  True if MORECORE cannot release space back to the system when given-  negative arguments. This is generally necessary only if you are-  using a hand-crafted MORECORE function that cannot handle negative-  arguments.--HAVE_MMAP                 default: 1 (true)-  True if this system supports mmap or an emulation of it.  If so, and-  HAVE_MORECORE is not true, MMAP is used for all system-  allocation. If set and HAVE_MORECORE is true as well, MMAP is-  primarily used to directly allocate very large blocks. It is also-  used as a backup strategy in cases where MORECORE fails to provide-  space from system. Note: A single call to MUNMAP is assumed to be-  able to unmap memory that may have be allocated using multiple calls-  to MMAP, so long as they are adjacent.--HAVE_MREMAP               default: 1 on linux, else 0-  If true realloc() uses mremap() to re-allocate large blocks and-  extend or shrink allocation spaces.--MMAP_CLEARS               default: 1 on unix-  True if mmap clears memory so calloc doesn't need to. This is true-  for standard unix mmap using /dev/zero.--USE_BUILTIN_FFS            default: 0 (i.e., not used)-  Causes malloc to use the builtin ffs() function to compute indices.-  Some compilers may recognize and intrinsify ffs to be faster than the-  supplied C version. Also, the case of x86 using gcc is special-cased-  to an asm instruction, so is already as fast as it can be, and so-  this setting has no effect. (On most x86s, the asm version is only-  slightly faster than the C version.)--malloc_getpagesize         default: derive from system includes, or 4096.-  The system page size. To the extent possible, this malloc manages-  memory from the system in page-size units.  This may be (and-  usually is) a function rather than a constant. This is ignored-  if WIN32, where page size is determined using getSystemInfo during-  initialization.--USE_DEV_RANDOM             default: 0 (i.e., not used)-  Causes malloc to use /dev/random to initialize secure magic seed for-  stamping footers. Otherwise, the current time is used.--NO_MALLINFO                default: 0-  If defined, don't compile "mallinfo". This can be a simple way-  of dealing with mismatches between system declarations and-  those in this file.--MALLINFO_FIELD_TYPE        default: size_t-  The type of the fields in the mallinfo struct. This was originally-  defined as "int" in SVID etc, but is more usefully defined as-  size_t. The value is used only if  HAVE_USR_INCLUDE_MALLOC_H is not set--REALLOC_ZERO_BYTES_FREES    default: not defined-  This should be set if a call to realloc with zero bytes should -  be the same as a call to free. Some people think it should. Otherwise, -  since this malloc returns a unique pointer for malloc(0), so does -  realloc(p, 0).--LACKS_UNISTD_H, LACKS_FCNTL_H, LACKS_SYS_PARAM_H, LACKS_SYS_MMAN_H-LACKS_STRINGS_H, LACKS_STRING_H, LACKS_SYS_TYPES_H,  LACKS_ERRNO_H-LACKS_STDLIB_H                default: NOT defined unless on WIN32-  Define these if your system does not have these header files.-  You might need to manually insert some of the declarations they provide.--DEFAULT_GRANULARITY        default: page size if MORECORE_CONTIGUOUS,-                                system_info.dwAllocationGranularity in WIN32,-                                otherwise 64K.-      Also settable using mallopt(M_GRANULARITY, x)-  The unit for allocating and deallocating memory from the system.  On-  most systems with contiguous MORECORE, there is no reason to-  make this more than a page. However, systems with MMAP tend to-  either require or encourage larger granularities.  You can increase-  this value to prevent system allocation functions to be called so-  often, especially if they are slow.  The value must be at least one-  page and must be a power of two.  Setting to 0 causes initialization-  to either page size or win32 region size.  (Note: In previous-  versions of malloc, the equivalent of this option was called-  "TOP_PAD")--DEFAULT_TRIM_THRESHOLD    default: 2MB-      Also settable using mallopt(M_TRIM_THRESHOLD, x)-  The maximum amount of unused top-most memory to keep before-  releasing via malloc_trim in free().  Automatic trimming is mainly-  useful in long-lived programs using contiguous MORECORE.  Because-  trimming via sbrk can be slow on some systems, and can sometimes be-  wasteful (in cases where programs immediately afterward allocate-  more large chunks) the value should be high enough so that your-  overall system performance would improve by releasing this much-  memory.  As a rough guide, you might set to a value close to the-  average size of a process (program) running on your system.-  Releasing this much memory would allow such a process to run in-  memory.  Generally, it is worth tuning trim thresholds when a-  program undergoes phases where several large chunks are allocated-  and released in ways that can reuse each other's storage, perhaps-  mixed with phases where there are no such chunks at all. The trim-  value must be greater than page size to have any useful effect.  To-  disable trimming completely, you can set to MAX_SIZE_T. Note that the trick-  some people use of mallocing a huge space and then freeing it at-  program startup, in an attempt to reserve system memory, doesn't-  have the intended effect under automatic trimming, since that memory-  will immediately be returned to the system.--DEFAULT_MMAP_THRESHOLD       default: 256K-      Also settable using mallopt(M_MMAP_THRESHOLD, x)-  The request size threshold for using MMAP to directly service a-  request. Requests of at least this size that cannot be allocated-  using already-existing space will be serviced via mmap.  (If enough-  normal freed space already exists it is used instead.)  Using mmap-  segregates relatively large chunks of memory so that they can be-  individually obtained and released from the host system. A request-  serviced through mmap is never reused by any other request (at least-  not directly; the system may just so happen to remap successive-  requests to the same locations).  Segregating space in this way has-  the benefits that: Mmapped space can always be individually released-  back to the system, which helps keep the system level memory demands-  of a long-lived program low.  Also, mapped memory doesn't become-  `locked' between other chunks, as can happen with normally allocated-  chunks, which means that even trimming via malloc_trim would not-  release them.  However, it has the disadvantage that the space-  cannot be reclaimed, consolidated, and then used to service later-  requests, as happens with normal chunks.  The advantages of mmap-  nearly always outweigh disadvantages for "large" chunks, but the-  value of "large" may vary across systems.  The default is an-  empirically derived value that works well in most systems. You can-  disable mmap by setting to MAX_SIZE_T.--*/--#if defined __linux__ && !defined _GNU_SOURCE-/* mremap() on Linux requires this via sys/mman.h */-#define _GNU_SOURCE 1-#endif--#ifndef WIN32-#ifdef _WIN32-#define WIN32 1-#endif  /* _WIN32 */-#endif  /* WIN32 */-#ifdef WIN32-#define WIN32_LEAN_AND_MEAN-#include <windows.h>-#define HAVE_MMAP 1-#define HAVE_MORECORE 0-#define LACKS_UNISTD_H-#define LACKS_SYS_PARAM_H-#define LACKS_SYS_MMAN_H-#define LACKS_STRING_H-#define LACKS_STRINGS_H-#define LACKS_SYS_TYPES_H-#define LACKS_ERRNO_H-#define MALLOC_FAILURE_ACTION-#define MMAP_CLEARS 0 /* WINCE and some others apparently don't clear */-#endif  /* WIN32 */--#ifdef __OS2__-#define INCL_DOS-#include <os2.h>-#define HAVE_MMAP 1-#define HAVE_MORECORE 0-#define LACKS_SYS_MMAN_H-#endif  /* __OS2__ */--#if defined(DARWIN) || defined(_DARWIN)-/* Mac OSX docs advise not to use sbrk; it seems better to use mmap */-#ifndef HAVE_MORECORE-#define HAVE_MORECORE 0-#define HAVE_MMAP 1-#endif  /* HAVE_MORECORE */-#endif  /* DARWIN */--#ifndef LACKS_SYS_TYPES_H-#include <sys/types.h>  /* For size_t */-#endif  /* LACKS_SYS_TYPES_H */--/* The maximum possible size_t value has all bits set */-#define MAX_SIZE_T           (~(size_t)0)--#ifndef ONLY_MSPACES-#define ONLY_MSPACES 0-#endif  /* ONLY_MSPACES */-#ifndef MSPACES-#if ONLY_MSPACES-#define MSPACES 1-#else   /* ONLY_MSPACES */-#define MSPACES 0-#endif  /* ONLY_MSPACES */-#endif  /* MSPACES */-#ifndef MALLOC_ALIGNMENT-#define MALLOC_ALIGNMENT ((size_t)8U)-#endif  /* MALLOC_ALIGNMENT */-#ifndef FOOTERS-#define FOOTERS 0-#endif  /* FOOTERS */-#ifndef ABORT-#define ABORT  abort()-#endif  /* ABORT */-#ifndef ABORT_ON_ASSERT_FAILURE-#define ABORT_ON_ASSERT_FAILURE 1-#endif  /* ABORT_ON_ASSERT_FAILURE */-#ifndef PROCEED_ON_ERROR-#define PROCEED_ON_ERROR 0-#endif  /* PROCEED_ON_ERROR */-#ifndef USE_LOCKS-#define USE_LOCKS 0-#endif  /* USE_LOCKS */-#ifndef INSECURE-#define INSECURE 0-#endif  /* INSECURE */-#ifndef HAVE_MMAP-#define HAVE_MMAP 1-#endif  /* HAVE_MMAP */-#ifndef MMAP_CLEARS-#define MMAP_CLEARS 1-#endif  /* MMAP_CLEARS */-#ifndef HAVE_MREMAP-#ifdef linux-#define HAVE_MREMAP 1-#else   /* linux */-#define HAVE_MREMAP 0-#endif  /* linux */-#endif  /* HAVE_MREMAP */-#ifndef MALLOC_FAILURE_ACTION-#define MALLOC_FAILURE_ACTION  errno = ENOMEM;-#endif  /* MALLOC_FAILURE_ACTION */-#ifndef HAVE_MORECORE-#if ONLY_MSPACES-#define HAVE_MORECORE 0-#else   /* ONLY_MSPACES */-#define HAVE_MORECORE 1-#endif  /* ONLY_MSPACES */-#endif  /* HAVE_MORECORE */-#if !HAVE_MORECORE-#define MORECORE_CONTIGUOUS 0-#else   /* !HAVE_MORECORE */-#ifndef MORECORE-#define MORECORE sbrk-#endif  /* MORECORE */-#ifndef MORECORE_CONTIGUOUS-#define MORECORE_CONTIGUOUS 1-#endif  /* MORECORE_CONTIGUOUS */-#endif  /* HAVE_MORECORE */-#ifndef DEFAULT_GRANULARITY-#if MORECORE_CONTIGUOUS-#define DEFAULT_GRANULARITY (0)  /* 0 means to compute in init_mparams */-#else   /* MORECORE_CONTIGUOUS */-#define DEFAULT_GRANULARITY ((size_t)64U * (size_t)1024U)-#endif  /* MORECORE_CONTIGUOUS */-#endif  /* DEFAULT_GRANULARITY */-#ifndef DEFAULT_TRIM_THRESHOLD-#ifndef MORECORE_CANNOT_TRIM-#define DEFAULT_TRIM_THRESHOLD ((size_t)2U * (size_t)1024U * (size_t)1024U)-#else   /* MORECORE_CANNOT_TRIM */-#define DEFAULT_TRIM_THRESHOLD MAX_SIZE_T-#endif  /* MORECORE_CANNOT_TRIM */-#endif  /* DEFAULT_TRIM_THRESHOLD */-#ifndef DEFAULT_MMAP_THRESHOLD-#if HAVE_MMAP-#define DEFAULT_MMAP_THRESHOLD ((size_t)256U * (size_t)1024U)-#else   /* HAVE_MMAP */-#define DEFAULT_MMAP_THRESHOLD MAX_SIZE_T-#endif  /* HAVE_MMAP */-#endif  /* DEFAULT_MMAP_THRESHOLD */-#ifndef USE_BUILTIN_FFS-#define USE_BUILTIN_FFS 0-#endif  /* USE_BUILTIN_FFS */-#ifndef USE_DEV_RANDOM-#define USE_DEV_RANDOM 0-#endif  /* USE_DEV_RANDOM */-#ifndef NO_MALLINFO-#define NO_MALLINFO 0-#endif  /* NO_MALLINFO */-#ifndef MALLINFO_FIELD_TYPE-#define MALLINFO_FIELD_TYPE size_t-#endif  /* MALLINFO_FIELD_TYPE */--/*-  mallopt tuning options.  SVID/XPG defines four standard parameter-  numbers for mallopt, normally defined in malloc.h.  None of these-  are used in this malloc, so setting them has no effect. But this-  malloc does support the following options.-*/--/* The system's malloc.h may have conflicting defines. */-#undef M_TRIM_THRESHOLD-#undef M_GRANULARITY-#undef M_MMAP_THRESHOLD--#define M_TRIM_THRESHOLD     (-1)-#define M_GRANULARITY        (-2)-#define M_MMAP_THRESHOLD     (-3)--/* ------------------------ Mallinfo declarations ------------------------ */--#if !NO_MALLINFO-/*-  This version of malloc supports the standard SVID/XPG mallinfo-  routine that returns a struct containing usage properties and-  statistics. It should work on any system that has a-  /usr/include/malloc.h defining struct mallinfo.  The main-  declaration needed is the mallinfo struct that is returned (by-copy)-  by mallinfo().  The malloinfo struct contains a bunch of fields that-  are not even meaningful in this version of malloc.  These fields are-  are instead filled by mallinfo() with other numbers that might be of-  interest.--  HAVE_USR_INCLUDE_MALLOC_H should be set if you have a-  /usr/include/malloc.h file that includes a declaration of struct-  mallinfo.  If so, it is included; else a compliant version is-  declared below.  These must be precisely the same for mallinfo() to-  work.  The original SVID version of this struct, defined on most-  systems with mallinfo, declares all fields as ints. But some others-  define as unsigned long. If your system defines the fields using a-  type of different width than listed here, you MUST #include your-  system version and #define HAVE_USR_INCLUDE_MALLOC_H.-*/--/* #define HAVE_USR_INCLUDE_MALLOC_H */--#ifdef HAVE_USR_INCLUDE_MALLOC_H-#include "/usr/include/malloc.h"-#else /* HAVE_USR_INCLUDE_MALLOC_H */--/* HP-UX's stdlib.h redefines mallinfo unless _STRUCT_MALLINFO is defined */-#define _STRUCT_MALLINFO--struct mallinfo {-  MALLINFO_FIELD_TYPE arena;    /* non-mmapped space allocated from system */-  MALLINFO_FIELD_TYPE ordblks;  /* number of free chunks */-  MALLINFO_FIELD_TYPE smblks;   /* always 0 */-  MALLINFO_FIELD_TYPE hblks;    /* always 0 */-  MALLINFO_FIELD_TYPE hblkhd;   /* space in mmapped regions */-  MALLINFO_FIELD_TYPE usmblks;  /* maximum total allocated space */-  MALLINFO_FIELD_TYPE fsmblks;  /* always 0 */-  MALLINFO_FIELD_TYPE uordblks; /* total allocated space */-  MALLINFO_FIELD_TYPE fordblks; /* total free space */-  MALLINFO_FIELD_TYPE keepcost; /* releasable (via malloc_trim) space */-};--#endif /* HAVE_USR_INCLUDE_MALLOC_H */-#endif /* NO_MALLINFO */--#ifdef __cplusplus-extern "C" {-#endif /* __cplusplus */--#if !ONLY_MSPACES--/* ------------------- Declarations of public routines ------------------- */--#ifndef USE_DL_PREFIX-#define dlcalloc               calloc-#define dlfree                 free-#define dlmalloc               malloc-#define dlmemalign             memalign-#define dlrealloc              realloc-#define dlvalloc               valloc-#define dlpvalloc              pvalloc-#define dlmallinfo             mallinfo-#define dlmallopt              mallopt-#define dlmalloc_trim          malloc_trim-#define dlmalloc_stats         malloc_stats-#define dlmalloc_usable_size   malloc_usable_size-#define dlmalloc_footprint     malloc_footprint-#define dlmalloc_max_footprint malloc_max_footprint-#define dlindependent_calloc   independent_calloc-#define dlindependent_comalloc independent_comalloc-#endif /* USE_DL_PREFIX */---/*-  malloc(size_t n)-  Returns a pointer to a newly allocated chunk of at least n bytes, or-  null if no space is available, in which case errno is set to ENOMEM-  on ANSI C systems.--  If n is zero, malloc returns a minimum-sized chunk. (The minimum-  size is 16 bytes on most 32bit systems, and 32 bytes on 64bit-  systems.)  Note that size_t is an unsigned type, so calls with-  arguments that would be negative if signed are interpreted as-  requests for huge amounts of space, which will often fail. The-  maximum supported value of n differs across systems, but is in all-  cases less than the maximum representable value of a size_t.-*/-void* dlmalloc(size_t);--/*-  free(void* p)-  Releases the chunk of memory pointed to by p, that had been previously-  allocated using malloc or a related routine such as realloc.-  It has no effect if p is null. If p was not malloced or already-  freed, free(p) will by default cause the current program to abort.-*/-void  dlfree(void*);--/*-  calloc(size_t n_elements, size_t element_size);-  Returns a pointer to n_elements * element_size bytes, with all locations-  set to zero.-*/-void* dlcalloc(size_t, size_t);--/*-  realloc(void* p, size_t n)-  Returns a pointer to a chunk of size n that contains the same data-  as does chunk p up to the minimum of (n, p's size) bytes, or null-  if no space is available.--  The returned pointer may or may not be the same as p. The algorithm-  prefers extending p in most cases when possible, otherwise it-  employs the equivalent of a malloc-copy-free sequence.--  If p is null, realloc is equivalent to malloc.--  If space is not available, realloc returns null, errno is set (if on-  ANSI) and p is NOT freed.--  if n is for fewer bytes than already held by p, the newly unused-  space is lopped off and freed if possible.  realloc with a size-  argument of zero (re)allocates a minimum-sized chunk.--  The old unix realloc convention of allowing the last-free'd chunk-  to be used as an argument to realloc is not supported.-*/--void* dlrealloc(void*, size_t);--/*-  memalign(size_t alignment, size_t n);-  Returns a pointer to a newly allocated chunk of n bytes, aligned-  in accord with the alignment argument.--  The alignment argument should be a power of two. If the argument is-  not a power of two, the nearest greater power is used.-  8-byte alignment is guaranteed by normal malloc calls, so don't-  bother calling memalign with an argument of 8 or less.--  Overreliance on memalign is a sure way to fragment space.-*/-void* dlmemalign(size_t, size_t);--/*-  valloc(size_t n);-  Equivalent to memalign(pagesize, n), where pagesize is the page-  size of the system. If the pagesize is unknown, 4096 is used.-*/-void* dlvalloc(size_t);--/*-  mallopt(int parameter_number, int parameter_value)-  Sets tunable parameters The format is to provide a-  (parameter-number, parameter-value) pair.  mallopt then sets the-  corresponding parameter to the argument value if it can (i.e., so-  long as the value is meaningful), and returns 1 if successful else-  0.  SVID/XPG/ANSI defines four standard param numbers for mallopt,-  normally defined in malloc.h.  None of these are use in this malloc,-  so setting them has no effect. But this malloc also supports other-  options in mallopt. See below for details.  Briefly, supported-  parameters are as follows (listed defaults are for "typical"-  configurations).--  Symbol            param #  default    allowed param values-  M_TRIM_THRESHOLD     -1   2*1024*1024   any   (MAX_SIZE_T disables)-  M_GRANULARITY        -2     page size   any power of 2 >= page size-  M_MMAP_THRESHOLD     -3      256*1024   any   (or 0 if no MMAP support)-*/-int dlmallopt(int, int);--/*-  malloc_footprint();-  Returns the number of bytes obtained from the system.  The total-  number of bytes allocated by malloc, realloc etc., is less than this-  value. Unlike mallinfo, this function returns only a precomputed-  result, so can be called frequently to monitor memory consumption.-  Even if locks are otherwise defined, this function does not use them,-  so results might not be up to date.-*/-size_t dlmalloc_footprint(void);--/*-  malloc_max_footprint();-  Returns the maximum number of bytes obtained from the system. This-  value will be greater than current footprint if deallocated space-  has been reclaimed by the system. The peak number of bytes allocated-  by malloc, realloc etc., is less than this value. Unlike mallinfo,-  this function returns only a precomputed result, so can be called-  frequently to monitor memory consumption.  Even if locks are-  otherwise defined, this function does not use them, so results might-  not be up to date.-*/-size_t dlmalloc_max_footprint(void);--#if !NO_MALLINFO-/*-  mallinfo()-  Returns (by copy) a struct containing various summary statistics:--  arena:     current total non-mmapped bytes allocated from system-  ordblks:   the number of free chunks-  smblks:    always zero.-  hblks:     current number of mmapped regions-  hblkhd:    total bytes held in mmapped regions-  usmblks:   the maximum total allocated space. This will be greater-                than current total if trimming has occurred.-  fsmblks:   always zero-  uordblks:  current total allocated space (normal or mmapped)-  fordblks:  total free space-  keepcost:  the maximum number of bytes that could ideally be released-               back to system via malloc_trim. ("ideally" means that-               it ignores page restrictions etc.)--  Because these fields are ints, but internal bookkeeping may-  be kept as longs, the reported values may wrap around zero and-  thus be inaccurate.-*/-struct mallinfo dlmallinfo(void);-#endif /* NO_MALLINFO */--/*-  independent_calloc(size_t n_elements, size_t element_size, void* chunks[]);--  independent_calloc is similar to calloc, but instead of returning a-  single cleared space, it returns an array of pointers to n_elements-  independent elements that can hold contents of size elem_size, each-  of which starts out cleared, and can be independently freed,-  realloc'ed etc. The elements are guaranteed to be adjacently-  allocated (this is not guaranteed to occur with multiple callocs or-  mallocs), which may also improve cache locality in some-  applications.--  The "chunks" argument is optional (i.e., may be null, which is-  probably the most typical usage). If it is null, the returned array-  is itself dynamically allocated and should also be freed when it is-  no longer needed. Otherwise, the chunks array must be of at least-  n_elements in length. It is filled in with the pointers to the-  chunks.--  In either case, independent_calloc returns this pointer array, or-  null if the allocation failed.  If n_elements is zero and "chunks"-  is null, it returns a chunk representing an array with zero elements-  (which should be freed if not wanted).--  Each element must be individually freed when it is no longer-  needed. If you'd like to instead be able to free all at once, you-  should instead use regular calloc and assign pointers into this-  space to represent elements.  (In this case though, you cannot-  independently free elements.)--  independent_calloc simplifies and speeds up implementations of many-  kinds of pools.  It may also be useful when constructing large data-  structures that initially have a fixed number of fixed-sized nodes,-  but the number is not known at compile time, and some of the nodes-  may later need to be freed. For example:--  struct Node { int item; struct Node* next; };--  struct Node* build_list() {-    struct Node** pool;-    int n = read_number_of_nodes_needed();-    if (n <= 0) return 0;-    pool = (struct Node**)(independent_calloc(n, sizeof(struct Node), 0);-    if (pool == 0) die();-    // organize into a linked list...-    struct Node* first = pool[0];-    for (i = 0; i < n-1; ++i)-      pool[i]->next = pool[i+1];-    free(pool);     // Can now free the array (or not, if it is needed later)-    return first;-  }-*/-void** dlindependent_calloc(size_t, size_t, void**);--/*-  independent_comalloc(size_t n_elements, size_t sizes[], void* chunks[]);--  independent_comalloc allocates, all at once, a set of n_elements-  chunks with sizes indicated in the "sizes" array.    It returns-  an array of pointers to these elements, each of which can be-  independently freed, realloc'ed etc. The elements are guaranteed to-  be adjacently allocated (this is not guaranteed to occur with-  multiple callocs or mallocs), which may also improve cache locality-  in some applications.--  The "chunks" argument is optional (i.e., may be null). If it is null-  the returned array is itself dynamically allocated and should also-  be freed when it is no longer needed. Otherwise, the chunks array-  must be of at least n_elements in length. It is filled in with the-  pointers to the chunks.--  In either case, independent_comalloc returns this pointer array, or-  null if the allocation failed.  If n_elements is zero and chunks is-  null, it returns a chunk representing an array with zero elements-  (which should be freed if not wanted).--  Each element must be individually freed when it is no longer-  needed. If you'd like to instead be able to free all at once, you-  should instead use a single regular malloc, and assign pointers at-  particular offsets in the aggregate space. (In this case though, you-  cannot independently free elements.)--  independent_comallac differs from independent_calloc in that each-  element may have a different size, and also that it does not-  automatically clear elements.--  independent_comalloc can be used to speed up allocation in cases-  where several structs or objects must always be allocated at the-  same time.  For example:--  struct Head { ... }-  struct Foot { ... }--  void send_message(char* msg) {-    int msglen = strlen(msg);-    size_t sizes[3] = { sizeof(struct Head), msglen, sizeof(struct Foot) };-    void* chunks[3];-    if (independent_comalloc(3, sizes, chunks) == 0)-      die();-    struct Head* head = (struct Head*)(chunks[0]);-    char*        body = (char*)(chunks[1]);-    struct Foot* foot = (struct Foot*)(chunks[2]);-    // ...-  }--  In general though, independent_comalloc is worth using only for-  larger values of n_elements. For small values, you probably won't-  detect enough difference from series of malloc calls to bother.--  Overuse of independent_comalloc can increase overall memory usage,-  since it cannot reuse existing noncontiguous small chunks that-  might be available for some of the elements.-*/-void** dlindependent_comalloc(size_t, size_t*, void**);---/*-  pvalloc(size_t n);-  Equivalent to valloc(minimum-page-that-holds(n)), that is,-  round up n to nearest pagesize.- */-void*  dlpvalloc(size_t);--/*-  malloc_trim(size_t pad);--  If possible, gives memory back to the system (via negative arguments-  to sbrk) if there is unused memory at the `high' end of the malloc-  pool or in unused MMAP segments. You can call this after freeing-  large blocks of memory to potentially reduce the system-level memory-  requirements of a program. However, it cannot guarantee to reduce-  memory. Under some allocation patterns, some large free blocks of-  memory will be locked between two used chunks, so they cannot be-  given back to the system.--  The `pad' argument to malloc_trim represents the amount of free-  trailing space to leave untrimmed. If this argument is zero, only-  the minimum amount of memory to maintain internal data structures-  will be left. Non-zero arguments can be supplied to maintain enough-  trailing space to service future expected allocations without having-  to re-obtain memory from the system.--  Malloc_trim returns 1 if it actually released any memory, else 0.-*/-int  dlmalloc_trim(size_t);--/*-  malloc_usable_size(void* p);--  Returns the number of bytes you can actually use in-  an allocated chunk, which may be more than you requested (although-  often not) due to alignment and minimum size constraints.-  You can use this many bytes without worrying about-  overwriting other allocated objects. This is not a particularly great-  programming practice. malloc_usable_size can be more useful in-  debugging and assertions, for example:--  p = malloc(n);-  assert(malloc_usable_size(p) >= 256);-*/-size_t dlmalloc_usable_size(void*);--/*-  malloc_stats();-  Prints on stderr the amount of space obtained from the system (both-  via sbrk and mmap), the maximum amount (which may be more than-  current if malloc_trim and/or munmap got called), and the current-  number of bytes allocated via malloc (or realloc, etc) but not yet-  freed. Note that this is the number of bytes allocated, not the-  number requested. It will be larger than the number requested-  because of alignment and bookkeeping overhead. Because it includes-  alignment wastage as being in use, this figure may be greater than-  zero even when no user-level chunks are allocated.--  The reported current and maximum system memory can be inaccurate if-  a program makes other calls to system memory allocation functions-  (normally sbrk) outside of malloc.--  malloc_stats prints only the most commonly interesting statistics.-  More information can be obtained by calling mallinfo.-*/-void  dlmalloc_stats(void);--#endif /* ONLY_MSPACES */--#if MSPACES--/*-  mspace is an opaque type representing an independent-  region of space that supports mspace_malloc, etc.-*/-typedef void* mspace;--/*-  create_mspace creates and returns a new independent space with the-  given initial capacity, or, if 0, the default granularity size.  It-  returns null if there is no system memory available to create the-  space.  If argument locked is non-zero, the space uses a separate-  lock to control access. The capacity of the space will grow-  dynamically as needed to service mspace_malloc requests.  You can-  control the sizes of incremental increases of this space by-  compiling with a different DEFAULT_GRANULARITY or dynamically-  setting with mallopt(M_GRANULARITY, value).-*/-mspace create_mspace(size_t capacity, int locked);--/*-  destroy_mspace destroys the given space, and attempts to return all-  of its memory back to the system, returning the total number of-  bytes freed. After destruction, the results of access to all memory-  used by the space become undefined.-*/-size_t destroy_mspace(mspace msp);--/*-  create_mspace_with_base uses the memory supplied as the initial base-  of a new mspace. Part (less than 128*sizeof(size_t) bytes) of this-  space is used for bookkeeping, so the capacity must be at least this-  large. (Otherwise 0 is returned.) When this initial space is-  exhausted, additional memory will be obtained from the system.-  Destroying this space will deallocate all additionally allocated-  space (if possible) but not the initial base.-*/-mspace create_mspace_with_base(void* base, size_t capacity, int locked);--/*-  mspace_malloc behaves as malloc, but operates within-  the given space.-*/-void* mspace_malloc(mspace msp, size_t bytes);--/*-  mspace_free behaves as free, but operates within-  the given space.--  If compiled with FOOTERS==1, mspace_free is not actually needed.-  free may be called instead of mspace_free because freed chunks from-  any space are handled by their originating spaces.-*/-void mspace_free(mspace msp, void* mem);--/*-  mspace_realloc behaves as realloc, but operates within-  the given space.--  If compiled with FOOTERS==1, mspace_realloc is not actually-  needed.  realloc may be called instead of mspace_realloc because-  realloced chunks from any space are handled by their originating-  spaces.-*/-void* mspace_realloc(mspace msp, void* mem, size_t newsize);--/*-  mspace_calloc behaves as calloc, but operates within-  the given space.-*/-void* mspace_calloc(mspace msp, size_t n_elements, size_t elem_size);--/*-  mspace_memalign behaves as memalign, but operates within-  the given space.-*/-void* mspace_memalign(mspace msp, size_t alignment, size_t bytes);--/*-  mspace_independent_calloc behaves as independent_calloc, but-  operates within the given space.-*/-void** mspace_independent_calloc(mspace msp, size_t n_elements,-                                 size_t elem_size, void* chunks[]);--/*-  mspace_independent_comalloc behaves as independent_comalloc, but-  operates within the given space.-*/-void** mspace_independent_comalloc(mspace msp, size_t n_elements,-                                   size_t sizes[], void* chunks[]);--/*-  mspace_footprint() returns the number of bytes obtained from the-  system for this space.-*/-size_t mspace_footprint(mspace msp);--/*-  mspace_max_footprint() returns the peak number of bytes obtained from the-  system for this space.-*/-size_t mspace_max_footprint(mspace msp);---#if !NO_MALLINFO-/*-  mspace_mallinfo behaves as mallinfo, but reports properties of-  the given space.-*/-struct mallinfo mspace_mallinfo(mspace msp);-#endif /* NO_MALLINFO */--/*-  mspace_malloc_stats behaves as malloc_stats, but reports-  properties of the given space.-*/-void mspace_malloc_stats(mspace msp);--/*-  mspace_trim behaves as malloc_trim, but-  operates within the given space.-*/-int mspace_trim(mspace msp, size_t pad);--/*-  An alias for mallopt.-*/-int mspace_mallopt(int, int);--#endif /* MSPACES */--#ifdef __cplusplus-};  /* end of extern "C" */-#endif /* __cplusplus */--/*-  ========================================================================-  To make a fully customizable malloc.h header file, cut everything-  above this line, put into file malloc.h, edit to suit, and #include it-  on the next line, as well as in programs that use this malloc.-  ========================================================================-*/--/* #include "malloc.h" */--/*------------------------------ internal #includes ---------------------- */--#ifdef _MSC_VER-#pragma warning( disable : 4146 ) /* no "unsigned" warnings */-#endif /* _MSC_VER */--#include <stdio.h>       /* for printing in malloc_stats */--#ifndef LACKS_ERRNO_H-#include <errno.h>       /* for MALLOC_FAILURE_ACTION */-#endif /* LACKS_ERRNO_H */-#if FOOTERS-#include <time.h>        /* for magic initialization */-#endif /* FOOTERS */-#ifndef LACKS_STDLIB_H-#include <stdlib.h>      /* for abort() */-#endif /* LACKS_STDLIB_H */-#ifdef DEBUG-#if ABORT_ON_ASSERT_FAILURE-#define assert(x) if(!(x)) ABORT-#else /* ABORT_ON_ASSERT_FAILURE */-#include <assert.h>-#endif /* ABORT_ON_ASSERT_FAILURE */-#else  /* DEBUG */-#define assert(x)-#endif /* DEBUG */-#ifndef LACKS_STRING_H-#include <string.h>      /* for memset etc */-#endif  /* LACKS_STRING_H */-#if USE_BUILTIN_FFS-#ifndef LACKS_STRINGS_H-#include <strings.h>     /* for ffs */-#endif /* LACKS_STRINGS_H */-#endif /* USE_BUILTIN_FFS */-#if HAVE_MMAP-#ifndef LACKS_SYS_MMAN_H-#include <sys/mman.h>    /* for mmap */-#endif /* LACKS_SYS_MMAN_H */-#ifndef LACKS_FCNTL_H-#include <fcntl.h>-#endif /* LACKS_FCNTL_H */-#endif /* HAVE_MMAP */-#if HAVE_MORECORE-#ifndef LACKS_UNISTD_H-#include <unistd.h>     /* for sbrk */-#else /* LACKS_UNISTD_H */-#if !defined(__FreeBSD__) && !defined(__OpenBSD__) && !defined(__NetBSD__)-extern void*     sbrk(ptrdiff_t);-#endif /* FreeBSD etc */-#endif /* LACKS_UNISTD_H */-#endif /* HAVE_MMAP */--#ifndef WIN32-#ifndef malloc_getpagesize-#  ifdef _SC_PAGESIZE         /* some SVR4 systems omit an underscore */-#    ifndef _SC_PAGE_SIZE-#      define _SC_PAGE_SIZE _SC_PAGESIZE-#    endif-#  endif-#  ifdef _SC_PAGE_SIZE-#    define malloc_getpagesize sysconf(_SC_PAGE_SIZE)-#  else-#    if defined(BSD) || defined(DGUX) || defined(HAVE_GETPAGESIZE)-       extern size_t getpagesize();-#      define malloc_getpagesize getpagesize()-#    else-#      ifdef WIN32 /* use supplied emulation of getpagesize */-#        define malloc_getpagesize getpagesize()-#      else-#        ifndef LACKS_SYS_PARAM_H-#          include <sys/param.h>-#        endif-#        ifdef EXEC_PAGESIZE-#          define malloc_getpagesize EXEC_PAGESIZE-#        else-#          ifdef NBPG-#            ifndef CLSIZE-#              define malloc_getpagesize NBPG-#            else-#              define malloc_getpagesize (NBPG * CLSIZE)-#            endif-#          else-#            ifdef NBPC-#              define malloc_getpagesize NBPC-#            else-#              ifdef PAGESIZE-#                define malloc_getpagesize PAGESIZE-#              else /* just guess */-#                define malloc_getpagesize ((size_t)4096U)-#              endif-#            endif-#          endif-#        endif-#      endif-#    endif-#  endif-#endif-#endif--/* ------------------- size_t and alignment properties -------------------- */--/* The byte and bit size of a size_t */-#define SIZE_T_SIZE         (sizeof(size_t))-#define SIZE_T_BITSIZE      (sizeof(size_t) << 3)--/* Some constants coerced to size_t */-/* Annoying but necessary to avoid errors on some platforms */-#define SIZE_T_ZERO         ((size_t)0)-#define SIZE_T_ONE          ((size_t)1)-#define SIZE_T_TWO          ((size_t)2)-#define TWO_SIZE_T_SIZES    (SIZE_T_SIZE<<1)-#define FOUR_SIZE_T_SIZES   (SIZE_T_SIZE<<2)-#define SIX_SIZE_T_SIZES    (FOUR_SIZE_T_SIZES+TWO_SIZE_T_SIZES)-#define HALF_MAX_SIZE_T     (MAX_SIZE_T / 2U)--/* The bit mask value corresponding to MALLOC_ALIGNMENT */-#define CHUNK_ALIGN_MASK    (MALLOC_ALIGNMENT - SIZE_T_ONE)--/* True if address a has acceptable alignment */-#define is_aligned(A)       (((size_t)((A)) & (CHUNK_ALIGN_MASK)) == 0)--/* the number of bytes to offset an address to align it */-#define align_offset(A)\- ((((size_t)(A) & CHUNK_ALIGN_MASK) == 0)? 0 :\-  ((MALLOC_ALIGNMENT - ((size_t)(A) & CHUNK_ALIGN_MASK)) & CHUNK_ALIGN_MASK))--/* -------------------------- MMAP preliminaries ------------------------- */--/*-   If HAVE_MORECORE or HAVE_MMAP are false, we just define calls and-   checks to fail so compiler optimizer can delete code rather than-   using so many "#if"s.-*/---/* MORECORE and MMAP must return MFAIL on failure */-#define MFAIL                ((void*)(MAX_SIZE_T))-#define CMFAIL               ((char*)(MFAIL)) /* defined for convenience */--#if !HAVE_MMAP-#define IS_MMAPPED_BIT       (SIZE_T_ZERO)-#define USE_MMAP_BIT         (SIZE_T_ZERO)-#define CALL_MMAP(s)         MFAIL-#define CALL_MUNMAP(a, s)    (-1)-#define DIRECT_MMAP(s)       MFAIL--#else /* HAVE_MMAP */-#define IS_MMAPPED_BIT       (SIZE_T_ONE)-#define USE_MMAP_BIT         (SIZE_T_ONE)--#if !defined(WIN32) && !defined (__OS2__)-#define CALL_MUNMAP(a, s)    munmap((a), (s))-#define MMAP_PROT            (PROT_READ|PROT_WRITE)-#if !defined(MAP_ANONYMOUS) && defined(MAP_ANON)-#define MAP_ANONYMOUS        MAP_ANON-#endif /* MAP_ANON */-#ifdef MAP_ANONYMOUS-#define MMAP_FLAGS           (MAP_PRIVATE|MAP_ANONYMOUS)-#define CALL_MMAP(s)         mmap(0, (s), MMAP_PROT, MMAP_FLAGS, -1, 0)-#else /* MAP_ANONYMOUS */-/*-   Nearly all versions of mmap support MAP_ANONYMOUS, so the following-   is unlikely to be needed, but is supplied just in case.-*/-#define MMAP_FLAGS           (MAP_PRIVATE)-static int dev_zero_fd = -1; /* Cached file descriptor for /dev/zero. */-#define CALL_MMAP(s) ((dev_zero_fd < 0) ? \-           (dev_zero_fd = open("/dev/zero", O_RDWR), \-            mmap(0, (s), MMAP_PROT, MMAP_FLAGS, dev_zero_fd, 0)) : \-            mmap(0, (s), MMAP_PROT, MMAP_FLAGS, dev_zero_fd, 0))-#endif /* MAP_ANONYMOUS */--#define DIRECT_MMAP(s)       CALL_MMAP(s)--#elif defined(__OS2__)--/* OS/2 MMAP via DosAllocMem */-static void* os2mmap(size_t size) {-  void* ptr;-  if (DosAllocMem(&ptr, size, OBJ_ANY|PAG_COMMIT|PAG_READ|PAG_WRITE) &&-      DosAllocMem(&ptr, size, PAG_COMMIT|PAG_READ|PAG_WRITE))-    return MFAIL;-  return ptr;-}--#define os2direct_mmap(n)     os2mmap(n)--/* This function supports releasing coalesed segments */-static int os2munmap(void* ptr, size_t size) {-  while (size) {-    ULONG ulSize = size;-    ULONG ulFlags = 0;-    if (DosQueryMem(ptr, &ulSize, &ulFlags) != 0)-      return -1;-    if ((ulFlags & PAG_BASE) == 0 ||(ulFlags & PAG_COMMIT) == 0 ||-        ulSize > size)-      return -1;-    if (DosFreeMem(ptr) != 0)-      return -1;-    ptr = ( void * ) ( ( char * ) ptr + ulSize );-    size -= ulSize;-  }-  return 0;-}--#define CALL_MMAP(s)         os2mmap(s)-#define CALL_MUNMAP(a, s)    os2munmap((a), (s))-#define DIRECT_MMAP(s)       os2direct_mmap(s)--#else /* WIN32 */--/* Win32 MMAP via VirtualAlloc */-static void* win32mmap(size_t size) {-  void* ptr = VirtualAlloc(0, size, MEM_RESERVE|MEM_COMMIT, PAGE_EXECUTE_READWRITE);-  return (ptr != 0)? ptr: MFAIL;-}--/* For direct MMAP, use MEM_TOP_DOWN to minimize interference */-static void* win32direct_mmap(size_t size) {-  void* ptr = VirtualAlloc(0, size, MEM_RESERVE|MEM_COMMIT|MEM_TOP_DOWN,-                           PAGE_EXECUTE_READWRITE);-  return (ptr != 0)? ptr: MFAIL;-}--/* This function supports releasing coalesed segments */-static int win32munmap(void* ptr, size_t size) {-  MEMORY_BASIC_INFORMATION minfo;-  char* cptr = ptr;-  while (size) {-    if (VirtualQuery(cptr, &minfo, sizeof(minfo)) == 0)-      return -1;-    if (minfo.BaseAddress != cptr || minfo.AllocationBase != cptr ||-        minfo.State != MEM_COMMIT || minfo.RegionSize > size)-      return -1;-    if (VirtualFree(cptr, 0, MEM_RELEASE) == 0)-      return -1;-    cptr += minfo.RegionSize;-    size -= minfo.RegionSize;-  }-  return 0;-}--#define CALL_MMAP(s)         win32mmap(s)-#define CALL_MUNMAP(a, s)    win32munmap((a), (s))-#define DIRECT_MMAP(s)       win32direct_mmap(s)-#endif /* WIN32 */-#endif /* HAVE_MMAP */--#if HAVE_MMAP && HAVE_MREMAP-#define CALL_MREMAP(addr, osz, nsz, mv) mremap((addr), (osz), (nsz), (mv))-#else  /* HAVE_MMAP && HAVE_MREMAP */-#define CALL_MREMAP(addr, osz, nsz, mv) MFAIL-#endif /* HAVE_MMAP && HAVE_MREMAP */--#if HAVE_MORECORE-#define CALL_MORECORE(S)     MORECORE(S)-#else  /* HAVE_MORECORE */-#define CALL_MORECORE(S)     MFAIL-#endif /* HAVE_MORECORE */--/* mstate bit set if contiguous morecore disabled or failed */-#define USE_NONCONTIGUOUS_BIT (4U)--/* segment bit set in create_mspace_with_base */-#define EXTERN_BIT            (8U)---/* --------------------------- Lock preliminaries ------------------------ */--#if USE_LOCKS--/*-  When locks are defined, there are up to two global locks:--  * If HAVE_MORECORE, morecore_mutex protects sequences of calls to-    MORECORE.  In many cases sys_alloc requires two calls, that should-    not be interleaved with calls by other threads.  This does not-    protect against direct calls to MORECORE by other threads not-    using this lock, so there is still code to cope the best we can on-    interference.--  * magic_init_mutex ensures that mparams.magic and other-    unique mparams values are initialized only once.-*/--#if !defined(WIN32) && !defined(__OS2__)-/* By default use posix locks */-#include <pthread.h>-#define MLOCK_T pthread_mutex_t-#define INITIAL_LOCK(l)      pthread_mutex_init(l, NULL)-#define ACQUIRE_LOCK(l)      pthread_mutex_lock(l)-#define RELEASE_LOCK(l)      pthread_mutex_unlock(l)--#if HAVE_MORECORE-static MLOCK_T morecore_mutex = PTHREAD_MUTEX_INITIALIZER;-#endif /* HAVE_MORECORE */--static MLOCK_T magic_init_mutex = PTHREAD_MUTEX_INITIALIZER;--#elif defined(__OS2__)-#define MLOCK_T HMTX-#define INITIAL_LOCK(l)      DosCreateMutexSem(0, l, 0, FALSE)-#define ACQUIRE_LOCK(l)      DosRequestMutexSem(*l, SEM_INDEFINITE_WAIT)-#define RELEASE_LOCK(l)      DosReleaseMutexSem(*l)-#if HAVE_MORECORE-static MLOCK_T morecore_mutex;-#endif /* HAVE_MORECORE */-static MLOCK_T magic_init_mutex;--#else /* WIN32 */-/*-   Because lock-protected regions have bounded times, and there-   are no recursive lock calls, we can use simple spinlocks.-*/--#define MLOCK_T long-static int win32_acquire_lock (MLOCK_T *sl) {-  for (;;) {-#ifdef InterlockedCompareExchangePointer-    if (!InterlockedCompareExchange(sl, 1, 0))-      return 0;-#else  /* Use older void* version */-    if (!InterlockedCompareExchange((void**)sl, (void*)1, (void*)0))-      return 0;-#endif /* InterlockedCompareExchangePointer */-    Sleep (0);-  }-}--static void win32_release_lock (MLOCK_T *sl) {-  InterlockedExchange (sl, 0);-}--#define INITIAL_LOCK(l)      *(l)=0-#define ACQUIRE_LOCK(l)      win32_acquire_lock(l)-#define RELEASE_LOCK(l)      win32_release_lock(l)-#if HAVE_MORECORE-static MLOCK_T morecore_mutex;-#endif /* HAVE_MORECORE */-static MLOCK_T magic_init_mutex;-#endif /* WIN32 */--#define USE_LOCK_BIT               (2U)-#else  /* USE_LOCKS */-#define USE_LOCK_BIT               (0U)-#define INITIAL_LOCK(l)-#endif /* USE_LOCKS */--#if USE_LOCKS && HAVE_MORECORE-#define ACQUIRE_MORECORE_LOCK()    ACQUIRE_LOCK(&morecore_mutex);-#define RELEASE_MORECORE_LOCK()    RELEASE_LOCK(&morecore_mutex);-#else /* USE_LOCKS && HAVE_MORECORE */-#define ACQUIRE_MORECORE_LOCK()-#define RELEASE_MORECORE_LOCK()-#endif /* USE_LOCKS && HAVE_MORECORE */--#if USE_LOCKS-#define ACQUIRE_MAGIC_INIT_LOCK()  ACQUIRE_LOCK(&magic_init_mutex);-#define RELEASE_MAGIC_INIT_LOCK()  RELEASE_LOCK(&magic_init_mutex);-#else  /* USE_LOCKS */-#define ACQUIRE_MAGIC_INIT_LOCK()-#define RELEASE_MAGIC_INIT_LOCK()-#endif /* USE_LOCKS */---/* -----------------------  Chunk representations ------------------------ */--/*-  (The following includes lightly edited explanations by Colin Plumb.)--  The malloc_chunk declaration below is misleading (but accurate and-  necessary).  It declares a "view" into memory allowing access to-  necessary fields at known offsets from a given base.--  Chunks of memory are maintained using a `boundary tag' method as-  originally described by Knuth.  (See the paper by Paul Wilson-  ftp://ftp.cs.utexas.edu/pub/garbage/allocsrv.ps for a survey of such-  techniques.)  Sizes of free chunks are stored both in the front of-  each chunk and at the end.  This makes consolidating fragmented-  chunks into bigger chunks fast.  The head fields also hold bits-  representing whether chunks are free or in use.--  Here are some pictures to make it clearer.  They are "exploded" to-  show that the state of a chunk can be thought of as extending from-  the high 31 bits of the head field of its header through the-  prev_foot and PINUSE_BIT bit of the following chunk header.--  A chunk that's in use looks like:--   chunk-> +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-           | Size of previous chunk (if P = 1)                             |-           +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-         +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ |P|-         | Size of this chunk                                         1| +-+-   mem-> +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-         |                                                               |-         +-                                                             -+-         |                                                               |-         +-                                                             -+-         |                                                               :-         +-      size - sizeof(size_t) available payload bytes          -+-         :                                                               |- chunk-> +-                                                             -+-         |                                                               |-         +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-       +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ |1|-       | Size of next chunk (may or may not be in use)               | +-+- mem-> +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+--    And if it's free, it looks like this:--   chunk-> +-                                                             -+-           | User payload (must be in use, or we would have merged!)       |-           +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-         +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ |P|-         | Size of this chunk                                         0| +-+-   mem-> +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-         | Next pointer                                                  |-         +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-         | Prev pointer                                                  |-         +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-         |                                                               :-         +-      size - sizeof(struct chunk) unused bytes               -+-         :                                                               |- chunk-> +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-         | Size of this chunk                                            |-         +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-       +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ |0|-       | Size of next chunk (must be in use, or we would have merged)| +-+- mem-> +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-       |                                                               :-       +- User payload                                                -+-       :                                                               |-       +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-                                                                     |0|-                                                                     +-+-  Note that since we always merge adjacent free chunks, the chunks-  adjacent to a free chunk must be in use.--  Given a pointer to a chunk (which can be derived trivially from the-  payload pointer) we can, in O(1) time, find out whether the adjacent-  chunks are free, and if so, unlink them from the lists that they-  are on and merge them with the current chunk.--  Chunks always begin on even word boundaries, so the mem portion-  (which is returned to the user) is also on an even word boundary, and-  thus at least double-word aligned.--  The P (PINUSE_BIT) bit, stored in the unused low-order bit of the-  chunk size (which is always a multiple of two words), is an in-use-  bit for the *previous* chunk.  If that bit is *clear*, then the-  word before the current chunk size contains the previous chunk-  size, and can be used to find the front of the previous chunk.-  The very first chunk allocated always has this bit set, preventing-  access to non-existent (or non-owned) memory. If pinuse is set for-  any given chunk, then you CANNOT determine the size of the-  previous chunk, and might even get a memory addressing fault when-  trying to do so.--  The C (CINUSE_BIT) bit, stored in the unused second-lowest bit of-  the chunk size redundantly records whether the current chunk is-  inuse. This redundancy enables usage checks within free and realloc,-  and reduces indirection when freeing and consolidating chunks.--  Each freshly allocated chunk must have both cinuse and pinuse set.-  That is, each allocated chunk borders either a previously allocated-  and still in-use chunk, or the base of its memory arena. This is-  ensured by making all allocations from the the `lowest' part of any-  found chunk.  Further, no free chunk physically borders another one,-  so each free chunk is known to be preceded and followed by either-  inuse chunks or the ends of memory.--  Note that the `foot' of the current chunk is actually represented-  as the prev_foot of the NEXT chunk. This makes it easier to-  deal with alignments etc but can be very confusing when trying-  to extend or adapt this code.--  The exceptions to all this are--     1. The special chunk `top' is the top-most available chunk (i.e.,-        the one bordering the end of available memory). It is treated-        specially.  Top is never included in any bin, is used only if-        no other chunk is available, and is released back to the-        system if it is very large (see M_TRIM_THRESHOLD).  In effect,-        the top chunk is treated as larger (and thus less well-        fitting) than any other available chunk.  The top chunk-        doesn't update its trailing size field since there is no next-        contiguous chunk that would have to index off it. However,-        space is still allocated for it (TOP_FOOT_SIZE) to enable-        separation or merging when space is extended.--     3. Chunks allocated via mmap, which have the lowest-order bit-        (IS_MMAPPED_BIT) set in their prev_foot fields, and do not set-        PINUSE_BIT in their head fields.  Because they are allocated-        one-by-one, each must carry its own prev_foot field, which is-        also used to hold the offset this chunk has within its mmapped-        region, which is needed to preserve alignment. Each mmapped-        chunk is trailed by the first two fields of a fake next-chunk-        for sake of usage checks.--*/--struct malloc_chunk {-  size_t               prev_foot;  /* Size of previous chunk (if free).  */-  size_t               head;       /* Size and inuse bits. */-  struct malloc_chunk* fd;         /* double links -- used only if free. */-  struct malloc_chunk* bk;-};--typedef struct malloc_chunk  mchunk;-typedef struct malloc_chunk* mchunkptr;-typedef struct malloc_chunk* sbinptr;  /* The type of bins of chunks */-typedef size_t bindex_t;               /* Described below */-typedef unsigned int binmap_t;         /* Described below */-typedef unsigned int flag_t;           /* The type of various bit flag sets */--/* ------------------- Chunks sizes and alignments ----------------------- */--#define MCHUNK_SIZE         (sizeof(mchunk))--#if FOOTERS-#define CHUNK_OVERHEAD      (TWO_SIZE_T_SIZES)-#else /* FOOTERS */-#define CHUNK_OVERHEAD      (SIZE_T_SIZE)-#endif /* FOOTERS */--/* MMapped chunks need a second word of overhead ... */-#define MMAP_CHUNK_OVERHEAD (TWO_SIZE_T_SIZES)-/* ... and additional padding for fake next-chunk at foot */-#define MMAP_FOOT_PAD       (FOUR_SIZE_T_SIZES)--/* The smallest size we can malloc is an aligned minimal chunk */-#define MIN_CHUNK_SIZE\-  ((MCHUNK_SIZE + CHUNK_ALIGN_MASK) & ~CHUNK_ALIGN_MASK)--/* conversion from malloc headers to user pointers, and back */-#define chunk2mem(p)        ((void*)((char*)(p)       + TWO_SIZE_T_SIZES))-#define mem2chunk(mem)      ((mchunkptr)((char*)(mem) - TWO_SIZE_T_SIZES))-/* chunk associated with aligned address A */-#define align_as_chunk(A)   (mchunkptr)((A) + align_offset(chunk2mem(A)))--/* Bounds on request (not chunk) sizes. */-#define MAX_REQUEST         ((-MIN_CHUNK_SIZE) << 2)-#define MIN_REQUEST         (MIN_CHUNK_SIZE - CHUNK_OVERHEAD - SIZE_T_ONE)--/* pad request bytes into a usable size */-#define pad_request(req) \-   (((req) + CHUNK_OVERHEAD + CHUNK_ALIGN_MASK) & ~CHUNK_ALIGN_MASK)--/* pad request, checking for minimum (but not maximum) */-#define request2size(req) \-  (((req) < MIN_REQUEST)? MIN_CHUNK_SIZE : pad_request(req))---/* ------------------ Operations on head and foot fields ----------------- */--/*-  The head field of a chunk is or'ed with PINUSE_BIT when previous-  adjacent chunk in use, and or'ed with CINUSE_BIT if this chunk is in-  use. If the chunk was obtained with mmap, the prev_foot field has-  IS_MMAPPED_BIT set, otherwise holding the offset of the base of the-  mmapped region to the base of the chunk.-*/--#define PINUSE_BIT          (SIZE_T_ONE)-#define CINUSE_BIT          (SIZE_T_TWO)-#define INUSE_BITS          (PINUSE_BIT|CINUSE_BIT)--/* Head value for fenceposts */-#define FENCEPOST_HEAD      (INUSE_BITS|SIZE_T_SIZE)--/* extraction of fields from head words */-#define cinuse(p)           ((p)->head & CINUSE_BIT)-#define pinuse(p)           ((p)->head & PINUSE_BIT)-#define chunksize(p)        ((p)->head & ~(INUSE_BITS))--#define clear_pinuse(p)     ((p)->head &= ~PINUSE_BIT)-#define clear_cinuse(p)     ((p)->head &= ~CINUSE_BIT)--/* Treat space at ptr +/- offset as a chunk */-#define chunk_plus_offset(p, s)  ((mchunkptr)(((char*)(p)) + (s)))-#define chunk_minus_offset(p, s) ((mchunkptr)(((char*)(p)) - (s)))--/* Ptr to next or previous physical malloc_chunk. */-#define next_chunk(p) ((mchunkptr)( ((char*)(p)) + ((p)->head & ~INUSE_BITS)))-#define prev_chunk(p) ((mchunkptr)( ((char*)(p)) - ((p)->prev_foot) ))--/* extract next chunk's pinuse bit */-#define next_pinuse(p)  ((next_chunk(p)->head) & PINUSE_BIT)--/* Get/set size at footer */-#define get_foot(p, s)  (((mchunkptr)((char*)(p) + (s)))->prev_foot)-#define set_foot(p, s)  (((mchunkptr)((char*)(p) + (s)))->prev_foot = (s))--/* Set size, pinuse bit, and foot */-#define set_size_and_pinuse_of_free_chunk(p, s)\-  ((p)->head = (s|PINUSE_BIT), set_foot(p, s))--/* Set size, pinuse bit, foot, and clear next pinuse */-#define set_free_with_pinuse(p, s, n)\-  (clear_pinuse(n), set_size_and_pinuse_of_free_chunk(p, s))--#define is_mmapped(p)\-  (!((p)->head & PINUSE_BIT) && ((p)->prev_foot & IS_MMAPPED_BIT))--/* Get the internal overhead associated with chunk p */-#define overhead_for(p)\- (is_mmapped(p)? MMAP_CHUNK_OVERHEAD : CHUNK_OVERHEAD)--/* Return true if malloced space is not necessarily cleared */-#if MMAP_CLEARS-#define calloc_must_clear(p) (!is_mmapped(p))-#else /* MMAP_CLEARS */-#define calloc_must_clear(p) (1)-#endif /* MMAP_CLEARS */--/* ---------------------- Overlaid data structures ----------------------- */--/*-  When chunks are not in use, they are treated as nodes of either-  lists or trees.--  "Small"  chunks are stored in circular doubly-linked lists, and look-  like this:--    chunk-> +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-            |             Size of previous chunk                            |-            +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-    `head:' |             Size of chunk, in bytes                         |P|-      mem-> +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-            |             Forward pointer to next chunk in list             |-            +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-            |             Back pointer to previous chunk in list            |-            +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-            |             Unused space (may be 0 bytes long)                .-            .                                                               .-            .                                                               |-nextchunk-> +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-    `foot:' |             Size of chunk, in bytes                           |-            +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+--  Larger chunks are kept in a form of bitwise digital trees (aka-  tries) keyed on chunksizes.  Because malloc_tree_chunks are only for-  free chunks greater than 256 bytes, their size doesn't impose any-  constraints on user chunk sizes.  Each node looks like:--    chunk-> +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-            |             Size of previous chunk                            |-            +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-    `head:' |             Size of chunk, in bytes                         |P|-      mem-> +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-            |             Forward pointer to next chunk of same size        |-            +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-            |             Back pointer to previous chunk of same size       |-            +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-            |             Pointer to left child (child[0])                  |-            +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-            |             Pointer to right child (child[1])                 |-            +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-            |             Pointer to parent                                 |-            +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-            |             bin index of this chunk                           |-            +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-            |             Unused space                                      .-            .                                                               |-nextchunk-> +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-    `foot:' |             Size of chunk, in bytes                           |-            +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+--  Each tree holding treenodes is a tree of unique chunk sizes.  Chunks-  of the same size are arranged in a circularly-linked list, with only-  the oldest chunk (the next to be used, in our FIFO ordering)-  actually in the tree.  (Tree members are distinguished by a non-null-  parent pointer.)  If a chunk with the same size an an existing node-  is inserted, it is linked off the existing node using pointers that-  work in the same way as fd/bk pointers of small chunks.--  Each tree contains a power of 2 sized range of chunk sizes (the-  smallest is 0x100 <= x < 0x180), which is is divided in half at each-  tree level, with the chunks in the smaller half of the range (0x100-  <= x < 0x140 for the top nose) in the left subtree and the larger-  half (0x140 <= x < 0x180) in the right subtree.  This is, of course,-  done by inspecting individual bits.--  Using these rules, each node's left subtree contains all smaller-  sizes than its right subtree.  However, the node at the root of each-  subtree has no particular ordering relationship to either.  (The-  dividing line between the subtree sizes is based on trie relation.)-  If we remove the last chunk of a given size from the interior of the-  tree, we need to replace it with a leaf node.  The tree ordering-  rules permit a node to be replaced by any leaf below it.--  The smallest chunk in a tree (a common operation in a best-fit-  allocator) can be found by walking a path to the leftmost leaf in-  the tree.  Unlike a usual binary tree, where we follow left child-  pointers until we reach a null, here we follow the right child-  pointer any time the left one is null, until we reach a leaf with-  both child pointers null. The smallest chunk in the tree will be-  somewhere along that path.--  The worst case number of steps to add, find, or remove a node is-  bounded by the number of bits differentiating chunks within-  bins. Under current bin calculations, this ranges from 6 up to 21-  (for 32 bit sizes) or up to 53 (for 64 bit sizes). The typical case-  is of course much better.-*/--struct malloc_tree_chunk {-  /* The first four fields must be compatible with malloc_chunk */-  size_t                    prev_foot;-  size_t                    head;-  struct malloc_tree_chunk* fd;-  struct malloc_tree_chunk* bk;--  struct malloc_tree_chunk* child[2];-  struct malloc_tree_chunk* parent;-  bindex_t                  index;-};--typedef struct malloc_tree_chunk  tchunk;-typedef struct malloc_tree_chunk* tchunkptr;-typedef struct malloc_tree_chunk* tbinptr; /* The type of bins of trees */--/* A little helper macro for trees */-#define leftmost_child(t) ((t)->child[0] != 0? (t)->child[0] : (t)->child[1])--/* ----------------------------- Segments -------------------------------- */--/*-  Each malloc space may include non-contiguous segments, held in a-  list headed by an embedded malloc_segment record representing the-  top-most space. Segments also include flags holding properties of-  the space. Large chunks that are directly allocated by mmap are not-  included in this list. They are instead independently created and-  destroyed without otherwise keeping track of them.--  Segment management mainly comes into play for spaces allocated by-  MMAP.  Any call to MMAP might or might not return memory that is-  adjacent to an existing segment.  MORECORE normally contiguously-  extends the current space, so this space is almost always adjacent,-  which is simpler and faster to deal with. (This is why MORECORE is-  used preferentially to MMAP when both are available -- see-  sys_alloc.)  When allocating using MMAP, we don't use any of the-  hinting mechanisms (inconsistently) supported in various-  implementations of unix mmap, or distinguish reserving from-  committing memory. Instead, we just ask for space, and exploit-  contiguity when we get it.  It is probably possible to do-  better than this on some systems, but no general scheme seems-  to be significantly better.--  Management entails a simpler variant of the consolidation scheme-  used for chunks to reduce fragmentation -- new adjacent memory is-  normally prepended or appended to an existing segment. However,-  there are limitations compared to chunk consolidation that mostly-  reflect the fact that segment processing is relatively infrequent-  (occurring only when getting memory from system) and that we-  don't expect to have huge numbers of segments:--  * Segments are not indexed, so traversal requires linear scans.  (It-    would be possible to index these, but is not worth the extra-    overhead and complexity for most programs on most platforms.)-  * New segments are only appended to old ones when holding top-most-    memory; if they cannot be prepended to others, they are held in-    different segments.--  Except for the top-most segment of an mstate, each segment record-  is kept at the tail of its segment. Segments are added by pushing-  segment records onto the list headed by &mstate.seg for the-  containing mstate.--  Segment flags control allocation/merge/deallocation policies:-  * If EXTERN_BIT set, then we did not allocate this segment,-    and so should not try to deallocate or merge with others.-    (This currently holds only for the initial segment passed-    into create_mspace_with_base.)-  * If IS_MMAPPED_BIT set, the segment may be merged with-    other surrounding mmapped segments and trimmed/de-allocated-    using munmap.-  * If neither bit is set, then the segment was obtained using-    MORECORE so can be merged with surrounding MORECORE'd segments-    and deallocated/trimmed using MORECORE with negative arguments.-*/--struct malloc_segment {-  char*        base;             /* base address */-  size_t       size;             /* allocated size */-  struct malloc_segment* next;   /* ptr to next segment */-#if FFI_MMAP_EXEC_WRIT-  /* The mmap magic is supposed to store the address of the executable-     segment at the very end of the requested block.  */--# define mmap_exec_offset(b,s) (*(ptrdiff_t*)((b)+(s)-sizeof(ptrdiff_t)))--  /* We can only merge segments if their corresponding executable-     segments are at identical offsets.  */-# define check_segment_merge(S,b,s) \-  (mmap_exec_offset((b),(s)) == (S)->exec_offset)--# define add_segment_exec_offset(p,S) ((char*)(p) + (S)->exec_offset)-# define sub_segment_exec_offset(p,S) ((char*)(p) - (S)->exec_offset)--  /* The removal of sflags only works with HAVE_MORECORE == 0.  */--# define get_segment_flags(S)   (IS_MMAPPED_BIT)-# define set_segment_flags(S,v) \-  (((v) != IS_MMAPPED_BIT) ? (ABORT, (v)) :				\-   (((S)->exec_offset =							\-     mmap_exec_offset((S)->base, (S)->size)),				\-    (mmap_exec_offset((S)->base + (S)->exec_offset, (S)->size) !=	\-     (S)->exec_offset) ? (ABORT, (v)) :					\-   (mmap_exec_offset((S)->base, (S)->size) = 0), (v)))--  /* We use an offset here, instead of a pointer, because then, when-     base changes, we don't have to modify this.  On architectures-     with segmented addresses, this might not work.  */-  ptrdiff_t    exec_offset;-#else--# define get_segment_flags(S)   ((S)->sflags)-# define set_segment_flags(S,v) ((S)->sflags = (v))-# define check_segment_merge(S,b,s) (1)--  flag_t       sflags;           /* mmap and extern flag */-#endif-};--#define is_mmapped_segment(S)  (get_segment_flags(S) & IS_MMAPPED_BIT)-#define is_extern_segment(S)   (get_segment_flags(S) & EXTERN_BIT)--typedef struct malloc_segment  msegment;-typedef struct malloc_segment* msegmentptr;--/* ---------------------------- malloc_state ----------------------------- */--/*-   A malloc_state holds all of the bookkeeping for a space.-   The main fields are:--  Top-    The topmost chunk of the currently active segment. Its size is-    cached in topsize.  The actual size of topmost space is-    topsize+TOP_FOOT_SIZE, which includes space reserved for adding-    fenceposts and segment records if necessary when getting more-    space from the system.  The size at which to autotrim top is-    cached from mparams in trim_check, except that it is disabled if-    an autotrim fails.--  Designated victim (dv)-    This is the preferred chunk for servicing small requests that-    don't have exact fits.  It is normally the chunk split off most-    recently to service another small request.  Its size is cached in-    dvsize. The link fields of this chunk are not maintained since it-    is not kept in a bin.--  SmallBins-    An array of bin headers for free chunks.  These bins hold chunks-    with sizes less than MIN_LARGE_SIZE bytes. Each bin contains-    chunks of all the same size, spaced 8 bytes apart.  To simplify-    use in double-linked lists, each bin header acts as a malloc_chunk-    pointing to the real first node, if it exists (else pointing to-    itself).  This avoids special-casing for headers.  But to avoid-    waste, we allocate only the fd/bk pointers of bins, and then use-    repositioning tricks to treat these as the fields of a chunk.--  TreeBins-    Treebins are pointers to the roots of trees holding a range of-    sizes. There are 2 equally spaced treebins for each power of two-    from TREE_SHIFT to TREE_SHIFT+16. The last bin holds anything-    larger.--  Bin maps-    There is one bit map for small bins ("smallmap") and one for-    treebins ("treemap).  Each bin sets its bit when non-empty, and-    clears the bit when empty.  Bit operations are then used to avoid-    bin-by-bin searching -- nearly all "search" is done without ever-    looking at bins that won't be selected.  The bit maps-    conservatively use 32 bits per map word, even if on 64bit system.-    For a good description of some of the bit-based techniques used-    here, see Henry S. Warren Jr's book "Hacker's Delight" (and-    supplement at http://hackersdelight.org/). Many of these are-    intended to reduce the branchiness of paths through malloc etc, as-    well as to reduce the number of memory locations read or written.--  Segments-    A list of segments headed by an embedded malloc_segment record-    representing the initial space.--  Address check support-    The least_addr field is the least address ever obtained from-    MORECORE or MMAP. Attempted frees and reallocs of any address less-    than this are trapped (unless INSECURE is defined).--  Magic tag-    A cross-check field that should always hold same value as mparams.magic.--  Flags-    Bits recording whether to use MMAP, locks, or contiguous MORECORE--  Statistics-    Each space keeps track of current and maximum system memory-    obtained via MORECORE or MMAP.--  Locking-    If USE_LOCKS is defined, the "mutex" lock is acquired and released-    around every public call using this mspace.-*/--/* Bin types, widths and sizes */-#define NSMALLBINS        (32U)-#define NTREEBINS         (32U)-#define SMALLBIN_SHIFT    (3U)-#define SMALLBIN_WIDTH    (SIZE_T_ONE << SMALLBIN_SHIFT)-#define TREEBIN_SHIFT     (8U)-#define MIN_LARGE_SIZE    (SIZE_T_ONE << TREEBIN_SHIFT)-#define MAX_SMALL_SIZE    (MIN_LARGE_SIZE - SIZE_T_ONE)-#define MAX_SMALL_REQUEST (MAX_SMALL_SIZE - CHUNK_ALIGN_MASK - CHUNK_OVERHEAD)--struct malloc_state {-  binmap_t   smallmap;-  binmap_t   treemap;-  size_t     dvsize;-  size_t     topsize;-  char*      least_addr;-  mchunkptr  dv;-  mchunkptr  top;-  size_t     trim_check;-  size_t     magic;-  mchunkptr  smallbins[(NSMALLBINS+1)*2];-  tbinptr    treebins[NTREEBINS];-  size_t     footprint;-  size_t     max_footprint;-  flag_t     mflags;-#if USE_LOCKS-  MLOCK_T    mutex;     /* locate lock among fields that rarely change */-#endif /* USE_LOCKS */-  msegment   seg;-};--typedef struct malloc_state*    mstate;--/* ------------- Global malloc_state and malloc_params ------------------- */--/*-  malloc_params holds global properties, including those that can be-  dynamically set using mallopt. There is a single instance, mparams,-  initialized in init_mparams.-*/--struct malloc_params {-  size_t magic;-  size_t page_size;-  size_t granularity;-  size_t mmap_threshold;-  size_t trim_threshold;-  flag_t default_mflags;-};--static struct malloc_params mparams;--/* The global malloc_state used for all non-"mspace" calls */-static struct malloc_state _gm_;-#define gm                 (&_gm_)-#define is_global(M)       ((M) == &_gm_)-#define is_initialized(M)  ((M)->top != 0)--/* -------------------------- system alloc setup ------------------------- */--/* Operations on mflags */--#define use_lock(M)           ((M)->mflags &   USE_LOCK_BIT)-#define enable_lock(M)        ((M)->mflags |=  USE_LOCK_BIT)-#define disable_lock(M)       ((M)->mflags &= ~USE_LOCK_BIT)--#define use_mmap(M)           ((M)->mflags &   USE_MMAP_BIT)-#define enable_mmap(M)        ((M)->mflags |=  USE_MMAP_BIT)-#define disable_mmap(M)       ((M)->mflags &= ~USE_MMAP_BIT)--#define use_noncontiguous(M)  ((M)->mflags &   USE_NONCONTIGUOUS_BIT)-#define disable_contiguous(M) ((M)->mflags |=  USE_NONCONTIGUOUS_BIT)--#define set_lock(M,L)\- ((M)->mflags = (L)?\-  ((M)->mflags | USE_LOCK_BIT) :\-  ((M)->mflags & ~USE_LOCK_BIT))--/* page-align a size */-#define page_align(S)\- (((S) + (mparams.page_size)) & ~(mparams.page_size - SIZE_T_ONE))--/* granularity-align a size */-#define granularity_align(S)\-  (((S) + (mparams.granularity)) & ~(mparams.granularity - SIZE_T_ONE))--#define is_page_aligned(S)\-   (((size_t)(S) & (mparams.page_size - SIZE_T_ONE)) == 0)-#define is_granularity_aligned(S)\-   (((size_t)(S) & (mparams.granularity - SIZE_T_ONE)) == 0)--/*  True if segment S holds address A */-#define segment_holds(S, A)\-  ((char*)(A) >= S->base && (char*)(A) < S->base + S->size)--/* Return segment holding given address */-static msegmentptr segment_holding(mstate m, char* addr) {-  msegmentptr sp = &m->seg;-  for (;;) {-    if (addr >= sp->base && addr < sp->base + sp->size)-      return sp;-    if ((sp = sp->next) == 0)-      return 0;-  }-}--/* Return true if segment contains a segment link */-static int has_segment_link(mstate m, msegmentptr ss) {-  msegmentptr sp = &m->seg;-  for (;;) {-    if ((char*)sp >= ss->base && (char*)sp < ss->base + ss->size)-      return 1;-    if ((sp = sp->next) == 0)-      return 0;-  }-}--#ifndef MORECORE_CANNOT_TRIM-#define should_trim(M,s)  ((s) > (M)->trim_check)-#else  /* MORECORE_CANNOT_TRIM */-#define should_trim(M,s)  (0)-#endif /* MORECORE_CANNOT_TRIM */--/*-  TOP_FOOT_SIZE is padding at the end of a segment, including space-  that may be needed to place segment records and fenceposts when new-  noncontiguous segments are added.-*/-#define TOP_FOOT_SIZE\-  (align_offset(chunk2mem(0))+pad_request(sizeof(struct malloc_segment))+MIN_CHUNK_SIZE)---/* -------------------------------  Hooks -------------------------------- */--/*-  PREACTION should be defined to return 0 on success, and nonzero on-  failure. If you are not using locking, you can redefine these to do-  anything you like.-*/--#if USE_LOCKS--/* Ensure locks are initialized */-#define GLOBALLY_INITIALIZE() (mparams.page_size == 0 && init_mparams())--#define PREACTION(M)  ((GLOBALLY_INITIALIZE() || use_lock(M))? ACQUIRE_LOCK(&(M)->mutex) : 0)-#define POSTACTION(M) { if (use_lock(M)) RELEASE_LOCK(&(M)->mutex); }-#else /* USE_LOCKS */--#ifndef PREACTION-#define PREACTION(M) (0)-#endif  /* PREACTION */--#ifndef POSTACTION-#define POSTACTION(M)-#endif  /* POSTACTION */--#endif /* USE_LOCKS */--/*-  CORRUPTION_ERROR_ACTION is triggered upon detected bad addresses.-  USAGE_ERROR_ACTION is triggered on detected bad frees and-  reallocs. The argument p is an address that might have triggered the-  fault. It is ignored by the two predefined actions, but might be-  useful in custom actions that try to help diagnose errors.-*/--#if PROCEED_ON_ERROR--/* A count of the number of corruption errors causing resets */-int malloc_corruption_error_count;--/* default corruption action */-static void reset_on_error(mstate m);--#define CORRUPTION_ERROR_ACTION(m)  reset_on_error(m)-#define USAGE_ERROR_ACTION(m, p)--#else /* PROCEED_ON_ERROR */--#ifndef CORRUPTION_ERROR_ACTION-#define CORRUPTION_ERROR_ACTION(m) ABORT-#endif /* CORRUPTION_ERROR_ACTION */--#ifndef USAGE_ERROR_ACTION-#define USAGE_ERROR_ACTION(m,p) ABORT-#endif /* USAGE_ERROR_ACTION */--#endif /* PROCEED_ON_ERROR */--/* -------------------------- Debugging setup ---------------------------- */--#if ! DEBUG--#define check_free_chunk(M,P)-#define check_inuse_chunk(M,P)-#define check_malloced_chunk(M,P,N)-#define check_mmapped_chunk(M,P)-#define check_malloc_state(M)-#define check_top_chunk(M,P)--#else /* DEBUG */-#define check_free_chunk(M,P)       do_check_free_chunk(M,P)-#define check_inuse_chunk(M,P)      do_check_inuse_chunk(M,P)-#define check_top_chunk(M,P)        do_check_top_chunk(M,P)-#define check_malloced_chunk(M,P,N) do_check_malloced_chunk(M,P,N)-#define check_mmapped_chunk(M,P)    do_check_mmapped_chunk(M,P)-#define check_malloc_state(M)       do_check_malloc_state(M)--static void   do_check_any_chunk(mstate m, mchunkptr p);-static void   do_check_top_chunk(mstate m, mchunkptr p);-static void   do_check_mmapped_chunk(mstate m, mchunkptr p);-static void   do_check_inuse_chunk(mstate m, mchunkptr p);-static void   do_check_free_chunk(mstate m, mchunkptr p);-static void   do_check_malloced_chunk(mstate m, void* mem, size_t s);-static void   do_check_tree(mstate m, tchunkptr t);-static void   do_check_treebin(mstate m, bindex_t i);-static void   do_check_smallbin(mstate m, bindex_t i);-static void   do_check_malloc_state(mstate m);-static int    bin_find(mstate m, mchunkptr x);-static size_t traverse_and_check(mstate m);-#endif /* DEBUG */--/* ---------------------------- Indexing Bins ---------------------------- */--#define is_small(s)         (((s) >> SMALLBIN_SHIFT) < NSMALLBINS)-#define small_index(s)      ((s)  >> SMALLBIN_SHIFT)-#define small_index2size(i) ((i)  << SMALLBIN_SHIFT)-#define MIN_SMALL_INDEX     (small_index(MIN_CHUNK_SIZE))--/* addressing by index. See above about smallbin repositioning */-#define smallbin_at(M, i)   ((sbinptr)((char*)&((M)->smallbins[(i)<<1])))-#define treebin_at(M,i)     (&((M)->treebins[i]))--/* assign tree index for size S to variable I */-#if defined(__GNUC__) && defined(__i386__)-#define compute_tree_index(S, I)\-{\-  size_t X = S >> TREEBIN_SHIFT;\-  if (X == 0)\-    I = 0;\-  else if (X > 0xFFFF)\-    I = NTREEBINS-1;\-  else {\-    unsigned int K;\-    __asm__("bsrl %1,%0\n\t" : "=r" (K) : "rm"  (X));\-    I =  (bindex_t)((K << 1) + ((S >> (K + (TREEBIN_SHIFT-1)) & 1)));\-  }\-}-#else /* GNUC */-#define compute_tree_index(S, I)\-{\-  size_t X = S >> TREEBIN_SHIFT;\-  if (X == 0)\-    I = 0;\-  else if (X > 0xFFFF)\-    I = NTREEBINS-1;\-  else {\-    unsigned int Y = (unsigned int)X;\-    unsigned int N = ((Y - 0x100) >> 16) & 8;\-    unsigned int K = (((Y <<= N) - 0x1000) >> 16) & 4;\-    N += K;\-    N += K = (((Y <<= K) - 0x4000) >> 16) & 2;\-    K = 14 - N + ((Y <<= K) >> 15);\-    I = (K << 1) + ((S >> (K + (TREEBIN_SHIFT-1)) & 1));\-  }\-}-#endif /* GNUC */--/* Bit representing maximum resolved size in a treebin at i */-#define bit_for_tree_index(i) \-   (i == NTREEBINS-1)? (SIZE_T_BITSIZE-1) : (((i) >> 1) + TREEBIN_SHIFT - 2)--/* Shift placing maximum resolved bit in a treebin at i as sign bit */-#define leftshift_for_tree_index(i) \-   ((i == NTREEBINS-1)? 0 : \-    ((SIZE_T_BITSIZE-SIZE_T_ONE) - (((i) >> 1) + TREEBIN_SHIFT - 2)))--/* The size of the smallest chunk held in bin with index i */-#define minsize_for_tree_index(i) \-   ((SIZE_T_ONE << (((i) >> 1) + TREEBIN_SHIFT)) |  \-   (((size_t)((i) & SIZE_T_ONE)) << (((i) >> 1) + TREEBIN_SHIFT - 1)))---/* ------------------------ Operations on bin maps ----------------------- */--/* bit corresponding to given index */-#define idx2bit(i)              ((binmap_t)(1) << (i))--/* Mark/Clear bits with given index */-#define mark_smallmap(M,i)      ((M)->smallmap |=  idx2bit(i))-#define clear_smallmap(M,i)     ((M)->smallmap &= ~idx2bit(i))-#define smallmap_is_marked(M,i) ((M)->smallmap &   idx2bit(i))--#define mark_treemap(M,i)       ((M)->treemap  |=  idx2bit(i))-#define clear_treemap(M,i)      ((M)->treemap  &= ~idx2bit(i))-#define treemap_is_marked(M,i)  ((M)->treemap  &   idx2bit(i))--/* index corresponding to given bit */--#if defined(__GNUC__) && defined(__i386__)-#define compute_bit2idx(X, I)\-{\-  unsigned int J;\-  __asm__("bsfl %1,%0\n\t" : "=r" (J) : "rm" (X));\-  I = (bindex_t)J;\-}--#else /* GNUC */-#if  USE_BUILTIN_FFS-#define compute_bit2idx(X, I) I = __builtin_ffs(X)-1--#else /* USE_BUILTIN_FFS */-#define compute_bit2idx(X, I)\-{\-  unsigned int Y = X - 1;\-  unsigned int K = Y >> (16-4) & 16;\-  unsigned int N = K;        Y >>= K;\-  N += K = Y >> (8-3) &  8;  Y >>= K;\-  N += K = Y >> (4-2) &  4;  Y >>= K;\-  N += K = Y >> (2-1) &  2;  Y >>= K;\-  N += K = Y >> (1-0) &  1;  Y >>= K;\-  I = (bindex_t)(N + Y);\-}-#endif /* USE_BUILTIN_FFS */-#endif /* GNUC */--/* isolate the least set bit of a bitmap */-#define least_bit(x)         ((x) & -(x))--/* mask with all bits to left of least bit of x on */-#define left_bits(x)         ((x<<1) | -(x<<1))--/* mask with all bits to left of or equal to least bit of x on */-#define same_or_left_bits(x) ((x) | -(x))---/* ----------------------- Runtime Check Support ------------------------- */--/*-  For security, the main invariant is that malloc/free/etc never-  writes to a static address other than malloc_state, unless static-  malloc_state itself has been corrupted, which cannot occur via-  malloc (because of these checks). In essence this means that we-  believe all pointers, sizes, maps etc held in malloc_state, but-  check all of those linked or offsetted from other embedded data-  structures.  These checks are interspersed with main code in a way-  that tends to minimize their run-time cost.--  When FOOTERS is defined, in addition to range checking, we also-  verify footer fields of inuse chunks, which can be used guarantee-  that the mstate controlling malloc/free is intact.  This is a-  streamlined version of the approach described by William Robertson-  et al in "Run-time Detection of Heap-based Overflows" LISA'03-  http://www.usenix.org/events/lisa03/tech/robertson.html The footer-  of an inuse chunk holds the xor of its mstate and a random seed,-  that is checked upon calls to free() and realloc().  This is-  (probablistically) unguessable from outside the program, but can be-  computed by any code successfully malloc'ing any chunk, so does not-  itself provide protection against code that has already broken-  security through some other means.  Unlike Robertson et al, we-  always dynamically check addresses of all offset chunks (previous,-  next, etc). This turns out to be cheaper than relying on hashes.-*/--#if !INSECURE-/* Check if address a is at least as high as any from MORECORE or MMAP */-#define ok_address(M, a) ((char*)(a) >= (M)->least_addr)-/* Check if address of next chunk n is higher than base chunk p */-#define ok_next(p, n)    ((char*)(p) < (char*)(n))-/* Check if p has its cinuse bit on */-#define ok_cinuse(p)     cinuse(p)-/* Check if p has its pinuse bit on */-#define ok_pinuse(p)     pinuse(p)--#else /* !INSECURE */-#define ok_address(M, a) (1)-#define ok_next(b, n)    (1)-#define ok_cinuse(p)     (1)-#define ok_pinuse(p)     (1)-#endif /* !INSECURE */--#if (FOOTERS && !INSECURE)-/* Check if (alleged) mstate m has expected magic field */-#define ok_magic(M)      ((M)->magic == mparams.magic)-#else  /* (FOOTERS && !INSECURE) */-#define ok_magic(M)      (1)-#endif /* (FOOTERS && !INSECURE) */---/* In gcc, use __builtin_expect to minimize impact of checks */-#if !INSECURE-#if defined(__GNUC__) && __GNUC__ >= 3-#define RTCHECK(e)  __builtin_expect(e, 1)-#else /* GNUC */-#define RTCHECK(e)  (e)-#endif /* GNUC */-#else /* !INSECURE */-#define RTCHECK(e)  (1)-#endif /* !INSECURE */--/* macros to set up inuse chunks with or without footers */--#if !FOOTERS--#define mark_inuse_foot(M,p,s)--/* Set cinuse bit and pinuse bit of next chunk */-#define set_inuse(M,p,s)\-  ((p)->head = (((p)->head & PINUSE_BIT)|s|CINUSE_BIT),\-  ((mchunkptr)(((char*)(p)) + (s)))->head |= PINUSE_BIT)--/* Set cinuse and pinuse of this chunk and pinuse of next chunk */-#define set_inuse_and_pinuse(M,p,s)\-  ((p)->head = (s|PINUSE_BIT|CINUSE_BIT),\-  ((mchunkptr)(((char*)(p)) + (s)))->head |= PINUSE_BIT)--/* Set size, cinuse and pinuse bit of this chunk */-#define set_size_and_pinuse_of_inuse_chunk(M, p, s)\-  ((p)->head = (s|PINUSE_BIT|CINUSE_BIT))--#else /* FOOTERS */--/* Set foot of inuse chunk to be xor of mstate and seed */-#define mark_inuse_foot(M,p,s)\-  (((mchunkptr)((char*)(p) + (s)))->prev_foot = ((size_t)(M) ^ mparams.magic))--#define get_mstate_for(p)\-  ((mstate)(((mchunkptr)((char*)(p) +\-    (chunksize(p))))->prev_foot ^ mparams.magic))--#define set_inuse(M,p,s)\-  ((p)->head = (((p)->head & PINUSE_BIT)|s|CINUSE_BIT),\-  (((mchunkptr)(((char*)(p)) + (s)))->head |= PINUSE_BIT), \-  mark_inuse_foot(M,p,s))--#define set_inuse_and_pinuse(M,p,s)\-  ((p)->head = (s|PINUSE_BIT|CINUSE_BIT),\-  (((mchunkptr)(((char*)(p)) + (s)))->head |= PINUSE_BIT),\- mark_inuse_foot(M,p,s))--#define set_size_and_pinuse_of_inuse_chunk(M, p, s)\-  ((p)->head = (s|PINUSE_BIT|CINUSE_BIT),\-  mark_inuse_foot(M, p, s))--#endif /* !FOOTERS */--/* ---------------------------- setting mparams -------------------------- */--/* Initialize mparams */-static int init_mparams(void) {-  if (mparams.page_size == 0) {-    size_t s;--    mparams.mmap_threshold = DEFAULT_MMAP_THRESHOLD;-    mparams.trim_threshold = DEFAULT_TRIM_THRESHOLD;-#if MORECORE_CONTIGUOUS-    mparams.default_mflags = USE_LOCK_BIT|USE_MMAP_BIT;-#else  /* MORECORE_CONTIGUOUS */-    mparams.default_mflags = USE_LOCK_BIT|USE_MMAP_BIT|USE_NONCONTIGUOUS_BIT;-#endif /* MORECORE_CONTIGUOUS */--#if (FOOTERS && !INSECURE)-    {-#if USE_DEV_RANDOM-      int fd;-      unsigned char buf[sizeof(size_t)];-      /* Try to use /dev/urandom, else fall back on using time */-      if ((fd = open("/dev/urandom", O_RDONLY)) >= 0 &&-          read(fd, buf, sizeof(buf)) == sizeof(buf)) {-        s = *((size_t *) buf);-        close(fd);-      }-      else-#endif /* USE_DEV_RANDOM */-        s = (size_t)(time(0) ^ (size_t)0x55555555U);--      s |= (size_t)8U;    /* ensure nonzero */-      s &= ~(size_t)7U;   /* improve chances of fault for bad values */--    }-#else /* (FOOTERS && !INSECURE) */-    s = (size_t)0x58585858U;-#endif /* (FOOTERS && !INSECURE) */-    ACQUIRE_MAGIC_INIT_LOCK();-    if (mparams.magic == 0) {-      mparams.magic = s;-      /* Set up lock for main malloc area */-      INITIAL_LOCK(&gm->mutex);-      gm->mflags = mparams.default_mflags;-    }-    RELEASE_MAGIC_INIT_LOCK();--#if !defined(WIN32) && !defined(__OS2__)-    mparams.page_size = malloc_getpagesize;-    mparams.granularity = ((DEFAULT_GRANULARITY != 0)?-                           DEFAULT_GRANULARITY : mparams.page_size);-#elif defined (__OS2__)- /* if low-memory is used, os2munmap() would break-    if it were anything other than 64k */-    mparams.page_size = 4096u;-    mparams.granularity = 65536u;-#else /* WIN32 */-    {-      SYSTEM_INFO system_info;-      GetSystemInfo(&system_info);-      mparams.page_size = system_info.dwPageSize;-      mparams.granularity = system_info.dwAllocationGranularity;-    }-#endif /* WIN32 */--    /* Sanity-check configuration:-       size_t must be unsigned and as wide as pointer type.-       ints must be at least 4 bytes.-       alignment must be at least 8.-       Alignment, min chunk size, and page size must all be powers of 2.-    */-    if ((sizeof(size_t) != sizeof(char*)) ||-        (MAX_SIZE_T < MIN_CHUNK_SIZE)  ||-        (sizeof(int) < 4)  ||-        (MALLOC_ALIGNMENT < (size_t)8U) ||-        ((MALLOC_ALIGNMENT    & (MALLOC_ALIGNMENT-SIZE_T_ONE))    != 0) ||-        ((MCHUNK_SIZE         & (MCHUNK_SIZE-SIZE_T_ONE))         != 0) ||-        ((mparams.granularity & (mparams.granularity-SIZE_T_ONE)) != 0) ||-        ((mparams.page_size   & (mparams.page_size-SIZE_T_ONE))   != 0))-      ABORT;-  }-  return 0;-}--/* support for mallopt */-static int change_mparam(int param_number, int value) {-  size_t val = (size_t)value;-  init_mparams();-  switch(param_number) {-  case M_TRIM_THRESHOLD:-    mparams.trim_threshold = val;-    return 1;-  case M_GRANULARITY:-    if (val >= mparams.page_size && ((val & (val-1)) == 0)) {-      mparams.granularity = val;-      return 1;-    }-    else-      return 0;-  case M_MMAP_THRESHOLD:-    mparams.mmap_threshold = val;-    return 1;-  default:-    return 0;-  }-}--#if DEBUG-/* ------------------------- Debugging Support --------------------------- */--/* Check properties of any chunk, whether free, inuse, mmapped etc  */-static void do_check_any_chunk(mstate m, mchunkptr p) {-  assert((is_aligned(chunk2mem(p))) || (p->head == FENCEPOST_HEAD));-  assert(ok_address(m, p));-}--/* Check properties of top chunk */-static void do_check_top_chunk(mstate m, mchunkptr p) {-  msegmentptr sp = segment_holding(m, (char*)p);-  size_t  sz = chunksize(p);-  assert(sp != 0);-  assert((is_aligned(chunk2mem(p))) || (p->head == FENCEPOST_HEAD));-  assert(ok_address(m, p));-  assert(sz == m->topsize);-  assert(sz > 0);-  assert(sz == ((sp->base + sp->size) - (char*)p) - TOP_FOOT_SIZE);-  assert(pinuse(p));-  assert(!next_pinuse(p));-}--/* Check properties of (inuse) mmapped chunks */-static void do_check_mmapped_chunk(mstate m, mchunkptr p) {-  size_t  sz = chunksize(p);-  size_t len = (sz + (p->prev_foot & ~IS_MMAPPED_BIT) + MMAP_FOOT_PAD);-  assert(is_mmapped(p));-  assert(use_mmap(m));-  assert((is_aligned(chunk2mem(p))) || (p->head == FENCEPOST_HEAD));-  assert(ok_address(m, p));-  assert(!is_small(sz));-  assert((len & (mparams.page_size-SIZE_T_ONE)) == 0);-  assert(chunk_plus_offset(p, sz)->head == FENCEPOST_HEAD);-  assert(chunk_plus_offset(p, sz+SIZE_T_SIZE)->head == 0);-}--/* Check properties of inuse chunks */-static void do_check_inuse_chunk(mstate m, mchunkptr p) {-  do_check_any_chunk(m, p);-  assert(cinuse(p));-  assert(next_pinuse(p));-  /* If not pinuse and not mmapped, previous chunk has OK offset */-  assert(is_mmapped(p) || pinuse(p) || next_chunk(prev_chunk(p)) == p);-  if (is_mmapped(p))-    do_check_mmapped_chunk(m, p);-}--/* Check properties of free chunks */-static void do_check_free_chunk(mstate m, mchunkptr p) {-  size_t sz = p->head & ~(PINUSE_BIT|CINUSE_BIT);-  mchunkptr next = chunk_plus_offset(p, sz);-  do_check_any_chunk(m, p);-  assert(!cinuse(p));-  assert(!next_pinuse(p));-  assert (!is_mmapped(p));-  if (p != m->dv && p != m->top) {-    if (sz >= MIN_CHUNK_SIZE) {-      assert((sz & CHUNK_ALIGN_MASK) == 0);-      assert(is_aligned(chunk2mem(p)));-      assert(next->prev_foot == sz);-      assert(pinuse(p));-      assert (next == m->top || cinuse(next));-      assert(p->fd->bk == p);-      assert(p->bk->fd == p);-    }-    else  /* markers are always of size SIZE_T_SIZE */-      assert(sz == SIZE_T_SIZE);-  }-}--/* Check properties of malloced chunks at the point they are malloced */-static void do_check_malloced_chunk(mstate m, void* mem, size_t s) {-  if (mem != 0) {-    mchunkptr p = mem2chunk(mem);-    size_t sz = p->head & ~(PINUSE_BIT|CINUSE_BIT);-    do_check_inuse_chunk(m, p);-    assert((sz & CHUNK_ALIGN_MASK) == 0);-    assert(sz >= MIN_CHUNK_SIZE);-    assert(sz >= s);-    /* unless mmapped, size is less than MIN_CHUNK_SIZE more than request */-    assert(is_mmapped(p) || sz < (s + MIN_CHUNK_SIZE));-  }-}--/* Check a tree and its subtrees.  */-static void do_check_tree(mstate m, tchunkptr t) {-  tchunkptr head = 0;-  tchunkptr u = t;-  bindex_t tindex = t->index;-  size_t tsize = chunksize(t);-  bindex_t idx;-  compute_tree_index(tsize, idx);-  assert(tindex == idx);-  assert(tsize >= MIN_LARGE_SIZE);-  assert(tsize >= minsize_for_tree_index(idx));-  assert((idx == NTREEBINS-1) || (tsize < minsize_for_tree_index((idx+1))));--  do { /* traverse through chain of same-sized nodes */-    do_check_any_chunk(m, ((mchunkptr)u));-    assert(u->index == tindex);-    assert(chunksize(u) == tsize);-    assert(!cinuse(u));-    assert(!next_pinuse(u));-    assert(u->fd->bk == u);-    assert(u->bk->fd == u);-    if (u->parent == 0) {-      assert(u->child[0] == 0);-      assert(u->child[1] == 0);-    }-    else {-      assert(head == 0); /* only one node on chain has parent */-      head = u;-      assert(u->parent != u);-      assert (u->parent->child[0] == u ||-              u->parent->child[1] == u ||-              *((tbinptr*)(u->parent)) == u);-      if (u->child[0] != 0) {-        assert(u->child[0]->parent == u);-        assert(u->child[0] != u);-        do_check_tree(m, u->child[0]);-      }-      if (u->child[1] != 0) {-        assert(u->child[1]->parent == u);-        assert(u->child[1] != u);-        do_check_tree(m, u->child[1]);-      }-      if (u->child[0] != 0 && u->child[1] != 0) {-        assert(chunksize(u->child[0]) < chunksize(u->child[1]));-      }-    }-    u = u->fd;-  } while (u != t);-  assert(head != 0);-}--/*  Check all the chunks in a treebin.  */-static void do_check_treebin(mstate m, bindex_t i) {-  tbinptr* tb = treebin_at(m, i);-  tchunkptr t = *tb;-  int empty = (m->treemap & (1U << i)) == 0;-  if (t == 0)-    assert(empty);-  if (!empty)-    do_check_tree(m, t);-}--/*  Check all the chunks in a smallbin.  */-static void do_check_smallbin(mstate m, bindex_t i) {-  sbinptr b = smallbin_at(m, i);-  mchunkptr p = b->bk;-  unsigned int empty = (m->smallmap & (1U << i)) == 0;-  if (p == b)-    assert(empty);-  if (!empty) {-    for (; p != b; p = p->bk) {-      size_t size = chunksize(p);-      mchunkptr q;-      /* each chunk claims to be free */-      do_check_free_chunk(m, p);-      /* chunk belongs in bin */-      assert(small_index(size) == i);-      assert(p->bk == b || chunksize(p->bk) == chunksize(p));-      /* chunk is followed by an inuse chunk */-      q = next_chunk(p);-      if (q->head != FENCEPOST_HEAD)-        do_check_inuse_chunk(m, q);-    }-  }-}--/* Find x in a bin. Used in other check functions. */-static int bin_find(mstate m, mchunkptr x) {-  size_t size = chunksize(x);-  if (is_small(size)) {-    bindex_t sidx = small_index(size);-    sbinptr b = smallbin_at(m, sidx);-    if (smallmap_is_marked(m, sidx)) {-      mchunkptr p = b;-      do {-        if (p == x)-          return 1;-      } while ((p = p->fd) != b);-    }-  }-  else {-    bindex_t tidx;-    compute_tree_index(size, tidx);-    if (treemap_is_marked(m, tidx)) {-      tchunkptr t = *treebin_at(m, tidx);-      size_t sizebits = size << leftshift_for_tree_index(tidx);-      while (t != 0 && chunksize(t) != size) {-        t = t->child[(sizebits >> (SIZE_T_BITSIZE-SIZE_T_ONE)) & 1];-        sizebits <<= 1;-      }-      if (t != 0) {-        tchunkptr u = t;-        do {-          if (u == (tchunkptr)x)-            return 1;-        } while ((u = u->fd) != t);-      }-    }-  }-  return 0;-}--/* Traverse each chunk and check it; return total */-static size_t traverse_and_check(mstate m) {-  size_t sum = 0;-  if (is_initialized(m)) {-    msegmentptr s = &m->seg;-    sum += m->topsize + TOP_FOOT_SIZE;-    while (s != 0) {-      mchunkptr q = align_as_chunk(s->base);-      mchunkptr lastq = 0;-      assert(pinuse(q));-      while (segment_holds(s, q) &&-             q != m->top && q->head != FENCEPOST_HEAD) {-        sum += chunksize(q);-        if (cinuse(q)) {-          assert(!bin_find(m, q));-          do_check_inuse_chunk(m, q);-        }-        else {-          assert(q == m->dv || bin_find(m, q));-          assert(lastq == 0 || cinuse(lastq)); /* Not 2 consecutive free */-          do_check_free_chunk(m, q);-        }-        lastq = q;-        q = next_chunk(q);-      }-      s = s->next;-    }-  }-  return sum;-}--/* Check all properties of malloc_state. */-static void do_check_malloc_state(mstate m) {-  bindex_t i;-  size_t total;-  /* check bins */-  for (i = 0; i < NSMALLBINS; ++i)-    do_check_smallbin(m, i);-  for (i = 0; i < NTREEBINS; ++i)-    do_check_treebin(m, i);--  if (m->dvsize != 0) { /* check dv chunk */-    do_check_any_chunk(m, m->dv);-    assert(m->dvsize == chunksize(m->dv));-    assert(m->dvsize >= MIN_CHUNK_SIZE);-    assert(bin_find(m, m->dv) == 0);-  }--  if (m->top != 0) {   /* check top chunk */-    do_check_top_chunk(m, m->top);-    assert(m->topsize == chunksize(m->top));-    assert(m->topsize > 0);-    assert(bin_find(m, m->top) == 0);-  }--  total = traverse_and_check(m);-  assert(total <= m->footprint);-  assert(m->footprint <= m->max_footprint);-}-#endif /* DEBUG */--/* ----------------------------- statistics ------------------------------ */--#if !NO_MALLINFO-static struct mallinfo internal_mallinfo(mstate m) {-  struct mallinfo nm = { 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 };-  if (!PREACTION(m)) {-    check_malloc_state(m);-    if (is_initialized(m)) {-      size_t nfree = SIZE_T_ONE; /* top always free */-      size_t mfree = m->topsize + TOP_FOOT_SIZE;-      size_t sum = mfree;-      msegmentptr s = &m->seg;-      while (s != 0) {-        mchunkptr q = align_as_chunk(s->base);-        while (segment_holds(s, q) &&-               q != m->top && q->head != FENCEPOST_HEAD) {-          size_t sz = chunksize(q);-          sum += sz;-          if (!cinuse(q)) {-            mfree += sz;-            ++nfree;-          }-          q = next_chunk(q);-        }-        s = s->next;-      }--      nm.arena    = sum;-      nm.ordblks  = nfree;-      nm.hblkhd   = m->footprint - sum;-      nm.usmblks  = m->max_footprint;-      nm.uordblks = m->footprint - mfree;-      nm.fordblks = mfree;-      nm.keepcost = m->topsize;-    }--    POSTACTION(m);-  }-  return nm;-}-#endif /* !NO_MALLINFO */--static void internal_malloc_stats(mstate m) {-  if (!PREACTION(m)) {-    size_t maxfp = 0;-    size_t fp = 0;-    size_t used = 0;-    check_malloc_state(m);-    if (is_initialized(m)) {-      msegmentptr s = &m->seg;-      maxfp = m->max_footprint;-      fp = m->footprint;-      used = fp - (m->topsize + TOP_FOOT_SIZE);--      while (s != 0) {-        mchunkptr q = align_as_chunk(s->base);-        while (segment_holds(s, q) &&-               q != m->top && q->head != FENCEPOST_HEAD) {-          if (!cinuse(q))-            used -= chunksize(q);-          q = next_chunk(q);-        }-        s = s->next;-      }-    }--    fprintf(stderr, "max system bytes = %10lu\n", (unsigned long)(maxfp));-    fprintf(stderr, "system bytes     = %10lu\n", (unsigned long)(fp));-    fprintf(stderr, "in use bytes     = %10lu\n", (unsigned long)(used));--    POSTACTION(m);-  }-}--/* ----------------------- Operations on smallbins ----------------------- */--/*-  Various forms of linking and unlinking are defined as macros.  Even-  the ones for trees, which are very long but have very short typical-  paths.  This is ugly but reduces reliance on inlining support of-  compilers.-*/--/* Link a free chunk into a smallbin  */-#define insert_small_chunk(M, P, S) {\-  bindex_t I  = small_index(S);\-  mchunkptr B = smallbin_at(M, I);\-  mchunkptr F = B;\-  assert(S >= MIN_CHUNK_SIZE);\-  if (!smallmap_is_marked(M, I))\-    mark_smallmap(M, I);\-  else if (RTCHECK(ok_address(M, B->fd)))\-    F = B->fd;\-  else {\-    CORRUPTION_ERROR_ACTION(M);\-  }\-  B->fd = P;\-  F->bk = P;\-  P->fd = F;\-  P->bk = B;\-}--/* Unlink a chunk from a smallbin  */-#define unlink_small_chunk(M, P, S) {\-  mchunkptr F = P->fd;\-  mchunkptr B = P->bk;\-  bindex_t I = small_index(S);\-  assert(P != B);\-  assert(P != F);\-  assert(chunksize(P) == small_index2size(I));\-  if (F == B)\-    clear_smallmap(M, I);\-  else if (RTCHECK((F == smallbin_at(M,I) || ok_address(M, F)) &&\-                   (B == smallbin_at(M,I) || ok_address(M, B)))) {\-    F->bk = B;\-    B->fd = F;\-  }\-  else {\-    CORRUPTION_ERROR_ACTION(M);\-  }\-}--/* Unlink the first chunk from a smallbin */-#define unlink_first_small_chunk(M, B, P, I) {\-  mchunkptr F = P->fd;\-  assert(P != B);\-  assert(P != F);\-  assert(chunksize(P) == small_index2size(I));\-  if (B == F)\-    clear_smallmap(M, I);\-  else if (RTCHECK(ok_address(M, F))) {\-    B->fd = F;\-    F->bk = B;\-  }\-  else {\-    CORRUPTION_ERROR_ACTION(M);\-  }\-}--/* Replace dv node, binning the old one */-/* Used only when dvsize known to be small */-#define replace_dv(M, P, S) {\-  size_t DVS = M->dvsize;\-  if (DVS != 0) {\-    mchunkptr DV = M->dv;\-    assert(is_small(DVS));\-    insert_small_chunk(M, DV, DVS);\-  }\-  M->dvsize = S;\-  M->dv = P;\-}--/* ------------------------- Operations on trees ------------------------- */--/* Insert chunk into tree */-#define insert_large_chunk(M, X, S) {\-  tbinptr* H;\-  bindex_t I;\-  compute_tree_index(S, I);\-  H = treebin_at(M, I);\-  X->index = I;\-  X->child[0] = X->child[1] = 0;\-  if (!treemap_is_marked(M, I)) {\-    mark_treemap(M, I);\-    *H = X;\-    X->parent = (tchunkptr)H;\-    X->fd = X->bk = X;\-  }\-  else {\-    tchunkptr T = *H;\-    size_t K = S << leftshift_for_tree_index(I);\-    for (;;) {\-      if (chunksize(T) != S) {\-        tchunkptr* C = &(T->child[(K >> (SIZE_T_BITSIZE-SIZE_T_ONE)) & 1]);\-        K <<= 1;\-        if (*C != 0)\-          T = *C;\-        else if (RTCHECK(ok_address(M, C))) {\-          *C = X;\-          X->parent = T;\-          X->fd = X->bk = X;\-          break;\-        }\-        else {\-          CORRUPTION_ERROR_ACTION(M);\-          break;\-        }\-      }\-      else {\-        tchunkptr F = T->fd;\-        if (RTCHECK(ok_address(M, T) && ok_address(M, F))) {\-          T->fd = F->bk = X;\-          X->fd = F;\-          X->bk = T;\-          X->parent = 0;\-          break;\-        }\-        else {\-          CORRUPTION_ERROR_ACTION(M);\-          break;\-        }\-      }\-    }\-  }\-}--/*-  Unlink steps:--  1. If x is a chained node, unlink it from its same-sized fd/bk links-     and choose its bk node as its replacement.-  2. If x was the last node of its size, but not a leaf node, it must-     be replaced with a leaf node (not merely one with an open left or-     right), to make sure that lefts and rights of descendants-     correspond properly to bit masks.  We use the rightmost descendant-     of x.  We could use any other leaf, but this is easy to locate and-     tends to counteract removal of leftmosts elsewhere, and so keeps-     paths shorter than minimally guaranteed.  This doesn't loop much-     because on average a node in a tree is near the bottom.-  3. If x is the base of a chain (i.e., has parent links) relink-     x's parent and children to x's replacement (or null if none).-*/--#define unlink_large_chunk(M, X) {\-  tchunkptr XP = X->parent;\-  tchunkptr R;\-  if (X->bk != X) {\-    tchunkptr F = X->fd;\-    R = X->bk;\-    if (RTCHECK(ok_address(M, F))) {\-      F->bk = R;\-      R->fd = F;\-    }\-    else {\-      CORRUPTION_ERROR_ACTION(M);\-    }\-  }\-  else {\-    tchunkptr* RP;\-    if (((R = *(RP = &(X->child[1]))) != 0) ||\-        ((R = *(RP = &(X->child[0]))) != 0)) {\-      tchunkptr* CP;\-      while ((*(CP = &(R->child[1])) != 0) ||\-             (*(CP = &(R->child[0])) != 0)) {\-        R = *(RP = CP);\-      }\-      if (RTCHECK(ok_address(M, RP)))\-        *RP = 0;\-      else {\-        CORRUPTION_ERROR_ACTION(M);\-      }\-    }\-  }\-  if (XP != 0) {\-    tbinptr* H = treebin_at(M, X->index);\-    if (X == *H) {\-      if ((*H = R) == 0) \-        clear_treemap(M, X->index);\-    }\-    else if (RTCHECK(ok_address(M, XP))) {\-      if (XP->child[0] == X) \-        XP->child[0] = R;\-      else \-        XP->child[1] = R;\-    }\-    else\-      CORRUPTION_ERROR_ACTION(M);\-    if (R != 0) {\-      if (RTCHECK(ok_address(M, R))) {\-        tchunkptr C0, C1;\-        R->parent = XP;\-        if ((C0 = X->child[0]) != 0) {\-          if (RTCHECK(ok_address(M, C0))) {\-            R->child[0] = C0;\-            C0->parent = R;\-          }\-          else\-            CORRUPTION_ERROR_ACTION(M);\-        }\-        if ((C1 = X->child[1]) != 0) {\-          if (RTCHECK(ok_address(M, C1))) {\-            R->child[1] = C1;\-            C1->parent = R;\-          }\-          else\-            CORRUPTION_ERROR_ACTION(M);\-        }\-      }\-      else\-        CORRUPTION_ERROR_ACTION(M);\-    }\-  }\-}--/* Relays to large vs small bin operations */--#define insert_chunk(M, P, S)\-  if (is_small(S)) insert_small_chunk(M, P, S)\-  else { tchunkptr TP = (tchunkptr)(P); insert_large_chunk(M, TP, S); }--#define unlink_chunk(M, P, S)\-  if (is_small(S)) unlink_small_chunk(M, P, S)\-  else { tchunkptr TP = (tchunkptr)(P); unlink_large_chunk(M, TP); }---/* Relays to internal calls to malloc/free from realloc, memalign etc */--#if ONLY_MSPACES-#define internal_malloc(m, b) mspace_malloc(m, b)-#define internal_free(m, mem) mspace_free(m,mem);-#else /* ONLY_MSPACES */-#if MSPACES-#define internal_malloc(m, b)\-   (m == gm)? dlmalloc(b) : mspace_malloc(m, b)-#define internal_free(m, mem)\-   if (m == gm) dlfree(mem); else mspace_free(m,mem);-#else /* MSPACES */-#define internal_malloc(m, b) dlmalloc(b)-#define internal_free(m, mem) dlfree(mem)-#endif /* MSPACES */-#endif /* ONLY_MSPACES */--/* -----------------------  Direct-mmapping chunks ----------------------- */--/*-  Directly mmapped chunks are set up with an offset to the start of-  the mmapped region stored in the prev_foot field of the chunk. This-  allows reconstruction of the required argument to MUNMAP when freed,-  and also allows adjustment of the returned chunk to meet alignment-  requirements (especially in memalign).  There is also enough space-  allocated to hold a fake next chunk of size SIZE_T_SIZE to maintain-  the PINUSE bit so frees can be checked.-*/--/* Malloc using mmap */-static void* mmap_alloc(mstate m, size_t nb) {-  size_t mmsize = granularity_align(nb + SIX_SIZE_T_SIZES + CHUNK_ALIGN_MASK);-  if (mmsize > nb) {     /* Check for wrap around 0 */-    char* mm = (char*)(DIRECT_MMAP(mmsize));-    if (mm != CMFAIL) {-      size_t offset = align_offset(chunk2mem(mm));-      size_t psize = mmsize - offset - MMAP_FOOT_PAD;-      mchunkptr p = (mchunkptr)(mm + offset);-      p->prev_foot = offset | IS_MMAPPED_BIT;-      (p)->head = (psize|CINUSE_BIT);-      mark_inuse_foot(m, p, psize);-      chunk_plus_offset(p, psize)->head = FENCEPOST_HEAD;-      chunk_plus_offset(p, psize+SIZE_T_SIZE)->head = 0;--      if (mm < m->least_addr)-        m->least_addr = mm;-      if ((m->footprint += mmsize) > m->max_footprint)-        m->max_footprint = m->footprint;-      assert(is_aligned(chunk2mem(p)));-      check_mmapped_chunk(m, p);-      return chunk2mem(p);-    }-  }-  return 0;-}--/* Realloc using mmap */-static mchunkptr mmap_resize(mstate m, mchunkptr oldp, size_t nb) {-  size_t oldsize = chunksize(oldp);-  if (is_small(nb)) /* Can't shrink mmap regions below small size */-    return 0;-  /* Keep old chunk if big enough but not too big */-  if (oldsize >= nb + SIZE_T_SIZE &&-      (oldsize - nb) <= (mparams.granularity << 1))-    return oldp;-  else {-    size_t offset = oldp->prev_foot & ~IS_MMAPPED_BIT;-    size_t oldmmsize = oldsize + offset + MMAP_FOOT_PAD;-    size_t newmmsize = granularity_align(nb + SIX_SIZE_T_SIZES +-                                         CHUNK_ALIGN_MASK);-    char* cp = (char*)CALL_MREMAP((char*)oldp - offset,-                                  oldmmsize, newmmsize, 1);-    if (cp != CMFAIL) {-      mchunkptr newp = (mchunkptr)(cp + offset);-      size_t psize = newmmsize - offset - MMAP_FOOT_PAD;-      newp->head = (psize|CINUSE_BIT);-      mark_inuse_foot(m, newp, psize);-      chunk_plus_offset(newp, psize)->head = FENCEPOST_HEAD;-      chunk_plus_offset(newp, psize+SIZE_T_SIZE)->head = 0;--      if (cp < m->least_addr)-        m->least_addr = cp;-      if ((m->footprint += newmmsize - oldmmsize) > m->max_footprint)-        m->max_footprint = m->footprint;-      check_mmapped_chunk(m, newp);-      return newp;-    }-  }-  return 0;-}--/* -------------------------- mspace management -------------------------- */--/* Initialize top chunk and its size */-static void init_top(mstate m, mchunkptr p, size_t psize) {-  /* Ensure alignment */-  size_t offset = align_offset(chunk2mem(p));-  p = (mchunkptr)((char*)p + offset);-  psize -= offset;--  m->top = p;-  m->topsize = psize;-  p->head = psize | PINUSE_BIT;-  /* set size of fake trailing chunk holding overhead space only once */-  chunk_plus_offset(p, psize)->head = TOP_FOOT_SIZE;-  m->trim_check = mparams.trim_threshold; /* reset on each update */-}--/* Initialize bins for a new mstate that is otherwise zeroed out */-static void init_bins(mstate m) {-  /* Establish circular links for smallbins */-  bindex_t i;-  for (i = 0; i < NSMALLBINS; ++i) {-    sbinptr bin = smallbin_at(m,i);-    bin->fd = bin->bk = bin;-  }-}--#if PROCEED_ON_ERROR--/* default corruption action */-static void reset_on_error(mstate m) {-  int i;-  ++malloc_corruption_error_count;-  /* Reinitialize fields to forget about all memory */-  m->smallbins = m->treebins = 0;-  m->dvsize = m->topsize = 0;-  m->seg.base = 0;-  m->seg.size = 0;-  m->seg.next = 0;-  m->top = m->dv = 0;-  for (i = 0; i < NTREEBINS; ++i)-    *treebin_at(m, i) = 0;-  init_bins(m);-}-#endif /* PROCEED_ON_ERROR */--/* Allocate chunk and prepend remainder with chunk in successor base. */-static void* prepend_alloc(mstate m, char* newbase, char* oldbase,-                           size_t nb) {-  mchunkptr p = align_as_chunk(newbase);-  mchunkptr oldfirst = align_as_chunk(oldbase);-  size_t psize = (char*)oldfirst - (char*)p;-  mchunkptr q = chunk_plus_offset(p, nb);-  size_t qsize = psize - nb;-  set_size_and_pinuse_of_inuse_chunk(m, p, nb);--  assert((char*)oldfirst > (char*)q);-  assert(pinuse(oldfirst));-  assert(qsize >= MIN_CHUNK_SIZE);--  /* consolidate remainder with first chunk of old base */-  if (oldfirst == m->top) {-    size_t tsize = m->topsize += qsize;-    m->top = q;-    q->head = tsize | PINUSE_BIT;-    check_top_chunk(m, q);-  }-  else if (oldfirst == m->dv) {-    size_t dsize = m->dvsize += qsize;-    m->dv = q;-    set_size_and_pinuse_of_free_chunk(q, dsize);-  }-  else {-    if (!cinuse(oldfirst)) {-      size_t nsize = chunksize(oldfirst);-      unlink_chunk(m, oldfirst, nsize);-      oldfirst = chunk_plus_offset(oldfirst, nsize);-      qsize += nsize;-    }-    set_free_with_pinuse(q, qsize, oldfirst);-    insert_chunk(m, q, qsize);-    check_free_chunk(m, q);-  }--  check_malloced_chunk(m, chunk2mem(p), nb);-  return chunk2mem(p);-}---/* Add a segment to hold a new noncontiguous region */-static void add_segment(mstate m, char* tbase, size_t tsize, flag_t mmapped) {-  /* Determine locations and sizes of segment, fenceposts, old top */-  char* old_top = (char*)m->top;-  msegmentptr oldsp = segment_holding(m, old_top);-  char* old_end = oldsp->base + oldsp->size;-  size_t ssize = pad_request(sizeof(struct malloc_segment));-  char* rawsp = old_end - (ssize + FOUR_SIZE_T_SIZES + CHUNK_ALIGN_MASK);-  size_t offset = align_offset(chunk2mem(rawsp));-  char* asp = rawsp + offset;-  char* csp = (asp < (old_top + MIN_CHUNK_SIZE))? old_top : asp;-  mchunkptr sp = (mchunkptr)csp;-  msegmentptr ss = (msegmentptr)(chunk2mem(sp));-  mchunkptr tnext = chunk_plus_offset(sp, ssize);-  mchunkptr p = tnext;-  int nfences = 0;-  (void)nfences; // Suppress unused variable warning--  /* reset top to new space */-  init_top(m, (mchunkptr)tbase, tsize - TOP_FOOT_SIZE);--  /* Set up segment record */-  assert(is_aligned(ss));-  set_size_and_pinuse_of_inuse_chunk(m, sp, ssize);-  *ss = m->seg; /* Push current record */-  m->seg.base = tbase;-  m->seg.size = tsize;-  (void)set_segment_flags(&m->seg, mmapped);-  m->seg.next = ss;--  /* Insert trailing fenceposts */-  for (;;) {-    mchunkptr nextp = chunk_plus_offset(p, SIZE_T_SIZE);-    p->head = FENCEPOST_HEAD;-    ++nfences;-    if ((char*)(&(nextp->head)) < old_end)-      p = nextp;-    else-      break;-  }-  assert(nfences >= 2);--  /* Insert the rest of old top into a bin as an ordinary free chunk */-  if (csp != old_top) {-    mchunkptr q = (mchunkptr)old_top;-    size_t psize = csp - old_top;-    mchunkptr tn = chunk_plus_offset(q, psize);-    set_free_with_pinuse(q, psize, tn);-    insert_chunk(m, q, psize);-  }--  check_top_chunk(m, m->top);-}--/* -------------------------- System allocation -------------------------- */--/* Get memory from system using MORECORE or MMAP */-static void* sys_alloc(mstate m, size_t nb) {-  char* tbase = CMFAIL;-  size_t tsize = 0;-  flag_t mmap_flag = 0;--  init_mparams();--  /* Directly map large chunks */-  if (use_mmap(m) && nb >= mparams.mmap_threshold) {-    void* mem = mmap_alloc(m, nb);-    if (mem != 0)-      return mem;-  }--  /*-    Try getting memory in any of three ways (in most-preferred to-    least-preferred order):-    1. A call to MORECORE that can normally contiguously extend memory.-       (disabled if not MORECORE_CONTIGUOUS or not HAVE_MORECORE or-       or main space is mmapped or a previous contiguous call failed)-    2. A call to MMAP new space (disabled if not HAVE_MMAP).-       Note that under the default settings, if MORECORE is unable to-       fulfill a request, and HAVE_MMAP is true, then mmap is-       used as a noncontiguous system allocator. This is a useful backup-       strategy for systems with holes in address spaces -- in this case-       sbrk cannot contiguously expand the heap, but mmap may be able to-       find space.-    3. A call to MORECORE that cannot usually contiguously extend memory.-       (disabled if not HAVE_MORECORE)-  */--  if (MORECORE_CONTIGUOUS && !use_noncontiguous(m)) {-    char* br = CMFAIL;-    msegmentptr ss = (m->top == 0)? 0 : segment_holding(m, (char*)m->top);-    size_t asize = 0;-    ACQUIRE_MORECORE_LOCK();--    if (ss == 0) {  /* First time through or recovery */-      char* base = (char*)CALL_MORECORE(0);-      if (base != CMFAIL) {-        asize = granularity_align(nb + TOP_FOOT_SIZE + SIZE_T_ONE);-        /* Adjust to end on a page boundary */-        if (!is_page_aligned(base))-          asize += (page_align((size_t)base) - (size_t)base);-        /* Can't call MORECORE if size is negative when treated as signed */-        if (asize < HALF_MAX_SIZE_T &&-            (br = (char*)(CALL_MORECORE(asize))) == base) {-          tbase = base;-          tsize = asize;-        }-      }-    }-    else {-      /* Subtract out existing available top space from MORECORE request. */-      asize = granularity_align(nb - m->topsize + TOP_FOOT_SIZE + SIZE_T_ONE);-      /* Use mem here only if it did continuously extend old space */-      if (asize < HALF_MAX_SIZE_T &&-          (br = (char*)(CALL_MORECORE(asize))) == ss->base+ss->size) {-        tbase = br;-        tsize = asize;-      }-    }--    if (tbase == CMFAIL) {    /* Cope with partial failure */-      if (br != CMFAIL) {    /* Try to use/extend the space we did get */-        if (asize < HALF_MAX_SIZE_T &&-            asize < nb + TOP_FOOT_SIZE + SIZE_T_ONE) {-          size_t esize = granularity_align(nb + TOP_FOOT_SIZE + SIZE_T_ONE - asize);-          if (esize < HALF_MAX_SIZE_T) {-            char* end = (char*)CALL_MORECORE(esize);-            if (end != CMFAIL)-              asize += esize;-            else {            /* Can't use; try to release */-              (void)CALL_MORECORE(-asize);-              br = CMFAIL;-            }-          }-        }-      }-      if (br != CMFAIL) {    /* Use the space we did get */-        tbase = br;-        tsize = asize;-      }-      else-        disable_contiguous(m); /* Don't try contiguous path in the future */-    }--    RELEASE_MORECORE_LOCK();-  }--  if (HAVE_MMAP && tbase == CMFAIL) {  /* Try MMAP */-    size_t req = nb + TOP_FOOT_SIZE + SIZE_T_ONE;-    size_t rsize = granularity_align(req);-    if (rsize > nb) { /* Fail if wraps around zero */-      char* mp = (char*)(CALL_MMAP(rsize));-      if (mp != CMFAIL) {-        tbase = mp;-        tsize = rsize;-        mmap_flag = IS_MMAPPED_BIT;-      }-    }-  }--  if (HAVE_MORECORE && tbase == CMFAIL) { /* Try noncontiguous MORECORE */-    size_t asize = granularity_align(nb + TOP_FOOT_SIZE + SIZE_T_ONE);-    if (asize < HALF_MAX_SIZE_T) {-      char* br = CMFAIL;-      char* end = CMFAIL;-      ACQUIRE_MORECORE_LOCK();-      br = (char*)(CALL_MORECORE(asize));-      end = (char*)(CALL_MORECORE(0));-      RELEASE_MORECORE_LOCK();-      if (br != CMFAIL && end != CMFAIL && br < end) {-        size_t ssize = end - br;-        if (ssize > nb + TOP_FOOT_SIZE) {-          tbase = br;-          tsize = ssize;-        }-      }-    }-  }--  if (tbase != CMFAIL) {--    if ((m->footprint += tsize) > m->max_footprint)-      m->max_footprint = m->footprint;--    if (!is_initialized(m)) { /* first-time initialization */-      m->seg.base = m->least_addr = tbase;-      m->seg.size = tsize;-      (void)set_segment_flags(&m->seg, mmap_flag);-      m->magic = mparams.magic;-      init_bins(m);-      if (is_global(m)) -        init_top(m, (mchunkptr)tbase, tsize - TOP_FOOT_SIZE);-      else {-        /* Offset top by embedded malloc_state */-        mchunkptr mn = next_chunk(mem2chunk(m));-        init_top(m, mn, (size_t)((tbase + tsize) - (char*)mn) -TOP_FOOT_SIZE);-      }-    }--    else {-      /* Try to merge with an existing segment */-      msegmentptr sp = &m->seg;-      while (sp != 0 && tbase != sp->base + sp->size)-        sp = sp->next;-      if (sp != 0 &&-          !is_extern_segment(sp) &&-	  check_segment_merge(sp, tbase, tsize) &&-          (get_segment_flags(sp) & IS_MMAPPED_BIT) == mmap_flag &&-          segment_holds(sp, m->top)) { /* append */-        sp->size += tsize;-        init_top(m, m->top, m->topsize + tsize);-      }-      else {-        if (tbase < m->least_addr)-          m->least_addr = tbase;-        sp = &m->seg;-        while (sp != 0 && sp->base != tbase + tsize)-          sp = sp->next;-        if (sp != 0 &&-            !is_extern_segment(sp) &&-	    check_segment_merge(sp, tbase, tsize) &&-            (get_segment_flags(sp) & IS_MMAPPED_BIT) == mmap_flag) {-          char* oldbase = sp->base;-          sp->base = tbase;-          sp->size += tsize;-          return prepend_alloc(m, tbase, oldbase, nb);-        }-        else-          add_segment(m, tbase, tsize, mmap_flag);-      }-    }--    if (nb < m->topsize) { /* Allocate from new or extended top space */-      size_t rsize = m->topsize -= nb;-      mchunkptr p = m->top;-      mchunkptr r = m->top = chunk_plus_offset(p, nb);-      r->head = rsize | PINUSE_BIT;-      set_size_and_pinuse_of_inuse_chunk(m, p, nb);-      check_top_chunk(m, m->top);-      check_malloced_chunk(m, chunk2mem(p), nb);-      return chunk2mem(p);-    }-  }--  MALLOC_FAILURE_ACTION;-  return 0;-}--/* -----------------------  system deallocation -------------------------- */--/* Unmap and unlink any mmapped segments that don't contain used chunks */-static size_t release_unused_segments(mstate m) {-  size_t released = 0;-  msegmentptr pred = &m->seg;-  msegmentptr sp = pred->next;-  while (sp != 0) {-    char* base = sp->base;-    size_t size = sp->size;-    msegmentptr next = sp->next;-    if (is_mmapped_segment(sp) && !is_extern_segment(sp)) {-      mchunkptr p = align_as_chunk(base);-      size_t psize = chunksize(p);-      /* Can unmap if first chunk holds entire segment and not pinned */-      if (!cinuse(p) && (char*)p + psize >= base + size - TOP_FOOT_SIZE) {-        tchunkptr tp = (tchunkptr)p;-        assert(segment_holds(sp, (char*)sp));-        if (p == m->dv) {-          m->dv = 0;-          m->dvsize = 0;-        }-        else {-          unlink_large_chunk(m, tp);-        }-        if (CALL_MUNMAP(base, size) == 0) {-          released += size;-          m->footprint -= size;-          /* unlink obsoleted record */-          sp = pred;-          sp->next = next;-        }-        else { /* back out if cannot unmap */-          insert_large_chunk(m, tp, psize);-        }-      }-    }-    pred = sp;-    sp = next;-  }-  return released;-}--static int sys_trim(mstate m, size_t pad) {-  size_t released = 0;-  if (pad < MAX_REQUEST && is_initialized(m)) {-    pad += TOP_FOOT_SIZE; /* ensure enough room for segment overhead */--    if (m->topsize > pad) {-      /* Shrink top space in granularity-size units, keeping at least one */-      size_t unit = mparams.granularity;-      size_t extra = ((m->topsize - pad + (unit - SIZE_T_ONE)) / unit --                      SIZE_T_ONE) * unit;-      msegmentptr sp = segment_holding(m, (char*)m->top);--      if (!is_extern_segment(sp)) {-        if (is_mmapped_segment(sp)) {-          if (HAVE_MMAP &&-              sp->size >= extra &&-              !has_segment_link(m, sp)) { /* can't shrink if pinned */-            size_t newsize = sp->size - extra;-            /* Prefer mremap, fall back to munmap */-            if ((CALL_MREMAP(sp->base, sp->size, newsize, 0) != MFAIL) ||-                (CALL_MUNMAP(sp->base + newsize, extra) == 0)) {-              released = extra;-            }-          }-        }-        else if (HAVE_MORECORE) {-          if (extra >= HALF_MAX_SIZE_T) /* Avoid wrapping negative */-            extra = (HALF_MAX_SIZE_T) + SIZE_T_ONE - unit;-          ACQUIRE_MORECORE_LOCK();-          {-            /* Make sure end of memory is where we last set it. */-            char* old_br = (char*)(CALL_MORECORE(0));-            if (old_br == sp->base + sp->size) {-              char* rel_br = (char*)(CALL_MORECORE(-extra));-              char* new_br = (char*)(CALL_MORECORE(0));-              if (rel_br != CMFAIL && new_br < old_br)-                released = old_br - new_br;-            }-          }-          RELEASE_MORECORE_LOCK();-        }-      }--      if (released != 0) {-        sp->size -= released;-        m->footprint -= released;-        init_top(m, m->top, m->topsize - released);-        check_top_chunk(m, m->top);-      }-    }--    /* Unmap any unused mmapped segments */-    if (HAVE_MMAP) -      released += release_unused_segments(m);--    /* On failure, disable autotrim to avoid repeated failed future calls */-    if (released == 0)-      m->trim_check = MAX_SIZE_T;-  }--  return (released != 0)? 1 : 0;-}--/* ---------------------------- malloc support --------------------------- */--/* allocate a large request from the best fitting chunk in a treebin */-static void* tmalloc_large(mstate m, size_t nb) {-  tchunkptr v = 0;-  size_t rsize = -nb; /* Unsigned negation */-  tchunkptr t;-  bindex_t idx;-  compute_tree_index(nb, idx);--  if ((t = *treebin_at(m, idx)) != 0) {-    /* Traverse tree for this bin looking for node with size == nb */-    size_t sizebits = nb << leftshift_for_tree_index(idx);-    tchunkptr rst = 0;  /* The deepest untaken right subtree */-    for (;;) {-      tchunkptr rt;-      size_t trem = chunksize(t) - nb;-      if (trem < rsize) {-        v = t;-        if ((rsize = trem) == 0)-          break;-      }-      rt = t->child[1];-      t = t->child[(sizebits >> (SIZE_T_BITSIZE-SIZE_T_ONE)) & 1];-      if (rt != 0 && rt != t)-        rst = rt;-      if (t == 0) {-        t = rst; /* set t to least subtree holding sizes > nb */-        break;-      }-      sizebits <<= 1;-    }-  }--  if (t == 0 && v == 0) { /* set t to root of next non-empty treebin */-    binmap_t leftbits = left_bits(idx2bit(idx)) & m->treemap;-    if (leftbits != 0) {-      bindex_t i;-      binmap_t leastbit = least_bit(leftbits);-      compute_bit2idx(leastbit, i);-      t = *treebin_at(m, i);-    }-  }--  while (t != 0) { /* find smallest of tree or subtree */-    size_t trem = chunksize(t) - nb;-    if (trem < rsize) {-      rsize = trem;-      v = t;-    }-    t = leftmost_child(t);-  }--  /*  If dv is a better fit, return 0 so malloc will use it */-  if (v != 0 && rsize < (size_t)(m->dvsize - nb)) {-    if (RTCHECK(ok_address(m, v))) { /* split */-      mchunkptr r = chunk_plus_offset(v, nb);-      assert(chunksize(v) == rsize + nb);-      if (RTCHECK(ok_next(v, r))) {-        unlink_large_chunk(m, v);-        if (rsize < MIN_CHUNK_SIZE)-          set_inuse_and_pinuse(m, v, (rsize + nb));-        else {-          set_size_and_pinuse_of_inuse_chunk(m, v, nb);-          set_size_and_pinuse_of_free_chunk(r, rsize);-          insert_chunk(m, r, rsize);-        }-        return chunk2mem(v);-      }-    }-    CORRUPTION_ERROR_ACTION(m);-  }-  return 0;-}--/* allocate a small request from the best fitting chunk in a treebin */-static void* tmalloc_small(mstate m, size_t nb) {-  tchunkptr t, v;-  size_t rsize;-  bindex_t i;-  binmap_t leastbit = least_bit(m->treemap);-  compute_bit2idx(leastbit, i);--  v = t = *treebin_at(m, i);-  rsize = chunksize(t) - nb;--  while ((t = leftmost_child(t)) != 0) {-    size_t trem = chunksize(t) - nb;-    if (trem < rsize) {-      rsize = trem;-      v = t;-    }-  }--  if (RTCHECK(ok_address(m, v))) {-    mchunkptr r = chunk_plus_offset(v, nb);-    assert(chunksize(v) == rsize + nb);-    if (RTCHECK(ok_next(v, r))) {-      unlink_large_chunk(m, v);-      if (rsize < MIN_CHUNK_SIZE)-        set_inuse_and_pinuse(m, v, (rsize + nb));-      else {-        set_size_and_pinuse_of_inuse_chunk(m, v, nb);-        set_size_and_pinuse_of_free_chunk(r, rsize);-        replace_dv(m, r, rsize);-      }-      return chunk2mem(v);-    }-  }--  CORRUPTION_ERROR_ACTION(m);-  return 0;-}--/* --------------------------- realloc support --------------------------- */--static void* internal_realloc(mstate m, void* oldmem, size_t bytes) {-  if (bytes >= MAX_REQUEST) {-    MALLOC_FAILURE_ACTION;-    return 0;-  }-  if (!PREACTION(m)) {-    mchunkptr oldp = mem2chunk(oldmem);-    size_t oldsize = chunksize(oldp);-    mchunkptr next = chunk_plus_offset(oldp, oldsize);-    mchunkptr newp = 0;-    void* extra = 0;--    /* Try to either shrink or extend into top. Else malloc-copy-free */--    if (RTCHECK(ok_address(m, oldp) && ok_cinuse(oldp) &&-                ok_next(oldp, next) && ok_pinuse(next))) {-      size_t nb = request2size(bytes);-      if (is_mmapped(oldp))-        newp = mmap_resize(m, oldp, nb);-      else if (oldsize >= nb) { /* already big enough */-        size_t rsize = oldsize - nb;-        newp = oldp;-        if (rsize >= MIN_CHUNK_SIZE) {-          mchunkptr remainder = chunk_plus_offset(newp, nb);-          set_inuse(m, newp, nb);-          set_inuse(m, remainder, rsize);-          extra = chunk2mem(remainder);-        }-      }-      else if (next == m->top && oldsize + m->topsize > nb) {-        /* Expand into top */-        size_t newsize = oldsize + m->topsize;-        size_t newtopsize = newsize - nb;-        mchunkptr newtop = chunk_plus_offset(oldp, nb);-        set_inuse(m, oldp, nb);-        newtop->head = newtopsize |PINUSE_BIT;-        m->top = newtop;-        m->topsize = newtopsize;-        newp = oldp;-      }-    }-    else {-      USAGE_ERROR_ACTION(m, oldmem);-      POSTACTION(m);-      return 0;-    }--    POSTACTION(m);--    if (newp != 0) {-      if (extra != 0) {-        internal_free(m, extra);-      }-      check_inuse_chunk(m, newp);-      return chunk2mem(newp);-    }-    else {-      void* newmem = internal_malloc(m, bytes);-      if (newmem != 0) {-        size_t oc = oldsize - overhead_for(oldp);-        memcpy(newmem, oldmem, (oc < bytes)? oc : bytes);-        internal_free(m, oldmem);-      }-      return newmem;-    }-  }-  return 0;-}--/* --------------------------- memalign support -------------------------- */--static void* internal_memalign(mstate m, size_t alignment, size_t bytes) {-  if (alignment <= MALLOC_ALIGNMENT)    /* Can just use malloc */-    return internal_malloc(m, bytes);-  if (alignment <  MIN_CHUNK_SIZE) /* must be at least a minimum chunk size */-    alignment = MIN_CHUNK_SIZE;-  if ((alignment & (alignment-SIZE_T_ONE)) != 0) {/* Ensure a power of 2 */-    size_t a = MALLOC_ALIGNMENT << 1;-    while (a < alignment) a <<= 1;-    alignment = a;-  }-  -  if (bytes >= MAX_REQUEST - alignment) {-    if (m != 0)  { /* Test isn't needed but avoids compiler warning */-      MALLOC_FAILURE_ACTION;-    }-  }-  else {-    size_t nb = request2size(bytes);-    size_t req = nb + alignment + MIN_CHUNK_SIZE - CHUNK_OVERHEAD;-    char* mem = (char*)internal_malloc(m, req);-    if (mem != 0) {-      void* leader = 0;-      void* trailer = 0;-      mchunkptr p = mem2chunk(mem);--      if (PREACTION(m)) return 0;-      if ((((size_t)(mem)) % alignment) != 0) { /* misaligned */-        /*-          Find an aligned spot inside chunk.  Since we need to give-          back leading space in a chunk of at least MIN_CHUNK_SIZE, if-          the first calculation places us at a spot with less than-          MIN_CHUNK_SIZE leader, we can move to the next aligned spot.-          We've allocated enough total room so that this is always-          possible.-        */-        char* br = (char*)mem2chunk((size_t)(((size_t)(mem +-                                                       alignment --                                                       SIZE_T_ONE)) &-                                             -alignment));-        char* pos = ((size_t)(br - (char*)(p)) >= MIN_CHUNK_SIZE)?-          br : br+alignment;-        mchunkptr newp = (mchunkptr)pos;-        size_t leadsize = pos - (char*)(p);-        size_t newsize = chunksize(p) - leadsize;--        if (is_mmapped(p)) { /* For mmapped chunks, just adjust offset */-          newp->prev_foot = p->prev_foot + leadsize;-          newp->head = (newsize|CINUSE_BIT);-        }-        else { /* Otherwise, give back leader, use the rest */-          set_inuse(m, newp, newsize);-          set_inuse(m, p, leadsize);-          leader = chunk2mem(p);-        }-        p = newp;-      }--      /* Give back spare room at the end */-      if (!is_mmapped(p)) {-        size_t size = chunksize(p);-        if (size > nb + MIN_CHUNK_SIZE) {-          size_t remainder_size = size - nb;-          mchunkptr remainder = chunk_plus_offset(p, nb);-          set_inuse(m, p, nb);-          set_inuse(m, remainder, remainder_size);-          trailer = chunk2mem(remainder);-        }-      }--      assert (chunksize(p) >= nb);-      assert((((size_t)(chunk2mem(p))) % alignment) == 0);-      check_inuse_chunk(m, p);-      POSTACTION(m);-      if (leader != 0) {-        internal_free(m, leader);-      }-      if (trailer != 0) {-        internal_free(m, trailer);-      }-      return chunk2mem(p);-    }-  }-  return 0;-}--/* ------------------------ comalloc/coalloc support --------------------- */--static void** ialloc(mstate m,-                     size_t n_elements,-                     size_t* sizes,-                     int opts,-                     void* chunks[]) {-  /*-    This provides common support for independent_X routines, handling-    all of the combinations that can result.--    The opts arg has:-    bit 0 set if all elements are same size (using sizes[0])-    bit 1 set if elements should be zeroed-  */--  size_t    element_size;   /* chunksize of each element, if all same */-  size_t    contents_size;  /* total size of elements */-  size_t    array_size;     /* request size of pointer array */-  void*     mem;            /* malloced aggregate space */-  mchunkptr p;              /* corresponding chunk */-  size_t    remainder_size; /* remaining bytes while splitting */-  void**    marray;         /* either "chunks" or malloced ptr array */-  mchunkptr array_chunk;    /* chunk for malloced ptr array */-  flag_t    was_enabled;    /* to disable mmap */-  size_t    size;-  size_t    i;--  /* compute array length, if needed */-  if (chunks != 0) {-    if (n_elements == 0)-      return chunks; /* nothing to do */-    marray = chunks;-    array_size = 0;-  }-  else {-    /* if empty req, must still return chunk representing empty array */-    if (n_elements == 0)-      return (void**)internal_malloc(m, 0);-    marray = 0;-    array_size = request2size(n_elements * (sizeof(void*)));-  }--  /* compute total element size */-  if (opts & 0x1) { /* all-same-size */-    element_size = request2size(*sizes);-    contents_size = n_elements * element_size;-  }-  else { /* add up all the sizes */-    element_size = 0;-    contents_size = 0;-    for (i = 0; i != n_elements; ++i)-      contents_size += request2size(sizes[i]);-  }--  size = contents_size + array_size;--  /*-     Allocate the aggregate chunk.  First disable direct-mmapping so-     malloc won't use it, since we would not be able to later-     free/realloc space internal to a segregated mmap region.-  */-  was_enabled = use_mmap(m);-  disable_mmap(m);-  mem = internal_malloc(m, size - CHUNK_OVERHEAD);-  if (was_enabled)-    enable_mmap(m);-  if (mem == 0)-    return 0;--  if (PREACTION(m)) return 0;-  p = mem2chunk(mem);-  remainder_size = chunksize(p);--  assert(!is_mmapped(p));--  if (opts & 0x2) {       /* optionally clear the elements */-    memset((size_t*)mem, 0, remainder_size - SIZE_T_SIZE - array_size);-  }--  /* If not provided, allocate the pointer array as final part of chunk */-  if (marray == 0) {-    size_t  array_chunk_size;-    array_chunk = chunk_plus_offset(p, contents_size);-    array_chunk_size = remainder_size - contents_size;-    marray = (void**) (chunk2mem(array_chunk));-    set_size_and_pinuse_of_inuse_chunk(m, array_chunk, array_chunk_size);-    remainder_size = contents_size;-  }--  /* split out elements */-  for (i = 0; ; ++i) {-    marray[i] = chunk2mem(p);-    if (i != n_elements-1) {-      if (element_size != 0)-        size = element_size;-      else-        size = request2size(sizes[i]);-      remainder_size -= size;-      set_size_and_pinuse_of_inuse_chunk(m, p, size);-      p = chunk_plus_offset(p, size);-    }-    else { /* the final element absorbs any overallocation slop */-      set_size_and_pinuse_of_inuse_chunk(m, p, remainder_size);-      break;-    }-  }--#if DEBUG-  if (marray != chunks) {-    /* final element must have exactly exhausted chunk */-    if (element_size != 0) {-      assert(remainder_size == element_size);-    }-    else {-      assert(remainder_size == request2size(sizes[i]));-    }-    check_inuse_chunk(m, mem2chunk(marray));-  }-  for (i = 0; i != n_elements; ++i)-    check_inuse_chunk(m, mem2chunk(marray[i]));--#endif /* DEBUG */--  POSTACTION(m);-  return marray;-}---/* -------------------------- public routines ---------------------------- */--#if !ONLY_MSPACES--void* dlmalloc(size_t bytes) {-  /*-     Basic algorithm:-     If a small request (< 256 bytes minus per-chunk overhead):-       1. If one exists, use a remainderless chunk in associated smallbin.-          (Remainderless means that there are too few excess bytes to-          represent as a chunk.)-       2. If it is big enough, use the dv chunk, which is normally the-          chunk adjacent to the one used for the most recent small request.-       3. If one exists, split the smallest available chunk in a bin,-          saving remainder in dv.-       4. If it is big enough, use the top chunk.-       5. If available, get memory from system and use it-     Otherwise, for a large request:-       1. Find the smallest available binned chunk that fits, and use it-          if it is better fitting than dv chunk, splitting if necessary.-       2. If better fitting than any binned chunk, use the dv chunk.-       3. If it is big enough, use the top chunk.-       4. If request size >= mmap threshold, try to directly mmap this chunk.-       5. If available, get memory from system and use it--     The ugly goto's here ensure that postaction occurs along all paths.-  */--  if (!PREACTION(gm)) {-    void* mem;-    size_t nb;-    if (bytes <= MAX_SMALL_REQUEST) {-      bindex_t idx;-      binmap_t smallbits;-      nb = (bytes < MIN_REQUEST)? MIN_CHUNK_SIZE : pad_request(bytes);-      idx = small_index(nb);-      smallbits = gm->smallmap >> idx;--      if ((smallbits & 0x3U) != 0) { /* Remainderless fit to a smallbin. */-        mchunkptr b, p;-        idx += ~smallbits & 1;       /* Uses next bin if idx empty */-        b = smallbin_at(gm, idx);-        p = b->fd;-        assert(chunksize(p) == small_index2size(idx));-        unlink_first_small_chunk(gm, b, p, idx);-        set_inuse_and_pinuse(gm, p, small_index2size(idx));-        mem = chunk2mem(p);-        check_malloced_chunk(gm, mem, nb);-        goto postaction;-      }--      else if (nb > gm->dvsize) {-        if (smallbits != 0) { /* Use chunk in next nonempty smallbin */-          mchunkptr b, p, r;-          size_t rsize;-          bindex_t i;-          binmap_t leftbits = (smallbits << idx) & left_bits(idx2bit(idx));-          binmap_t leastbit = least_bit(leftbits);-          compute_bit2idx(leastbit, i);-          b = smallbin_at(gm, i);-          p = b->fd;-          assert(chunksize(p) == small_index2size(i));-          unlink_first_small_chunk(gm, b, p, i);-          rsize = small_index2size(i) - nb;-          /* Fit here cannot be remainderless if 4byte sizes */-          if (SIZE_T_SIZE != 4 && rsize < MIN_CHUNK_SIZE)-            set_inuse_and_pinuse(gm, p, small_index2size(i));-          else {-            set_size_and_pinuse_of_inuse_chunk(gm, p, nb);-            r = chunk_plus_offset(p, nb);-            set_size_and_pinuse_of_free_chunk(r, rsize);-            replace_dv(gm, r, rsize);-          }-          mem = chunk2mem(p);-          check_malloced_chunk(gm, mem, nb);-          goto postaction;-        }--        else if (gm->treemap != 0 && (mem = tmalloc_small(gm, nb)) != 0) {-          check_malloced_chunk(gm, mem, nb);-          goto postaction;-        }-      }-    }-    else if (bytes >= MAX_REQUEST)-      nb = MAX_SIZE_T; /* Too big to allocate. Force failure (in sys alloc) */-    else {-      nb = pad_request(bytes);-      if (gm->treemap != 0 && (mem = tmalloc_large(gm, nb)) != 0) {-        check_malloced_chunk(gm, mem, nb);-        goto postaction;-      }-    }--    if (nb <= gm->dvsize) {-      size_t rsize = gm->dvsize - nb;-      mchunkptr p = gm->dv;-      if (rsize >= MIN_CHUNK_SIZE) { /* split dv */-        mchunkptr r = gm->dv = chunk_plus_offset(p, nb);-        gm->dvsize = rsize;-        set_size_and_pinuse_of_free_chunk(r, rsize);-        set_size_and_pinuse_of_inuse_chunk(gm, p, nb);-      }-      else { /* exhaust dv */-        size_t dvs = gm->dvsize;-        gm->dvsize = 0;-        gm->dv = 0;-        set_inuse_and_pinuse(gm, p, dvs);-      }-      mem = chunk2mem(p);-      check_malloced_chunk(gm, mem, nb);-      goto postaction;-    }--    else if (nb < gm->topsize) { /* Split top */-      size_t rsize = gm->topsize -= nb;-      mchunkptr p = gm->top;-      mchunkptr r = gm->top = chunk_plus_offset(p, nb);-      r->head = rsize | PINUSE_BIT;-      set_size_and_pinuse_of_inuse_chunk(gm, p, nb);-      mem = chunk2mem(p);-      check_top_chunk(gm, gm->top);-      check_malloced_chunk(gm, mem, nb);-      goto postaction;-    }--    mem = sys_alloc(gm, nb);--  postaction:-    POSTACTION(gm);-    return mem;-  }--  return 0;-}--void dlfree(void* mem) {-  /*-     Consolidate freed chunks with preceding or succeeding bordering-     free chunks, if they exist, and then place in a bin.  Intermixed-     with special cases for top, dv, mmapped chunks, and usage errors.-  */--  if (mem != 0) {-    mchunkptr p  = mem2chunk(mem);-#if FOOTERS-    mstate fm = get_mstate_for(p);-    if (!ok_magic(fm)) {-      USAGE_ERROR_ACTION(fm, p);-      return;-    }-#else /* FOOTERS */-#define fm gm-#endif /* FOOTERS */-    if (!PREACTION(fm)) {-      check_inuse_chunk(fm, p);-      if (RTCHECK(ok_address(fm, p) && ok_cinuse(p))) {-        size_t psize = chunksize(p);-        mchunkptr next = chunk_plus_offset(p, psize);-        if (!pinuse(p)) {-          size_t prevsize = p->prev_foot;-          if ((prevsize & IS_MMAPPED_BIT) != 0) {-            prevsize &= ~IS_MMAPPED_BIT;-            psize += prevsize + MMAP_FOOT_PAD;-            if (CALL_MUNMAP((char*)p - prevsize, psize) == 0)-              fm->footprint -= psize;-            goto postaction;-          }-          else {-            mchunkptr prev = chunk_minus_offset(p, prevsize);-            psize += prevsize;-            p = prev;-            if (RTCHECK(ok_address(fm, prev))) { /* consolidate backward */-              if (p != fm->dv) {-                unlink_chunk(fm, p, prevsize);-              }-              else if ((next->head & INUSE_BITS) == INUSE_BITS) {-                fm->dvsize = psize;-                set_free_with_pinuse(p, psize, next);-                goto postaction;-              }-            }-            else-              goto erroraction;-          }-        }--        if (RTCHECK(ok_next(p, next) && ok_pinuse(next))) {-          if (!cinuse(next)) {  /* consolidate forward */-            if (next == fm->top) {-              size_t tsize = fm->topsize += psize;-              fm->top = p;-              p->head = tsize | PINUSE_BIT;-              if (p == fm->dv) {-                fm->dv = 0;-                fm->dvsize = 0;-              }-              if (should_trim(fm, tsize))-                sys_trim(fm, 0);-              goto postaction;-            }-            else if (next == fm->dv) {-              size_t dsize = fm->dvsize += psize;-              fm->dv = p;-              set_size_and_pinuse_of_free_chunk(p, dsize);-              goto postaction;-            }-            else {-              size_t nsize = chunksize(next);-              psize += nsize;-              unlink_chunk(fm, next, nsize);-              set_size_and_pinuse_of_free_chunk(p, psize);-              if (p == fm->dv) {-                fm->dvsize = psize;-                goto postaction;-              }-            }-          }-          else-            set_free_with_pinuse(p, psize, next);-          insert_chunk(fm, p, psize);-          check_free_chunk(fm, p);-          goto postaction;-        }-      }-    erroraction:-      USAGE_ERROR_ACTION(fm, p);-    postaction:-      POSTACTION(fm);-    }-  }-#if !FOOTERS-#undef fm-#endif /* FOOTERS */-}--void* dlcalloc(size_t n_elements, size_t elem_size) {-  void* mem;-  size_t req = 0;-  if (n_elements != 0) {-    req = n_elements * elem_size;-    if (((n_elements | elem_size) & ~(size_t)0xffff) &&-        (req / n_elements != elem_size))-      req = MAX_SIZE_T; /* force downstream failure on overflow */-  }-  mem = dlmalloc(req);-  if (mem != 0 && calloc_must_clear(mem2chunk(mem)))-    memset(mem, 0, req);-  return mem;-}--void* dlrealloc(void* oldmem, size_t bytes) {-  if (oldmem == 0)-    return dlmalloc(bytes);-#ifdef REALLOC_ZERO_BYTES_FREES-  if (bytes == 0) {-    dlfree(oldmem);-    return 0;-  }-#endif /* REALLOC_ZERO_BYTES_FREES */-  else {-#if ! FOOTERS-    mstate m = gm;-#else /* FOOTERS */-    mstate m = get_mstate_for(mem2chunk(oldmem));-    if (!ok_magic(m)) {-      USAGE_ERROR_ACTION(m, oldmem);-      return 0;-    }-#endif /* FOOTERS */-    return internal_realloc(m, oldmem, bytes);-  }-}--void* dlmemalign(size_t alignment, size_t bytes) {-  return internal_memalign(gm, alignment, bytes);-}--void** dlindependent_calloc(size_t n_elements, size_t elem_size,-                                 void* chunks[]) {-  size_t sz = elem_size; /* serves as 1-element array */-  return ialloc(gm, n_elements, &sz, 3, chunks);-}--void** dlindependent_comalloc(size_t n_elements, size_t sizes[],-                                   void* chunks[]) {-  return ialloc(gm, n_elements, sizes, 0, chunks);-}--void* dlvalloc(size_t bytes) {-  size_t pagesz;-  init_mparams();-  pagesz = mparams.page_size;-  return dlmemalign(pagesz, bytes);-}--void* dlpvalloc(size_t bytes) {-  size_t pagesz;-  init_mparams();-  pagesz = mparams.page_size;-  return dlmemalign(pagesz, (bytes + pagesz - SIZE_T_ONE) & ~(pagesz - SIZE_T_ONE));-}--int dlmalloc_trim(size_t pad) {-  int result = 0;-  if (!PREACTION(gm)) {-    result = sys_trim(gm, pad);-    POSTACTION(gm);-  }-  return result;-}--size_t dlmalloc_footprint(void) {-  return gm->footprint;-}--size_t dlmalloc_max_footprint(void) {-  return gm->max_footprint;-}--#if !NO_MALLINFO-struct mallinfo dlmallinfo(void) {-  return internal_mallinfo(gm);-}-#endif /* NO_MALLINFO */--void dlmalloc_stats(void) {-  internal_malloc_stats(gm);-}--size_t dlmalloc_usable_size(void* mem) {-  if (mem != 0) {-    mchunkptr p = mem2chunk(mem);-    if (cinuse(p))-      return chunksize(p) - overhead_for(p);-  }-  return 0;-}--int dlmallopt(int param_number, int value) {-  return change_mparam(param_number, value);-}--#endif /* !ONLY_MSPACES */--/* ----------------------------- user mspaces ---------------------------- */--#if MSPACES--static mstate init_user_mstate(char* tbase, size_t tsize) {-  size_t msize = pad_request(sizeof(struct malloc_state));-  mchunkptr mn;-  mchunkptr msp = align_as_chunk(tbase);-  mstate m = (mstate)(chunk2mem(msp));-  memset(m, 0, msize);-  INITIAL_LOCK(&m->mutex);-  msp->head = (msize|PINUSE_BIT|CINUSE_BIT);-  m->seg.base = m->least_addr = tbase;-  m->seg.size = m->footprint = m->max_footprint = tsize;-  m->magic = mparams.magic;-  m->mflags = mparams.default_mflags;-  disable_contiguous(m);-  init_bins(m);-  mn = next_chunk(mem2chunk(m));-  init_top(m, mn, (size_t)((tbase + tsize) - (char*)mn) - TOP_FOOT_SIZE);-  check_top_chunk(m, m->top);-  return m;-}--mspace create_mspace(size_t capacity, int locked) {-  mstate m = 0;-  size_t msize = pad_request(sizeof(struct malloc_state));-  init_mparams(); /* Ensure pagesize etc initialized */--  if (capacity < (size_t) -(msize + TOP_FOOT_SIZE + mparams.page_size)) {-    size_t rs = ((capacity == 0)? mparams.granularity :-                 (capacity + TOP_FOOT_SIZE + msize));-    size_t tsize = granularity_align(rs);-    char* tbase = (char*)(CALL_MMAP(tsize));-    if (tbase != CMFAIL) {-      m = init_user_mstate(tbase, tsize);-      set_segment_flags(&m->seg, IS_MMAPPED_BIT);-      set_lock(m, locked);-    }-  }-  return (mspace)m;-}--mspace create_mspace_with_base(void* base, size_t capacity, int locked) {-  mstate m = 0;-  size_t msize = pad_request(sizeof(struct malloc_state));-  init_mparams(); /* Ensure pagesize etc initialized */--  if (capacity > msize + TOP_FOOT_SIZE &&-      capacity < (size_t) -(msize + TOP_FOOT_SIZE + mparams.page_size)) {-    m = init_user_mstate((char*)base, capacity);-    set_segment_flags(&m->seg, EXTERN_BIT);-    set_lock(m, locked);-  }-  return (mspace)m;-}--size_t destroy_mspace(mspace msp) {-  size_t freed = 0;-  mstate ms = (mstate)msp;-  if (ok_magic(ms)) {-    msegmentptr sp = &ms->seg;-    while (sp != 0) {-      char* base = sp->base;-      size_t size = sp->size;-      flag_t flag = get_segment_flags(sp);-      sp = sp->next;-      if ((flag & IS_MMAPPED_BIT) && !(flag & EXTERN_BIT) &&-          CALL_MUNMAP(base, size) == 0)-        freed += size;-    }-  }-  else {-    USAGE_ERROR_ACTION(ms,ms);-  }-  return freed;-}--/*-  mspace versions of routines are near-clones of the global-  versions. This is not so nice but better than the alternatives.-*/---void* mspace_malloc(mspace msp, size_t bytes) {-  mstate ms = (mstate)msp;-  if (!ok_magic(ms)) {-    USAGE_ERROR_ACTION(ms,ms);-    return 0;-  }-  if (!PREACTION(ms)) {-    void* mem;-    size_t nb;-    if (bytes <= MAX_SMALL_REQUEST) {-      bindex_t idx;-      binmap_t smallbits;-      nb = (bytes < MIN_REQUEST)? MIN_CHUNK_SIZE : pad_request(bytes);-      idx = small_index(nb);-      smallbits = ms->smallmap >> idx;--      if ((smallbits & 0x3U) != 0) { /* Remainderless fit to a smallbin. */-        mchunkptr b, p;-        idx += ~smallbits & 1;       /* Uses next bin if idx empty */-        b = smallbin_at(ms, idx);-        p = b->fd;-        assert(chunksize(p) == small_index2size(idx));-        unlink_first_small_chunk(ms, b, p, idx);-        set_inuse_and_pinuse(ms, p, small_index2size(idx));-        mem = chunk2mem(p);-        check_malloced_chunk(ms, mem, nb);-        goto postaction;-      }--      else if (nb > ms->dvsize) {-        if (smallbits != 0) { /* Use chunk in next nonempty smallbin */-          mchunkptr b, p, r;-          size_t rsize;-          bindex_t i;-          binmap_t leftbits = (smallbits << idx) & left_bits(idx2bit(idx));-          binmap_t leastbit = least_bit(leftbits);-          compute_bit2idx(leastbit, i);-          b = smallbin_at(ms, i);-          p = b->fd;-          assert(chunksize(p) == small_index2size(i));-          unlink_first_small_chunk(ms, b, p, i);-          rsize = small_index2size(i) - nb;-          /* Fit here cannot be remainderless if 4byte sizes */-          if (SIZE_T_SIZE != 4 && rsize < MIN_CHUNK_SIZE)-            set_inuse_and_pinuse(ms, p, small_index2size(i));-          else {-            set_size_and_pinuse_of_inuse_chunk(ms, p, nb);-            r = chunk_plus_offset(p, nb);-            set_size_and_pinuse_of_free_chunk(r, rsize);-            replace_dv(ms, r, rsize);-          }-          mem = chunk2mem(p);-          check_malloced_chunk(ms, mem, nb);-          goto postaction;-        }--        else if (ms->treemap != 0 && (mem = tmalloc_small(ms, nb)) != 0) {-          check_malloced_chunk(ms, mem, nb);-          goto postaction;-        }-      }-    }-    else if (bytes >= MAX_REQUEST)-      nb = MAX_SIZE_T; /* Too big to allocate. Force failure (in sys alloc) */-    else {-      nb = pad_request(bytes);-      if (ms->treemap != 0 && (mem = tmalloc_large(ms, nb)) != 0) {-        check_malloced_chunk(ms, mem, nb);-        goto postaction;-      }-    }--    if (nb <= ms->dvsize) {-      size_t rsize = ms->dvsize - nb;-      mchunkptr p = ms->dv;-      if (rsize >= MIN_CHUNK_SIZE) { /* split dv */-        mchunkptr r = ms->dv = chunk_plus_offset(p, nb);-        ms->dvsize = rsize;-        set_size_and_pinuse_of_free_chunk(r, rsize);-        set_size_and_pinuse_of_inuse_chunk(ms, p, nb);-      }-      else { /* exhaust dv */-        size_t dvs = ms->dvsize;-        ms->dvsize = 0;-        ms->dv = 0;-        set_inuse_and_pinuse(ms, p, dvs);-      }-      mem = chunk2mem(p);-      check_malloced_chunk(ms, mem, nb);-      goto postaction;-    }--    else if (nb < ms->topsize) { /* Split top */-      size_t rsize = ms->topsize -= nb;-      mchunkptr p = ms->top;-      mchunkptr r = ms->top = chunk_plus_offset(p, nb);-      r->head = rsize | PINUSE_BIT;-      set_size_and_pinuse_of_inuse_chunk(ms, p, nb);-      mem = chunk2mem(p);-      check_top_chunk(ms, ms->top);-      check_malloced_chunk(ms, mem, nb);-      goto postaction;-    }--    mem = sys_alloc(ms, nb);--  postaction:-    POSTACTION(ms);-    return mem;-  }--  return 0;-}--void mspace_free(mspace msp, void* mem) {-  if (mem != 0) {-    mchunkptr p  = mem2chunk(mem);-#if FOOTERS-    mstate fm = get_mstate_for(p);-#else /* FOOTERS */-    mstate fm = (mstate)msp;-#endif /* FOOTERS */-    if (!ok_magic(fm)) {-      USAGE_ERROR_ACTION(fm, p);-      return;-    }-    if (!PREACTION(fm)) {-      check_inuse_chunk(fm, p);-      if (RTCHECK(ok_address(fm, p) && ok_cinuse(p))) {-        size_t psize = chunksize(p);-        mchunkptr next = chunk_plus_offset(p, psize);-        if (!pinuse(p)) {-          size_t prevsize = p->prev_foot;-          if ((prevsize & IS_MMAPPED_BIT) != 0) {-            prevsize &= ~IS_MMAPPED_BIT;-            psize += prevsize + MMAP_FOOT_PAD;-            if (CALL_MUNMAP((char*)p - prevsize, psize) == 0)-              fm->footprint -= psize;-            goto postaction;-          }-          else {-            mchunkptr prev = chunk_minus_offset(p, prevsize);-            psize += prevsize;-            p = prev;-            if (RTCHECK(ok_address(fm, prev))) { /* consolidate backward */-              if (p != fm->dv) {-                unlink_chunk(fm, p, prevsize);-              }-              else if ((next->head & INUSE_BITS) == INUSE_BITS) {-                fm->dvsize = psize;-                set_free_with_pinuse(p, psize, next);-                goto postaction;-              }-            }-            else-              goto erroraction;-          }-        }--        if (RTCHECK(ok_next(p, next) && ok_pinuse(next))) {-          if (!cinuse(next)) {  /* consolidate forward */-            if (next == fm->top) {-              size_t tsize = fm->topsize += psize;-              fm->top = p;-              p->head = tsize | PINUSE_BIT;-              if (p == fm->dv) {-                fm->dv = 0;-                fm->dvsize = 0;-              }-              if (should_trim(fm, tsize))-                sys_trim(fm, 0);-              goto postaction;-            }-            else if (next == fm->dv) {-              size_t dsize = fm->dvsize += psize;-              fm->dv = p;-              set_size_and_pinuse_of_free_chunk(p, dsize);-              goto postaction;-            }-            else {-              size_t nsize = chunksize(next);-              psize += nsize;-              unlink_chunk(fm, next, nsize);-              set_size_and_pinuse_of_free_chunk(p, psize);-              if (p == fm->dv) {-                fm->dvsize = psize;-                goto postaction;-              }-            }-          }-          else-            set_free_with_pinuse(p, psize, next);-          insert_chunk(fm, p, psize);-          check_free_chunk(fm, p);-          goto postaction;-        }-      }-    erroraction:-      USAGE_ERROR_ACTION(fm, p);-    postaction:-      POSTACTION(fm);-    }-  }-}--void* mspace_calloc(mspace msp, size_t n_elements, size_t elem_size) {-  void* mem;-  size_t req = 0;-  mstate ms = (mstate)msp;-  if (!ok_magic(ms)) {-    USAGE_ERROR_ACTION(ms,ms);-    return 0;-  }-  if (n_elements != 0) {-    req = n_elements * elem_size;-    if (((n_elements | elem_size) & ~(size_t)0xffff) &&-        (req / n_elements != elem_size))-      req = MAX_SIZE_T; /* force downstream failure on overflow */-  }-  mem = internal_malloc(ms, req);-  if (mem != 0 && calloc_must_clear(mem2chunk(mem)))-    memset(mem, 0, req);-  return mem;-}--void* mspace_realloc(mspace msp, void* oldmem, size_t bytes) {-  if (oldmem == 0)-    return mspace_malloc(msp, bytes);-#ifdef REALLOC_ZERO_BYTES_FREES-  if (bytes == 0) {-    mspace_free(msp, oldmem);-    return 0;-  }-#endif /* REALLOC_ZERO_BYTES_FREES */-  else {-#if FOOTERS-    mchunkptr p  = mem2chunk(oldmem);-    mstate ms = get_mstate_for(p);-#else /* FOOTERS */-    mstate ms = (mstate)msp;-#endif /* FOOTERS */-    if (!ok_magic(ms)) {-      USAGE_ERROR_ACTION(ms,ms);-      return 0;-    }-    return internal_realloc(ms, oldmem, bytes);-  }-}--void* mspace_memalign(mspace msp, size_t alignment, size_t bytes) {-  mstate ms = (mstate)msp;-  if (!ok_magic(ms)) {-    USAGE_ERROR_ACTION(ms,ms);-    return 0;-  }-  return internal_memalign(ms, alignment, bytes);-}--void** mspace_independent_calloc(mspace msp, size_t n_elements,-                                 size_t elem_size, void* chunks[]) {-  size_t sz = elem_size; /* serves as 1-element array */-  mstate ms = (mstate)msp;-  if (!ok_magic(ms)) {-    USAGE_ERROR_ACTION(ms,ms);-    return 0;-  }-  return ialloc(ms, n_elements, &sz, 3, chunks);-}--void** mspace_independent_comalloc(mspace msp, size_t n_elements,-                                   size_t sizes[], void* chunks[]) {-  mstate ms = (mstate)msp;-  if (!ok_magic(ms)) {-    USAGE_ERROR_ACTION(ms,ms);-    return 0;-  }-  return ialloc(ms, n_elements, sizes, 0, chunks);-}--int mspace_trim(mspace msp, size_t pad) {-  int result = 0;-  mstate ms = (mstate)msp;-  if (ok_magic(ms)) {-    if (!PREACTION(ms)) {-      result = sys_trim(ms, pad);-      POSTACTION(ms);-    }-  }-  else {-    USAGE_ERROR_ACTION(ms,ms);-  }-  return result;-}--void mspace_malloc_stats(mspace msp) {-  mstate ms = (mstate)msp;-  if (ok_magic(ms)) {-    internal_malloc_stats(ms);-  }-  else {-    USAGE_ERROR_ACTION(ms,ms);-  }-}--size_t mspace_footprint(mspace msp) {-  size_t result;-  mstate ms = (mstate)msp;-  if (ok_magic(ms)) {-    result = ms->footprint;-  }-  USAGE_ERROR_ACTION(ms,ms);-  return result;-}---size_t mspace_max_footprint(mspace msp) {-  size_t result;-  mstate ms = (mstate)msp;-  if (ok_magic(ms)) {-    result = ms->max_footprint;-  }-  USAGE_ERROR_ACTION(ms,ms);-  return result;-}---#if !NO_MALLINFO-struct mallinfo mspace_mallinfo(mspace msp) {-  mstate ms = (mstate)msp;-  if (!ok_magic(ms)) {-    USAGE_ERROR_ACTION(ms,ms);-  }-  return internal_mallinfo(ms);-}-#endif /* NO_MALLINFO */--int mspace_mallopt(int param_number, int value) {-  return change_mparam(param_number, value);-}--#endif /* MSPACES */--/* -------------------- Alternative MORECORE functions ------------------- */--/*-  Guidelines for creating a custom version of MORECORE:--  * For best performance, MORECORE should allocate in multiples of pagesize.-  * MORECORE may allocate more memory than requested. (Or even less,-      but this will usually result in a malloc failure.)-  * MORECORE must not allocate memory when given argument zero, but-      instead return one past the end address of memory from previous-      nonzero call.-  * For best performance, consecutive calls to MORECORE with positive-      arguments should return increasing addresses, indicating that-      space has been contiguously extended.-  * Even though consecutive calls to MORECORE need not return contiguous-      addresses, it must be OK for malloc'ed chunks to span multiple-      regions in those cases where they do happen to be contiguous.-  * MORECORE need not handle negative arguments -- it may instead-      just return MFAIL when given negative arguments.-      Negative arguments are always multiples of pagesize. MORECORE-      must not misinterpret negative args as large positive unsigned-      args. You can suppress all such calls from even occurring by defining-      MORECORE_CANNOT_TRIM,--  As an example alternative MORECORE, here is a custom allocator-  kindly contributed for pre-OSX macOS.  It uses virtually but not-  necessarily physically contiguous non-paged memory (locked in,-  present and won't get swapped out).  You can use it by uncommenting-  this section, adding some #includes, and setting up the appropriate-  defines above:--      #define MORECORE osMoreCore--  There is also a shutdown routine that should somehow be called for-  cleanup upon program exit.--  #define MAX_POOL_ENTRIES 100-  #define MINIMUM_MORECORE_SIZE  (64 * 1024U)-  static int next_os_pool;-  void *our_os_pools[MAX_POOL_ENTRIES];--  void *osMoreCore(int size)-  {-    void *ptr = 0;-    static void *sbrk_top = 0;--    if (size > 0)-    {-      if (size < MINIMUM_MORECORE_SIZE)-         size = MINIMUM_MORECORE_SIZE;-      if (CurrentExecutionLevel() == kTaskLevel)-         ptr = PoolAllocateResident(size + RM_PAGE_SIZE, 0);-      if (ptr == 0)-      {-        return (void *) MFAIL;-      }-      // save ptrs so they can be freed during cleanup-      our_os_pools[next_os_pool] = ptr;-      next_os_pool++;-      ptr = (void *) ((((size_t) ptr) + RM_PAGE_MASK) & ~RM_PAGE_MASK);-      sbrk_top = (char *) ptr + size;-      return ptr;-    }-    else if (size < 0)-    {-      // we don't currently support shrink behavior-      return (void *) MFAIL;-    }-    else-    {-      return sbrk_top;-    }-  }--  // cleanup any allocated memory pools-  // called as last thing before shutting down driver--  void osCleanupMem(void)-  {-    void **ptr;--    for (ptr = our_os_pools; ptr < &our_os_pools[MAX_POOL_ENTRIES]; ptr++)-      if (*ptr)-      {-         PoolDeallocate(*ptr);-         *ptr = 0;-      }-  }--*/---/* ------------------------------------------------------------------------History:-    V2.8.3 Thu Sep 22 11:16:32 2005  Doug Lea  (dl at gee)-      * Add max_footprint functions-      * Ensure all appropriate literals are size_t-      * Fix conditional compilation problem for some #define settings-      * Avoid concatenating segments with the one provided-        in create_mspace_with_base-      * Rename some variables to avoid compiler shadowing warnings-      * Use explicit lock initialization.-      * Better handling of sbrk interference.-      * Simplify and fix segment insertion, trimming and mspace_destroy-      * Reinstate REALLOC_ZERO_BYTES_FREES option from 2.7.x-      * Thanks especially to Dennis Flanagan for help on these.--    V2.8.2 Sun Jun 12 16:01:10 2005  Doug Lea  (dl at gee)-      * Fix memalign brace error.--    V2.8.1 Wed Jun  8 16:11:46 2005  Doug Lea  (dl at gee)-      * Fix improper #endif nesting in C++-      * Add explicit casts needed for C++--    V2.8.0 Mon May 30 14:09:02 2005  Doug Lea  (dl at gee)-      * Use trees for large bins-      * Support mspaces-      * Use segments to unify sbrk-based and mmap-based system allocation,-        removing need for emulation on most platforms without sbrk.-      * Default safety checks-      * Optional footer checks. Thanks to William Robertson for the idea.-      * Internal code refactoring-      * Incorporate suggestions and platform-specific changes.-        Thanks to Dennis Flanagan, Colin Plumb, Niall Douglas,-        Aaron Bachmann,  Emery Berger, and others.-      * Speed up non-fastbin processing enough to remove fastbins.-      * Remove useless cfree() to avoid conflicts with other apps.-      * Remove internal memcpy, memset. Compilers handle builtins better.-      * Remove some options that no one ever used and rename others.--    V2.7.2 Sat Aug 17 09:07:30 2002  Doug Lea  (dl at gee)-      * Fix malloc_state bitmap array misdeclaration--    V2.7.1 Thu Jul 25 10:58:03 2002  Doug Lea  (dl at gee)-      * Allow tuning of FIRST_SORTED_BIN_SIZE-      * Use PTR_UINT as type for all ptr->int casts. Thanks to John Belmonte.-      * Better detection and support for non-contiguousness of MORECORE.-        Thanks to Andreas Mueller, Conal Walsh, and Wolfram Gloger-      * Bypass most of malloc if no frees. Thanks To Emery Berger.-      * Fix freeing of old top non-contiguous chunk im sysmalloc.-      * Raised default trim and map thresholds to 256K.-      * Fix mmap-related #defines. Thanks to Lubos Lunak.-      * Fix copy macros; added LACKS_FCNTL_H. Thanks to Neal Walfield.-      * Branch-free bin calculation-      * Default trim and mmap thresholds now 256K.--    V2.7.0 Sun Mar 11 14:14:06 2001  Doug Lea  (dl at gee)-      * Introduce independent_comalloc and independent_calloc.-        Thanks to Michael Pachos for motivation and help.-      * Make optional .h file available-      * Allow > 2GB requests on 32bit systems.-      * new WIN32 sbrk, mmap, munmap, lock code from <Walter@GeNeSys-e.de>.-        Thanks also to Andreas Mueller <a.mueller at paradatec.de>,-        and Anonymous.-      * Allow override of MALLOC_ALIGNMENT (Thanks to Ruud Waij for-        helping test this.)-      * memalign: check alignment arg-      * realloc: don't try to shift chunks backwards, since this-        leads to  more fragmentation in some programs and doesn't-        seem to help in any others.-      * Collect all cases in malloc requiring system memory into sysmalloc-      * Use mmap as backup to sbrk-      * Place all internal state in malloc_state-      * Introduce fastbins (although similar to 2.5.1)-      * Many minor tunings and cosmetic improvements-      * Introduce USE_PUBLIC_MALLOC_WRAPPERS, USE_MALLOC_LOCK-      * Introduce MALLOC_FAILURE_ACTION, MORECORE_CONTIGUOUS-        Thanks to Tony E. Bennett <tbennett@nvidia.com> and others.-      * Include errno.h to support default failure action.--    V2.6.6 Sun Dec  5 07:42:19 1999  Doug Lea  (dl at gee)-      * return null for negative arguments-      * Added Several WIN32 cleanups from Martin C. Fong <mcfong at yahoo.com>-         * Add 'LACKS_SYS_PARAM_H' for those systems without 'sys/param.h'-          (e.g. WIN32 platforms)-         * Cleanup header file inclusion for WIN32 platforms-         * Cleanup code to avoid Microsoft Visual C++ compiler complaints-         * Add 'USE_DL_PREFIX' to quickly allow co-existence with existing-           memory allocation routines-         * Set 'malloc_getpagesize' for WIN32 platforms (needs more work)-         * Use 'assert' rather than 'ASSERT' in WIN32 code to conform to-           usage of 'assert' in non-WIN32 code-         * Improve WIN32 'sbrk()' emulation's 'findRegion()' routine to-           avoid infinite loop-      * Always call 'fREe()' rather than 'free()'--    V2.6.5 Wed Jun 17 15:57:31 1998  Doug Lea  (dl at gee)-      * Fixed ordering problem with boundary-stamping--    V2.6.3 Sun May 19 08:17:58 1996  Doug Lea  (dl at gee)-      * Added pvalloc, as recommended by H.J. Liu-      * Added 64bit pointer support mainly from Wolfram Gloger-      * Added anonymously donated WIN32 sbrk emulation-      * Malloc, calloc, getpagesize: add optimizations from Raymond Nijssen-      * malloc_extend_top: fix mask error that caused wastage after-        foreign sbrks-      * Add linux mremap support code from HJ Liu--    V2.6.2 Tue Dec  5 06:52:55 1995  Doug Lea  (dl at gee)-      * Integrated most documentation with the code.-      * Add support for mmap, with help from-        Wolfram Gloger (Gloger@lrz.uni-muenchen.de).-      * Use last_remainder in more cases.-      * Pack bins using idea from  colin@nyx10.cs.du.edu-      * Use ordered bins instead of best-fit threshold-      * Eliminate block-local decls to simplify tracing and debugging.-      * Support another case of realloc via move into top-      * Fix error occurring when initial sbrk_base not word-aligned.-      * Rely on page size for units instead of SBRK_UNIT to-        avoid surprises about sbrk alignment conventions.-      * Add mallinfo, mallopt. Thanks to Raymond Nijssen-        (raymond@es.ele.tue.nl) for the suggestion.-      * Add `pad' argument to malloc_trim and top_pad mallopt parameter.-      * More precautions for cases where other routines call sbrk,-        courtesy of Wolfram Gloger (Gloger@lrz.uni-muenchen.de).-      * Added macros etc., allowing use in linux libc from-        H.J. Lu (hjl@gnu.ai.mit.edu)-      * Inverted this history list--    V2.6.1 Sat Dec  2 14:10:57 1995  Doug Lea  (dl at gee)-      * Re-tuned and fixed to behave more nicely with V2.6.0 changes.-      * Removed all preallocation code since under current scheme-        the work required to undo bad preallocations exceeds-        the work saved in good cases for most test programs.-      * No longer use return list or unconsolidated bins since-        no scheme using them consistently outperforms those that don't-        given above changes.-      * Use best fit for very large chunks to prevent some worst-cases.-      * Added some support for debugging--    V2.6.0 Sat Nov  4 07:05:23 1995  Doug Lea  (dl at gee)-      * Removed footers when chunks are in use. Thanks to-        Paul Wilson (wilson@cs.texas.edu) for the suggestion.--    V2.5.4 Wed Nov  1 07:54:51 1995  Doug Lea  (dl at gee)-      * Added malloc_trim, with help from Wolfram Gloger-        (wmglo@Dent.MED.Uni-Muenchen.DE).--    V2.5.3 Tue Apr 26 10:16:01 1994  Doug Lea  (dl at g)--    V2.5.2 Tue Apr  5 16:20:40 1994  Doug Lea  (dl at g)-      * realloc: try to expand in both directions-      * malloc: swap order of clean-bin strategy;-      * realloc: only conditionally expand backwards-      * Try not to scavenge used bins-      * Use bin counts as a guide to preallocation-      * Occasionally bin return list chunks in first scan-      * Add a few optimizations from colin@nyx10.cs.du.edu--    V2.5.1 Sat Aug 14 15:40:43 1993  Doug Lea  (dl at g)-      * faster bin computation & slightly different binning-      * merged all consolidations to one part of malloc proper-         (eliminating old malloc_find_space & malloc_clean_bin)-      * Scan 2 returns chunks (not just 1)-      * Propagate failure in realloc if malloc returns 0-      * Add stuff to allow compilation on non-ANSI compilers-          from kpv@research.att.com--    V2.5 Sat Aug  7 07:41:59 1993  Doug Lea  (dl at g.oswego.edu)-      * removed potential for odd address access in prev_chunk-      * removed dependency on getpagesize.h-      * misc cosmetics and a bit more internal documentation-      * anticosmetics: mangled names in macros to evade debugger strangeness-      * tested on sparc, hp-700, dec-mips, rs6000-          with gcc & native cc (hp, dec only) allowing-          Detlefs & Zorn comparison study (in SIGPLAN Notices.)--    Trial version Fri Aug 28 13:14:29 1992  Doug Lea  (dl at g.oswego.edu)-      * Based loosely on libg++-1.2X malloc. (It retains some of the overall-         structure of old version,  but most details differ.)- +  http://creativecommons.org/publicdomain/zero/1.0/ Send questions,+  comments, complaints, performance data, etc to dl@cs.oswego.edu++* Version 2.8.6 Wed Aug 29 06:57:58 2012  Doug Lea+   Note: There may be an updated version of this malloc obtainable at+           ftp://gee.cs.oswego.edu/pub/misc/malloc.c+         Check before installing!++* Quickstart++  This library is all in one file to simplify the most common usage:+  ftp it, compile it (-O3), and link it into another program. All of+  the compile-time options default to reasonable values for use on+  most platforms.  You might later want to step through various+  compile-time and dynamic tuning options.++  For convenience, an include file for code using this malloc is at:+     ftp://gee.cs.oswego.edu/pub/misc/malloc-2.8.6.h+  You don't really need this .h file unless you call functions not+  defined in your system include files.  The .h file contains only the+  excerpts from this file needed for using this malloc on ANSI C/C+++  systems, so long as you haven't changed compile-time options about+  naming and tuning parameters.  If you do, then you can create your+  own malloc.h that does include all settings by cutting at the point+  indicated below. Note that you may already by default be using a C+  library containing a malloc that is based on some version of this+  malloc (for example in linux). You might still want to use the one+  in this file to customize settings or to avoid overheads associated+  with library versions.++* Vital statistics:++  Supported pointer/size_t representation:       4 or 8 bytes+       size_t MUST be an unsigned type of the same width as+       pointers. (If you are using an ancient system that declares+       size_t as a signed type, or need it to be a different width+       than pointers, you can use a previous release of this malloc+       (e.g. 2.7.2) supporting these.)++  Alignment:                                     8 bytes (minimum)+       This suffices for nearly all current machines and C compilers.+       However, you can define MALLOC_ALIGNMENT to be wider than this+       if necessary (up to 128bytes), at the expense of using more space.++  Minimum overhead per allocated chunk:   4 or  8 bytes (if 4byte sizes)+                                          8 or 16 bytes (if 8byte sizes)+       Each malloced chunk has a hidden word of overhead holding size+       and status information, and additional cross-check word+       if FOOTERS is defined.++  Minimum allocated size: 4-byte ptrs:  16 bytes    (including overhead)+                          8-byte ptrs:  32 bytes    (including overhead)++       Even a request for zero bytes (i.e., malloc(0)) returns a+       pointer to something of the minimum allocatable size.+       The maximum overhead wastage (i.e., number of extra bytes+       allocated than were requested in malloc) is less than or equal+       to the minimum size, except for requests >= mmap_threshold that+       are serviced via mmap(), where the worst case wastage is about+       32 bytes plus the remainder from a system page (the minimal+       mmap unit); typically 4096 or 8192 bytes.++  Security: static-safe; optionally more or less+       The "security" of malloc refers to the ability of malicious+       code to accentuate the effects of errors (for example, freeing+       space that is not currently malloc'ed or overwriting past the+       ends of chunks) in code that calls malloc.  This malloc+       guarantees not to modify any memory locations below the base of+       heap, i.e., static variables, even in the presence of usage+       errors.  The routines additionally detect most improper frees+       and reallocs.  All this holds as long as the static bookkeeping+       for malloc itself is not corrupted by some other means.  This+       is only one aspect of security -- these checks do not, and+       cannot, detect all possible programming errors.++       If FOOTERS is defined nonzero, then each allocated chunk+       carries an additional check word to verify that it was malloced+       from its space.  These check words are the same within each+       execution of a program using malloc, but differ across+       executions, so externally crafted fake chunks cannot be+       freed. This improves security by rejecting frees/reallocs that+       could corrupt heap memory, in addition to the checks preventing+       writes to statics that are always on.  This may further improve+       security at the expense of time and space overhead.  (Note that+       FOOTERS may also be worth using with MSPACES.)++       By default detected errors cause the program to abort (calling+       "abort()"). You can override this to instead proceed past+       errors by defining PROCEED_ON_ERROR.  In this case, a bad free+       has no effect, and a malloc that encounters a bad address+       caused by user overwrites will ignore the bad address by+       dropping pointers and indices to all known memory. This may+       be appropriate for programs that should continue if at all+       possible in the face of programming errors, although they may+       run out of memory because dropped memory is never reclaimed.++       If you don't like either of these options, you can define+       CORRUPTION_ERROR_ACTION and USAGE_ERROR_ACTION to do anything+       else. And if if you are sure that your program using malloc has+       no errors or vulnerabilities, you can define INSECURE to 1,+       which might (or might not) provide a small performance improvement.++       It is also possible to limit the maximum total allocatable+       space, using malloc_set_footprint_limit. This is not+       designed as a security feature in itself (calls to set limits+       are not screened or privileged), but may be useful as one+       aspect of a secure implementation.++  Thread-safety: NOT thread-safe unless USE_LOCKS defined non-zero+       When USE_LOCKS is defined, each public call to malloc, free,+       etc is surrounded with a lock. By default, this uses a plain+       pthread mutex, win32 critical section, or a spin-lock if if+       available for the platform and not disabled by setting+       USE_SPIN_LOCKS=0.  However, if USE_RECURSIVE_LOCKS is defined,+       recursive versions are used instead (which are not required for+       base functionality but may be needed in layered extensions).+       Using a global lock is not especially fast, and can be a major+       bottleneck.  It is designed only to provide minimal protection+       in concurrent environments, and to provide a basis for+       extensions.  If you are using malloc in a concurrent program,+       consider instead using nedmalloc+       (http://www.nedprod.com/programs/portable/nedmalloc/) or+       ptmalloc (See http://www.malloc.de), which are derived from+       versions of this malloc.++  System requirements: Any combination of MORECORE and/or MMAP/MUNMAP+       This malloc can use unix sbrk or any emulation (invoked using+       the CALL_MORECORE macro) and/or mmap/munmap or any emulation+       (invoked using CALL_MMAP/CALL_MUNMAP) to get and release system+       memory.  On most unix systems, it tends to work best if both+       MORECORE and MMAP are enabled.  On Win32, it uses emulations+       based on VirtualAlloc. It also uses common C library functions+       like memset.++  Compliance: I believe it is compliant with the Single Unix Specification+       (See http://www.unix.org). Also SVID/XPG, ANSI C, and probably+       others as well.++* Overview of algorithms++  This is not the fastest, most space-conserving, most portable, or+  most tunable malloc ever written. However it is among the fastest+  while also being among the most space-conserving, portable and+  tunable.  Consistent balance across these factors results in a good+  general-purpose allocator for malloc-intensive programs.++  In most ways, this malloc is a best-fit allocator. Generally, it+  chooses the best-fitting existing chunk for a request, with ties+  broken in approximately least-recently-used order. (This strategy+  normally maintains low fragmentation.) However, for requests less+  than 256bytes, it deviates from best-fit when there is not an+  exactly fitting available chunk by preferring to use space adjacent+  to that used for the previous small request, as well as by breaking+  ties in approximately most-recently-used order. (These enhance+  locality of series of small allocations.)  And for very large requests+  (>= 256Kb by default), it relies on system memory mapping+  facilities, if supported.  (This helps avoid carrying around and+  possibly fragmenting memory used only for large chunks.)++  All operations (except malloc_stats and mallinfo) have execution+  times that are bounded by a constant factor of the number of bits in+  a size_t, not counting any clearing in calloc or copying in realloc,+  or actions surrounding MORECORE and MMAP that have times+  proportional to the number of non-contiguous regions returned by+  system allocation routines, which is often just 1. In real-time+  applications, you can optionally suppress segment traversals using+  NO_SEGMENT_TRAVERSAL, which assures bounded execution even when+  system allocators return non-contiguous spaces, at the typical+  expense of carrying around more memory and increased fragmentation.++  The implementation is not very modular and seriously overuses+  macros. Perhaps someday all C compilers will do as good a job+  inlining modular code as can now be done by brute-force expansion,+  but now, enough of them seem not to.++  Some compilers issue a lot of warnings about code that is+  dead/unreachable only on some platforms, and also about intentional+  uses of negation on unsigned types. All known cases of each can be+  ignored.++  For a longer but out of date high-level description, see+     http://gee.cs.oswego.edu/dl/html/malloc.html++* MSPACES+  If MSPACES is defined, then in addition to malloc, free, etc.,+  this file also defines mspace_malloc, mspace_free, etc. These+  are versions of malloc routines that take an "mspace" argument+  obtained using create_mspace, to control all internal bookkeeping.+  If ONLY_MSPACES is defined, only these versions are compiled.+  So if you would like to use this allocator for only some allocations,+  and your system malloc for others, you can compile with+  ONLY_MSPACES and then do something like...+    static mspace mymspace = create_mspace(0,0); // for example+    #define mymalloc(bytes)  mspace_malloc(mymspace, bytes)++  (Note: If you only need one instance of an mspace, you can instead+  use "USE_DL_PREFIX" to relabel the global malloc.)++  You can similarly create thread-local allocators by storing+  mspaces as thread-locals. For example:+    static __thread mspace tlms = 0;+    void*  tlmalloc(size_t bytes) {+      if (tlms == 0) tlms = create_mspace(0, 0);+      return mspace_malloc(tlms, bytes);+    }+    void  tlfree(void* mem) { mspace_free(tlms, mem); }++  Unless FOOTERS is defined, each mspace is completely independent.+  You cannot allocate from one and free to another (although+  conformance is only weakly checked, so usage errors are not always+  caught). If FOOTERS is defined, then each chunk carries around a tag+  indicating its originating mspace, and frees are directed to their+  originating spaces. Normally, this requires use of locks.++ -------------------------  Compile-time options ---------------------------++Be careful in setting #define values for numerical constants of type+size_t. On some systems, literal values are not automatically extended+to size_t precision unless they are explicitly casted. You can also+use the symbolic values MAX_SIZE_T, SIZE_T_ONE, etc below.++WIN32                    default: defined if _WIN32 defined+  Defining WIN32 sets up defaults for MS environment and compilers.+  Otherwise defaults are for unix. Beware that there seem to be some+  cases where this malloc might not be a pure drop-in replacement for+  Win32 malloc: Random-looking failures from Win32 GDI API's (eg;+  SetDIBits()) may be due to bugs in some video driver implementations+  when pixel buffers are malloc()ed, and the region spans more than+  one VirtualAlloc()ed region. Because dlmalloc uses a small (64Kb)+  default granularity, pixel buffers may straddle virtual allocation+  regions more often than when using the Microsoft allocator.  You can+  avoid this by using VirtualAlloc() and VirtualFree() for all pixel+  buffers rather than using malloc().  If this is not possible,+  recompile this malloc with a larger DEFAULT_GRANULARITY. Note:+  in cases where MSC and gcc (cygwin) are known to differ on WIN32,+  conditions use _MSC_VER to distinguish them.++DLMALLOC_EXPORT       default: extern+  Defines how public APIs are declared. If you want to export via a+  Windows DLL, you might define this as+    #define DLMALLOC_EXPORT extern  __declspec(dllexport)+  If you want a POSIX ELF shared object, you might use+    #define DLMALLOC_EXPORT extern __attribute__((visibility("default")))++MALLOC_ALIGNMENT         default: (size_t)(2 * sizeof(void *))+  Controls the minimum alignment for malloc'ed chunks.  It must be a+  power of two and at least 8, even on machines for which smaller+  alignments would suffice. It may be defined as larger than this+  though. Note however that code and data structures are optimized for+  the case of 8-byte alignment.++MSPACES                  default: 0 (false)+  If true, compile in support for independent allocation spaces.+  This is only supported if HAVE_MMAP is true.++ONLY_MSPACES             default: 0 (false)+  If true, only compile in mspace versions, not regular versions.++USE_LOCKS                default: 0 (false)+  Causes each call to each public routine to be surrounded with+  pthread or WIN32 mutex lock/unlock. (If set true, this can be+  overridden on a per-mspace basis for mspace versions.) If set to a+  non-zero value other than 1, locks are used, but their+  implementation is left out, so lock functions must be supplied manually,+  as described below.++USE_SPIN_LOCKS           default: 1 iff USE_LOCKS and spin locks available+  If true, uses custom spin locks for locking. This is currently+  supported only gcc >= 4.1, older gccs on x86 platforms, and recent+  MS compilers.  Otherwise, posix locks or win32 critical sections are+  used.++USE_RECURSIVE_LOCKS      default: not defined+  If defined nonzero, uses recursive (aka reentrant) locks, otherwise+  uses plain mutexes. This is not required for malloc proper, but may+  be needed for layered allocators such as nedmalloc.++LOCK_AT_FORK            default: not defined+  If defined nonzero, performs pthread_atfork upon initialization+  to initialize child lock while holding parent lock. The implementation+  assumes that pthread locks (not custom locks) are being used. In other+  cases, you may need to customize the implementation.++FOOTERS                  default: 0+  If true, provide extra checking and dispatching by placing+  information in the footers of allocated chunks. This adds+  space and time overhead.++INSECURE                 default: 0+  If true, omit checks for usage errors and heap space overwrites.++USE_DL_PREFIX            default: NOT defined+  Causes compiler to prefix all public routines with the string 'dl'.+  This can be useful when you only want to use this malloc in one part+  of a program, using your regular system malloc elsewhere.++MALLOC_INSPECT_ALL       default: NOT defined+  If defined, compiles malloc_inspect_all and mspace_inspect_all, that+  perform traversal of all heap space.  Unless access to these+  functions is otherwise restricted, you probably do not want to+  include them in secure implementations.++ABORT                    default: defined as abort()+  Defines how to abort on failed checks.  On most systems, a failed+  check cannot die with an "assert" or even print an informative+  message, because the underlying print routines in turn call malloc,+  which will fail again.  Generally, the best policy is to simply call+  abort(). It's not very useful to do more than this because many+  errors due to overwriting will show up as address faults (null, odd+  addresses etc) rather than malloc-triggered checks, so will also+  abort.  Also, most compilers know that abort() does not return, so+  can better optimize code conditionally calling it.++PROCEED_ON_ERROR           default: defined as 0 (false)+  Controls whether detected bad addresses cause them to bypassed+  rather than aborting. If set, detected bad arguments to free and+  realloc are ignored. And all bookkeeping information is zeroed out+  upon a detected overwrite of freed heap space, thus losing the+  ability to ever return it from malloc again, but enabling the+  application to proceed. If PROCEED_ON_ERROR is defined, the+  static variable malloc_corruption_error_count is compiled in+  and can be examined to see if errors have occurred. This option+  generates slower code than the default abort policy.++DEBUG                    default: NOT defined+  The DEBUG setting is mainly intended for people trying to modify+  this code or diagnose problems when porting to new platforms.+  However, it may also be able to better isolate user errors than just+  using runtime checks.  The assertions in the check routines spell+  out in more detail the assumptions and invariants underlying the+  algorithms.  The checking is fairly extensive, and will slow down+  execution noticeably. Calling malloc_stats or mallinfo with DEBUG+  set will attempt to check every non-mmapped allocated and free chunk+  in the course of computing the summaries.++ABORT_ON_ASSERT_FAILURE   default: defined as 1 (true)+  Debugging assertion failures can be nearly impossible if your+  version of the assert macro causes malloc to be called, which will+  lead to a cascade of further failures, blowing the runtime stack.+  ABORT_ON_ASSERT_FAILURE cause assertions failures to call abort(),+  which will usually make debugging easier.++MALLOC_FAILURE_ACTION     default: sets errno to ENOMEM, or no-op on win32+  The action to take before "return 0" when malloc fails to be able to+  return memory because there is none available.++HAVE_MORECORE             default: 1 (true) unless win32 or ONLY_MSPACES+  True if this system supports sbrk or an emulation of it.++MORECORE                  default: sbrk+  The name of the sbrk-style system routine to call to obtain more+  memory.  See below for guidance on writing custom MORECORE+  functions. The type of the argument to sbrk/MORECORE varies across+  systems.  It cannot be size_t, because it supports negative+  arguments, so it is normally the signed type of the same width as+  size_t (sometimes declared as "intptr_t").  It doesn't much matter+  though. Internally, we only call it with arguments less than half+  the max value of a size_t, which should work across all reasonable+  possibilities, although sometimes generating compiler warnings.++MORECORE_CONTIGUOUS       default: 1 (true) if HAVE_MORECORE+  If true, take advantage of fact that consecutive calls to MORECORE+  with positive arguments always return contiguous increasing+  addresses.  This is true of unix sbrk. It does not hurt too much to+  set it true anyway, since malloc copes with non-contiguities.+  Setting it false when definitely non-contiguous saves time+  and possibly wasted space it would take to discover this though.++MORECORE_CANNOT_TRIM      default: NOT defined+  True if MORECORE cannot release space back to the system when given+  negative arguments. This is generally necessary only if you are+  using a hand-crafted MORECORE function that cannot handle negative+  arguments.++NO_SEGMENT_TRAVERSAL       default: 0+  If non-zero, suppresses traversals of memory segments+  returned by either MORECORE or CALL_MMAP. This disables+  merging of segments that are contiguous, and selectively+  releasing them to the OS if unused, but bounds execution times.++HAVE_MMAP                 default: 1 (true)+  True if this system supports mmap or an emulation of it.  If so, and+  HAVE_MORECORE is not true, MMAP is used for all system+  allocation. If set and HAVE_MORECORE is true as well, MMAP is+  primarily used to directly allocate very large blocks. It is also+  used as a backup strategy in cases where MORECORE fails to provide+  space from system. Note: A single call to MUNMAP is assumed to be+  able to unmap memory that may have be allocated using multiple calls+  to MMAP, so long as they are adjacent.++HAVE_MREMAP               default: 1 on linux, else 0+  If true realloc() uses mremap() to re-allocate large blocks and+  extend or shrink allocation spaces.++MMAP_CLEARS               default: 1 except on WINCE.+  True if mmap clears memory so calloc doesn't need to. This is true+  for standard unix mmap using /dev/zero and on WIN32 except for WINCE.++USE_BUILTIN_FFS            default: 0 (i.e., not used)+  Causes malloc to use the builtin ffs() function to compute indices.+  Some compilers may recognize and intrinsify ffs to be faster than the+  supplied C version. Also, the case of x86 using gcc is special-cased+  to an asm instruction, so is already as fast as it can be, and so+  this setting has no effect. Similarly for Win32 under recent MS compilers.+  (On most x86s, the asm version is only slightly faster than the C version.)++malloc_getpagesize         default: derive from system includes, or 4096.+  The system page size. To the extent possible, this malloc manages+  memory from the system in page-size units.  This may be (and+  usually is) a function rather than a constant. This is ignored+  if WIN32, where page size is determined using getSystemInfo during+  initialization.++USE_DEV_RANDOM             default: 0 (i.e., not used)+  Causes malloc to use /dev/random to initialize secure magic seed for+  stamping footers. Otherwise, the current time is used.++NO_MALLINFO                default: 0+  If defined, don't compile "mallinfo". This can be a simple way+  of dealing with mismatches between system declarations and+  those in this file.++MALLINFO_FIELD_TYPE        default: size_t+  The type of the fields in the mallinfo struct. This was originally+  defined as "int" in SVID etc, but is more usefully defined as+  size_t. The value is used only if  HAVE_USR_INCLUDE_MALLOC_H is not set++NO_MALLOC_STATS            default: 0+  If defined, don't compile "malloc_stats". This avoids calls to+  fprintf and bringing in stdio dependencies you might not want.++REALLOC_ZERO_BYTES_FREES    default: not defined+  This should be set if a call to realloc with zero bytes should+  be the same as a call to free. Some people think it should. Otherwise,+  since this malloc returns a unique pointer for malloc(0), so does+  realloc(p, 0).++LACKS_UNISTD_H, LACKS_FCNTL_H, LACKS_SYS_PARAM_H, LACKS_SYS_MMAN_H+LACKS_STRINGS_H, LACKS_STRING_H, LACKS_SYS_TYPES_H,  LACKS_ERRNO_H+LACKS_STDLIB_H LACKS_SCHED_H LACKS_TIME_H  default: NOT defined unless on WIN32+  Define these if your system does not have these header files.+  You might need to manually insert some of the declarations they provide.++DEFAULT_GRANULARITY        default: page size if MORECORE_CONTIGUOUS,+                                system_info.dwAllocationGranularity in WIN32,+                                otherwise 64K.+      Also settable using mallopt(M_GRANULARITY, x)+  The unit for allocating and deallocating memory from the system.  On+  most systems with contiguous MORECORE, there is no reason to+  make this more than a page. However, systems with MMAP tend to+  either require or encourage larger granularities.  You can increase+  this value to prevent system allocation functions to be called so+  often, especially if they are slow.  The value must be at least one+  page and must be a power of two.  Setting to 0 causes initialization+  to either page size or win32 region size.  (Note: In previous+  versions of malloc, the equivalent of this option was called+  "TOP_PAD")++DEFAULT_TRIM_THRESHOLD    default: 2MB+      Also settable using mallopt(M_TRIM_THRESHOLD, x)+  The maximum amount of unused top-most memory to keep before+  releasing via malloc_trim in free().  Automatic trimming is mainly+  useful in long-lived programs using contiguous MORECORE.  Because+  trimming via sbrk can be slow on some systems, and can sometimes be+  wasteful (in cases where programs immediately afterward allocate+  more large chunks) the value should be high enough so that your+  overall system performance would improve by releasing this much+  memory.  As a rough guide, you might set to a value close to the+  average size of a process (program) running on your system.+  Releasing this much memory would allow such a process to run in+  memory.  Generally, it is worth tuning trim thresholds when a+  program undergoes phases where several large chunks are allocated+  and released in ways that can reuse each other's storage, perhaps+  mixed with phases where there are no such chunks at all. The trim+  value must be greater than page size to have any useful effect.  To+  disable trimming completely, you can set to MAX_SIZE_T. Note that the trick+  some people use of mallocing a huge space and then freeing it at+  program startup, in an attempt to reserve system memory, doesn't+  have the intended effect under automatic trimming, since that memory+  will immediately be returned to the system.++DEFAULT_MMAP_THRESHOLD       default: 256K+      Also settable using mallopt(M_MMAP_THRESHOLD, x)+  The request size threshold for using MMAP to directly service a+  request. Requests of at least this size that cannot be allocated+  using already-existing space will be serviced via mmap.  (If enough+  normal freed space already exists it is used instead.)  Using mmap+  segregates relatively large chunks of memory so that they can be+  individually obtained and released from the host system. A request+  serviced through mmap is never reused by any other request (at least+  not directly; the system may just so happen to remap successive+  requests to the same locations).  Segregating space in this way has+  the benefits that: Mmapped space can always be individually released+  back to the system, which helps keep the system level memory demands+  of a long-lived program low.  Also, mapped memory doesn't become+  `locked' between other chunks, as can happen with normally allocated+  chunks, which means that even trimming via malloc_trim would not+  release them.  However, it has the disadvantage that the space+  cannot be reclaimed, consolidated, and then used to service later+  requests, as happens with normal chunks.  The advantages of mmap+  nearly always outweigh disadvantages for "large" chunks, but the+  value of "large" may vary across systems.  The default is an+  empirically derived value that works well in most systems. You can+  disable mmap by setting to MAX_SIZE_T.++MAX_RELEASE_CHECK_RATE   default: 4095 unless not HAVE_MMAP+  The number of consolidated frees between checks to release+  unused segments when freeing. When using non-contiguous segments,+  especially with multiple mspaces, checking only for topmost space+  doesn't always suffice to trigger trimming. To compensate for this,+  free() will, with a period of MAX_RELEASE_CHECK_RATE (or the+  current number of segments, if greater) try to release unused+  segments to the OS when freeing chunks that result in+  consolidation. The best value for this parameter is a compromise+  between slowing down frees with relatively costly checks that+  rarely trigger versus holding on to unused memory. To effectively+  disable, set to MAX_SIZE_T. This may lead to a very slight speed+  improvement at the expense of carrying around more memory.+*/++/* Version identifier to allow people to support multiple versions */+#ifndef DLMALLOC_VERSION+#define DLMALLOC_VERSION 20806+#endif /* DLMALLOC_VERSION */++#ifndef DLMALLOC_EXPORT+#define DLMALLOC_EXPORT extern+#endif++#if defined __linux__ && !defined _GNU_SOURCE+/* mremap() on Linux requires this via sys/mman.h */+#define _GNU_SOURCE 1+#endif++#ifndef WIN32+#ifdef _WIN32+#define WIN32 1+#endif  /* _WIN32 */+#ifdef _WIN32_WCE+#define LACKS_FCNTL_H+#define WIN32 1+#endif /* _WIN32_WCE */+#endif  /* WIN32 */+#ifdef WIN32+#define WIN32_LEAN_AND_MEAN+#include <windows.h>+#include <tchar.h>+#define HAVE_MMAP 1+#define HAVE_MORECORE 0+#define LACKS_UNISTD_H+#define LACKS_SYS_PARAM_H+#define LACKS_SYS_MMAN_H+#define LACKS_STRING_H+#define LACKS_STRINGS_H+#define LACKS_SYS_TYPES_H+#define LACKS_ERRNO_H+#define LACKS_SCHED_H+#ifndef MALLOC_FAILURE_ACTION+#define MALLOC_FAILURE_ACTION+#endif /* MALLOC_FAILURE_ACTION */+#ifndef MMAP_CLEARS+#ifdef _WIN32_WCE /* WINCE reportedly does not clear */+#define MMAP_CLEARS 0+#else+#define MMAP_CLEARS 1+#endif /* _WIN32_WCE */+#endif /*MMAP_CLEARS */+#endif  /* WIN32 */++#ifdef __OS2__+#define INCL_DOS+#include <os2.h>+#define HAVE_MMAP 1+#define HAVE_MORECORE 0+#define LACKS_SYS_MMAN_H+#endif  /* __OS2__ */++#if defined(DARWIN) || defined(_DARWIN)+/* Mac OSX docs advise not to use sbrk; it seems better to use mmap */+#ifndef HAVE_MORECORE+#define HAVE_MORECORE 0+#define HAVE_MMAP 1+/* OSX allocators provide 16 byte alignment */+#ifndef MALLOC_ALIGNMENT+#define MALLOC_ALIGNMENT ((size_t)16U)+#endif+#endif  /* HAVE_MORECORE */+#endif  /* DARWIN */++#ifndef LACKS_SYS_TYPES_H+#include <sys/types.h>  /* For size_t */+#endif  /* LACKS_SYS_TYPES_H */++/* The maximum possible size_t value has all bits set */+#define MAX_SIZE_T           (~(size_t)0)++#ifndef USE_LOCKS /* ensure true if spin or recursive locks set */+#define USE_LOCKS  ((defined(USE_SPIN_LOCKS) && USE_SPIN_LOCKS != 0) || \+                    (defined(USE_RECURSIVE_LOCKS) && USE_RECURSIVE_LOCKS != 0))+#endif /* USE_LOCKS */++#if USE_LOCKS /* Spin locks for gcc >= 4.1, older gcc on x86, MSC >= 1310 */+#if ((defined(__GNUC__) &&                                              \+      ((__GNUC__ > 4 || (__GNUC__ == 4 && __GNUC_MINOR__ >= 1)) ||      \+       defined(__i386__) || defined(__x86_64__))) ||                    \+     (defined(_MSC_VER) && _MSC_VER>=1310))+#ifndef USE_SPIN_LOCKS+#define USE_SPIN_LOCKS 1+#endif /* USE_SPIN_LOCKS */+#elif USE_SPIN_LOCKS+#error "USE_SPIN_LOCKS defined without implementation"+#endif /* ... locks available... */+#elif !defined(USE_SPIN_LOCKS)+#define USE_SPIN_LOCKS 0+#endif /* USE_LOCKS */++#ifndef ONLY_MSPACES+#define ONLY_MSPACES 0+#endif  /* ONLY_MSPACES */+#ifndef MSPACES+#if ONLY_MSPACES+#define MSPACES 1+#else   /* ONLY_MSPACES */+#define MSPACES 0+#endif  /* ONLY_MSPACES */+#endif  /* MSPACES */+#ifndef MALLOC_ALIGNMENT+#define MALLOC_ALIGNMENT ((size_t)(2 * sizeof(void *)))+#endif  /* MALLOC_ALIGNMENT */+#ifndef FOOTERS+#define FOOTERS 0+#endif  /* FOOTERS */+#ifndef ABORT+#define ABORT  abort()+#endif  /* ABORT */+#ifndef ABORT_ON_ASSERT_FAILURE+#define ABORT_ON_ASSERT_FAILURE 1+#endif  /* ABORT_ON_ASSERT_FAILURE */+#ifndef PROCEED_ON_ERROR+#define PROCEED_ON_ERROR 0+#endif  /* PROCEED_ON_ERROR */++#ifndef INSECURE+#define INSECURE 0+#endif  /* INSECURE */+#ifndef MALLOC_INSPECT_ALL+#define MALLOC_INSPECT_ALL 0+#endif  /* MALLOC_INSPECT_ALL */+#ifndef HAVE_MMAP+#define HAVE_MMAP 1+#endif  /* HAVE_MMAP */+#ifndef MMAP_CLEARS+#define MMAP_CLEARS 1+#endif  /* MMAP_CLEARS */+#ifndef HAVE_MREMAP+#ifdef linux+#define HAVE_MREMAP 1+#define _GNU_SOURCE /* Turns on mremap() definition */+#else   /* linux */+#define HAVE_MREMAP 0+#endif  /* linux */+#endif  /* HAVE_MREMAP */+#ifndef MALLOC_FAILURE_ACTION+#define MALLOC_FAILURE_ACTION  errno = ENOMEM;+#endif  /* MALLOC_FAILURE_ACTION */+#ifndef HAVE_MORECORE+#if ONLY_MSPACES+#define HAVE_MORECORE 0+#else   /* ONLY_MSPACES */+#define HAVE_MORECORE 1+#endif  /* ONLY_MSPACES */+#endif  /* HAVE_MORECORE */+#if !HAVE_MORECORE+#define MORECORE_CONTIGUOUS 0+#else   /* !HAVE_MORECORE */+#define MORECORE_DEFAULT sbrk+#ifndef MORECORE_CONTIGUOUS+#define MORECORE_CONTIGUOUS 1+#endif  /* MORECORE_CONTIGUOUS */+#endif  /* HAVE_MORECORE */+#ifndef DEFAULT_GRANULARITY+#if (MORECORE_CONTIGUOUS || defined(WIN32))+#define DEFAULT_GRANULARITY (0)  /* 0 means to compute in init_mparams */+#else   /* MORECORE_CONTIGUOUS */+#define DEFAULT_GRANULARITY ((size_t)64U * (size_t)1024U)+#endif  /* MORECORE_CONTIGUOUS */+#endif  /* DEFAULT_GRANULARITY */+#ifndef DEFAULT_TRIM_THRESHOLD+#ifndef MORECORE_CANNOT_TRIM+#define DEFAULT_TRIM_THRESHOLD ((size_t)2U * (size_t)1024U * (size_t)1024U)+#else   /* MORECORE_CANNOT_TRIM */+#define DEFAULT_TRIM_THRESHOLD MAX_SIZE_T+#endif  /* MORECORE_CANNOT_TRIM */+#endif  /* DEFAULT_TRIM_THRESHOLD */+#ifndef DEFAULT_MMAP_THRESHOLD+#if HAVE_MMAP+#define DEFAULT_MMAP_THRESHOLD ((size_t)256U * (size_t)1024U)+#else   /* HAVE_MMAP */+#define DEFAULT_MMAP_THRESHOLD MAX_SIZE_T+#endif  /* HAVE_MMAP */+#endif  /* DEFAULT_MMAP_THRESHOLD */+#ifndef MAX_RELEASE_CHECK_RATE+#if HAVE_MMAP+#define MAX_RELEASE_CHECK_RATE 4095+#else+#define MAX_RELEASE_CHECK_RATE MAX_SIZE_T+#endif /* HAVE_MMAP */+#endif /* MAX_RELEASE_CHECK_RATE */+#ifndef USE_BUILTIN_FFS+#define USE_BUILTIN_FFS 0+#endif  /* USE_BUILTIN_FFS */+#ifndef USE_DEV_RANDOM+#define USE_DEV_RANDOM 0+#endif  /* USE_DEV_RANDOM */+#ifndef NO_MALLINFO+#define NO_MALLINFO 0+#endif  /* NO_MALLINFO */+#ifndef MALLINFO_FIELD_TYPE+#define MALLINFO_FIELD_TYPE size_t+#endif  /* MALLINFO_FIELD_TYPE */+#ifndef NO_MALLOC_STATS+#define NO_MALLOC_STATS 0+#endif  /* NO_MALLOC_STATS */+#ifndef NO_SEGMENT_TRAVERSAL+#define NO_SEGMENT_TRAVERSAL 0+#endif /* NO_SEGMENT_TRAVERSAL */++/*+  mallopt tuning options.  SVID/XPG defines four standard parameter+  numbers for mallopt, normally defined in malloc.h.  None of these+  are used in this malloc, so setting them has no effect. But this+  malloc does support the following options.+*/++/* The system's malloc.h may have conflicting defines. */+#undef M_TRIM_THRESHOLD+#undef M_GRANULARITY+#undef M_MMAP_THRESHOLD++#define M_TRIM_THRESHOLD     (-1)+#define M_GRANULARITY        (-2)+#define M_MMAP_THRESHOLD     (-3)++/* ------------------------ Mallinfo declarations ------------------------ */++#if !NO_MALLINFO+/*+  This version of malloc supports the standard SVID/XPG mallinfo+  routine that returns a struct containing usage properties and+  statistics. It should work on any system that has a+  /usr/include/malloc.h defining struct mallinfo.  The main+  declaration needed is the mallinfo struct that is returned (by-copy)+  by mallinfo().  The malloinfo struct contains a bunch of fields that+  are not even meaningful in this version of malloc.  These fields are+  are instead filled by mallinfo() with other numbers that might be of+  interest.++  HAVE_USR_INCLUDE_MALLOC_H should be set if you have a+  /usr/include/malloc.h file that includes a declaration of struct+  mallinfo.  If so, it is included; else a compliant version is+  declared below.  These must be precisely the same for mallinfo() to+  work.  The original SVID version of this struct, defined on most+  systems with mallinfo, declares all fields as ints. But some others+  define as unsigned long. If your system defines the fields using a+  type of different width than listed here, you MUST #include your+  system version and #define HAVE_USR_INCLUDE_MALLOC_H.+*/++/* #define HAVE_USR_INCLUDE_MALLOC_H */++#ifdef HAVE_USR_INCLUDE_MALLOC_H+#include "/usr/include/malloc.h"+#else /* HAVE_USR_INCLUDE_MALLOC_H */+#ifndef STRUCT_MALLINFO_DECLARED+/* HP-UX (and others?) redefines mallinfo unless _STRUCT_MALLINFO is defined */+#define _STRUCT_MALLINFO+#define STRUCT_MALLINFO_DECLARED 1+struct mallinfo {+  MALLINFO_FIELD_TYPE arena;    /* non-mmapped space allocated from system */+  MALLINFO_FIELD_TYPE ordblks;  /* number of free chunks */+  MALLINFO_FIELD_TYPE smblks;   /* always 0 */+  MALLINFO_FIELD_TYPE hblks;    /* always 0 */+  MALLINFO_FIELD_TYPE hblkhd;   /* space in mmapped regions */+  MALLINFO_FIELD_TYPE usmblks;  /* maximum total allocated space */+  MALLINFO_FIELD_TYPE fsmblks;  /* always 0 */+  MALLINFO_FIELD_TYPE uordblks; /* total allocated space */+  MALLINFO_FIELD_TYPE fordblks; /* total free space */+  MALLINFO_FIELD_TYPE keepcost; /* releasable (via malloc_trim) space */+};+#endif /* STRUCT_MALLINFO_DECLARED */+#endif /* HAVE_USR_INCLUDE_MALLOC_H */+#endif /* NO_MALLINFO */++/*+  Try to persuade compilers to inline. The most critical functions for+  inlining are defined as macros, so these aren't used for them.+*/++#ifndef FORCEINLINE+  #if defined(__GNUC__)+#define FORCEINLINE __inline __attribute__ ((always_inline))+  #elif defined(_MSC_VER)+    #define FORCEINLINE __forceinline+  #endif+#endif+#ifndef NOINLINE+  #if defined(__GNUC__)+    #define NOINLINE __attribute__ ((noinline))+  #elif defined(_MSC_VER)+    #define NOINLINE __declspec(noinline)+  #else+    #define NOINLINE+  #endif+#endif++#ifdef __cplusplus+extern "C" {+#ifndef FORCEINLINE+ #define FORCEINLINE inline+#endif+#endif /* __cplusplus */+#ifndef FORCEINLINE+ #define FORCEINLINE+#endif++#if !ONLY_MSPACES++/* ------------------- Declarations of public routines ------------------- */++#ifndef USE_DL_PREFIX+#define dlcalloc               calloc+#define dlfree                 free+#define dlmalloc               malloc+#define dlmemalign             memalign+#define dlposix_memalign       posix_memalign+#define dlrealloc              realloc+#define dlrealloc_in_place     realloc_in_place+#define dlvalloc               valloc+#define dlpvalloc              pvalloc+#define dlmallinfo             mallinfo+#define dlmallopt              mallopt+#define dlmalloc_trim          malloc_trim+#define dlmalloc_stats         malloc_stats+#define dlmalloc_usable_size   malloc_usable_size+#define dlmalloc_footprint     malloc_footprint+#define dlmalloc_max_footprint malloc_max_footprint+#define dlmalloc_footprint_limit malloc_footprint_limit+#define dlmalloc_set_footprint_limit malloc_set_footprint_limit+#define dlmalloc_inspect_all   malloc_inspect_all+#define dlindependent_calloc   independent_calloc+#define dlindependent_comalloc independent_comalloc+#define dlbulk_free            bulk_free+#endif /* USE_DL_PREFIX */++/*+  malloc(size_t n)+  Returns a pointer to a newly allocated chunk of at least n bytes, or+  null if no space is available, in which case errno is set to ENOMEM+  on ANSI C systems.++  If n is zero, malloc returns a minimum-sized chunk. (The minimum+  size is 16 bytes on most 32bit systems, and 32 bytes on 64bit+  systems.)  Note that size_t is an unsigned type, so calls with+  arguments that would be negative if signed are interpreted as+  requests for huge amounts of space, which will often fail. The+  maximum supported value of n differs across systems, but is in all+  cases less than the maximum representable value of a size_t.+*/+DLMALLOC_EXPORT void* dlmalloc(size_t);++/*+  free(void* p)+  Releases the chunk of memory pointed to by p, that had been previously+  allocated using malloc or a related routine such as realloc.+  It has no effect if p is null. If p was not malloced or already+  freed, free(p) will by default cause the current program to abort.+*/+DLMALLOC_EXPORT void  dlfree(void*);++/*+  calloc(size_t n_elements, size_t element_size);+  Returns a pointer to n_elements * element_size bytes, with all locations+  set to zero.+*/+DLMALLOC_EXPORT void* dlcalloc(size_t, size_t);++/*+  realloc(void* p, size_t n)+  Returns a pointer to a chunk of size n that contains the same data+  as does chunk p up to the minimum of (n, p's size) bytes, or null+  if no space is available.++  The returned pointer may or may not be the same as p. The algorithm+  prefers extending p in most cases when possible, otherwise it+  employs the equivalent of a malloc-copy-free sequence.++  If p is null, realloc is equivalent to malloc.++  If space is not available, realloc returns null, errno is set (if on+  ANSI) and p is NOT freed.++  if n is for fewer bytes than already held by p, the newly unused+  space is lopped off and freed if possible.  realloc with a size+  argument of zero (re)allocates a minimum-sized chunk.++  The old unix realloc convention of allowing the last-free'd chunk+  to be used as an argument to realloc is not supported.+*/+DLMALLOC_EXPORT void* dlrealloc(void*, size_t);++/*+  realloc_in_place(void* p, size_t n)+  Resizes the space allocated for p to size n, only if this can be+  done without moving p (i.e., only if there is adjacent space+  available if n is greater than p's current allocated size, or n is+  less than or equal to p's size). This may be used instead of plain+  realloc if an alternative allocation strategy is needed upon failure+  to expand space; for example, reallocation of a buffer that must be+  memory-aligned or cleared. You can use realloc_in_place to trigger+  these alternatives only when needed.++  Returns p if successful; otherwise null.+*/+DLMALLOC_EXPORT void* dlrealloc_in_place(void*, size_t);++/*+  memalign(size_t alignment, size_t n);+  Returns a pointer to a newly allocated chunk of n bytes, aligned+  in accord with the alignment argument.++  The alignment argument should be a power of two. If the argument is+  not a power of two, the nearest greater power is used.+  8-byte alignment is guaranteed by normal malloc calls, so don't+  bother calling memalign with an argument of 8 or less.++  Overreliance on memalign is a sure way to fragment space.+*/+DLMALLOC_EXPORT void* dlmemalign(size_t, size_t);++/*+  int posix_memalign(void** pp, size_t alignment, size_t n);+  Allocates a chunk of n bytes, aligned in accord with the alignment+  argument. Differs from memalign only in that it (1) assigns the+  allocated memory to *pp rather than returning it, (2) fails and+  returns EINVAL if the alignment is not a power of two (3) fails and+  returns ENOMEM if memory cannot be allocated.+*/+DLMALLOC_EXPORT int dlposix_memalign(void**, size_t, size_t);++/*+  valloc(size_t n);+  Equivalent to memalign(pagesize, n), where pagesize is the page+  size of the system. If the pagesize is unknown, 4096 is used.+*/+DLMALLOC_EXPORT void* dlvalloc(size_t);++/*+  mallopt(int parameter_number, int parameter_value)+  Sets tunable parameters The format is to provide a+  (parameter-number, parameter-value) pair.  mallopt then sets the+  corresponding parameter to the argument value if it can (i.e., so+  long as the value is meaningful), and returns 1 if successful else+  0.  To workaround the fact that mallopt is specified to use int,+  not size_t parameters, the value -1 is specially treated as the+  maximum unsigned size_t value.++  SVID/XPG/ANSI defines four standard param numbers for mallopt,+  normally defined in malloc.h.  None of these are use in this malloc,+  so setting them has no effect. But this malloc also supports other+  options in mallopt. See below for details.  Briefly, supported+  parameters are as follows (listed defaults are for "typical"+  configurations).++  Symbol            param #  default    allowed param values+  M_TRIM_THRESHOLD     -1   2*1024*1024   any   (-1 disables)+  M_GRANULARITY        -2     page size   any power of 2 >= page size+  M_MMAP_THRESHOLD     -3      256*1024   any   (or 0 if no MMAP support)+*/+DLMALLOC_EXPORT int dlmallopt(int, int);++/*+  malloc_footprint();+  Returns the number of bytes obtained from the system.  The total+  number of bytes allocated by malloc, realloc etc., is less than this+  value. Unlike mallinfo, this function returns only a precomputed+  result, so can be called frequently to monitor memory consumption.+  Even if locks are otherwise defined, this function does not use them,+  so results might not be up to date.+*/+DLMALLOC_EXPORT size_t dlmalloc_footprint(void);++/*+  malloc_max_footprint();+  Returns the maximum number of bytes obtained from the system. This+  value will be greater than current footprint if deallocated space+  has been reclaimed by the system. The peak number of bytes allocated+  by malloc, realloc etc., is less than this value. Unlike mallinfo,+  this function returns only a precomputed result, so can be called+  frequently to monitor memory consumption.  Even if locks are+  otherwise defined, this function does not use them, so results might+  not be up to date.+*/+DLMALLOC_EXPORT size_t dlmalloc_max_footprint(void);++/*+  malloc_footprint_limit();+  Returns the number of bytes that the heap is allowed to obtain from+  the system, returning the last value returned by+  malloc_set_footprint_limit, or the maximum size_t value if+  never set. The returned value reflects a permission. There is no+  guarantee that this number of bytes can actually be obtained from+  the system.+*/+DLMALLOC_EXPORT size_t dlmalloc_footprint_limit();++/*+  malloc_set_footprint_limit();+  Sets the maximum number of bytes to obtain from the system, causing+  failure returns from malloc and related functions upon attempts to+  exceed this value. The argument value may be subject to page+  rounding to an enforceable limit; this actual value is returned.+  Using an argument of the maximum possible size_t effectively+  disables checks. If the argument is less than or equal to the+  current malloc_footprint, then all future allocations that require+  additional system memory will fail. However, invocation cannot+  retroactively deallocate existing used memory.+*/+DLMALLOC_EXPORT size_t dlmalloc_set_footprint_limit(size_t bytes);++#if MALLOC_INSPECT_ALL+/*+  malloc_inspect_all(void(*handler)(void *start,+                                    void *end,+                                    size_t used_bytes,+                                    void* callback_arg),+                      void* arg);+  Traverses the heap and calls the given handler for each managed+  region, skipping all bytes that are (or may be) used for bookkeeping+  purposes.  Traversal does not include include chunks that have been+  directly memory mapped. Each reported region begins at the start+  address, and continues up to but not including the end address.  The+  first used_bytes of the region contain allocated data. If+  used_bytes is zero, the region is unallocated. The handler is+  invoked with the given callback argument. If locks are defined, they+  are held during the entire traversal. It is a bad idea to invoke+  other malloc functions from within the handler.++  For example, to count the number of in-use chunks with size greater+  than 1000, you could write:+  static int count = 0;+  void count_chunks(void* start, void* end, size_t used, void* arg) {+    if (used >= 1000) ++count;+  }+  then:+    malloc_inspect_all(count_chunks, NULL);++  malloc_inspect_all is compiled only if MALLOC_INSPECT_ALL is defined.+*/+DLMALLOC_EXPORT void dlmalloc_inspect_all(void(*handler)(void*, void *, size_t, void*),+                           void* arg);++#endif /* MALLOC_INSPECT_ALL */++#if !NO_MALLINFO+/*+  mallinfo()+  Returns (by copy) a struct containing various summary statistics:++  arena:     current total non-mmapped bytes allocated from system+  ordblks:   the number of free chunks+  smblks:    always zero.+  hblks:     current number of mmapped regions+  hblkhd:    total bytes held in mmapped regions+  usmblks:   the maximum total allocated space. This will be greater+                than current total if trimming has occurred.+  fsmblks:   always zero+  uordblks:  current total allocated space (normal or mmapped)+  fordblks:  total free space+  keepcost:  the maximum number of bytes that could ideally be released+               back to system via malloc_trim. ("ideally" means that+               it ignores page restrictions etc.)++  Because these fields are ints, but internal bookkeeping may+  be kept as longs, the reported values may wrap around zero and+  thus be inaccurate.+*/+DLMALLOC_EXPORT struct mallinfo dlmallinfo(void);+#endif /* NO_MALLINFO */++/*+  independent_calloc(size_t n_elements, size_t element_size, void* chunks[]);++  independent_calloc is similar to calloc, but instead of returning a+  single cleared space, it returns an array of pointers to n_elements+  independent elements that can hold contents of size elem_size, each+  of which starts out cleared, and can be independently freed,+  realloc'ed etc. The elements are guaranteed to be adjacently+  allocated (this is not guaranteed to occur with multiple callocs or+  mallocs), which may also improve cache locality in some+  applications.++  The "chunks" argument is optional (i.e., may be null, which is+  probably the most typical usage). If it is null, the returned array+  is itself dynamically allocated and should also be freed when it is+  no longer needed. Otherwise, the chunks array must be of at least+  n_elements in length. It is filled in with the pointers to the+  chunks.++  In either case, independent_calloc returns this pointer array, or+  null if the allocation failed.  If n_elements is zero and "chunks"+  is null, it returns a chunk representing an array with zero elements+  (which should be freed if not wanted).++  Each element must be freed when it is no longer needed. This can be+  done all at once using bulk_free.++  independent_calloc simplifies and speeds up implementations of many+  kinds of pools.  It may also be useful when constructing large data+  structures that initially have a fixed number of fixed-sized nodes,+  but the number is not known at compile time, and some of the nodes+  may later need to be freed. For example:++  struct Node { int item; struct Node* next; };++  struct Node* build_list() {+    struct Node** pool;+    int n = read_number_of_nodes_needed();+    if (n <= 0) return 0;+    pool = (struct Node**)(independent_calloc(n, sizeof(struct Node), 0);+    if (pool == 0) die();+    // organize into a linked list...+    struct Node* first = pool[0];+    for (i = 0; i < n-1; ++i)+      pool[i]->next = pool[i+1];+    free(pool);     // Can now free the array (or not, if it is needed later)+    return first;+  }+*/+DLMALLOC_EXPORT void** dlindependent_calloc(size_t, size_t, void**);++/*+  independent_comalloc(size_t n_elements, size_t sizes[], void* chunks[]);++  independent_comalloc allocates, all at once, a set of n_elements+  chunks with sizes indicated in the "sizes" array.    It returns+  an array of pointers to these elements, each of which can be+  independently freed, realloc'ed etc. The elements are guaranteed to+  be adjacently allocated (this is not guaranteed to occur with+  multiple callocs or mallocs), which may also improve cache locality+  in some applications.++  The "chunks" argument is optional (i.e., may be null). If it is null+  the returned array is itself dynamically allocated and should also+  be freed when it is no longer needed. Otherwise, the chunks array+  must be of at least n_elements in length. It is filled in with the+  pointers to the chunks.++  In either case, independent_comalloc returns this pointer array, or+  null if the allocation failed.  If n_elements is zero and chunks is+  null, it returns a chunk representing an array with zero elements+  (which should be freed if not wanted).++  Each element must be freed when it is no longer needed. This can be+  done all at once using bulk_free.++  independent_comallac differs from independent_calloc in that each+  element may have a different size, and also that it does not+  automatically clear elements.++  independent_comalloc can be used to speed up allocation in cases+  where several structs or objects must always be allocated at the+  same time.  For example:++  struct Head { ... }+  struct Foot { ... }++  void send_message(char* msg) {+    int msglen = strlen(msg);+    size_t sizes[3] = { sizeof(struct Head), msglen, sizeof(struct Foot) };+    void* chunks[3];+    if (independent_comalloc(3, sizes, chunks) == 0)+      die();+    struct Head* head = (struct Head*)(chunks[0]);+    char*        body = (char*)(chunks[1]);+    struct Foot* foot = (struct Foot*)(chunks[2]);+    // ...+  }++  In general though, independent_comalloc is worth using only for+  larger values of n_elements. For small values, you probably won't+  detect enough difference from series of malloc calls to bother.++  Overuse of independent_comalloc can increase overall memory usage,+  since it cannot reuse existing noncontiguous small chunks that+  might be available for some of the elements.+*/+DLMALLOC_EXPORT void** dlindependent_comalloc(size_t, size_t*, void**);++/*+  bulk_free(void* array[], size_t n_elements)+  Frees and clears (sets to null) each non-null pointer in the given+  array.  This is likely to be faster than freeing them one-by-one.+  If footers are used, pointers that have been allocated in different+  mspaces are not freed or cleared, and the count of all such pointers+  is returned.  For large arrays of pointers with poor locality, it+  may be worthwhile to sort this array before calling bulk_free.+*/+DLMALLOC_EXPORT size_t  dlbulk_free(void**, size_t n_elements);++/*+  pvalloc(size_t n);+  Equivalent to valloc(minimum-page-that-holds(n)), that is,+  round up n to nearest pagesize.+ */+DLMALLOC_EXPORT void*  dlpvalloc(size_t);++/*+  malloc_trim(size_t pad);++  If possible, gives memory back to the system (via negative arguments+  to sbrk) if there is unused memory at the `high' end of the malloc+  pool or in unused MMAP segments. You can call this after freeing+  large blocks of memory to potentially reduce the system-level memory+  requirements of a program. However, it cannot guarantee to reduce+  memory. Under some allocation patterns, some large free blocks of+  memory will be locked between two used chunks, so they cannot be+  given back to the system.++  The `pad' argument to malloc_trim represents the amount of free+  trailing space to leave untrimmed. If this argument is zero, only+  the minimum amount of memory to maintain internal data structures+  will be left. Non-zero arguments can be supplied to maintain enough+  trailing space to service future expected allocations without having+  to re-obtain memory from the system.++  Malloc_trim returns 1 if it actually released any memory, else 0.+*/+DLMALLOC_EXPORT int  dlmalloc_trim(size_t);++/*+  malloc_stats();+  Prints on stderr the amount of space obtained from the system (both+  via sbrk and mmap), the maximum amount (which may be more than+  current if malloc_trim and/or munmap got called), and the current+  number of bytes allocated via malloc (or realloc, etc) but not yet+  freed. Note that this is the number of bytes allocated, not the+  number requested. It will be larger than the number requested+  because of alignment and bookkeeping overhead. Because it includes+  alignment wastage as being in use, this figure may be greater than+  zero even when no user-level chunks are allocated.++  The reported current and maximum system memory can be inaccurate if+  a program makes other calls to system memory allocation functions+  (normally sbrk) outside of malloc.++  malloc_stats prints only the most commonly interesting statistics.+  More information can be obtained by calling mallinfo.+*/+DLMALLOC_EXPORT void  dlmalloc_stats(void);++/*+  malloc_usable_size(void* p);++  Returns the number of bytes you can actually use in+  an allocated chunk, which may be more than you requested (although+  often not) due to alignment and minimum size constraints.+  You can use this many bytes without worrying about+  overwriting other allocated objects. This is not a particularly great+  programming practice. malloc_usable_size can be more useful in+  debugging and assertions, for example:++  p = malloc(n);+  assert(malloc_usable_size(p) >= 256);+*/+size_t dlmalloc_usable_size(void*);++#endif /* ONLY_MSPACES */++#if MSPACES++/*+  mspace is an opaque type representing an independent+  region of space that supports mspace_malloc, etc.+*/+typedef void* mspace;++/*+  create_mspace creates and returns a new independent space with the+  given initial capacity, or, if 0, the default granularity size.  It+  returns null if there is no system memory available to create the+  space.  If argument locked is non-zero, the space uses a separate+  lock to control access. The capacity of the space will grow+  dynamically as needed to service mspace_malloc requests.  You can+  control the sizes of incremental increases of this space by+  compiling with a different DEFAULT_GRANULARITY or dynamically+  setting with mallopt(M_GRANULARITY, value).+*/+DLMALLOC_EXPORT mspace create_mspace(size_t capacity, int locked);++/*+  destroy_mspace destroys the given space, and attempts to return all+  of its memory back to the system, returning the total number of+  bytes freed. After destruction, the results of access to all memory+  used by the space become undefined.+*/+DLMALLOC_EXPORT size_t destroy_mspace(mspace msp);++/*+  create_mspace_with_base uses the memory supplied as the initial base+  of a new mspace. Part (less than 128*sizeof(size_t) bytes) of this+  space is used for bookkeeping, so the capacity must be at least this+  large. (Otherwise 0 is returned.) When this initial space is+  exhausted, additional memory will be obtained from the system.+  Destroying this space will deallocate all additionally allocated+  space (if possible) but not the initial base.+*/+DLMALLOC_EXPORT mspace create_mspace_with_base(void* base, size_t capacity, int locked);++/*+  mspace_track_large_chunks controls whether requests for large chunks+  are allocated in their own untracked mmapped regions, separate from+  others in this mspace. By default large chunks are not tracked,+  which reduces fragmentation. However, such chunks are not+  necessarily released to the system upon destroy_mspace.  Enabling+  tracking by setting to true may increase fragmentation, but avoids+  leakage when relying on destroy_mspace to release all memory+  allocated using this space.  The function returns the previous+  setting.+*/+DLMALLOC_EXPORT int mspace_track_large_chunks(mspace msp, int enable);+++/*+  mspace_malloc behaves as malloc, but operates within+  the given space.+*/+DLMALLOC_EXPORT void* mspace_malloc(mspace msp, size_t bytes);++/*+  mspace_free behaves as free, but operates within+  the given space.++  If compiled with FOOTERS==1, mspace_free is not actually needed.+  free may be called instead of mspace_free because freed chunks from+  any space are handled by their originating spaces.+*/+DLMALLOC_EXPORT void mspace_free(mspace msp, void* mem);++/*+  mspace_realloc behaves as realloc, but operates within+  the given space.++  If compiled with FOOTERS==1, mspace_realloc is not actually+  needed.  realloc may be called instead of mspace_realloc because+  realloced chunks from any space are handled by their originating+  spaces.+*/+DLMALLOC_EXPORT void* mspace_realloc(mspace msp, void* mem, size_t newsize);++/*+  mspace_calloc behaves as calloc, but operates within+  the given space.+*/+DLMALLOC_EXPORT void* mspace_calloc(mspace msp, size_t n_elements, size_t elem_size);++/*+  mspace_memalign behaves as memalign, but operates within+  the given space.+*/+DLMALLOC_EXPORT void* mspace_memalign(mspace msp, size_t alignment, size_t bytes);++/*+  mspace_independent_calloc behaves as independent_calloc, but+  operates within the given space.+*/+DLMALLOC_EXPORT void** mspace_independent_calloc(mspace msp, size_t n_elements,+                                 size_t elem_size, void* chunks[]);++/*+  mspace_independent_comalloc behaves as independent_comalloc, but+  operates within the given space.+*/+DLMALLOC_EXPORT void** mspace_independent_comalloc(mspace msp, size_t n_elements,+                                   size_t sizes[], void* chunks[]);++/*+  mspace_footprint() returns the number of bytes obtained from the+  system for this space.+*/+DLMALLOC_EXPORT size_t mspace_footprint(mspace msp);++/*+  mspace_max_footprint() returns the peak number of bytes obtained from the+  system for this space.+*/+DLMALLOC_EXPORT size_t mspace_max_footprint(mspace msp);+++#if !NO_MALLINFO+/*+  mspace_mallinfo behaves as mallinfo, but reports properties of+  the given space.+*/+DLMALLOC_EXPORT struct mallinfo mspace_mallinfo(mspace msp);+#endif /* NO_MALLINFO */++/*+  malloc_usable_size(void* p) behaves the same as malloc_usable_size;+*/+DLMALLOC_EXPORT size_t mspace_usable_size(const void* mem);++/*+  mspace_malloc_stats behaves as malloc_stats, but reports+  properties of the given space.+*/+DLMALLOC_EXPORT void mspace_malloc_stats(mspace msp);++/*+  mspace_trim behaves as malloc_trim, but+  operates within the given space.+*/+DLMALLOC_EXPORT int mspace_trim(mspace msp, size_t pad);++/*+  An alias for mallopt.+*/+DLMALLOC_EXPORT int mspace_mallopt(int, int);++#endif /* MSPACES */++#ifdef __cplusplus+}  /* end of extern "C" */+#endif /* __cplusplus */++/*+  ========================================================================+  To make a fully customizable malloc.h header file, cut everything+  above this line, put into file malloc.h, edit to suit, and #include it+  on the next line, as well as in programs that use this malloc.+  ========================================================================+*/++/* #include "malloc.h" */++/*------------------------------ internal #includes ---------------------- */++#ifdef _MSC_VER+#pragma warning( disable : 4146 ) /* no "unsigned" warnings */+#endif /* _MSC_VER */+#if !NO_MALLOC_STATS+#include <stdio.h>       /* for printing in malloc_stats */+#endif /* NO_MALLOC_STATS */+#ifndef LACKS_ERRNO_H+#include <errno.h>       /* for MALLOC_FAILURE_ACTION */+#endif /* LACKS_ERRNO_H */+#ifdef DEBUG+#if ABORT_ON_ASSERT_FAILURE+#undef assert+#define assert(x) if(!(x)) ABORT+#else /* ABORT_ON_ASSERT_FAILURE */+#include <assert.h>+#endif /* ABORT_ON_ASSERT_FAILURE */+#else  /* DEBUG */+#ifndef assert+#define assert(x)+#endif+#define DEBUG 0+#endif /* DEBUG */+#if !defined(WIN32) && !defined(LACKS_TIME_H)+#include <time.h>        /* for magic initialization */+#endif /* WIN32 */+#ifndef LACKS_STDLIB_H+#include <stdlib.h>      /* for abort() */+#endif /* LACKS_STDLIB_H */+#ifndef LACKS_STRING_H+#include <string.h>      /* for memset etc */+#endif  /* LACKS_STRING_H */+#if USE_BUILTIN_FFS+#ifndef LACKS_STRINGS_H+#include <strings.h>     /* for ffs */+#endif /* LACKS_STRINGS_H */+#endif /* USE_BUILTIN_FFS */+#if HAVE_MMAP+#ifndef LACKS_SYS_MMAN_H+/* On some versions of linux, mremap decl in mman.h needs __USE_GNU set */+#if (defined(linux) && !defined(__USE_GNU))+#define __USE_GNU 1+#include <sys/mman.h>    /* for mmap */+#undef __USE_GNU+#else+#include <sys/mman.h>    /* for mmap */+#endif /* linux */+#endif /* LACKS_SYS_MMAN_H */+#ifndef LACKS_FCNTL_H+#include <fcntl.h>+#endif /* LACKS_FCNTL_H */+#endif /* HAVE_MMAP */+#ifndef LACKS_UNISTD_H+#include <unistd.h>     /* for sbrk, sysconf */+#else /* LACKS_UNISTD_H */+#if !defined(__FreeBSD__) && !defined(__OpenBSD__) && !defined(__NetBSD__)+extern void*     sbrk(ptrdiff_t);+#endif /* FreeBSD etc */+#endif /* LACKS_UNISTD_H */++/* Declarations for locking */+#if USE_LOCKS+#ifndef WIN32+#if defined (__SVR4) && defined (__sun)  /* solaris */+#include <thread.h>+#elif !defined(LACKS_SCHED_H)+#include <sched.h>+#endif /* solaris or LACKS_SCHED_H */+#if (defined(USE_RECURSIVE_LOCKS) && USE_RECURSIVE_LOCKS != 0) || !USE_SPIN_LOCKS+#include <pthread.h>+#endif /* USE_RECURSIVE_LOCKS ... */+#elif defined(_MSC_VER)+#ifndef _M_AMD64+/* These are already defined on AMD64 builds */+#ifdef __cplusplus+extern "C" {+#endif /* __cplusplus */+LONG __cdecl _InterlockedCompareExchange(LONG volatile *Dest, LONG Exchange, LONG Comp);+LONG __cdecl _InterlockedExchange(LONG volatile *Target, LONG Value);+#ifdef __cplusplus+}+#endif /* __cplusplus */+#endif /* _M_AMD64 */+#pragma intrinsic (_InterlockedCompareExchange)+#pragma intrinsic (_InterlockedExchange)+#define interlockedcompareexchange _InterlockedCompareExchange+#define interlockedexchange _InterlockedExchange+#elif defined(WIN32) && defined(__GNUC__)+#define interlockedcompareexchange(a, b, c) __sync_val_compare_and_swap(a, c, b)+#define interlockedexchange __sync_lock_test_and_set+#endif /* Win32 */+#else /* USE_LOCKS */+#endif /* USE_LOCKS */++#ifndef LOCK_AT_FORK+#define LOCK_AT_FORK 0+#endif++/* Declarations for bit scanning on win32 */+#if defined(_MSC_VER) && _MSC_VER>=1300+#ifndef BitScanForward /* Try to avoid pulling in WinNT.h */+#ifdef __cplusplus+extern "C" {+#endif /* __cplusplus */+unsigned char _BitScanForward(unsigned long *index, unsigned long mask);+unsigned char _BitScanReverse(unsigned long *index, unsigned long mask);+#ifdef __cplusplus+}+#endif /* __cplusplus */++#define BitScanForward _BitScanForward+#define BitScanReverse _BitScanReverse+#pragma intrinsic(_BitScanForward)+#pragma intrinsic(_BitScanReverse)+#endif /* BitScanForward */+#endif /* defined(_MSC_VER) && _MSC_VER>=1300 */++#ifndef WIN32+#ifndef malloc_getpagesize+#  ifdef _SC_PAGESIZE         /* some SVR4 systems omit an underscore */+#    ifndef _SC_PAGE_SIZE+#      define _SC_PAGE_SIZE _SC_PAGESIZE+#    endif+#  endif+#  ifdef _SC_PAGE_SIZE+#    define malloc_getpagesize sysconf(_SC_PAGE_SIZE)+#  else+#    if defined(BSD) || defined(DGUX) || defined(HAVE_GETPAGESIZE)+       extern size_t getpagesize();+#      define malloc_getpagesize getpagesize()+#    else+#      ifdef WIN32 /* use supplied emulation of getpagesize */+#        define malloc_getpagesize getpagesize()+#      else+#        ifndef LACKS_SYS_PARAM_H+#          include <sys/param.h>+#        endif+#        ifdef EXEC_PAGESIZE+#          define malloc_getpagesize EXEC_PAGESIZE+#        else+#          ifdef NBPG+#            ifndef CLSIZE+#              define malloc_getpagesize NBPG+#            else+#              define malloc_getpagesize (NBPG * CLSIZE)+#            endif+#          else+#            ifdef NBPC+#              define malloc_getpagesize NBPC+#            else+#              ifdef PAGESIZE+#                define malloc_getpagesize PAGESIZE+#              else /* just guess */+#                define malloc_getpagesize ((size_t)4096U)+#              endif+#            endif+#          endif+#        endif+#      endif+#    endif+#  endif+#endif+#endif++/* libffi: the upstream malloc_getpagesize definition above is gated on+   !WIN32 (WIN32 builds use GetSystemInfo in init_mparams instead).  Guarantee+   the symbol is always defined so the !WIN32 init_mparams branch still compiles+   on toolchains where it is not preprocessed out as expected (e.g. MSVC).  */+#ifndef malloc_getpagesize+#define malloc_getpagesize ((size_t)4096U)+#endif++/* ------------------- size_t and alignment properties -------------------- */++/* The byte and bit size of a size_t */+#define SIZE_T_SIZE         (sizeof(size_t))+#define SIZE_T_BITSIZE      (sizeof(size_t) << 3)++/* Some constants coerced to size_t */+/* Annoying but necessary to avoid errors on some platforms */+#define SIZE_T_ZERO         ((size_t)0)+#define SIZE_T_ONE          ((size_t)1)+#define SIZE_T_TWO          ((size_t)2)+#define SIZE_T_FOUR         ((size_t)4)+#define TWO_SIZE_T_SIZES    (SIZE_T_SIZE<<1)+#define FOUR_SIZE_T_SIZES   (SIZE_T_SIZE<<2)+#define SIX_SIZE_T_SIZES    (FOUR_SIZE_T_SIZES+TWO_SIZE_T_SIZES)+#define HALF_MAX_SIZE_T     (MAX_SIZE_T / 2U)++/* The bit mask value corresponding to MALLOC_ALIGNMENT */+#define CHUNK_ALIGN_MASK    (MALLOC_ALIGNMENT - SIZE_T_ONE)++/* True if address a has acceptable alignment */+#define is_aligned(A)       (((size_t)((A)) & (CHUNK_ALIGN_MASK)) == 0)++/* the number of bytes to offset an address to align it */+#define align_offset(A)\+ ((((size_t)(A) & CHUNK_ALIGN_MASK) == 0)? 0 :\+  ((MALLOC_ALIGNMENT - ((size_t)(A) & CHUNK_ALIGN_MASK)) & CHUNK_ALIGN_MASK))++/* -------------------------- MMAP preliminaries ------------------------- */++/*+   If HAVE_MORECORE or HAVE_MMAP are false, we just define calls and+   checks to fail so compiler optimizer can delete code rather than+   using so many "#if"s.+*/+++/* MORECORE and MMAP must return MFAIL on failure */+#define MFAIL                ((void*)(MAX_SIZE_T))+#define CMFAIL               ((char*)(MFAIL)) /* defined for convenience */++#if HAVE_MMAP++#if !defined(WIN32) && !defined (__OS2__)+#define MUNMAP_DEFAULT(a, s)  munmap((a), (s))+#define MMAP_PROT            (PROT_READ|PROT_WRITE)+#if !defined(MAP_ANONYMOUS) && defined(MAP_ANON)+#define MAP_ANONYMOUS        MAP_ANON+#endif /* MAP_ANON */+#ifdef MAP_ANONYMOUS+#define MMAP_FLAGS           (MAP_PRIVATE|MAP_ANONYMOUS)+#define MMAP_DEFAULT(s)       mmap(0, (s), MMAP_PROT, MMAP_FLAGS, -1, 0)+#else /* MAP_ANONYMOUS */+/*+   Nearly all versions of mmap support MAP_ANONYMOUS, so the following+   is unlikely to be needed, but is supplied just in case.+*/+#define MMAP_FLAGS           (MAP_PRIVATE)+static int dev_zero_fd = -1; /* Cached file descriptor for /dev/zero. */+#define MMAP_DEFAULT(s) ((dev_zero_fd < 0) ? \+           (dev_zero_fd = open("/dev/zero", O_RDWR), \+            mmap(0, (s), MMAP_PROT, MMAP_FLAGS, dev_zero_fd, 0)) : \+            mmap(0, (s), MMAP_PROT, MMAP_FLAGS, dev_zero_fd, 0))+#endif /* MAP_ANONYMOUS */++#define DIRECT_MMAP_DEFAULT(s) MMAP_DEFAULT(s)++#elif defined(__OS2__)++/* OS/2 MMAP via DosAllocMem */+static void* os2mmap(size_t size) {+  void* ptr;+  if (DosAllocMem(&ptr, size, OBJ_ANY|PAG_COMMIT|PAG_READ|PAG_WRITE) &&+      DosAllocMem(&ptr, size, PAG_COMMIT|PAG_READ|PAG_WRITE))+    return MFAIL;+  return ptr;+}++#define os2direct_mmap(n)     os2mmap(n)++/* This function supports releasing coalesed segments */+static int os2munmap(void* ptr, size_t size) {+  while (size) {+    ULONG ulSize = size;+    ULONG ulFlags = 0;+    if (DosQueryMem(ptr, &ulSize, &ulFlags) != 0)+      return -1;+    if ((ulFlags & PAG_BASE) == 0 ||(ulFlags & PAG_COMMIT) == 0 ||+        ulSize > size)+      return -1;+    if (DosFreeMem(ptr) != 0)+      return -1;+    ptr = ( void * ) ( ( char * ) ptr + ulSize );+    size -= ulSize;+  }+  return 0;+}++#define MMAP_DEFAULT(s)         os2mmap(s)+#define MUNMAP_DEFAULT(a, s)    os2munmap((a), (s))+#define DIRECT_MMAP_DEFAULT(s)  os2direct_mmap(s)++#else /* WIN32 */++/* Win32 MMAP via VirtualAlloc */+/* libffi: plain static (not FORCEINLINE) -- mingw's <windows.h> defines+   FORCEINLINE with an 'extern' storage class, which clashes with 'static'.  */+static void* win32mmap(size_t size) {+  void* ptr = VirtualAlloc(0, size, MEM_RESERVE|MEM_COMMIT, PAGE_EXECUTE_READWRITE);+  return (ptr != 0)? ptr: MFAIL;+}++/* For direct MMAP, use MEM_TOP_DOWN to minimize interference */+static void* win32direct_mmap(size_t size) {+  void* ptr = VirtualAlloc(0, size, MEM_RESERVE|MEM_COMMIT|MEM_TOP_DOWN,+                           PAGE_EXECUTE_READWRITE);+  return (ptr != 0)? ptr: MFAIL;+}++/* This function supports releasing coalesed segments */+static int win32munmap(void* ptr, size_t size) {+  MEMORY_BASIC_INFORMATION minfo;+  char* cptr = (char*)ptr;+  while (size) {+    if (VirtualQuery(cptr, &minfo, sizeof(minfo)) == 0)+      return -1;+    if (minfo.BaseAddress != cptr || minfo.AllocationBase != cptr ||+        minfo.State != MEM_COMMIT || minfo.RegionSize > size)+      return -1;+    if (VirtualFree(cptr, 0, MEM_RELEASE) == 0)+      return -1;+    cptr += minfo.RegionSize;+    size -= minfo.RegionSize;+  }+  return 0;+}++#define MMAP_DEFAULT(s)             win32mmap(s)+#define MUNMAP_DEFAULT(a, s)        win32munmap((a), (s))+#define DIRECT_MMAP_DEFAULT(s)      win32direct_mmap(s)+#endif /* WIN32 */+#endif /* HAVE_MMAP */++#if HAVE_MREMAP+#ifndef WIN32+#define MREMAP_DEFAULT(addr, osz, nsz, mv) mremap((addr), (osz), (nsz), (mv))+#endif /* WIN32 */+#endif /* HAVE_MREMAP */++/**+ * Define CALL_MORECORE+ */+#if HAVE_MORECORE+    #ifdef MORECORE+        #define CALL_MORECORE(S)    MORECORE(S)+    #else  /* MORECORE */+        #define CALL_MORECORE(S)    MORECORE_DEFAULT(S)+    #endif /* MORECORE */+#else  /* HAVE_MORECORE */+    #define CALL_MORECORE(S)        MFAIL+#endif /* HAVE_MORECORE */++/**+ * Define CALL_MMAP/CALL_MUNMAP/CALL_DIRECT_MMAP+ */+#if HAVE_MMAP+    #define USE_MMAP_BIT            (SIZE_T_ONE)++    #ifdef MMAP+        #define CALL_MMAP(s)        MMAP(s)+    #else /* MMAP */+        #define CALL_MMAP(s)        MMAP_DEFAULT(s)+    #endif /* MMAP */+    #ifdef MUNMAP+        #define CALL_MUNMAP(a, s)   MUNMAP((a), (s))+    #else /* MUNMAP */+        #define CALL_MUNMAP(a, s)   MUNMAP_DEFAULT((a), (s))+    #endif /* MUNMAP */+    #ifdef DIRECT_MMAP+        #define CALL_DIRECT_MMAP(s) DIRECT_MMAP(s)+    #else /* DIRECT_MMAP */+        #define CALL_DIRECT_MMAP(s) DIRECT_MMAP_DEFAULT(s)+    #endif /* DIRECT_MMAP */+#else  /* HAVE_MMAP */+    #define USE_MMAP_BIT            (SIZE_T_ZERO)++    #define MMAP(s)                 MFAIL+    #define MUNMAP(a, s)            (-1)+    #define DIRECT_MMAP(s)          MFAIL+    #define CALL_DIRECT_MMAP(s)     DIRECT_MMAP(s)+    #define CALL_MMAP(s)            MMAP(s)+    #define CALL_MUNMAP(a, s)       MUNMAP((a), (s))+#endif /* HAVE_MMAP */++/**+ * Define CALL_MREMAP+ */+#if HAVE_MMAP && HAVE_MREMAP+    #ifdef MREMAP+        #define CALL_MREMAP(addr, osz, nsz, mv) MREMAP((addr), (osz), (nsz), (mv))+    #else /* MREMAP */+        #define CALL_MREMAP(addr, osz, nsz, mv) MREMAP_DEFAULT((addr), (osz), (nsz), (mv))+    #endif /* MREMAP */+#else  /* HAVE_MMAP && HAVE_MREMAP */+    #define CALL_MREMAP(addr, osz, nsz, mv)     MFAIL+#endif /* HAVE_MMAP && HAVE_MREMAP */++/* mstate bit set if contiguous morecore disabled or failed */+#define USE_NONCONTIGUOUS_BIT (4U)++/* segment bit set in create_mspace_with_base */+#define EXTERN_BIT            (8U)+++/* --------------------------- Lock preliminaries ------------------------ */++/*+  When locks are defined, there is one global lock, plus+  one per-mspace lock.++  The global lock_ensures that mparams.magic and other unique+  mparams values are initialized only once. It also protects+  sequences of calls to MORECORE.  In many cases sys_alloc requires+  two calls, that should not be interleaved with calls by other+  threads.  This does not protect against direct calls to MORECORE+  by other threads not using this lock, so there is still code to+  cope the best we can on interference.++  Per-mspace locks surround calls to malloc, free, etc.+  By default, locks are simple non-reentrant mutexes.++  Because lock-protected regions generally have bounded times, it is+  OK to use the supplied simple spinlocks. Spinlocks are likely to+  improve performance for lightly contended applications, but worsen+  performance under heavy contention.++  If USE_LOCKS is > 1, the definitions of lock routines here are+  bypassed, in which case you will need to define the type MLOCK_T,+  and at least INITIAL_LOCK, DESTROY_LOCK, ACQUIRE_LOCK, RELEASE_LOCK+  and TRY_LOCK.  You must also declare a+    static MLOCK_T malloc_global_mutex = { initialization values };.++*/++#if !USE_LOCKS+#define USE_LOCK_BIT               (0U)+#define INITIAL_LOCK(l)            (0)+#define DESTROY_LOCK(l)            (0)+#define ACQUIRE_MALLOC_GLOBAL_LOCK()+#define RELEASE_MALLOC_GLOBAL_LOCK()++#else+#if USE_LOCKS > 1+/* -----------------------  User-defined locks ------------------------ */+/* Define your own lock implementation here */+/* #define INITIAL_LOCK(lk)  ... */+/* #define DESTROY_LOCK(lk)  ... */+/* #define ACQUIRE_LOCK(lk)  ... */+/* #define RELEASE_LOCK(lk)  ... */+/* #define TRY_LOCK(lk) ... */+/* static MLOCK_T malloc_global_mutex = ... */++#elif USE_SPIN_LOCKS++/* First, define CAS_LOCK and CLEAR_LOCK on ints */+/* Note CAS_LOCK defined to return 0 on success */++#if defined(__GNUC__)&& (__GNUC__ > 4 || (__GNUC__ == 4 && __GNUC_MINOR__ >= 1))+#define CAS_LOCK(sl)     __sync_lock_test_and_set(sl, 1)+#define CLEAR_LOCK(sl)   __sync_lock_release(sl)++#elif (defined(__GNUC__) && (defined(__i386__) || defined(__x86_64__)))+/* Custom spin locks for older gcc on x86 */+static FORCEINLINE int x86_cas_lock(int *sl) {+  int ret;+  int val = 1;+  int cmp = 0;+  __asm__ __volatile__  ("lock; cmpxchgl %1, %2"+                         : "=a" (ret)+                         : "r" (val), "m" (*(sl)), "0"(cmp)+                         : "memory", "cc");+  return ret;+}++static FORCEINLINE void x86_clear_lock(int* sl) {+  assert(*sl != 0);+  int prev = 0;+  int ret;+  __asm__ __volatile__ ("lock; xchgl %0, %1"+                        : "=r" (ret)+                        : "m" (*(sl)), "0"(prev)+                        : "memory");+}++#define CAS_LOCK(sl)     x86_cas_lock(sl)+#define CLEAR_LOCK(sl)   x86_clear_lock(sl)++#else /* Win32 MSC */+#define CAS_LOCK(sl)     interlockedexchange(sl, (LONG)1)+#define CLEAR_LOCK(sl)   interlockedexchange (sl, (LONG)0)++#endif /* ... gcc spins locks ... */++/* How to yield for a spin lock */+#define SPINS_PER_YIELD       63+#if defined(_MSC_VER)+#define SLEEP_EX_DURATION     50 /* delay for yield/sleep */+#define SPIN_LOCK_YIELD  SleepEx(SLEEP_EX_DURATION, FALSE)+#elif defined (__SVR4) && defined (__sun) /* solaris */+#define SPIN_LOCK_YIELD   thr_yield();+#elif !defined(LACKS_SCHED_H)+#define SPIN_LOCK_YIELD   sched_yield();+#else+#define SPIN_LOCK_YIELD+#endif /* ... yield ... */++/* libffi: read the spin-lock word with a relaxed atomic load for the lock-free+   "is it held?" peek, so ThreadSanitizer does not flag it as racing with the+   atomic CLEAR_LOCK release on unlock.  Relaxed ordering is sufficient: the+   peek is only a hint to avoid a costly CAS, and CAS_LOCK still provides the+   acquire ordering on success.  Falls back to the original volatile read when+   atomic builtins are unavailable.  */+#if defined(__ATOMIC_RELAXED)+# define ffi_spin_peek(sl) __atomic_load_n((sl), __ATOMIC_RELAXED)+#elif defined(_MSC_VER)+# define ffi_spin_peek(sl) \+  ((int)_InterlockedCompareExchange((LONG volatile *)(sl), (LONG)0, (LONG)0))+#else+# define ffi_spin_peek(sl) (*(volatile int *)(sl))+#endif++#if !defined(USE_RECURSIVE_LOCKS) || USE_RECURSIVE_LOCKS == 0+/* Plain spin locks use single word (embedded in malloc_states) */+static int spin_acquire_lock(int *sl) {+  int spins = 0;+  while (ffi_spin_peek(sl) != 0 || CAS_LOCK(sl)) {+    if ((++spins & SPINS_PER_YIELD) == 0) {+      SPIN_LOCK_YIELD;+    }+  }+  return 0;+}++#define MLOCK_T               int+#define TRY_LOCK(sl)          !CAS_LOCK(sl)+#define RELEASE_LOCK(sl)      CLEAR_LOCK(sl)+#define ACQUIRE_LOCK(sl)      (CAS_LOCK(sl)? spin_acquire_lock(sl) : 0)+#define INITIAL_LOCK(sl)      (*sl = 0)+#define DESTROY_LOCK(sl)      (0)+static MLOCK_T malloc_global_mutex = 0;++#else /* USE_RECURSIVE_LOCKS */+/* types for lock owners */+#ifdef WIN32+#define THREAD_ID_T           DWORD+#define CURRENT_THREAD        GetCurrentThreadId()+#define EQ_OWNER(X,Y)         ((X) == (Y))+#else+/*+  Note: the following assume that pthread_t is a type that can be+  initialized to (casted) zero. If this is not the case, you will need to+  somehow redefine these or not use spin locks.+*/+#define THREAD_ID_T           pthread_t+#define CURRENT_THREAD        pthread_self()+#define EQ_OWNER(X,Y)         pthread_equal(X, Y)+#endif++struct malloc_recursive_lock {+  int sl;+  unsigned int c;+  THREAD_ID_T threadid;+};++#define MLOCK_T  struct malloc_recursive_lock+static MLOCK_T malloc_global_mutex = { 0, 0, (THREAD_ID_T)0};++static FORCEINLINE void recursive_release_lock(MLOCK_T *lk) {+  assert(lk->sl != 0);+  if (--lk->c == 0) {+    CLEAR_LOCK(&lk->sl);+  }+}++static FORCEINLINE int recursive_acquire_lock(MLOCK_T *lk) {+  THREAD_ID_T mythreadid = CURRENT_THREAD;+  int spins = 0;+  for (;;) {+    if (ffi_spin_peek(&lk->sl) == 0) {+      if (!CAS_LOCK(&lk->sl)) {+        lk->threadid = mythreadid;+        lk->c = 1;+        return 0;+      }+    }+    else if (EQ_OWNER(lk->threadid, mythreadid)) {+      ++lk->c;+      return 0;+    }+    if ((++spins & SPINS_PER_YIELD) == 0) {+      SPIN_LOCK_YIELD;+    }+  }+}++static FORCEINLINE int recursive_try_lock(MLOCK_T *lk) {+  THREAD_ID_T mythreadid = CURRENT_THREAD;+  if (ffi_spin_peek(&lk->sl) == 0) {+    if (!CAS_LOCK(&lk->sl)) {+      lk->threadid = mythreadid;+      lk->c = 1;+      return 1;+    }+  }+  else if (EQ_OWNER(lk->threadid, mythreadid)) {+    ++lk->c;+    return 1;+  }+  return 0;+}++#define RELEASE_LOCK(lk)      recursive_release_lock(lk)+#define TRY_LOCK(lk)          recursive_try_lock(lk)+#define ACQUIRE_LOCK(lk)      recursive_acquire_lock(lk)+#define INITIAL_LOCK(lk)      ((lk)->threadid = (THREAD_ID_T)0, (lk)->sl = 0, (lk)->c = 0)+#define DESTROY_LOCK(lk)      (0)+#endif /* USE_RECURSIVE_LOCKS */++#elif defined(WIN32) /* Win32 critical sections */+#define MLOCK_T               CRITICAL_SECTION+#define ACQUIRE_LOCK(lk)      (EnterCriticalSection(lk), 0)+#define RELEASE_LOCK(lk)      LeaveCriticalSection(lk)+#define TRY_LOCK(lk)          TryEnterCriticalSection(lk)+#define INITIAL_LOCK(lk)      (!InitializeCriticalSectionAndSpinCount((lk), 0x80000000|4000))+#define DESTROY_LOCK(lk)      (DeleteCriticalSection(lk), 0)+#define NEED_GLOBAL_LOCK_INIT++static MLOCK_T malloc_global_mutex;+static volatile LONG malloc_global_mutex_status;++/* Use spin loop to initialize global lock */+static void init_malloc_global_mutex() {+  for (;;) {+    long stat = malloc_global_mutex_status;+    if (stat > 0)+      return;+    /* transition to < 0 while initializing, then to > 0) */+    if (stat == 0 &&+        interlockedcompareexchange(&malloc_global_mutex_status, (LONG)-1, (LONG)0) == 0) {+      InitializeCriticalSection(&malloc_global_mutex);+      interlockedexchange(&malloc_global_mutex_status, (LONG)1);+      return;+    }+    SleepEx(0, FALSE);+  }+}++#else /* pthreads-based locks */+#define MLOCK_T               pthread_mutex_t+#define ACQUIRE_LOCK(lk)      pthread_mutex_lock(lk)+#define RELEASE_LOCK(lk)      pthread_mutex_unlock(lk)+#define TRY_LOCK(lk)          (!pthread_mutex_trylock(lk))+#define INITIAL_LOCK(lk)      pthread_init_lock(lk)+#define DESTROY_LOCK(lk)      pthread_mutex_destroy(lk)++#if defined(USE_RECURSIVE_LOCKS) && USE_RECURSIVE_LOCKS != 0 && defined(linux) && !defined(PTHREAD_MUTEX_RECURSIVE)+/* Cope with old-style linux recursive lock initialization by adding */+/* skipped internal declaration from pthread.h */+extern int pthread_mutexattr_setkind_np __P ((pthread_mutexattr_t *__attr,+                                              int __kind));+#define PTHREAD_MUTEX_RECURSIVE PTHREAD_MUTEX_RECURSIVE_NP+#define pthread_mutexattr_settype(x,y) pthread_mutexattr_setkind_np(x,y)+#endif /* USE_RECURSIVE_LOCKS ... */++static MLOCK_T malloc_global_mutex = PTHREAD_MUTEX_INITIALIZER;++static int pthread_init_lock (MLOCK_T *lk) {+  pthread_mutexattr_t attr;+  if (pthread_mutexattr_init(&attr)) return 1;+#if defined(USE_RECURSIVE_LOCKS) && USE_RECURSIVE_LOCKS != 0+  if (pthread_mutexattr_settype(&attr, PTHREAD_MUTEX_RECURSIVE)) return 1;+#endif+  if (pthread_mutex_init(lk, &attr)) return 1;+  if (pthread_mutexattr_destroy(&attr)) return 1;+  return 0;+}++#endif /* ... lock types ... */++/* Common code for all lock types */+#define USE_LOCK_BIT               (2U)++#ifndef ACQUIRE_MALLOC_GLOBAL_LOCK+#define ACQUIRE_MALLOC_GLOBAL_LOCK()  ACQUIRE_LOCK(&malloc_global_mutex);+#endif++#ifndef RELEASE_MALLOC_GLOBAL_LOCK+#define RELEASE_MALLOC_GLOBAL_LOCK()  RELEASE_LOCK(&malloc_global_mutex);+#endif++#endif /* USE_LOCKS */++/* -----------------------  Chunk representations ------------------------ */++/*+  (The following includes lightly edited explanations by Colin Plumb.)++  The malloc_chunk declaration below is misleading (but accurate and+  necessary).  It declares a "view" into memory allowing access to+  necessary fields at known offsets from a given base.++  Chunks of memory are maintained using a `boundary tag' method as+  originally described by Knuth.  (See the paper by Paul Wilson+  ftp://ftp.cs.utexas.edu/pub/garbage/allocsrv.ps for a survey of such+  techniques.)  Sizes of free chunks are stored both in the front of+  each chunk and at the end.  This makes consolidating fragmented+  chunks into bigger chunks fast.  The head fields also hold bits+  representing whether chunks are free or in use.++  Here are some pictures to make it clearer.  They are "exploded" to+  show that the state of a chunk can be thought of as extending from+  the high 31 bits of the head field of its header through the+  prev_foot and PINUSE_BIT bit of the following chunk header.++  A chunk that's in use looks like:++   chunk-> +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-++           | Size of previous chunk (if P = 0)                             |+           +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-++         +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ |P|+         | Size of this chunk                                         1| +-++   mem-> +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-++         |                                                               |+         +-                                                             -++         |                                                               |+         +-                                                             -++         |                                                               :+         +-      size - sizeof(size_t) available payload bytes          -++         :                                                               |+ chunk-> +-                                                             -++         |                                                               |+         +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-++       +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ |1|+       | Size of next chunk (may or may not be in use)               | +-++ mem-> +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+++    And if it's free, it looks like this:++   chunk-> +-                                                             -++           | User payload (must be in use, or we would have merged!)       |+           +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-++         +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ |P|+         | Size of this chunk                                         0| +-++   mem-> +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-++         | Next pointer                                                  |+         +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-++         | Prev pointer                                                  |+         +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-++         |                                                               :+         +-      size - sizeof(struct chunk) unused bytes               -++         :                                                               |+ chunk-> +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-++         | Size of this chunk                                            |+         +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-++       +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ |0|+       | Size of next chunk (must be in use, or we would have merged)| +-++ mem-> +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-++       |                                                               :+       +- User payload                                                -++       :                                                               |+       +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-++                                                                     |0|+                                                                     +-++  Note that since we always merge adjacent free chunks, the chunks+  adjacent to a free chunk must be in use.++  Given a pointer to a chunk (which can be derived trivially from the+  payload pointer) we can, in O(1) time, find out whether the adjacent+  chunks are free, and if so, unlink them from the lists that they+  are on and merge them with the current chunk.++  Chunks always begin on even word boundaries, so the mem portion+  (which is returned to the user) is also on an even word boundary, and+  thus at least double-word aligned.++  The P (PINUSE_BIT) bit, stored in the unused low-order bit of the+  chunk size (which is always a multiple of two words), is an in-use+  bit for the *previous* chunk.  If that bit is *clear*, then the+  word before the current chunk size contains the previous chunk+  size, and can be used to find the front of the previous chunk.+  The very first chunk allocated always has this bit set, preventing+  access to non-existent (or non-owned) memory. If pinuse is set for+  any given chunk, then you CANNOT determine the size of the+  previous chunk, and might even get a memory addressing fault when+  trying to do so.++  The C (CINUSE_BIT) bit, stored in the unused second-lowest bit of+  the chunk size redundantly records whether the current chunk is+  inuse (unless the chunk is mmapped). This redundancy enables usage+  checks within free and realloc, and reduces indirection when freeing+  and consolidating chunks.++  Each freshly allocated chunk must have both cinuse and pinuse set.+  That is, each allocated chunk borders either a previously allocated+  and still in-use chunk, or the base of its memory arena. This is+  ensured by making all allocations from the `lowest' part of any+  found chunk.  Further, no free chunk physically borders another one,+  so each free chunk is known to be preceded and followed by either+  inuse chunks or the ends of memory.++  Note that the `foot' of the current chunk is actually represented+  as the prev_foot of the NEXT chunk. This makes it easier to+  deal with alignments etc but can be very confusing when trying+  to extend or adapt this code.++  The exceptions to all this are++     1. The special chunk `top' is the top-most available chunk (i.e.,+        the one bordering the end of available memory). It is treated+        specially.  Top is never included in any bin, is used only if+        no other chunk is available, and is released back to the+        system if it is very large (see M_TRIM_THRESHOLD).  In effect,+        the top chunk is treated as larger (and thus less well+        fitting) than any other available chunk.  The top chunk+        doesn't update its trailing size field since there is no next+        contiguous chunk that would have to index off it. However,+        space is still allocated for it (TOP_FOOT_SIZE) to enable+        separation or merging when space is extended.++     3. Chunks allocated via mmap, have both cinuse and pinuse bits+        cleared in their head fields.  Because they are allocated+        one-by-one, each must carry its own prev_foot field, which is+        also used to hold the offset this chunk has within its mmapped+        region, which is needed to preserve alignment. Each mmapped+        chunk is trailed by the first two fields of a fake next-chunk+        for sake of usage checks.++*/++struct malloc_chunk {+  size_t               prev_foot;  /* Size of previous chunk (if free).  */+  size_t               head;       /* Size and inuse bits. */+  struct malloc_chunk* fd;         /* double links -- used only if free. */+  struct malloc_chunk* bk;+};++typedef struct malloc_chunk  mchunk;+typedef struct malloc_chunk* mchunkptr;+typedef struct malloc_chunk* sbinptr;  /* The type of bins of chunks */+typedef unsigned int bindex_t;         /* Described below */+typedef unsigned int binmap_t;         /* Described below */+typedef unsigned int flag_t;           /* The type of various bit flag sets */++/* ------------------- Chunks sizes and alignments ----------------------- */++#define MCHUNK_SIZE         (sizeof(mchunk))++#if FOOTERS+#define CHUNK_OVERHEAD      (TWO_SIZE_T_SIZES)+#else /* FOOTERS */+#define CHUNK_OVERHEAD      (SIZE_T_SIZE)+#endif /* FOOTERS */++/* MMapped chunks need a second word of overhead ... */+#define MMAP_CHUNK_OVERHEAD (TWO_SIZE_T_SIZES)+/* ... and additional padding for fake next-chunk at foot */+#define MMAP_FOOT_PAD       (FOUR_SIZE_T_SIZES)++/* The smallest size we can malloc is an aligned minimal chunk */+#define MIN_CHUNK_SIZE\+  ((MCHUNK_SIZE + CHUNK_ALIGN_MASK) & ~CHUNK_ALIGN_MASK)++/* conversion from malloc headers to user pointers, and back */+#define chunk2mem(p)        ((void*)((char*)(p)       + TWO_SIZE_T_SIZES))+#define mem2chunk(mem)      ((mchunkptr)((char*)(mem) - TWO_SIZE_T_SIZES))+/* chunk associated with aligned address A */+#define align_as_chunk(A)   (mchunkptr)((A) + align_offset(chunk2mem(A)))++/* Bounds on request (not chunk) sizes. */+#define MAX_REQUEST         ((-MIN_CHUNK_SIZE) << 2)+#define MIN_REQUEST         (MIN_CHUNK_SIZE - CHUNK_OVERHEAD - SIZE_T_ONE)++/* pad request bytes into a usable size */+#define pad_request(req) \+   (((req) + CHUNK_OVERHEAD + CHUNK_ALIGN_MASK) & ~CHUNK_ALIGN_MASK)++/* pad request, checking for minimum (but not maximum) */+#define request2size(req) \+  (((req) < MIN_REQUEST)? MIN_CHUNK_SIZE : pad_request(req))+++/* ------------------ Operations on head and foot fields ----------------- */++/*+  The head field of a chunk is or'ed with PINUSE_BIT when previous+  adjacent chunk in use, and or'ed with CINUSE_BIT if this chunk is in+  use, unless mmapped, in which case both bits are cleared.++  FLAG4_BIT is not used by this malloc, but might be useful in extensions.+*/++#define PINUSE_BIT          (SIZE_T_ONE)+#define CINUSE_BIT          (SIZE_T_TWO)+#define FLAG4_BIT           (SIZE_T_FOUR)+#define INUSE_BITS          (PINUSE_BIT|CINUSE_BIT)+#define FLAG_BITS           (PINUSE_BIT|CINUSE_BIT|FLAG4_BIT)++/* Head value for fenceposts */+#define FENCEPOST_HEAD      (INUSE_BITS|SIZE_T_SIZE)++/* extraction of fields from head words */+#define cinuse(p)           ((p)->head & CINUSE_BIT)+#define pinuse(p)           ((p)->head & PINUSE_BIT)+#define flag4inuse(p)       ((p)->head & FLAG4_BIT)+#define is_inuse(p)         (((p)->head & INUSE_BITS) != PINUSE_BIT)+#define is_mmapped(p)       (((p)->head & INUSE_BITS) == 0)++#define chunksize(p)        ((p)->head & ~(FLAG_BITS))++#define clear_pinuse(p)     ((p)->head &= ~PINUSE_BIT)+#define set_flag4(p)        ((p)->head |= FLAG4_BIT)+#define clear_flag4(p)      ((p)->head &= ~FLAG4_BIT)++/* Treat space at ptr +/- offset as a chunk */+#define chunk_plus_offset(p, s)  ((mchunkptr)(((char*)(p)) + (s)))+#define chunk_minus_offset(p, s) ((mchunkptr)(((char*)(p)) - (s)))++/* Ptr to next or previous physical malloc_chunk. */+#define next_chunk(p) ((mchunkptr)( ((char*)(p)) + ((p)->head & ~FLAG_BITS)))+#define prev_chunk(p) ((mchunkptr)( ((char*)(p)) - ((p)->prev_foot) ))++/* extract next chunk's pinuse bit */+#define next_pinuse(p)  ((next_chunk(p)->head) & PINUSE_BIT)++/* Get/set size at footer */+#define get_foot(p, s)  (((mchunkptr)((char*)(p) + (s)))->prev_foot)+#define set_foot(p, s)  (((mchunkptr)((char*)(p) + (s)))->prev_foot = (s))++/* Set size, pinuse bit, and foot */+#define set_size_and_pinuse_of_free_chunk(p, s)\+  ((p)->head = (s|PINUSE_BIT), set_foot(p, s))++/* Set size, pinuse bit, foot, and clear next pinuse */+#define set_free_with_pinuse(p, s, n)\+  (clear_pinuse(n), set_size_and_pinuse_of_free_chunk(p, s))++/* Get the internal overhead associated with chunk p */+#define overhead_for(p)\+ (is_mmapped(p)? MMAP_CHUNK_OVERHEAD : CHUNK_OVERHEAD)++/* Return true if malloced space is not necessarily cleared */+#if MMAP_CLEARS+#define calloc_must_clear(p) (!is_mmapped(p))+#else /* MMAP_CLEARS */+#define calloc_must_clear(p) (1)+#endif /* MMAP_CLEARS */++/* ---------------------- Overlaid data structures ----------------------- */++/*+  When chunks are not in use, they are treated as nodes of either+  lists or trees.++  "Small"  chunks are stored in circular doubly-linked lists, and look+  like this:++    chunk-> +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-++            |             Size of previous chunk                            |+            +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-++    `head:' |             Size of chunk, in bytes                         |P|+      mem-> +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-++            |             Forward pointer to next chunk in list             |+            +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-++            |             Back pointer to previous chunk in list            |+            +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-++            |             Unused space (may be 0 bytes long)                .+            .                                                               .+            .                                                               |+nextchunk-> +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-++    `foot:' |             Size of chunk, in bytes                           |+            +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+++  Larger chunks are kept in a form of bitwise digital trees (aka+  tries) keyed on chunksizes.  Because malloc_tree_chunks are only for+  free chunks greater than 256 bytes, their size doesn't impose any+  constraints on user chunk sizes.  Each node looks like:++    chunk-> +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-++            |             Size of previous chunk                            |+            +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-++    `head:' |             Size of chunk, in bytes                         |P|+      mem-> +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-++            |             Forward pointer to next chunk of same size        |+            +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-++            |             Back pointer to previous chunk of same size       |+            +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-++            |             Pointer to left child (child[0])                  |+            +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-++            |             Pointer to right child (child[1])                 |+            +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-++            |             Pointer to parent                                 |+            +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-++            |             bin index of this chunk                           |+            +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-++            |             Unused space                                      .+            .                                                               |+nextchunk-> +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-++    `foot:' |             Size of chunk, in bytes                           |+            +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+++  Each tree holding treenodes is a tree of unique chunk sizes.  Chunks+  of the same size are arranged in a circularly-linked list, with only+  the oldest chunk (the next to be used, in our FIFO ordering)+  actually in the tree.  (Tree members are distinguished by a non-null+  parent pointer.)  If a chunk with the same size an an existing node+  is inserted, it is linked off the existing node using pointers that+  work in the same way as fd/bk pointers of small chunks.++  Each tree contains a power of 2 sized range of chunk sizes (the+  smallest is 0x100 <= x < 0x180), which is is divided in half at each+  tree level, with the chunks in the smaller half of the range (0x100+  <= x < 0x140 for the top nose) in the left subtree and the larger+  half (0x140 <= x < 0x180) in the right subtree.  This is, of course,+  done by inspecting individual bits.++  Using these rules, each node's left subtree contains all smaller+  sizes than its right subtree.  However, the node at the root of each+  subtree has no particular ordering relationship to either.  (The+  dividing line between the subtree sizes is based on trie relation.)+  If we remove the last chunk of a given size from the interior of the+  tree, we need to replace it with a leaf node.  The tree ordering+  rules permit a node to be replaced by any leaf below it.++  The smallest chunk in a tree (a common operation in a best-fit+  allocator) can be found by walking a path to the leftmost leaf in+  the tree.  Unlike a usual binary tree, where we follow left child+  pointers until we reach a null, here we follow the right child+  pointer any time the left one is null, until we reach a leaf with+  both child pointers null. The smallest chunk in the tree will be+  somewhere along that path.++  The worst case number of steps to add, find, or remove a node is+  bounded by the number of bits differentiating chunks within+  bins. Under current bin calculations, this ranges from 6 up to 21+  (for 32 bit sizes) or up to 53 (for 64 bit sizes). The typical case+  is of course much better.+*/++struct malloc_tree_chunk {+  /* The first four fields must be compatible with malloc_chunk */+  size_t                    prev_foot;+  size_t                    head;+  struct malloc_tree_chunk* fd;+  struct malloc_tree_chunk* bk;++  struct malloc_tree_chunk* child[2];+  struct malloc_tree_chunk* parent;+  bindex_t                  index;+};++typedef struct malloc_tree_chunk  tchunk;+typedef struct malloc_tree_chunk* tchunkptr;+typedef struct malloc_tree_chunk* tbinptr; /* The type of bins of trees */++/* A little helper macro for trees */+#define leftmost_child(t) ((t)->child[0] != 0? (t)->child[0] : (t)->child[1])++/* ----------------------------- Segments -------------------------------- */++/*+  Each malloc space may include non-contiguous segments, held in a+  list headed by an embedded malloc_segment record representing the+  top-most space. Segments also include flags holding properties of+  the space. Large chunks that are directly allocated by mmap are not+  included in this list. They are instead independently created and+  destroyed without otherwise keeping track of them.++  Segment management mainly comes into play for spaces allocated by+  MMAP.  Any call to MMAP might or might not return memory that is+  adjacent to an existing segment.  MORECORE normally contiguously+  extends the current space, so this space is almost always adjacent,+  which is simpler and faster to deal with. (This is why MORECORE is+  used preferentially to MMAP when both are available -- see+  sys_alloc.)  When allocating using MMAP, we don't use any of the+  hinting mechanisms (inconsistently) supported in various+  implementations of unix mmap, or distinguish reserving from+  committing memory. Instead, we just ask for space, and exploit+  contiguity when we get it.  It is probably possible to do+  better than this on some systems, but no general scheme seems+  to be significantly better.++  Management entails a simpler variant of the consolidation scheme+  used for chunks to reduce fragmentation -- new adjacent memory is+  normally prepended or appended to an existing segment. However,+  there are limitations compared to chunk consolidation that mostly+  reflect the fact that segment processing is relatively infrequent+  (occurring only when getting memory from system) and that we+  don't expect to have huge numbers of segments:++  * Segments are not indexed, so traversal requires linear scans.  (It+    would be possible to index these, but is not worth the extra+    overhead and complexity for most programs on most platforms.)+  * New segments are only appended to old ones when holding top-most+    memory; if they cannot be prepended to others, they are held in+    different segments.++  Except for the top-most segment of an mstate, each segment record+  is kept at the tail of its segment. Segments are added by pushing+  segment records onto the list headed by &mstate.seg for the+  containing mstate.++  Segment flags control allocation/merge/deallocation policies:+  * If EXTERN_BIT set, then we did not allocate this segment,+    and so should not try to deallocate or merge with others.+    (This currently holds only for the initial segment passed+    into create_mspace_with_base.)+  * If USE_MMAP_BIT set, the segment may be merged with+    other surrounding mmapped segments and trimmed/de-allocated+    using munmap.+  * If neither bit is set, then the segment was obtained using+    MORECORE so can be merged with surrounding MORECORE'd segments+    and deallocated/trimmed using MORECORE with negative arguments.+*/++struct malloc_segment {+  char*        base;             /* base address */+  size_t       size;             /* allocated size */+  struct malloc_segment* next;   /* ptr to next segment */+#if FFI_MMAP_EXEC_WRIT+  /* The mmap magic is supposed to store the address of the executable+     segment at the very end of the requested block.  */++# define mmap_exec_offset(b,s) (*(ptrdiff_t*)((b)+(s)-sizeof(ptrdiff_t)))++  /* We can only merge segments if their corresponding executable+     segments are at identical offsets.  */+# define check_segment_merge(S,b,s) \+  (mmap_exec_offset((b),(s)) == (S)->exec_offset)++# define add_segment_exec_offset(p,S) ((char*)(p) + (S)->exec_offset)+# define sub_segment_exec_offset(p,S) ((char*)(p) - (S)->exec_offset)++  /* The removal of sflags only works with HAVE_MORECORE == 0.  */++# define get_segment_flags(S)   (USE_MMAP_BIT)+# define set_segment_flags(S,v) \+  (((v) != USE_MMAP_BIT) ? (ABORT, (v)) :				\+   (((S)->exec_offset =							\+     mmap_exec_offset((S)->base, (S)->size)),				\+    (mmap_exec_offset((S)->base + (S)->exec_offset, (S)->size) !=	\+     (S)->exec_offset) ? (ABORT, (v)) :					\+   (mmap_exec_offset((S)->base, (S)->size) = 0), (v)))++  /* We use an offset here, instead of a pointer, because then, when+     base changes, we don't have to modify this.  On architectures+     with segmented addresses, this might not work.  */+  ptrdiff_t    exec_offset;+#else++# define get_segment_flags(S)   ((S)->sflags)+# define set_segment_flags(S,v) ((S)->sflags = (v))+# define check_segment_merge(S,b,s) (1)++  flag_t       sflags;           /* mmap and extern flag */+#endif+};++#define is_mmapped_segment(S)  (get_segment_flags(S) & USE_MMAP_BIT)+#define is_extern_segment(S)   (get_segment_flags(S) & EXTERN_BIT)++typedef struct malloc_segment  msegment;+typedef struct malloc_segment* msegmentptr;++/* ---------------------------- malloc_state ----------------------------- */++/*+   A malloc_state holds all of the bookkeeping for a space.+   The main fields are:++  Top+    The topmost chunk of the currently active segment. Its size is+    cached in topsize.  The actual size of topmost space is+    topsize+TOP_FOOT_SIZE, which includes space reserved for adding+    fenceposts and segment records if necessary when getting more+    space from the system.  The size at which to autotrim top is+    cached from mparams in trim_check, except that it is disabled if+    an autotrim fails.++  Designated victim (dv)+    This is the preferred chunk for servicing small requests that+    don't have exact fits.  It is normally the chunk split off most+    recently to service another small request.  Its size is cached in+    dvsize. The link fields of this chunk are not maintained since it+    is not kept in a bin.++  SmallBins+    An array of bin headers for free chunks.  These bins hold chunks+    with sizes less than MIN_LARGE_SIZE bytes. Each bin contains+    chunks of all the same size, spaced 8 bytes apart.  To simplify+    use in double-linked lists, each bin header acts as a malloc_chunk+    pointing to the real first node, if it exists (else pointing to+    itself).  This avoids special-casing for headers.  But to avoid+    waste, we allocate only the fd/bk pointers of bins, and then use+    repositioning tricks to treat these as the fields of a chunk.++  TreeBins+    Treebins are pointers to the roots of trees holding a range of+    sizes. There are 2 equally spaced treebins for each power of two+    from TREE_SHIFT to TREE_SHIFT+16. The last bin holds anything+    larger.++  Bin maps+    There is one bit map for small bins ("smallmap") and one for+    treebins ("treemap).  Each bin sets its bit when non-empty, and+    clears the bit when empty.  Bit operations are then used to avoid+    bin-by-bin searching -- nearly all "search" is done without ever+    looking at bins that won't be selected.  The bit maps+    conservatively use 32 bits per map word, even if on 64bit system.+    For a good description of some of the bit-based techniques used+    here, see Henry S. Warren Jr's book "Hacker's Delight" (and+    supplement at http://hackersdelight.org/). Many of these are+    intended to reduce the branchiness of paths through malloc etc, as+    well as to reduce the number of memory locations read or written.++  Segments+    A list of segments headed by an embedded malloc_segment record+    representing the initial space.++  Address check support+    The least_addr field is the least address ever obtained from+    MORECORE or MMAP. Attempted frees and reallocs of any address less+    than this are trapped (unless INSECURE is defined).++  Magic tag+    A cross-check field that should always hold same value as mparams.magic.++  Max allowed footprint+    The maximum allowed bytes to allocate from system (zero means no limit)++  Flags+    Bits recording whether to use MMAP, locks, or contiguous MORECORE++  Statistics+    Each space keeps track of current and maximum system memory+    obtained via MORECORE or MMAP.++  Trim support+    Fields holding the amount of unused topmost memory that should trigger+    trimming, and a counter to force periodic scanning to release unused+    non-topmost segments.++  Locking+    If USE_LOCKS is defined, the "mutex" lock is acquired and released+    around every public call using this mspace.++  Extension support+    A void* pointer and a size_t field that can be used to help implement+    extensions to this malloc.+*/++/* Bin types, widths and sizes */+#define NSMALLBINS        (32U)+#define NTREEBINS         (32U)+#define SMALLBIN_SHIFT    (3U)+#define SMALLBIN_WIDTH    (SIZE_T_ONE << SMALLBIN_SHIFT)+#define TREEBIN_SHIFT     (8U)+#define MIN_LARGE_SIZE    (SIZE_T_ONE << TREEBIN_SHIFT)+#define MAX_SMALL_SIZE    (MIN_LARGE_SIZE - SIZE_T_ONE)+#define MAX_SMALL_REQUEST (MAX_SMALL_SIZE - CHUNK_ALIGN_MASK - CHUNK_OVERHEAD)++struct malloc_state {+  binmap_t   smallmap;+  binmap_t   treemap;+  size_t     dvsize;+  size_t     topsize;+  char*      least_addr;+  mchunkptr  dv;+  mchunkptr  top;+  size_t     trim_check;+  size_t     release_checks;+  size_t     magic;+  mchunkptr  smallbins[(NSMALLBINS+1)*2];+  tbinptr    treebins[NTREEBINS];+  size_t     footprint;+  size_t     max_footprint;+  size_t     footprint_limit; /* zero means no limit */+  flag_t     mflags;+#if USE_LOCKS+  MLOCK_T    mutex;     /* locate lock among fields that rarely change */+#endif /* USE_LOCKS */+  msegment   seg;+  void*      extp;      /* Unused but available for extensions */+  size_t     exts;+};++typedef struct malloc_state*    mstate;++/* ------------- Global malloc_state and malloc_params ------------------- */++/*+  malloc_params holds global properties, including those that can be+  dynamically set using mallopt. There is a single instance, mparams,+  initialized in init_mparams. Note that the non-zeroness of "magic"+  also serves as an initialization flag.+*/++struct malloc_params {+  size_t magic;+  size_t page_size;+  size_t granularity;+  size_t mmap_threshold;+  size_t trim_threshold;+  flag_t default_mflags;+};++static struct malloc_params mparams;++/* libffi: mparams is initialized exactly once (under the malloc global lock),+   but mparams.magic is read on every allocation's fast path WITHOUT a lock to+   decide whether initialization already happened.  Upstream writes magic+   through a `volatile` cast, which is not a synchronizing operation, so+   ThreadSanitizer reports a data race (libffi issue #873) between that one-time+   write and the lock-free readers.  Access magic with acquire/release ordering+   instead: a thread that observes magic != 0 via the acquire load is then+   guaranteed to see all the other initialization writes (page_size, mflags,+   ...) performed before the release store.  Fall back to the original volatile+   access when no supported compiler atomic operations are available.  */+#if USE_LOCKS && defined(__ATOMIC_ACQUIRE)+# define ffi_mparams_magic_load()   __atomic_load_n(&mparams.magic, __ATOMIC_ACQUIRE)+# define ffi_mparams_magic_store(v) __atomic_store_n(&mparams.magic, (size_t)(v), __ATOMIC_RELEASE)+#elif USE_LOCKS && defined(_MSC_VER)+# if defined(_WIN64)+#  define ffi_mparams_magic_load() \+  ((size_t)_InterlockedCompareExchange64((__int64 volatile *)&mparams.magic, \+                                         (__int64)0, (__int64)0))+#  define ffi_mparams_magic_store(v) \+  ((void)_InterlockedExchange64((__int64 volatile *)&mparams.magic, \+                                (__int64)(v)))+# else+#  define ffi_mparams_magic_load() \+  ((size_t)_InterlockedCompareExchange((LONG volatile *)&mparams.magic, \+                                       (LONG)0, (LONG)0))+#  define ffi_mparams_magic_store(v) \+  ((void)_InterlockedExchange((LONG volatile *)&mparams.magic, (LONG)(v)))+# endif+#else+# define ffi_mparams_magic_load()   (mparams.magic)+# define ffi_mparams_magic_store(v) (*(volatile size_t *)(&(mparams.magic)) = (size_t)(v))+#endif++/* Ensure mparams initialized */+#define ensure_initialization() (void)(ffi_mparams_magic_load() != 0 || init_mparams())++#if !ONLY_MSPACES++/* The global malloc_state used for all non-"mspace" calls */+static struct malloc_state _gm_;+#define gm                 (&_gm_)+#define is_global(M)       ((M) == &_gm_)++#endif /* !ONLY_MSPACES */++#define is_initialized(M)  ((M)->top != 0)++/* -------------------------- system alloc setup ------------------------- */++/* Operations on mflags */++#define use_lock(M)           ((M)->mflags &   USE_LOCK_BIT)+#define enable_lock(M)        ((M)->mflags |=  USE_LOCK_BIT)+#if USE_LOCKS+#define disable_lock(M)       ((M)->mflags &= ~USE_LOCK_BIT)+#else+#define disable_lock(M)+#endif++#define use_mmap(M)           ((M)->mflags &   USE_MMAP_BIT)+#define enable_mmap(M)        ((M)->mflags |=  USE_MMAP_BIT)+#if HAVE_MMAP+#define disable_mmap(M)       ((M)->mflags &= ~USE_MMAP_BIT)+#else+#define disable_mmap(M)+#endif++#define use_noncontiguous(M)  ((M)->mflags &   USE_NONCONTIGUOUS_BIT)+#define disable_contiguous(M) ((M)->mflags |=  USE_NONCONTIGUOUS_BIT)++#define set_lock(M,L)\+ ((M)->mflags = (L)?\+  ((M)->mflags | USE_LOCK_BIT) :\+  ((M)->mflags & ~USE_LOCK_BIT))++/* page-align a size */+#define page_align(S)\+ (((S) + (mparams.page_size - SIZE_T_ONE)) & ~(mparams.page_size - SIZE_T_ONE))++/* granularity-align a size */+#define granularity_align(S)\+  (((S) + (mparams.granularity - SIZE_T_ONE))\+   & ~(mparams.granularity - SIZE_T_ONE))+++/* For mmap, use granularity alignment on windows, else page-align */+#ifdef WIN32+#define mmap_align(S) granularity_align(S)+#else+#define mmap_align(S) page_align(S)+#endif++/* For sys_alloc, enough padding to ensure can malloc request on success */+#define SYS_ALLOC_PADDING (TOP_FOOT_SIZE + MALLOC_ALIGNMENT)++#define is_page_aligned(S)\+   (((size_t)(S) & (mparams.page_size - SIZE_T_ONE)) == 0)+#define is_granularity_aligned(S)\+   (((size_t)(S) & (mparams.granularity - SIZE_T_ONE)) == 0)++/*  True if segment S holds address A */+#define segment_holds(S, A)\+  ((char*)(A) >= S->base && (char*)(A) < S->base + S->size)++/* Return segment holding given address */+static msegmentptr segment_holding(mstate m, char* addr) {+  msegmentptr sp = &m->seg;+  for (;;) {+    if (addr >= sp->base && addr < sp->base + sp->size)+      return sp;+    if ((sp = sp->next) == 0)+      return 0;+  }+}++/* Return true if segment contains a segment link */+static int has_segment_link(mstate m, msegmentptr ss) {+  msegmentptr sp = &m->seg;+  for (;;) {+    if ((char*)sp >= ss->base && (char*)sp < ss->base + ss->size)+      return 1;+    if ((sp = sp->next) == 0)+      return 0;+  }+}++#ifndef MORECORE_CANNOT_TRIM+#define should_trim(M,s)  ((s) > (M)->trim_check)+#else  /* MORECORE_CANNOT_TRIM */+#define should_trim(M,s)  (0)+#endif /* MORECORE_CANNOT_TRIM */++/*+  TOP_FOOT_SIZE is padding at the end of a segment, including space+  that may be needed to place segment records and fenceposts when new+  noncontiguous segments are added.+*/+#define TOP_FOOT_SIZE\+  (align_offset(chunk2mem(0))+pad_request(sizeof(struct malloc_segment))+MIN_CHUNK_SIZE)+++/* -------------------------------  Hooks -------------------------------- */++/*+  PREACTION should be defined to return 0 on success, and nonzero on+  failure. If you are not using locking, you can redefine these to do+  anything you like.+*/++#if USE_LOCKS+#define PREACTION(M)  ((use_lock(M))? ACQUIRE_LOCK(&(M)->mutex) : 0)+#define POSTACTION(M) { if (use_lock(M)) RELEASE_LOCK(&(M)->mutex); }+#else /* USE_LOCKS */++#ifndef PREACTION+#define PREACTION(M) (0)+#endif  /* PREACTION */++#ifndef POSTACTION+#define POSTACTION(M)+#endif  /* POSTACTION */++#endif /* USE_LOCKS */++/*+  CORRUPTION_ERROR_ACTION is triggered upon detected bad addresses.+  USAGE_ERROR_ACTION is triggered on detected bad frees and+  reallocs. The argument p is an address that might have triggered the+  fault. It is ignored by the two predefined actions, but might be+  useful in custom actions that try to help diagnose errors.+*/++#if PROCEED_ON_ERROR++/* A count of the number of corruption errors causing resets */+int malloc_corruption_error_count;++/* default corruption action */+static void reset_on_error(mstate m);++#define CORRUPTION_ERROR_ACTION(m)  reset_on_error(m)+#define USAGE_ERROR_ACTION(m, p)++#else /* PROCEED_ON_ERROR */++#ifndef CORRUPTION_ERROR_ACTION+#define CORRUPTION_ERROR_ACTION(m) ABORT+#endif /* CORRUPTION_ERROR_ACTION */++#ifndef USAGE_ERROR_ACTION+#define USAGE_ERROR_ACTION(m,p) ABORT+#endif /* USAGE_ERROR_ACTION */++#endif /* PROCEED_ON_ERROR */+++/* -------------------------- Debugging setup ---------------------------- */++#if ! DEBUG++#define check_free_chunk(M,P)+#define check_inuse_chunk(M,P)+#define check_malloced_chunk(M,P,N)+#define check_mmapped_chunk(M,P)+#define check_malloc_state(M)+#define check_top_chunk(M,P)++#else /* DEBUG */+#define check_free_chunk(M,P)       do_check_free_chunk(M,P)+#define check_inuse_chunk(M,P)      do_check_inuse_chunk(M,P)+#define check_top_chunk(M,P)        do_check_top_chunk(M,P)+#define check_malloced_chunk(M,P,N) do_check_malloced_chunk(M,P,N)+#define check_mmapped_chunk(M,P)    do_check_mmapped_chunk(M,P)+#define check_malloc_state(M)       do_check_malloc_state(M)++static void   do_check_any_chunk(mstate m, mchunkptr p);+static void   do_check_top_chunk(mstate m, mchunkptr p);+static void   do_check_mmapped_chunk(mstate m, mchunkptr p);+static void   do_check_inuse_chunk(mstate m, mchunkptr p);+static void   do_check_free_chunk(mstate m, mchunkptr p);+static void   do_check_malloced_chunk(mstate m, void* mem, size_t s);+static void   do_check_tree(mstate m, tchunkptr t);+static void   do_check_treebin(mstate m, bindex_t i);+static void   do_check_smallbin(mstate m, bindex_t i);+static void   do_check_malloc_state(mstate m);+static int    bin_find(mstate m, mchunkptr x);+static size_t traverse_and_check(mstate m);+#endif /* DEBUG */++/* ---------------------------- Indexing Bins ---------------------------- */++#define is_small(s)         (((s) >> SMALLBIN_SHIFT) < NSMALLBINS)+#define small_index(s)      (bindex_t)((s)  >> SMALLBIN_SHIFT)+#define small_index2size(i) ((i)  << SMALLBIN_SHIFT)+#define MIN_SMALL_INDEX     (small_index(MIN_CHUNK_SIZE))++/* addressing by index. See above about smallbin repositioning */+#define smallbin_at(M, i)   ((sbinptr)((char*)&((M)->smallbins[(i)<<1])))+#define treebin_at(M,i)     (&((M)->treebins[i]))++/* assign tree index for size S to variable I.+   libffi: enable the __builtin_clz path on any GNU-compatible compiler, not+   only x86, so the log2 is an intrinsic rather than the generic C idiom that+   the compiler can't always recognize (libffi #754).  */+#if defined(__GNUC__)+#define compute_tree_index(S, I)\+{\+  unsigned int X = S >> TREEBIN_SHIFT;\+  if (X == 0)\+    I = 0;\+  else if (X > 0xFFFF)\+    I = NTREEBINS-1;\+  else {\+    unsigned int K = (unsigned) sizeof(X)*__CHAR_BIT__ - 1 - (unsigned) __builtin_clz(X); \+    I =  (bindex_t)((K << 1) + ((S >> (K + (TREEBIN_SHIFT-1)) & 1)));\+  }\+}++#elif defined (__INTEL_COMPILER)+#define compute_tree_index(S, I)\+{\+  size_t X = S >> TREEBIN_SHIFT;\+  if (X == 0)\+    I = 0;\+  else if (X > 0xFFFF)\+    I = NTREEBINS-1;\+  else {\+    unsigned int K = _bit_scan_reverse (X); \+    I =  (bindex_t)((K << 1) + ((S >> (K + (TREEBIN_SHIFT-1)) & 1)));\+  }\+}++#elif defined(_MSC_VER) && _MSC_VER>=1300+#define compute_tree_index(S, I)\+{\+  size_t X = S >> TREEBIN_SHIFT;\+  if (X == 0)\+    I = 0;\+  else if (X > 0xFFFF)\+    I = NTREEBINS-1;\+  else {\+    unsigned int K;\+    _BitScanReverse((DWORD *) &K, (DWORD) X);\+    I =  (bindex_t)((K << 1) + ((S >> (K + (TREEBIN_SHIFT-1)) & 1)));\+  }\+}++#else /* GNUC */+#define compute_tree_index(S, I)\+{\+  size_t X = S >> TREEBIN_SHIFT;\+  if (X == 0)\+    I = 0;\+  else if (X > 0xFFFF)\+    I = NTREEBINS-1;\+  else {\+    unsigned int Y = (unsigned int)X;\+    unsigned int N = ((Y - 0x100) >> 16) & 8;\+    unsigned int K = (((Y <<= N) - 0x1000) >> 16) & 4;\+    N += K;\+    N += K = (((Y <<= K) - 0x4000) >> 16) & 2;\+    K = 14 - N + ((Y <<= K) >> 15);\+    I = (K << 1) + ((S >> (K + (TREEBIN_SHIFT-1)) & 1));\+  }\+}+#endif /* GNUC */++/* Bit representing maximum resolved size in a treebin at i */+#define bit_for_tree_index(i) \+   (i == NTREEBINS-1)? (SIZE_T_BITSIZE-1) : (((i) >> 1) + TREEBIN_SHIFT - 2)++/* Shift placing maximum resolved bit in a treebin at i as sign bit */+#define leftshift_for_tree_index(i) \+   ((i == NTREEBINS-1)? 0 : \+    ((SIZE_T_BITSIZE-SIZE_T_ONE) - (((i) >> 1) + TREEBIN_SHIFT - 2)))++/* The size of the smallest chunk held in bin with index i */+#define minsize_for_tree_index(i) \+   ((SIZE_T_ONE << (((i) >> 1) + TREEBIN_SHIFT)) |  \+   (((size_t)((i) & SIZE_T_ONE)) << (((i) >> 1) + TREEBIN_SHIFT - 1)))+++/* ------------------------ Operations on bin maps ----------------------- */++/* bit corresponding to given index */+#define idx2bit(i)              ((binmap_t)(1) << (i))++/* Mark/Clear bits with given index */+#define mark_smallmap(M,i)      ((M)->smallmap |=  idx2bit(i))+#define clear_smallmap(M,i)     ((M)->smallmap &= ~idx2bit(i))+#define smallmap_is_marked(M,i) ((M)->smallmap &   idx2bit(i))++#define mark_treemap(M,i)       ((M)->treemap  |=  idx2bit(i))+#define clear_treemap(M,i)      ((M)->treemap  &= ~idx2bit(i))+#define treemap_is_marked(M,i)  ((M)->treemap  &   idx2bit(i))++/* isolate the least set bit of a bitmap */+#define least_bit(x)         ((x) & -(x))++/* mask with all bits to left of least bit of x on */+#define left_bits(x)         ((x<<1) | -(x<<1))++/* mask with all bits to left of or equal to least bit of x on */+#define same_or_left_bits(x) ((x) | -(x))++/* index corresponding to given bit.+   libffi: use __builtin_ctz on any GNU-compatible compiler, not only x86+   (libffi #754).  */++#if defined(__GNUC__)+#define compute_bit2idx(X, I)\+{\+  unsigned int J;\+  J = __builtin_ctz(X); \+  I = (bindex_t)J;\+}++#elif defined (__INTEL_COMPILER)+#define compute_bit2idx(X, I)\+{\+  unsigned int J;\+  J = _bit_scan_forward (X); \+  I = (bindex_t)J;\+}++#elif defined(_MSC_VER) && _MSC_VER>=1300+#define compute_bit2idx(X, I)\+{\+  unsigned int J;\+  _BitScanForward((DWORD *) &J, X);\+  I = (bindex_t)J;\+}++#elif USE_BUILTIN_FFS+#define compute_bit2idx(X, I) I = ffs(X)-1++#else+#define compute_bit2idx(X, I)\+{\+  unsigned int Y = X - 1;\+  unsigned int K = Y >> (16-4) & 16;\+  unsigned int N = K;        Y >>= K;\+  N += K = Y >> (8-3) &  8;  Y >>= K;\+  N += K = Y >> (4-2) &  4;  Y >>= K;\+  N += K = Y >> (2-1) &  2;  Y >>= K;\+  N += K = Y >> (1-0) &  1;  Y >>= K;\+  I = (bindex_t)(N + Y);\+}+#endif /* GNUC */+++/* ----------------------- Runtime Check Support ------------------------- */++/*+  For security, the main invariant is that malloc/free/etc never+  writes to a static address other than malloc_state, unless static+  malloc_state itself has been corrupted, which cannot occur via+  malloc (because of these checks). In essence this means that we+  believe all pointers, sizes, maps etc held in malloc_state, but+  check all of those linked or offsetted from other embedded data+  structures.  These checks are interspersed with main code in a way+  that tends to minimize their run-time cost.++  When FOOTERS is defined, in addition to range checking, we also+  verify footer fields of inuse chunks, which can be used guarantee+  that the mstate controlling malloc/free is intact.  This is a+  streamlined version of the approach described by William Robertson+  et al in "Run-time Detection of Heap-based Overflows" LISA'03+  http://www.usenix.org/events/lisa03/tech/robertson.html The footer+  of an inuse chunk holds the xor of its mstate and a random seed,+  that is checked upon calls to free() and realloc().  This is+  (probabalistically) unguessable from outside the program, but can be+  computed by any code successfully malloc'ing any chunk, so does not+  itself provide protection against code that has already broken+  security through some other means.  Unlike Robertson et al, we+  always dynamically check addresses of all offset chunks (previous,+  next, etc). This turns out to be cheaper than relying on hashes.+*/++#if !INSECURE+/* Check if address a is at least as high as any from MORECORE or MMAP */+#define ok_address(M, a) ((char*)(a) >= (M)->least_addr)+/* Check if address of next chunk n is higher than base chunk p */+#define ok_next(p, n)    ((char*)(p) < (char*)(n))+/* Check if p has inuse status */+#define ok_inuse(p)     is_inuse(p)+/* Check if p has its pinuse bit on */+#define ok_pinuse(p)     pinuse(p)++#else /* !INSECURE */+#define ok_address(M, a) (1)+#define ok_next(b, n)    (1)+#define ok_inuse(p)      (1)+#define ok_pinuse(p)     (1)+#endif /* !INSECURE */++#if (FOOTERS && !INSECURE)+/* Check if (alleged) mstate m has expected magic field */+#define ok_magic(M)      ((M)->magic == mparams.magic)+#else  /* (FOOTERS && !INSECURE) */+#define ok_magic(M)      (1)+#endif /* (FOOTERS && !INSECURE) */++/* In gcc, use __builtin_expect to minimize impact of checks */+#if !INSECURE+#if defined(__GNUC__) && __GNUC__ >= 3+#define RTCHECK(e)  __builtin_expect(e, 1)+#else /* GNUC */+#define RTCHECK(e)  (e)+#endif /* GNUC */+#else /* !INSECURE */+#define RTCHECK(e)  (1)+#endif /* !INSECURE */++/* macros to set up inuse chunks with or without footers */++#if !FOOTERS++#define mark_inuse_foot(M,p,s)++/* Macros for setting head/foot of non-mmapped chunks */++/* Set cinuse bit and pinuse bit of next chunk */+#define set_inuse(M,p,s)\+  ((p)->head = (((p)->head & PINUSE_BIT)|s|CINUSE_BIT),\+  ((mchunkptr)(((char*)(p)) + (s)))->head |= PINUSE_BIT)++/* Set cinuse and pinuse of this chunk and pinuse of next chunk */+#define set_inuse_and_pinuse(M,p,s)\+  ((p)->head = (s|PINUSE_BIT|CINUSE_BIT),\+  ((mchunkptr)(((char*)(p)) + (s)))->head |= PINUSE_BIT)++/* Set size, cinuse and pinuse bit of this chunk */+#define set_size_and_pinuse_of_inuse_chunk(M, p, s)\+  ((p)->head = (s|PINUSE_BIT|CINUSE_BIT))++#else /* FOOTERS */++/* Set foot of inuse chunk to be xor of mstate and seed */+#define mark_inuse_foot(M,p,s)\+  (((mchunkptr)((char*)(p) + (s)))->prev_foot = ((size_t)(M) ^ mparams.magic))++#define get_mstate_for(p)\+  ((mstate)(((mchunkptr)((char*)(p) +\+    (chunksize(p))))->prev_foot ^ mparams.magic))++#define set_inuse(M,p,s)\+  ((p)->head = (((p)->head & PINUSE_BIT)|s|CINUSE_BIT),\+  (((mchunkptr)(((char*)(p)) + (s)))->head |= PINUSE_BIT), \+  mark_inuse_foot(M,p,s))++#define set_inuse_and_pinuse(M,p,s)\+  ((p)->head = (s|PINUSE_BIT|CINUSE_BIT),\+  (((mchunkptr)(((char*)(p)) + (s)))->head |= PINUSE_BIT),\+ mark_inuse_foot(M,p,s))++#define set_size_and_pinuse_of_inuse_chunk(M, p, s)\+  ((p)->head = (s|PINUSE_BIT|CINUSE_BIT),\+  mark_inuse_foot(M, p, s))++#endif /* !FOOTERS */++/* ---------------------------- setting mparams -------------------------- */++#if LOCK_AT_FORK+static void pre_fork(void)         { ACQUIRE_LOCK(&(gm)->mutex); }+static void post_fork_parent(void) { RELEASE_LOCK(&(gm)->mutex); }+static void post_fork_child(void)  { INITIAL_LOCK(&(gm)->mutex); }+#endif /* LOCK_AT_FORK */++/* Initialize mparams */+static int init_mparams(void) {+#ifdef NEED_GLOBAL_LOCK_INIT+  if (malloc_global_mutex_status <= 0)+    init_malloc_global_mutex();+#endif++  ACQUIRE_MALLOC_GLOBAL_LOCK();+  if (mparams.magic == 0) {+    size_t magic;+    size_t psize;+    size_t gsize;++#if !defined(WIN32) && !defined(__OS2__)+    psize = malloc_getpagesize;+    gsize = ((DEFAULT_GRANULARITY != 0)? DEFAULT_GRANULARITY : psize);+#elif defined (__OS2__)+    /* if low-memory is used, os2munmap() would break+       if it were anything other than 64k */+    psize = 4096u;+    gsize = 65536u;+#else /* WIN32 */+    {+      SYSTEM_INFO system_info;+      GetSystemInfo(&system_info);+      psize = system_info.dwPageSize;+      gsize = ((DEFAULT_GRANULARITY != 0)?+               DEFAULT_GRANULARITY : system_info.dwAllocationGranularity);+    }+#endif /* WIN32 */++    /* Sanity-check configuration:+       size_t must be unsigned and as wide as pointer type.+       ints must be at least 4 bytes.+       alignment must be at least 8.+       Alignment, min chunk size, and page size must all be powers of 2.+    */+    if ((sizeof(size_t) != sizeof(char*)) ||+        (MAX_SIZE_T < MIN_CHUNK_SIZE)  ||+        (sizeof(int) < 4)  ||+        (MALLOC_ALIGNMENT < (size_t)8U) ||+        ((MALLOC_ALIGNMENT & (MALLOC_ALIGNMENT-SIZE_T_ONE)) != 0) ||+        ((MCHUNK_SIZE      & (MCHUNK_SIZE-SIZE_T_ONE))      != 0) ||+        ((gsize            & (gsize-SIZE_T_ONE))            != 0) ||+        ((psize            & (psize-SIZE_T_ONE))            != 0))+      ABORT;+    mparams.granularity = gsize;+    mparams.page_size = psize;+    mparams.mmap_threshold = DEFAULT_MMAP_THRESHOLD;+    mparams.trim_threshold = DEFAULT_TRIM_THRESHOLD;+#if MORECORE_CONTIGUOUS+    mparams.default_mflags = USE_LOCK_BIT|USE_MMAP_BIT;+#else  /* MORECORE_CONTIGUOUS */+    mparams.default_mflags = USE_LOCK_BIT|USE_MMAP_BIT|USE_NONCONTIGUOUS_BIT;+#endif /* MORECORE_CONTIGUOUS */++#if !ONLY_MSPACES+    /* Set up lock for main malloc area */+    gm->mflags = mparams.default_mflags;+    (void)INITIAL_LOCK(&gm->mutex);+#endif+#if LOCK_AT_FORK+    pthread_atfork(&pre_fork, &post_fork_parent, &post_fork_child);+#endif++    {+#if USE_DEV_RANDOM+      int fd;+      unsigned char buf[sizeof(size_t)];+      /* Try to use /dev/urandom, else fall back on using time */+      if ((fd = open("/dev/urandom", O_RDONLY)) >= 0 &&+          read(fd, buf, sizeof(buf)) == sizeof(buf)) {+        magic = *((size_t *) buf);+        close(fd);+      }+      else+#endif /* USE_DEV_RANDOM */+#ifdef WIN32+      magic = (size_t)(GetTickCount() ^ (size_t)0x55555555U);+#elif defined(LACKS_TIME_H)+      magic = (size_t)&magic ^ (size_t)0x55555555U;+#else+      magic = (size_t)(time(0) ^ (size_t)0x55555555U);+#endif+      magic |= (size_t)8U;    /* ensure nonzero */+      magic &= ~(size_t)7U;   /* improve chances of fault for bad values */+      /* libffi: release-store so any thread that observes magic via the+         acquire load in ensure_initialization() sees the writes above (#873).  */+      ffi_mparams_magic_store(magic);+    }+  }++  RELEASE_MALLOC_GLOBAL_LOCK();+  return 1;+}++/* support for mallopt */+static int change_mparam(int param_number, int value) {+  size_t val;+  ensure_initialization();+  val = (value == -1)? MAX_SIZE_T : (size_t)value;+  switch(param_number) {+  case M_TRIM_THRESHOLD:+    mparams.trim_threshold = val;+    return 1;+  case M_GRANULARITY:+    if (val >= mparams.page_size && ((val & (val-1)) == 0)) {+      mparams.granularity = val;+      return 1;+    }+    else+      return 0;+  case M_MMAP_THRESHOLD:+    mparams.mmap_threshold = val;+    return 1;+  default:+    return 0;+  }+}++#if DEBUG+/* ------------------------- Debugging Support --------------------------- */++/* Check properties of any chunk, whether free, inuse, mmapped etc  */+static void do_check_any_chunk(mstate m, mchunkptr p) {+  assert((is_aligned(chunk2mem(p))) || (p->head == FENCEPOST_HEAD));+  assert(ok_address(m, p));+}++/* Check properties of top chunk */+static void do_check_top_chunk(mstate m, mchunkptr p) {+  msegmentptr sp = segment_holding(m, (char*)p);+  size_t  sz = p->head & ~INUSE_BITS; /* third-lowest bit can be set! */+  assert(sp != 0);+  assert((is_aligned(chunk2mem(p))) || (p->head == FENCEPOST_HEAD));+  assert(ok_address(m, p));+  assert(sz == m->topsize);+  assert(sz > 0);+  assert(sz == ((sp->base + sp->size) - (char*)p) - TOP_FOOT_SIZE);+  assert(pinuse(p));+  assert(!pinuse(chunk_plus_offset(p, sz)));+}++/* Check properties of (inuse) mmapped chunks */+static void do_check_mmapped_chunk(mstate m, mchunkptr p) {+  size_t  sz = chunksize(p);+  size_t len = (sz + (p->prev_foot) + MMAP_FOOT_PAD);+  assert(is_mmapped(p));+  assert(use_mmap(m));+  assert((is_aligned(chunk2mem(p))) || (p->head == FENCEPOST_HEAD));+  assert(ok_address(m, p));+  assert(!is_small(sz));+  assert((len & (mparams.page_size-SIZE_T_ONE)) == 0);+  assert(chunk_plus_offset(p, sz)->head == FENCEPOST_HEAD);+  assert(chunk_plus_offset(p, sz+SIZE_T_SIZE)->head == 0);+}++/* Check properties of inuse chunks */+static void do_check_inuse_chunk(mstate m, mchunkptr p) {+  do_check_any_chunk(m, p);+  assert(is_inuse(p));+  assert(next_pinuse(p));+  /* If not pinuse and not mmapped, previous chunk has OK offset */+  assert(is_mmapped(p) || pinuse(p) || next_chunk(prev_chunk(p)) == p);+  if (is_mmapped(p))+    do_check_mmapped_chunk(m, p);+}++/* Check properties of free chunks */+static void do_check_free_chunk(mstate m, mchunkptr p) {+  size_t sz = chunksize(p);+  mchunkptr next = chunk_plus_offset(p, sz);+  do_check_any_chunk(m, p);+  assert(!is_inuse(p));+  assert(!next_pinuse(p));+  assert (!is_mmapped(p));+  if (p != m->dv && p != m->top) {+    if (sz >= MIN_CHUNK_SIZE) {+      assert((sz & CHUNK_ALIGN_MASK) == 0);+      assert(is_aligned(chunk2mem(p)));+      assert(next->prev_foot == sz);+      assert(pinuse(p));+      assert (next == m->top || is_inuse(next));+      assert(p->fd->bk == p);+      assert(p->bk->fd == p);+    }+    else  /* markers are always of size SIZE_T_SIZE */+      assert(sz == SIZE_T_SIZE);+  }+}++/* Check properties of malloced chunks at the point they are malloced */+static void do_check_malloced_chunk(mstate m, void* mem, size_t s) {+  if (mem != 0) {+    mchunkptr p = mem2chunk(mem);+    size_t sz = p->head & ~INUSE_BITS;+    do_check_inuse_chunk(m, p);+    assert((sz & CHUNK_ALIGN_MASK) == 0);+    assert(sz >= MIN_CHUNK_SIZE);+    assert(sz >= s);+    /* unless mmapped, size is less than MIN_CHUNK_SIZE more than request */+    assert(is_mmapped(p) || sz < (s + MIN_CHUNK_SIZE));+  }+}++/* Check a tree and its subtrees.  */+static void do_check_tree(mstate m, tchunkptr t) {+  tchunkptr head = 0;+  tchunkptr u = t;+  bindex_t tindex = t->index;+  size_t tsize = chunksize(t);+  bindex_t idx;+  compute_tree_index(tsize, idx);+  assert(tindex == idx);+  assert(tsize >= MIN_LARGE_SIZE);+  assert(tsize >= minsize_for_tree_index(idx));+  assert((idx == NTREEBINS-1) || (tsize < minsize_for_tree_index((idx+1))));++  do { /* traverse through chain of same-sized nodes */+    do_check_any_chunk(m, ((mchunkptr)u));+    assert(u->index == tindex);+    assert(chunksize(u) == tsize);+    assert(!is_inuse(u));+    assert(!next_pinuse(u));+    assert(u->fd->bk == u);+    assert(u->bk->fd == u);+    if (u->parent == 0) {+      assert(u->child[0] == 0);+      assert(u->child[1] == 0);+    }+    else {+      assert(head == 0); /* only one node on chain has parent */+      head = u;+      assert(u->parent != u);+      assert (u->parent->child[0] == u ||+              u->parent->child[1] == u ||+              *((tbinptr*)(u->parent)) == u);+      if (u->child[0] != 0) {+        assert(u->child[0]->parent == u);+        assert(u->child[0] != u);+        do_check_tree(m, u->child[0]);+      }+      if (u->child[1] != 0) {+        assert(u->child[1]->parent == u);+        assert(u->child[1] != u);+        do_check_tree(m, u->child[1]);+      }+      if (u->child[0] != 0 && u->child[1] != 0) {+        assert(chunksize(u->child[0]) < chunksize(u->child[1]));+      }+    }+    u = u->fd;+  } while (u != t);+  assert(head != 0);+}++/*  Check all the chunks in a treebin.  */+static void do_check_treebin(mstate m, bindex_t i) {+  tbinptr* tb = treebin_at(m, i);+  tchunkptr t = *tb;+  int empty = (m->treemap & (1U << i)) == 0;+  if (t == 0)+    assert(empty);+  if (!empty)+    do_check_tree(m, t);+}++/*  Check all the chunks in a smallbin.  */+static void do_check_smallbin(mstate m, bindex_t i) {+  sbinptr b = smallbin_at(m, i);+  mchunkptr p = b->bk;+  unsigned int empty = (m->smallmap & (1U << i)) == 0;+  if (p == b)+    assert(empty);+  if (!empty) {+    for (; p != b; p = p->bk) {+      size_t size = chunksize(p);+      mchunkptr q;+      /* each chunk claims to be free */+      do_check_free_chunk(m, p);+      /* chunk belongs in bin */+      assert(small_index(size) == i);+      assert(p->bk == b || chunksize(p->bk) == chunksize(p));+      /* chunk is followed by an inuse chunk */+      q = next_chunk(p);+      if (q->head != FENCEPOST_HEAD)+        do_check_inuse_chunk(m, q);+    }+  }+}++/* Find x in a bin. Used in other check functions. */+static int bin_find(mstate m, mchunkptr x) {+  size_t size = chunksize(x);+  if (is_small(size)) {+    bindex_t sidx = small_index(size);+    sbinptr b = smallbin_at(m, sidx);+    if (smallmap_is_marked(m, sidx)) {+      mchunkptr p = b;+      do {+        if (p == x)+          return 1;+      } while ((p = p->fd) != b);+    }+  }+  else {+    bindex_t tidx;+    compute_tree_index(size, tidx);+    if (treemap_is_marked(m, tidx)) {+      tchunkptr t = *treebin_at(m, tidx);+      size_t sizebits = size << leftshift_for_tree_index(tidx);+      while (t != 0 && chunksize(t) != size) {+        t = t->child[(sizebits >> (SIZE_T_BITSIZE-SIZE_T_ONE)) & 1];+        sizebits <<= 1;+      }+      if (t != 0) {+        tchunkptr u = t;+        do {+          if (u == (tchunkptr)x)+            return 1;+        } while ((u = u->fd) != t);+      }+    }+  }+  return 0;+}++/* Traverse each chunk and check it; return total */+static size_t traverse_and_check(mstate m) {+  size_t sum = 0;+  if (is_initialized(m)) {+    msegmentptr s = &m->seg;+    sum += m->topsize + TOP_FOOT_SIZE;+    while (s != 0) {+      mchunkptr q = align_as_chunk(s->base);+      mchunkptr lastq = 0;+      assert(pinuse(q));+      while (segment_holds(s, q) &&+             q != m->top && q->head != FENCEPOST_HEAD) {+        sum += chunksize(q);+        if (is_inuse(q)) {+          assert(!bin_find(m, q));+          do_check_inuse_chunk(m, q);+        }+        else {+          assert(q == m->dv || bin_find(m, q));+          assert(lastq == 0 || is_inuse(lastq)); /* Not 2 consecutive free */+          do_check_free_chunk(m, q);+        }+        lastq = q;+        q = next_chunk(q);+      }+      s = s->next;+    }+  }+  return sum;+}+++/* Check all properties of malloc_state. */+static void do_check_malloc_state(mstate m) {+  bindex_t i;+  size_t total;+  /* check bins */+  for (i = 0; i < NSMALLBINS; ++i)+    do_check_smallbin(m, i);+  for (i = 0; i < NTREEBINS; ++i)+    do_check_treebin(m, i);++  if (m->dvsize != 0) { /* check dv chunk */+    do_check_any_chunk(m, m->dv);+    assert(m->dvsize == chunksize(m->dv));+    assert(m->dvsize >= MIN_CHUNK_SIZE);+    assert(bin_find(m, m->dv) == 0);+  }++  if (m->top != 0) {   /* check top chunk */+    do_check_top_chunk(m, m->top);+    /*assert(m->topsize == chunksize(m->top)); redundant */+    assert(m->topsize > 0);+    assert(bin_find(m, m->top) == 0);+  }++  total = traverse_and_check(m);+  assert(total <= m->footprint);+  assert(m->footprint <= m->max_footprint);+}+#endif /* DEBUG */++/* ----------------------------- statistics ------------------------------ */++#if !NO_MALLINFO+static struct mallinfo internal_mallinfo(mstate m) {+  struct mallinfo nm = { 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 };+  ensure_initialization();+  if (!PREACTION(m)) {+    check_malloc_state(m);+    if (is_initialized(m)) {+      size_t nfree = SIZE_T_ONE; /* top always free */+      size_t mfree = m->topsize + TOP_FOOT_SIZE;+      size_t sum = mfree;+      msegmentptr s = &m->seg;+      while (s != 0) {+        mchunkptr q = align_as_chunk(s->base);+        while (segment_holds(s, q) &&+               q != m->top && q->head != FENCEPOST_HEAD) {+          size_t sz = chunksize(q);+          sum += sz;+          if (!is_inuse(q)) {+            mfree += sz;+            ++nfree;+          }+          q = next_chunk(q);+        }+        s = s->next;+      }++      nm.arena    = sum;+      nm.ordblks  = nfree;+      nm.hblkhd   = m->footprint - sum;+      nm.usmblks  = m->max_footprint;+      nm.uordblks = m->footprint - mfree;+      nm.fordblks = mfree;+      nm.keepcost = m->topsize;+    }++    POSTACTION(m);+  }+  return nm;+}+#endif /* !NO_MALLINFO */++#if !NO_MALLOC_STATS+static void internal_malloc_stats(mstate m) {+  ensure_initialization();+  if (!PREACTION(m)) {+    size_t maxfp = 0;+    size_t fp = 0;+    size_t used = 0;+    check_malloc_state(m);+    if (is_initialized(m)) {+      msegmentptr s = &m->seg;+      maxfp = m->max_footprint;+      fp = m->footprint;+      used = fp - (m->topsize + TOP_FOOT_SIZE);++      while (s != 0) {+        mchunkptr q = align_as_chunk(s->base);+        while (segment_holds(s, q) &&+               q != m->top && q->head != FENCEPOST_HEAD) {+          if (!is_inuse(q))+            used -= chunksize(q);+          q = next_chunk(q);+        }+        s = s->next;+      }+    }+    POSTACTION(m); /* drop lock */+    fprintf(stderr, "max system bytes = %10lu\n", (unsigned long)(maxfp));+    fprintf(stderr, "system bytes     = %10lu\n", (unsigned long)(fp));+    fprintf(stderr, "in use bytes     = %10lu\n", (unsigned long)(used));+  }+}+#endif /* NO_MALLOC_STATS */++/* ----------------------- Operations on smallbins ----------------------- */++/*+  Various forms of linking and unlinking are defined as macros.  Even+  the ones for trees, which are very long but have very short typical+  paths.  This is ugly but reduces reliance on inlining support of+  compilers.+*/++/* Link a free chunk into a smallbin  */+#define insert_small_chunk(M, P, S) {\+  bindex_t I  = small_index(S);\+  mchunkptr B = smallbin_at(M, I);\+  mchunkptr F = B;\+  assert(S >= MIN_CHUNK_SIZE);\+  if (!smallmap_is_marked(M, I))\+    mark_smallmap(M, I);\+  else if (RTCHECK(ok_address(M, B->fd)))\+    F = B->fd;\+  else {\+    CORRUPTION_ERROR_ACTION(M);\+  }\+  B->fd = P;\+  F->bk = P;\+  P->fd = F;\+  P->bk = B;\+}++/* Unlink a chunk from a smallbin  */+#define unlink_small_chunk(M, P, S) {\+  mchunkptr F = P->fd;\+  mchunkptr B = P->bk;\+  bindex_t I = small_index(S);\+  assert(P != B);\+  assert(P != F);\+  assert(chunksize(P) == small_index2size(I));\+  if (RTCHECK(F == smallbin_at(M,I) || (ok_address(M, F) && F->bk == P))) { \+    if (B == F) {\+      clear_smallmap(M, I);\+    }\+    else if (RTCHECK(B == smallbin_at(M,I) ||\+                     (ok_address(M, B) && B->fd == P))) {\+      F->bk = B;\+      B->fd = F;\+    }\+    else {\+      CORRUPTION_ERROR_ACTION(M);\+    }\+  }\+  else {\+    CORRUPTION_ERROR_ACTION(M);\+  }\+}++/* Unlink the first chunk from a smallbin */+#define unlink_first_small_chunk(M, B, P, I) {\+  mchunkptr F = P->fd;\+  assert(P != B);\+  assert(P != F);\+  assert(chunksize(P) == small_index2size(I));\+  if (B == F) {\+    clear_smallmap(M, I);\+  }\+  else if (RTCHECK(ok_address(M, F) && F->bk == P)) {\+    F->bk = B;\+    B->fd = F;\+  }\+  else {\+    CORRUPTION_ERROR_ACTION(M);\+  }\+}++/* Replace dv node, binning the old one */+/* Used only when dvsize known to be small */+#define replace_dv(M, P, S) {\+  size_t DVS = M->dvsize;\+  assert(is_small(DVS));\+  if (DVS != 0) {\+    mchunkptr DV = M->dv;\+    insert_small_chunk(M, DV, DVS);\+  }\+  M->dvsize = S;\+  M->dv = P;\+}++/* ------------------------- Operations on trees ------------------------- */++/* Insert chunk into tree */+#define insert_large_chunk(M, X, S) {\+  tbinptr* H;\+  bindex_t I;\+  compute_tree_index(S, I);\+  H = treebin_at(M, I);\+  X->index = I;\+  X->child[0] = X->child[1] = 0;\+  if (!treemap_is_marked(M, I)) {\+    mark_treemap(M, I);\+    *H = X;\+    X->parent = (tchunkptr)H;\+    X->fd = X->bk = X;\+  }\+  else {\+    tchunkptr T = *H;\+    size_t K = S << leftshift_for_tree_index(I);\+    for (;;) {\+      if (chunksize(T) != S) {\+        tchunkptr* C = &(T->child[(K >> (SIZE_T_BITSIZE-SIZE_T_ONE)) & 1]);\+        K <<= 1;\+        if (*C != 0)\+          T = *C;\+        else if (RTCHECK(ok_address(M, C))) {\+          *C = X;\+          X->parent = T;\+          X->fd = X->bk = X;\+          break;\+        }\+        else {\+          CORRUPTION_ERROR_ACTION(M);\+          break;\+        }\+      }\+      else {\+        tchunkptr F = T->fd;\+        if (RTCHECK(ok_address(M, T) && ok_address(M, F))) {\+          T->fd = F->bk = X;\+          X->fd = F;\+          X->bk = T;\+          X->parent = 0;\+          break;\+        }\+        else {\+          CORRUPTION_ERROR_ACTION(M);\+          break;\+        }\+      }\+    }\+  }\+}++/*+  Unlink steps:++  1. If x is a chained node, unlink it from its same-sized fd/bk links+     and choose its bk node as its replacement.+  2. If x was the last node of its size, but not a leaf node, it must+     be replaced with a leaf node (not merely one with an open left or+     right), to make sure that lefts and rights of descendants+     correspond properly to bit masks.  We use the rightmost descendant+     of x.  We could use any other leaf, but this is easy to locate and+     tends to counteract removal of leftmosts elsewhere, and so keeps+     paths shorter than minimally guaranteed.  This doesn't loop much+     because on average a node in a tree is near the bottom.+  3. If x is the base of a chain (i.e., has parent links) relink+     x's parent and children to x's replacement (or null if none).+*/++#define unlink_large_chunk(M, X) {\+  tchunkptr XP = X->parent;\+  tchunkptr R;\+  if (X->bk != X) {\+    tchunkptr F = X->fd;\+    R = X->bk;\+    if (RTCHECK(ok_address(M, F) && F->bk == X && R->fd == X)) {\+      F->bk = R;\+      R->fd = F;\+    }\+    else {\+      CORRUPTION_ERROR_ACTION(M);\+    }\+  }\+  else {\+    tchunkptr* RP;\+    if (((R = *(RP = &(X->child[1]))) != 0) ||\+        ((R = *(RP = &(X->child[0]))) != 0)) {\+      tchunkptr* CP;\+      while ((*(CP = &(R->child[1])) != 0) ||\+             (*(CP = &(R->child[0])) != 0)) {\+        R = *(RP = CP);\+      }\+      if (RTCHECK(ok_address(M, RP)))\+        *RP = 0;\+      else {\+        CORRUPTION_ERROR_ACTION(M);\+      }\+    }\+  }\+  if (XP != 0) {\+    tbinptr* H = treebin_at(M, X->index);\+    if (X == *H) {\+      if ((*H = R) == 0) \+        clear_treemap(M, X->index);\+    }\+    else if (RTCHECK(ok_address(M, XP))) {\+      if (XP->child[0] == X) \+        XP->child[0] = R;\+      else \+        XP->child[1] = R;\+    }\+    else\+      CORRUPTION_ERROR_ACTION(M);\+    if (R != 0) {\+      if (RTCHECK(ok_address(M, R))) {\+        tchunkptr C0, C1;\+        R->parent = XP;\+        if ((C0 = X->child[0]) != 0) {\+          if (RTCHECK(ok_address(M, C0))) {\+            R->child[0] = C0;\+            C0->parent = R;\+          }\+          else\+            CORRUPTION_ERROR_ACTION(M);\+        }\+        if ((C1 = X->child[1]) != 0) {\+          if (RTCHECK(ok_address(M, C1))) {\+            R->child[1] = C1;\+            C1->parent = R;\+          }\+          else\+            CORRUPTION_ERROR_ACTION(M);\+        }\+      }\+      else\+        CORRUPTION_ERROR_ACTION(M);\+    }\+  }\+}++/* Relays to large vs small bin operations */++#define insert_chunk(M, P, S)\+  if (is_small(S)) insert_small_chunk(M, P, S)\+  else { tchunkptr TP = (tchunkptr)(P); insert_large_chunk(M, TP, S); }++#define unlink_chunk(M, P, S)\+  if (is_small(S)) unlink_small_chunk(M, P, S)\+  else { tchunkptr TP = (tchunkptr)(P); unlink_large_chunk(M, TP); }+++/* Relays to internal calls to malloc/free from realloc, memalign etc */++#if ONLY_MSPACES+#define internal_malloc(m, b) mspace_malloc(m, b)+#define internal_free(m, mem) mspace_free(m,mem);+#else /* ONLY_MSPACES */+#if MSPACES+#define internal_malloc(m, b)\+  ((m == gm)? dlmalloc(b) : mspace_malloc(m, b))+#define internal_free(m, mem)\+   if (m == gm) dlfree(mem); else mspace_free(m,mem);+#else /* MSPACES */+#define internal_malloc(m, b) dlmalloc(b)+#define internal_free(m, mem) dlfree(mem)+#endif /* MSPACES */+#endif /* ONLY_MSPACES */++/* -----------------------  Direct-mmapping chunks ----------------------- */++/*+  Directly mmapped chunks are set up with an offset to the start of+  the mmapped region stored in the prev_foot field of the chunk. This+  allows reconstruction of the required argument to MUNMAP when freed,+  and also allows adjustment of the returned chunk to meet alignment+  requirements (especially in memalign).+*/++/* Malloc using mmap */+static void* mmap_alloc(mstate m, size_t nb) {+  size_t mmsize = mmap_align(nb + SIX_SIZE_T_SIZES + CHUNK_ALIGN_MASK);+  if (m->footprint_limit != 0) {+    size_t fp = m->footprint + mmsize;+    if (fp <= m->footprint || fp > m->footprint_limit)+      return 0;+  }+  if (mmsize > nb) {     /* Check for wrap around 0 */+    char* mm = (char*)(CALL_DIRECT_MMAP(mmsize));+    if (mm != CMFAIL) {+      size_t offset = align_offset(chunk2mem(mm));+      size_t psize = mmsize - offset - MMAP_FOOT_PAD;+      mchunkptr p = (mchunkptr)(mm + offset);+      p->prev_foot = offset;+      p->head = psize;+      mark_inuse_foot(m, p, psize);+      chunk_plus_offset(p, psize)->head = FENCEPOST_HEAD;+      chunk_plus_offset(p, psize+SIZE_T_SIZE)->head = 0;++      if (m->least_addr == 0 || mm < m->least_addr)+        m->least_addr = mm;+      if ((m->footprint += mmsize) > m->max_footprint)+        m->max_footprint = m->footprint;+      assert(is_aligned(chunk2mem(p)));+      check_mmapped_chunk(m, p);+      return chunk2mem(p);+    }+  }+  return 0;+}++/* Realloc using mmap */+static mchunkptr mmap_resize(mstate m, mchunkptr oldp, size_t nb, int flags) {+  size_t oldsize = chunksize(oldp);+  (void)flags; /* placate people compiling -Wunused */+  if (is_small(nb)) /* Can't shrink mmap regions below small size */+    return 0;+  /* Keep old chunk if big enough but not too big */+  if (oldsize >= nb + SIZE_T_SIZE &&+      (oldsize - nb) <= (mparams.granularity << 1))+    return oldp;+  else {+    size_t offset = oldp->prev_foot;+    size_t oldmmsize = oldsize + offset + MMAP_FOOT_PAD;+    size_t newmmsize = mmap_align(nb + SIX_SIZE_T_SIZES + CHUNK_ALIGN_MASK);+    char* cp = (char*)CALL_MREMAP((char*)oldp - offset,+                                  oldmmsize, newmmsize, flags);+    if (cp != CMFAIL) {+      mchunkptr newp = (mchunkptr)(cp + offset);+      size_t psize = newmmsize - offset - MMAP_FOOT_PAD;+      newp->head = psize;+      mark_inuse_foot(m, newp, psize);+      chunk_plus_offset(newp, psize)->head = FENCEPOST_HEAD;+      chunk_plus_offset(newp, psize+SIZE_T_SIZE)->head = 0;++      if (cp < m->least_addr)+        m->least_addr = cp;+      if ((m->footprint += newmmsize - oldmmsize) > m->max_footprint)+        m->max_footprint = m->footprint;+      check_mmapped_chunk(m, newp);+      return newp;+    }+  }+  return 0;+}+++/* -------------------------- mspace management -------------------------- */++/* Initialize top chunk and its size */+static void init_top(mstate m, mchunkptr p, size_t psize) {+  /* Ensure alignment */+  size_t offset = align_offset(chunk2mem(p));+  p = (mchunkptr)((char*)p + offset);+  psize -= offset;++  m->top = p;+  m->topsize = psize;+  p->head = psize | PINUSE_BIT;+  /* set size of fake trailing chunk holding overhead space only once */+  chunk_plus_offset(p, psize)->head = TOP_FOOT_SIZE;+  m->trim_check = mparams.trim_threshold; /* reset on each update */+}++/* Initialize bins for a new mstate that is otherwise zeroed out */+static void init_bins(mstate m) {+  /* Establish circular links for smallbins */+  bindex_t i;+  for (i = 0; i < NSMALLBINS; ++i) {+    sbinptr bin = smallbin_at(m,i);+    bin->fd = bin->bk = bin;+  }+}++#if PROCEED_ON_ERROR++/* default corruption action */+static void reset_on_error(mstate m) {+  int i;+  ++malloc_corruption_error_count;+  /* Reinitialize fields to forget about all memory */+  m->smallmap = m->treemap = 0;+  m->dvsize = m->topsize = 0;+  m->seg.base = 0;+  m->seg.size = 0;+  m->seg.next = 0;+  m->top = m->dv = 0;+  for (i = 0; i < NTREEBINS; ++i)+    *treebin_at(m, i) = 0;+  init_bins(m);+}+#endif /* PROCEED_ON_ERROR */++/* Allocate chunk and prepend remainder with chunk in successor base. */+static void* prepend_alloc(mstate m, char* newbase, char* oldbase,+                           size_t nb) {+  mchunkptr p = align_as_chunk(newbase);+  mchunkptr oldfirst = align_as_chunk(oldbase);+  size_t psize = (char*)oldfirst - (char*)p;+  mchunkptr q = chunk_plus_offset(p, nb);+  size_t qsize = psize - nb;+  set_size_and_pinuse_of_inuse_chunk(m, p, nb);++  assert((char*)oldfirst > (char*)q);+  assert(pinuse(oldfirst));+  assert(qsize >= MIN_CHUNK_SIZE);++  /* consolidate remainder with first chunk of old base */+  if (oldfirst == m->top) {+    size_t tsize = m->topsize += qsize;+    m->top = q;+    q->head = tsize | PINUSE_BIT;+    check_top_chunk(m, q);+  }+  else if (oldfirst == m->dv) {+    size_t dsize = m->dvsize += qsize;+    m->dv = q;+    set_size_and_pinuse_of_free_chunk(q, dsize);+  }+  else {+    if (!is_inuse(oldfirst)) {+      size_t nsize = chunksize(oldfirst);+      unlink_chunk(m, oldfirst, nsize);+      oldfirst = chunk_plus_offset(oldfirst, nsize);+      qsize += nsize;+    }+    set_free_with_pinuse(q, qsize, oldfirst);+    insert_chunk(m, q, qsize);+    check_free_chunk(m, q);+  }++  check_malloced_chunk(m, chunk2mem(p), nb);+  return chunk2mem(p);+}++/* Add a segment to hold a new noncontiguous region */+static void add_segment(mstate m, char* tbase, size_t tsize, flag_t mmapped) {+  /* Determine locations and sizes of segment, fenceposts, old top */+  char* old_top = (char*)m->top;+  msegmentptr oldsp = segment_holding(m, old_top);+  char* old_end = oldsp->base + oldsp->size;+  size_t ssize = pad_request(sizeof(struct malloc_segment));+  char* rawsp = old_end - (ssize + FOUR_SIZE_T_SIZES + CHUNK_ALIGN_MASK);+  size_t offset = align_offset(chunk2mem(rawsp));+  char* asp = rawsp + offset;+  char* csp = (asp < (old_top + MIN_CHUNK_SIZE))? old_top : asp;+  mchunkptr sp = (mchunkptr)csp;+  msegmentptr ss = (msegmentptr)(chunk2mem(sp));+  mchunkptr tnext = chunk_plus_offset(sp, ssize);+  mchunkptr p = tnext;+  int nfences = 0;+  (void)nfences; /* Suppress unused variable warning */++  /* reset top to new space */+  init_top(m, (mchunkptr)tbase, tsize - TOP_FOOT_SIZE);++  /* Set up segment record */+  assert(is_aligned(ss));+  set_size_and_pinuse_of_inuse_chunk(m, sp, ssize);+  *ss = m->seg; /* Push current record */+  m->seg.base = tbase;+  m->seg.size = tsize;+  (void)set_segment_flags(&m->seg, mmapped);+  m->seg.next = ss;++  /* Insert trailing fenceposts */+  for (;;) {+    mchunkptr nextp = chunk_plus_offset(p, SIZE_T_SIZE);+    p->head = FENCEPOST_HEAD;+    ++nfences;+    if ((char*)(&(nextp->head)) < old_end)+      p = nextp;+    else+      break;+  }+  assert(nfences >= 2);++  /* Insert the rest of old top into a bin as an ordinary free chunk */+  if (csp != old_top) {+    mchunkptr q = (mchunkptr)old_top;+    size_t psize = csp - old_top;+    mchunkptr tn = chunk_plus_offset(q, psize);+    set_free_with_pinuse(q, psize, tn);+    insert_chunk(m, q, psize);+  }++  check_top_chunk(m, m->top);+}++/* -------------------------- System allocation -------------------------- */++/* Get memory from system using MORECORE or MMAP */+static void* sys_alloc(mstate m, size_t nb) {+  char* tbase = CMFAIL;+  size_t tsize = 0;+  flag_t mmap_flag = 0;+  size_t asize; /* allocation size */++  ensure_initialization();++  /* Directly map large chunks, but only if already initialized */+  if (use_mmap(m) && nb >= mparams.mmap_threshold && m->topsize != 0) {+    void* mem = mmap_alloc(m, nb);+    if (mem != 0)+      return mem;+  }++  asize = granularity_align(nb + SYS_ALLOC_PADDING);+  if (asize <= nb)+    return 0; /* wraparound */+  if (m->footprint_limit != 0) {+    size_t fp = m->footprint + asize;+    if (fp <= m->footprint || fp > m->footprint_limit)+      return 0;+  }++  /*+    Try getting memory in any of three ways (in most-preferred to+    least-preferred order):+    1. A call to MORECORE that can normally contiguously extend memory.+       (disabled if not MORECORE_CONTIGUOUS or not HAVE_MORECORE or+       or main space is mmapped or a previous contiguous call failed)+    2. A call to MMAP new space (disabled if not HAVE_MMAP).+       Note that under the default settings, if MORECORE is unable to+       fulfill a request, and HAVE_MMAP is true, then mmap is+       used as a noncontiguous system allocator. This is a useful backup+       strategy for systems with holes in address spaces -- in this case+       sbrk cannot contiguously expand the heap, but mmap may be able to+       find space.+    3. A call to MORECORE that cannot usually contiguously extend memory.+       (disabled if not HAVE_MORECORE)++   In all cases, we need to request enough bytes from system to ensure+   we can malloc nb bytes upon success, so pad with enough space for+   top_foot, plus alignment-pad to make sure we don't lose bytes if+   not on boundary, and round this up to a granularity unit.+  */++  if (MORECORE_CONTIGUOUS && !use_noncontiguous(m)) {+    char* br = CMFAIL;+    size_t ssize = asize; /* sbrk call size */+    msegmentptr ss = (m->top == 0)? 0 : segment_holding(m, (char*)m->top);+    ACQUIRE_MALLOC_GLOBAL_LOCK();++    if (ss == 0) {  /* First time through or recovery */+      char* base = (char*)CALL_MORECORE(0);+      if (base != CMFAIL) {+        size_t fp;+        /* Adjust to end on a page boundary */+        if (!is_page_aligned(base))+          ssize += (page_align((size_t)base) - (size_t)base);+        fp = m->footprint + ssize; /* recheck limits */+        if (ssize > nb && ssize < HALF_MAX_SIZE_T &&+            (m->footprint_limit == 0 ||+             (fp > m->footprint && fp <= m->footprint_limit)) &&+            (br = (char*)(CALL_MORECORE(ssize))) == base) {+          tbase = base;+          tsize = ssize;+        }+      }+    }+    else {+      /* Subtract out existing available top space from MORECORE request. */+      ssize = granularity_align(nb - m->topsize + SYS_ALLOC_PADDING);+      /* Use mem here only if it did continuously extend old space */+      if (ssize < HALF_MAX_SIZE_T &&+          (br = (char*)(CALL_MORECORE(ssize))) == ss->base+ss->size) {+        tbase = br;+        tsize = ssize;+      }+    }++    if (tbase == CMFAIL) {    /* Cope with partial failure */+      if (br != CMFAIL) {    /* Try to use/extend the space we did get */+        if (ssize < HALF_MAX_SIZE_T &&+            ssize < nb + SYS_ALLOC_PADDING) {+          size_t esize = granularity_align(nb + SYS_ALLOC_PADDING - ssize);+          if (esize < HALF_MAX_SIZE_T) {+            char* end = (char*)CALL_MORECORE(esize);+            if (end != CMFAIL)+              ssize += esize;+            else {            /* Can't use; try to release */+              (void) CALL_MORECORE(-ssize);+              br = CMFAIL;+            }+          }+        }+      }+      if (br != CMFAIL) {    /* Use the space we did get */+        tbase = br;+        tsize = ssize;+      }+      else+        disable_contiguous(m); /* Don't try contiguous path in the future */+    }++    RELEASE_MALLOC_GLOBAL_LOCK();+  }++  if (HAVE_MMAP && tbase == CMFAIL) {  /* Try MMAP */+    char* mp = (char*)(CALL_MMAP(asize));+    if (mp != CMFAIL) {+      tbase = mp;+      tsize = asize;+      mmap_flag = USE_MMAP_BIT;+    }+  }++  if (HAVE_MORECORE && tbase == CMFAIL) { /* Try noncontiguous MORECORE */+    if (asize < HALF_MAX_SIZE_T) {+      char* br = CMFAIL;+      char* end = CMFAIL;+      ACQUIRE_MALLOC_GLOBAL_LOCK();+      br = (char*)(CALL_MORECORE(asize));+      end = (char*)(CALL_MORECORE(0));+      RELEASE_MALLOC_GLOBAL_LOCK();+      if (br != CMFAIL && end != CMFAIL && br < end) {+        size_t ssize = end - br;+        if (ssize > nb + TOP_FOOT_SIZE) {+          tbase = br;+          tsize = ssize;+        }+      }+    }+  }++  if (tbase != CMFAIL) {++    if ((m->footprint += tsize) > m->max_footprint)+      m->max_footprint = m->footprint;++    if (!is_initialized(m)) { /* first-time initialization */+      if (m->least_addr == 0 || tbase < m->least_addr)+        m->least_addr = tbase;+      m->seg.base = tbase;+      m->seg.size = tsize;+      (void)set_segment_flags(&m->seg, mmap_flag);+      m->magic = mparams.magic;+      m->release_checks = MAX_RELEASE_CHECK_RATE;+      init_bins(m);+#if !ONLY_MSPACES+      if (is_global(m))+        init_top(m, (mchunkptr)tbase, tsize - TOP_FOOT_SIZE);+      else+#endif+      {+        /* Offset top by embedded malloc_state */+        mchunkptr mn = next_chunk(mem2chunk(m));+        init_top(m, mn, (size_t)((tbase + tsize) - (char*)mn) -TOP_FOOT_SIZE);+      }+    }++    else {+      /* Try to merge with an existing segment */+      msegmentptr sp = &m->seg;+      /* Only consider most recent segment if traversal suppressed */+      while (sp != 0 && tbase != sp->base + sp->size)+        sp = (NO_SEGMENT_TRAVERSAL) ? 0 : sp->next;+      if (sp != 0 &&+          !is_extern_segment(sp) &&+          check_segment_merge(sp, tbase, tsize) &&+          (get_segment_flags(sp) & USE_MMAP_BIT) == mmap_flag &&+          segment_holds(sp, m->top)) { /* append */+        sp->size += tsize;+        init_top(m, m->top, m->topsize + tsize);+      }+      else {+        if (tbase < m->least_addr)+          m->least_addr = tbase;+        sp = &m->seg;+        while (sp != 0 && sp->base != tbase + tsize)+          sp = (NO_SEGMENT_TRAVERSAL) ? 0 : sp->next;+        if (sp != 0 &&+            !is_extern_segment(sp) &&+            check_segment_merge(sp, tbase, tsize) &&+            (get_segment_flags(sp) & USE_MMAP_BIT) == mmap_flag) {+          char* oldbase = sp->base;+          sp->base = tbase;+          sp->size += tsize;+          return prepend_alloc(m, tbase, oldbase, nb);+        }+        else+          add_segment(m, tbase, tsize, mmap_flag);+      }+    }++    if (nb < m->topsize) { /* Allocate from new or extended top space */+      size_t rsize = m->topsize -= nb;+      mchunkptr p = m->top;+      mchunkptr r = m->top = chunk_plus_offset(p, nb);+      r->head = rsize | PINUSE_BIT;+      set_size_and_pinuse_of_inuse_chunk(m, p, nb);+      check_top_chunk(m, m->top);+      check_malloced_chunk(m, chunk2mem(p), nb);+      return chunk2mem(p);+    }+  }++  MALLOC_FAILURE_ACTION;+  return 0;+}++/* -----------------------  system deallocation -------------------------- */++/* Unmap and unlink any mmapped segments that don't contain used chunks */+static size_t release_unused_segments(mstate m) {+  size_t released = 0;+  int nsegs = 0;+  msegmentptr pred = &m->seg;+  msegmentptr sp = pred->next;+  while (sp != 0) {+    char* base = sp->base;+    size_t size = sp->size;+    msegmentptr next = sp->next;+    ++nsegs;+    if (is_mmapped_segment(sp) && !is_extern_segment(sp)) {+      mchunkptr p = align_as_chunk(base);+      size_t psize = chunksize(p);+      /* Can unmap if first chunk holds entire segment and not pinned */+      if (!is_inuse(p) && (char*)p + psize >= base + size - TOP_FOOT_SIZE) {+        tchunkptr tp = (tchunkptr)p;+        assert(segment_holds(sp, (char*)sp));+        if (p == m->dv) {+          m->dv = 0;+          m->dvsize = 0;+        }+        else {+          unlink_large_chunk(m, tp);+        }+        if (CALL_MUNMAP(base, size) == 0) {+          released += size;+          m->footprint -= size;+          /* unlink obsoleted record */+          sp = pred;+          sp->next = next;+        }+        else { /* back out if cannot unmap */+          insert_large_chunk(m, tp, psize);+        }+      }+    }+    if (NO_SEGMENT_TRAVERSAL) /* scan only first segment */+      break;+    pred = sp;+    sp = next;+  }+  /* Reset check counter */+  m->release_checks = (((size_t) nsegs > (size_t) MAX_RELEASE_CHECK_RATE)?+                       (size_t) nsegs : (size_t) MAX_RELEASE_CHECK_RATE);+  return released;+}++static int sys_trim(mstate m, size_t pad) {+  size_t released = 0;+  ensure_initialization();+  if (pad < MAX_REQUEST && is_initialized(m)) {+    pad += TOP_FOOT_SIZE; /* ensure enough room for segment overhead */++    if (m->topsize > pad) {+      /* Shrink top space in granularity-size units, keeping at least one */+      size_t unit = mparams.granularity;+      size_t extra = ((m->topsize - pad + (unit - SIZE_T_ONE)) / unit -+                      SIZE_T_ONE) * unit;+      msegmentptr sp = segment_holding(m, (char*)m->top);++      if (sp == 0)+        CORRUPTION_ERROR_ACTION(m);+      if (!is_extern_segment(sp)) {+        if (is_mmapped_segment(sp)) {+          if (HAVE_MMAP &&+              sp->size >= extra &&+              !has_segment_link(m, sp)) { /* can't shrink if pinned */+            size_t newsize = sp->size - extra;+            (void)newsize; /* placate people compiling -Wunused-variable */+            /* Prefer mremap, fall back to munmap */+            if ((CALL_MREMAP(sp->base, sp->size, newsize, 0) != MFAIL) ||+                (CALL_MUNMAP(sp->base + newsize, extra) == 0)) {+              released = extra;+            }+          }+        }+        else if (HAVE_MORECORE) {+          if (extra >= HALF_MAX_SIZE_T) /* Avoid wrapping negative */+            extra = (HALF_MAX_SIZE_T) + SIZE_T_ONE - unit;+          ACQUIRE_MALLOC_GLOBAL_LOCK();+          {+            /* Make sure end of memory is where we last set it. */+            char* old_br = (char*)(CALL_MORECORE(0));+            if (old_br == sp->base + sp->size) {+              char* rel_br = (char*)(CALL_MORECORE(-extra));+              char* new_br = (char*)(CALL_MORECORE(0));+              if (rel_br != CMFAIL && new_br < old_br)+                released = old_br - new_br;+            }+          }+          RELEASE_MALLOC_GLOBAL_LOCK();+        }+      }++      if (released != 0) {+        sp->size -= released;+        m->footprint -= released;+        init_top(m, m->top, m->topsize - released);+        check_top_chunk(m, m->top);+      }+    }++    /* Unmap any unused mmapped segments */+    if (HAVE_MMAP)+      released += release_unused_segments(m);++    /* On failure, disable autotrim to avoid repeated failed future calls */+    if (released == 0 && m->topsize > m->trim_check)+      m->trim_check = MAX_SIZE_T;+  }++  return (released != 0)? 1 : 0;+}++/* Consolidate and bin a chunk. Differs from exported versions+   of free mainly in that the chunk need not be marked as inuse.+*/+static void dispose_chunk(mstate m, mchunkptr p, size_t psize) {+  mchunkptr next = chunk_plus_offset(p, psize);+  if (!pinuse(p)) {+    mchunkptr prev;+    size_t prevsize = p->prev_foot;+    if (is_mmapped(p)) {+      psize += prevsize + MMAP_FOOT_PAD;+      if (CALL_MUNMAP((char*)p - prevsize, psize) == 0)+        m->footprint -= psize;+      return;+    }+    prev = chunk_minus_offset(p, prevsize);+    psize += prevsize;+    p = prev;+    if (RTCHECK(ok_address(m, prev))) { /* consolidate backward */+      if (p != m->dv) {+        unlink_chunk(m, p, prevsize);+      }+      else if ((next->head & INUSE_BITS) == INUSE_BITS) {+        m->dvsize = psize;+        set_free_with_pinuse(p, psize, next);+        return;+      }+    }+    else {+      CORRUPTION_ERROR_ACTION(m);+      return;+    }+  }+  if (RTCHECK(ok_address(m, next))) {+    if (!cinuse(next)) {  /* consolidate forward */+      if (next == m->top) {+        size_t tsize = m->topsize += psize;+        m->top = p;+        p->head = tsize | PINUSE_BIT;+        if (p == m->dv) {+          m->dv = 0;+          m->dvsize = 0;+        }+        return;+      }+      else if (next == m->dv) {+        size_t dsize = m->dvsize += psize;+        m->dv = p;+        set_size_and_pinuse_of_free_chunk(p, dsize);+        return;+      }+      else {+        size_t nsize = chunksize(next);+        psize += nsize;+        unlink_chunk(m, next, nsize);+        set_size_and_pinuse_of_free_chunk(p, psize);+        if (p == m->dv) {+          m->dvsize = psize;+          return;+        }+      }+    }+    else {+      set_free_with_pinuse(p, psize, next);+    }+    insert_chunk(m, p, psize);+  }+  else {+    CORRUPTION_ERROR_ACTION(m);+  }+}++/* ---------------------------- malloc --------------------------- */++/* allocate a large request from the best fitting chunk in a treebin */+static void* tmalloc_large(mstate m, size_t nb) {+  tchunkptr v = 0;+  size_t rsize = -nb; /* Unsigned negation */+  tchunkptr t;+  bindex_t idx;+  compute_tree_index(nb, idx);+  if ((t = *treebin_at(m, idx)) != 0) {+    /* Traverse tree for this bin looking for node with size == nb */+    size_t sizebits = nb << leftshift_for_tree_index(idx);+    tchunkptr rst = 0;  /* The deepest untaken right subtree */+    for (;;) {+      tchunkptr rt;+      size_t trem = chunksize(t) - nb;+      if (trem < rsize) {+        v = t;+        if ((rsize = trem) == 0)+          break;+      }+      rt = t->child[1];+      t = t->child[(sizebits >> (SIZE_T_BITSIZE-SIZE_T_ONE)) & 1];+      if (rt != 0 && rt != t)+        rst = rt;+      if (t == 0) {+        t = rst; /* set t to least subtree holding sizes > nb */+        break;+      }+      sizebits <<= 1;+    }+  }+  if (t == 0 && v == 0) { /* set t to root of next non-empty treebin */+    binmap_t leftbits = left_bits(idx2bit(idx)) & m->treemap;+    if (leftbits != 0) {+      bindex_t i;+      binmap_t leastbit = least_bit(leftbits);+      compute_bit2idx(leastbit, i);+      t = *treebin_at(m, i);+    }+  }++  while (t != 0) { /* find smallest of tree or subtree */+    size_t trem = chunksize(t) - nb;+    if (trem < rsize) {+      rsize = trem;+      v = t;+    }+    t = leftmost_child(t);+  }++  /*  If dv is a better fit, return 0 so malloc will use it */+  if (v != 0 && rsize < (size_t)(m->dvsize - nb)) {+    if (RTCHECK(ok_address(m, v))) { /* split */+      mchunkptr r = chunk_plus_offset(v, nb);+      assert(chunksize(v) == rsize + nb);+      if (RTCHECK(ok_next(v, r))) {+        unlink_large_chunk(m, v);+        if (rsize < MIN_CHUNK_SIZE)+          set_inuse_and_pinuse(m, v, (rsize + nb));+        else {+          set_size_and_pinuse_of_inuse_chunk(m, v, nb);+          set_size_and_pinuse_of_free_chunk(r, rsize);+          insert_chunk(m, r, rsize);+        }+        return chunk2mem(v);+      }+    }+    CORRUPTION_ERROR_ACTION(m);+  }+  return 0;+}++/* allocate a small request from the best fitting chunk in a treebin */+static void* tmalloc_small(mstate m, size_t nb) {+  tchunkptr t, v;+  size_t rsize;+  bindex_t i;+  binmap_t leastbit = least_bit(m->treemap);+  compute_bit2idx(leastbit, i);+  v = t = *treebin_at(m, i);+  rsize = chunksize(t) - nb;++  while ((t = leftmost_child(t)) != 0) {+    size_t trem = chunksize(t) - nb;+    if (trem < rsize) {+      rsize = trem;+      v = t;+    }+  }++  if (RTCHECK(ok_address(m, v))) {+    mchunkptr r = chunk_plus_offset(v, nb);+    assert(chunksize(v) == rsize + nb);+    if (RTCHECK(ok_next(v, r))) {+      unlink_large_chunk(m, v);+      if (rsize < MIN_CHUNK_SIZE)+        set_inuse_and_pinuse(m, v, (rsize + nb));+      else {+        set_size_and_pinuse_of_inuse_chunk(m, v, nb);+        set_size_and_pinuse_of_free_chunk(r, rsize);+        replace_dv(m, r, rsize);+      }+      return chunk2mem(v);+    }+  }++  CORRUPTION_ERROR_ACTION(m);+  return 0;+}++#if !ONLY_MSPACES++void* dlmalloc(size_t bytes) {+  /*+     Basic algorithm:+     If a small request (< 256 bytes minus per-chunk overhead):+       1. If one exists, use a remainderless chunk in associated smallbin.+          (Remainderless means that there are too few excess bytes to+          represent as a chunk.)+       2. If it is big enough, use the dv chunk, which is normally the+          chunk adjacent to the one used for the most recent small request.+       3. If one exists, split the smallest available chunk in a bin,+          saving remainder in dv.+       4. If it is big enough, use the top chunk.+       5. If available, get memory from system and use it+     Otherwise, for a large request:+       1. Find the smallest available binned chunk that fits, and use it+          if it is better fitting than dv chunk, splitting if necessary.+       2. If better fitting than any binned chunk, use the dv chunk.+       3. If it is big enough, use the top chunk.+       4. If request size >= mmap threshold, try to directly mmap this chunk.+       5. If available, get memory from system and use it++     The ugly goto's here ensure that postaction occurs along all paths.+  */++#if USE_LOCKS+  ensure_initialization(); /* initialize in sys_alloc if not using locks */+#endif++  if (!PREACTION(gm)) {+    void* mem;+    size_t nb;+    if (bytes <= MAX_SMALL_REQUEST) {+      bindex_t idx;+      binmap_t smallbits;+      nb = (bytes < MIN_REQUEST)? MIN_CHUNK_SIZE : pad_request(bytes);+      idx = small_index(nb);+      smallbits = gm->smallmap >> idx;++      if ((smallbits & 0x3U) != 0) { /* Remainderless fit to a smallbin. */+        mchunkptr b, p;+        idx += ~smallbits & 1;       /* Uses next bin if idx empty */+        b = smallbin_at(gm, idx);+        p = b->fd;+        assert(chunksize(p) == small_index2size(idx));+        unlink_first_small_chunk(gm, b, p, idx);+        set_inuse_and_pinuse(gm, p, small_index2size(idx));+        mem = chunk2mem(p);+        check_malloced_chunk(gm, mem, nb);+        goto postaction;+      }++      else if (nb > gm->dvsize) {+        if (smallbits != 0) { /* Use chunk in next nonempty smallbin */+          mchunkptr b, p, r;+          size_t rsize;+          bindex_t i;+          binmap_t leftbits = (smallbits << idx) & left_bits(idx2bit(idx));+          binmap_t leastbit = least_bit(leftbits);+          compute_bit2idx(leastbit, i);+          b = smallbin_at(gm, i);+          p = b->fd;+          assert(chunksize(p) == small_index2size(i));+          unlink_first_small_chunk(gm, b, p, i);+          rsize = small_index2size(i) - nb;+          /* Fit here cannot be remainderless if 4byte sizes */+          if (SIZE_T_SIZE != 4 && rsize < MIN_CHUNK_SIZE)+            set_inuse_and_pinuse(gm, p, small_index2size(i));+          else {+            set_size_and_pinuse_of_inuse_chunk(gm, p, nb);+            r = chunk_plus_offset(p, nb);+            set_size_and_pinuse_of_free_chunk(r, rsize);+            replace_dv(gm, r, rsize);+          }+          mem = chunk2mem(p);+          check_malloced_chunk(gm, mem, nb);+          goto postaction;+        }++        else if (gm->treemap != 0 && (mem = tmalloc_small(gm, nb)) != 0) {+          check_malloced_chunk(gm, mem, nb);+          goto postaction;+        }+      }+    }+    else if (bytes >= MAX_REQUEST)+      nb = MAX_SIZE_T; /* Too big to allocate. Force failure (in sys alloc) */+    else {+      nb = pad_request(bytes);+      if (gm->treemap != 0 && (mem = tmalloc_large(gm, nb)) != 0) {+        check_malloced_chunk(gm, mem, nb);+        goto postaction;+      }+    }++    if (nb <= gm->dvsize) {+      size_t rsize = gm->dvsize - nb;+      mchunkptr p = gm->dv;+      if (rsize >= MIN_CHUNK_SIZE) { /* split dv */+        mchunkptr r = gm->dv = chunk_plus_offset(p, nb);+        gm->dvsize = rsize;+        set_size_and_pinuse_of_free_chunk(r, rsize);+        set_size_and_pinuse_of_inuse_chunk(gm, p, nb);+      }+      else { /* exhaust dv */+        size_t dvs = gm->dvsize;+        gm->dvsize = 0;+        gm->dv = 0;+        set_inuse_and_pinuse(gm, p, dvs);+      }+      mem = chunk2mem(p);+      check_malloced_chunk(gm, mem, nb);+      goto postaction;+    }++    else if (nb < gm->topsize) { /* Split top */+      size_t rsize = gm->topsize -= nb;+      mchunkptr p = gm->top;+      mchunkptr r = gm->top = chunk_plus_offset(p, nb);+      r->head = rsize | PINUSE_BIT;+      set_size_and_pinuse_of_inuse_chunk(gm, p, nb);+      mem = chunk2mem(p);+      check_top_chunk(gm, gm->top);+      check_malloced_chunk(gm, mem, nb);+      goto postaction;+    }++    mem = sys_alloc(gm, nb);++  postaction:+    POSTACTION(gm);+    return mem;+  }++  return 0;+}++/* ---------------------------- free --------------------------- */++void dlfree(void* mem) {+  /*+     Consolidate freed chunks with preceding or succeeding bordering+     free chunks, if they exist, and then place in a bin.  Intermixed+     with special cases for top, dv, mmapped chunks, and usage errors.+  */++  if (mem != 0) {+    mchunkptr p  = mem2chunk(mem);+#if FOOTERS+    mstate fm = get_mstate_for(p);+    if (!ok_magic(fm)) {+      USAGE_ERROR_ACTION(fm, p);+      return;+    }+#else /* FOOTERS */+#define fm gm+#endif /* FOOTERS */+    if (!PREACTION(fm)) {+      check_inuse_chunk(fm, p);+      if (RTCHECK(ok_address(fm, p) && ok_inuse(p))) {+        size_t psize = chunksize(p);+        mchunkptr next = chunk_plus_offset(p, psize);+        if (!pinuse(p)) {+          size_t prevsize = p->prev_foot;+          if (is_mmapped(p)) {+            psize += prevsize + MMAP_FOOT_PAD;+            if (CALL_MUNMAP((char*)p - prevsize, psize) == 0)+              fm->footprint -= psize;+            goto postaction;+          }+          else {+            mchunkptr prev = chunk_minus_offset(p, prevsize);+            psize += prevsize;+            p = prev;+            if (RTCHECK(ok_address(fm, prev))) { /* consolidate backward */+              if (p != fm->dv) {+                unlink_chunk(fm, p, prevsize);+              }+              else if ((next->head & INUSE_BITS) == INUSE_BITS) {+                fm->dvsize = psize;+                set_free_with_pinuse(p, psize, next);+                goto postaction;+              }+            }+            else+              goto erroraction;+          }+        }++        if (RTCHECK(ok_next(p, next) && ok_pinuse(next))) {+          if (!cinuse(next)) {  /* consolidate forward */+            if (next == fm->top) {+              size_t tsize = fm->topsize += psize;+              fm->top = p;+              p->head = tsize | PINUSE_BIT;+              if (p == fm->dv) {+                fm->dv = 0;+                fm->dvsize = 0;+              }+              if (should_trim(fm, tsize))+                sys_trim(fm, 0);+              goto postaction;+            }+            else if (next == fm->dv) {+              size_t dsize = fm->dvsize += psize;+              fm->dv = p;+              set_size_and_pinuse_of_free_chunk(p, dsize);+              goto postaction;+            }+            else {+              size_t nsize = chunksize(next);+              psize += nsize;+              unlink_chunk(fm, next, nsize);+              set_size_and_pinuse_of_free_chunk(p, psize);+              if (p == fm->dv) {+                fm->dvsize = psize;+                goto postaction;+              }+            }+          }+          else+            set_free_with_pinuse(p, psize, next);++          if (is_small(psize)) {+            insert_small_chunk(fm, p, psize);+            check_free_chunk(fm, p);+          }+          else {+            tchunkptr tp = (tchunkptr)p;+            insert_large_chunk(fm, tp, psize);+            check_free_chunk(fm, p);+            if (--fm->release_checks == 0)+              release_unused_segments(fm);+          }+          goto postaction;+        }+      }+    erroraction:+      USAGE_ERROR_ACTION(fm, p);+    postaction:+      POSTACTION(fm);+    }+  }+#if !FOOTERS+#undef fm+#endif /* FOOTERS */+}++void* dlcalloc(size_t n_elements, size_t elem_size) {+  void* mem;+  size_t req = 0;+  if (n_elements != 0) {+    req = n_elements * elem_size;+    if (((n_elements | elem_size) & ~(size_t)0xffff) &&+        (req / n_elements != elem_size))+      req = MAX_SIZE_T; /* force downstream failure on overflow */+  }+  mem = dlmalloc(req);+  if (mem != 0 && calloc_must_clear(mem2chunk(mem)))+    memset(mem, 0, req);+  return mem;+}++#endif /* !ONLY_MSPACES */++/* ------------ Internal support for realloc, memalign, etc -------------- */++/* Try to realloc; only in-place unless can_move true */+static mchunkptr try_realloc_chunk(mstate m, mchunkptr p, size_t nb,+                                   int can_move) {+  mchunkptr newp = 0;+  size_t oldsize = chunksize(p);+  mchunkptr next = chunk_plus_offset(p, oldsize);+  if (RTCHECK(ok_address(m, p) && ok_inuse(p) &&+              ok_next(p, next) && ok_pinuse(next))) {+    if (is_mmapped(p)) {+      newp = mmap_resize(m, p, nb, can_move);+    }+    else if (oldsize >= nb) {             /* already big enough */+      size_t rsize = oldsize - nb;+      if (rsize >= MIN_CHUNK_SIZE) {      /* split off remainder */+        mchunkptr r = chunk_plus_offset(p, nb);+        set_inuse(m, p, nb);+        set_inuse(m, r, rsize);+        dispose_chunk(m, r, rsize);+      }+      newp = p;+    }+    else if (next == m->top) {  /* extend into top */+      if (oldsize + m->topsize > nb) {+        size_t newsize = oldsize + m->topsize;+        size_t newtopsize = newsize - nb;+        mchunkptr newtop = chunk_plus_offset(p, nb);+        set_inuse(m, p, nb);+        newtop->head = newtopsize |PINUSE_BIT;+        m->top = newtop;+        m->topsize = newtopsize;+        newp = p;+      }+    }+    else if (next == m->dv) { /* extend into dv */+      size_t dvs = m->dvsize;+      if (oldsize + dvs >= nb) {+        size_t dsize = oldsize + dvs - nb;+        if (dsize >= MIN_CHUNK_SIZE) {+          mchunkptr r = chunk_plus_offset(p, nb);+          mchunkptr n = chunk_plus_offset(r, dsize);+          set_inuse(m, p, nb);+          set_size_and_pinuse_of_free_chunk(r, dsize);+          clear_pinuse(n);+          m->dvsize = dsize;+          m->dv = r;+        }+        else { /* exhaust dv */+          size_t newsize = oldsize + dvs;+          set_inuse(m, p, newsize);+          m->dvsize = 0;+          m->dv = 0;+        }+        newp = p;+      }+    }+    else if (!cinuse(next)) { /* extend into next free chunk */+      size_t nextsize = chunksize(next);+      if (oldsize + nextsize >= nb) {+        size_t rsize = oldsize + nextsize - nb;+        unlink_chunk(m, next, nextsize);+        if (rsize < MIN_CHUNK_SIZE) {+          size_t newsize = oldsize + nextsize;+          set_inuse(m, p, newsize);+        }+        else {+          mchunkptr r = chunk_plus_offset(p, nb);+          set_inuse(m, p, nb);+          set_inuse(m, r, rsize);+          dispose_chunk(m, r, rsize);+        }+        newp = p;+      }+    }+  }+  else {+    USAGE_ERROR_ACTION(m, chunk2mem(p));+  }+  return newp;+}++static void* internal_memalign(mstate m, size_t alignment, size_t bytes) {+  void* mem = 0;+  if (alignment <  MIN_CHUNK_SIZE) /* must be at least a minimum chunk size */+    alignment = MIN_CHUNK_SIZE;+  if ((alignment & (alignment-SIZE_T_ONE)) != 0) {/* Ensure a power of 2 */+    size_t a = MALLOC_ALIGNMENT << 1;+    while (a < alignment) a <<= 1;+    alignment = a;+  }+  if (bytes >= MAX_REQUEST - alignment) {+    if (m != 0)  { /* Test isn't needed but avoids compiler warning */+      MALLOC_FAILURE_ACTION;+    }+  }+  else {+    size_t nb = request2size(bytes);+    size_t req = nb + alignment + MIN_CHUNK_SIZE - CHUNK_OVERHEAD;+    mem = internal_malloc(m, req);+    if (mem != 0) {+      mchunkptr p = mem2chunk(mem);+      if (PREACTION(m))+        return 0;+      if ((((size_t)(mem)) & (alignment - 1)) != 0) { /* misaligned */+        /*+          Find an aligned spot inside chunk.  Since we need to give+          back leading space in a chunk of at least MIN_CHUNK_SIZE, if+          the first calculation places us at a spot with less than+          MIN_CHUNK_SIZE leader, we can move to the next aligned spot.+          We've allocated enough total room so that this is always+          possible.+        */+        char* br = (char*)mem2chunk((size_t)(((size_t)((char*)mem + alignment -+                                                       SIZE_T_ONE)) &+                                             -alignment));+        char* pos = ((size_t)(br - (char*)(p)) >= MIN_CHUNK_SIZE)?+          br : br+alignment;+        mchunkptr newp = (mchunkptr)pos;+        size_t leadsize = pos - (char*)(p);+        size_t newsize = chunksize(p) - leadsize;++        if (is_mmapped(p)) { /* For mmapped chunks, just adjust offset */+          newp->prev_foot = p->prev_foot + leadsize;+          newp->head = newsize;+        }+        else { /* Otherwise, give back leader, use the rest */+          set_inuse(m, newp, newsize);+          set_inuse(m, p, leadsize);+          dispose_chunk(m, p, leadsize);+        }+        p = newp;+      }++      /* Give back spare room at the end */+      if (!is_mmapped(p)) {+        size_t size = chunksize(p);+        if (size > nb + MIN_CHUNK_SIZE) {+          size_t remainder_size = size - nb;+          mchunkptr remainder = chunk_plus_offset(p, nb);+          set_inuse(m, p, nb);+          set_inuse(m, remainder, remainder_size);+          dispose_chunk(m, remainder, remainder_size);+        }+      }++      mem = chunk2mem(p);+      assert (chunksize(p) >= nb);+      assert(((size_t)mem & (alignment - 1)) == 0);+      check_inuse_chunk(m, p);+      POSTACTION(m);+    }+  }+  return mem;+}++/*+  Common support for independent_X routines, handling+    all of the combinations that can result.+  The opts arg has:+    bit 0 set if all elements are same size (using sizes[0])+    bit 1 set if elements should be zeroed+*/+static void** ialloc(mstate m,+                     size_t n_elements,+                     size_t* sizes,+                     int opts,+                     void* chunks[]) {++  size_t    element_size;   /* chunksize of each element, if all same */+  size_t    contents_size;  /* total size of elements */+  size_t    array_size;     /* request size of pointer array */+  void*     mem;            /* malloced aggregate space */+  mchunkptr p;              /* corresponding chunk */+  size_t    remainder_size; /* remaining bytes while splitting */+  void**    marray;         /* either "chunks" or malloced ptr array */+  mchunkptr array_chunk;    /* chunk for malloced ptr array */+  flag_t    was_enabled;    /* to disable mmap */+  size_t    size;+  size_t    i;++  ensure_initialization();+  /* compute array length, if needed */+  if (chunks != 0) {+    if (n_elements == 0)+      return chunks; /* nothing to do */+    marray = chunks;+    array_size = 0;+  }+  else {+    /* if empty req, must still return chunk representing empty array */+    if (n_elements == 0)+      return (void**)internal_malloc(m, 0);+    marray = 0;+    array_size = request2size(n_elements * (sizeof(void*)));+  }++  /* compute total element size */+  if (opts & 0x1) { /* all-same-size */+    element_size = request2size(*sizes);+    contents_size = n_elements * element_size;+  }+  else { /* add up all the sizes */+    element_size = 0;+    contents_size = 0;+    for (i = 0; i != n_elements; ++i)+      contents_size += request2size(sizes[i]);+  }++  size = contents_size + array_size;++  /*+     Allocate the aggregate chunk.  First disable direct-mmapping so+     malloc won't use it, since we would not be able to later+     free/realloc space internal to a segregated mmap region.+  */+  was_enabled = use_mmap(m);+  disable_mmap(m);+  mem = internal_malloc(m, size - CHUNK_OVERHEAD);+  if (was_enabled)+    enable_mmap(m);+  if (mem == 0)+    return 0;++  if (PREACTION(m)) return 0;+  p = mem2chunk(mem);+  remainder_size = chunksize(p);++  assert(!is_mmapped(p));++  if (opts & 0x2) {       /* optionally clear the elements */+    memset((size_t*)mem, 0, remainder_size - SIZE_T_SIZE - array_size);+  }++  /* If not provided, allocate the pointer array as final part of chunk */+  if (marray == 0) {+    size_t  array_chunk_size;+    array_chunk = chunk_plus_offset(p, contents_size);+    array_chunk_size = remainder_size - contents_size;+    marray = (void**) (chunk2mem(array_chunk));+    set_size_and_pinuse_of_inuse_chunk(m, array_chunk, array_chunk_size);+    remainder_size = contents_size;+  }++  /* split out elements */+  for (i = 0; ; ++i) {+    marray[i] = chunk2mem(p);+    if (i != n_elements-1) {+      if (element_size != 0)+        size = element_size;+      else+        size = request2size(sizes[i]);+      remainder_size -= size;+      set_size_and_pinuse_of_inuse_chunk(m, p, size);+      p = chunk_plus_offset(p, size);+    }+    else { /* the final element absorbs any overallocation slop */+      set_size_and_pinuse_of_inuse_chunk(m, p, remainder_size);+      break;+    }+  }++#if DEBUG+  if (marray != chunks) {+    /* final element must have exactly exhausted chunk */+    if (element_size != 0) {+      assert(remainder_size == element_size);+    }+    else {+      assert(remainder_size == request2size(sizes[i]));+    }+    check_inuse_chunk(m, mem2chunk(marray));+  }+  for (i = 0; i != n_elements; ++i)+    check_inuse_chunk(m, mem2chunk(marray[i]));++#endif /* DEBUG */++  POSTACTION(m);+  return marray;+}++/* Try to free all pointers in the given array.+   Note: this could be made faster, by delaying consolidation,+   at the price of disabling some user integrity checks, We+   still optimize some consolidations by combining adjacent+   chunks before freeing, which will occur often if allocated+   with ialloc or the array is sorted.+*/+static size_t internal_bulk_free(mstate m, void* array[], size_t nelem) {+  size_t unfreed = 0;+  if (!PREACTION(m)) {+    void** a;+    void** fence = &(array[nelem]);+    for (a = array; a != fence; ++a) {+      void* mem = *a;+      if (mem != 0) {+        mchunkptr p = mem2chunk(mem);+        size_t psize = chunksize(p);+#if FOOTERS+        if (get_mstate_for(p) != m) {+          ++unfreed;+          continue;+        }+#endif+        check_inuse_chunk(m, p);+        *a = 0;+        if (RTCHECK(ok_address(m, p) && ok_inuse(p))) {+          void ** b = a + 1; /* try to merge with next chunk */+          mchunkptr next = next_chunk(p);+          if (b != fence && *b == chunk2mem(next)) {+            size_t newsize = chunksize(next) + psize;+            set_inuse(m, p, newsize);+            *b = chunk2mem(p);+          }+          else+            dispose_chunk(m, p, psize);+        }+        else {+          CORRUPTION_ERROR_ACTION(m);+          break;+        }+      }+    }+    if (should_trim(m, m->topsize))+      sys_trim(m, 0);+    POSTACTION(m);+  }+  return unfreed;+}++/* Traversal */+#if MALLOC_INSPECT_ALL+static void internal_inspect_all(mstate m,+                                 void(*handler)(void *start,+                                                void *end,+                                                size_t used_bytes,+                                                void* callback_arg),+                                 void* arg) {+  if (is_initialized(m)) {+    mchunkptr top = m->top;+    msegmentptr s;+    for (s = &m->seg; s != 0; s = s->next) {+      mchunkptr q = align_as_chunk(s->base);+      while (segment_holds(s, q) && q->head != FENCEPOST_HEAD) {+        mchunkptr next = next_chunk(q);+        size_t sz = chunksize(q);+        size_t used;+        void* start;+        if (is_inuse(q)) {+          used = sz - CHUNK_OVERHEAD; /* must not be mmapped */+          start = chunk2mem(q);+        }+        else {+          used = 0;+          if (is_small(sz)) {     /* offset by possible bookkeeping */+            start = (void*)((char*)q + sizeof(struct malloc_chunk));+          }+          else {+            start = (void*)((char*)q + sizeof(struct malloc_tree_chunk));+          }+        }+        if (start < (void*)next)  /* skip if all space is bookkeeping */+          handler(start, next, used, arg);+        if (q == top)+          break;+        q = next;+      }+    }+  }+}+#endif /* MALLOC_INSPECT_ALL */++/* ------------------ Exported realloc, memalign, etc -------------------- */++#if !ONLY_MSPACES++void* dlrealloc(void* oldmem, size_t bytes) {+  void* mem = 0;+  if (oldmem == 0) {+    mem = dlmalloc(bytes);+  }+  else if (bytes >= MAX_REQUEST) {+    MALLOC_FAILURE_ACTION;+  }+#ifdef REALLOC_ZERO_BYTES_FREES+  else if (bytes == 0) {+    dlfree(oldmem);+  }+#endif /* REALLOC_ZERO_BYTES_FREES */+  else {+    size_t nb = request2size(bytes);+    mchunkptr oldp = mem2chunk(oldmem);+#if ! FOOTERS+    mstate m = gm;+#else /* FOOTERS */+    mstate m = get_mstate_for(oldp);+    if (!ok_magic(m)) {+      USAGE_ERROR_ACTION(m, oldmem);+      return 0;+    }+#endif /* FOOTERS */+    if (!PREACTION(m)) {+      mchunkptr newp = try_realloc_chunk(m, oldp, nb, 1);+      POSTACTION(m);+      if (newp != 0) {+        check_inuse_chunk(m, newp);+        mem = chunk2mem(newp);+      }+      else {+        mem = internal_malloc(m, bytes);+        if (mem != 0) {+          size_t oc = chunksize(oldp) - overhead_for(oldp);+          memcpy(mem, oldmem, (oc < bytes)? oc : bytes);+          internal_free(m, oldmem);+        }+      }+    }+  }+  return mem;+}++void* dlrealloc_in_place(void* oldmem, size_t bytes) {+  void* mem = 0;+  if (oldmem != 0) {+    if (bytes >= MAX_REQUEST) {+      MALLOC_FAILURE_ACTION;+    }+    else {+      size_t nb = request2size(bytes);+      mchunkptr oldp = mem2chunk(oldmem);+#if ! FOOTERS+      mstate m = gm;+#else /* FOOTERS */+      mstate m = get_mstate_for(oldp);+      if (!ok_magic(m)) {+        USAGE_ERROR_ACTION(m, oldmem);+        return 0;+      }+#endif /* FOOTERS */+      if (!PREACTION(m)) {+        mchunkptr newp = try_realloc_chunk(m, oldp, nb, 0);+        POSTACTION(m);+        if (newp == oldp) {+          check_inuse_chunk(m, newp);+          mem = oldmem;+        }+      }+    }+  }+  return mem;+}++void* dlmemalign(size_t alignment, size_t bytes) {+  if (alignment <= MALLOC_ALIGNMENT) {+    return dlmalloc(bytes);+  }+  return internal_memalign(gm, alignment, bytes);+}++int dlposix_memalign(void** pp, size_t alignment, size_t bytes) {+  void* mem = 0;+  if (alignment == MALLOC_ALIGNMENT)+    mem = dlmalloc(bytes);+  else {+    size_t d = alignment / sizeof(void*);+    size_t r = alignment % sizeof(void*);+    if (r != 0 || d == 0 || (d & (d-SIZE_T_ONE)) != 0)+      return EINVAL;+    else if (bytes <= MAX_REQUEST - alignment) {+      if (alignment <  MIN_CHUNK_SIZE)+        alignment = MIN_CHUNK_SIZE;+      mem = internal_memalign(gm, alignment, bytes);+    }+  }+  if (mem == 0)+    return ENOMEM;+  else {+    *pp = mem;+    return 0;+  }+}++void* dlvalloc(size_t bytes) {+  size_t pagesz;+  ensure_initialization();+  pagesz = mparams.page_size;+  return dlmemalign(pagesz, bytes);+}++void* dlpvalloc(size_t bytes) {+  size_t pagesz;+  ensure_initialization();+  pagesz = mparams.page_size;+  return dlmemalign(pagesz, (bytes + pagesz - SIZE_T_ONE) & ~(pagesz - SIZE_T_ONE));+}++void** dlindependent_calloc(size_t n_elements, size_t elem_size,+                            void* chunks[]) {+  size_t sz = elem_size; /* serves as 1-element array */+  return ialloc(gm, n_elements, &sz, 3, chunks);+}++void** dlindependent_comalloc(size_t n_elements, size_t sizes[],+                              void* chunks[]) {+  return ialloc(gm, n_elements, sizes, 0, chunks);+}++size_t dlbulk_free(void* array[], size_t nelem) {+  return internal_bulk_free(gm, array, nelem);+}++#if MALLOC_INSPECT_ALL+void dlmalloc_inspect_all(void(*handler)(void *start,+                                         void *end,+                                         size_t used_bytes,+                                         void* callback_arg),+                          void* arg) {+  ensure_initialization();+  if (!PREACTION(gm)) {+    internal_inspect_all(gm, handler, arg);+    POSTACTION(gm);+  }+}+#endif /* MALLOC_INSPECT_ALL */++int dlmalloc_trim(size_t pad) {+  int result = 0;+  ensure_initialization();+  if (!PREACTION(gm)) {+    result = sys_trim(gm, pad);+    POSTACTION(gm);+  }+  return result;+}++size_t dlmalloc_footprint(void) {+  return gm->footprint;+}++size_t dlmalloc_max_footprint(void) {+  return gm->max_footprint;+}++size_t dlmalloc_footprint_limit(void) {+  size_t maf = gm->footprint_limit;+  return maf == 0 ? MAX_SIZE_T : maf;+}++size_t dlmalloc_set_footprint_limit(size_t bytes) {+  size_t result;  /* invert sense of 0 */+  if (bytes == 0)+    result = granularity_align(1); /* Use minimal size */+  if (bytes == MAX_SIZE_T)+    result = 0;                    /* disable */+  else+    result = granularity_align(bytes);+  return gm->footprint_limit = result;+}++#if !NO_MALLINFO+struct mallinfo dlmallinfo(void) {+  return internal_mallinfo(gm);+}+#endif /* NO_MALLINFO */++#if !NO_MALLOC_STATS+void dlmalloc_stats(void) {+  internal_malloc_stats(gm);+}+#endif /* NO_MALLOC_STATS */++int dlmallopt(int param_number, int value) {+  return change_mparam(param_number, value);+}++size_t dlmalloc_usable_size(void* mem) {+  if (mem != 0) {+    mchunkptr p = mem2chunk(mem);+    if (is_inuse(p))+      return chunksize(p) - overhead_for(p);+  }+  return 0;+}++#endif /* !ONLY_MSPACES */++/* ----------------------------- user mspaces ---------------------------- */++#if MSPACES++static mstate init_user_mstate(char* tbase, size_t tsize) {+  size_t msize = pad_request(sizeof(struct malloc_state));+  mchunkptr mn;+  mchunkptr msp = align_as_chunk(tbase);+  mstate m = (mstate)(chunk2mem(msp));+  memset(m, 0, msize);+  (void)INITIAL_LOCK(&m->mutex);+  msp->head = (msize|INUSE_BITS);+  m->seg.base = m->least_addr = tbase;+  m->seg.size = m->footprint = m->max_footprint = tsize;+  m->magic = mparams.magic;+  m->release_checks = MAX_RELEASE_CHECK_RATE;+  m->mflags = mparams.default_mflags;+  m->extp = 0;+  m->exts = 0;+  disable_contiguous(m);+  init_bins(m);+  mn = next_chunk(mem2chunk(m));+  init_top(m, mn, (size_t)((tbase + tsize) - (char*)mn) - TOP_FOOT_SIZE);+  check_top_chunk(m, m->top);+  return m;+}++mspace create_mspace(size_t capacity, int locked) {+  mstate m = 0;+  size_t msize;+  ensure_initialization();+  msize = pad_request(sizeof(struct malloc_state));+  if (capacity < (size_t) -(msize + TOP_FOOT_SIZE + mparams.page_size)) {+    size_t rs = ((capacity == 0)? mparams.granularity :+                 (capacity + TOP_FOOT_SIZE + msize));+    size_t tsize = granularity_align(rs);+    char* tbase = (char*)(CALL_MMAP(tsize));+    if (tbase != CMFAIL) {+      m = init_user_mstate(tbase, tsize);+      set_segment_flags(&m->seg, USE_MMAP_BIT);+      set_lock(m, locked);+    }+  }+  return (mspace)m;+}++mspace create_mspace_with_base(void* base, size_t capacity, int locked) {+  mstate m = 0;+  size_t msize;+  ensure_initialization();+  msize = pad_request(sizeof(struct malloc_state));+  if (capacity > msize + TOP_FOOT_SIZE &&+      capacity < (size_t) -(msize + TOP_FOOT_SIZE + mparams.page_size)) {+    m = init_user_mstate((char*)base, capacity);+    set_segment_flags(&m->seg, EXTERN_BIT);+    set_lock(m, locked);+  }+  return (mspace)m;+}++int mspace_track_large_chunks(mspace msp, int enable) {+  int ret = 0;+  mstate ms = (mstate)msp;+  if (!PREACTION(ms)) {+    if (!use_mmap(ms)) {+      ret = 1;+    }+    if (!enable) {+      enable_mmap(ms);+    } else {+      disable_mmap(ms);+    }+    POSTACTION(ms);+  }+  return ret;+}++size_t destroy_mspace(mspace msp) {+  size_t freed = 0;+  mstate ms = (mstate)msp;+  if (ok_magic(ms)) {+    msegmentptr sp = &ms->seg;+    (void)DESTROY_LOCK(&ms->mutex); /* destroy before unmapped */+    while (sp != 0) {+      char* base = sp->base;+      size_t size = sp->size;+      flag_t flag = get_segment_flags(sp);+      (void)base; /* placate people compiling -Wunused-variable */+      sp = sp->next;+      if ((flag & USE_MMAP_BIT) && !(flag & EXTERN_BIT) &&+          CALL_MUNMAP(base, size) == 0)+        freed += size;+    }+  }+  else {+    USAGE_ERROR_ACTION(ms,ms);+  }+  return freed;+}++/*+  mspace versions of routines are near-clones of the global+  versions. This is not so nice but better than the alternatives.+*/++void* mspace_malloc(mspace msp, size_t bytes) {+  mstate ms = (mstate)msp;+  if (!ok_magic(ms)) {+    USAGE_ERROR_ACTION(ms,ms);+    return 0;+  }+  if (!PREACTION(ms)) {+    void* mem;+    size_t nb;+    if (bytes <= MAX_SMALL_REQUEST) {+      bindex_t idx;+      binmap_t smallbits;+      nb = (bytes < MIN_REQUEST)? MIN_CHUNK_SIZE : pad_request(bytes);+      idx = small_index(nb);+      smallbits = ms->smallmap >> idx;++      if ((smallbits & 0x3U) != 0) { /* Remainderless fit to a smallbin. */+        mchunkptr b, p;+        idx += ~smallbits & 1;       /* Uses next bin if idx empty */+        b = smallbin_at(ms, idx);+        p = b->fd;+        assert(chunksize(p) == small_index2size(idx));+        unlink_first_small_chunk(ms, b, p, idx);+        set_inuse_and_pinuse(ms, p, small_index2size(idx));+        mem = chunk2mem(p);+        check_malloced_chunk(ms, mem, nb);+        goto postaction;+      }++      else if (nb > ms->dvsize) {+        if (smallbits != 0) { /* Use chunk in next nonempty smallbin */+          mchunkptr b, p, r;+          size_t rsize;+          bindex_t i;+          binmap_t leftbits = (smallbits << idx) & left_bits(idx2bit(idx));+          binmap_t leastbit = least_bit(leftbits);+          compute_bit2idx(leastbit, i);+          b = smallbin_at(ms, i);+          p = b->fd;+          assert(chunksize(p) == small_index2size(i));+          unlink_first_small_chunk(ms, b, p, i);+          rsize = small_index2size(i) - nb;+          /* Fit here cannot be remainderless if 4byte sizes */+          if (SIZE_T_SIZE != 4 && rsize < MIN_CHUNK_SIZE)+            set_inuse_and_pinuse(ms, p, small_index2size(i));+          else {+            set_size_and_pinuse_of_inuse_chunk(ms, p, nb);+            r = chunk_plus_offset(p, nb);+            set_size_and_pinuse_of_free_chunk(r, rsize);+            replace_dv(ms, r, rsize);+          }+          mem = chunk2mem(p);+          check_malloced_chunk(ms, mem, nb);+          goto postaction;+        }++        else if (ms->treemap != 0 && (mem = tmalloc_small(ms, nb)) != 0) {+          check_malloced_chunk(ms, mem, nb);+          goto postaction;+        }+      }+    }+    else if (bytes >= MAX_REQUEST)+      nb = MAX_SIZE_T; /* Too big to allocate. Force failure (in sys alloc) */+    else {+      nb = pad_request(bytes);+      if (ms->treemap != 0 && (mem = tmalloc_large(ms, nb)) != 0) {+        check_malloced_chunk(ms, mem, nb);+        goto postaction;+      }+    }++    if (nb <= ms->dvsize) {+      size_t rsize = ms->dvsize - nb;+      mchunkptr p = ms->dv;+      if (rsize >= MIN_CHUNK_SIZE) { /* split dv */+        mchunkptr r = ms->dv = chunk_plus_offset(p, nb);+        ms->dvsize = rsize;+        set_size_and_pinuse_of_free_chunk(r, rsize);+        set_size_and_pinuse_of_inuse_chunk(ms, p, nb);+      }+      else { /* exhaust dv */+        size_t dvs = ms->dvsize;+        ms->dvsize = 0;+        ms->dv = 0;+        set_inuse_and_pinuse(ms, p, dvs);+      }+      mem = chunk2mem(p);+      check_malloced_chunk(ms, mem, nb);+      goto postaction;+    }++    else if (nb < ms->topsize) { /* Split top */+      size_t rsize = ms->topsize -= nb;+      mchunkptr p = ms->top;+      mchunkptr r = ms->top = chunk_plus_offset(p, nb);+      r->head = rsize | PINUSE_BIT;+      set_size_and_pinuse_of_inuse_chunk(ms, p, nb);+      mem = chunk2mem(p);+      check_top_chunk(ms, ms->top);+      check_malloced_chunk(ms, mem, nb);+      goto postaction;+    }++    mem = sys_alloc(ms, nb);++  postaction:+    POSTACTION(ms);+    return mem;+  }++  return 0;+}++void mspace_free(mspace msp, void* mem) {+  if (mem != 0) {+    mchunkptr p  = mem2chunk(mem);+#if FOOTERS+    mstate fm = get_mstate_for(p);+    (void)msp; /* placate people compiling -Wunused */+#else /* FOOTERS */+    mstate fm = (mstate)msp;+#endif /* FOOTERS */+    if (!ok_magic(fm)) {+      USAGE_ERROR_ACTION(fm, p);+      return;+    }+    if (!PREACTION(fm)) {+      check_inuse_chunk(fm, p);+      if (RTCHECK(ok_address(fm, p) && ok_inuse(p))) {+        size_t psize = chunksize(p);+        mchunkptr next = chunk_plus_offset(p, psize);+        if (!pinuse(p)) {+          size_t prevsize = p->prev_foot;+          if (is_mmapped(p)) {+            psize += prevsize + MMAP_FOOT_PAD;+            if (CALL_MUNMAP((char*)p - prevsize, psize) == 0)+              fm->footprint -= psize;+            goto postaction;+          }+          else {+            mchunkptr prev = chunk_minus_offset(p, prevsize);+            psize += prevsize;+            p = prev;+            if (RTCHECK(ok_address(fm, prev))) { /* consolidate backward */+              if (p != fm->dv) {+                unlink_chunk(fm, p, prevsize);+              }+              else if ((next->head & INUSE_BITS) == INUSE_BITS) {+                fm->dvsize = psize;+                set_free_with_pinuse(p, psize, next);+                goto postaction;+              }+            }+            else+              goto erroraction;+          }+        }++        if (RTCHECK(ok_next(p, next) && ok_pinuse(next))) {+          if (!cinuse(next)) {  /* consolidate forward */+            if (next == fm->top) {+              size_t tsize = fm->topsize += psize;+              fm->top = p;+              p->head = tsize | PINUSE_BIT;+              if (p == fm->dv) {+                fm->dv = 0;+                fm->dvsize = 0;+              }+              if (should_trim(fm, tsize))+                sys_trim(fm, 0);+              goto postaction;+            }+            else if (next == fm->dv) {+              size_t dsize = fm->dvsize += psize;+              fm->dv = p;+              set_size_and_pinuse_of_free_chunk(p, dsize);+              goto postaction;+            }+            else {+              size_t nsize = chunksize(next);+              psize += nsize;+              unlink_chunk(fm, next, nsize);+              set_size_and_pinuse_of_free_chunk(p, psize);+              if (p == fm->dv) {+                fm->dvsize = psize;+                goto postaction;+              }+            }+          }+          else+            set_free_with_pinuse(p, psize, next);++          if (is_small(psize)) {+            insert_small_chunk(fm, p, psize);+            check_free_chunk(fm, p);+          }+          else {+            tchunkptr tp = (tchunkptr)p;+            insert_large_chunk(fm, tp, psize);+            check_free_chunk(fm, p);+            if (--fm->release_checks == 0)+              release_unused_segments(fm);+          }+          goto postaction;+        }+      }+    erroraction:+      USAGE_ERROR_ACTION(fm, p);+    postaction:+      POSTACTION(fm);+    }+  }+}++void* mspace_calloc(mspace msp, size_t n_elements, size_t elem_size) {+  void* mem;+  size_t req = 0;+  mstate ms = (mstate)msp;+  if (!ok_magic(ms)) {+    USAGE_ERROR_ACTION(ms,ms);+    return 0;+  }+  if (n_elements != 0) {+    req = n_elements * elem_size;+    if (((n_elements | elem_size) & ~(size_t)0xffff) &&+        (req / n_elements != elem_size))+      req = MAX_SIZE_T; /* force downstream failure on overflow */+  }+  mem = internal_malloc(ms, req);+  if (mem != 0 && calloc_must_clear(mem2chunk(mem)))+    memset(mem, 0, req);+  return mem;+}++void* mspace_realloc(mspace msp, void* oldmem, size_t bytes) {+  void* mem = 0;+  if (oldmem == 0) {+    mem = mspace_malloc(msp, bytes);+  }+  else if (bytes >= MAX_REQUEST) {+    MALLOC_FAILURE_ACTION;+  }+#ifdef REALLOC_ZERO_BYTES_FREES+  else if (bytes == 0) {+    mspace_free(msp, oldmem);+  }+#endif /* REALLOC_ZERO_BYTES_FREES */+  else {+    size_t nb = request2size(bytes);+    mchunkptr oldp = mem2chunk(oldmem);+#if ! FOOTERS+    mstate m = (mstate)msp;+#else /* FOOTERS */+    mstate m = get_mstate_for(oldp);+    if (!ok_magic(m)) {+      USAGE_ERROR_ACTION(m, oldmem);+      return 0;+    }+#endif /* FOOTERS */+    if (!PREACTION(m)) {+      mchunkptr newp = try_realloc_chunk(m, oldp, nb, 1);+      POSTACTION(m);+      if (newp != 0) {+        check_inuse_chunk(m, newp);+        mem = chunk2mem(newp);+      }+      else {+        mem = mspace_malloc(m, bytes);+        if (mem != 0) {+          size_t oc = chunksize(oldp) - overhead_for(oldp);+          memcpy(mem, oldmem, (oc < bytes)? oc : bytes);+          mspace_free(m, oldmem);+        }+      }+    }+  }+  return mem;+}++void* mspace_realloc_in_place(mspace msp, void* oldmem, size_t bytes) {+  void* mem = 0;+  if (oldmem != 0) {+    if (bytes >= MAX_REQUEST) {+      MALLOC_FAILURE_ACTION;+    }+    else {+      size_t nb = request2size(bytes);+      mchunkptr oldp = mem2chunk(oldmem);+#if ! FOOTERS+      mstate m = (mstate)msp;+#else /* FOOTERS */+      mstate m = get_mstate_for(oldp);+      (void)msp; /* placate people compiling -Wunused */+      if (!ok_magic(m)) {+        USAGE_ERROR_ACTION(m, oldmem);+        return 0;+      }+#endif /* FOOTERS */+      if (!PREACTION(m)) {+        mchunkptr newp = try_realloc_chunk(m, oldp, nb, 0);+        POSTACTION(m);+        if (newp == oldp) {+          check_inuse_chunk(m, newp);+          mem = oldmem;+        }+      }+    }+  }+  return mem;+}++void* mspace_memalign(mspace msp, size_t alignment, size_t bytes) {+  mstate ms = (mstate)msp;+  if (!ok_magic(ms)) {+    USAGE_ERROR_ACTION(ms,ms);+    return 0;+  }+  if (alignment <= MALLOC_ALIGNMENT)+    return mspace_malloc(msp, bytes);+  return internal_memalign(ms, alignment, bytes);+}++void** mspace_independent_calloc(mspace msp, size_t n_elements,+                                 size_t elem_size, void* chunks[]) {+  size_t sz = elem_size; /* serves as 1-element array */+  mstate ms = (mstate)msp;+  if (!ok_magic(ms)) {+    USAGE_ERROR_ACTION(ms,ms);+    return 0;+  }+  return ialloc(ms, n_elements, &sz, 3, chunks);+}++void** mspace_independent_comalloc(mspace msp, size_t n_elements,+                                   size_t sizes[], void* chunks[]) {+  mstate ms = (mstate)msp;+  if (!ok_magic(ms)) {+    USAGE_ERROR_ACTION(ms,ms);+    return 0;+  }+  return ialloc(ms, n_elements, sizes, 0, chunks);+}++size_t mspace_bulk_free(mspace msp, void* array[], size_t nelem) {+  return internal_bulk_free((mstate)msp, array, nelem);+}++#if MALLOC_INSPECT_ALL+void mspace_inspect_all(mspace msp,+                        void(*handler)(void *start,+                                       void *end,+                                       size_t used_bytes,+                                       void* callback_arg),+                        void* arg) {+  mstate ms = (mstate)msp;+  if (ok_magic(ms)) {+    if (!PREACTION(ms)) {+      internal_inspect_all(ms, handler, arg);+      POSTACTION(ms);+    }+  }+  else {+    USAGE_ERROR_ACTION(ms,ms);+  }+}+#endif /* MALLOC_INSPECT_ALL */++int mspace_trim(mspace msp, size_t pad) {+  int result = 0;+  mstate ms = (mstate)msp;+  if (ok_magic(ms)) {+    if (!PREACTION(ms)) {+      result = sys_trim(ms, pad);+      POSTACTION(ms);+    }+  }+  else {+    USAGE_ERROR_ACTION(ms,ms);+  }+  return result;+}++#if !NO_MALLOC_STATS+void mspace_malloc_stats(mspace msp) {+  mstate ms = (mstate)msp;+  if (ok_magic(ms)) {+    internal_malloc_stats(ms);+  }+  else {+    USAGE_ERROR_ACTION(ms,ms);+  }+}+#endif /* NO_MALLOC_STATS */++size_t mspace_footprint(mspace msp) {+  size_t result = 0;+  mstate ms = (mstate)msp;+  if (ok_magic(ms)) {+    result = ms->footprint;+  }+  else {+    USAGE_ERROR_ACTION(ms,ms);+  }+  return result;+}++size_t mspace_max_footprint(mspace msp) {+  size_t result = 0;+  mstate ms = (mstate)msp;+  if (ok_magic(ms)) {+    result = ms->max_footprint;+  }+  else {+    USAGE_ERROR_ACTION(ms,ms);+  }+  return result;+}++size_t mspace_footprint_limit(mspace msp) {+  size_t result = 0;+  mstate ms = (mstate)msp;+  if (ok_magic(ms)) {+    size_t maf = ms->footprint_limit;+    result = (maf == 0) ? MAX_SIZE_T : maf;+  }+  else {+    USAGE_ERROR_ACTION(ms,ms);+  }+  return result;+}++size_t mspace_set_footprint_limit(mspace msp, size_t bytes) {+  size_t result = 0;+  mstate ms = (mstate)msp;+  if (ok_magic(ms)) {+    if (bytes == 0)+      result = granularity_align(1); /* Use minimal size */+    if (bytes == MAX_SIZE_T)+      result = 0;                    /* disable */+    else+      result = granularity_align(bytes);+    ms->footprint_limit = result;+  }+  else {+    USAGE_ERROR_ACTION(ms,ms);+  }+  return result;+}++#if !NO_MALLINFO+struct mallinfo mspace_mallinfo(mspace msp) {+  mstate ms = (mstate)msp;+  if (!ok_magic(ms)) {+    USAGE_ERROR_ACTION(ms,ms);+  }+  return internal_mallinfo(ms);+}+#endif /* NO_MALLINFO */++size_t mspace_usable_size(const void* mem) {+  if (mem != 0) {+    mchunkptr p = mem2chunk(mem);+    if (is_inuse(p))+      return chunksize(p) - overhead_for(p);+  }+  return 0;+}++int mspace_mallopt(int param_number, int value) {+  return change_mparam(param_number, value);+}++#endif /* MSPACES */+++/* -------------------- Alternative MORECORE functions ------------------- */++/*+  Guidelines for creating a custom version of MORECORE:++  * For best performance, MORECORE should allocate in multiples of pagesize.+  * MORECORE may allocate more memory than requested. (Or even less,+      but this will usually result in a malloc failure.)+  * MORECORE must not allocate memory when given argument zero, but+      instead return one past the end address of memory from previous+      nonzero call.+  * For best performance, consecutive calls to MORECORE with positive+      arguments should return increasing addresses, indicating that+      space has been contiguously extended.+  * Even though consecutive calls to MORECORE need not return contiguous+      addresses, it must be OK for malloc'ed chunks to span multiple+      regions in those cases where they do happen to be contiguous.+  * MORECORE need not handle negative arguments -- it may instead+      just return MFAIL when given negative arguments.+      Negative arguments are always multiples of pagesize. MORECORE+      must not misinterpret negative args as large positive unsigned+      args. You can suppress all such calls from even occurring by defining+      MORECORE_CANNOT_TRIM,++  As an example alternative MORECORE, here is a custom allocator+  kindly contributed for pre-OSX macOS.  It uses virtually but not+  necessarily physically contiguous non-paged memory (locked in,+  present and won't get swapped out).  You can use it by uncommenting+  this section, adding some #includes, and setting up the appropriate+  defines above:++      #define MORECORE osMoreCore++  There is also a shutdown routine that should somehow be called for+  cleanup upon program exit.++  #define MAX_POOL_ENTRIES 100+  #define MINIMUM_MORECORE_SIZE  (64 * 1024U)+  static int next_os_pool;+  void *our_os_pools[MAX_POOL_ENTRIES];++  void *osMoreCore(int size)+  {+    void *ptr = 0;+    static void *sbrk_top = 0;++    if (size > 0)+    {+      if (size < MINIMUM_MORECORE_SIZE)+         size = MINIMUM_MORECORE_SIZE;+      if (CurrentExecutionLevel() == kTaskLevel)+         ptr = PoolAllocateResident(size + RM_PAGE_SIZE, 0);+      if (ptr == 0)+      {+        return (void *) MFAIL;+      }+      // save ptrs so they can be freed during cleanup+      our_os_pools[next_os_pool] = ptr;+      next_os_pool++;+      ptr = (void *) ((((size_t) ptr) + RM_PAGE_MASK) & ~RM_PAGE_MASK);+      sbrk_top = (char *) ptr + size;+      return ptr;+    }+    else if (size < 0)+    {+      // we don't currently support shrink behavior+      return (void *) MFAIL;+    }+    else+    {+      return sbrk_top;+    }+  }++  // cleanup any allocated memory pools+  // called as last thing before shutting down driver++  void osCleanupMem(void)+  {+    void **ptr;++    for (ptr = our_os_pools; ptr < &our_os_pools[MAX_POOL_ENTRIES]; ptr++)+      if (*ptr)+      {+         PoolDeallocate(*ptr);+         *ptr = 0;+      }+  }++*/+++/* -----------------------------------------------------------------------+History:+    v2.8.6 Wed Aug 29 06:57:58 2012  Doug Lea+      * fix bad comparison in dlposix_memalign+      * don't reuse adjusted asize in sys_alloc+      * add LOCK_AT_FORK -- thanks to Kirill Artamonov for the suggestion+      * reduce compiler warnings -- thanks to all who reported/suggested these++    v2.8.5 Sun May 22 10:26:02 2011  Doug Lea  (dl at gee)+      * Always perform unlink checks unless INSECURE+      * Add posix_memalign.+      * Improve realloc to expand in more cases; expose realloc_in_place.+        Thanks to Peter Buhr for the suggestion.+      * Add footprint_limit, inspect_all, bulk_free. Thanks+        to Barry Hayes and others for the suggestions.+      * Internal refactorings to avoid calls while holding locks+      * Use non-reentrant locks by default. Thanks to Roland McGrath+        for the suggestion.+      * Small fixes to mspace_destroy, reset_on_error.+      * Various configuration extensions/changes. Thanks+         to all who contributed these.++    V2.8.4a Thu Apr 28 14:39:43 2011 (dl at gee.cs.oswego.edu)+      * Update Creative Commons URL++    V2.8.4 Wed May 27 09:56:23 2009  Doug Lea  (dl at gee)+      * Use zeros instead of prev foot for is_mmapped+      * Add mspace_track_large_chunks; thanks to Jean Brouwers+      * Fix set_inuse in internal_realloc; thanks to Jean Brouwers+      * Fix insufficient sys_alloc padding when using 16byte alignment+      * Fix bad error check in mspace_footprint+      * Adaptations for ptmalloc; thanks to Wolfram Gloger.+      * Reentrant spin locks; thanks to Earl Chew and others+      * Win32 improvements; thanks to Niall Douglas and Earl Chew+      * Add NO_SEGMENT_TRAVERSAL and MAX_RELEASE_CHECK_RATE options+      * Extension hook in malloc_state+      * Various small adjustments to reduce warnings on some compilers+      * Various configuration extensions/changes for more platforms. Thanks+         to all who contributed these.++    V2.8.3 Thu Sep 22 11:16:32 2005  Doug Lea  (dl at gee)+      * Add max_footprint functions+      * Ensure all appropriate literals are size_t+      * Fix conditional compilation problem for some #define settings+      * Avoid concatenating segments with the one provided+        in create_mspace_with_base+      * Rename some variables to avoid compiler shadowing warnings+      * Use explicit lock initialization.+      * Better handling of sbrk interference.+      * Simplify and fix segment insertion, trimming and mspace_destroy+      * Reinstate REALLOC_ZERO_BYTES_FREES option from 2.7.x+      * Thanks especially to Dennis Flanagan for help on these.++    V2.8.2 Sun Jun 12 16:01:10 2005  Doug Lea  (dl at gee)+      * Fix memalign brace error.++    V2.8.1 Wed Jun  8 16:11:46 2005  Doug Lea  (dl at gee)+      * Fix improper #endif nesting in C+++      * Add explicit casts needed for C++++    V2.8.0 Mon May 30 14:09:02 2005  Doug Lea  (dl at gee)+      * Use trees for large bins+      * Support mspaces+      * Use segments to unify sbrk-based and mmap-based system allocation,+        removing need for emulation on most platforms without sbrk.+      * Default safety checks+      * Optional footer checks. Thanks to William Robertson for the idea.+      * Internal code refactoring+      * Incorporate suggestions and platform-specific changes.+        Thanks to Dennis Flanagan, Colin Plumb, Niall Douglas,+        Aaron Bachmann,  Emery Berger, and others.+      * Speed up non-fastbin processing enough to remove fastbins.+      * Remove useless cfree() to avoid conflicts with other apps.+      * Remove internal memcpy, memset. Compilers handle builtins better.+      * Remove some options that no one ever used and rename others.++    V2.7.2 Sat Aug 17 09:07:30 2002  Doug Lea  (dl at gee)+      * Fix malloc_state bitmap array misdeclaration++    V2.7.1 Thu Jul 25 10:58:03 2002  Doug Lea  (dl at gee)+      * Allow tuning of FIRST_SORTED_BIN_SIZE+      * Use PTR_UINT as type for all ptr->int casts. Thanks to John Belmonte.+      * Better detection and support for non-contiguousness of MORECORE.+        Thanks to Andreas Mueller, Conal Walsh, and Wolfram Gloger+      * Bypass most of malloc if no frees. Thanks To Emery Berger.+      * Fix freeing of old top non-contiguous chunk im sysmalloc.+      * Raised default trim and map thresholds to 256K.+      * Fix mmap-related #defines. Thanks to Lubos Lunak.+      * Fix copy macros; added LACKS_FCNTL_H. Thanks to Neal Walfield.+      * Branch-free bin calculation+      * Default trim and mmap thresholds now 256K.++    V2.7.0 Sun Mar 11 14:14:06 2001  Doug Lea  (dl at gee)+      * Introduce independent_comalloc and independent_calloc.+        Thanks to Michael Pachos for motivation and help.+      * Make optional .h file available+      * Allow > 2GB requests on 32bit systems.+      * new WIN32 sbrk, mmap, munmap, lock code from <Walter@GeNeSys-e.de>.+        Thanks also to Andreas Mueller <a.mueller at paradatec.de>,+        and Anonymous.+      * Allow override of MALLOC_ALIGNMENT (Thanks to Ruud Waij for+        helping test this.)+      * memalign: check alignment arg+      * realloc: don't try to shift chunks backwards, since this+        leads to  more fragmentation in some programs and doesn't+        seem to help in any others.+      * Collect all cases in malloc requiring system memory into sysmalloc+      * Use mmap as backup to sbrk+      * Place all internal state in malloc_state+      * Introduce fastbins (although similar to 2.5.1)+      * Many minor tunings and cosmetic improvements+      * Introduce USE_PUBLIC_MALLOC_WRAPPERS, USE_MALLOC_LOCK+      * Introduce MALLOC_FAILURE_ACTION, MORECORE_CONTIGUOUS+        Thanks to Tony E. Bennett <tbennett@nvidia.com> and others.+      * Include errno.h to support default failure action.++    V2.6.6 Sun Dec  5 07:42:19 1999  Doug Lea  (dl at gee)+      * return null for negative arguments+      * Added Several WIN32 cleanups from Martin C. Fong <mcfong at yahoo.com>+         * Add 'LACKS_SYS_PARAM_H' for those systems without 'sys/param.h'+          (e.g. WIN32 platforms)+         * Cleanup header file inclusion for WIN32 platforms+         * Cleanup code to avoid Microsoft Visual C++ compiler complaints+         * Add 'USE_DL_PREFIX' to quickly allow co-existence with existing+           memory allocation routines+         * Set 'malloc_getpagesize' for WIN32 platforms (needs more work)+         * Use 'assert' rather than 'ASSERT' in WIN32 code to conform to+           usage of 'assert' in non-WIN32 code+         * Improve WIN32 'sbrk()' emulation's 'findRegion()' routine to+           avoid infinite loop+      * Always call 'fREe()' rather than 'free()'++    V2.6.5 Wed Jun 17 15:57:31 1998  Doug Lea  (dl at gee)+      * Fixed ordering problem with boundary-stamping++    V2.6.3 Sun May 19 08:17:58 1996  Doug Lea  (dl at gee)+      * Added pvalloc, as recommended by H.J. Liu+      * Added 64bit pointer support mainly from Wolfram Gloger+      * Added anonymously donated WIN32 sbrk emulation+      * Malloc, calloc, getpagesize: add optimizations from Raymond Nijssen+      * malloc_extend_top: fix mask error that caused wastage after+        foreign sbrks+      * Add linux mremap support code from HJ Liu++    V2.6.2 Tue Dec  5 06:52:55 1995  Doug Lea  (dl at gee)+      * Integrated most documentation with the code.+      * Add support for mmap, with help from+        Wolfram Gloger (Gloger@lrz.uni-muenchen.de).+      * Use last_remainder in more cases.+      * Pack bins using idea from  colin@nyx10.cs.du.edu+      * Use ordered bins instead of best-fit threshold+      * Eliminate block-local decls to simplify tracing and debugging.+      * Support another case of realloc via move into top+      * Fix error occurring when initial sbrk_base not word-aligned.+      * Rely on page size for units instead of SBRK_UNIT to+        avoid surprises about sbrk alignment conventions.+      * Add mallinfo, mallopt. Thanks to Raymond Nijssen+        (raymond@es.ele.tue.nl) for the suggestion.+      * Add `pad' argument to malloc_trim and top_pad mallopt parameter.+      * More precautions for cases where other routines call sbrk,+        courtesy of Wolfram Gloger (Gloger@lrz.uni-muenchen.de).+      * Added macros etc., allowing use in linux libc from+        H.J. Lu (hjl@gnu.ai.mit.edu)+      * Inverted this history list++    V2.6.1 Sat Dec  2 14:10:57 1995  Doug Lea  (dl at gee)+      * Re-tuned and fixed to behave more nicely with V2.6.0 changes.+      * Removed all preallocation code since under current scheme+        the work required to undo bad preallocations exceeds+        the work saved in good cases for most test programs.+      * No longer use return list or unconsolidated bins since+        no scheme using them consistently outperforms those that don't+        given above changes.+      * Use best fit for very large chunks to prevent some worst-cases.+      * Added some support for debugging++    V2.6.0 Sat Nov  4 07:05:23 1995  Doug Lea  (dl at gee)+      * Removed footers when chunks are in use. Thanks to+        Paul Wilson (wilson@cs.texas.edu) for the suggestion.++    V2.5.4 Wed Nov  1 07:54:51 1995  Doug Lea  (dl at gee)+      * Added malloc_trim, with help from Wolfram Gloger+        (wmglo@Dent.MED.Uni-Muenchen.DE).++    V2.5.3 Tue Apr 26 10:16:01 1994  Doug Lea  (dl at g)++    V2.5.2 Tue Apr  5 16:20:40 1994  Doug Lea  (dl at g)+      * realloc: try to expand in both directions+      * malloc: swap order of clean-bin strategy;+      * realloc: only conditionally expand backwards+      * Try not to scavenge used bins+      * Use bin counts as a guide to preallocation+      * Occasionally bin return list chunks in first scan+      * Add a few optimizations from colin@nyx10.cs.du.edu++    V2.5.1 Sat Aug 14 15:40:43 1993  Doug Lea  (dl at g)+      * faster bin computation & slightly different binning+      * merged all consolidations to one part of malloc proper+         (eliminating old malloc_find_space & malloc_clean_bin)+      * Scan 2 returns chunks (not just 1)+      * Propagate failure in realloc if malloc returns 0+      * Add stuff to allow compilation on non-ANSI compilers+          from kpv@research.att.com++    V2.5 Sat Aug  7 07:41:59 1993  Doug Lea  (dl at g.oswego.edu)+      * removed potential for odd address access in prev_chunk+      * removed dependency on getpagesize.h+      * misc cosmetics and a bit more internal documentation+      * anticosmetics: mangled names in macros to evade debugger strangeness+      * tested on sparc, hp-700, dec-mips, rs6000+          with gcc & native cc (hp, dec only) allowing+          Detlefs & Zorn comparison study (in SIGPLAN Notices.)++    Trial version Fri Aug 28 13:14:29 1992  Doug Lea  (dl at g.oswego.edu)+      * Based loosely on libg++-1.2X malloc. (It retains some of the overall+         structure of old version,  but most details differ.)+ */
src/frv/ffi.c view
@@ -240,8 +240,8 @@       /* Functions return 4-byte or smaller results in gr8.  8-byte 	 values also use gr9.  We fill the both, even for small return 	 values, just to avoid a branch.  */ -      asm ("ldi  @(%0, #0), gr8" : : "r" (&rvalue));-      asm ("ldi  @(%0, #0), gr9" : : "r" (&((int *) &rvalue)[1]));+      __asm__ ("ldi  @(%0, #0), gr8" : : "r" (&rvalue));+      __asm__ ("ldi  @(%0, #0), gr9" : : "r" (&((int *) &rvalue)[1]));     } } 
src/ia64/ffi.c view
@@ -84,7 +84,7 @@ #define stf_spill(addr, value) #else #define stf_spill(addr, value)	\-  asm ("stf.spill %0 = %1%P0" : "=m" (*addr) : "f"(value));+  __asm__ ("stf.spill %0 = %1%P0" : "=m" (*addr) : "f"(value)); #endif  /* Load a value from ADDR, which is in the current cpu implementation's@@ -94,7 +94,7 @@ #define ldf_fill(result, addr) #else #define ldf_fill(result, addr)	\-  asm ("ldf.fill %0 = %1%P1" : "=f"(result) : "m"(*addr));+  __asm__ ("ldf.fill %0 = %1%P1" : "=f"(result) : "m"(*addr)); #endif  /* Return the size of the C type associated with with TYPE.  Which will
+ src/loongarch/ffi.c view
@@ -0,0 +1,628 @@+/* -----------------------------------------------------------------------+   ffi.c - Copyright (c) 2022 Xu Chenghua <xuchenghua@loongson.cn>+                         2022 Cheng Lulu <chenglulu@loongson.cn>+   Based on RISC-V port++   LoongArch Foreign Function Interface++   Permission is hereby granted, free of charge, to any person obtaining+   a copy of this software and associated documentation files (the+   ``Software''), to deal in the Software without restriction, including+   without limitation the rights to use, copy, modify, merge, publish,+   distribute, sublicense, and/or sell copies of the Software, and to+   permit persons to whom the Software is furnished to do so, subject to+   the following conditions:++   The above copyright notice and this permission notice shall be included+   in all copies or substantial portions of the Software.++   THE SOFTWARE IS PROVIDED ``AS IS'', WITHOUT WARRANTY OF ANY KIND,+   EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF+   MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND+   NONINFRINGEMENT.  IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT+   HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY,+   WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,+   OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER+   DEALINGS IN THE SOFTWARE.+   ----------------------------------------------------------------------- */++#include <ffi.h>+#include <ffi_common.h>+#include <tramp.h>++#include <stdlib.h>+#include <stdint.h>++#if defined(__loongarch_soft_float)+# define ABI_FRLEN 0+#elif defined(__loongarch_single_float)+# define ABI_FRLEN 32+# define ABI_FLOAT float+#elif defined(__loongarch_double_float)+# define ABI_FRLEN 64+# define ABI_FLOAT double+#else+#error unsupported LoongArch floating-point ABI+#endif++#define NARGREG 8+#define STKALIGN 16+#define MAXCOPYARG (2 * sizeof (double))++/* call_context registers+   - 8 floating point parameter/result registers.+   - 8 integer parameter/result registers.+   - 2 registers used by the assembly code to in-place construct its own+     stack frame+     - frame register+     - return register+*/+typedef struct call_context+{+#if !defined(__loongarch_soft_float)+  ABI_FLOAT fa[8];+#endif+  size_t a[10];+} call_context;++typedef struct call_builder+{+  call_context *aregs;+  int used_integer;+  int used_float;+  size_t *used_stack;	    /* Stack pointer.  */+  size_t *stack;	    /* Place for arguments pass by reference.  */+  size_t next_struct_area;  /* Offset for arguments pass by reference.  */+} call_builder;++/* Integer (not pointer) less than ABI GRLEN.  */+/* FFI_TYPE_INT does not appear to be used.  */+#if __SIZEOF_POINTER__ == 8+# define IS_INT(type) ((type) >= FFI_TYPE_UINT8 && (type) <= FFI_TYPE_SINT64)+#else+# define IS_INT(type) ((type) >= FFI_TYPE_UINT8 && (type) <= FFI_TYPE_SINT32)+#endif++#if ABI_FRLEN+typedef struct float_struct_info+{+  char as_elements;+  char type1;+  char offset2;+  char type2;+} float_struct_info;++#if ABI_FRLEN >= 64+# define IS_FLOAT(type) ((type) >= FFI_TYPE_FLOAT && (type) <= FFI_TYPE_DOUBLE)+#else+# define IS_FLOAT(type) ((type) == FFI_TYPE_FLOAT)+#endif++static ffi_type **+flatten_struct (ffi_type *in, ffi_type **out, ffi_type **out_end)+{+  int i;++  if (out == out_end)+    return out;+  if (in->type != FFI_TYPE_STRUCT)+    *(out++) = in;+  else+    for (i = 0; in->elements[i]; i++)+      out = flatten_struct (in->elements[i], out, out_end);+  return out;+}++/* Structs with at most two fields after flattening, one of which is of+   floating point type, are passed in multiple registers if sufficient+   registers are available.  */+static float_struct_info+struct_passed_as_elements (call_builder *cb, ffi_type *top)+{+  float_struct_info ret = {0, 0, 0, 0};+  ffi_type *fields[3];+  int num_floats, num_ints;+  int num_fields = flatten_struct (top, fields, fields + 3) - fields;++  if (num_fields == 1)+    {+      if (IS_FLOAT (fields[0]->type))+	{+	  ret.as_elements = 1;+	  ret.type1 = fields[0]->type;+	}+    }+  else if (num_fields == 2)+    {+      num_floats = IS_FLOAT (fields[0]->type) + IS_FLOAT (fields[1]->type);+      num_ints = IS_INT (fields[0]->type) + IS_INT (fields[1]->type);+      if (num_floats == 0 || num_floats + num_ints != 2)+	return ret;+      if (cb->used_float + num_floats > NARGREG+	  || cb->used_integer + (2 - num_floats) > NARGREG)+	return ret;+      if (!IS_FLOAT (fields[0]->type) && !IS_FLOAT (fields[1]->type))+	return ret;++      ret.type1 = fields[0]->type;+      ret.type2 = fields[1]->type;+      ret.offset2 = FFI_ALIGN (fields[0]->size, fields[1]->alignment);+      ret.as_elements = 1;+    }+  return ret;+}+#endif++/* Allocates a single register, float register, or GRLEN-sized stack slot to a+   datum.  */+static void+marshal_atom (call_builder *cb, int type, void *data)+{+  size_t value = 0;+  switch (type)+    {+    case FFI_TYPE_UINT8:+      value = *(uint8_t *) data;+      break;+    case FFI_TYPE_SINT8:+      value = *(int8_t *) data;+      break;+    case FFI_TYPE_UINT16:+      value = *(uint16_t *) data;+      break;+    case FFI_TYPE_SINT16:+      value = *(int16_t *) data;+      break;+    /* 32-bit quantities are always sign-extended in the ABI.  */+    case FFI_TYPE_UINT32:+      value = *(int32_t *) data;+      break;+    case FFI_TYPE_SINT32:+      value = *(int32_t *) data;+      break;+#if __SIZEOF_POINTER__ == 8+    case FFI_TYPE_UINT64:+      value = *(uint64_t *) data;+      break;+    case FFI_TYPE_SINT64:+      value = *(int64_t *) data;+      break;+#endif+    case FFI_TYPE_POINTER:+      value = *(size_t *) data;+      break;++#if ABI_FRLEN >= 32+    case FFI_TYPE_FLOAT:+      *(float *)(cb->aregs->fa + cb->used_float++) = *(float *) data;+      return;+#endif+#if ABI_FRLEN >= 64+    case FFI_TYPE_DOUBLE:+      (cb->aregs->fa[cb->used_float++]) = *(double *) data;+      return;+#endif+    default:+      FFI_ASSERT (0);+      break;+    }++  if (cb->used_integer == NARGREG)+    *cb->used_stack++ = value;+  else+    cb->aregs->a[cb->used_integer++] = value;+}++static void+unmarshal_atom (call_builder *cb, int type, void *data)+{+  size_t value;+  switch (type)+    {+#if ABI_FRLEN >= 32+    case FFI_TYPE_FLOAT:+      *(float *) data = *(float *)(cb->aregs->fa + cb->used_float++);+      return;+#endif+#if ABI_FRLEN >= 64+    case FFI_TYPE_DOUBLE:+      *(double *) data = cb->aregs->fa[cb->used_float++];+      return;+#endif+    }++  if (cb->used_integer == NARGREG)+    value = *cb->used_stack++;+  else+    value = cb->aregs->a[cb->used_integer++];++  switch (type)+    {+    case FFI_TYPE_UINT8:+    case FFI_TYPE_SINT8:+    case FFI_TYPE_UINT16:+    case FFI_TYPE_SINT16:+    case FFI_TYPE_UINT32:+    case FFI_TYPE_SINT32:+#if __SIZEOF_POINTER__ == 8+    case FFI_TYPE_UINT64:+    case FFI_TYPE_SINT64:+#endif+    case FFI_TYPE_POINTER:+      *(ffi_arg *)data = value;+      break;+    default:+      FFI_ASSERT (0);+      break;+    }+}++/* Allocate and copy a structure that is passed by value on the stack and+   return a pointer to it.  */+static void *+allocate_and_copy_struct_to_stack (call_builder *cb, void *data,+				   ffi_type *type)+{+  size_t dest = cb->next_struct_area - type->size;++  dest = FFI_ALIGN_DOWN (dest, type->alignment);+  cb->next_struct_area = dest;++  return memcpy ((char *)cb->stack + dest, data, type->size);+}++/* Adds an argument to a call, or a not by reference return value.  */+static void+marshal (call_builder *cb, ffi_type *type, int var, void *data)+{+  size_t realign[2];++#if ABI_FRLEN+  if (!var && type->type == FFI_TYPE_STRUCT)+    {+      float_struct_info fsi = struct_passed_as_elements (cb, type);+      if (fsi.as_elements)+	{+	  marshal_atom (cb, fsi.type1, data);+	  if (fsi.offset2)+	    marshal_atom (cb, fsi.type2, ((char *) data) + fsi.offset2);+	  return;+	}+    }++  if (!var && cb->used_float < NARGREG+      && IS_FLOAT (type->type))+    {+      marshal_atom (cb, type->type, data);+      return;+    }++  double promoted;+  if (var && type->type == FFI_TYPE_FLOAT)+    {+      /* C standard requires promoting float -> double for variable arg.  */+      promoted = *(float *) data;+      type = &ffi_type_double;+      data = &promoted;+    }+#endif++  if (type->size > 2 * __SIZEOF_POINTER__)+    /* Pass by reference.  */+    {+      allocate_and_copy_struct_to_stack (cb, data, type);+      data = (char *)cb->stack + cb->next_struct_area;+      marshal_atom (cb, FFI_TYPE_POINTER, &data);+    }+  else if (IS_INT (type->type) || type->type == FFI_TYPE_POINTER)+    marshal_atom (cb, type->type, data);+  else+    {+      /* Overlong integers, soft-float floats, and structs without special+	 float handling are treated identically from this point on.  */++      /* Variadics are aligned even in registers.  */+      if (type->alignment > __SIZEOF_POINTER__)+	{+	  if (var)+	    cb->used_integer = FFI_ALIGN (cb->used_integer, 2);+	  cb->used_stack+	    = (size_t *) FFI_ALIGN (cb->used_stack, 2 * __SIZEOF_POINTER__);+	}++      memcpy (realign, data, type->size);+      if (type->size > 0)+	marshal_atom (cb, FFI_TYPE_POINTER, realign);+      if (type->size > __SIZEOF_POINTER__)+	marshal_atom (cb, FFI_TYPE_POINTER, realign + 1);+    }+}++/* For arguments passed by reference returns the pointer, otherwise the arg+   is copied (up to MAXCOPYARG bytes).  */+static void *+unmarshal (call_builder *cb, ffi_type *type, int var, void *data)+{+  size_t realign[2];+  void *pointer;++#if ABI_FRLEN+  if (!var && type->type == FFI_TYPE_STRUCT)+    {+      float_struct_info fsi = struct_passed_as_elements (cb, type);+      if (fsi.as_elements)+	{+	  unmarshal_atom (cb, fsi.type1, data);+	  if (fsi.offset2)+	    unmarshal_atom (cb, fsi.type2, ((char *) data) + fsi.offset2);+	  return data;+	}+    }++  if (!var && cb->used_float < NARGREG+      && IS_FLOAT (type->type))+    {+      unmarshal_atom (cb, type->type, data);+      return data;+    }++  if (var && type->type == FFI_TYPE_FLOAT)+    {+      int m = cb->used_integer;+      void *promoted+	= m < NARGREG ? cb->aregs->a + m : cb->used_stack + m - NARGREG + 1;+      *(float *) promoted = *(double *) promoted;+    }+#endif++  if (type->size > 2 * __SIZEOF_POINTER__)+    {+      /* Pass by reference.  */+      unmarshal_atom (cb, FFI_TYPE_POINTER, (char *) &pointer);+      return pointer;+    }+  else if (IS_INT (type->type) || type->type == FFI_TYPE_POINTER)+    {+      unmarshal_atom (cb, type->type, data);+      return data;+    }+  else+    {+      /* Overlong integers, soft-float floats, and structs without special+	 float handling are treated identically from this point on.  */++      /* Variadics are aligned even in registers.  */+      if (type->alignment > __SIZEOF_POINTER__)+	{+	  if (var)+	    cb->used_integer = FFI_ALIGN (cb->used_integer, 2);+	  cb->used_stack+	    = (size_t *) FFI_ALIGN (cb->used_stack, 2 * __SIZEOF_POINTER__);+	}++      if (type->size > 0)+	unmarshal_atom (cb, FFI_TYPE_POINTER, realign);+      if (type->size > __SIZEOF_POINTER__)+	unmarshal_atom (cb, FFI_TYPE_POINTER, realign + 1);+      memcpy (data, realign, type->size);+      return data;+    }+}++static int+passed_by_ref (call_builder *cb, ffi_type *type, int var)+{+#if ABI_FRLEN+  if (!var && type->type == FFI_TYPE_STRUCT)+    {+      float_struct_info fsi = struct_passed_as_elements (cb, type);+      if (fsi.as_elements)+	return 0;+    }+#endif++  return type->size > 2 * __SIZEOF_POINTER__;+}++/* Perform machine dependent cif processing.  */+ffi_status+ffi_prep_cif_machdep (ffi_cif *cif)+{+  cif->loongarch_nfixedargs = cif->nargs;+  return FFI_OK;+}++/* Perform machine dependent cif processing when we have a variadic+   function.  */+ffi_status+ffi_prep_cif_machdep_var (ffi_cif *cif, unsigned int nfixedargs,+			  unsigned int ntotalargs)+{+  cif->loongarch_nfixedargs = nfixedargs;+  return FFI_OK;+}++/* Low level routine for calling functions.  */+extern void ffi_call_asm (void *stack, struct call_context *regs,+			  void (*fn) (void), void *closure) FFI_HIDDEN;++static void+ffi_call_int (ffi_cif *cif, void (*fn) (void), void *rvalue, void **avalue,+	      void *closure)+{+  size_t arg_bytes = FFI_ALIGN (cif->bytes, STKALIGN);++  /* This is a conservative estimate, assuming a complex return value and+     that all remaining arguments are long long / __int128 */+  size_t extra_bytes = cif->nargs <= 3 ? 0 :+      FFI_ALIGN(2 * sizeof(size_t) * (cif->nargs - 3), STKALIGN);++  size_t rval_bytes = 0;+  if (rvalue == NULL && cif->rtype->size > 2 * __SIZEOF_POINTER__)+    rval_bytes = FFI_ALIGN (cif->rtype->size, STKALIGN);+  size_t alloc_size = arg_bytes + extra_bytes + rval_bytes + sizeof (call_context);++  /* The assembly code will deallocate all stack data at lower addresses+     than the argument region, so we need to allocate the frame and the+     return value after the arguments in a single allocation.  */+  size_t alloc_base;+  /* Argument region must be 16-byte aligned in LP64 ABIs.  */+  if (_Alignof(max_align_t) >= STKALIGN)+    /* Since sizeof long double is normally 16, the compiler will+       guarantee alloca alignment to at least that much.  */+    alloc_base = (size_t) alloca (alloc_size);+  else+    alloc_base = FFI_ALIGN (alloca (alloc_size + STKALIGN - 1), STKALIGN);++  if (rval_bytes)+    rvalue = (void *) (alloc_base + arg_bytes);++  call_builder cb;+  cb.used_float = cb.used_integer = 0;+  cb.aregs = (call_context *) (alloc_base + arg_bytes + extra_bytes + rval_bytes);+  cb.used_stack = (size_t *)((char *) alloc_base);+  cb.stack = (size_t *)((char *) alloc_base + extra_bytes + rval_bytes);+  cb.next_struct_area = arg_bytes;++  int return_by_ref = passed_by_ref (&cb, cif->rtype, 0);+  if (return_by_ref)+    cb.aregs->a[cb.used_integer++] = (size_t)rvalue;++  int i;+  for (i = 0; i < cif->nargs; i++)+    marshal (&cb, cif->arg_types[i], i >= cif->loongarch_nfixedargs,+	     avalue[i]);++  ffi_call_asm ((void *) alloc_base, cb.aregs, fn, closure);++  cb.used_float = cb.used_integer = 0;+  if (!return_by_ref && rvalue)+    unmarshal (&cb, cif->rtype, 0, rvalue);+}++void+ffi_call (ffi_cif *cif, void (*fn) (void), void *rvalue, void **avalue)+{+  ffi_call_int (cif, fn, rvalue, avalue, NULL);+}++void+ffi_call_go (ffi_cif *cif, void (*fn) (void), void *rvalue, void **avalue,+	     void *closure)+{+  ffi_call_int (cif, fn, rvalue, avalue, closure);+}++extern void ffi_closure_asm (void) FFI_HIDDEN;++ffi_status+ffi_prep_closure_loc (ffi_closure *closure, ffi_cif *cif,+		      void (*fun) (ffi_cif *, void *, void **, void *),+		      void *user_data, void *codeloc)+{+  uint32_t *tramp = (uint32_t *) &closure->tramp[0];+  uint64_t fn = (uint64_t) (uintptr_t) ffi_closure_asm;++  if (cif->abi <= FFI_FIRST_ABI || cif->abi >= FFI_LAST_ABI)+    return FFI_BAD_ABI;++#if defined(FFI_EXEC_STATIC_TRAMP)+  if (ffi_tramp_is_present(closure))+    {+      ffi_tramp_set_parms (closure->ftramp, ffi_closure_asm, closure);+      goto out;+    }+#endif++  /* Fill the dynamic trampoline.  We will call ffi_closure_inner with codeloc,+     not closure, but as long as the memory is readable it should work.  */+  tramp[0] = 0x1800000c; /* pcaddi $t0, 0 (i.e. $t0 <- tramp) */+  tramp[1] = 0x28c0418d; /* ld.d   $t1, $t0, 16 */+  tramp[2] = 0x4c0001a0; /* jirl   $zero, $t1, 0 */+  tramp[3] = 0x03400000; /* nop */+  tramp[4] = fn;+  tramp[5] = fn >> 32;++  __builtin___clear_cache (codeloc, codeloc + FFI_TRAMPOLINE_SIZE);++#if defined(FFI_EXEC_STATIC_TRAMP)+out:+#endif+  closure->cif = cif;+  closure->fun = fun;+  closure->user_data = user_data;++  return FFI_OK;+}++extern void ffi_go_closure_asm (void) FFI_HIDDEN;++ffi_status+ffi_prep_go_closure (ffi_go_closure *closure, ffi_cif *cif,+		     void (*fun) (ffi_cif *, void *, void **, void *))+{+  if (cif->abi <= FFI_FIRST_ABI || cif->abi >= FFI_LAST_ABI)+    return FFI_BAD_ABI;++  closure->tramp = (void *) ffi_go_closure_asm;+  closure->cif = cif;+  closure->fun = fun;+  return FFI_OK;+}++/* Called by the assembly code with aregs pointing to saved argument registers+   and stack pointing to the stacked arguments.  Return values passed in+   registers will be reloaded from aregs.  */+void FFI_HIDDEN+ffi_closure_inner (ffi_cif *cif,+		   void (*fun) (ffi_cif *, void *, void **, void *),+		   void *user_data, size_t *stack, call_context *aregs)+{+  void **avalue = alloca (cif->nargs * sizeof (void *));+  /* Storage for arguments which will be copied by unmarshal().  We could+     theoretically avoid the copies in many cases and use at most 128 bytes+     of memory, but allocating disjoint storage for each argument is+     simpler.  */+  char *astorage = alloca (cif->nargs * MAXCOPYARG);+  void *rvalue;+  call_builder cb;+  int return_by_ref;+  int i;++  cb.aregs = aregs;+  cb.used_integer = cb.used_float = 0;+  cb.used_stack = stack;++  return_by_ref = passed_by_ref (&cb, cif->rtype, 0);+  if (return_by_ref)+    unmarshal (&cb, &ffi_type_pointer, 0, &rvalue);+  else+    rvalue = alloca (cif->rtype->size);++  for (i = 0; i < cif->nargs; i++)+    avalue[i]+      = unmarshal (&cb, cif->arg_types[i], i >= cif->loongarch_nfixedargs,+		   astorage + i * MAXCOPYARG);++  fun (cif, rvalue, avalue, user_data);++  if (!return_by_ref && cif->rtype->type != FFI_TYPE_VOID)+    {+      cb.used_integer = cb.used_float = 0;+      marshal (&cb, cif->rtype, 0, rvalue);+    }+}++#if defined(FFI_EXEC_STATIC_TRAMP)+void *+ffi_tramp_arch (size_t *tramp_size, size_t *map_size)+{+  extern void *trampoline_code_table;++  *tramp_size = 16;+  /* A mapping size of 64K is chosen to cover the page sizes of 4K, 16K, and+     64K.  */+  *map_size = 1 << 16;+  return &trampoline_code_table;+}+#endif
+ src/loongarch/ffitarget.h view
@@ -0,0 +1,97 @@+/* -----------------------------------------------------------------*-C-*-+   ffitarget.h - Copyright (c) 2022 Xu Chenghua <xuchenghua@loongson.cn>+                               2022 Cheng Lulu <chenglulu@loongson.cn>++   Target configuration macros for LoongArch.++   Permission is hereby granted, free of charge, to any person obtaining+   a copy of this software and associated documentation files (the+   ``Software''), to deal in the Software without restriction, including+   without limitation the rights to use, copy, modify, merge, publish,+   distribute, sublicense, and/or sell copies of the Software, and to+   permit persons to whom the Software is furnished to do so, subject to+   the following conditions:++   The above copyright notice and this permission notice shall be included+   in all copies or substantial portions of the Software.++   THE SOFTWARE IS PROVIDED ``AS IS'', WITHOUT WARRANTY OF ANY KIND,+   EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF+   MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND+   NONINFRINGEMENT.  IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT+   HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY,+   WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,+   OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER+   DEALINGS IN THE SOFTWARE.++   ----------------------------------------------------------------------- */++#ifndef LIBFFI_TARGET_H+#define LIBFFI_TARGET_H++#ifndef LIBFFI_H+#error \+  "Please do not include ffitarget.h directly into your source.  Use ffi.h instead."+#endif++#ifndef __loongarch__+#error \+  "libffi was configured for a LoongArch target but this does not appear to be a LoongArch compiler."+#endif++#ifndef LIBFFI_ASM++typedef unsigned long ffi_arg;+typedef signed long ffi_sarg;++typedef enum ffi_abi+{+  FFI_FIRST_ABI = 0,+  FFI_LP64S,+  FFI_LP64F,+  FFI_LP64D,+  FFI_ILP32S,+  FFI_ILP32F,+  FFI_ILP32D,+  FFI_LAST_ABI,++#if __loongarch_grlen == 64+  #if defined(__loongarch_soft_float)+    FFI_DEFAULT_ABI = FFI_LP64S+  #elif defined(__loongarch_single_float)+    FFI_DEFAULT_ABI = FFI_LP64F+  #elif defined(__loongarch_double_float)+    FFI_DEFAULT_ABI = FFI_LP64D+  #else+    #error unsupported LoongArch floating-point ABI+  #endif+#elif __loongarch_grlen == 32+  #if defined(__loongarch_soft_float)+    FFI_DEFAULT_ABI = FFI_ILP32S+  #elif defined(__loongarch_single_float)+    FFI_DEFAULT_ABI = FFI_ILP32F+  #elif defined(__loongarch_double_float)+    FFI_DEFAULT_ABI = FFI_ILP32D+  #else+    #error unsupported LoongArch floating-point ABI+  #endif+#else+  #error unsupported LoongArch base architecture+#endif+} ffi_abi;++#endif /* LIBFFI_ASM */++#define FFI_TARGET_HAS_INT128++/* ---- Definitions for closures ----------------------------------------- */++#define FFI_CLOSURES 1+#define FFI_GO_CLOSURES 1+#define FFI_TRAMPOLINE_SIZE 24+#define FFI_NATIVE_RAW_API 0+#define FFI_EXTRA_CIF_FIELDS \+  unsigned loongarch_nfixedargs; \+  unsigned loongarch_unused+#define FFI_TARGET_SPECIFIC_VARIADIC+#endif
+ src/loongarch/sysv.S view
@@ -0,0 +1,329 @@+/* -----------------------------------------------------------------------+  sysv.S  - Copyright (c) 2022 Xu Chenghua <xuchenghua@loongson.cn>+                          2022 Cheng Lulu <chenglulu@loongson.cn>++   LoongArch Foreign Function Interface++   Permission is hereby granted, free of charge, to any person obtaining+   a copy of this software and associated documentation files (the+   ``Software''), to deal in the Software without restriction, including+   without limitation the rights to use, copy, modify, merge, publish,+   distribute, sublicense, and/or sell copies of the Software, and to+   permit persons to whom the Software is furnished to do so, subject to+   the following conditions:++   The above copyright notice and this permission notice shall be included+   in all copies or substantial portions of the Software.++   THE SOFTWARE IS PROVIDED ``AS IS'', WITHOUT WARRANTY OF ANY KIND,+   EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF+   MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND+   NONINFRINGEMENT.  IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT+   HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY,+   WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,+   OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER+   DEALINGS IN THE SOFTWARE.+   ----------------------------------------------------------------------- */++#define LIBFFI_ASM+#include <fficonfig.h>+#include <ffi.h>++/* Define aliases so that we can handle all ABIs uniformly.  */++#if __SIZEOF_POINTER__ == 8+# define PTRS 8+# define LARG ld.d+# define SARG st.d+# define ADDI addi.d+#else+# define PTRS 4+# define LARG ld.w+# define SARG st.w+# define ADDI addi.w+#endif++#if defined(__loongarch_single_float)+# define FLTS 4+# define FLD fld.w+# define FST fst.w+#elif defined(__loongarch_double_float)+# define FLTS 8+# define FLARG fld.d+# define FSARG fst.d+#elif defined(__loongarch_soft_float)+# define FLTS 0+#else+#error unsupported LoongArch floating-point ABI+#endif++    .text+    .globl  ffi_call_asm+    .type   ffi_call_asm, @function+    .hidden ffi_call_asm+/* struct call_context+   {+     ABI_FLOAT fa[8];+     size_t a[10];+   }++   - 8 floating point parameter/result registers (fa[0] - fa[7])+   - 8 integer parameter/result registers (a[0] - a[7])+   - 2 registers used by the assembly code to in-place construct its own stack+     frame.+    - frame pointer (a[8])+    - return address (a[9])++   void ffi_call_asm (size_t *stackargs, struct call_context *regargs,+		      void (*fn)(void), void *closure); */++#define FRAME_LEN (8 * FLTS + 10 * PTRS)++ffi_call_asm:+	.cfi_startproc++	/* We are NOT going to set up an ordinary stack frame.  In order to pass+	   the stacked args to the called function, we adjust our stack pointer+	   to a0, which is in the _caller's_ alloca area.  We establish our own+	   stack frame at the end of the call_context.++	   Anything below the arguments will be freed at this point, although+	   we preserve the call_context so that it can be read back in the+	   caller.  */++	.cfi_def_cfa	5, FRAME_LEN /* Interim CFA based on a1. */+	SARG	$fp, $a1, FRAME_LEN - 2*PTRS+	.cfi_offset	22, -2*PTRS+	SARG	$ra, $a1, FRAME_LEN - 1*PTRS+	.cfi_offset	1, -1*PTRS++	ADDI	$fp, $a1, FRAME_LEN+	move	$sp, $a0+	.cfi_def_cfa	22, 0 /* Our frame is fully set up. */++	/* Load arguments. */+	move	$t1, $a2+	move	$t2, $a3++#if FLTS+	FLARG	$fa0, $fp, -FRAME_LEN+0*FLTS+	FLARG	$fa1, $fp, -FRAME_LEN+1*FLTS+	FLARG	$fa2, $fp, -FRAME_LEN+2*FLTS+	FLARG	$fa3, $fp, -FRAME_LEN+3*FLTS+	FLARG	$fa4, $fp, -FRAME_LEN+4*FLTS+	FLARG	$fa5, $fp, -FRAME_LEN+5*FLTS+	FLARG	$fa6, $fp, -FRAME_LEN+6*FLTS+	FLARG	$fa7, $fp, -FRAME_LEN+7*FLTS+#endif++	LARG	$a0, $fp, -FRAME_LEN+8*FLTS+0*PTRS+	LARG	$a1, $fp, -FRAME_LEN+8*FLTS+1*PTRS+	LARG	$a2, $fp, -FRAME_LEN+8*FLTS+2*PTRS+	LARG	$a3, $fp, -FRAME_LEN+8*FLTS+3*PTRS+	LARG	$a4, $fp, -FRAME_LEN+8*FLTS+4*PTRS+	LARG	$a5, $fp, -FRAME_LEN+8*FLTS+5*PTRS+	LARG	$a6, $fp, -FRAME_LEN+8*FLTS+6*PTRS+	LARG	$a7, $fp, -FRAME_LEN+8*FLTS+7*PTRS++	/* Call */+	jirl	$ra, $t1, 0++#if FLTS+	/* Save return values - only a0/a1 (fa0/fa1) are used.  */+	FSARG	$fa0, $fp, -FRAME_LEN+0*FLTS+	FSARG	$fa1, $fp, -FRAME_LEN+1*FLTS+#endif++	SARG	$a0, $fp, -FRAME_LEN+8*FLTS+0*PTRS+	SARG	$a1, $fp, -FRAME_LEN+8*FLTS+1*PTRS++	/* Restore and return.  */+	ADDI	$sp, $fp, -FRAME_LEN+	.cfi_def_cfa	3, FRAME_LEN+	LARG	$ra, $fp, -1*PTRS+	.cfi_restore	1+	LARG	$fp, $fp, -2*PTRS+	.cfi_restore	22+	jr	$ra+	.cfi_endproc+	.size	ffi_call_asm, .-ffi_call_asm+++/* ffi_closure_asm. Expects address of the passed-in ffi_closure in t0.+   void ffi_closure_inner (ffi_cif *cif,+			   void (*fun)(ffi_cif *, void *, void **, void *),+			   void *user_data,+			   size_t *stackargs, struct call_context *regargs) */++	.globl	ffi_closure_asm+	.hidden	ffi_closure_asm+	.type	ffi_closure_asm, @function++ffi_closure_asm:+	.cfi_startproc+	ADDI	$sp, $sp, -FRAME_LEN+	.cfi_def_cfa_offset FRAME_LEN++	/* Make a frame.  */+	SARG	$fp, $sp, FRAME_LEN - 2*PTRS+	.cfi_offset	22, -2*PTRS+	SARG	$ra, $sp, FRAME_LEN - 1*PTRS+	.cfi_offset	1, -1*PTRS+	ADDI	$fp, $sp, FRAME_LEN++	/* Save arguments.  */+#if FLTS+	FSARG	$fa0, $sp, 0*FLTS+	FSARG	$fa1, $sp, 1*FLTS+	FSARG	$fa2, $sp, 2*FLTS+	FSARG	$fa3, $sp, 3*FLTS+	FSARG	$fa4, $sp, 4*FLTS+	FSARG	$fa5, $sp, 5*FLTS+	FSARG	$fa6, $sp, 6*FLTS+	FSARG	$fa7, $sp, 7*FLTS+#endif++	SARG	$a0, $sp, 8*FLTS+0*PTRS+	SARG	$a1, $sp, 8*FLTS+1*PTRS+	SARG	$a2, $sp, 8*FLTS+2*PTRS+	SARG	$a3, $sp, 8*FLTS+3*PTRS+	SARG	$a4, $sp, 8*FLTS+4*PTRS+	SARG	$a5, $sp, 8*FLTS+5*PTRS+	SARG	$a6, $sp, 8*FLTS+6*PTRS+	SARG	$a7, $sp, 8*FLTS+7*PTRS++	/* Enter C */+	LARG	$a0, $t0, FFI_TRAMPOLINE_SIZE+0*PTRS+	LARG	$a1, $t0, FFI_TRAMPOLINE_SIZE+1*PTRS+	LARG	$a2, $t0, FFI_TRAMPOLINE_SIZE+2*PTRS+	ADDI	$a3, $sp, FRAME_LEN+	move	$a4, $sp++	bl	ffi_closure_inner++	/* Return values.  */+#if FLTS+	FLARG	$fa0, $sp, 0*FLTS+	FLARG	$fa1, $sp, 1*FLTS+#endif++	LARG	$a0, $sp, 8*FLTS+0*PTRS+	LARG	$a1, $sp, 8*FLTS+1*PTRS++	/* Restore and return.  */+	LARG	$ra, $sp, FRAME_LEN-1*PTRS+	.cfi_restore	1+	LARG	$fp, $sp, FRAME_LEN-2*PTRS+	.cfi_restore	22+	ADDI	$sp, $sp, FRAME_LEN+	.cfi_def_cfa_offset 0+	jr	$ra+	.cfi_endproc+	.size	ffi_closure_asm, .-ffi_closure_asm++/* Static trampoline code table, in which each element is a trampoline.++   The trampoline clobbers t0 and t1, but we don't save them on the stack+   because our psABI explicitly says they are scratch registers, at least for+   ELF.  Our dynamic trampoline is already clobbering them anyway.++   The trampoline has two parameters - target code to jump to and data for+   the target code. The trampoline extracts the parameters from its parameter+   block (see tramp_table_map()).  The trampoline saves the data address in+   t0 and jumps to the target code.  As ffi_closure_asm() already expects the+   data address to be in t0, we don't need a "ffi_closure_asm_alt".  */++#if defined(FFI_EXEC_STATIC_TRAMP)+	.align	16+	.globl	trampoline_code_table+	.hidden	trampoline_code_table+	.type	trampoline_code_table, @function++trampoline_code_table:++	.rept	65536 / 16+	pcaddu12i	$t1, 16 # 65536 >> 12+	LARG	$t0, $t1, 0+	LARG	$t1, $t1, PTRS+	jirl	$zero, $t1, 0+	.endr+	.size	trampoline_code_table, .-trampoline_code_table++	.align	2+#endif++/* ffi_go_closure_asm.  Expects address of the passed-in ffi_go_closure in t2.+   void ffi_closure_inner (ffi_cif *cif,+			   void (*fun)(ffi_cif *, void *, void **, void *),+			   void *user_data,+			   size_t *stackargs, struct call_context *regargs) */++	.globl	ffi_go_closure_asm+	.hidden	ffi_go_closure_asm+	.type	ffi_go_closure_asm, @function++ffi_go_closure_asm:+	.cfi_startproc+	ADDI	$sp, $sp, -FRAME_LEN+	.cfi_def_cfa_offset FRAME_LEN++	/* Make a frame.  */+	SARG	$fp, $sp, FRAME_LEN - 2*PTRS+	.cfi_offset	22, -2*PTRS+	SARG	$ra, $sp, FRAME_LEN - 1*PTRS+	.cfi_offset	1, -1*PTRS+	ADDI	$fp, $sp, FRAME_LEN++	/* Save arguments.  */+#if FLTS+	FSARG	$fa0, $sp, 0*FLTS+	FSARG	$fa1, $sp, 1*FLTS+	FSARG	$fa2, $sp, 2*FLTS+	FSARG	$fa3, $sp, 3*FLTS+	FSARG	$fa4, $sp, 4*FLTS+	FSARG	$fa5, $sp, 5*FLTS+	FSARG	$fa6, $sp, 6*FLTS+	FSARG	$fa7, $sp, 7*FLTS+#endif++	SARG	$a0, $sp, 8*FLTS+0*PTRS+	SARG	$a1, $sp, 8*FLTS+1*PTRS+	SARG	$a2, $sp, 8*FLTS+2*PTRS+	SARG	$a3, $sp, 8*FLTS+3*PTRS+	SARG	$a4, $sp, 8*FLTS+4*PTRS+	SARG	$a5, $sp, 8*FLTS+5*PTRS+	SARG	$a6, $sp, 8*FLTS+6*PTRS+	SARG	$a7, $sp, 8*FLTS+7*PTRS++	/* Enter C */+	LARG	$a0, $t2, 1*PTRS+	LARG	$a1, $t2, 2*PTRS+	move	$a2, $t2+	ADDI	$a3, $sp, FRAME_LEN+	move	$a4, $sp++	bl	ffi_closure_inner++	/* Return values.  */+#if FLTS+	FLARG	$fa0, $sp, 0*FLTS+	FLARG	$fa1, $sp, 1*FLTS+#endif++	LARG	$a0, $sp, 8*FLTS+0*PTRS+	LARG	$a1, $sp, 8*FLTS+1*PTRS++	/* Restore and return.  */+	LARG	$ra, $sp, FRAME_LEN-1*PTRS+	.cfi_restore	1+	LARG	$fp, $sp, FRAME_LEN-2*PTRS+	.cfi_restore	22+	ADDI	$sp, $sp, FRAME_LEN+	.cfi_def_cfa_offset 0+	jr	$ra+	.cfi_endproc+	.size	ffi_go_closure_asm, .-ffi_go_closure_asm++#if defined __ELF__ && defined __linux__+	.section .note.GNU-stack,"",%progbits+#endif
src/moxie/ffi.c view
@@ -275,7 +275,7 @@       /* Allocate space for the return value and call the function.  */       long long rvalue;       (closure->fun) (cif, &rvalue, avalue, closure->user_data);-      asm ("mov $r12, %0\n ld.l $r0, ($r12)\n ldo.l $r1, 4($r12)" : : "r" (&rvalue));+      __asm__ ("mov $r12, %0\n ld.l $r0, ($r12)\n ldo.l $r1, 4($r12)" : : "r" (&rvalue));     } } 
src/or1k/ffi.c view
@@ -269,7 +269,7 @@       long long rvalue;       (closure->fun) (cif, &rvalue, avalue, closure->user_data);       if (cif->rtype)-        asm ("l.ori r12, %0, 0x0\n l.lwz r11, 0(r12)\n l.lwz r12, 4(r12)" : : "r" (&rvalue));+        __asm__ ("l.ori r12, %0, 0x0\n l.lwz r11, 0(r12)\n l.lwz r12, 4(r12)" : : "r" (&rvalue));     } } 
src/or1k/ffitarget.h view
@@ -52,7 +52,7 @@ #define FFI_TRAMPOLINE_SIZE (24)  #define FFI_TARGET_SPECIFIC_VARIADIC 1-#define FFI_EXTRA_CIF_FIELDS unsigned nfixedargs;+#define FFI_EXTRA_CIF_FIELDS unsigned nfixedargs  #endif 
src/pa/ffi.c view
@@ -429,7 +429,7 @@   char *tmp;   int i, avn;   unsigned int slot = FIRST_ARG_SLOT;-  register UINT32 r28 asm("r28");+  register UINT32 r28 __asm__("r28");    cif = closure->cif; 
src/powerpc/aix_closure.S view
@@ -174,12 +174,12 @@  	/* look up the proper starting point in table  */ 	/* by using return type as offset */-	lhz	r3, 10(r3)	/* load type from return type */ 	ld	r4, LC..60(2)	/* get address of jump table */ 	sldi	r3, r3, 4	/* now multiply return type by 16 */ 	ld	r0, 240+16(r1)	/* load return address */ 	add	r3, r3, r4	/* add contents of table to table address */ 	mtctr	r3+	mtlr	r0 	bctr			/* jump to it */  /* Each fragment must be exactly 16 bytes long (4 instructions).@@ -187,96 +187,78 @@ 	.align 4  L..60:-/* case FFI_TYPE_VOID */-	mtlr r0+/* case PPC_LD_NONE */ 	addi r1, r1, 240 	blr 	nop+	nop -/* case FFI_TYPE_INT */-	lwa r3, 112+4(r1)-	mtlr r0+/* case PPC_LD_R3 */+	ld r3, 112+0(r1) 	addi r1, r1, 240 	blr+	nop -/* case FFI_TYPE_FLOAT */+/* case PPC_LD_R3R4 */+	ld r3, 112+0(r1)+	ld r4, 112+8(r1)+	addi r1, r1, 240+	blr++/* case PPC_LD_F32 */ 	lfs f1, 112+0(r1)-	mtlr r0 	addi r1, r1, 240 	blr+	nop -/* case FFI_TYPE_DOUBLE */+/* case PPC_LD_F64 */ 	lfd f1, 112+0(r1)-	mtlr r0 	addi r1, r1, 240 	blr+	nop -/* case FFI_TYPE_LONGDOUBLE */+/* case PPC_LD_F128 */ 	lfd f1, 112+0(r1)-	mtlr r0 	lfd f2, 112+8(r1)-	b L..finish+	addi r1, r1, 240+	blr -/* case FFI_TYPE_UINT8 */+/* case PPC_LD_U8 */ 	lbz r3, 112+7(r1)-	mtlr r0 	addi r1, r1, 240 	blr+	nop -/* case FFI_TYPE_SINT8 */+/* case PPC_LD_S8 */ 	lbz r3, 112+7(r1)-	mtlr r0 	extsb r3, r3-	b L..finish+	addi r1, r1, 240+	blr -/* case FFI_TYPE_UINT16 */+/* case PPC_LD_U16 */ 	lhz r3, 112+6(r1)-	mtlr r0-L..finish: 	addi r1, r1, 240 	blr+	nop -/* case FFI_TYPE_SINT16 */+/* case PPC_LD_S16 */ 	lha r3, 112+6(r1)-	mtlr r0 	addi r1, r1, 240 	blr+	nop -/* case FFI_TYPE_UINT32 */+/* case PPC_LD_U32 */ 	lwz r3, 112+4(r1)-	mtlr r0 	addi r1, r1, 240 	blr+	nop -/* case FFI_TYPE_SINT32 */+/* case PPC_LD_S32 */ 	lwa r3, 112+4(r1)-	mtlr r0 	addi r1, r1, 240 	blr--/* case FFI_TYPE_UINT64 */-	ld r3, 112+0(r1)-	mtlr r0-	addi r1, r1, 240-	blr--/* case FFI_TYPE_SINT64 */-	ld r3, 112+0(r1)-	mtlr r0-	addi r1, r1, 240-	blr--/* case FFI_TYPE_STRUCT */-	mtlr r0-	addi r1, r1, 240-	blr 	nop -/* case FFI_TYPE_POINTER */-	ld r3, 112+0(r1)-	mtlr r0-	addi r1, r1, 240-	blr LFE..0:  #else /* ! __64BIT__ */@@ -355,12 +337,12 @@  	/* look up the proper starting point in table  */ 	/* by using return type as offset */-	lhz	r3, 6(r3)	/* load type from return type */ 	lwz	r4, LC..60(2)	/* get address of jump table */ 	slwi	r3, r3, 4	/* now multiply return type by 16 */ 	lwz	r0, 176+8(r1)	/* load return address */ 	add	r3, r3, r4	/* add contents of table to table address */ 	mtctr	r3+	mtlr	r0 	bctr			/* jump to it */  /* Each fragment must be exactly 16 bytes long (4 instructions).@@ -368,96 +350,66 @@ 	.align 4  L..60:-/* case FFI_TYPE_VOID */-	mtlr r0+/* case PPC_LD_NONE */ 	addi r1, r1, 176 	blr 	nop+	nop -/* case FFI_TYPE_INT */+/* case PPC_LD_R3 */ 	lwz r3, 56+0(r1)-	mtlr r0 	addi r1, r1, 176 	blr+	nop -/* case FFI_TYPE_FLOAT */+/* case PPC_LD_R3R4 */+	lwz r3, 56+0(r1)+	lwz r4, 56+4(r1)+	addi r1, r1, 176+	blr++/* case PPC_LD_F32 */ 	lfs f1, 56+0(r1)-	mtlr r0 	addi r1, r1, 176 	blr+	nop -/* case FFI_TYPE_DOUBLE */+/* case PPC_LD_F64 */ 	lfd f1, 56+0(r1)-	mtlr r0 	addi r1, r1, 176 	blr+	nop -/* case FFI_TYPE_LONGDOUBLE */+/* case PPC_LD_F128 */ 	lfd f1, 56+0(r1)-	mtlr r0 	lfd f2, 56+8(r1)-	b L..finish--/* case FFI_TYPE_UINT8 */-	lbz r3, 56+3(r1)-	mtlr r0 	addi r1, r1, 176 	blr -/* case FFI_TYPE_SINT8 */+/* case PPC_LD_U8 */ 	lbz r3, 56+3(r1)-	mtlr r0-	extsb r3, r3-	b L..finish--/* case FFI_TYPE_UINT16 */-	lhz r3, 56+2(r1)-	mtlr r0 	addi r1, r1, 176 	blr--/* case FFI_TYPE_SINT16 */-	lha r3, 56+2(r1)-	mtlr r0-	addi r1, r1, 176-	blr+	nop -/* case FFI_TYPE_UINT32 */-	lwz r3, 56+0(r1)-	mtlr r0+/* case PPC_LD_S8 */+	lbz r3, 56+3(r1)+	extsb r3, r3 	addi r1, r1, 176 	blr -/* case FFI_TYPE_SINT32 */-	lwz r3, 56+0(r1)-	mtlr r0+/* case PPC_LD_U16 */+	lhz r3, 56+2(r1) 	addi r1, r1, 176 	blr--/* case FFI_TYPE_UINT64 */-	lwz r3, 56+0(r1)-	mtlr r0-	lwz r4, 56+4(r1)-	b L..finish--/* case FFI_TYPE_SINT64 */-	lwz r3, 56+0(r1)-	mtlr r0-	lwz r4, 56+4(r1)-	b L..finish+	nop -/* case FFI_TYPE_STRUCT */-	mtlr r0+/* case PPC_LD_S16 */+	lha r3, 56+2(r1) 	addi r1, r1, 176 	blr 	nop -/* case FFI_TYPE_POINTER */-	lwz r3, 56+0(r1)-	mtlr r0-L..finish:-	addi r1, r1, 176-	blr LFE..0: #endif 	.ef __LINE__
src/powerpc/ffi.c view
@@ -114,6 +114,26 @@   if (rvalue && ecif.rvalue == smst_buffer)     {       unsigned int rsize = cif->rtype->size;+#ifdef FFI_TARGET_HAS_COMPLEX_TYPE+      /* Integer-typed _Complex: the .Lsmall_struct return path stored+	 r3 at buffer offset 0 and r4 at offset 8.  Extract one inner-+	 sized half from each slot — right-justified on BE, low-address+	 on LE — and lay them out as the natural packed complex value+	 the caller expects (real@0, imag@hsize).  */+      if (cif->rtype->type == FFI_TYPE_COMPLEX+	  && (cif->flags & (FLAG_RETURNS_FP | FLAG_RETURNS_VEC)) == 0)+	{+	  size_t hsize = cif->rtype->elements[0]->size;+#ifndef __LITTLE_ENDIAN__+	  size_t off = 8 - hsize;+#else+	  size_t off = 0;+#endif+	  memcpy ((char *) rvalue,         (char *) smst_buffer + off, hsize);+	  memcpy ((char *) rvalue + hsize, (char *) smst_buffer + 8 + off, hsize);+	}+      else+#endif #ifndef __LITTLE_ENDIAN__       /* The SYSV ABI returns a structure of up to 4 bytes in size 	 left-padded in r3.  */
src/powerpc/ffi_darwin.c view
@@ -32,6 +32,13 @@  #include <stdlib.h> ++struct ffi_aix_trampoline_struct {+    void * code_pointer;	/* Pointer to ffi_closure_ASM */+    void * toc;			/* TOC */+    void * static_chain;	/* Pointer to closure */+};+ extern void ffi_closure_ASM (void);  #if defined (FFI_GO_CLOSURES)@@ -1442,7 +1449,40 @@   (fun) (cif, rvalue, avalue, user_data);    /* Tell ffi_closure_ASM to perform return type promotions.  */-  return cif->rtype;+  switch (cif->rtype->type)+    {+    case FFI_TYPE_VOID:+    case FFI_TYPE_STRUCT:+      return PPC_LD_NONE;+    case FFI_TYPE_FLOAT:+      return PPC_LD_F32;+    case FFI_TYPE_DOUBLE:+      return PPC_LD_F64;+#if FFI_TYPE_DOUBLE != FFI_TYPE_LONGDOUBLE+    case FFI_TYPE_LONGDOUBLE:+      return PPC_LD_F128;+#endif+    case FFI_TYPE_UINT8:+      return PPC_LD_U8;+    case FFI_TYPE_SINT8:+      return PPC_LD_S8;+    case FFI_TYPE_UINT16:+      return PPC_LD_U16;+    case FFI_TYPE_SINT16:+      return PPC_LD_S16;+    case FFI_TYPE_UINT32:+      return PPC_LD_U32;+    case FFI_TYPE_INT:+    case FFI_TYPE_SINT32:+      return PPC_LD_S32;+    case FFI_TYPE_POINTER:+      return PPC_LD_PTR;+    case FFI_TYPE_UINT64:+    case FFI_TYPE_SINT64:+      return PPC_LD_I64;+    default:+      abort();+    } }  ffi_type *
src/powerpc/ffi_linux64.c view
@@ -30,6 +30,7 @@  #include "ffi.h" #include <tramp.h>+#include <stdlib.h>  #ifdef POWERPC64 #include "ffi_common.h"@@ -95,6 +96,26 @@       *elnum = 1;       return (int) t->type; +#ifdef FFI_TARGET_HAS_COMPLEX_TYPE+    case FFI_TYPE_COMPLEX:+      /* Count complex of an FP base as two elements of that base, so a+	 struct containing complex members is recognised as an HFA.  This+	 only affects FFI_TYPE_COMPLEX *inside* structs; the top-level+	 complex arg path has its own case in the cif/args/closure loops+	 and never reaches the FFI_TYPE_STRUCT branches.  */+      {+	unsigned int inner_elnum = 0;+	unsigned int inner+	  = discover_homogeneous_aggregate (abi, t->elements[0], &inner_elnum);+	if (inner == FFI_TYPE_FLOAT || inner == FFI_TYPE_DOUBLE)+	  {+	    *elnum = 2 * inner_elnum;+	    return inner;+	  }+	return 0;+      }+#endif+     case FFI_TYPE_STRUCT:;       { 	unsigned int base_elt = 0, total_elnum = 0;@@ -195,9 +216,6 @@       flags |= FLAG_RETURNS_FP;       break; -    case FFI_TYPE_UINT128:-      flags |= FLAG_RETURNS_128BITS;-      /* Fall through.  */     case FFI_TYPE_UINT64:     case FFI_TYPE_SINT64:     case FFI_TYPE_POINTER:@@ -226,6 +244,46 @@       flags |= FLAG_RETURNS_NOTHING;       break; +#ifdef FFI_TARGET_HAS_COMPLEX_TYPE+    case FFI_TYPE_COMPLEX:+      rtype = cif->rtype->elements[0]->type;+      switch (rtype)+        {+        case FFI_TYPE_FLOAT:+        case FFI_TYPE_DOUBLE:+          /* float/double _Complex are returned in (f1, f2), matching+             the assembly path for a 2-element FP HFA.  */+          flags |= FLAG_RETURNS_SMST;+          goto homogeneous;+#if FFI_TYPE_LONGDOUBLE != FFI_TYPE_DOUBLE+        case FFI_TYPE_LONGDOUBLE:+          /* Only the 64-bit long double case is wired up; IBM-128 and+             IEEE-binary128 _Complex are left as a follow-up.  */+          if ((cif->abi & (FFI_LINUX_LONG_DOUBLE_128+                           | FFI_LINUX_LONG_DOUBLE_IEEE128)) != 0)+            return FFI_BAD_TYPEDEF;+          flags |= FLAG_RETURNS_SMST;+          rtype = FFI_TYPE_DOUBLE;+          goto homogeneous;+#endif+        case FFI_TYPE_INT:+        case FFI_TYPE_SINT8:  case FFI_TYPE_UINT8:+        case FFI_TYPE_SINT16: case FFI_TYPE_UINT16:+        case FFI_TYPE_SINT32: case FFI_TYPE_UINT32:+        case FFI_TYPE_SINT64: case FFI_TYPE_UINT64:+        case FFI_TYPE_POINTER:+          /* Integer-typed _Complex: real returned in r3, imag in r4.+             Take the .Lsmall_struct return path (FLAG_RETURNS_SMST+             without FP/VEC) and let the bounce-buffer logic in+             ffi_call_int repack the two halves.  */+          flags |= FLAG_RETURNS_SMST;+          break;+        default:+          return FFI_BAD_TYPEDEF;+        }+      break;+#endif+     default:       /* Returns 32-bit integer, or similar.  Nothing to do here.  */       break;@@ -315,6 +373,51 @@ 	  if (intarg_count > NUM_GPR_ARG_REGISTERS64) 	    flags |= FLAG_ARG_NEEDS_PSAVE; 	  break;++#ifdef FFI_TARGET_HAS_COMPLEX_TYPE+	case FFI_TYPE_COMPLEX:+	  /* Each half of a _Complex argument is passed independently: an FP+	     half in its own FPR (and its own GPR shadow slot); an integer+	     half in its own GPR slot.  This matches GCC's split_complex_arg+	     under ELFv2, and is what differentiates _Complex from a+	     same-sized struct{T;T;} which uses fewer GPR shadow slots.  */+	  elt = (*ptr)->elements[0]->type;+	  switch (elt)+	    {+	    case FFI_TYPE_FLOAT:+	    case FFI_TYPE_DOUBLE:+	      fparg_count += 2;+	      intarg_count += 2;+	      if (fparg_count > NUM_FPR_ARG_REGISTERS64)+		flags |= FLAG_ARG_NEEDS_PSAVE;+	      break;+#if FFI_TYPE_LONGDOUBLE != FFI_TYPE_DOUBLE+	    case FFI_TYPE_LONGDOUBLE:+	      if ((cif->abi & (FFI_LINUX_LONG_DOUBLE_128+			       | FFI_LINUX_LONG_DOUBLE_IEEE128)) != 0)+		return FFI_BAD_TYPEDEF;+	      fparg_count += 2;+	      intarg_count += 2;+	      if (fparg_count > NUM_FPR_ARG_REGISTERS64)+		flags |= FLAG_ARG_NEEDS_PSAVE;+	      break;+#endif+	    case FFI_TYPE_INT:+	    case FFI_TYPE_SINT8:  case FFI_TYPE_UINT8:+	    case FFI_TYPE_SINT16: case FFI_TYPE_UINT16:+	    case FFI_TYPE_SINT32: case FFI_TYPE_UINT32:+	    case FFI_TYPE_SINT64: case FFI_TYPE_UINT64:+	    case FFI_TYPE_POINTER:+	      intarg_count += 2;+	      break;+	    default:+	      return FFI_BAD_TYPEDEF;+	    }+	  if (intarg_count > NUM_GPR_ARG_REGISTERS64)+	    flags |= FLAG_ARG_NEEDS_PSAVE;+	  break;+#endif+ 	default: 	  FFI_ASSERT (0); 	}@@ -648,6 +751,98 @@ 	  FFI_ASSERT (flags & FLAG_FP_ARGUMENTS); 	  break; +#ifdef FFI_TARGET_HAS_COMPLEX_TYPE+	case FFI_TYPE_COMPLEX:+	  elt = (*ptr)->elements[0]->type;+#if FFI_TYPE_LONGDOUBLE != FFI_TYPE_DOUBLE+	  /* 64-bit long double is equivalent to double; the IBM-128 and+	     IEEE-binary128 variants were rejected in prep_cif.  */+	  if (elt == FFI_TYPE_LONGDOUBLE)+	    elt = FFI_TYPE_DOUBLE;+#endif+	  if (elt == FFI_TYPE_FLOAT)+	    {+	      float *cval = (float *) *p_argv.v;+	      unsigned int j;+	      for (j = 0; j < 2; j++)+		{+		  double_tmp = cval[j];+		  if (fparg_count < NUM_FPR_ARG_REGISTERS64 && i < nfixedargs)+		    *fpr_base.d++ = double_tmp;+		  else+		    {+# ifndef __LITTLE_ENDIAN__+		      next_arg.f[1] = (float) double_tmp;+# else+		      next_arg.f[0] = (float) double_tmp;+# endif+		    }+		  if (++next_arg.ul == gpr_end.ul)+		    next_arg.ul = rest.ul;+		  fparg_count++;+		}+	      FFI_ASSERT (flags & FLAG_FP_ARGUMENTS);+	    }+	  else if (elt == FFI_TYPE_DOUBLE)+	    {+	      double *cval = (double *) *p_argv.v;+	      unsigned int j;+	      for (j = 0; j < 2; j++)+		{+		  double_tmp = cval[j];+		  if (fparg_count < NUM_FPR_ARG_REGISTERS64 && i < nfixedargs)+		    *fpr_base.d++ = double_tmp;+		  else+		    *next_arg.d = double_tmp;+		  if (++next_arg.ul == gpr_end.ul)+		    next_arg.ul = rest.ul;+		  fparg_count++;+		}+	      FFI_ASSERT (flags & FLAG_FP_ARGUMENTS);+	    }+	  else+	    {+	      /* Integer-typed _Complex: each half consumes one GPR slot,+		 sign-/zero-extended to a doubleword.  */+	      char *cval = (char *) *p_argv.v;+	      size_t hsize = (*ptr)->elements[0]->size;+	      unsigned int j;+	      for (j = 0; j < 2; j++)+		{+		  char *half = cval + j * hsize;+		  unsigned long gprvalue;+		  switch (elt)+		    {+		    case FFI_TYPE_UINT8:+		      gprvalue = *(unsigned char *) half; break;+		    case FFI_TYPE_SINT8:+		      gprvalue = (unsigned long) (long) *(signed char *) half;+		      break;+		    case FFI_TYPE_UINT16:+		      gprvalue = *(unsigned short *) half; break;+		    case FFI_TYPE_SINT16:+		      gprvalue = (unsigned long) (long) *(signed short *) half;+		      break;+		    case FFI_TYPE_UINT32:+		      gprvalue = *(unsigned int *) half; break;+		    case FFI_TYPE_INT:+		    case FFI_TYPE_SINT32:+		      gprvalue = (unsigned long) (long) *(signed int *) half;+		      break;+		    case FFI_TYPE_SINT64:+		    case FFI_TYPE_UINT64:+		    case FFI_TYPE_POINTER:+		    default:+		      gprvalue = *(unsigned long *) half; break;+		    }+		  *next_arg.ul++ = gprvalue;+		  if (next_arg.ul == gpr_end.ul)+		    next_arg.ul = rest.ul;+		}+	    }+	  break;+#endif+ 	case FFI_TYPE_STRUCT: 	  if ((ecif->cif->abi & FFI_LINUX_STRUCT_ALIGN) != 0) 	    {@@ -1132,6 +1327,79 @@ 	  pst++; 	  break; +#ifdef FFI_TARGET_HAS_COMPLEX_TYPE+	case FFI_TYPE_COMPLEX:+	  /* Reassemble each _Complex argument from successive registers (or+	     parameter-save slots when registers are exhausted) into a+	     contiguous in-memory value for the closure.  */+	  {+	    unsigned int j;+	    elt = arg_types[i]->elements[0]->type;+#if FFI_TYPE_LONGDOUBLE != FFI_TYPE_DOUBLE+	    if (elt == FFI_TYPE_LONGDOUBLE)+	      elt = FFI_TYPE_DOUBLE;+#endif+	    if (elt == FFI_TYPE_FLOAT)+	      {+		float *cval = alloca (2 * sizeof (float));+		for (j = 0; j < 2; j++)+		  {+		    if (pfr < end_pfr && i < nfixedargs)+		      {+			cval[j] = (float) pfr->d;+			pfr++;+		      }+		    else+		      {+#ifndef __LITTLE_ENDIAN__+			cval[j] = ((float *) pst)[1];+#else+			cval[j] = ((float *) pst)[0];+#endif+		      }+		    pst++;+		  }+		avalue[i] = cval;+	      }+	    else if (elt == FFI_TYPE_DOUBLE)+	      {+		double *cval = alloca (2 * sizeof (double));+		for (j = 0; j < 2; j++)+		  {+		    if (pfr < end_pfr && i < nfixedargs)+		      {+			cval[j] = pfr->d;+			pfr++;+		      }+		    else+		      cval[j] = *(double *) pst;+		    pst++;+		  }+		avalue[i] = cval;+	      }+	    else+	      {+		/* Integer-typed _Complex: each half lives in its own GPR+		   slot, right-justified on BE, low-address on LE.  */+		size_t hsize = arg_types[i]->elements[0]->size;+		char *cval = alloca (2 * hsize);+		for (j = 0; j < 2; j++)+		  {+		    char *src;+#ifndef __LITTLE_ENDIAN__+		    src = (char *) pst + (8 - hsize);+#else+		    src = (char *) pst;+#endif+		    memcpy (cval + j * hsize, src, hsize);+		    pst++;+		  }+		avalue[i] = cval;+	      }+	  }+	  break;+#endif+ 	default: 	  FFI_ASSERT (0); 	}@@ -1142,19 +1410,141 @@   (*fun) (cif, rvalue, avalue, user_data);    /* Tell ffi_closure_LINUX64 how to perform return type promotions.  */-  if ((cif->flags & FLAG_RETURNS_SMST) != 0)+  switch (cif->rtype->type)     {-      if ((cif->flags & (FLAG_RETURNS_FP | FLAG_RETURNS_VEC)) == 0)-	return FFI_V2_TYPE_SMALL_STRUCT + cif->rtype->size - 1;-      else if ((cif->flags & FLAG_RETURNS_VEC) != 0)-        return FFI_V2_TYPE_VECTOR_HOMOG;-      else if ((cif->flags & FLAG_RETURNS_64BITS) != 0)-	return FFI_V2_TYPE_DOUBLE_HOMOG;-      else-	return FFI_V2_TYPE_FLOAT_HOMOG;+    case FFI_TYPE_VOID:+      return PPC_LD_NONE;+    case FFI_TYPE_FLOAT:+      return PPC_LD_F32;+    case FFI_TYPE_DOUBLE:+      return PPC_LD_F64;+#if FFI_TYPE_DOUBLE != FFI_TYPE_LONGDOUBLE+    case FFI_TYPE_LONGDOUBLE:+      if ((cif->flags & FLAG_RETURNS_VEC) != 0)+	return PPC64_LD_VECTOR;+      return PPC_LD_F128;+#endif+    case FFI_TYPE_UINT8:+      return PPC_LD_U8;+    case FFI_TYPE_SINT8:+      return PPC_LD_S8;+    case FFI_TYPE_UINT16:+      return PPC_LD_U16;+    case FFI_TYPE_SINT16:+      return PPC_LD_S16;+    case FFI_TYPE_UINT32:+      return PPC_LD_U32;+    case FFI_TYPE_INT:+    case FFI_TYPE_SINT32:+      return PPC_LD_S32;+    case FFI_TYPE_POINTER:+      return PPC_LD_PTR;+    case FFI_TYPE_UINT64:+    case FFI_TYPE_SINT64:+      return PPC_LD_I64;+#ifdef FFI_TARGET_HAS_COMPLEX_TYPE+    case FFI_TYPE_COMPLEX:+      {+	int inner = cif->rtype->elements[0]->type;+#if FFI_TYPE_LONGDOUBLE != FFI_TYPE_DOUBLE+	if (inner == FFI_TYPE_LONGDOUBLE)+	  inner = FFI_TYPE_DOUBLE;+#endif+	if (inner == FFI_TYPE_FLOAT)+	  return PPC64_LD_FLOAT_HOMOG;+	if (inner == FFI_TYPE_DOUBLE)+	  return PPC64_LD_DOUBLE_HOMOG;+	/* Integer-typed _Complex: the user wrote the natural packed+	   complex layout into rvalue (real@0, imag@hsize).  Repack into+	   two sign-/zero-extended doublewords so the closure assembly+	   can do `ld r3, 0(rvalue); ld r4, 8(rvalue)` and the GCC caller+	   recovers real in r3 and imag in r4.  The RETVAL stack area is+	   large enough (64 or 128 bytes) to hold the 16-byte repack.  */+	{+	  char *rv = rvalue;+	  unsigned long re, im;+	  switch (inner)+	    {+	    case FFI_TYPE_UINT8:+	      re = ((unsigned char *) rv)[0];+	      im = ((unsigned char *) rv)[1];+	      break;+	    case FFI_TYPE_SINT8:+	      re = (unsigned long) (long) ((signed char *) rv)[0];+	      im = (unsigned long) (long) ((signed char *) rv)[1];+	      break;+	    case FFI_TYPE_UINT16:+	      re = ((unsigned short *) rv)[0];+	      im = ((unsigned short *) rv)[1];+	      break;+	    case FFI_TYPE_SINT16:+	      re = (unsigned long) (long) ((signed short *) rv)[0];+	      im = (unsigned long) (long) ((signed short *) rv)[1];+	      break;+	    case FFI_TYPE_UINT32:+	      re = ((unsigned int *) rv)[0];+	      im = ((unsigned int *) rv)[1];+	      break;+	    case FFI_TYPE_INT:+	    case FFI_TYPE_SINT32:+	      re = (unsigned long) (long) ((signed int *) rv)[0];+	      im = (unsigned long) (long) ((signed int *) rv)[1];+	      break;+	    case FFI_TYPE_SINT64:+	    case FFI_TYPE_UINT64:+	    case FFI_TYPE_POINTER:+	    default:+	      re = ((unsigned long *) rv)[0];+	      im = ((unsigned long *) rv)[1];+	      break;+	    }+	  ((unsigned long *) rv)[0] = re;+	  ((unsigned long *) rv)[1] = im;+	  return PPC_LD_R3R4;+	}+      }+#endif+    case FFI_TYPE_STRUCT:+      if ((cif->flags & FLAG_RETURNS_SMST) != 0)+	{+	  if ((cif->flags & (FLAG_RETURNS_FP | FLAG_RETURNS_VEC)) == 0)+	    {+	      /* A struct smaller than a dword is returned in the low bits+		 of r3 right justified.  Larger structs are passed left+		 justified in r3 and r4.  The return value area on the+		 stack will have the structs as they are usually stored+		 in memory. */+	      switch (cif->rtype->size)+		{+		case 0:+		  return PPC_LD_NONE;+		case 1:+		  return PPC_LD_U8;+		case 2:+		  return PPC_LD_U16;+		case 3:+		  return PPC64_LD_STRUCT_3;+		case 4:+		  return PPC_LD_U32;+		case 5:+		  return PPC64_LD_STRUCT_5;+		case 6:+		  return PPC64_LD_STRUCT_6;+		case 7:+		  return PPC64_LD_STRUCT_7;+		case 8 ... 16:+		  return PPC_LD_R3R4;+		}+	      break;+	    }+	  if ((cif->flags & FLAG_RETURNS_VEC) != 0)+	    return PPC64_LD_VECTOR_HOMOG;+	  if ((cif->flags & FLAG_RETURNS_64BITS) != 0)+	    return PPC64_LD_DOUBLE_HOMOG;+	  return PPC64_LD_FLOAT_HOMOG;+        }+      return PPC_LD_NONE;     }-  if ((cif->flags & FLAG_RETURNS_VEC) != 0)-    return FFI_V2_TYPE_VECTOR;-  return cif->rtype->type;+  abort(); } #endif
src/powerpc/ffi_powerpc.h view
@@ -28,6 +28,73 @@    OTHER DEALINGS IN THE SOFTWARE.    ----------------------------------------------------------------------- */ +/*+ * Closure jump table indexes+ */++/* Common to ppc32 and ppc64 */+#define PPC_LD_NONE		0+#define PPC_LD_R3		1+#define PPC_LD_R3R4		2+#define PPC_LD_F32		3+#define PPC_LD_F64		4+#define PPC_LD_F128		5+#define PPC_LD_U8		6+#define PPC_LD_S8		7+#define PPC_LD_U16		8+#define PPC_LD_S16		9++#ifndef POWERPC64++#define PPC_LD_U32		PPC_LD_R3+#define PPC_LD_S32		PPC_LD_R3+#define PPC_LD_PTR		PPC_LD_R3+#define PPC_LD_I64		PPC_LD_R3R4++/* Needed for soft-float long-double. */+#define PPC32_LD_R3R6		10++/* Needed for FFI_SYSV small structure returns.  */+#ifdef __LITTLE_ENDIAN__+#define PPC32_SYSV_LD_STRUCT_3	PPC32_LD_R3+#define PPC32_SYSV_LD_STRUCT_5	PPC32_LD_R3R4+#define PPC32_SYSV_LD_STRUCT_6	PPC32_LD_R3R4+#define PPC32_SYSV_LD_STRUCT_7	PPC32_LD_R3R4+#else+#define PPC32_SYSV_LD_STRUCT_3	11+#define PPC32_SYSV_LD_STRUCT_5	12+#define PPC32_SYSV_LD_STRUCT_6	13+#define PPC32_SYSV_LD_STRUCT_7	14+#endif++#else /* POWERPC64 */++#define PPC_LD_U32		10+#define PPC_LD_S32		11+#define PPC_LD_PTR		PPC_LD_R3+#define PPC_LD_I64		PPC_LD_R3++/* Used by ELFv2 for homogenous structure returns.  */+#define PPC64_LD_VECTOR		12+#define PPC64_LD_VECTOR_HOMOG	13+#define PPC64_LD_FLOAT_HOMOG	14+#define PPC64_LD_DOUBLE_HOMOG	15+#ifdef __LITTLE_ENDIAN__+#define PPC64_LD_STRUCT_3	PPC_LD_U32+#define PPC64_LD_STRUCT_5	PPC_LD_I64+#define PPC64_LD_STRUCT_6	PPC_LD_I64+#define PPC64_LD_STRUCT_7	PPC_LD_I64+#else+#define PPC64_LD_STRUCT_3	16+#define PPC64_LD_STRUCT_5	17+#define PPC64_LD_STRUCT_6	18+#define PPC64_LD_STRUCT_7	19+#endif++#endif /* POWERPC64 */++#ifndef LIBFFI_ASM+ enum {   /* The assembly depends on these exact flags.  */   /* These go in cr7 */@@ -103,3 +170,5 @@ 					   void *, void *, 					   unsigned long *, ffi_dblfl *, 					   float128 *);++#endif /* !LIBFFI_ASM */
src/powerpc/ffi_sysv.c view
@@ -30,6 +30,7 @@  #include "ffi.h" #include <tramp.h>+#include <stdlib.h>  #ifndef POWERPC64 #include "ffi_common.h"@@ -921,13 +922,63 @@    /* Tell ffi_closure_SYSV how to perform return type promotions.      Because the FFI_SYSV ABI returns the structures <= 8 bytes in-     r3/r4 we have to tell ffi_closure_SYSV how to treat them.  We-     combine the base type FFI_SYSV_TYPE_SMALL_STRUCT with the size of-     the struct less one.  We never have a struct with size zero.-     See the comment in ffitarget.h about ordering.  */-  if (rtypenum == FFI_TYPE_STRUCT-      && (cif->abi & FFI_SYSV_STRUCT_RET) != 0 && size <= 8)-    return FFI_SYSV_TYPE_SMALL_STRUCT - 1 + size;-  return rtypenum;+     r3/r4 we have to tell ffi_closure_SYSV how to treat them. */+  switch (rtypenum)+    {+    case FFI_TYPE_VOID:+      return PPC_LD_NONE;+    case FFI_TYPE_FLOAT:+      return PPC_LD_F32;+    case FFI_TYPE_DOUBLE:+      return PPC_LD_F64;+#if FFI_TYPE_DOUBLE != FFI_TYPE_LONGDOUBLE+    case FFI_TYPE_LONGDOUBLE:+      return PPC_LD_F128;+#endif+    case FFI_TYPE_UINT8:+      return PPC_LD_U8;+    case FFI_TYPE_SINT8:+      return PPC_LD_S8;+    case FFI_TYPE_UINT16:+      return PPC_LD_U16;+    case FFI_TYPE_SINT16:+      return PPC_LD_S16;+    case FFI_TYPE_UINT32:+      return PPC_LD_U32;+    case FFI_TYPE_INT:+    case FFI_TYPE_SINT32:+      return PPC_LD_S32;+    case FFI_TYPE_POINTER:+      return PPC_LD_PTR;+    case FFI_TYPE_UINT64:+    case FFI_TYPE_SINT64:+      return PPC_LD_I64;+    case FFI_TYPE_UINT128:+      return PPC32_LD_R3R6;+    case FFI_TYPE_STRUCT:+      if (cif->abi & FFI_SYSV_STRUCT_RET)+	switch (size)+	  {+	  case 1:+	    return PPC_LD_U8;+	  case 2:+	    return PPC_LD_U16;+	  case 3:+	    return PPC32_SYSV_LD_STRUCT_3;+	  case 4:+	    return PPC_LD_U32;+	  case 5:+	    return PPC32_SYSV_LD_STRUCT_5;+	  case 6:+	    return PPC32_SYSV_LD_STRUCT_6;+	  case 7:+	    return PPC32_SYSV_LD_STRUCT_7;+	  case 8:+	    return PPC_LD_I64;+	  }+      return PPC_LD_NONE;+    default:+      abort();+    } } #endif
src/powerpc/ffitarget.h view
@@ -150,33 +150,16 @@ # define FFI_GO_CLOSURES 1 #endif -/* ppc_closure.S and linux64_closure.S expect this.  */-#define FFI_PPC_TYPE_LAST FFI_TYPE_POINTER--/* We define additional types below.  If generic types are added that-   must be supported by powerpc libffi then it is likely that-   FFI_PPC_TYPE_LAST needs increasing *and* the jump tables in-   ppc_closure.S and linux64_closure.S be extended.  */--#if !(FFI_TYPE_LAST == FFI_PPC_TYPE_LAST		\-      || (FFI_TYPE_LAST == FFI_TYPE_COMPLEX		\-	  && !defined FFI_TARGET_HAS_COMPLEX_TYPE))-# error "You likely have a broken powerpc libffi"+/* Complex types are supported on ELFv2 (the only PowerPC64 variant where+   the assembly and C-side passing/return logic has been wired up).  Under+   ELFv2, float/double _Complex are passed and returned as a 2-element+   homogeneous floating-point aggregate, but each scalar half consumes a+   GPR shadow slot of its own — i.e. the same way the underlying C ABI+   handles them, which is what GCC's split_complex_arg emits.  */+#if defined(POWERPC64) && _CALL_ELF == 2+# define FFI_TARGET_HAS_COMPLEX_TYPE #endif -/* Needed for soft-float long-double-128 support.  */-#define FFI_TYPE_UINT128 (FFI_PPC_TYPE_LAST + 1)--/* Needed for FFI_SYSV small structure returns.  */-#define FFI_SYSV_TYPE_SMALL_STRUCT (FFI_PPC_TYPE_LAST + 2)--/* Used by ELFv2 for homogenous structure returns.  */-#define FFI_V2_TYPE_VECTOR		(FFI_PPC_TYPE_LAST + 1)-#define FFI_V2_TYPE_VECTOR_HOMOG	(FFI_PPC_TYPE_LAST + 2)-#define FFI_V2_TYPE_FLOAT_HOMOG		(FFI_PPC_TYPE_LAST + 3)-#define FFI_V2_TYPE_DOUBLE_HOMOG	(FFI_PPC_TYPE_LAST + 4)-#define FFI_V2_TYPE_SMALL_STRUCT	(FFI_PPC_TYPE_LAST + 5)- #if _CALL_ELF == 2 # define FFI_TRAMPOLINE_SIZE 32 #else@@ -189,16 +172,6 @@ # else /* POWERPC || POWERPC_AIX */ #  define FFI_TRAMPOLINE_SIZE 40 # endif-#endif--#ifndef LIBFFI_ASM-#if defined(POWERPC_DARWIN) || defined(POWERPC_AIX)-struct ffi_aix_trampoline_struct {-    void * code_pointer;	/* Pointer to ffi_closure_ASM */-    void * toc;			/* TOC */-    void * static_chain;	/* Pointer to closure */-};-#endif #endif  #endif
src/powerpc/linux64_closure.S view
@@ -216,187 +216,151 @@ 	# look up the proper starting point in table 	# by using return type as offset 	ld %r0, STACKFRAME+16(%r1)-	cmpldi %r3, FFI_V2_TYPE_SMALL_STRUCT-	bge .Lsmall 	mflr %r4		# move address of .Lret to r4 	sldi %r3, %r3, 4	# now multiply return type by 16 	addi %r4, %r4, .Lret_type0 - .Lret 	add %r3, %r3, %r4	# add contents of table to table address 	mtctr %r3+	mtlr %r0		# restore function return address+	.cfi_restore 65 	bctr			# jump to it  # Each of the ret_typeX code fragments has to be exactly 16 bytes long # (4 instructions). For cache effectiveness we align to a 16 byte boundary-# first.-	.align 4+# first.  Ensure correct spacing and alignment with .org. +	.align 4 .Lret_type0:-# case FFI_TYPE_VOID-	mtlr %r0-	addi %r1, %r1, STACKFRAME-	.cfi_def_cfa_offset 0-	blr-	.cfi_def_cfa_offset STACKFRAME-	nop-# case FFI_TYPE_INT-# ifdef __LITTLE_ENDIAN__-	lwa %r3, RETVAL+0(%r1)-# else-	lwa %r3, RETVAL+4(%r1)-# endif-	mtlr %r0++.macro E index+	.align 4+.endm++.macro epilogue 	addi %r1, %r1, STACKFRAME 	.cfi_def_cfa_offset 0 	blr 	.cfi_def_cfa_offset STACKFRAME-# case FFI_TYPE_FLOAT+.endm++E PPC_LD_NONE+	epilogue++E PPC_LD_R3+	ld %r3, RETVAL+0(%r1)+	epilogue++E PPC_LD_R3R4+	ld %r3, RETVAL+0(%r1)+	ld %r4, RETVAL+8(%r1)+	epilogue++E PPC_LD_F32 	lfs %f1, RETVAL+0(%r1)-	mtlr %r0-	addi %r1, %r1, STACKFRAME-	.cfi_def_cfa_offset 0-	blr-	.cfi_def_cfa_offset STACKFRAME-# case FFI_TYPE_DOUBLE+	epilogue++E PPC_LD_F64 	lfd %f1, RETVAL+0(%r1)-	mtlr %r0-	addi %r1, %r1, STACKFRAME-	.cfi_def_cfa_offset 0-	blr-	.cfi_def_cfa_offset STACKFRAME-# case FFI_TYPE_LONGDOUBLE+	epilogue++E PPC_LD_F128 	lfd %f1, RETVAL+0(%r1)-	mtlr %r0 	lfd %f2, RETVAL+8(%r1)-	b .Lfinish-# case FFI_TYPE_UINT8+	epilogue++E PPC_LD_U8 # ifdef __LITTLE_ENDIAN__ 	lbz %r3, RETVAL+0(%r1) # else 	lbz %r3, RETVAL+7(%r1) # endif-	mtlr %r0-	addi %r1, %r1, STACKFRAME-	.cfi_def_cfa_offset 0-	blr-	.cfi_def_cfa_offset STACKFRAME-# case FFI_TYPE_SINT8+	epilogue++E PPC_LD_S8 # ifdef __LITTLE_ENDIAN__ 	lbz %r3, RETVAL+0(%r1) # else 	lbz %r3, RETVAL+7(%r1) # endif 	extsb %r3,%r3-	mtlr %r0-	b .Lfinish-# case FFI_TYPE_UINT16+	epilogue++E PPC_LD_U16 # ifdef __LITTLE_ENDIAN__ 	lhz %r3, RETVAL+0(%r1) # else 	lhz %r3, RETVAL+6(%r1) # endif-	mtlr %r0-.Lfinish:-	addi %r1, %r1, STACKFRAME-	.cfi_def_cfa_offset 0-	blr-	.cfi_def_cfa_offset STACKFRAME-# case FFI_TYPE_SINT16+	epilogue++E PPC_LD_S16 # ifdef __LITTLE_ENDIAN__ 	lha %r3, RETVAL+0(%r1) # else 	lha %r3, RETVAL+6(%r1) # endif-	mtlr %r0-	addi %r1, %r1, STACKFRAME-	.cfi_def_cfa_offset 0-	blr-	.cfi_def_cfa_offset STACKFRAME-# case FFI_TYPE_UINT32+	epilogue++E PPC_LD_U32 # ifdef __LITTLE_ENDIAN__ 	lwz %r3, RETVAL+0(%r1) # else 	lwz %r3, RETVAL+4(%r1) # endif-	mtlr %r0-	addi %r1, %r1, STACKFRAME-	.cfi_def_cfa_offset 0-	blr-	.cfi_def_cfa_offset STACKFRAME-# case FFI_TYPE_SINT32+	epilogue++E PPC_LD_S32 # ifdef __LITTLE_ENDIAN__ 	lwa %r3, RETVAL+0(%r1) # else 	lwa %r3, RETVAL+4(%r1) # endif-	mtlr %r0-	addi %r1, %r1, STACKFRAME-	.cfi_def_cfa_offset 0-	blr-	.cfi_def_cfa_offset STACKFRAME-# case FFI_TYPE_UINT64-	ld %r3, RETVAL+0(%r1)-	mtlr %r0-	addi %r1, %r1, STACKFRAME-	.cfi_def_cfa_offset 0-	blr-	.cfi_def_cfa_offset STACKFRAME-# case FFI_TYPE_SINT64-	ld %r3, RETVAL+0(%r1)-	mtlr %r0-	addi %r1, %r1, STACKFRAME-	.cfi_def_cfa_offset 0-	blr-	.cfi_def_cfa_offset STACKFRAME-# case FFI_TYPE_STRUCT-	mtlr %r0-	addi %r1, %r1, STACKFRAME-	.cfi_def_cfa_offset 0-	blr-	.cfi_def_cfa_offset STACKFRAME-	nop-# case FFI_TYPE_POINTER-	ld %r3, RETVAL+0(%r1)-	mtlr %r0-	addi %r1, %r1, STACKFRAME-	.cfi_def_cfa_offset 0-	blr-	.cfi_def_cfa_offset STACKFRAME-# case FFI_V2_TYPE_VECTOR+	epilogue++E PPC64_LD_VECTOR 	addi %r3, %r1, RETVAL 	lvx %v2, 0, %r3-	mtlr %r0-	b .Lfinish-# case FFI_V2_TYPE_VECTOR_HOMOG+	epilogue++E PPC64_LD_VECTOR_HOMOG 	addi %r3, %r1, RETVAL 	lvx %v2, 0, %r3 	addi %r3, %r3, 16 	b .Lmorevector-# case FFI_V2_TYPE_FLOAT_HOMOG++E PPC64_LD_FLOAT_HOMOG 	lfs %f1, RETVAL+0(%r1) 	lfs %f2, RETVAL+4(%r1) 	lfs %f3, RETVAL+8(%r1) 	b .Lmorefloat-# case FFI_V2_TYPE_DOUBLE_HOMOG++E PPC64_LD_DOUBLE_HOMOG 	lfd %f1, RETVAL+0(%r1) 	lfd %f2, RETVAL+8(%r1) 	lfd %f3, RETVAL+16(%r1)+	b .Lmoredouble++#ifndef __LITTLE_ENDIAN__+E PPC64_LD_STRUCT_3+	lwz %r3, RETVAL+4(%r1)+	srd %r3, %r3, 8+	epilogue+#endif++.Lmoredouble: 	lfd %f4, RETVAL+24(%r1)-	mtlr %r0 	lfd %f5, RETVAL+32(%r1) 	lfd %f6, RETVAL+40(%r1) 	lfd %f7, RETVAL+48(%r1) 	lfd %f8, RETVAL+56(%r1)-	addi %r1, %r1, STACKFRAME-	.cfi_def_cfa_offset 0-	blr-	.cfi_def_cfa_offset STACKFRAME+	epilogue+ .Lmorevector: 	lvx %v3, 0, %r3 	addi %r3, %r3, 16 	lvx %v4, 0, %r3 	addi %r3, %r3, 16 	lvx %v5, 0, %r3-	mtlr %r0 	addi %r3, %r3, 16 	lvx %v6, 0, %r3 	addi %r3, %r3, 16@@ -405,53 +369,15 @@ 	lvx %v8, 0, %r3 	addi %r3, %r3, 16 	lvx %v9, 0, %r3-	addi %r1, %r1, STACKFRAME-	.cfi_def_cfa_offset 0-	blr-	.cfi_def_cfa_offset STACKFRAME+	epilogue+ .Lmorefloat: 	lfs %f4, RETVAL+12(%r1)-	mtlr %r0 	lfs %f5, RETVAL+16(%r1) 	lfs %f6, RETVAL+20(%r1) 	lfs %f7, RETVAL+24(%r1) 	lfs %f8, RETVAL+28(%r1)-	addi %r1, %r1, STACKFRAME-	.cfi_def_cfa_offset 0-	blr-	.cfi_def_cfa_offset STACKFRAME-.Lsmall:-# ifdef __LITTLE_ENDIAN__-	ld %r3,RETVAL+0(%r1)-	mtlr %r0-	ld %r4,RETVAL+8(%r1)-	addi %r1, %r1, STACKFRAME-	.cfi_def_cfa_offset 0-	blr-# else-	# A struct smaller than a dword is returned in the low bits of r3-	# ie. right justified.  Larger structs are passed left justified-	# in r3 and r4.  The return value area on the stack will have-	# the structs as they are usually stored in memory.-	cmpldi %r3, FFI_V2_TYPE_SMALL_STRUCT + 7 # size 8 bytes?-	neg %r5, %r3-	ld %r3,RETVAL+0(%r1)-	blt .Lsmalldown-	mtlr %r0-	ld %r4,RETVAL+8(%r1)-	addi %r1, %r1, STACKFRAME-	.cfi_def_cfa_offset 0-	blr-	.cfi_def_cfa_offset STACKFRAME-.Lsmalldown:-	addi %r5, %r5, FFI_V2_TYPE_SMALL_STRUCT + 7-	mtlr %r0-	sldi %r5, %r5, 3-	addi %r1, %r1, STACKFRAME-	.cfi_def_cfa_offset 0-	srd %r3, %r3, %r5-	blr-# endif+	epilogue  	.cfi_endproc # if _CALL_ELF == 2
src/powerpc/ppc_closure.S view
@@ -108,263 +108,137 @@ 	lwz %r0,148(%r1) 	add %r3,%r3,%r4		# add contents of table to table address 	mtctr %r3+	mtlr %r0+	.cfi_restore 65 	bctr			# jump to it  # Each of the ret_typeX code fragments has to be exactly 16 bytes long # (4 instructions). For cache effectiveness we align to a 16 byte boundary # first.+ 	.align 4-# case FFI_TYPE_VOID .Lret_type0:-	mtlr %r0-	addi %r1,%r1,144++.macro E index+	.align 4+.endm++.macro epilogue+	addi %r1, %r1, 144 	.cfi_def_cfa_offset 0 	blr 	.cfi_def_cfa_offset 144-	nop+.endm -# case FFI_TYPE_INT+E PPC_LD_NONE+	epilogue++E PPC_LD_R3 	lwz %r3,112+0(%r1)-	mtlr %r0-.Lfinish:-	addi %r1,%r1,144-	.cfi_def_cfa_offset 0-	blr-	.cfi_def_cfa_offset 144+	epilogue -# case FFI_TYPE_FLOAT-#ifndef __NO_FPRS__-	lfs %f1,112+0(%r1)+E PPC_LD_R3R4+.Lr3r4:+	lwz %r3,112+0(%r1)+	lwz %r4,112+4(%r1)+	epilogue++E PPC_LD_F32+#ifdef __NO_FPRS__+	trap #else-	nop+	lfs %f1,112+0(%r1)+	epilogue #endif-	mtlr %r0-	addi %r1,%r1,144-	.cfi_def_cfa_offset 0-	blr-	.cfi_def_cfa_offset 144 -# case FFI_TYPE_DOUBLE-#ifndef __NO_FPRS__-	lfd %f1,112+0(%r1)+E PPC_LD_F64+#ifdef __NO_FPRS__+	trap #else-	nop+	lfd %f1,112+0(%r1)+	epilogue #endif-	mtlr %r0-	addi %r1,%r1,144-	.cfi_def_cfa_offset 0-	blr-	.cfi_def_cfa_offset 144 -# case FFI_TYPE_LONGDOUBLE-#ifndef __NO_FPRS__+E PPC_LD_F128+#ifdef __NO_FPRS__+	trap+#else 	lfd %f1,112+0(%r1) 	lfd %f2,112+8(%r1)-	mtlr %r0-	b .Lfinish-#else-	mtlr %r0-	addi %r1,%r1,144-	.cfi_def_cfa_offset 0-	blr-	.cfi_def_cfa_offset 144-	nop+	epilogue #endif -# case FFI_TYPE_UINT8+E PPC_LD_U8 #ifdef __LITTLE_ENDIAN__ 	lbz %r3,112+0(%r1) #else 	lbz %r3,112+3(%r1) #endif-	mtlr %r0-	addi %r1,%r1,144-	.cfi_def_cfa_offset 0-	blr-	.cfi_def_cfa_offset 144+	epilogue -# case FFI_TYPE_SINT8+E PPC_LD_S8 #ifdef __LITTLE_ENDIAN__ 	lbz %r3,112+0(%r1) #else 	lbz %r3,112+3(%r1) #endif 	extsb %r3,%r3-	mtlr %r0-	b .Lfinish+	epilogue -# case FFI_TYPE_UINT16+E PPC_LD_U16 #ifdef __LITTLE_ENDIAN__ 	lhz %r3,112+0(%r1) #else 	lhz %r3,112+2(%r1) #endif-	mtlr %r0-	addi %r1,%r1,144-	.cfi_def_cfa_offset 0-	blr-	.cfi_def_cfa_offset 144+	epilogue -# case FFI_TYPE_SINT16+E PPC_LD_S16 #ifdef __LITTLE_ENDIAN__ 	lha %r3,112+0(%r1) #else 	lha %r3,112+2(%r1) #endif-	mtlr %r0-	addi %r1,%r1,144-	.cfi_def_cfa_offset 0-	blr-	.cfi_def_cfa_offset 144--# case FFI_TYPE_UINT32-	lwz %r3,112+0(%r1)-	mtlr %r0-	addi %r1,%r1,144-	.cfi_def_cfa_offset 0-	blr-	.cfi_def_cfa_offset 144--# case FFI_TYPE_SINT32-	lwz %r3,112+0(%r1)-	mtlr %r0-	addi %r1,%r1,144-	.cfi_def_cfa_offset 0-	blr-	.cfi_def_cfa_offset 144--# case FFI_TYPE_UINT64-	lwz %r3,112+0(%r1)-	lwz %r4,112+4(%r1)-	mtlr %r0-	b .Lfinish--# case FFI_TYPE_SINT64-	lwz %r3,112+0(%r1)-	lwz %r4,112+4(%r1)-	mtlr %r0-	b .Lfinish--# case FFI_TYPE_STRUCT-	mtlr %r0-	addi %r1,%r1,144-	.cfi_def_cfa_offset 0-	blr-	.cfi_def_cfa_offset 144-	nop--# case FFI_TYPE_POINTER-	lwz %r3,112+0(%r1)-	mtlr %r0-	addi %r1,%r1,144-	.cfi_def_cfa_offset 0-	blr-	.cfi_def_cfa_offset 144+	epilogue -# case FFI_TYPE_UINT128-	lwz %r3,112+0(%r1)-	lwz %r4,112+4(%r1)+E PPC32_LD_R3R6 	lwz %r5,112+8(%r1)-	b .Luint128--# The return types below are only used when the ABI type is FFI_SYSV.-# case FFI_SYSV_TYPE_SMALL_STRUCT + 1. One byte struct.-	lbz %r3,112+0(%r1)-	mtlr %r0-	addi %r1,%r1,144-	.cfi_def_cfa_offset 0-	blr-	.cfi_def_cfa_offset 144--# case FFI_SYSV_TYPE_SMALL_STRUCT + 2. Two byte struct.-	lhz %r3,112+0(%r1)-	mtlr %r0-	addi %r1,%r1,144-	.cfi_def_cfa_offset 0-	blr-	.cfi_def_cfa_offset 144+	lwz %r6,112+12(%r1)+	b .Lr3r4 -# case FFI_SYSV_TYPE_SMALL_STRUCT + 3. Three byte struct.+#ifndef __LITTLE_ENDIAN__+E PPC32_SYSV_LD_STRUCT_3 	lwz %r3,112+0(%r1)-#ifdef __LITTLE_ENDIAN__-	mtlr %r0-	addi %r1,%r1,144-	.cfi_def_cfa_offset 0-	blr-	.cfi_def_cfa_offset 144-#else 	srwi %r3,%r3,8-	mtlr %r0-	b .Lfinish-#endif--# case FFI_SYSV_TYPE_SMALL_STRUCT + 4. Four byte struct.-	lwz %r3,112+0(%r1)-	mtlr %r0-	addi %r1,%r1,144-	.cfi_def_cfa_offset 0-	blr-	.cfi_def_cfa_offset 144+	epilogue -# case FFI_SYSV_TYPE_SMALL_STRUCT + 5. Five byte struct.+E PPC32_SYSV_LD_STRUCT_5 	lwz %r3,112+0(%r1) 	lwz %r4,112+4(%r1)-#ifdef __LITTLE_ENDIAN__-	mtlr %r0-	b .Lfinish-#else 	li %r5,24 	b .Lstruct567-#endif -# case FFI_SYSV_TYPE_SMALL_STRUCT + 6. Six byte struct.+E PPC32_SYSV_LD_STRUCT_6 	lwz %r3,112+0(%r1) 	lwz %r4,112+4(%r1)-#ifdef __LITTLE_ENDIAN__-	mtlr %r0-	b .Lfinish-#else 	li %r5,16 	b .Lstruct567-#endif -# case FFI_SYSV_TYPE_SMALL_STRUCT + 7. Seven byte struct.+E PPC32_SYSV_LD_STRUCT_7 	lwz %r3,112+0(%r1) 	lwz %r4,112+4(%r1)-#ifdef __LITTLE_ENDIAN__-	mtlr %r0-	b .Lfinish-#else 	li %r5,8-	b .Lstruct567-#endif--# case FFI_SYSV_TYPE_SMALL_STRUCT + 8. Eight byte struct.-	lwz %r3,112+0(%r1)-	lwz %r4,112+4(%r1)-	mtlr %r0-	b .Lfinish+	nop -#ifndef __LITTLE_ENDIAN__ .Lstruct567: 	subfic %r6,%r5,32 	srw %r4,%r4,%r5 	slw %r6,%r3,%r6 	srw %r3,%r3,%r5 	or %r4,%r6,%r4-	mtlr %r0-	addi %r1,%r1,144-	.cfi_def_cfa_offset 0-	blr-	.cfi_def_cfa_offset 144+	epilogue #endif -.Luint128:-	lwz %r6,112+12(%r1)-	mtlr %r0-	addi %r1,%r1,144-	.cfi_def_cfa_offset 0-	blr 	.cfi_endproc END(ffi_closure_SYSV) 
src/riscv/ffi.c view
@@ -29,16 +29,23 @@  #include <ffi.h> #include <ffi_common.h>+#include "internal.h"+#include <tramp.h>  #include <stdlib.h> #include <stdint.h>  #if __riscv_float_abi_double #define ABI_FLEN 64-#define ABI_FLOAT double+typedef union {+    uint64_t i;+    double d;+} float_reg; #elif __riscv_float_abi_single #define ABI_FLEN 32-#define ABI_FLOAT float+typedef union {+    float f;+} float_reg; #endif  #define NARGREG 8@@ -48,7 +55,7 @@ typedef struct call_context { #if ABI_FLEN-    ABI_FLOAT fa[8];+    float_reg fa[8]; #endif     size_t a[8];     /* used by the assembly code to in-place construct its own stack frame */@@ -127,7 +134,31 @@      return ret; }++#if ABI_FLEN >= 64+/* Float values in wider RISC-V FP registers are NaN-boxed */+static void marshal_float(call_builder *cb, void *data) {+    union {+        uint32_t i;+        float f;+    } value;++    value.f = *(float *)data;+    cb->aregs->fa[cb->used_float++].i =+        UINT64_C(0xffffffff00000000) | value.i;+}++static void unmarshal_float(call_builder *cb, void *data) {+    union {+        uint32_t i;+        float f;+    } value;++    value.i = (uint32_t)cb->aregs->fa[cb->used_float++].i;+    *(float *)data = value.f;+} #endif+#endif  /* allocates a single register, float register, or XLEN-sized stack slot to a datum */ static void marshal_atom(call_builder *cb, int type, void *data) {@@ -146,17 +177,18 @@ #endif         case FFI_TYPE_POINTER: value = *(size_t *)data; break; -        /* float values may be recoded in an implementation-defined way-           by hardware conforming to 2.1 or earlier, so use asm to-           reinterpret floats as doubles */-#if ABI_FLEN >= 32+#if ABI_FLEN >= 64         case FFI_TYPE_FLOAT:-            asm("" : "=f"(cb->aregs->fa[cb->used_float++]) : "0"(*(float *)data));+            marshal_float(cb, data);             return;+#elif ABI_FLEN >= 32+        case FFI_TYPE_FLOAT:+            __asm__("" : "=f"(cb->aregs->fa[cb->used_float++].f) : "0"(*(float *)data));+            return; #endif #if ABI_FLEN >= 64         case FFI_TYPE_DOUBLE:-            asm("" : "=f"(cb->aregs->fa[cb->used_float++]) : "0"(*(double *)data));+            __asm__("" : "=f"(cb->aregs->fa[cb->used_float++].d) : "0"(*(double *)data));             return; #endif         default: FFI_ASSERT(0); break;@@ -172,14 +204,18 @@ static void unmarshal_atom(call_builder *cb, int type, void *data) {     size_t value;     switch (type) {-#if ABI_FLEN >= 32+#if ABI_FLEN >= 64         case FFI_TYPE_FLOAT:-            asm("" : "=f"(*(float *)data) : "0"(cb->aregs->fa[cb->used_float++]));+            unmarshal_float(cb, data);             return;+#elif ABI_FLEN >= 32+        case FFI_TYPE_FLOAT:+            __asm__("" : "=f"(*(float *)data) : "0"(cb->aregs->fa[cb->used_float++].f));+            return; #endif #if ABI_FLEN >= 64         case FFI_TYPE_DOUBLE:-            asm("" : "=f"(*(double *)data) : "0"(cb->aregs->fa[cb->used_float++]));+            __asm__("" : "=f"(*(double *)data) : "0"(cb->aregs->fa[cb->used_float++].d));             return; #endif     }@@ -424,34 +460,44 @@  ffi_status ffi_prep_closure_loc(ffi_closure *closure, ffi_cif *cif, void (*fun)(ffi_cif*,void*,void**,void*), void *user_data, void *codeloc) {-    uint32_t *tramp = (uint32_t *) &closure->tramp[0];-    uint64_t fn = (uint64_t) (uintptr_t) ffi_closure_asm;-     if (cif->abi <= FFI_FIRST_ABI || cif->abi >= FFI_LAST_ABI)         return FFI_BAD_ABI; -    /* we will call ffi_closure_inner with codeloc, not closure, but as long-       as the memory is readable it should work */+#ifdef FFI_EXEC_STATIC_TRAMP+  if (ffi_tramp_is_present (closure))+    {+      /* Initialize the static trampoline's parameters. */+      void (*dest)(void) = ffi_closure_asm;+      ffi_tramp_set_parms (closure->ftramp, dest, closure);+    }+  else+#endif+    {+      uint32_t *tramp = (uint32_t *) &closure->tramp[0];+      uint64_t fn = (uint64_t) (uintptr_t) ffi_closure_asm; -    tramp[0] = 0x00000317; /* auipc t1, 0 (i.e. t0 <- codeloc) */+      /* we will call ffi_closure_inner with codeloc, not closure, but as long+	 as the memory is readable it should work */++      tramp[0] = 0x00000317; /* auipc t1, 0 (i.e. t0 <- codeloc) */ #if __SIZEOF_POINTER__ == 8-    tramp[1] = 0x01033383; /* ld t2, 16(t1) */+      tramp[1] = 0x01033383; /* ld t2, 16(t1) */ #else-    tramp[1] = 0x01032383; /* lw t2, 16(t1) */+      tramp[1] = 0x01032383; /* lw t2, 16(t1) */ #endif-    tramp[2] = 0x00038067; /* jr t2 */-    tramp[3] = 0x00000013; /* nop */-    tramp[4] = fn;-    tramp[5] = fn >> 32;+      tramp[2] = 0x00038067; /* jr t2 */+      tramp[3] = 0x00000013; /* nop */+      tramp[4] = fn;+      tramp[5] = fn >> 32;+#if !defined(__FreeBSD__)+    __builtin___clear_cache(codeloc, codeloc + FFI_TRAMPOLINE_SIZE);+#endif+    }      closure->cif = cif;     closure->fun = fun;     closure->user_data = user_data; -#if !defined(__FreeBSD__)-    __builtin___clear_cache(codeloc, codeloc + FFI_TRAMPOLINE_SIZE);-#endif-     return FFI_OK; } @@ -512,3 +558,14 @@         marshal(&cb, cif->rtype, 0, rvalue);     } }++#ifdef FFI_EXEC_STATIC_TRAMP+void *+ffi_tramp_arch (size_t *tramp_size, size_t *map_size)+{+  extern void *trampoline_code_table;+  *tramp_size = RISCV_TRAMP_SIZE;+  *map_size = RISCV_TRAMP_MAP_SIZE;+  return &trampoline_code_table;+}+#endif
src/riscv/ffitarget.h view
@@ -62,8 +62,9 @@ #define FFI_GO_CLOSURES 1 #define FFI_TRAMPOLINE_SIZE 24 #define FFI_NATIVE_RAW_API 0-#define FFI_EXTRA_CIF_FIELDS unsigned riscv_nfixedargs; unsigned riscv_unused;+#define FFI_EXTRA_CIF_FIELDS unsigned riscv_nfixedargs; unsigned riscv_unused #define FFI_TARGET_SPECIFIC_VARIADIC+#define FFI_TARGET_HAS_INT128  #endif 
+ src/riscv/internal.h view
@@ -0,0 +1,7 @@+#ifdef FFI_EXEC_STATIC_TRAMP+/* For the trampoline table mapping, a mapping size of 4K (base page size)+   is chosen.  */+#define RISCV_TRAMP_MAP_SHIFT	12+#define RISCV_TRAMP_MAP_SIZE	(1 << RISCV_TRAMP_MAP_SHIFT)+#define RISCV_TRAMP_SIZE	16+#endif /* FFI_EXEC_STATIC_TRAMP */
src/riscv/sysv.S view
@@ -29,6 +29,7 @@ #define LIBFFI_ASM #include <fficonfig.h> #include <ffi.h>+#include "internal.h"  /* Define aliases so that we can handle all ABIs uniformly */ @@ -86,7 +87,7 @@       preserve the call_context so that it can be read back in the caller.     */ -    .cfi_def_cfa 11, FRAME_LEN # interim CFA based on a1+    .cfi_def_cfa 11, FRAME_LEN /* interim CFA based on a1 */     SARG    fp, FRAME_LEN - 2*PTRS(a1)     .cfi_offset 8, -2*PTRS     SARG    ra, FRAME_LEN - 1*PTRS(a1)@@ -94,9 +95,9 @@      addi    fp, a1, FRAME_LEN     mv      sp, a0-    .cfi_def_cfa 8, 0 # our frame is fully set up+    .cfi_def_cfa 8, 0 /* our frame is fully set up */ -    # Load arguments+    /* Load arguments */     mv      t1, a2     mv      t2, a3 @@ -291,3 +292,26 @@     ret     .cfi_endproc     .size ffi_go_closure_asm, .-ffi_go_closure_asm++#ifdef FFI_EXEC_STATIC_TRAMP+/*+  trampoline_code_table.+*/+    .globl trampoline_code_table+    .hidden trampoline_code_table+    .type trampoline_code_table, @function+    .align RISCV_TRAMP_MAP_SHIFT+trampoline_code_table:+    .option push+    # Do not allow the jr insn to be encoded as c.jr for alignment purposes+    .option norvc+    .rept   RISCV_TRAMP_MAP_SIZE / RISCV_TRAMP_SIZE+    auipc   t2, RISCV_TRAMP_MAP_SIZE >> 12+    LARG    t1, 0(t2)+    LARG    t2, PTRS(t2)+    jr      t2+    .endr+    .option pop+    .size   trampoline_code_table,.-trampoline_code_table+    .align RISCV_TRAMP_MAP_SHIFT+#endif /* FFI_EXEC_STATIC_TRAMP */
src/s390/ffi.c view
@@ -158,9 +158,15 @@ 	cif->flags = FFI390_RET_VOID; 	break; -      /* Structures and complex are returned via a hidden pointer.  */+      /* Structures, complex, int128, and long double are+         returned via a hidden pointer.  */       case FFI_TYPE_STRUCT:       case FFI_TYPE_COMPLEX:+      case FFI_TYPE_SINT128:+      case FFI_TYPE_UINT128:+#if FFI_TYPE_LONGDOUBLE != FFI_TYPE_DOUBLE+      case FFI_TYPE_LONGDOUBLE:+#endif 	cif->flags = FFI390_RET_STRUCT; 	n_gpr++;  /* We need one GPR to pass the pointer.  */ 	break;@@ -174,12 +180,6 @@ 	cif->flags = FFI390_RET_DOUBLE; 	break; -#if FFI_TYPE_LONGDOUBLE != FFI_TYPE_DOUBLE-      case FFI_TYPE_LONGDOUBLE:-	cif->flags = FFI390_RET_STRUCT;-	n_gpr++;-	break;-#endif       /* Integer values are returned in gpr 2 (and gpr 3 	 for 64-bit values on 31-bit machines).  */       case FFI_TYPE_UINT64:@@ -216,24 +216,25 @@     {       int type = (*ptr)->type; -#if FFI_TYPE_LONGDOUBLE != FFI_TYPE_DOUBLE-      /* 16-byte long double is passed like a struct.  */-      if (type == FFI_TYPE_LONGDOUBLE)-	type = FFI_TYPE_STRUCT;-#endif--      /* Check how a structure type is passed.  */-      if (type == FFI_TYPE_STRUCT || type == FFI_TYPE_COMPLEX)+      switch (type) 	{-	  if (type == FFI_TYPE_COMPLEX)-	    type = FFI_TYPE_POINTER;-	  else-	    type = ffi_check_struct_type (*ptr);+	case FFI_TYPE_STRUCT:+	  type = ffi_check_struct_type (*ptr);+	  if (type != FFI_TYPE_POINTER)+	    break;+	  /* fall through */ -	  /* If we pass the struct via pointer, we must reserve space-	     to copy its data for proper call-by-value semantics.  */-	  if (type == FFI_TYPE_POINTER)-	    struct_size += ROUND_SIZE ((*ptr)->size);+	case FFI_TYPE_COMPLEX:+	case FFI_TYPE_SINT128:+	case FFI_TYPE_UINT128:+#if FFI_TYPE_LONGDOUBLE != FFI_TYPE_DOUBLE+	case FFI_TYPE_LONGDOUBLE:+#endif+	  type = FFI_TYPE_POINTER;+	  /* If we pass via pointer, we must reserve space to copy+	     its data for proper call-by-value semantics.  */+	  struct_size += ROUND_SIZE ((*ptr)->size);+	  break; 	}        /* Now handle all primitive int/float data types.  */@@ -460,10 +461,11 @@  #if FFI_TYPE_LONGDOUBLE != FFI_TYPE_DOUBLE 	case FFI_TYPE_LONGDOUBLE:-	  /* 16-byte long double is passed via reference.  */ #endif 	case FFI_TYPE_COMPLEX:-	  /* Complex types are passed via reference.  */+	case FFI_TYPE_SINT128:+	case FFI_TYPE_UINT128:+	  /* Complex, int128 and long double types are passed via reference. */ 	  p_struct -= ROUND_SIZE (ty->size); 	  memcpy (p_struct, arg, ty->size); 	  val = (uintptr_t)p_struct;
src/s390/ffitarget.h view
@@ -54,6 +54,7 @@  #define FFI_TARGET_SPECIFIC_STACK_SPACE_ALLOCATION #define FFI_TARGET_HAS_COMPLEX_TYPE+#define FFI_TARGET_HAS_INT128  /* ---- Definitions for closures ----------------------------------------- */ 
src/sh/sysv.S view
@@ -31,7 +31,9 @@ #include <machine/asm.h> #else /* XXX these lose for some platforms, I'm sure. */-#define CNAME(x) x+#define C2(X, Y)	X ## Y+#define C1(X, Y)	C2(X, Y)+#define CNAME(x) C1(__USER_LABEL_PREFIX__, x) #define ENTRY(x) .globl CNAME(x); .type CNAME(x),%function; CNAME(x): #endif 
src/sh64/ffi.c view
@@ -332,7 +332,7 @@   closure->user_data = user_data;    /* Flush the icache.  */-  asm volatile ("ocbwb %0,0; synco; icbi %1,0; synci" : : "r" (tramp),+  __asm__ volatile ("ocbwb %0,0; synco; icbi %1,0; synci" : : "r" (tramp), 		"r"(codeloc));    return FFI_OK;
src/sparc/ffi.c view
@@ -332,7 +332,7 @@ ffi_flush_icache (void *p) {   /* SPARC v8 requires 5 instructions for flush to be visible */-  asm volatile ("iflush	%0; iflush %0+8; nop; nop; nop; nop; nop"+  __asm__ volatile ("iflush	%0; iflush %0+8; nop; nop; nop; nop; nop" 		: : "r" (p) : "memory"); } #else
src/sparc/ffi64.c view
@@ -469,7 +469,7 @@ static inline void ffi_flush_icache (void *p) {-  asm volatile ("flush	%0; flush %0+8" : : "r" (p) : "memory");+  __asm__ volatile ("flush	%0; flush %0+8" : : "r" (p) : "memory"); } #else extern void ffi_flush_icache (void *) FFI_HIDDEN;
src/types.c view
@@ -126,3 +126,16 @@ FFI_COMPLEX_TYPEDEF(double, double, const); FFI_COMPLEX_TYPEDEF(longdouble, long double, FFI_LDBL_CONST); #endif++#ifdef FFI_TARGET_HAS_INT128+# ifdef HAVE_INT128+FFI_TYPEDEF(uint128, __uint128_t, FFI_TYPE_UINT128, const);+FFI_TYPEDEF(sint128, __int128_t, FFI_TYPE_SINT128, const);+# else+/* We don't actually need compiler support for __int128_t, as we don't+   use the type itself within libffi.  Obviously the size is 16; make+   the conservative assumption that the alignment must also be 16. */+const ffi_type ffi_type_uint128 = { 16, 16, FFI_TYPE_UINT128, NULL };+const ffi_type ffi_type_sint128 = { 16, 16, FFI_TYPE_SINT128, NULL };+# endif+#endif /* FFI_TARGET_HAS_INT128 */
src/x86/ffi.c view
@@ -370,7 +370,7 @@ 	  size_t za = FFI_ALIGN (z, FFI_SIZEOF_ARG); 	  size_t align = FFI_SIZEOF_ARG; -	  /* Issue 434: For thiscall and fastcall, if the paramter passed+	  /* Issue 434: For thiscall and fastcall, if the parameter passed 	     as 64-bit integer or struct, all following integer parameters 	     will be passed on stack.  */ 	  if ((cabi == FFI_THISCALL || cabi == FFI_FASTCALL)@@ -519,7 +519,7 @@ 	  if (t == FFI_TYPE_STRUCT && ty->alignment >= 16) 	    align = 16; -	  /* Issue 434: For thiscall and fastcall, if the paramter passed+	  /* Issue 434: For thiscall and fastcall, if the parameter passed 	     as 64-bit integer or struct, all following integer parameters 	     will be passed on stack.  */ 	  if ((cabi == FFI_THISCALL || cabi == FFI_FASTCALL)
src/x86/ffi64.c view
@@ -102,6 +102,20 @@  #define SSE_CLASS_P(X)	((X) >= X86_64_SSE_CLASS && X <= X86_64_SSEUP_CLASS) +/* On most x86-64 targets `long double` is the 80-bit x87 type: classified+   X87/X87UP, passed in memory, returned in st(0).  But some targets (notably+   x86_64 Android, and anything built with -mlong-double-128) make `long double`+   the IEEE binary128 quad type, which the psABI passes and returns in SSE+   registers exactly like __float128 (class SSE/SSEUP -> one %xmm register).+   Detect that at compile time and classify long double accordingly.  A mantissa+   of 113 bits uniquely identifies binary128 (x87 extended is 64).  */+#if FFI_TYPE_LONGDOUBLE != FFI_TYPE_DOUBLE \+    && defined(__LDBL_MANT_DIG__) && __LDBL_MANT_DIG__ == 113+# define FFI_LONGDOUBLE_BINARY128 1+#else+# define FFI_LONGDOUBLE_BINARY128 0+#endif+ /* x86-64 register passing implementation.  See x86-64 ABI for details.  Goal    of this code is to classify each 8bytes of incoming argument by the register    class and assign registers accordingly.  */@@ -171,6 +185,8 @@     case FFI_TYPE_SINT32:     case FFI_TYPE_UINT64:     case FFI_TYPE_SINT64:+    case FFI_TYPE_UINT128:+    case FFI_TYPE_SINT128:     case FFI_TYPE_POINTER:     do_integer:       {@@ -211,8 +227,14 @@       return 1; #if FFI_TYPE_LONGDOUBLE != FFI_TYPE_DOUBLE     case FFI_TYPE_LONGDOUBLE:+#if FFI_LONGDOUBLE_BINARY128+      /* IEEE binary128: one %xmm register, like __float128.  */+      classes[0] = X86_64_SSE_CLASS;+      classes[1] = X86_64_SSEUP_CLASS;+#else       classes[0] = X86_64_X87_CLASS;       classes[1] = X86_64_X87UP_CLASS;+#endif       return 2; #endif     case FFI_TYPE_STRUCT:@@ -322,6 +344,10 @@ 	  case FFI_TYPE_SINT64: 	    goto do_integer; +	  case FFI_TYPE_SINT128:+	  case FFI_TYPE_UINT128:+	    return 0;+ 	  case FFI_TYPE_FLOAT: 	    classes[0] = X86_64_SSE_CLASS; 	    if (byte_offset % 8)@@ -335,9 +361,14 @@ 	    return 2; #if FFI_TYPE_LONGDOUBLE != FFI_TYPE_DOUBLE 	  case FFI_TYPE_LONGDOUBLE:+#if FFI_LONGDOUBLE_BINARY128+	    /* _Complex binary128 is 32 bytes -> passed/returned in memory.  */+	    return 0;+#else 	    classes[0] = X86_64_COMPLEX_X87_CLASS; 	    return 1; #endif+#endif 	  }       }     }@@ -445,6 +476,10 @@     case FFI_TYPE_SINT64:       flags = UNIX64_RET_INT64;       break;+    case FFI_TYPE_UINT128:+    case FFI_TYPE_SINT128:+      flags = UNIX64_RET_ST_RAX_RDX | (16 << UNIX64_SIZE_SHIFT);+      break;     case FFI_TYPE_POINTER:       flags = (sizeof(void *) == 4 ? UNIX64_RET_UINT32 : UNIX64_RET_INT64);       break;@@ -456,7 +491,11 @@       break; #if FFI_TYPE_LONGDOUBLE != FFI_TYPE_DOUBLE     case FFI_TYPE_LONGDOUBLE:+#if FFI_LONGDOUBLE_BINARY128+      flags = UNIX64_RET_XMM128;	/* returned in %xmm0 (16 bytes) */+#else       flags = UNIX64_RET_X87;+#endif       break; #endif     case FFI_TYPE_STRUCT:@@ -514,9 +553,20 @@ 	  break; #if FFI_TYPE_LONGDOUBLE != FFI_TYPE_DOUBLE 	case FFI_TYPE_LONGDOUBLE:+#if FFI_LONGDOUBLE_BINARY128+	  /* _Complex binary128 (32 bytes) is returned in memory.  */+	  gprcount++;+	  flags = UNIX64_RET_VOID | UNIX64_FLAG_RET_IN_MEM;+#else 	  flags = UNIX64_RET_X87_2;+#endif 	  break; #endif+	case FFI_TYPE_SINT128:+	case FFI_TYPE_UINT128:+	  gprcount++;+	  flags = UNIX64_RET_VOID | UNIX64_FLAG_RET_IN_MEM;+	  break; 	default: 	  return FFI_BAD_TYPEDEF; 	}@@ -633,7 +683,13 @@ 	      switch (classes[j]) 		{ 		case X86_64_NO_CLASS:+		  break; 		case X86_64_SSEUP_CLASS:+		  /* The upper 8 bytes of the same %xmm register written by+		     the preceding SSE class (e.g. the high half of a+		     binary128 long double).  */+		  memcpy ((char *) &reg_args->sse[ssecount - 1] + 8, a,+			  size < 8 ? size : 8); 		  break; 		case X86_64_INTEGER_CLASS: 		case X86_64_INTEGERSI_CLASS:@@ -890,7 +946,12 @@ 	  avalue[i] = a; 	  for (j = 0; j < n; j++, a += 8) 	    {-	      if (SSE_CLASS_P (classes[j]))+	      if (classes[j] == X86_64_SSEUP_CLASS)+		/* The high half of the same %xmm register as the preceding+		   SSE class (e.g. the upper bits of a binary128 long double);+		   it does not consume another register.  */+		memcpy (a, (char *) &reg_args->sse[ssecount - 1] + 8, 8);+	      else if (SSE_CLASS_P (classes[j])) 		memcpy (a, &reg_args->sse[ssecount++], 8); 	      else 		memcpy (a, &reg_args->gpr[gprcount++], 8);
src/x86/ffitarget.h view
@@ -41,9 +41,6 @@  #if defined (X86_64) && defined (__i386__) #undef X86_64-#warning ******************************************************-#warning ********** X86 IS DEFINED ****************************-#warning ****************************************************** #define X86 #endif @@ -55,6 +52,10 @@ #define FFI_TARGET_SPECIFIC_STACK_SPACE_ALLOCATION #ifndef _MSC_VER #define FFI_TARGET_HAS_COMPLEX_TYPE+#endif++#ifdef X86_64+#define FFI_TARGET_HAS_INT128 #endif  /* ---- Generic type definitions ----------------------------------------- */
src/x86/ffiw64.c view
@@ -30,6 +30,7 @@ #include <ffi_common.h> #include <stdlib.h> #include <stdint.h>+#include <stdbool.h> #include <tramp.h>  #ifdef X86_WIN64@@ -115,6 +116,7 @@ #if defined(_MSC_VER) #pragma runtime_checks("s", off) #endif+FFI_ASAN_NO_SANITIZE static void ffi_call_int (ffi_cif *cif, void (*fn)(void), void *rvalue, 	      void **avalue, void *closure)@@ -128,13 +130,33 @@    FFI_ASSERT(cif->abi == FFI_GNUW64 || cif->abi == FFI_WIN64); -  /* If we have any large structure arguments, make a copy so we are passing-     by value.  */+  /* If we have any int128 or irregularly sized structure arguments,+     make a copy so we are passing by value.  */   for (i = 0; i < nargs; i++)     {       ffi_type *at = arg_types[i];       int size = at->size;-      if (at->type == FFI_TYPE_STRUCT && size > 8)+      bool needcopy = false;++      switch (at->type)+	{+	case FFI_TYPE_UINT128:+	case FFI_TYPE_SINT128:+	  needcopy = true;+	  break;+	case FFI_TYPE_STRUCT:+	  switch (size)+	    {+	    case 1:+	    case 2:+	    case 4:+	    case 8:+	      break;+	    default:+	      needcopy = true;+	    }+	}+      if (needcopy)         {           char *argcopy = alloca (size);           memcpy (argcopy, avalue[i], size);
src/x86/internal64.h view
@@ -14,8 +14,9 @@ #define UNIX64_RET_ST_RAX_XMM0	13 #define UNIX64_RET_ST_XMM0_XMM1	14 #define UNIX64_RET_ST_RAX_RDX	15+#define UNIX64_RET_XMM128	16	/* binary128 long double in %xmm0 */ -#define UNIX64_RET_LAST		15+#define UNIX64_RET_LAST		16  #define UNIX64_FLAG_RET_IN_MEM	(1 << 10) #define UNIX64_FLAG_XMM_ARGS	(1 << 11)
src/x86/sysv.S view
@@ -91,7 +91,7 @@  ffi_call_i386: L(UW0):-	# cfi_startproc+	/* cfi_startproc */ 	_CET_ENDBR #if !HAVE_FASTCALL 	movl	4(%esp), %ecx@@ -110,8 +110,8 @@ 	   perspective of the unwind info, it hasn't moved.  */ 	movl	%ecx, %ebp L(UW1):-	# cfi_def_cfa(%ebp, 8)-	# cfi_rel_offset(%ebp, 0)+	/* cfi_def_cfa(%ebp, 8) */+	/* cfi_rel_offset(%ebp, 0) */  	movl	%edx, %esp		/* set outgoing argument stack */ 	movl	20+R_EAX*4(%ebp), %eax	/* set register arguments */@@ -123,7 +123,7 @@ 	movl	12(%ebp), %ecx		/* load return type code */ 	movl	%ebx, 8(%ebp)		/* preserve %ebx */ L(UW2):-	# cfi_rel_offset(%ebx, 8)+	/* cfi_rel_offset(%ebx, 8) */  	andl	$X86_RET_TYPE_MASK, %ecx #ifdef __PIC__@@ -175,13 +175,13 @@ 	movl	%ebp, %esp 	popl	%ebp L(UW3):-	# cfi_remember_state-	# cfi_def_cfa(%esp, 4)-	# cfi_restore(%ebx)-	# cfi_restore(%ebp)+	/* cfi_remember_state */+	/* cfi_def_cfa(%esp, 4) */+	/* cfi_restore(%ebx) */+	/* cfi_restore(%ebp) */ 	ret L(UW4):-	# cfi_restore_state+	/* cfi_restore_state */  E(L(store_table), X86_RET_STRUCTPOP) 	jmp	L(e1)@@ -201,7 +201,7 @@ 	ud2  L(UW5):-	# cfi_endproc+	/* cfi_endproc */ ENDF(ffi_call_i386)  /* The inner helper is declared as@@ -296,11 +296,11 @@ 	FFI_HIDDEN(C(ffi_go_closure_EAX)) C(ffi_go_closure_EAX): L(UW6):-	# cfi_startproc+	/* cfi_startproc */ 	_CET_ENDBR 	subl	$closure_FS, %esp L(UW7):-	# cfi_def_cfa_offset(closure_FS + 4)+	/* cfi_def_cfa_offset(closure_FS + 4) */ 	FFI_CLOSURE_SAVE_REGS 	movl	4(%eax), %edx			/* copy cif */ 	movl	8(%eax), %ecx			/* copy fun */@@ -309,7 +309,7 @@ 	movl	%eax, closure_CF+36(%esp)	/* closure is user_data */ 	jmp	L(do_closure_i386) L(UW8):-	# cfi_endproc+	/* cfi_endproc */ ENDF(C(ffi_go_closure_EAX))  	.balign	16@@ -317,11 +317,11 @@ 	FFI_HIDDEN(C(ffi_go_closure_ECX)) C(ffi_go_closure_ECX): L(UW9):-	# cfi_startproc+	/* cfi_startproc */ 	_CET_ENDBR 	subl	$closure_FS, %esp L(UW10):-	# cfi_def_cfa_offset(closure_FS + 4)+	/* cfi_def_cfa_offset(closure_FS + 4) */ 	FFI_CLOSURE_SAVE_REGS 	movl	4(%ecx), %edx			/* copy cif */ 	movl	8(%ecx), %eax			/* copy fun */@@ -330,7 +330,7 @@ 	movl	%ecx, closure_CF+36(%esp)	/* closure is user_data */ 	jmp	L(do_closure_i386) L(UW11):-	# cfi_endproc+	/* cfi_endproc */ ENDF(C(ffi_go_closure_ECX))  /* The closure entry points are reached from the ffi_closure trampoline.@@ -342,11 +342,11 @@  C(ffi_closure_i386): L(UW12):-	# cfi_startproc+	/* cfi_startproc */ 	_CET_ENDBR 	subl	$closure_FS, %esp L(UW13):-	# cfi_def_cfa_offset(closure_FS + 4)+	/* cfi_def_cfa_offset(closure_FS + 4) */  	FFI_CLOSURE_SAVE_REGS 	FFI_CLOSURE_COPY_TRAMP_DATA@@ -391,17 +391,17 @@ L(e2): 	addl	$closure_FS, %esp L(UW16):-	# cfi_adjust_cfa_offset(-closure_FS)+	/* cfi_adjust_cfa_offset(-closure_FS) */ 	ret L(UW17):-	# cfi_adjust_cfa_offset(closure_FS)+	/* cfi_adjust_cfa_offset(closure_FS) */ E(L(load_table2), X86_RET_STRUCTPOP) 	addl	$closure_FS, %esp L(UW18):-	# cfi_adjust_cfa_offset(-closure_FS)+	/* cfi_adjust_cfa_offset(-closure_FS) */ 	ret	$4 L(UW19):-	# cfi_adjust_cfa_offset(closure_FS)+	/* cfi_adjust_cfa_offset(closure_FS) */ E(L(load_table2), X86_RET_STRUCTARG) 	jmp	L(e2) E(L(load_table2), X86_RET_STRUCT_1B)@@ -418,7 +418,7 @@ 	ud2  L(UW20):-	# cfi_endproc+	/* cfi_endproc */ ENDF(C(ffi_closure_i386))  	.balign	16@@ -426,11 +426,11 @@ 	FFI_HIDDEN(C(ffi_go_closure_STDCALL)) C(ffi_go_closure_STDCALL): L(UW21):-	# cfi_startproc+	/* cfi_startproc */ 	_CET_ENDBR 	subl	$closure_FS, %esp L(UW22):-	# cfi_def_cfa_offset(closure_FS + 4)+	/* cfi_def_cfa_offset(closure_FS + 4) */ 	FFI_CLOSURE_SAVE_REGS 	movl	4(%ecx), %edx			/* copy cif */ 	movl	8(%ecx), %eax			/* copy fun */@@ -439,7 +439,7 @@ 	movl	%ecx, closure_CF+36(%esp)	/* closure is user_data */ 	jmp	L(do_closure_STDCALL) L(UW23):-	# cfi_endproc+	/* cfi_endproc */ ENDF(C(ffi_go_closure_STDCALL))  /* For REGISTER, we have no available parameter registers, and so we@@ -450,20 +450,18 @@ 	FFI_HIDDEN(C(ffi_closure_REGISTER)) C(ffi_closure_REGISTER): L(UW24):-	# cfi_startproc-	# cfi_def_cfa(%esp, 8)-	# cfi_offset(%eip, -8)+	/* cfi_startproc */+	/* cfi_def_cfa(%esp, 8) */+	/* cfi_offset(%eip, -8) */ 	_CET_ENDBR 	subl	$closure_FS-4, %esp L(UW25):-	# cfi_def_cfa_offset(closure_FS + 4)+	/* cfi_def_cfa_offset(closure_FS + 4) */ 	FFI_CLOSURE_SAVE_REGS-	movl	closure_FS-4(%esp), %ecx	/* load retaddr */-	movl	closure_FS(%esp), %eax		/* load closure */-	movl	%ecx, closure_FS(%esp)		/* move retaddr */+	movl	closure_FS-4(%esp), %eax	/* load closure */ 	jmp	L(do_closure_REGISTER) L(UW26):-	# cfi_endproc+	/* cfi_endproc */ ENDF(C(ffi_closure_REGISTER))  /* For STDCALL (and others), we need to pop N bytes of arguments off@@ -475,11 +473,11 @@ 	FFI_HIDDEN(C(ffi_closure_STDCALL)) C(ffi_closure_STDCALL): L(UW27):-	# cfi_startproc+	/* cfi_startproc */ 	_CET_ENDBR 	subl	$closure_FS, %esp L(UW28):-	# cfi_def_cfa_offset(closure_FS + 4)+	/* cfi_def_cfa_offset(closure_FS + 4) */  	FFI_CLOSURE_SAVE_REGS @@ -570,7 +568,7 @@ 	ud2  L(UW31):-	# cfi_endproc+	/* cfi_endproc */ ENDF(C(ffi_closure_STDCALL))  #if defined(FFI_EXEC_STATIC_TRAMP)@@ -670,14 +668,14 @@ 	FFI_HIDDEN(C(ffi_closure_raw_SYSV)) C(ffi_closure_raw_SYSV): L(UW32):-	# cfi_startproc+	/* cfi_startproc */ 	_CET_ENDBR 	subl	$raw_closure_S_FS, %esp L(UW33):-	# cfi_def_cfa_offset(raw_closure_S_FS + 4)+	/* cfi_def_cfa_offset(raw_closure_S_FS + 4) */ 	movl	%ebx, raw_closure_S_FS-4(%esp) L(UW34):-	# cfi_rel_offset(%ebx, raw_closure_S_FS-4)+	/* cfi_rel_offset(%ebx, raw_closure_S_FS-4) */  	movl	FFI_TRAMPOLINE_SIZE+8(%eax), %edx	/* load cl->user_data */ 	movl	%edx, 12(%esp)@@ -700,7 +698,7 @@ #endif 	movl	raw_closure_S_FS-4(%esp), %ebx L(UW35):-	# cfi_restore(%ebx)+	/* cfi_restore(%ebx) */ 	movl	16(%esp), %eax				/* Optimistic load */ 	jmp	*%ecx @@ -737,17 +735,17 @@ L(e4): 	addl	$raw_closure_S_FS, %esp L(UW36):-	# cfi_adjust_cfa_offset(-raw_closure_S_FS)+	/* cfi_adjust_cfa_offset(-raw_closure_S_FS) */ 	ret L(UW37):-	# cfi_adjust_cfa_offset(raw_closure_S_FS)+	/* cfi_adjust_cfa_offset(raw_closure_S_FS) */ E(L(load_table4), X86_RET_STRUCTPOP) 	addl	$raw_closure_S_FS, %esp L(UW38):-	# cfi_adjust_cfa_offset(-raw_closure_S_FS)+	/* cfi_adjust_cfa_offset(-raw_closure_S_FS) */ 	ret	$4 L(UW39):-	# cfi_adjust_cfa_offset(raw_closure_S_FS)+	/* cfi_adjust_cfa_offset(raw_closure_S_FS) */ E(L(load_table4), X86_RET_STRUCTARG) 	jmp	L(e4) E(L(load_table4), X86_RET_STRUCT_1B)@@ -764,7 +762,7 @@ 	ud2  L(UW40):-	# cfi_endproc+	/* cfi_endproc */ ENDF(C(ffi_closure_raw_SYSV))  #define raw_closure_T_FS	(16+16+8)@@ -774,27 +772,27 @@ 	FFI_HIDDEN(C(ffi_closure_raw_THISCALL)) C(ffi_closure_raw_THISCALL): L(UW41):-	# cfi_startproc+	/* cfi_startproc */ 	_CET_ENDBR 	/* Rearrange the stack such that %ecx is the first argument. 	   This means moving the return address.  */ 	popl	%edx L(UW42):-	# cfi_def_cfa_offset(0)-	# cfi_register(%eip, %edx)+	/* cfi_def_cfa_offset(0) */+	/* cfi_register(%eip, %edx) */ 	pushl	%ecx L(UW43):-	# cfi_adjust_cfa_offset(4)+	/* cfi_adjust_cfa_offset(4) */ 	pushl	%edx L(UW44):-	# cfi_adjust_cfa_offset(4)-	# cfi_rel_offset(%eip, 0)+	/* cfi_adjust_cfa_offset(4) */+	/* cfi_rel_offset(%eip, 0) */ 	subl	$raw_closure_T_FS, %esp L(UW45):-	# cfi_adjust_cfa_offset(raw_closure_T_FS)+	/* cfi_adjust_cfa_offset(raw_closure_T_FS) */ 	movl	%ebx, raw_closure_T_FS-4(%esp) L(UW46):-	# cfi_rel_offset(%ebx, raw_closure_T_FS-4)+	/* cfi_rel_offset(%ebx, raw_closure_T_FS-4) */  	movl	FFI_TRAMPOLINE_SIZE+8(%eax), %edx	/* load cl->user_data */ 	movl	%edx, 12(%esp)@@ -817,7 +815,7 @@ #endif 	movl	raw_closure_T_FS-4(%esp), %ebx L(UW47):-	# cfi_restore(%ebx)+	/* cfi_restore(%ebx) */ 	movl	16(%esp), %eax				/* Optimistic load */ 	jmp	*%ecx @@ -854,18 +852,18 @@ L(e5): 	addl	$raw_closure_T_FS, %esp L(UW48):-	# cfi_adjust_cfa_offset(-raw_closure_T_FS)+	/* cfi_adjust_cfa_offset(-raw_closure_T_FS) */ 	/* Remove the extra %ecx argument we pushed.  */ 	ret	$4 L(UW49):-	# cfi_adjust_cfa_offset(raw_closure_T_FS)+	/* cfi_adjust_cfa_offset(raw_closure_T_FS) */ E(L(load_table5), X86_RET_STRUCTPOP) 	addl	$raw_closure_T_FS, %esp L(UW50):-	# cfi_adjust_cfa_offset(-raw_closure_T_FS)+	/* cfi_adjust_cfa_offset(-raw_closure_T_FS) */ 	ret	$8 L(UW51):-	# cfi_adjust_cfa_offset(raw_closure_T_FS)+	/* cfi_adjust_cfa_offset(raw_closure_T_FS) */ E(L(load_table5), X86_RET_STRUCTARG) 	jmp	L(e5) E(L(load_table5), X86_RET_STRUCT_1B)@@ -882,7 +880,7 @@ 	ud2  L(UW52):-	# cfi_endproc+	/* cfi_endproc */ ENDF(C(ffi_closure_raw_THISCALL))  #endif /* !FFI_NO_RAW_API */@@ -961,6 +959,10 @@  #ifdef HAVE_AS_X86_PCREL # define PCREL(X)	X-.+#elif defined(__clang__)+/* clang's integrated assembler rejects the X@rel variant (#947); the+   pc-relative label difference works wherever @rel would.  */+# define PCREL(X)	X - . #else # define PCREL(X)	X@rel #endif
src/x86/sysv_intel.S view
@@ -394,9 +394,7 @@ L(UW25): 	/* cfi_def_cfa_offset(closure_FS + 4) */ 	FFI_CLOSURE_SAVE_REGS-	mov	ecx, [esp+closure_FS-4] 	/* load retaddr */-	mov	eax, [esp+closure_FS]		/* load closure */-	mov	[esp+closure_FS], ecx		/* move retaddr */+	mov	eax, [esp+closure_FS-4] 	/* load closure */ 	jmp	L(do_closure_REGISTER) L(UW26): 	/* cfi_endproc */@@ -776,6 +774,10 @@ #endif  #ifdef HAVE_AS_X86_PCREL+# define PCREL(X)	X - .+#elif defined(__clang__)+/* clang's integrated assembler rejects the X@rel variant (#947); the+   pc-relative label difference works wherever @rel would.  */ # define PCREL(X)	X - . #else # define PCREL(X)	X@rel
src/x86/unix64.S view
@@ -201,6 +201,13 @@ E(L(store_table), UNIX64_RET_ST_RAX_RDX) 	_CET_ENDBR 	movq	%rdx, 8(%rsi)+	jmp	L(s2)+E(L(store_table), UNIX64_RET_XMM128)+	_CET_ENDBR+	movups	%xmm0, (%rdi)+	ret++	.balign 8 L(s2): 	movq	%rax, (%rsi) 	shrl	$UNIX64_SIZE_SHIFT, %ecx@@ -386,6 +393,13 @@ E(L(load_table), UNIX64_RET_ST_RAX_RDX) 	_CET_ENDBR 	movq	8(%rsi), %rdx+	jmp	L(l2)+E(L(load_table), UNIX64_RET_XMM128)+	_CET_ENDBR+	movups	(%rsi), %xmm0+	ret++	.balign	8 L(l2): 	movq	(%rsi), %rax 	ret@@ -558,6 +572,10 @@ #endif  #ifdef HAVE_AS_X86_PCREL+# define PCREL(X)	X - .+#elif defined(__clang__)+/* clang's integrated assembler rejects the X@rel variant (#947); the+   pc-relative label difference works wherever @rel would.  */ # define PCREL(X)	X - . #else # define PCREL(X)	X@rel
src/x86/win64.S view
@@ -145,6 +145,12 @@ 	epilogue E(0b, FFI_TYPE_COMPLEX) 	call	PLT(C(abort))+E(0b, FFI_TYPE_UINT128)+	movdqu	%xmm0, (%r8)+	epilogue+E(0b, FFI_TYPE_SINT128)+	movdqu	%xmm0, (%r8)+	epilogue E(0b, FFI_TYPE_SMALL_STRUCT_1B) 	movb	%al, (%r8) 	epilogue
src/x86/win64_intel.S view
@@ -146,6 +146,12 @@ 	epilogue E(0b, FFI_TYPE_COMPLEX) 	call	PLT(C(abort))+E(0b, FFI_TYPE_UINT128)+	movdqu	xmmword ptr [r8], xmm0+	epilogue+E(0b, FFI_TYPE_SINT128)+	movdqu	xmmword ptr [r8], xmm0+	epilogue E(0b, FFI_TYPE_SMALL_STRUCT_1B) 	mov byte ptr [r8], al ; movb	%al, (%r8) 	epilogue