#! /bin/sh
# Guess values for system-dependent variables and create Makefiles.
# Generated by GNU Autoconf 2.71 for The Glorious Glasgow Haskell Compilation System 9.0.2.
#
# Report bugs to <glasgow-haskell-bugs@haskell.org>.
#
#
# Copyright (C) 1992-1996, 1998-2017, 2020-2021 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
as_nop=:
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 $as_nop
  case `(set -o) 2>/dev/null` in #(
  *posix*) :
    set -o posix ;; #(
  *) :
     ;;
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="as_nop=:
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 \$as_nop
  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 \$as_nop
  exitcode=1; echo positional parameters were not saved.
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"
  if (eval "$as_required") 2>/dev/null
then :
  as_have_required=yes
else $as_nop
  as_have_required=no
fi
  if test x$as_have_required = xyes && (eval "$as_suggested") 2>/dev/null
then :

else $as_nop
  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 $as_nop
  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
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: glasgow-haskell-bugs@haskell.org about your system,
$0: 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_nop
# ---------
# Do nothing but, unlike ":", preserve the value of $?.
as_fn_nop ()
{
  return $?
}
as_nop=as_fn_nop

# 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 $as_nop
  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_nop
  as_fn_arith ()
  {
    as_val=`expr "$@" || test $? -eq 1`
  }
fi # as_fn_arith

# as_fn_nop
# ---------
# Do nothing but, unlike ":", preserve the value of $?.
as_fn_nop ()
{
  return $?
}
as_nop=as_fn_nop

# 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 '
      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_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'"


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='The Glorious Glasgow Haskell Compilation System'
PACKAGE_TARNAME='ghc-9.0.2'
PACKAGE_VERSION='9.0.2'
PACKAGE_STRING='The Glorious Glasgow Haskell Compilation System 9.0.2'
PACKAGE_BUGREPORT='glasgow-haskell-bugs@haskell.org'
PACKAGE_URL=''

ac_unique_file="mk/config.mk.in"
# 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_func_c_list=
ac_subst_vars='LTLIBOBJS
LIBOBJS
MakeCmd
LIBRARY_ghc_VERSION
LIBRARY_ghc_compact_VERSION
LIBRARY_ghc_prim_VERSION
LIBRARY_array_VERSION
LIBRARY_template_haskell_VERSION
LIBRARY_Cabal_VERSION
LIBRARY_base_VERSION
BUILD_SPHINX_PDF
BUILD_SPHINX_HTML
BUILD_MAN
CabalHaveLibNuma
UseLibNuma
LibNumaIncludeDir
LibNumaLibDir
CabalHaveLibdw
UseLibdw
LibdwIncludeDir
LibdwLibDir
UseLibffiForAdjustors
CabalLibffiAdjustors
CabalNeedLibpthread
CabalHaveLibrt
CabalLeadingUnderscore
LeadingUnderscore
ALLOCA
CabalHaveLibdl
FFILibDir
FFIIncludeDir
CabalUseSystemLibFFI
UseSystemLibFFI
CabalHaveLibbfd
CabalHaveLibm
CabalMingwex
HaveLibMingwEx
TargetWordBigEndian
TargetWordSize
Cabal64bit
AlexVersion
AlexCmd
ALEX
HappyVersion
HappyCmd
HAPPY
GhcPkgCmd
PythonCmd
PYTHON
MAKEINFO
MAKEINDEX
XELATEX
SPHINXBUILD
HSCOLOUR
HaveDtrace
DtraceCmd
AutoreconfCmd
PatchCmd
XzCmd
GzipCmd
Bzip2Cmd
TarCmd
TimeCmd
SedCmd
SettingsUseDistroMINGW
SettingsOptCommand
SettingsLlcCommand
SettingsClangCommand
SettingsTouchCommand
SettingsLibtoolCommand
SettingsWindresCommand
SettingsDllWrapCommand
SettingsInstallNameToolCommand
SettingsOtoolCommand
SettingsRanlibCommand
SettingsArCommand
SettingsMergeObjectsFlags
SettingsMergeObjectsCommand
SettingsLdFlags
SettingsLdCommand
SettingsCCompilerSupportsNoPie
SettingsCCompilerLinkFlags
SettingsCxxCompilerFlags
SettingsCCompilerFlags
SettingsHaskellCPPFlags
SettingsHaskellCPPCommand
SettingsCCompilerCommand
LN_S
RANLIB_CMD
REAL_RANLIB_CMD
ArSupportsAtFile
ArArgs
ArCmd
ArIsGNUAr
fp_prog_ar
INSTALL_DATA
INSTALL_SCRIPT
INSTALL_PROGRAM
ContextDiffCmd
TargetHasGnuNonexecStack
TargetHasIdentDirective
TargetHasSubsectionsViaSymbols
HaskellTargetOs
HaskellTargetArch
HaskellHostOs
HaskellHostArch
ARM_ISA
CONF_HC_OPTS_STAGE2
CONF_HC_OPTS_STAGE1
CONF_HC_OPTS_STAGE0
CONF_CPP_OPTS_STAGE2
CONF_CPP_OPTS_STAGE1
CONF_CPP_OPTS_STAGE0
CONF_LD_LINKER_OPTS_STAGE2
CONF_LD_LINKER_OPTS_STAGE1
CONF_LD_LINKER_OPTS_STAGE0
CONF_GCC_LINKER_OPTS_STAGE2
CONF_GCC_LINKER_OPTS_STAGE1
CONF_GCC_LINKER_OPTS_STAGE0
CONF_CC_OPTS_STAGE2
CONF_CC_OPTS_STAGE1
CONF_CC_OPTS_STAGE0
CcLlvmBackend
GccExtraViaCOpts
GccVersion
OptCmd
ac_ct_OPT
OPT
LlcCmd
AWK
ac_ct_LLC
LLC
ClangCmd
CLANG
LlvmMaxVersion
LlvmMinVersion
InstallNameToolCmd
INSTALL_NAME_TOOL
OtoolCmd
OTOOL
LibtoolCmd
LIBTOOL
StripCmd
STRIP
RanlibCmd
ObjdumpCmd
NmCmd
LdHasFilelist
LdHasNoCompactUnwind
LdHasBuildId
LdIsGNULd
LdCmd
MergeObjsArgs
MergeObjsCmd
AS
READELF
TmpLd
HaskellCPPArgs
HaskellCPPCmd
CPP
OBJEXT
EXEEXT
ac_ct_CC
CPPFLAGS
LDFLAGS
CFLAGS
EnableDistroToolchain
TargetPlatformFull
CrossCompilePrefix
CrossCompiling
CURSES_LIB_DIRS
GMP_PREFER_FRAMEWORK
GMP_FORCE_INTREE
GMP_LIB_DIRS
GMP_INCLUDE_DIRS
ICONV_LIB_DIRS
ICONV_INCLUDE_DIRS
HAVE_GENLIB
GenlibCmd
WindresCmd
DllWrapCmd
Windres
DllWrap
OBJDUMP
RANLIB
AR
LD
NM
CC
Genlib
hardtop
TargetHasRTSLinker
TablesNextToCode
Unregisterised
SOLARIS_BROKEN_SHLD
soext_target
soext_host
exeext_target
exeext_host
TargetVendor_CPP
BuildVendor_CPP
HostVendor_CPP
LLVMTarget_CPP
TargetOS_CPP
BuildOS_CPP
HostOS_CPP
TargetArch_CPP
BuildArch_CPP
HostArch_CPP
TargetPlatform_CPP
BuildPlatform_CPP
HostPlatform_CPP
TargetPlatform
HostPlatform
BuildPlatform
target_os
target_vendor
target_cpu
target
host_os
host_vendor
host_cpu
host
build_os
build_vendor
build_cpu
build
GhcThreadedRts
SUPPORT_SMP_STAGE0
ArSupportsAtFile_STAGE0
AR_OPTS_STAGE0
GhcPatchLevel
GhcMinVersion
GhcMajVersion
GhcVersion
RTS_WAYS_STAGE0
AR_STAGE0
LD_STAGE0
CC_STAGE0
WithGhc
GHC
release
ProjectVersionMunged
ProjectPatchLevel
ProjectPatchLevel2
ProjectPatchLevel1
ProjectVersionInt
ProjectGitCommitId
ProjectVersion
ProjectName
SortCmd
fp_prog_sort
FindCmd
fp_prog_find
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'
ac_subst_files=''
ac_user_opts='
enable_option_checking
with_ghc
enable_bootstrap_with_devel_snapshot
enable_tarballs_autodownload
enable_distro_toolchain
enable_native_io_manager
enable_unregisterised
enable_tables_next_to_code
with_iconv_includes
with_iconv_libraries
with_gmp_includes
with_gmp_libraries
with_intree_gmp
with_gmp_framework_preferred
with_curses_libraries
with_gcc
with_clang
with_hs_cpp
with_hs_cpp_flags
enable_ld_override
enable_dtrace
enable_largefile
enable_bfd_debug
with_system_libffi
with_ffi_includes
with_ffi_libraries
enable_large_address_space
enable_libffi_adjustors
with_libdw_libraries
with_libdw_includes
enable_dwarf_unwind
with_libnuma_libraries
with_libnuma_includes
enable_numa
'
      ac_precious_vars='build_alias
host_alias
target_alias
GHC
CC_STAGE0
LD_STAGE0
AR_STAGE0
RTS_WAYS_STAGE0
CC
CFLAGS
LDFLAGS
LIBS
CPPFLAGS
CPP
LD
CLANG
LLC
OPT
HAPPY
ALEX'


# 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 The Glorious Glasgow Haskell Compilation System 9.0.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/ghc-9.0.2]
  --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 The Glorious Glasgow Haskell Compilation System 9.0.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]
  --enable-bootstrap-with-devel-snapshot
                          Allow bootstrapping using a development snapshot of
                          GHC. This is not guaranteed to work.
  --enable-tarballs-autodownload
                          Automatically download Windows distribution binaries
                          if needed.
  --enable-distro-toolchain
                          Do not use bundled Windows toolchain binaries.
  --enable-native-io-manager
                          Enable the native I/O manager by default.
  --enable-unregisterised Build a toolchain with the unregisterised ABI
                          (disabled by default on platforms with registerised
                          support)
  --enable-tables-next-to-code
                          Build a tool chain with info tables laid out next to
                          code (enabled by default when using the registerised
                          ABI, on platforms that support it)
  --disable-ld-override   Prevent GHC from overriding the default linker used
                          by gcc. If ld-override is enabled GHC will try to
                          tell gcc to use whichever linker is selected by the
                          LD environment variable. [default=override enabled]
  --enable-dtrace         Enable DTrace
  --disable-largefile     omit support for large files
  --enable-bfd-debug      Enable symbol resolution for -debug rts ('+RTS -Di')
                          via binutils' libbfd [default=no]
  --enable-large-address-space
                          Use a single large address space on 64 bit systems
                          (enabled by default on 64 bit platforms)
  --enable-libffi-adjustors
                          Force use of libffi for adjustors, even on platforms
                          which have support for more efficient, native
                          adjustors.
  --enable-dwarf-unwind   Enable DWARF unwinding support in the runtime system
                          via elfutils' libdw [default=no]
  --enable-numa           Enable NUMA memory policy and thread affinity
                          support in the runtime system via numactl's libnuma
                          [default=auto]

Optional Packages:
  --with-PACKAGE[=ARG]    use PACKAGE [ARG=yes]
  --without-PACKAGE       do not use PACKAGE (same as --with-PACKAGE=no)
  --with-ghc=ARG          Use ARG as the path to ghc (obsolete, use GHC=ARG
                          instead) [default=autodetect]
  --with-iconv-includes   directory containing iconv.h
  --with-iconv-libraries  directory containing iconv library
  --with-gmp-includes     directory containing gmp.h
  --with-gmp-libraries    directory containing gmp library
  --with-intree-gmp       force using the in-tree GMP
  --with-gmp-framework-preferred
                          on OSX, prefer the GMP framework to the gmp lib
  --with-curses-libraries directory containing curses libraries
  --with-gcc=ARG          Use ARG as the path to gcc (obsolete, use CC=ARG
                          instead) [default=autodetect]
  --with-clang=ARG        Use ARG as the path to clang (obsolete, use CC=ARG
                          instead) [default=autodetect]
  --with-hs-cpp=ARG       Path to the (C) preprocessor for Haskell files
                          [default=autodetect]
  --with-hs-cpp-flags=ARG Flags to the (C) preprocessor for Haskell files
                          [default=autodetect]
  --with-system-libffi    Use system provided libffi for RTS [default=no]

  --with-ffi-includes=ARG Find includes for libffi in ARG [default=system
                          default]

  --with-ffi-libraries=ARG
                          Find libffi in ARG [default=system default]

  --with-libdw-libraries=ARG
                          Find libraries for libdw in ARG [default=system
                          default]

  --with-libdw-includes=ARG
                          Find includes for libdw in ARG [default=system
                          default]

  --with-libnuma-libraries=ARG
                          Find libraries for libnuma in ARG [default=system
                          default]

  --with-libnuma-includes=ARG
                          Find includes for libnuma in ARG [default=system
                          default]


Some influential environment variables:
  GHC         Use as the path to GHC [default=autodetect]
  CC_STAGE0   C compiler command (bootstrap)
  LD_STAGE0   Linker command (bootstrap)
  AR_STAGE0   Archive command (bootstrap)
  RTS_WAYS_STAGE0
              RTS ways
  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>
  CPP         C preprocessor
  LD          Use as the path to ld. See also --disable-ld-override.
  CLANG       Use as the path to clang [default=autodetect]
  LLC         Use as the path to LLVM's llc [default=autodetect]
  OPT         Use as the path to LLVM's opt [default=autodetect]
  HAPPY       Use as the path to happy [default=autodetect]
  ALEX        Use as the path to alex [default=autodetect]

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 <glasgow-haskell-bugs@haskell.org>.
_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
The Glorious Glasgow Haskell Compilation System configure 9.0.2
generated by GNU Autoconf 2.71

Copyright (C) 2021 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 $as_nop
  printf "%s\n" "$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_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 $as_nop
  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 $as_nop
  eval "$3=no"
fi
rm -f core conftest.err conftest.$ac_objext conftest.beam conftest.$ac_ext
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_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\""
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_c_preproc_warn_flag$ac_c_werror_flag" ||
	 test ! -s conftest.err
       }
then :
  ac_retval=0
else $as_nop
  printf "%s\n" "$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_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 $as_nop
  printf "%s\n" "$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_check_decl LINENO SYMBOL VAR INCLUDES EXTRA-OPTIONS FLAG-VAR
# ------------------------------------------------------------------
# Tests whether SYMBOL is declared in INCLUDES, setting cache variable VAR
# accordingly. Pass EXTRA-OPTIONS to the compiler, using FLAG-VAR.
ac_fn_check_decl ()
{
  as_lineno=${as_lineno-"$1"} as_lineno_stack=as_lineno_stack=$as_lineno_stack
  as_decl_name=`echo $2|sed 's/ *(.*//'`
  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking whether $as_decl_name is declared" >&5
printf %s "checking whether $as_decl_name is declared... " >&6; }
if eval test \${$3+y}
then :
  printf %s "(cached) " >&6
else $as_nop
  as_decl_use=`echo $2|sed -e 's/(/((/' -e 's/)/) 0&/' -e 's/,/) 0& (/g'`
  eval ac_save_FLAGS=\$$6
  as_fn_append $6 " $5"
  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
/* end confdefs.h.  */
$4
int
main (void)
{
#ifndef $as_decl_name
#ifdef __cplusplus
  (void) $as_decl_use;
#else
  (void) $as_decl_name;
#endif
#endif

  ;
  return 0;
}
_ACEOF
if ac_fn_c_try_compile "$LINENO"
then :
  eval "$3=yes"
else $as_nop
  eval "$3=no"
fi
rm -f core conftest.err conftest.$ac_objext conftest.beam conftest.$ac_ext
  eval $6=\$ac_save_FLAGS

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_check_decl

# 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
  { 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 $as_nop
  eval "$3=no"
  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
/* end confdefs.h.  */
$4
int
main (void)
{
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 (void)
{
if (sizeof (($2)))
	    return 0;
  ;
  return 0;
}
_ACEOF
if ac_fn_c_try_compile "$LINENO"
then :

else $as_nop
  eval "$3=yes"
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
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_type

# 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 $as_nop
  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
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 $as_nop
  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.beam conftest.$ac_ext
  done
else $as_nop
  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 $as_nop
  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.beam conftest.$ac_ext
  done
else $as_nop
  ac_lo= ac_hi=
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
# 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 $as_nop
  as_fn_arith '(' $ac_mid ')' + 1 && ac_lo=$as_val
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 $as_nop
  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_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 $as_nop
  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.  */

#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 ();
/* 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 $as_nop
  eval "$3=no"
fi
rm -f core conftest.err conftest.$ac_objext conftest.beam \
    conftest$ac_exeext conftest.$ac_ext
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_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 The Glorious Glasgow Haskell Compilation System $as_me 9.0.2, which was
generated by GNU Autoconf 2.71.  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 (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 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

#include <stdbool.h>
extern int puts (const char *);
extern int printf (const char *, ...);
extern int dprintf (int, const char *, ...);
extern void *malloc (size_t);

// 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)
{
  // See if C++-style comments work.
  // 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;

  // 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;
}
"

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"
as_fn_append ac_header_c_list " wchar.h wchar_h HAVE_WCHAR_H"
as_fn_append ac_header_c_list " minix/config.h minix_config_h HAVE_MINIX_CONFIG_H"
as_fn_append ac_header_c_list " sys/time.h sys_time_h HAVE_SYS_TIME_H"
as_fn_append ac_header_c_list " vfork.h vfork_h HAVE_VFORK_H"
as_fn_append ac_func_c_list " fork HAVE_FORK"
as_fn_append ac_func_c_list " vfork HAVE_VFORK"

# Auxiliary files required by this configure script.
ac_aux_files="install-sh 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 $as_nop
  as_fn_error $? "cannot find required auxiliary files:$ac_missing_aux_files" "$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.
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



# Set this to YES for a released version, otherwise NO
: ${RELEASE=YES}

# The primary version (e.g. 7.5, 7.4.1) is set in the AC_INIT line
# above.  If this is not a released version, then we will append the
# date to the version number (e.g. 7.4.20111220).  The date is
# constructed by finding the date of the most recent patch in the
# git repository.  If this is a source distribution (not a git
# checkout), then we ship a file 'VERSION' containing the full version
# when the source distribution was created.



if test ! -f mk/config.h.in; then
   echo "mk/config.h.in doesn't exist: perhaps you haven't run 'python3 boot'?"
   exit 1
fi

test -n "$target_alias" && ac_tool_prefix=$target_alias-


for ac_prog in gfind find
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_path_fp_prog_find+y}
then :
  printf %s "(cached) " >&6
else $as_nop
  case $fp_prog_find in
  [\\/]* | ?:[\\/]*)
  ac_cv_path_fp_prog_find="$fp_prog_find" # 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_fp_prog_find="$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

  ;;
esac
fi
fp_prog_find=$ac_cv_path_fp_prog_find
if test -n "$fp_prog_find"; then
  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $fp_prog_find" >&5
printf "%s\n" "$fp_prog_find" >&6; }
else
  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
printf "%s\n" "no" >&6; }
fi


  test -n "$fp_prog_find" && break
done
test -n "$fp_prog_find" || fp_prog_find="find"

echo foo > conftest.txt
$fp_prog_find conftest.txt -print > conftest.out 2>&1
if grep '^conftest.txt$' conftest.out > /dev/null 2>&1 ; then
  # OK, looks like a real "find".
  FindCmd="$fp_prog_find"
else
  # Found a poor WinDoze version of "find", ignore it.
  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: WARNING: $fp_prog_find looks like a non-*nix find, ignoring it" >&5
printf "%s\n" "$as_me: WARNING: $fp_prog_find looks like a non-*nix find, ignoring it" >&2;}
  # Extract the first word of "find", so it can be a program name with args.
set dummy find; 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_FindCmd+y}
then :
  printf %s "(cached) " >&6
else $as_nop
  if test -n "$FindCmd"; then
  ac_cv_prog_FindCmd="$FindCmd" # 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" = "$fp_prog_find"; then
       ac_prog_rejected=yes
       continue
     fi
    ac_cv_prog_FindCmd="$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

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_FindCmd
  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 FindCmd to just the basename; use the full file name.
    shift
    ac_cv_prog_FindCmd="$as_dir$ac_word${1+' '}$@"
  fi
fi
fi
fi
FindCmd=$ac_cv_prog_FindCmd
if test -n "$FindCmd"; then
  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $FindCmd" >&5
printf "%s\n" "$FindCmd" >&6; }
else
  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
printf "%s\n" "no" >&6; }
fi


fi
rm -f conftest.txt conftest.out

# Extract the first word of "sort", so it can be a program name with args.
set dummy sort; 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_fp_prog_sort+y}
then :
  printf %s "(cached) " >&6
else $as_nop
  case $fp_prog_sort in
  [\\/]* | ?:[\\/]*)
  ac_cv_path_fp_prog_sort="$fp_prog_sort" # 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_fp_prog_sort="$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

  ;;
esac
fi
fp_prog_sort=$ac_cv_path_fp_prog_sort
if test -n "$fp_prog_sort"; then
  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $fp_prog_sort" >&5
printf "%s\n" "$fp_prog_sort" >&6; }
else
  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
printf "%s\n" "no" >&6; }
fi


echo conwip > conftest.txt
$fp_prog_sort -f conftest.txt > conftest.out 2>&1
if grep 'conwip' conftest.out > /dev/null 2>&1 ; then
  # The goods
  SortCmd="$fp_prog_sort"
else
  # Summink else..pick next one.
  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: WARNING: $fp_prog_sort looks like a non-*nix sort, ignoring it" >&5
printf "%s\n" "$as_me: WARNING: $fp_prog_sort looks like a non-*nix sort, ignoring it" >&2;}
  # Extract the first word of "sort", so it can be a program name with args.
set dummy sort; 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_SortCmd+y}
then :
  printf %s "(cached) " >&6
else $as_nop
  if test -n "$SortCmd"; then
  ac_cv_prog_SortCmd="$SortCmd" # 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" = "$fp_prog_sort"; then
       ac_prog_rejected=yes
       continue
     fi
    ac_cv_prog_SortCmd="$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

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_SortCmd
  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 SortCmd to just the basename; use the full file name.
    shift
    ac_cv_prog_SortCmd="$as_dir$ac_word${1+' '}$@"
  fi
fi
fi
fi
SortCmd=$ac_cv_prog_SortCmd
if test -n "$SortCmd"; then
  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $SortCmd" >&5
printf "%s\n" "$SortCmd" >&6; }
else
  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
printf "%s\n" "no" >&6; }
fi


fi
rm -f conftest.txt conftest.out



    if test "$RELEASE" = "NO"; then
        { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for GHC version date" >&5
printf %s "checking for GHC version date... " >&6; }
        if test -f VERSION_DATE; then
            PACKAGE_VERSION=${PACKAGE_VERSION}.`cat VERSION_DATE`
            { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: given $PACKAGE_VERSION" >&5
printf "%s\n" "given $PACKAGE_VERSION" >&6; }
        elif test -e .git; then
                        ver_posixtime=`git log -1 --pretty=format:%ct`
            ver_date=`perl -MPOSIX -e "print strftime('%Y%m%d', gmtime($ver_posixtime));"`
            if echo $ver_date | grep '^[0-9][0-9][0-9][0-9][0-9][0-9][0-9][0-9]$' 2>&1 >/dev/null; then true; else
                                as_fn_error $? "failed to detect version date: check that git and perl are in your path" "$LINENO" 5
            fi
            PACKAGE_VERSION=${PACKAGE_VERSION}.$ver_date
            { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: inferred $PACKAGE_VERSION" >&5
printf "%s\n" "inferred $PACKAGE_VERSION" >&6; }
        elif test -f VERSION; then
            PACKAGE_VERSION=`cat VERSION`
            { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: given $PACKAGE_VERSION" >&5
printf "%s\n" "given $PACKAGE_VERSION" >&6; }
        else
            { printf "%s\n" "$as_me:${as_lineno-$LINENO}: WARNING: cannot determine snapshot version: no .git directory and no VERSION file" >&5
printf "%s\n" "$as_me: WARNING: cannot determine snapshot version: no .git directory and no VERSION file" >&2;}
                                                                                                            PACKAGE_VERSION=${PACKAGE_VERSION}.`date +%Y%m%d`
        fi
    fi

    { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for GHC Git commit id" >&5
printf %s "checking for GHC Git commit id... " >&6; }
    if test -e .git; then
        git_commit_id=`git rev-parse HEAD`
        if test -n "$git_commit_id" 2>&1 >/dev/null; then true; else
            as_fn_error $? "failed to detect revision: check that git is in your path" "$LINENO" 5
        fi
        PACKAGE_GIT_COMMIT_ID=$git_commit_id
        { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: inferred $PACKAGE_GIT_COMMIT_ID" >&5
printf "%s\n" "inferred $PACKAGE_GIT_COMMIT_ID" >&6; }
    elif test -f GIT_COMMIT_ID; then
        PACKAGE_GIT_COMMIT_ID=`cat GIT_COMMIT_ID`
        { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: given $PACKAGE_GIT_COMMIT_ID" >&5
printf "%s\n" "given $PACKAGE_GIT_COMMIT_ID" >&6; }
    else
        { printf "%s\n" "$as_me:${as_lineno-$LINENO}: WARNING: cannot determine snapshot revision: no .git directory and no 'GIT_COMMIT_ID' file" >&5
printf "%s\n" "$as_me: WARNING: cannot determine snapshot revision: no .git directory and no 'GIT_COMMIT_ID' file" >&2;}
        PACKAGE_GIT_COMMIT_ID="0000000000000000000000000000000000000000"
    fi


    # Some renamings
    ProjectName=$PACKAGE_NAME

    ProjectVersion=$PACKAGE_VERSION

    ProjectGitCommitId=$PACKAGE_GIT_COMMIT_ID


    # Split PACKAGE_VERSION into (possibly empty) parts
    VERSION_MAJOR=`echo $PACKAGE_VERSION | sed 's/^\([^.]*\)\(\.\{0,1\}\(.*\)\)$/\1'/`
    VERSION_TMP=`echo $PACKAGE_VERSION | sed 's/^\([^.]*\)\(\.\{0,1\}\(.*\)\)$/\3'/`
    VERSION_MINOR=`echo $VERSION_TMP | sed 's/^\([^.]*\)\(\.\{0,1\}\(.*\)\)$/\1'/`
    ProjectPatchLevel=`echo $VERSION_TMP | sed 's/^\([^.]*\)\(\.\{0,1\}\(.*\)\)$/\3'/`

    # Calculate project version as an integer, using 2 digits for minor version
    case $VERSION_MINOR in
      ?) ProjectVersionInt=${VERSION_MAJOR}0${VERSION_MINOR} ;;
      ??) ProjectVersionInt=${VERSION_MAJOR}${VERSION_MINOR} ;;
      *) as_fn_error $? "bad minor version in $PACKAGE_VERSION" "$LINENO" 5 ;;
    esac


    # The project patchlevel is zero unless stated otherwise
    test -z "$ProjectPatchLevel" && ProjectPatchLevel=0

    # Save split version of ProjectPatchLevel
    ProjectPatchLevel1=`echo $ProjectPatchLevel | sed 's/^\([^.]*\)\(\.\{0,1\}\(.*\)\)$/\1/'`
    ProjectPatchLevel2=`echo $ProjectPatchLevel | sed 's/^\([^.]*\)\(\.\{0,1\}\(.*\)\)$/\3/'`




    # Remove dots from the patch level; this allows us to have versions like 6.4.1.20050508
    ProjectPatchLevel=`echo $ProjectPatchLevel | sed 's/\.//'`



    # The version of the GHC package changes every day, since the
    # patchlevel is the current date.  We don't want to force
    # recompilation of the entire compiler when this happens, so for
    # GHC HEAD we omit the patchlevel from the package version number.
    #
    # The ProjectPatchLevel1 > 20000000 iff GHC HEAD. If it's for a stable
    # release like 7.10.1 or for a release candidate such as 7.10.1.20141224
    # then we don't omit the patchlevel components.

    ProjectVersionMunged="$ProjectVersion"
    if test "$ProjectPatchLevel1" -gt 20000000; then
      ProjectVersionMunged="${VERSION_MAJOR}.${VERSION_MINOR}"
    fi



# Hmmm, we fix the RPM release number to 1 here... Is this convenient?
release=1


# First off, a distrib sanity check..




# -------------------------------------------------------------------------
# Prepare to generate the following header files
#
#
ac_config_headers="$ac_config_headers mk/config.h"


# No, semi-sadly, we don't do `--srcdir'...
if test x"$srcdir" != 'x.' ; then
    echo "This configuration does not support the \`--srcdir' option.."
    exit 1
fi




# Extract the first word of "ghc", so it can be a program name with args.
set dummy ghc; 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_GHC+y}
then :
  printf %s "(cached) " >&6
else $as_nop
  case $GHC in
  [\\/]* | ?:[\\/]*)
  ac_cv_path_GHC="$GHC" # 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_GHC="$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

  ;;
esac
fi
GHC=$ac_cv_path_GHC
if test -n "$GHC"; then
  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $GHC" >&5
printf "%s\n" "$GHC" >&6; }
else
  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
printf "%s\n" "no" >&6; }
fi



# Check whether --with-ghc was given.
if test ${with_ghc+y}
then :
  withval=$with_ghc; as_fn_error $? "--with-ghc=$withval is obsolete (use './configure GHC=$withval' or 'GHC=$withval ./configure' instead)" "$LINENO" 5
fi

WithGhc=$GHC


# Check whether --enable-bootstrap-with-devel-snapshot was given.
if test ${enable_bootstrap_with_devel_snapshot+y}
then :
  enableval=$enable_bootstrap_with_devel_snapshot; EnableBootstrapWithDevelSnaphost=YES
else $as_nop
  EnableBootstrapWithDevelSnaphost=NO

fi


# Check whether --enable-tarballs-autodownload was given.
if test ${enable_tarballs_autodownload+y}
then :
  enableval=$enable_tarballs_autodownload; TarballsAutodownload=YES
else $as_nop
  TarballsAutodownload=NO

fi


# Check whether --enable-distro-toolchain was given.
if test ${enable_distro_toolchain+y}
then :
  enableval=$enable_distro_toolchain; EnableDistroToolchain=YES
else $as_nop
  EnableDistroToolchain=NO

fi


if test "$EnableDistroToolchain" = "YES"; then
  TarballsAutodownload=NO
fi

# Check whether --enable-native-io-manager was given.
if test ${enable_native_io_manager+y}
then :
  enableval=$enable_native_io_manager; EnableNativeIOManager=YES
else $as_nop
  EnableNativeIOManager=NO

fi


if test "$EnableNativeIOManager" = "YES"; then

printf "%s\n" "#define DEFAULT_NATIVE_IO_MANAGER 1" >>confdefs.h


fi







if test "$WithGhc" != ""; then
  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking version of ghc" >&5
printf %s "checking version of ghc... " >&6; }
 "${WithGhc-ghc}" --version > conftestghc 2>&1
  cat conftestghc >&5
#Useless Use Of cat award...
  fptools_version_of_ghc=`cat conftestghc | sed -n -e 's/, patchlevel *\([0-9]\)/.\1/;s/.* version \([0-9][0-9.]*\).*/\1/p'`
  rm -fr conftest*
  if test "$fptools_version_of_ghc" = ""
  then
    fptools_version_of_ghc='unknown'
  fi
fptools_version_of_ghc_major=`echo $fptools_version_of_ghc | sed -e 's/^\([0-9]\).*/\1/'`
fptools_version_of_ghc_minor=`echo $fptools_version_of_ghc | sed -e 's/^[0-9]\.\([0-9]*\).*/\1/'`
fptools_version_of_ghc_pl=`echo $fptools_version_of_ghc | sed -n -e 's/^[0-9]\.[0-9]*\.\([0-9]*\)/\1/p'`
#
if test "$fptools_version_of_ghc_pl" = ""
then
  fptools_version_of_ghc_all="$fptools_version_of_ghc_major.$fptools_version_of_ghc_minor"
  fptools_version_of_ghc_pl="0"
else
  fptools_version_of_ghc_all="$fptools_version_of_ghc_major.$fptools_version_of_ghc_minor.$fptools_version_of_ghc_pl"
fi
#
GhcVersion="$fptools_version_of_ghc_all"
GhcMajVersion="$fptools_version_of_ghc_major"
GhcMinVersion="$fptools_version_of_ghc_minor"
GhcPatchLevel="$fptools_version_of_ghc_pl"


 { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $fptools_version_of_ghc" >&5
printf "%s\n" "$fptools_version_of_ghc" >&6; }


  if test "$GhcMajVersion" = "unknown" || test "$GhcMinVersion" = "unknown"; then
     as_fn_error $? "Cannot determine the version of $WithGhc.  Is it really GHC?" "$LINENO" 5
  fi

          GhcMinVersion2=`echo "$GhcMinVersion" | sed 's/^\\(.\\)$/0\\1/'`
  GhcCanonVersion="$GhcMajVersion$GhcMinVersion2"

    if test -z "$CC_STAGE0"; then

CC_STAGE0=`"$WithGhc" --info | grep "^ ,(\"C compiler command\"," | sed -e 's/.*","//' -e 's/")$//'`
tmp=${CC_STAGE0#\$topdir/}
if test "${CC_STAGE0}" != "$tmp"
then
    topdir=`"$WithGhc" --print-libdir | sed 's#\\\\#/#g'`
    CC_STAGE0="$topdir/$tmp"
fi


  fi

  if test -z "$LD_STAGE0"; then

LD_STAGE0=`"$WithGhc" --info | grep "^ ,(\"ld command\"," | sed -e 's/.*","//' -e 's/")$//'`
tmp=${LD_STAGE0#\$topdir/}
if test "${LD_STAGE0}" != "$tmp"
then
    topdir=`"$WithGhc" --print-libdir | sed 's#\\\\#/#g'`
    LD_STAGE0="$topdir/$tmp"
fi


  fi
  if test -z "$AR_STAGE0"; then

AR_STAGE0=`"$WithGhc" --info | grep "^ ,(\"ar command\"," | sed -e 's/.*","//' -e 's/")$//'`
tmp=${AR_STAGE0#\$topdir/}
if test "${AR_STAGE0}" != "$tmp"
then
    topdir=`"$WithGhc" --print-libdir | sed 's#\\\\#/#g'`
    AR_STAGE0="$topdir/$tmp"
fi


  fi

AR_OPTS_STAGE0=`"$WithGhc" --info | grep "^ ,(\"ar flags\"," | sed -e 's/.*","//' -e 's/")$//'`
tmp=${AR_OPTS_STAGE0#\$topdir/}
if test "${AR_OPTS_STAGE0}" != "$tmp"
then
    topdir=`"$WithGhc" --print-libdir | sed 's#\\\\#/#g'`
    AR_OPTS_STAGE0="$topdir/$tmp"
fi



ArSupportsAtFile_STAGE0=`"$WithGhc" --info | grep "^ ,(\"ar supports at file\"," | sed -e 's/.*","//' -e 's/")$//'`
tmp=${ArSupportsAtFile_STAGE0#\$topdir/}
if test "${ArSupportsAtFile_STAGE0}" != "$tmp"
then
    topdir=`"$WithGhc" --print-libdir | sed 's#\\\\#/#g'`
    ArSupportsAtFile_STAGE0="$topdir/$tmp"
fi



SUPPORT_SMP_STAGE0=`"$WithGhc" --info | grep "^ ,(\"Support SMP\"," | sed -e 's/.*","//' -e 's/")$//'`
tmp=${SUPPORT_SMP_STAGE0#\$topdir/}
if test "${SUPPORT_SMP_STAGE0}" != "$tmp"
then
    topdir=`"$WithGhc" --print-libdir | sed 's#\\\\#/#g'`
    SUPPORT_SMP_STAGE0="$topdir/$tmp"
fi



RTS_WAYS_STAGE0=`"$WithGhc" --info | grep "^ ,(\"RTS ways\"," | sed -e 's/.*","//' -e 's/")$//'`
tmp=${RTS_WAYS_STAGE0#\$topdir/}
if test "${RTS_WAYS_STAGE0}" != "$tmp"
then
    topdir=`"$WithGhc" --print-libdir | sed 's#\\\\#/#g'`
    RTS_WAYS_STAGE0="$topdir/$tmp"
fi



            if echo ${RTS_WAYS_STAGE0} | grep '.*thr.*' 2>&1 >/dev/null && \
     test "$SUPPORT_SMP_STAGE0" = "YES"
  then
      GhcThreadedRts=YES

  else
      GhcThreadedRts=NO

  fi
fi

if test "$WithGhc" = ""
then
    as_fn_error $? "GHC is required." "$LINENO" 5
fi
fp_version1=$GhcVersion; fp_version2=8.8
fp_save_IFS=$IFS; IFS='.'
while test x"$fp_version1" != x || test x"$fp_version2" != x
do

  set dummy $fp_version1; shift
  fp_num1=""
  test $# = 0 || { fp_num1="$1"; shift; }
  test x"$fp_num1" = x && fp_num1="0"
  fp_version1="$*"

  set dummy $fp_version2; shift
  fp_num2=""
  test $# = 0 || { fp_num2="$1"; shift; }
  test x"$fp_num2" = x && fp_num2="0"
  fp_version2="$*"

  test "$fp_num1" = "$fp_num2" || break;
done
IFS=$fp_save_IFS
if test "$fp_num1" -lt "$fp_num2"
then :
  as_fn_error $? "GHC version 8.8 or later is required to compile GHC." "$LINENO" 5
fi

if test `expr $GhcMinVersion % 2` = "1"
then
    if test "$EnableBootstrapWithDevelSnaphost" = "NO"
    then
        as_fn_error $? "
     $WithGhc is a development snapshot of GHC, version $GhcVersion.
     Bootstrapping using this version of GHC is not supported, and may not
     work.  Use --enable-bootstrap-with-devel-snapshot to try it anyway,
     or 'GHC=' to specify a different GHC to use." "$LINENO" 5
    fi
fi

# GHC is passed to Cabal, so we need a native path
if test "${WithGhc}" != ""
then
    ghc_host_os=`"${WithGhc}" +RTS --info | grep 'Host OS' | sed -e 's/.*, "//' -e 's/")//'`

    if test "$ghc_host_os" = "mingw32"
    then
        if test "${OSTYPE}" = "msys"
        then
            WithGhc=`echo "${WithGhc}" | sed "s#^/\([a-zA-Z]\)/#\1:/#"`
        else
            # Canonicalise to <drive>:/path/to/ghc
            WithGhc=`cygpath -m "${WithGhc}"`
        fi
        echo "GHC path canonicalised to: ${WithGhc}"
    fi
fi


SRC_CC_OPTS="-O"


if test "${WithGhc}" != ""
then
        bootstrap_host=`"${WithGhc}" +RTS --info | grep '^ ,("Host platform"' | sed -e 's/.*, "//' -e 's/")//' | tr -d '\r'`
        bootstrap_target=`"${WithGhc}" +RTS --info | grep '^ ,("Target platform"' | sed -e 's/.*, "//' -e 's/")//' | tr -d '\r'`
        if test "$bootstrap_host" != "$bootstrap_target"
        then
                echo "Bootstrapping GHC is a cross compiler. This probably isn't going to work"
        fi
fi

# We have to run these unconditionally, but we may discard their
# results in the following code



  # 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 $as_nop
  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
{ 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 $as_nop
  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
{ 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 $as_nop
  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
{ 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}-


    # If no argument was given for a configuration variable, then discard
    # the guessed canonical system and use the configuration of the
    # bootstrapping ghc. If an argument was given, map it from gnu format
    # to ghc format.
    #
    # For why we do it this way, see: #3637, #1717, #2951
    #
    # In bindists, we haven't called AC_CANONICAL_{BUILD,HOST,TARGET}
    # so this justs uses $bootstrap_target.

    if test "$build_alias" = ""
    then
        if test "$bootstrap_target" != ""
        then
            build=$bootstrap_target
            echo "Build platform inferred as: $build"
        else
            echo "Can't work out build platform"
            exit 1
        fi

        BuildArch=`echo "$build" | sed 's/-.*//'`
        BuildVendor=`echo "$build" | sed -e 's/.*-\(.*\)-.*/\1/'`
        BuildOS=`echo "$build" | sed 's/.*-//'`
    else

case "$build_cpu" in
  aarch64*|arm64*)
    BuildArch="aarch64"
    ;;
  alpha*)
    BuildArch="alpha"
    ;;
  arm*)
    BuildArch="arm"
    ;;
  hppa1.1*)
    BuildArch="hppa1_1"
    ;;
  hppa*)
    BuildArch="hppa"
    ;;
  i386|i486|i586|i686)
    BuildArch="i386"
    ;;
  ia64)
    BuildArch="ia64"
    ;;
  m68k*)
    BuildArch="m68k"
    ;;
  mipseb*)
    BuildArch="mipseb"
    ;;
  mipsel*)
    BuildArch="mipsel"
    ;;
  mips*)
    BuildArch="mips"
    ;;
  nios2)
    BuildArch="nios2"
    ;;
  powerpc64le*)
    BuildArch="powerpc64le"
    ;;
  powerpc64*)
    BuildArch="powerpc64"
    ;;
  powerpc*)
    BuildArch="powerpc"
    ;;
  riscv64*)
    BuildArch="riscv64"
    ;;
  riscv|riscv32*)
    BuildArch="riscv32"
    ;;
  rs6000)
    BuildArch="rs6000"
    ;;
  s390x*)
    BuildArch="s390x"
    ;;
  s390*)
    BuildArch="s390"
    ;;
  sh4)
    BuildArch="sh4"
    ;;
  sparc64*)
    BuildArch="sparc64"
    ;;
  sparc*)
    BuildArch="sparc"
    ;;
  vax)
    BuildArch="vax"
    ;;
  x86_64|amd64)
    BuildArch="x86_64"
    ;;
  *)
    echo "Unknown CPU $build_cpu"
    exit 1
    ;;
  esac


  case "$build_vendor" in
  pc|gentoo|w64) # like i686-pc-linux-gnu, i686-gentoo-freebsd8, x86_64-w64-mingw32
    BuildVendor="unknown"
    ;;
  softfloat) # like armv5tel-softfloat-linux-gnueabi
    BuildVendor="unknown"
    ;;
  hardfloat) # like armv7a-hardfloat-linux-gnueabi
    BuildVendor="unknown"
    ;;
  *)
    #pass thru by default
    BuildVendor="$build_vendor"
    ;;
  esac


    case "$build_os" in
      gnu*) # e.g. i686-unknown-gnu0.9
        BuildOS="gnu"
        ;;
      # watchos and tvos are ios variants as of May 2017.
      ios|watchos|tvos)
        BuildOS="ios"
        ;;
      linux-android*)
        BuildOS="linux-android"
        ;;
      linux-*|linux)
        BuildOS="linux"
        ;;
      netbsd*)
        BuildOS="netbsd"
        ;;
      openbsd*)
        BuildOS="openbsd"
        ;;
      # As far as I'm aware, none of these have relevant variants
      freebsd|dragonfly|hpux|linuxaout|kfreebsdgnu|freebsd2|mingw32|darwin|nextstep2|nextstep3|sunos4|ultrix|haiku)
        BuildOS="$build_os"
        ;;
      msys)
        as_fn_error $? "Building GHC using the msys toolchain is not supported; please use mingw instead. Perhaps you need to set 'MSYSTEM=MINGW64 or MINGW32?'" "$LINENO" 5
        ;;
      aix*) # e.g. powerpc-ibm-aix7.1.3.0
        BuildOS="aix"
        ;;
      darwin*) # e.g. aarch64-apple-darwin14
        BuildOS="darwin"
        ;;
      solaris2*)
        BuildOS="solaris2"
        ;;
      freebsd*) # like i686-gentoo-freebsd7
                #      i686-gentoo-freebsd8
                #      i686-gentoo-freebsd8.2
        BuildOS="freebsd"
        ;;
      nto-qnx*)
        BuildOS="nto-qnx"
        ;;
      *)
        echo "Unknown OS $build_os"
        exit 1
        ;;
      esac

    fi

    if test "$host_alias" = ""
    then
        if test "$bootstrap_target" != ""
        then
            host=$bootstrap_target
            echo "Host platform inferred as: $host"
        else
            echo "Can't work out host platform"
            exit 1
        fi

        HostArch=`echo "$host" | sed 's/-.*//'`
        HostVendor=`echo "$host" | sed -e 's/.*-\(.*\)-.*/\1/'`
        HostOS=`echo "$host" | sed 's/.*-//'`
    else

case "$host_cpu" in
  aarch64*|arm64*)
    HostArch="aarch64"
    ;;
  alpha*)
    HostArch="alpha"
    ;;
  arm*)
    HostArch="arm"
    ;;
  hppa1.1*)
    HostArch="hppa1_1"
    ;;
  hppa*)
    HostArch="hppa"
    ;;
  i386|i486|i586|i686)
    HostArch="i386"
    ;;
  ia64)
    HostArch="ia64"
    ;;
  m68k*)
    HostArch="m68k"
    ;;
  mipseb*)
    HostArch="mipseb"
    ;;
  mipsel*)
    HostArch="mipsel"
    ;;
  mips*)
    HostArch="mips"
    ;;
  nios2)
    HostArch="nios2"
    ;;
  powerpc64le*)
    HostArch="powerpc64le"
    ;;
  powerpc64*)
    HostArch="powerpc64"
    ;;
  powerpc*)
    HostArch="powerpc"
    ;;
  riscv64*)
    HostArch="riscv64"
    ;;
  riscv|riscv32*)
    HostArch="riscv32"
    ;;
  rs6000)
    HostArch="rs6000"
    ;;
  s390x*)
    HostArch="s390x"
    ;;
  s390*)
    HostArch="s390"
    ;;
  sh4)
    HostArch="sh4"
    ;;
  sparc64*)
    HostArch="sparc64"
    ;;
  sparc*)
    HostArch="sparc"
    ;;
  vax)
    HostArch="vax"
    ;;
  x86_64|amd64)
    HostArch="x86_64"
    ;;
  *)
    echo "Unknown CPU $host_cpu"
    exit 1
    ;;
  esac


  case "$host_vendor" in
  pc|gentoo|w64) # like i686-pc-linux-gnu, i686-gentoo-freebsd8, x86_64-w64-mingw32
    HostVendor="unknown"
    ;;
  softfloat) # like armv5tel-softfloat-linux-gnueabi
    HostVendor="unknown"
    ;;
  hardfloat) # like armv7a-hardfloat-linux-gnueabi
    HostVendor="unknown"
    ;;
  *)
    #pass thru by default
    HostVendor="$host_vendor"
    ;;
  esac


    case "$host_os" in
      gnu*) # e.g. i686-unknown-gnu0.9
        HostOS="gnu"
        ;;
      # watchos and tvos are ios variants as of May 2017.
      ios|watchos|tvos)
        HostOS="ios"
        ;;
      linux-android*)
        HostOS="linux-android"
        ;;
      linux-*|linux)
        HostOS="linux"
        ;;
      netbsd*)
        HostOS="netbsd"
        ;;
      openbsd*)
        HostOS="openbsd"
        ;;
      # As far as I'm aware, none of these have relevant variants
      freebsd|dragonfly|hpux|linuxaout|kfreebsdgnu|freebsd2|mingw32|darwin|nextstep2|nextstep3|sunos4|ultrix|haiku)
        HostOS="$host_os"
        ;;
      msys)
        as_fn_error $? "Building GHC using the msys toolchain is not supported; please use mingw instead. Perhaps you need to set 'MSYSTEM=MINGW64 or MINGW32?'" "$LINENO" 5
        ;;
      aix*) # e.g. powerpc-ibm-aix7.1.3.0
        HostOS="aix"
        ;;
      darwin*) # e.g. aarch64-apple-darwin14
        HostOS="darwin"
        ;;
      solaris2*)
        HostOS="solaris2"
        ;;
      freebsd*) # like i686-gentoo-freebsd7
                #      i686-gentoo-freebsd8
                #      i686-gentoo-freebsd8.2
        HostOS="freebsd"
        ;;
      nto-qnx*)
        HostOS="nto-qnx"
        ;;
      *)
        echo "Unknown OS $host_os"
        exit 1
        ;;
      esac

    fi

    if test "$target_alias" = ""
    then
        if test "$host_alias" != ""
        then

case "$host_cpu" in
  aarch64*|arm64*)
    TargetArch="aarch64"
    ;;
  alpha*)
    TargetArch="alpha"
    ;;
  arm*)
    TargetArch="arm"
    ;;
  hppa1.1*)
    TargetArch="hppa1_1"
    ;;
  hppa*)
    TargetArch="hppa"
    ;;
  i386|i486|i586|i686)
    TargetArch="i386"
    ;;
  ia64)
    TargetArch="ia64"
    ;;
  m68k*)
    TargetArch="m68k"
    ;;
  mipseb*)
    TargetArch="mipseb"
    ;;
  mipsel*)
    TargetArch="mipsel"
    ;;
  mips*)
    TargetArch="mips"
    ;;
  nios2)
    TargetArch="nios2"
    ;;
  powerpc64le*)
    TargetArch="powerpc64le"
    ;;
  powerpc64*)
    TargetArch="powerpc64"
    ;;
  powerpc*)
    TargetArch="powerpc"
    ;;
  riscv64*)
    TargetArch="riscv64"
    ;;
  riscv|riscv32*)
    TargetArch="riscv32"
    ;;
  rs6000)
    TargetArch="rs6000"
    ;;
  s390x*)
    TargetArch="s390x"
    ;;
  s390*)
    TargetArch="s390"
    ;;
  sh4)
    TargetArch="sh4"
    ;;
  sparc64*)
    TargetArch="sparc64"
    ;;
  sparc*)
    TargetArch="sparc"
    ;;
  vax)
    TargetArch="vax"
    ;;
  x86_64|amd64)
    TargetArch="x86_64"
    ;;
  *)
    echo "Unknown CPU $host_cpu"
    exit 1
    ;;
  esac


  case "$host_vendor" in
  pc|gentoo|w64) # like i686-pc-linux-gnu, i686-gentoo-freebsd8, x86_64-w64-mingw32
    TargetVendor="unknown"
    ;;
  softfloat) # like armv5tel-softfloat-linux-gnueabi
    TargetVendor="unknown"
    ;;
  hardfloat) # like armv7a-hardfloat-linux-gnueabi
    TargetVendor="unknown"
    ;;
  *)
    #pass thru by default
    TargetVendor="$host_vendor"
    ;;
  esac


    case "$host_os" in
      gnu*) # e.g. i686-unknown-gnu0.9
        TargetOS="gnu"
        ;;
      # watchos and tvos are ios variants as of May 2017.
      ios|watchos|tvos)
        TargetOS="ios"
        ;;
      linux-android*)
        TargetOS="linux-android"
        ;;
      linux-*|linux)
        TargetOS="linux"
        ;;
      netbsd*)
        TargetOS="netbsd"
        ;;
      openbsd*)
        TargetOS="openbsd"
        ;;
      # As far as I'm aware, none of these have relevant variants
      freebsd|dragonfly|hpux|linuxaout|kfreebsdgnu|freebsd2|mingw32|darwin|nextstep2|nextstep3|sunos4|ultrix|haiku)
        TargetOS="$host_os"
        ;;
      msys)
        as_fn_error $? "Building GHC using the msys toolchain is not supported; please use mingw instead. Perhaps you need to set 'MSYSTEM=MINGW64 or MINGW32?'" "$LINENO" 5
        ;;
      aix*) # e.g. powerpc-ibm-aix7.1.3.0
        TargetOS="aix"
        ;;
      darwin*) # e.g. aarch64-apple-darwin14
        TargetOS="darwin"
        ;;
      solaris2*)
        TargetOS="solaris2"
        ;;
      freebsd*) # like i686-gentoo-freebsd7
                #      i686-gentoo-freebsd8
                #      i686-gentoo-freebsd8.2
        TargetOS="freebsd"
        ;;
      nto-qnx*)
        TargetOS="nto-qnx"
        ;;
      *)
        echo "Unknown OS $host_os"
        exit 1
        ;;
      esac

        else
            if test "$bootstrap_target" != ""
            then
                target=$bootstrap_target
                echo "Target platform inferred as: $target"
            else
                echo "Can't work out target platform"
                exit 1
            fi

            TargetArch=`echo "$target" | sed 's/-.*//'`
            TargetVendor=`echo "$target" | sed -e 's/.*-\(.*\)-.*/\1/'`
            TargetOS=`echo "$target" | sed 's/.*-//'`
        fi
    else

case "$target_cpu" in
  aarch64*|arm64*)
    TargetArch="aarch64"
    ;;
  alpha*)
    TargetArch="alpha"
    ;;
  arm*)
    TargetArch="arm"
    ;;
  hppa1.1*)
    TargetArch="hppa1_1"
    ;;
  hppa*)
    TargetArch="hppa"
    ;;
  i386|i486|i586|i686)
    TargetArch="i386"
    ;;
  ia64)
    TargetArch="ia64"
    ;;
  m68k*)
    TargetArch="m68k"
    ;;
  mipseb*)
    TargetArch="mipseb"
    ;;
  mipsel*)
    TargetArch="mipsel"
    ;;
  mips*)
    TargetArch="mips"
    ;;
  nios2)
    TargetArch="nios2"
    ;;
  powerpc64le*)
    TargetArch="powerpc64le"
    ;;
  powerpc64*)
    TargetArch="powerpc64"
    ;;
  powerpc*)
    TargetArch="powerpc"
    ;;
  riscv64*)
    TargetArch="riscv64"
    ;;
  riscv|riscv32*)
    TargetArch="riscv32"
    ;;
  rs6000)
    TargetArch="rs6000"
    ;;
  s390x*)
    TargetArch="s390x"
    ;;
  s390*)
    TargetArch="s390"
    ;;
  sh4)
    TargetArch="sh4"
    ;;
  sparc64*)
    TargetArch="sparc64"
    ;;
  sparc*)
    TargetArch="sparc"
    ;;
  vax)
    TargetArch="vax"
    ;;
  x86_64|amd64)
    TargetArch="x86_64"
    ;;
  *)
    echo "Unknown CPU $target_cpu"
    exit 1
    ;;
  esac


  case "$target_vendor" in
  pc|gentoo|w64) # like i686-pc-linux-gnu, i686-gentoo-freebsd8, x86_64-w64-mingw32
    TargetVendor="unknown"
    ;;
  softfloat) # like armv5tel-softfloat-linux-gnueabi
    TargetVendor="unknown"
    ;;
  hardfloat) # like armv7a-hardfloat-linux-gnueabi
    TargetVendor="unknown"
    ;;
  *)
    #pass thru by default
    TargetVendor="$target_vendor"
    ;;
  esac


    case "$target_os" in
      gnu*) # e.g. i686-unknown-gnu0.9
        TargetOS="gnu"
        ;;
      # watchos and tvos are ios variants as of May 2017.
      ios|watchos|tvos)
        TargetOS="ios"
        ;;
      linux-android*)
        TargetOS="linux-android"
        ;;
      linux-*|linux)
        TargetOS="linux"
        ;;
      netbsd*)
        TargetOS="netbsd"
        ;;
      openbsd*)
        TargetOS="openbsd"
        ;;
      # As far as I'm aware, none of these have relevant variants
      freebsd|dragonfly|hpux|linuxaout|kfreebsdgnu|freebsd2|mingw32|darwin|nextstep2|nextstep3|sunos4|ultrix|haiku)
        TargetOS="$target_os"
        ;;
      msys)
        as_fn_error $? "Building GHC using the msys toolchain is not supported; please use mingw instead. Perhaps you need to set 'MSYSTEM=MINGW64 or MINGW32?'" "$LINENO" 5
        ;;
      aix*) # e.g. powerpc-ibm-aix7.1.3.0
        TargetOS="aix"
        ;;
      darwin*) # e.g. aarch64-apple-darwin14
        TargetOS="darwin"
        ;;
      solaris2*)
        TargetOS="solaris2"
        ;;
      freebsd*) # like i686-gentoo-freebsd7
                #      i686-gentoo-freebsd8
                #      i686-gentoo-freebsd8.2
        TargetOS="freebsd"
        ;;
      nto-qnx*)
        TargetOS="nto-qnx"
        ;;
      *)
        echo "Unknown OS $target_os"
        exit 1
        ;;
      esac

    fi


  llvm_target_cpu=$target_cpu
  case "$target" in
    *-freebsd*-gnueabihf)
      llvm_target_vendor="unknown"
      llvm_target_os="freebsd-gnueabihf"
      ;;
    *-hardfloat-*eabi)
      llvm_target_vendor="unknown"
      llvm_target_os="$target_os""hf"
      ;;
    *-mingw32|*-mingw64|*-msys)
      llvm_target_vendor="unknown"
      llvm_target_os="windows"
      ;;
    # apple is a bit about their naming scheme for
    # aarch64; and clang on macOS doesn't know that
    # aarch64 would be arm64. So for LLVM we'll need
    # to call it arm64; while we'll refer to it internally
    # as aarch64 for consistency and sanity.
    aarch64-apple-*|arm64-apple-*)
      llvm_target_cpu="arm64"

  case "$target_vendor" in
  pc|gentoo|w64) # like i686-pc-linux-gnu, i686-gentoo-freebsd8, x86_64-w64-mingw32
    llvm_target_vendor="unknown"
    ;;
  softfloat) # like armv5tel-softfloat-linux-gnueabi
    llvm_target_vendor="unknown"
    ;;
  hardfloat) # like armv7a-hardfloat-linux-gnueabi
    llvm_target_vendor="unknown"
    ;;
  *)
    #pass thru by default
    llvm_target_vendor="$target_vendor"
    ;;
  esac


    case "$target_os" in
      gnu*) # e.g. i686-unknown-gnu0.9
        llvm_target_os="gnu"
        ;;
      # watchos and tvos are ios variants as of May 2017.
      ios|watchos|tvos)
        llvm_target_os="ios"
        ;;
      linux-android*)
        llvm_target_os="linux-android"
        ;;
      linux-*|linux)
        llvm_target_os="linux"
        ;;
      netbsd*)
        llvm_target_os="netbsd"
        ;;
      openbsd*)
        llvm_target_os="openbsd"
        ;;
      # As far as I'm aware, none of these have relevant variants
      freebsd|dragonfly|hpux|linuxaout|kfreebsdgnu|freebsd2|mingw32|darwin|nextstep2|nextstep3|sunos4|ultrix|haiku)
        llvm_target_os="$target_os"
        ;;
      msys)
        as_fn_error $? "Building GHC using the msys toolchain is not supported; please use mingw instead. Perhaps you need to set 'MSYSTEM=MINGW64 or MINGW32?'" "$LINENO" 5
        ;;
      aix*) # e.g. powerpc-ibm-aix7.1.3.0
        llvm_target_os="aix"
        ;;
      darwin*) # e.g. aarch64-apple-darwin14
        llvm_target_os="darwin"
        ;;
      solaris2*)
        llvm_target_os="solaris2"
        ;;
      freebsd*) # like i686-gentoo-freebsd7
                #      i686-gentoo-freebsd8
                #      i686-gentoo-freebsd8.2
        llvm_target_os="freebsd"
        ;;
      nto-qnx*)
        llvm_target_os="nto-qnx"
        ;;
      *)
        echo "Unknown OS $target_os"
        exit 1
        ;;
      esac

      ;;
    *)

  case "$target_vendor" in
  pc|gentoo|w64) # like i686-pc-linux-gnu, i686-gentoo-freebsd8, x86_64-w64-mingw32
    llvm_target_vendor="unknown"
    ;;
  softfloat) # like armv5tel-softfloat-linux-gnueabi
    llvm_target_vendor="unknown"
    ;;
  hardfloat) # like armv7a-hardfloat-linux-gnueabi
    llvm_target_vendor="unknown"
    ;;
  *)
    #pass thru by default
    llvm_target_vendor="$target_vendor"
    ;;
  esac


    case "$target_os" in
      gnu*) # e.g. i686-unknown-gnu0.9
        llvm_target_os="gnu"
        ;;
      # watchos and tvos are ios variants as of May 2017.
      ios|watchos|tvos)
        llvm_target_os="ios"
        ;;
      linux-android*)
        llvm_target_os="linux-android"
        ;;
      linux-*|linux)
        llvm_target_os="linux"
        ;;
      netbsd*)
        llvm_target_os="netbsd"
        ;;
      openbsd*)
        llvm_target_os="openbsd"
        ;;
      # As far as I'm aware, none of these have relevant variants
      freebsd|dragonfly|hpux|linuxaout|kfreebsdgnu|freebsd2|mingw32|darwin|nextstep2|nextstep3|sunos4|ultrix|haiku)
        llvm_target_os="$target_os"
        ;;
      msys)
        as_fn_error $? "Building GHC using the msys toolchain is not supported; please use mingw instead. Perhaps you need to set 'MSYSTEM=MINGW64 or MINGW32?'" "$LINENO" 5
        ;;
      aix*) # e.g. powerpc-ibm-aix7.1.3.0
        llvm_target_os="aix"
        ;;
      darwin*) # e.g. aarch64-apple-darwin14
        llvm_target_os="darwin"
        ;;
      solaris2*)
        llvm_target_os="solaris2"
        ;;
      freebsd*) # like i686-gentoo-freebsd7
                #      i686-gentoo-freebsd8
                #      i686-gentoo-freebsd8.2
        llvm_target_os="freebsd"
        ;;
      nto-qnx*)
        llvm_target_os="nto-qnx"
        ;;
      *)
        echo "Unknown OS $target_os"
        exit 1
        ;;
      esac

      ;;
  esac
  case "$target_os" in
      # retain any android and gnueabi linux flavours
      # for the LLVM Target. Otherwise these would be
      # turned into just `-linux` and fail to be found
      # in the `llvm-targets` file.
      *-android*|*-gnueabi*|*-musleabi*)

  case "$target_vendor" in
  pc|gentoo|w64) # like i686-pc-linux-gnu, i686-gentoo-freebsd8, x86_64-w64-mingw32
    llvm_target_vendor="unknown"
    ;;
  softfloat) # like armv5tel-softfloat-linux-gnueabi
    llvm_target_vendor="unknown"
    ;;
  hardfloat) # like armv7a-hardfloat-linux-gnueabi
    llvm_target_vendor="unknown"
    ;;
  *)
    #pass thru by default
    llvm_target_vendor="$target_vendor"
    ;;
  esac

        llvm_target_os="$target_os"
        ;;
  esac
  LlvmTarget="$llvm_target_cpu-$llvm_target_vendor-$llvm_target_os"



    exeext_host=''
    soext_host='.so'
    case $host in
    *-unknown-cygwin32)
        { printf "%s\n" "$as_me:${as_lineno-$LINENO}: WARNING: GHC does not support the Cygwin target at the moment" >&5
printf "%s\n" "$as_me: WARNING: GHC does not support the Cygwin target at the moment" >&2;}
        { printf "%s\n" "$as_me:${as_lineno-$LINENO}: WARNING: I'm assuming you wanted to build for i386-unknown-mingw32" >&5
printf "%s\n" "$as_me: WARNING: I'm assuming you wanted to build for i386-unknown-mingw32" >&2;}
        exit 1
        ;;
    # examples: i386-unknown-mingw32, i686-w64-mingw32, x86_64-w64-mingw32
    *-mingw32)
        windows=YES
        exeext_host='.exe'
        soext_host='.dll'
        ;;
    # apple platform uses .dylib (macOS, iOS, ...)
    *-apple-*)
        soext_host='.dylib'
        ;;
    esac


    exeext_target=''
    soext_target='.so'
    case $target in
    *-unknown-cygwin32)
        { printf "%s\n" "$as_me:${as_lineno-$LINENO}: WARNING: GHC does not support the Cygwin target at the moment" >&5
printf "%s\n" "$as_me: WARNING: GHC does not support the Cygwin target at the moment" >&2;}
        { printf "%s\n" "$as_me:${as_lineno-$LINENO}: WARNING: I'm assuming you wanted to build for i386-unknown-mingw32" >&5
printf "%s\n" "$as_me: WARNING: I'm assuming you wanted to build for i386-unknown-mingw32" >&2;}
        exit 1
        ;;
    # examples: i386-unknown-mingw32, i686-w64-mingw32, x86_64-w64-mingw32
    *-mingw32)
        windows=YES
        exeext_target='.exe'
        soext_target='.dll'
        ;;
    # apple platform uses .dylib (macOS, iOS, ...)
    *-apple-*)
        soext_target='.dylib'
        ;;
    esac

    windows=NO
    case $host in
    *-unknown-mingw32)
        windows=YES
        ;;
    esac

    BuildPlatform="$BuildArch-$BuildVendor-$BuildOS"
    BuildPlatform_CPP=`echo "$BuildPlatform" | sed -e 's/\./_/g' -e 's/-/_/g'`
    BuildArch_CPP=`    echo "$BuildArch"     | sed -e 's/\./_/g' -e 's/-/_/g'`
    BuildVendor_CPP=`  echo "$BuildVendor"   | sed -e 's/\./_/g' -e 's/-/_/g'`
    BuildOS_CPP=`      echo "$BuildOS"       | sed -e 's/\./_/g' -e 's/-/_/g'`

    HostPlatform="$HostArch-$HostVendor-$HostOS"
    HostPlatform_CPP=`echo "$HostPlatform" | sed -e 's/\./_/g' -e 's/-/_/g'`
    HostArch_CPP=`    echo "$HostArch"     | sed -e 's/\./_/g' -e 's/-/_/g'`
    HostVendor_CPP=`  echo "$HostVendor"   | sed -e 's/\./_/g' -e 's/-/_/g'`
    HostOS_CPP=`      echo "$HostOS"       | sed -e 's/\./_/g' -e 's/-/_/g'`

    TargetPlatform="$TargetArch-$TargetVendor-$TargetOS"
    TargetPlatform_CPP=`echo "$TargetPlatform" | sed -e 's/\./_/g' -e 's/-/_/g'`
    TargetArch_CPP=`    echo "$TargetArch"     | sed -e 's/\./_/g' -e 's/-/_/g'`
    TargetVendor_CPP=`  echo "$TargetVendor"   | sed -e 's/\./_/g' -e 's/-/_/g'`
    TargetOS_CPP=`      echo "$TargetOS"       | sed -e 's/\./_/g' -e 's/-/_/g'`

    # we intend to pass trough --targets to llvm as is.
    LLVMTarget_CPP=`    echo "$LlvmTarget"`

    echo "GHC build  : $BuildPlatform"
    echo "GHC host   : $HostPlatform"
    echo "GHC target : $TargetPlatform"
    echo "LLVM target: $LlvmTarget"



























# Verify that the installed (bootstrap) GHC is capable of generating
# code for the requested build platform.
if test "$BuildPlatform" != "$bootstrap_target"
then
    echo "This GHC (${WithGhc}) does not generate code for the build platform"
    echo "   GHC target platform    : $bootstrap_target"
    echo "   Desired build platform : $BuildPlatform"
    exit 1
fi

# Testing if we shall enable shared libs support on Solaris.
# Anything older than SunOS 5.11 aka Solaris 11 (Express) is broken.

SOLARIS_BROKEN_SHLD=NO

case $host in
     i386-*-solaris2)
     # here we go with the test
     MINOR=`uname -r|cut -d '.' -f 2-`
     if test "$MINOR" -lt "11"; then
         SOLARIS_BROKEN_SHLD=YES
     fi
     ;;
esac




{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking whether target supports a registerised ABI" >&5
printf %s "checking whether target supports a registerised ABI... " >&6; }
case "$TargetArch" in
    i386|x86_64|powerpc|powerpc64|powerpc64le|s390x|arm|aarch64)
        UnregisterisedDefault=NO
        { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: yes" >&5
printf "%s\n" "yes" >&6; }
        ;;
    *)
        UnregisterisedDefault=YES
        { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
printf "%s\n" "no" >&6; }
        ;;
esac
# Check whether --enable-unregisterised was given.
if test ${enable_unregisterised+y}
then :
  enableval=$enable_unregisterised; if test x"$enableval" = x"no"
then :
  case x"$UnregisterisedDefault" in #(
  x"NO") :
    { printf "%s\n" "$as_me:${as_lineno-$LINENO}: user chose unregisterised matching default for platform" >&5
printf "%s\n" "$as_me: user chose unregisterised matching default for platform" >&6;} ;; #(
  x"YES") :
    as_fn_error $? "user chose unregisterised overriding only supported option for platform" "$LINENO" 5 ;; #(
  *) :
    as_fn_error $? "invalid default" "$LINENO" 5 ;;
esac
            Unregisterised=NO
else $as_nop
  case x"$UnregisterisedDefault" in #(
  x"NO") :
    { printf "%s\n" "$as_me:${as_lineno-$LINENO}: user chose registerised overriding for platform" >&5
printf "%s\n" "$as_me: user chose registerised overriding for platform" >&6;} ;; #(
  x"YES") :
    { printf "%s\n" "$as_me:${as_lineno-$LINENO}: user chose registerised matching default for platform" >&5
printf "%s\n" "$as_me: user chose registerised matching default for platform" >&6;} ;; #(
  *) :
    as_fn_error $? "invalid default" "$LINENO" 5 ;;
esac
            Unregisterised=YES
fi
else $as_nop
  Unregisterised="$UnregisterisedDefault"
fi




{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking whether target supports tables next to code" >&5
printf %s "checking whether target supports tables next to code... " >&6; }
case "$Unregisterised" in
    NO)
        case "$TargetArch" in
            ia64|powerpc64|powerpc64le|s390x)
                TablesNextToCodeDefault=NO
                { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
printf "%s\n" "no" >&6; }
                ;;
            *)
                TablesNextToCodeDefault=YES
                { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: yes" >&5
printf "%s\n" "yes" >&6; }
                ;;
        esac
        ;;
    YES)
        TablesNextToCodeDefault=NO
        { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
printf "%s\n" "no" >&6; }
        ;;
esac
# Check whether --enable-tables-next-to-code was given.
if test ${enable_tables_next_to_code+y}
then :
  enableval=$enable_tables_next_to_code; if test x"$enableval" = x"yes"
then :
  case x"$TablesNextToCodeDefault" in #(
  x"YES") :
    { printf "%s\n" "$as_me:${as_lineno-$LINENO}: user chose tables next to code matching default for platform" >&5
printf "%s\n" "$as_me: user chose tables next to code matching default for platform" >&6;} ;; #(
  x"NO") :
    as_fn_error $? "user chose tables next to code overriding only supported option for platform" "$LINENO" 5 ;; #(
  *) :
    as_fn_error $? "invalid default" "$LINENO" 5 ;;
esac
            TablesNextToCode=YES
else $as_nop
  case x"$TablesNextToCodeDefault" in #(
  x"YES") :
    { printf "%s\n" "$as_me:${as_lineno-$LINENO}: user chose tables apart from code overriding for platform" >&5
printf "%s\n" "$as_me: user chose tables apart from code overriding for platform" >&6;} ;; #(
  x"NO") :
    { printf "%s\n" "$as_me:${as_lineno-$LINENO}: user chose tables apart from code matching default for platform" >&5
printf "%s\n" "$as_me: user chose tables apart from code matching default for platform" >&6;} ;; #(
  *) :
    as_fn_error $? "invalid default" "$LINENO" 5 ;;
esac
            TablesNextToCode=NO
fi
else $as_nop
  TablesNextToCode="$TablesNextToCodeDefault"
fi

if test x"$TablesNextToCode" = xYES; then

printf "%s\n" "#define TABLES_NEXT_TO_CODE 1" >>confdefs.h

fi


case "$target" in
    powerpc64-*|powerpc64le-*|powerpc-ibm-aix*|s390x-ibm-linux)
        TargetHasRTSLinker=NO
        ;;
    *)
        TargetHasRTSLinker=YES
        ;;
esac


# Requires FPTOOLS_SET_PLATFORM_VARS to be run first.

{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for path to top of build tree" >&5
printf %s "checking for path to top of build tree... " >&6; }
    if test "$windows" = YES
    then
                        hardtop=$(cygpath -m "$(pwd)")
    else
      hardtop=$(pwd)
    fi

        hardtop=`echo $hardtop | sed 's|^/tmp_mnt.*\(/local/.*\)$|\1|' | sed 's|^/tmp_mnt/|/|'`

    if ! test -d "$hardtop"; then
        as_fn_error $? "cannot determine current directory" "$LINENO" 5
    fi

        case "$hardtop" in
    *' '*)
        as_fn_error $? "
        The build system does not support building in a directory
        containing space characters.
        Suggestion: move the build tree somewhere else." "$LINENO" 5
        ;;
    esac



    { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $hardtop" >&5
printf "%s\n" "$hardtop" >&6; }



if test "$HostOS" = "mingw32"
then
    # Find the mingw-w64 7z file to extract.
    # NB. If you update the tarballs to a new version of gcc, don't
    # forget to tweak the paths in driver/gcc/gcc.c.
    if test "$HostArch" = "i386"
    then
        mingw_arch="i686"
        tarball_dest_dir="mingw-w64/i686"
        tarball_mingw_dir="mingw32"
    else
        mingw_arch="x86_64"
        tarball_dest_dir="mingw-w64/x86_64"
        tarball_mingw_dir="mingw64"
    fi
fi

set_up_tarballs() {
    { printf "%s\n" "$as_me:${as_lineno-$LINENO}: Checking for Windows toolchain tarballs..." >&5
printf "%s\n" "$as_me: Checking for Windows toolchain tarballs..." >&6;}
    local action
    if test "$TarballsAutodownload" = "NO"
    then
        action="verify"
    else
        action="download"
    fi
    $PYTHON mk/get-win32-tarballs.py $action $mingw_arch > missing-win32-tarballs
    case $? in
        0)
           rm missing-win32-tarballs
           ;;
        2)
           echo
           echo "Error:"
           echo "Needed msys2 tarballs are missing. You have a few options to get them,"
           echo
           echo "  * run configure with the --enable-tarballs-autodownload option"
           echo
           echo "  * run mk/get-win32-tarballs.py download $mingw_arch"
           echo
           echo "  * manually download the files listed in ./missing-win32-tarballs and place"
           echo "    them in the ghc-tarballs directory."
           echo
           exit 1
           ;;
        *)
           echo
           echo "Error fetching msys2 tarballs; see errors above."
           exit 1
           ;;
    esac

    # Extract all the tarballs in one go
    if ! test -d inplace/mingw
    then
        { printf "%s\n" "$as_me:${as_lineno-$LINENO}: Extracting Windows toolchain from archives (may take a while)..." >&5
printf "%s\n" "$as_me: Extracting Windows toolchain from archives (may take a while)..." >&6;}
        rm -rf inplace/mingw
        local base_dir="../ghc-tarballs/${tarball_dest_dir}"
        ( cd inplace &&
        find "${base_dir}" -name "*.tar.xz" -exec tar --xz -xf {} \; &&
        find "${base_dir}" -name "*.tar.zst" -exec tar --zstd -xf {} \; &&
        rm ".MTREE" &&
        rm ".PKGINFO" &&
        cd .. ) || as_fn_error $? "Could not extract Windows toolchains." "$LINENO" 5

        mv "inplace/${tarball_mingw_dir}" inplace/mingw &&
        touch inplace/mingw

        # NB. Now since the GCC is hardcoded to use /mingw32 we need to
        # make a wrapper around it to give it the proper paths
        mv inplace/mingw/bin/gcc.exe inplace/mingw/bin/realgcc.exe
        PATH=`pwd`/inplace/mingw/bin:$PATH
        inplace/mingw/bin/realgcc.exe driver/gcc/gcc.c driver/utils/cwrapper.c driver/utils/getLocation.c -Idriver/utils -o inplace/mingw/bin/gcc.exe

        { printf "%s\n" "$as_me:${as_lineno-$LINENO}: In-tree MingW-w64 tree created" >&5
printf "%s\n" "$as_me: In-tree MingW-w64 tree created" >&6;}
    fi
}

# See Note [tooldir: How GHC finds mingw on Windows]
if test "$HostOS" = "mingw32" -a "$EnableDistroToolchain" = "NO"
then
    test -d inplace || mkdir inplace

    # NB. Download and extract the MingW-w64 distribution if required
    set_up_tarballs

    mingwbin="$hardtop/inplace/mingw/bin/"
    CC="${mingwbin}gcc.exe"
    LD="${mingwbin}ld.exe"
    NM="${mingwbin}nm.exe"
    RANLIB="${mingwbin}ranlib.exe"
    OBJDUMP="${mingwbin}objdump.exe"
    MergeObjsCmd="$LD"
    MergeObjsArgs="-r --oformat=pe-bigobj-x86-64"
    fp_prog_ar="${mingwbin}ar.exe"

    # Extract the first word of "genlib", so it can be a program name with args.
set dummy genlib; 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_Genlib+y}
then :
  printf %s "(cached) " >&6
else $as_nop
  case $Genlib in
  [\\/]* | ?:[\\/]*)
  ac_cv_path_Genlib="$Genlib" # 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_Genlib="$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

  ;;
esac
fi
Genlib=$ac_cv_path_Genlib
if test -n "$Genlib"; then
  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $Genlib" >&5
printf "%s\n" "$Genlib" >&6; }
else
  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
printf "%s\n" "no" >&6; }
fi


fi

# We don't want to bundle a MinGW-w64 toolchain
# So we have to find these individual tools.
# See Note [tooldir: How GHC finds mingw on Windows]
if test "$EnableDistroToolchain" = "YES"
then
    # Ideally should use AC_CHECK_TARGET_TOOL but our triples
    # are screwed up. Configure doesn't think they're ever equal and
    # so never tried without the prefix.
    # 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_path_CC+y}
then :
  printf %s "(cached) " >&6
else $as_nop
  case $CC in
  [\\/]* | ?:[\\/]*)
  ac_cv_path_CC="$CC" # 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_CC="$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_CC" && ac_cv_path_CC="clang"
  ;;
esac
fi
CC=$ac_cv_path_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


    # Extract the first word of "nm", so it can be a program name with args.
set dummy nm; 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_NM+y}
then :
  printf %s "(cached) " >&6
else $as_nop
  case $NM in
  [\\/]* | ?:[\\/]*)
  ac_cv_path_NM="$NM" # 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_NM="$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

  ;;
esac
fi
NM=$ac_cv_path_NM
if test -n "$NM"; then
  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $NM" >&5
printf "%s\n" "$NM" >&6; }
else
  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
printf "%s\n" "no" >&6; }
fi


    # Extract the first word of "ld", so it can be a program name with args.
set dummy ld; 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_LD+y}
then :
  printf %s "(cached) " >&6
else $as_nop
  case $LD in
  [\\/]* | ?:[\\/]*)
  ac_cv_path_LD="$LD" # 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_LD="$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

  ;;
esac
fi
LD=$ac_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


    # Extract the first word of "ar", so it can be a program name with args.
set dummy ar; 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_AR+y}
then :
  printf %s "(cached) " >&6
else $as_nop
  case $AR in
  [\\/]* | ?:[\\/]*)
  ac_cv_path_AR="$AR" # 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_AR="$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

  ;;
esac
fi
AR=$ac_cv_path_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


    # 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_path_RANLIB+y}
then :
  printf %s "(cached) " >&6
else $as_nop
  case $RANLIB in
  [\\/]* | ?:[\\/]*)
  ac_cv_path_RANLIB="$RANLIB" # 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_RANLIB="$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

  ;;
esac
fi
RANLIB=$ac_cv_path_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


    # 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_path_OBJDUMP+y}
then :
  printf %s "(cached) " >&6
else $as_nop
  case $OBJDUMP in
  [\\/]* | ?:[\\/]*)
  ac_cv_path_OBJDUMP="$OBJDUMP" # 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_OBJDUMP="$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

  ;;
esac
fi
OBJDUMP=$ac_cv_path_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


    # Extract the first word of "dllwrap", so it can be a program name with args.
set dummy dllwrap; 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_DllWrap+y}
then :
  printf %s "(cached) " >&6
else $as_nop
  case $DllWrap in
  [\\/]* | ?:[\\/]*)
  ac_cv_path_DllWrap="$DllWrap" # 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_DllWrap="$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

  ;;
esac
fi
DllWrap=$ac_cv_path_DllWrap
if test -n "$DllWrap"; then
  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $DllWrap" >&5
printf "%s\n" "$DllWrap" >&6; }
else
  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
printf "%s\n" "no" >&6; }
fi


    # Extract the first word of "windres", so it can be a program name with args.
set dummy windres; 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_Windres+y}
then :
  printf %s "(cached) " >&6
else $as_nop
  case $Windres in
  [\\/]* | ?:[\\/]*)
  ac_cv_path_Windres="$Windres" # 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_Windres="$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

  ;;
esac
fi
Windres=$ac_cv_path_Windres
if test -n "$Windres"; then
  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $Windres" >&5
printf "%s\n" "$Windres" >&6; }
else
  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
printf "%s\n" "no" >&6; }
fi


    # Extract the first word of "genlib", so it can be a program name with args.
set dummy genlib; 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_Genlib+y}
then :
  printf %s "(cached) " >&6
else $as_nop
  case $Genlib in
  [\\/]* | ?:[\\/]*)
  ac_cv_path_Genlib="$Genlib" # 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_Genlib="$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

  ;;
esac
fi
Genlib=$ac_cv_path_Genlib
if test -n "$Genlib"; then
  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $Genlib" >&5
printf "%s\n" "$Genlib" >&6; }
else
  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
printf "%s\n" "no" >&6; }
fi


else
    # Extract the first word of "$target_alias-windres", so it can be a program name with args.
set dummy $target_alias-windres; 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_Windres+y}
then :
  printf %s "(cached) " >&6
else $as_nop
  if test -n "$Windres"; then
  ac_cv_prog_Windres="$Windres" # 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_Windres="$target_alias-windres"
    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
fi
Windres=$ac_cv_prog_Windres
if test -n "$Windres"; then
  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $Windres" >&5
printf "%s\n" "$Windres" >&6; }
else
  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
printf "%s\n" "no" >&6; }
fi


if test -z "$ac_cv_prog_Windres"; then
  if test "$build" = "$target"; then
    ac_ct_Windres=$Windres
    # Extract the first word of "windres", so it can be a program name with args.
set dummy windres; 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_Windres+y}
then :
  printf %s "(cached) " >&6
else $as_nop
  if test -n "$ac_ct_Windres"; then
  ac_cv_prog_ac_ct_Windres="$ac_ct_Windres" # 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_Windres="windres"
    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
fi
ac_ct_Windres=$ac_cv_prog_ac_ct_Windres
if test -n "$ac_ct_Windres"; then
  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_ct_Windres" >&5
printf "%s\n" "$ac_ct_Windres" >&6; }
else
  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
printf "%s\n" "no" >&6; }
fi

    Windres=$ac_ct_Windres
  else
    Windres=""
  fi
else
  Windres="$ac_cv_prog_Windres"
fi

    # Extract the first word of "$target_alias-dllwrap", so it can be a program name with args.
set dummy $target_alias-dllwrap; 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_DllWrap+y}
then :
  printf %s "(cached) " >&6
else $as_nop
  if test -n "$DllWrap"; then
  ac_cv_prog_DllWrap="$DllWrap" # 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_DllWrap="$target_alias-dllwrap"
    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
fi
DllWrap=$ac_cv_prog_DllWrap
if test -n "$DllWrap"; then
  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $DllWrap" >&5
printf "%s\n" "$DllWrap" >&6; }
else
  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
printf "%s\n" "no" >&6; }
fi


if test -z "$ac_cv_prog_DllWrap"; then
  if test "$build" = "$target"; then
    ac_ct_DllWrap=$DllWrap
    # Extract the first word of "dllwrap", so it can be a program name with args.
set dummy dllwrap; 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_DllWrap+y}
then :
  printf %s "(cached) " >&6
else $as_nop
  if test -n "$ac_ct_DllWrap"; then
  ac_cv_prog_ac_ct_DllWrap="$ac_ct_DllWrap" # 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_DllWrap="dllwrap"
    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
fi
ac_ct_DllWrap=$ac_cv_prog_ac_ct_DllWrap
if test -n "$ac_ct_DllWrap"; then
  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_ct_DllWrap" >&5
printf "%s\n" "$ac_ct_DllWrap" >&6; }
else
  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
printf "%s\n" "no" >&6; }
fi

    DllWrap=$ac_ct_DllWrap
  else
    DllWrap=""
  fi
else
  DllWrap="$ac_cv_prog_DllWrap"
fi

    # Extract the first word of "$target_alias-objdump", so it can be a program name with args.
set dummy $target_alias-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 $as_nop
  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="$target_alias-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
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


if test -z "$ac_cv_prog_OBJDUMP"; then
  if test "$build" = "$target"; 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 $as_nop
  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
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

    OBJDUMP=$ac_ct_OBJDUMP
  else
    OBJDUMP=""
  fi
else
  OBJDUMP="$ac_cv_prog_OBJDUMP"
fi

fi

DllWrapCmd="$DllWrap"
WindresCmd="$Windres"

HAVE_GENLIB=False
if test "$HostOS" = "mingw32"
then
    if test "$Genlib" != ""; then
        GenlibCmd="$(cygpath -m $Genlib)"
        HAVE_GENLIB=True
    fi
fi










# Check whether --with-iconv-includes was given.
if test ${with_iconv_includes+y}
then :
  withval=$with_iconv_includes; ICONV_INCLUDE_DIRS=$withval
fi



# Check whether --with-iconv-libraries was given.
if test ${with_iconv_libraries+y}
then :
  withval=$with_iconv_libraries; ICONV_LIB_DIRS=$withval
fi








# Check whether --with-gmp-includes was given.
if test ${with_gmp_includes+y}
then :
  withval=$with_gmp_includes; GMP_INCLUDE_DIRS=$withval
fi



# Check whether --with-gmp-libraries was given.
if test ${with_gmp_libraries+y}
then :
  withval=$with_gmp_libraries; GMP_LIB_DIRS=$withval
fi



# Check whether --with-intree-gmp was given.
if test ${with_intree_gmp+y}
then :
  withval=$with_intree_gmp; GMP_FORCE_INTREE=YES
else $as_nop
  GMP_FORCE_INTREE=NO
fi



# Check whether --with-gmp-framework-preferred was given.
if test ${with_gmp_framework_preferred+y}
then :
  withval=$with_gmp_framework_preferred; GMP_PREFER_FRAMEWORK=YES
else $as_nop
  GMP_PREFER_FRAMEWORK=NO
fi










# Check whether --with-curses-libraries was given.
if test ${with_curses_libraries+y}
then :
  withval=$with_curses_libraries; CURSES_LIB_DIRS=$withval
fi





if test "$HostOS" = "mingw32"
then
  GMP_FORCE_INTREE="YES"
fi


    if test "$TargetVendor_CPP" = "apple"
    then
        { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking Xcode version" >&5
printf %s "checking Xcode version... " >&6; }
        XcodeVersion=`(xcode-select -p >& /dev/null && xcodebuild -version) | grep Xcode | sed "s/Xcode //"`
        # Old Xcode versions don't actually give the Xcode version
        if test "$XcodeVersion" = ""
        then
            { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: not found (too old?)" >&5
printf "%s\n" "not found (too old?)" >&6; }
            XcodeVersion1=0
            XcodeVersion2=0
        else
            { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $XcodeVersion" >&5
printf "%s\n" "$XcodeVersion" >&6; }
            XcodeVersion1=`echo "$XcodeVersion" | sed 's/\..*//'`
                        XcodeVersion2=`echo "$XcodeVersion" | sed 's/[^.]*\.\([^.]*\).*/\1/'`
                        { printf "%s\n" "$as_me:${as_lineno-$LINENO}: Xcode version component 1: $XcodeVersion1" >&5
printf "%s\n" "$as_me: Xcode version component 1: $XcodeVersion1" >&6;}
            { printf "%s\n" "$as_me:${as_lineno-$LINENO}: Xcode version component 2: $XcodeVersion2" >&5
printf "%s\n" "$as_me: Xcode version component 2: $XcodeVersion2" >&6;}
        fi
    fi



CrossCompiling=NO
# If 'host' and 'target' differ, then this means we are building a cross-compiler.
if test "$target" != "$host" ; then
    CrossCompiling=YES
    cross_compiling=yes   # This tells configure that it can accept just 'target',
                          # otherwise you get
                          #   configure: error: cannot run C compiled programs.
                          #   If you meant to cross compile, use `--host'.
fi
if test "$BuildPlatform" != "$HostPlatform" ; then
   as_fn_error $? "
You've selected:

  BUILD:  $BuildPlatform   (the architecture we're building on)
  HOST:   $HostPlatform    (the architecture the compiler we're building will execute on)
  TARGET: $TargetPlatform  (the architecture the compiler we're building will produce code for)

BUILD must equal HOST; that is, we do not support building GHC itself
with a cross-compiler.  To cross-compile GHC itself, set TARGET: stage
1 will be a cross-compiler, and stage 2 will be the cross-compiled
GHC.
" "$LINENO" 5
fi
# Despite its similarity in name to TargetPlatform, TargetPlatformFull is used
# in calls to subproject configure scripts and thus must be set to the autoconf
# triple, not the normalized GHC triple that TargetPlatform is set to.
#
# We use the non-canonicalized triple, target_alias, here since the subproject
# configure scripts will use this triple to construct the names of the toolchain
# executables. If we instead passed down the triple produced by
# AC_CANONICAL_TARGET then it may look for the target toolchain under the wrong
# name (this is a known problem in the case of the Android NDK, which has
# slightly odd triples).
#
# It may be better to just do away with the GHC triples altogether. This would
# all be taken care of for us if we configured the subprojects using
# AC_CONFIG_DIR, but unfortunately Cabal needs to be the one to do the
# configuration.
#
# We also use non-canonicalized triple when install stage1 crosscompiler
if test -z "${target_alias}"
then
  # --target wasn't given; use result from AC_CANONICAL_TARGET
  TargetPlatformFull="${target}"
else
  TargetPlatformFull="${target_alias}"
fi
if test "$CrossCompiling" = "YES"
then
  # Use value passed by user from --target=
  CrossCompilePrefix="${TargetPlatformFull}-"
else
  CrossCompilePrefix=""
fi







# Check whether --with-gcc was given.
if test ${with_gcc+y}
then :
  withval=$with_gcc; as_fn_error $? "--with-gcc=$withval is obsolete (use './configure CC=$withval' or 'CC=$withval ./configure' instead)" "$LINENO" 5
fi



# Check whether --with-clang was given.
if test ${with_clang+y}
then :
  withval=$with_clang; as_fn_error $? "--with-clang=$withval is obsolete (use './configure CC=$withval' or 'CC=$withval ./configure' instead)" "$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
if test -n "$ac_tool_prefix"; then
  for ac_prog in cc gcc 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_CC+y}
then :
  printf %s "(cached) " >&6
else $as_nop
  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
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 cc gcc 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_CC+y}
then :
  printf %s "(cached) " >&6
else $as_nop
  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
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


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 $as_nop
  ac_file=''
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 $as_nop
  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: yes" >&5
printf "%s\n" "yes" >&6; }
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 $as_nop
  { { 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; }
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");
 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.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 $as_nop
  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 $as_nop
  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; }
fi
rm -f conftest.$ac_cv_objext conftest.$ac_ext
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 $as_nop
  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 $as_nop
  ac_compiler_gnu=no
fi
rm -f core conftest.err conftest.$ac_objext conftest.beam conftest.$ac_ext
ac_cv_c_compiler_gnu=$ac_compiler_gnu

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 $as_nop
  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 $as_nop
  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 $as_nop
  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
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
   ac_c_werror_flag=$ac_save_c_werror_flag
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 $as_nop
  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
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 $as_nop
  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 $as_nop
  { 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"
fi
  ac_cv_prog_cc_stdc=$ac_cv_prog_cc_c11
  ac_prog_cc_stdc=c11
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 $as_nop
  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
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 $as_nop
  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 $as_nop
  { 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"
fi
  ac_cv_prog_cc_stdc=$ac_cv_prog_cc_c99
  ac_prog_cc_stdc=c99
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 $as_nop
  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
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 $as_nop
  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 $as_nop
  { 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"
fi
  ac_cv_prog_cc_stdc=$ac_cv_prog_cc_c89
  ac_prog_cc_stdc=c89
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



  if test ! -z "$With_ar" -a "$CrossCompiling" != "YES"; then
      { printf "%s\n" "$as_me:${as_lineno-$LINENO}: Not cross-compiling, so --with-ar also sets AR_STAGE0" >&5
printf "%s\n" "$as_me: Not cross-compiling, so --with-ar also sets AR_STAGE0" >&6;}
      AR_STAGE0=$With_ar
  fi



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






  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking whether it is safe to define __EXTENSIONS__" >&5
printf %s "checking whether it is safe to define __EXTENSIONS__... " >&6; }
if test ${ac_cv_safe_to_define___extensions__+y}
then :
  printf %s "(cached) " >&6
else $as_nop
  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
/* end confdefs.h.  */

#         define __EXTENSIONS__ 1
          $ac_includes_default
int
main (void)
{

  ;
  return 0;
}
_ACEOF
if ac_fn_c_try_compile "$LINENO"
then :
  ac_cv_safe_to_define___extensions__=yes
else $as_nop
  ac_cv_safe_to_define___extensions__=no
fi
rm -f core conftest.err conftest.$ac_objext conftest.beam conftest.$ac_ext
fi
{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_cv_safe_to_define___extensions__" >&5
printf "%s\n" "$ac_cv_safe_to_define___extensions__" >&6; }

  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking whether _XOPEN_SOURCE should be defined" >&5
printf %s "checking whether _XOPEN_SOURCE should be defined... " >&6; }
if test ${ac_cv_should_define__xopen_source+y}
then :
  printf %s "(cached) " >&6
else $as_nop
  ac_cv_should_define__xopen_source=no
    if test $ac_cv_header_wchar_h = yes
then :
  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
/* end confdefs.h.  */

          #include <wchar.h>
          mbstate_t x;
int
main (void)
{

  ;
  return 0;
}
_ACEOF
if ac_fn_c_try_compile "$LINENO"
then :

else $as_nop
  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
/* end confdefs.h.  */

            #define _XOPEN_SOURCE 500
            #include <wchar.h>
            mbstate_t x;
int
main (void)
{

  ;
  return 0;
}
_ACEOF
if ac_fn_c_try_compile "$LINENO"
then :
  ac_cv_should_define__xopen_source=yes
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
fi
{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_cv_should_define__xopen_source" >&5
printf "%s\n" "$ac_cv_should_define__xopen_source" >&6; }

  printf "%s\n" "#define _ALL_SOURCE 1" >>confdefs.h

  printf "%s\n" "#define _DARWIN_C_SOURCE 1" >>confdefs.h

  printf "%s\n" "#define _GNU_SOURCE 1" >>confdefs.h

  printf "%s\n" "#define _HPUX_ALT_XOPEN_SOCKET_API 1" >>confdefs.h

  printf "%s\n" "#define _NETBSD_SOURCE 1" >>confdefs.h

  printf "%s\n" "#define _OPENBSD_SOURCE 1" >>confdefs.h

  printf "%s\n" "#define _POSIX_PTHREAD_SEMANTICS 1" >>confdefs.h

  printf "%s\n" "#define __STDC_WANT_IEC_60559_ATTRIBS_EXT__ 1" >>confdefs.h

  printf "%s\n" "#define __STDC_WANT_IEC_60559_BFP_EXT__ 1" >>confdefs.h

  printf "%s\n" "#define __STDC_WANT_IEC_60559_DFP_EXT__ 1" >>confdefs.h

  printf "%s\n" "#define __STDC_WANT_IEC_60559_FUNCS_EXT__ 1" >>confdefs.h

  printf "%s\n" "#define __STDC_WANT_IEC_60559_TYPES_EXT__ 1" >>confdefs.h

  printf "%s\n" "#define __STDC_WANT_LIB_EXT2__ 1" >>confdefs.h

  printf "%s\n" "#define __STDC_WANT_MATH_SPEC_FUNCS__ 1" >>confdefs.h

  printf "%s\n" "#define _TANDEM_SOURCE 1" >>confdefs.h

  if test $ac_cv_header_minix_config_h = yes
then :
  MINIX=yes
    printf "%s\n" "#define _MINIX 1" >>confdefs.h

    printf "%s\n" "#define _POSIX_SOURCE 1" >>confdefs.h

    printf "%s\n" "#define _POSIX_1_SOURCE 2" >>confdefs.h

else $as_nop
  MINIX=
fi
  if test $ac_cv_safe_to_define___extensions__ = yes
then :
  printf "%s\n" "#define __EXTENSIONS__ 1" >>confdefs.h

fi
  if test $ac_cv_should_define__xopen_source = yes
then :
  printf "%s\n" "#define _XOPEN_SOURCE 500" >>confdefs.h

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
{ 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; }
# On Suns, sometimes $CPP names a directory.
if test -n "$CPP" && test -d "$CPP"; then
  CPP=
fi
if test -z "$CPP"; then
  if test ${ac_cv_prog_CPP+y}
then :
  printf %s "(cached) " >&6
else $as_nop
      # Double quotes because $CC needs to be expanded
    for CPP in "$CC -E" "$CC -E -traditional-cpp" 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.
  # 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_c_try_cpp "$LINENO"
then :

else $as_nop
  # 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 $as_nop
  # 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
{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $CPP" >&5
printf "%s\n" "$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.
  # 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_c_try_cpp "$LINENO"
then :

else $as_nop
  # 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 $as_nop
  # 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_nop
  { { 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 \"$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


# --with-hs-cpp/--with-hs-cpp-flags


# Check whether --with-hs-cpp was given.
if test ${with_hs_cpp+y}
then :
  withval=$with_hs_cpp;
    if test "$HostOS" = "mingw32"
    then
        { printf "%s\n" "$as_me:${as_lineno-$LINENO}: WARNING: Request to use $withval will be ignored" >&5
printf "%s\n" "$as_me: WARNING: Request to use $withval will be ignored" >&2;}
    else
        HS_CPP_CMD=$withval
    fi

else $as_nop


    # We can't use $CPP here, since HS_CPP_CMD is expected to be a single
    # command (no flags), and AC_PROG_CPP defines CPP as "/usr/bin/gcc -E".
    HS_CPP_CMD=$CC

    SOLARIS_GCC_CPP_BROKEN=NO
    SOLARIS_FOUND_GOOD_CPP=NO
    case $host in
        i386-*-solaris2)
        GCC_MAJOR_MINOR=`$CC --version|grep "gcc (GCC)"|cut -d ' ' -f 3-3|cut -d '.' -f 1-2`
        if test "$GCC_MAJOR_MINOR" != "3.4"; then
          # this is not 3.4.x release so with broken CPP
          SOLARIS_GCC_CPP_BROKEN=YES
        fi
        ;;
    esac

    if test "$SOLARIS_GCC_CPP_BROKEN" = "YES"; then
      # let's try to find if GNU C 3.4.x is installed
      if test -x /usr/sfw/bin/gcc; then
        # something executable is in expected path so let's
        # see if it's really GNU C
        NEW_GCC_MAJOR_MINOR=`/usr/sfw/bin/gcc --version|grep "gcc (GCC)"|cut -d ' ' -f 3-3|cut -d '.' -f 1-2`
        if test "$NEW_GCC_MAJOR_MINOR" = "3.4"; then
          # this is GNU C 3.4.x which provides non-broken CPP on Solaris
          # let's use it as CPP then.
          HS_CPP_CMD=/usr/sfw/bin/gcc
          SOLARIS_FOUND_GOOD_CPP=YES
        fi
      fi
      if test "$SOLARIS_FOUND_GOOD_CPP" = "NO"; then
        { printf "%s\n" "$as_me:${as_lineno-$LINENO}: WARNING: Your GNU C provides broken CPP and you do not have GNU C 3.4.x installed." >&5
printf "%s\n" "$as_me: WARNING: Your GNU C provides broken CPP and you do not have GNU C 3.4.x installed." >&2;}
        { printf "%s\n" "$as_me:${as_lineno-$LINENO}: WARNING: Please install GNU C 3.4.x to solve this issue. It will be used as CPP only." >&5
printf "%s\n" "$as_me: WARNING: Please install GNU C 3.4.x to solve this issue. It will be used as CPP only." >&2;}
      fi
    fi


fi





# Check whether --with-hs-cpp-flags was given.
if test ${with_hs_cpp_flags+y}
then :
  withval=$with_hs_cpp_flags;
      if test "$HostOS" = "mingw32"
      then
          { printf "%s\n" "$as_me:${as_lineno-$LINENO}: WARNING: Request to use $withval will be ignored" >&5
printf "%s\n" "$as_me: WARNING: Request to use $withval will be ignored" >&2;}
      else
          HS_CPP_ARGS=$withval
      fi

else $as_nop

  $HS_CPP_CMD -x c /dev/null -dM -E > conftest.txt 2>&1
  if grep "__clang__" conftest.txt >/dev/null 2>&1; then
    HS_CPP_ARGS="-E -undef -traditional -Wno-invalid-pp-token -Wno-unicode -Wno-trigraphs"
  else
      $HS_CPP_CMD  -v > conftest.txt 2>&1
      if  grep "gcc" conftest.txt >/dev/null 2>&1; then
          HS_CPP_ARGS="-E -undef -traditional"
        else
          $HS_CPP_CMD  --version > conftest.txt 2>&1
          if grep "cpphs" conftest.txt >/dev/null 2>&1; then
            HS_CPP_ARGS="--cpp -traditional"
          else
            { printf "%s\n" "$as_me:${as_lineno-$LINENO}: WARNING: configure can't recognize your CPP program, you may need to set --with-hs-cpp-flags=FLAGS explicitly" >&5
printf "%s\n" "$as_me: WARNING: configure can't recognize your CPP program, you may need to set --with-hs-cpp-flags=FLAGS explicitly" >&2;}
            HS_CPP_ARGS=""
          fi
      fi
  fi


fi


HaskellCPPCmd=$HS_CPP_CMD
HaskellCPPArgs=$HS_CPP_ARGS






        if test -n "${CC+set}"; then fp_save_CC="$CC"; else unset fp_save_CC; fi
    if test -n "${CFLAGS+set}"; then fp_save_CFLAGS="$CFLAGS"; else unset fp_save_CFLAGS; fi
    if test -n "${CPPFLAGS+set}"; then fp_save_CPPFLAGS="$CPPFLAGS"; else unset fp_save_CPPFLAGS; fi
    if test -n "${ac_cv_prog_cc_c99+set}"; then fp_save_cc_c99="$ac_cv_prog_cc_c99"; else unset fp_save_cc_c99; fi
        CC="$CC"
    CFLAGS="$CFLAGS"
    CPPFLAGS="$CPPFLAGS"
    unset ac_cv_prog_cc_c99

    fp_cc_c99="$ac_cv_prog_cc_c99"
    case "x$ac_cv_prog_cc_c99" in
      x)   ;; # noop
      xno) as_fn_error $? "C99-compatible compiler needed" "$LINENO" 5 ;;
      *)   CFLAGS="$CFLAGS $ac_cv_prog_cc_c99"
           CPPFLAGS="$CPPFLAGS $ac_cv_prog_cc_c99"
           ;;
    esac
        if test -n "${fp_save_CC+set}"; then CC="$fp_save_CC"; else unset CC; fi
    if test -n "${fp_save_CFLAGS+set}"; then CFLAGS="$fp_save_CFLAGS"; else unset CFLAGS; fi
    if test -n "${fp_save_CPPFLAGS+set}"; then CPPFLAGS="$fp_save_CPPFLAGS"; else unset CPPFLAGS; fi
    if test -n "${fp_save_cc_c99+set}"; then ac_cv_prog_cc_c99="$fp_save_cc_c99"; else unset ac_cv_prog_cc_c99; fi
        unset fp_save_CC
    unset fp_save_CFLAGS
    unset fp_save_cc_c99


        if test -n "${CC+set}"; then fp_save_CC="$CC"; else unset fp_save_CC; fi
    if test -n "${CFLAGS+set}"; then fp_save_CFLAGS="$CFLAGS"; else unset fp_save_CFLAGS; fi
    if test -n "${CPPFLAGS+set}"; then fp_save_CPPFLAGS="$CPPFLAGS"; else unset fp_save_CPPFLAGS; fi
    if test -n "${ac_cv_prog_cc_c99+set}"; then fp_save_cc_c99="$ac_cv_prog_cc_c99"; else unset fp_save_cc_c99; fi
        CC="$CC_STAGE0"
    CFLAGS="$CONF_CC_OPTS_STAGE0"
    CPPFLAGS="$CONF_CPP_OPTS_STAGE0"
    unset ac_cv_prog_cc_c99

    fp_cc_c99="$ac_cv_prog_cc_c99"
    case "x$ac_cv_prog_cc_c99" in
      x)   ;; # noop
      xno) as_fn_error $? "C99-compatible compiler needed" "$LINENO" 5 ;;
      *)   CONF_CC_OPTS_STAGE0="$CONF_CC_OPTS_STAGE0 $ac_cv_prog_cc_c99"
           CONF_CPP_OPTS_STAGE0="$CONF_CPP_OPTS_STAGE0 $ac_cv_prog_cc_c99"
           ;;
    esac
        if test -n "${fp_save_CC+set}"; then CC="$fp_save_CC"; else unset CC; fi
    if test -n "${fp_save_CFLAGS+set}"; then CFLAGS="$fp_save_CFLAGS"; else unset CFLAGS; fi
    if test -n "${fp_save_CPPFLAGS+set}"; then CPPFLAGS="$fp_save_CPPFLAGS"; else unset CPPFLAGS; fi
    if test -n "${fp_save_cc_c99+set}"; then ac_cv_prog_cc_c99="$fp_save_cc_c99"; else unset ac_cv_prog_cc_c99; fi
        unset fp_save_CC
    unset fp_save_CFLAGS
    unset fp_save_cc_c99


        if test -n "${CC+set}"; then fp_save_CC="$CC"; else unset fp_save_CC; fi
    if test -n "${CFLAGS+set}"; then fp_save_CFLAGS="$CFLAGS"; else unset fp_save_CFLAGS; fi
    if test -n "${CPPFLAGS+set}"; then fp_save_CPPFLAGS="$CPPFLAGS"; else unset fp_save_CPPFLAGS; fi
    if test -n "${ac_cv_prog_cc_c99+set}"; then fp_save_cc_c99="$ac_cv_prog_cc_c99"; else unset fp_save_cc_c99; fi
        CC="$CC"
    CFLAGS="$CONF_CC_OPTS_STAGE1"
    CPPFLAGS="$CONF_CPP_OPTS_STAGE1"
    unset ac_cv_prog_cc_c99

    fp_cc_c99="$ac_cv_prog_cc_c99"
    case "x$ac_cv_prog_cc_c99" in
      x)   ;; # noop
      xno) as_fn_error $? "C99-compatible compiler needed" "$LINENO" 5 ;;
      *)   CONF_CC_OPTS_STAGE1="$CONF_CC_OPTS_STAGE1 $ac_cv_prog_cc_c99"
           CONF_CPP_OPTS_STAGE1="$CONF_CPP_OPTS_STAGE1 $ac_cv_prog_cc_c99"
           ;;
    esac
        if test -n "${fp_save_CC+set}"; then CC="$fp_save_CC"; else unset CC; fi
    if test -n "${fp_save_CFLAGS+set}"; then CFLAGS="$fp_save_CFLAGS"; else unset CFLAGS; fi
    if test -n "${fp_save_CPPFLAGS+set}"; then CPPFLAGS="$fp_save_CPPFLAGS"; else unset CPPFLAGS; fi
    if test -n "${fp_save_cc_c99+set}"; then ac_cv_prog_cc_c99="$fp_save_cc_c99"; else unset ac_cv_prog_cc_c99; fi
        unset fp_save_CC
    unset fp_save_CFLAGS
    unset fp_save_cc_c99


        if test -n "${CC+set}"; then fp_save_CC="$CC"; else unset fp_save_CC; fi
    if test -n "${CFLAGS+set}"; then fp_save_CFLAGS="$CFLAGS"; else unset fp_save_CFLAGS; fi
    if test -n "${CPPFLAGS+set}"; then fp_save_CPPFLAGS="$CPPFLAGS"; else unset fp_save_CPPFLAGS; fi
    if test -n "${ac_cv_prog_cc_c99+set}"; then fp_save_cc_c99="$ac_cv_prog_cc_c99"; else unset fp_save_cc_c99; fi
        CC="$CC"
    CFLAGS="$CONF_CC_OPTS_STAGE2"
    CPPFLAGS="$CONF_CPP_OPTS_STAGE2"
    unset ac_cv_prog_cc_c99

    fp_cc_c99="$ac_cv_prog_cc_c99"
    case "x$ac_cv_prog_cc_c99" in
      x)   ;; # noop
      xno) as_fn_error $? "C99-compatible compiler needed" "$LINENO" 5 ;;
      *)   CONF_CC_OPTS_STAGE2="$CONF_CC_OPTS_STAGE2 $ac_cv_prog_cc_c99"
           CONF_CPP_OPTS_STAGE2="$CONF_CPP_OPTS_STAGE2 $ac_cv_prog_cc_c99"
           ;;
    esac
        if test -n "${fp_save_CC+set}"; then CC="$fp_save_CC"; else unset CC; fi
    if test -n "${fp_save_CFLAGS+set}"; then CFLAGS="$fp_save_CFLAGS"; else unset CFLAGS; fi
    if test -n "${fp_save_CPPFLAGS+set}"; then CPPFLAGS="$fp_save_CPPFLAGS"; else unset CPPFLAGS; fi
    if test -n "${fp_save_cc_c99+set}"; then ac_cv_prog_cc_c99="$fp_save_cc_c99"; else unset ac_cv_prog_cc_c99; fi
        unset fp_save_CC
    unset fp_save_CFLAGS
    unset fp_save_cc_c99




    # Check whether --enable-ld-override was given.
if test ${enable_ld_override+y}
then :
  enableval=$enable_ld_override;
else $as_nop
  enable_ld_override=yes
fi


    find_ld() {
        # Make sure the user didn't specify LD manually.
        if test "z$LD" != "z"; then
            # Extract the first word of "$target_alias-ld", so it can be a program name with args.
set dummy $target_alias-ld; 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_LD+y}
then :
  printf %s "(cached) " >&6
else $as_nop
  if test -n "$LD"; then
  ac_cv_prog_LD="$LD" # 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_LD="$target_alias-ld"
    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
fi
LD=$ac_cv_prog_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


if test -z "$ac_cv_prog_LD"; then
  if test "$build" = "$target"; then
    ac_ct_LD=$LD
    # Extract the first word of "ld", so it can be a program name with args.
set dummy ld; 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_LD+y}
then :
  printf %s "(cached) " >&6
else $as_nop
  if test -n "$ac_ct_LD"; then
  ac_cv_prog_ac_ct_LD="$ac_ct_LD" # 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_LD="ld"
    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
fi
ac_ct_LD=$ac_cv_prog_ac_ct_LD
if test -n "$ac_ct_LD"; then
  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_ct_LD" >&5
printf "%s\n" "$ac_ct_LD" >&6; }
else
  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
printf "%s\n" "no" >&6; }
fi

    LD=$ac_ct_LD
  else
    LD=""
  fi
else
  LD="$ac_cv_prog_LD"
fi

            return
        fi

        # Manually iterate over possible names since we want to ensure that, e.g.,
        # if ld.lld is installed but gcc doesn't support -fuse-ld=lld, that we
        # then still try ld.gold and -fuse-ld=gold.
        for possible_ld in ld.lld ld.gold ld; do
            TmpLd="" # In case the user set LD
            # Extract the first word of "$target_alias-$possible_ld", so it can be a program name with args.
set dummy $target_alias-$possible_ld; 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_TmpLd+y}
then :
  printf %s "(cached) " >&6
else $as_nop
  if test -n "$TmpLd"; then
  ac_cv_prog_TmpLd="$TmpLd" # 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_TmpLd="$target_alias-$possible_ld"
    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
fi
TmpLd=$ac_cv_prog_TmpLd
if test -n "$TmpLd"; then
  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $TmpLd" >&5
printf "%s\n" "$TmpLd" >&6; }
else
  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
printf "%s\n" "no" >&6; }
fi


if test -z "$ac_cv_prog_TmpLd"; then
  if test "$build" = "$target"; then
    ac_ct_TmpLd=$TmpLd
    # Extract the first word of "$possible_ld", so it can be a program name with args.
set dummy $possible_ld; 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_TmpLd+y}
then :
  printf %s "(cached) " >&6
else $as_nop
  if test -n "$ac_ct_TmpLd"; then
  ac_cv_prog_ac_ct_TmpLd="$ac_ct_TmpLd" # 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_TmpLd="$possible_ld"
    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
fi
ac_ct_TmpLd=$ac_cv_prog_ac_ct_TmpLd
if test -n "$ac_ct_TmpLd"; then
  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_ct_TmpLd" >&5
printf "%s\n" "$ac_ct_TmpLd" >&6; }
else
  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
printf "%s\n" "no" >&6; }
fi

    TmpLd=$ac_ct_TmpLd
  else
    TmpLd=""
  fi
else
  TmpLd="$ac_cv_prog_TmpLd"
fi

            if test "x$TmpLd" = "x"; then continue; fi

            out=`$TmpLd --version`
            case $out in
              "GNU ld"*)

    { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking whether C compiler supports -fuse-ld=bfd" >&5
printf %s "checking whether C compiler supports -fuse-ld=bfd... " >&6; }
    echo 'int main(void) {return 0;}' > conftest.c
    if $CC -o conftest.o -fuse-ld=bfd conftest.c > /dev/null 2>&1
    then
        GccUseLdOpt="-fuse-ld=bfd"
        { 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
    rm -f conftest.c conftest.o
 ;;
              "GNU gold"*)

    { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking whether C compiler supports -fuse-ld=gold" >&5
printf %s "checking whether C compiler supports -fuse-ld=gold... " >&6; }
    echo 'int main(void) {return 0;}' > conftest.c
    if $CC -o conftest.o -fuse-ld=gold conftest.c > /dev/null 2>&1
    then
        GccUseLdOpt="-fuse-ld=gold"
        { 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
    rm -f conftest.c conftest.o

                   if test "$cross_compiling" = "yes"; then
                       { printf "%s\n" "$as_me:${as_lineno-$LINENO}: Using ld.gold and assuming that it is not affected by binutils issue 22266" >&5
printf "%s\n" "$as_me: Using ld.gold and assuming that it is not affected by binutils issue 22266" >&6;};
                   fi
                   ;;
              "LLD"*)

    { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking whether C compiler supports -fuse-ld=lld" >&5
printf %s "checking whether C compiler supports -fuse-ld=lld... " >&6; }
    echo 'int main(void) {return 0;}' > conftest.c
    if $CC -o conftest.o -fuse-ld=lld conftest.c > /dev/null 2>&1
    then
        GccUseLdOpt="-fuse-ld=lld"
        { 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
    rm -f conftest.c conftest.o
 ;;
              *) { printf "%s\n" "$as_me:${as_lineno-$LINENO}: unknown linker version $out" >&5
printf "%s\n" "$as_me: unknown linker version $out" >&6;} ;;
            esac
            if test "z$GccUseLdOpt" = "z"; then
                { printf "%s\n" "$as_me:${as_lineno-$LINENO}: unable to convince '$CC' to use linker '$TmpLd'" >&5
printf "%s\n" "$as_me: unable to convince '$CC' to use linker '$TmpLd'" >&6;}
                # a terrible hack to prevent autoconf from caching the previous
                # AC_CHECK_TARGET_TOOL result since next time we'll be looking
                # for another ld variant.
                $as_unset ac_cv_prog_ac_ct_TmpLd
            else
                LD="$TmpLd"
                return
            fi
        done

        # Fallback
        # Extract the first word of "$target_alias-ld", so it can be a program name with args.
set dummy $target_alias-ld; 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_LD+y}
then :
  printf %s "(cached) " >&6
else $as_nop
  if test -n "$LD"; then
  ac_cv_prog_LD="$LD" # 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_LD="$target_alias-ld"
    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
fi
LD=$ac_cv_prog_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


if test -z "$ac_cv_prog_LD"; then
  if test "$build" = "$target"; then
    ac_ct_LD=$LD
    # Extract the first word of "ld", so it can be a program name with args.
set dummy ld; 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_LD+y}
then :
  printf %s "(cached) " >&6
else $as_nop
  if test -n "$ac_ct_LD"; then
  ac_cv_prog_ac_ct_LD="$ac_ct_LD" # 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_LD="ld"
    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
fi
ac_ct_LD=$ac_cv_prog_ac_ct_LD
if test -n "$ac_ct_LD"; then
  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_ct_LD" >&5
printf "%s\n" "$ac_ct_LD" >&6; }
else
  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
printf "%s\n" "no" >&6; }
fi

    LD=$ac_ct_LD
  else
    LD=""
  fi
else
  LD="$ac_cv_prog_LD"
fi

    }

    if test "x$enable_ld_override" = "xyes"; then
        find_ld
    else
        # Extract the first word of "$target_alias-ld", so it can be a program name with args.
set dummy $target_alias-ld; 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_LD+y}
then :
  printf %s "(cached) " >&6
else $as_nop
  if test -n "$LD"; then
  ac_cv_prog_LD="$LD" # 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_LD="$target_alias-ld"
    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
fi
LD=$ac_cv_prog_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


if test -z "$ac_cv_prog_LD"; then
  if test "$build" = "$target"; then
    ac_ct_LD=$LD
    # Extract the first word of "ld", so it can be a program name with args.
set dummy ld; 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_LD+y}
then :
  printf %s "(cached) " >&6
else $as_nop
  if test -n "$ac_ct_LD"; then
  ac_cv_prog_ac_ct_LD="$ac_ct_LD" # 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_LD="ld"
    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
fi
ac_ct_LD=$ac_cv_prog_ac_ct_LD
if test -n "$ac_ct_LD"; then
  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_ct_LD" >&5
printf "%s\n" "$ac_ct_LD" >&6; }
else
  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
printf "%s\n" "no" >&6; }
fi

    LD=$ac_ct_LD
  else
    LD=""
  fi
else
  LD="$ac_cv_prog_LD"
fi

    fi


    case $target in
      arm*linux*)
        # Extract the first word of "$target_alias-readelf", so it can be a program name with args.
set dummy $target_alias-readelf; 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_READELF+y}
then :
  printf %s "(cached) " >&6
else $as_nop
  if test -n "$READELF"; then
  ac_cv_prog_READELF="$READELF" # 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_READELF="$target_alias-readelf"
    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
fi
READELF=$ac_cv_prog_READELF
if test -n "$READELF"; then
  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $READELF" >&5
printf "%s\n" "$READELF" >&6; }
else
  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
printf "%s\n" "no" >&6; }
fi


if test -z "$ac_cv_prog_READELF"; then
  if test "$build" = "$target"; then
    ac_ct_READELF=$READELF
    # Extract the first word of "readelf", so it can be a program name with args.
set dummy readelf; 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_READELF+y}
then :
  printf %s "(cached) " >&6
else $as_nop
  if test -n "$ac_ct_READELF"; then
  ac_cv_prog_ac_ct_READELF="$ac_ct_READELF" # 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_READELF="readelf"
    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
fi
ac_ct_READELF=$ac_cv_prog_ac_ct_READELF
if test -n "$ac_ct_READELF"; then
  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_ct_READELF" >&5
printf "%s\n" "$ac_ct_READELF" >&6; }
else
  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
printf "%s\n" "no" >&6; }
fi

    READELF=$ac_ct_READELF
  else
    READELF=""
  fi
else
  READELF="$ac_cv_prog_READELF"
fi

        # Extract the first word of "$target_alias-as", so it can be a program name with args.
set dummy $target_alias-as; 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_AS+y}
then :
  printf %s "(cached) " >&6
else $as_nop
  if test -n "$AS"; then
  ac_cv_prog_AS="$AS" # 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_AS="$target_alias-as"
    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
fi
AS=$ac_cv_prog_AS
if test -n "$AS"; then
  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $AS" >&5
printf "%s\n" "$AS" >&6; }
else
  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
printf "%s\n" "no" >&6; }
fi


if test -z "$ac_cv_prog_AS"; then
  if test "$build" = "$target"; then
    ac_ct_AS=$AS
    # Extract the first word of "as", so it can be a program name with args.
set dummy as; 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_AS+y}
then :
  printf %s "(cached) " >&6
else $as_nop
  if test -n "$ac_ct_AS"; then
  ac_cv_prog_ac_ct_AS="$ac_ct_AS" # 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_AS="as"
    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
fi
ac_ct_AS=$ac_cv_prog_ac_ct_AS
if test -n "$ac_ct_AS"; then
  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_ct_AS" >&5
printf "%s\n" "$ac_ct_AS" >&6; }
else
  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
printf "%s\n" "no" >&6; }
fi

    AS=$ac_ct_AS
  else
    AS=""
  fi
else
  AS="$ac_cv_prog_AS"
fi

        { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for ld bug 16177" >&5
printf %s "checking for ld bug 16177... " >&6; }
        cat >actest.s <<-EOF
          .globl _start
          .p2align 4
        _start:
          bkpt

        .data
          .globl data_object
        object_reference:
          .long data_object
          .size object_reference, 4
EOF

        cat >aclib.s <<-EOF
          .data
          .globl data_object
          .type data_object, %object
          .size data_object, 4
        data_object:
            .long 123
EOF

        $AS -o aclib.o aclib.s
        $LD -shared -o aclib.so aclib.o

        $AS -o actest.o actest.s
        $LD -o actest actest.o aclib.so

        if $READELF -r actest | grep R_ARM_COPY > /dev/null; then
            { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: affected" >&5
printf "%s\n" "affected" >&6; }
            as_fn_error $? "Your linker is affected by binutils #16177, which
               critically breaks linkage of GHC objects. Please either upgrade
               binutils or supply a different linker with the LD environment
               variable." "$LINENO" 5
        else
            { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: unaffected" >&5
printf "%s\n" "unaffected" >&6; }
        fi

        rm -f aclib.s aclib.o aclib.so actest.s actest.o actest
        ;;
      *)
        ;;
    esac





    if test -z "$MergeObjsCmd"; then
        MergeObjsCmd="$LD"
    fi
    if test -z "$MergeObjsArgs"; then
        MergeObjsArgs="-r"
    fi


    { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for ld.gold object merging bug (binutils 22266)" >&5
printf %s "checking for ld.gold object merging bug (binutils 22266)... " >&6; }
    if ! $MergeObjsCmd --version | grep -q "GNU gold"; then
        # Not gold
        result=0
    elif test "$cross_compiling" = "yes"; then
        { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: cross-compiling, assuming LD can merge objects correctly." >&5
printf "%s\n" "cross-compiling, assuming LD can merge objects correctly." >&6; }
        result=0
    else

cat >conftest.a.c <<ACEOF

          __attribute__((section(".data.a")))
          static int int_from_a_1 = 0x11223344;

          __attribute__((section(".data.rel.ro.a")))
          int *p_int_from_a_2 = &int_from_a_1;

          const char *hello (void);

          const char *
          hello (void)
          {
            return "XXXHello, world!" + 3;
          }

ACEOF



cat >conftest.main.c <<ACEOF

          #include <stdlib.h>
          #include <string.h>

          extern int *p_int_from_a_2;
          extern const char *hello (void);

          int main (void) {
            if (*p_int_from_a_2 != 0x11223344)
              abort ();
            if (strcmp(hello(), "Hello, world!") != 0)
              abort ();
            return 0;
          }

ACEOF



cat >conftest.t <<ACEOF

          SECTIONS
          {
              .text : {
                  *(.text*)
              }
              .rodata :
              {
                  *(.rodata .rodata.* .gnu.linkonce.r.*)
              }
              .data.rel.ro : {
                  *(.data.rel.ro*)
              }
              .data : {
                  *(.data*)
              }
              .bss : {
                  *(.bss*)
              }
          }

ACEOF


        $CC -c -o conftest.a.o conftest.a.c || as_fn_error $? "Failed to compile test" "$LINENO" 5
        $MergeObjsCmd $MergeObjsArgs -T conftest.t conftest.a.o -o conftest.ar.o || as_fn_error $? "Failed to merge test object" "$LINENO" 5

        $CC -c -o conftest.main.o conftest.main.c || as_fn_error $? "Failed to compile test driver" "$LINENO" 5
        $CC conftest.ar.o conftest.main.o -o conftest || as_fn_error $? "Failed to link test driver" "$LINENO" 5

        if ./conftest; then
            { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: not affected" >&5
printf "%s\n" "not affected" >&6; }
            result=0
        else
            { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: affected" >&5
printf "%s\n" "affected" >&6; }
            result=1
        fi
        rm -f conftest.a.o conftest.a.c  conttest.ar.o conftest.main.c conftest.main.o conftest
    fi

    if test "$result" = "1"; then
        { printf "%s\n" "$as_me:${as_lineno-$LINENO}: $MergeObjsCmd is broken due to binutils 22266, looking for another linker..." >&5
printf "%s\n" "$as_me: $MergeObjsCmd is broken due to binutils 22266, looking for another linker..." >&6;}
        MergeObjsCmd=""
        # Extract the first word of "$target_alias-ld", so it can be a program name with args.
set dummy $target_alias-ld; 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_MergeObjsCmd+y}
then :
  printf %s "(cached) " >&6
else $as_nop
  if test -n "$MergeObjsCmd"; then
  ac_cv_prog_MergeObjsCmd="$MergeObjsCmd" # 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_MergeObjsCmd="$target_alias-ld"
    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
fi
MergeObjsCmd=$ac_cv_prog_MergeObjsCmd
if test -n "$MergeObjsCmd"; then
  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $MergeObjsCmd" >&5
printf "%s\n" "$MergeObjsCmd" >&6; }
else
  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
printf "%s\n" "no" >&6; }
fi


if test -z "$ac_cv_prog_MergeObjsCmd"; then
  if test "$build" = "$target"; then
    ac_ct_MergeObjsCmd=$MergeObjsCmd
    # Extract the first word of "ld", so it can be a program name with args.
set dummy ld; 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_MergeObjsCmd+y}
then :
  printf %s "(cached) " >&6
else $as_nop
  if test -n "$ac_ct_MergeObjsCmd"; then
  ac_cv_prog_ac_ct_MergeObjsCmd="$ac_ct_MergeObjsCmd" # 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_MergeObjsCmd="ld"
    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
fi
ac_ct_MergeObjsCmd=$ac_cv_prog_ac_ct_MergeObjsCmd
if test -n "$ac_ct_MergeObjsCmd"; then
  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_ct_MergeObjsCmd" >&5
printf "%s\n" "$ac_ct_MergeObjsCmd" >&6; }
else
  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
printf "%s\n" "no" >&6; }
fi

    MergeObjsCmd=$ac_ct_MergeObjsCmd
  else
    MergeObjsCmd=""
  fi
else
  MergeObjsCmd="$ac_cv_prog_MergeObjsCmd"
fi


    { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for ld.gold object merging bug (binutils 22266)" >&5
printf %s "checking for ld.gold object merging bug (binutils 22266)... " >&6; }
    if ! $MergeObjsCmd --version | grep -q "GNU gold"; then
        # Not gold
        result=0
    elif test "$cross_compiling" = "yes"; then
        { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: cross-compiling, assuming LD can merge objects correctly." >&5
printf "%s\n" "cross-compiling, assuming LD can merge objects correctly." >&6; }
        result=0
    else

cat >conftest.a.c <<ACEOF

          __attribute__((section(".data.a")))
          static int int_from_a_1 = 0x11223344;

          __attribute__((section(".data.rel.ro.a")))
          int *p_int_from_a_2 = &int_from_a_1;

          const char *hello (void);

          const char *
          hello (void)
          {
            return "XXXHello, world!" + 3;
          }

ACEOF



cat >conftest.main.c <<ACEOF

          #include <stdlib.h>
          #include <string.h>

          extern int *p_int_from_a_2;
          extern const char *hello (void);

          int main (void) {
            if (*p_int_from_a_2 != 0x11223344)
              abort ();
            if (strcmp(hello(), "Hello, world!") != 0)
              abort ();
            return 0;
          }

ACEOF



cat >conftest.t <<ACEOF

          SECTIONS
          {
              .text : {
                  *(.text*)
              }
              .rodata :
              {
                  *(.rodata .rodata.* .gnu.linkonce.r.*)
              }
              .data.rel.ro : {
                  *(.data.rel.ro*)
              }
              .data : {
                  *(.data*)
              }
              .bss : {
                  *(.bss*)
              }
          }

ACEOF


        $CC -c -o conftest.a.o conftest.a.c || as_fn_error $? "Failed to compile test" "$LINENO" 5
        $MergeObjsCmd $MergeObjsArgs -T conftest.t conftest.a.o -o conftest.ar.o || as_fn_error $? "Failed to merge test object" "$LINENO" 5

        $CC -c -o conftest.main.o conftest.main.c || as_fn_error $? "Failed to compile test driver" "$LINENO" 5
        $CC conftest.ar.o conftest.main.o -o conftest || as_fn_error $? "Failed to link test driver" "$LINENO" 5

        if ./conftest; then
            { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: not affected" >&5
printf "%s\n" "not affected" >&6; }
            result=0
        else
            { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: affected" >&5
printf "%s\n" "affected" >&6; }
            result=1
        fi
        rm -f conftest.a.o conftest.a.c  conttest.ar.o conftest.main.c conftest.main.o conftest
    fi

        if test "$result" = "1"; then
            as_fn_error $? "Linker is affected by binutils 22266 but couldn't find another unaffected linker. Please set the MergeObjsCmd variable to a functional linker." "$LINENO" 5
        fi
    fi




CONF_GCC_LINKER_OPTS_STAGE1="$CONF_GCC_LINKER_OPTS_STAGE1 $GccUseLdOpt"
CONF_GCC_LINKER_OPTS_STAGE2="$CONF_GCC_LINKER_OPTS_STAGE2 $GccUseLdOpt"
LdCmd="$LD"
CFLAGS="$CFLAGS $GccUseLdOpt"



{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking whether ld is GNU ld" >&5
printf %s "checking whether ld is GNU ld... " >&6; }
if test ${fp_cv_gnu_ld+y}
then :
  printf %s "(cached) " >&6
else $as_nop
  if ${LdCmd} --version 2> /dev/null | grep "GNU" > /dev/null 2>&1; then
  fp_cv_gnu_ld=YES
else
  fp_cv_gnu_ld=NO
fi
fi
{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $fp_cv_gnu_ld" >&5
printf "%s\n" "$fp_cv_gnu_ld" >&6; }
LdIsGNULd="$fp_cv_gnu_ld"



{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking whether ld understands --build-id" >&5
printf %s "checking whether ld understands --build-id... " >&6; }
if test ${fp_cv_ld_build_id+y}
then :
  printf %s "(cached) " >&6
else $as_nop
  echo 'int foo() { return 0; }' > conftest.c
${CC-cc} -c conftest.c
if ${LdCmd} -r --build-id=none -o conftest2.o conftest.o > /dev/null 2>&1; then
   fp_cv_ld_build_id=yes
else
   fp_cv_ld_build_id=no
fi
rm -rf conftest*
fi
{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $fp_cv_ld_build_id" >&5
printf "%s\n" "$fp_cv_ld_build_id" >&6; }
if test "$fp_cv_ld_build_id" = yes; then
  LdHasBuildId=YES
else
  LdHasBuildId=NO
fi



{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking whether ld understands -no_compact_unwind" >&5
printf %s "checking whether ld understands -no_compact_unwind... " >&6; }
if test ${fp_cv_ld_no_compact_unwind+y}
then :
  printf %s "(cached) " >&6
else $as_nop
  echo 'int foo() { return 0; }' > conftest.c
${CC-cc} -c conftest.c
if ${LdCmd} -r -no_compact_unwind -o conftest2.o conftest.o > /dev/null 2>&1; then
   fp_cv_ld_no_compact_unwind=yes
else
   fp_cv_ld_no_compact_unwind=no
fi
rm -rf conftest*
fi
{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $fp_cv_ld_no_compact_unwind" >&5
printf "%s\n" "$fp_cv_ld_no_compact_unwind" >&6; }
if test "$fp_cv_ld_no_compact_unwind" = yes; then
  LdHasNoCompactUnwind=YES
else
  LdHasNoCompactUnwind=NO
fi



{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking whether ld understands -filelist" >&5
printf %s "checking whether ld understands -filelist... " >&6; }
if test ${fp_cv_ld_has_filelist+y}
then :
  printf %s "(cached) " >&6
else $as_nop

    echo 'int foo() { return 0; }' > conftest1.c
    echo 'int bar() { return 0; }' > conftest2.c
    ${CC-cc} -c conftest1.c
    ${CC-cc} -c conftest2.c
    echo conftest1.o  > conftest.o-files
    echo conftest2.o >> conftest.o-files
    if ${LdCmd} -r -filelist conftest.o-files -o conftest.o > /dev/null 2>&1
    then
        fp_cv_ld_has_filelist=yes
    else
        fp_cv_ld_has_filelist=no
    fi
    rm -rf conftest*

fi
{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $fp_cv_ld_has_filelist" >&5
printf "%s\n" "$fp_cv_ld_has_filelist" >&6; }
if test "$fp_cv_ld_has_filelist" = yes; then
    LdHasFilelist=YES
else
    LdHasFilelist=NO
fi



if test "$HostOS" != "mingw32"; then
    # Extract the first word of "$target_alias-nm", so it can be a program name with args.
set dummy $target_alias-nm; 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_NM+y}
then :
  printf %s "(cached) " >&6
else $as_nop
  if test -n "$NM"; then
  ac_cv_prog_NM="$NM" # 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_NM="$target_alias-nm"
    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
fi
NM=$ac_cv_prog_NM
if test -n "$NM"; then
  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $NM" >&5
printf "%s\n" "$NM" >&6; }
else
  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
printf "%s\n" "no" >&6; }
fi


if test -z "$ac_cv_prog_NM"; then
  if test "$build" = "$target"; then
    ac_ct_NM=$NM
    # Extract the first word of "nm", so it can be a program name with args.
set dummy nm; 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_NM+y}
then :
  printf %s "(cached) " >&6
else $as_nop
  if test -n "$ac_ct_NM"; then
  ac_cv_prog_ac_ct_NM="$ac_ct_NM" # 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_NM="nm"
    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
fi
ac_ct_NM=$ac_cv_prog_ac_ct_NM
if test -n "$ac_ct_NM"; then
  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_ct_NM" >&5
printf "%s\n" "$ac_ct_NM" >&6; }
else
  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
printf "%s\n" "no" >&6; }
fi

    NM=$ac_ct_NM
  else
    NM=""
  fi
else
  NM="$ac_cv_prog_NM"
fi

    if test "$NM" = ":"; then
        as_fn_error $? "cannot find nm in your PATH" "$LINENO" 5
    fi
fi
NmCmd="$NM"


if test "$TargetOS_CPP" = "darwin"
then
    { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking whether nm program is broken" >&5
printf %s "checking whether nm program is broken... " >&6; }
    # Some versions of Xcode ship a broken version of `nm`. Detect and work
    # around this issue. See : https://gitlab.haskell.org/ghc/ghc/issues/11744
    nmver=$(${NM} --version | grep version | sed 's/ //g')
    case "$nmver" in
        LLVMversion7.3.0|LLVMversion7.3.1)
            { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: yes" >&5
printf "%s\n" "yes" >&6; }
            echo "The detected nm program is broken."
            echo
            echo "See: https://gitlab.haskell.org/ghc/ghc/issues/11744"
            echo
            echo "Try re-running configure with:"
            echo
            echo '   NM=$(xcrun --find nm-classic) ./configure'
            echo
            exit 1
            ;;
        *)
            { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
printf "%s\n" "no" >&6; }
            ;;
        esac
fi

case $HostOS_CPP in
  cygwin32|mingw32|openbsd|aix)
    # Extract the first word of "$target_alias-objdump", so it can be a program name with args.
set dummy $target_alias-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 $as_nop
  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="$target_alias-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
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


if test -z "$ac_cv_prog_OBJDUMP"; then
  if test "$build" = "$target"; 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 $as_nop
  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
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

    OBJDUMP=$ac_ct_OBJDUMP
  else
    OBJDUMP=""
  fi
else
  OBJDUMP="$ac_cv_prog_OBJDUMP"
fi

    ;;
esac

ObjdumpCmd="$OBJDUMP"


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 $as_nop
  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
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 $as_nop
  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
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 "$RANLIB" = ":"; then
    as_fn_error $? "cannot find ranlib in your PATH" "$LINENO" 5
fi
RanlibCmd="$RANLIB"


# Extract the first word of "$target_alias-strip", so it can be a program name with args.
set dummy $target_alias-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 $as_nop
  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="$target_alias-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
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


if test -z "$ac_cv_prog_STRIP"; then
  if test "$build" = "$target"; 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 $as_nop
  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
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

    STRIP=$ac_ct_STRIP
  else
    STRIP=""
  fi
else
  STRIP="$ac_cv_prog_STRIP"
fi

StripCmd="$STRIP"



# The host normalization on Windows breaks autoconf, it no longer
# thinks that target == host so it never checks the unqualified
# tools for Windows. See #14274.
if test "$HostOS" = "mingw32"
then
    # Extract the first word of "libtool", so it can be a program name with args.
set dummy libtool; 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_LIBTOOL+y}
then :
  printf %s "(cached) " >&6
else $as_nop
  case $LIBTOOL in
  [\\/]* | ?:[\\/]*)
  ac_cv_path_LIBTOOL="$LIBTOOL" # 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_LIBTOOL="$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

  ;;
esac
fi
LIBTOOL=$ac_cv_path_LIBTOOL
if test -n "$LIBTOOL"; then
  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $LIBTOOL" >&5
printf "%s\n" "$LIBTOOL" >&6; }
else
  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
printf "%s\n" "no" >&6; }
fi


    LibtoolCmd="$(cygpath -m $LIBTOOL)"
else
    # Extract the first word of "$target_alias-libtool", so it can be a program name with args.
set dummy $target_alias-libtool; 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_LIBTOOL+y}
then :
  printf %s "(cached) " >&6
else $as_nop
  if test -n "$LIBTOOL"; then
  ac_cv_prog_LIBTOOL="$LIBTOOL" # 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_LIBTOOL="$target_alias-libtool"
    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
fi
LIBTOOL=$ac_cv_prog_LIBTOOL
if test -n "$LIBTOOL"; then
  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $LIBTOOL" >&5
printf "%s\n" "$LIBTOOL" >&6; }
else
  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
printf "%s\n" "no" >&6; }
fi


if test -z "$ac_cv_prog_LIBTOOL"; then
  if test "$build" = "$target"; then
    ac_ct_LIBTOOL=$LIBTOOL
    # Extract the first word of "libtool", so it can be a program name with args.
set dummy libtool; 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_LIBTOOL+y}
then :
  printf %s "(cached) " >&6
else $as_nop
  if test -n "$ac_ct_LIBTOOL"; then
  ac_cv_prog_ac_ct_LIBTOOL="$ac_ct_LIBTOOL" # 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_LIBTOOL="libtool"
    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
fi
ac_ct_LIBTOOL=$ac_cv_prog_ac_ct_LIBTOOL
if test -n "$ac_ct_LIBTOOL"; then
  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_ct_LIBTOOL" >&5
printf "%s\n" "$ac_ct_LIBTOOL" >&6; }
else
  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
printf "%s\n" "no" >&6; }
fi

    LIBTOOL=$ac_ct_LIBTOOL
  else
    LIBTOOL=""
  fi
else
  LIBTOOL="$ac_cv_prog_LIBTOOL"
fi

    LibtoolCmd="$LIBTOOL"
fi


# Extract the first word of "$target_alias-otool", so it can be a program name with args.
set dummy $target_alias-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 $as_nop
  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="$target_alias-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
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


if test -z "$ac_cv_prog_OTOOL"; then
  if test "$build" = "$target"; 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 $as_nop
  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
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

    OTOOL=$ac_ct_OTOOL
  else
    OTOOL=""
  fi
else
  OTOOL="$ac_cv_prog_OTOOL"
fi

OtoolCmd="$OTOOL"


# Extract the first word of "$target_alias-install_name_tool", so it can be a program name with args.
set dummy $target_alias-install_name_tool; 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_INSTALL_NAME_TOOL+y}
then :
  printf %s "(cached) " >&6
else $as_nop
  if test -n "$INSTALL_NAME_TOOL"; then
  ac_cv_prog_INSTALL_NAME_TOOL="$INSTALL_NAME_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_INSTALL_NAME_TOOL="$target_alias-install_name_tool"
    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
fi
INSTALL_NAME_TOOL=$ac_cv_prog_INSTALL_NAME_TOOL
if test -n "$INSTALL_NAME_TOOL"; then
  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $INSTALL_NAME_TOOL" >&5
printf "%s\n" "$INSTALL_NAME_TOOL" >&6; }
else
  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
printf "%s\n" "no" >&6; }
fi


if test -z "$ac_cv_prog_INSTALL_NAME_TOOL"; then
  if test "$build" = "$target"; then
    ac_ct_INSTALL_NAME_TOOL=$INSTALL_NAME_TOOL
    # Extract the first word of "install_name_tool", so it can be a program name with args.
set dummy install_name_tool; 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_INSTALL_NAME_TOOL+y}
then :
  printf %s "(cached) " >&6
else $as_nop
  if test -n "$ac_ct_INSTALL_NAME_TOOL"; then
  ac_cv_prog_ac_ct_INSTALL_NAME_TOOL="$ac_ct_INSTALL_NAME_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_INSTALL_NAME_TOOL="install_name_tool"
    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
fi
ac_ct_INSTALL_NAME_TOOL=$ac_cv_prog_ac_ct_INSTALL_NAME_TOOL
if test -n "$ac_ct_INSTALL_NAME_TOOL"; then
  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_ct_INSTALL_NAME_TOOL" >&5
printf "%s\n" "$ac_ct_INSTALL_NAME_TOOL" >&6; }
else
  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
printf "%s\n" "no" >&6; }
fi

    INSTALL_NAME_TOOL=$ac_ct_INSTALL_NAME_TOOL
  else
    INSTALL_NAME_TOOL=""
  fi
else
  INSTALL_NAME_TOOL="$ac_cv_prog_INSTALL_NAME_TOOL"
fi

InstallNameToolCmd="$INSTALL_NAME_TOOL"


# Here is where we re-target which specific version of the LLVM
# tools we are looking for. In the past, GHC supported a number of
# versions of LLVM simultaneously, but that stopped working around
# 3.5/3.6 release of LLVM.
LlvmMinVersion=9  # inclusive
LlvmMaxVersion=13 # not inclusive


sUPPORTED_LLVM_VERSION_MIN=$(echo \($LlvmMinVersion\) | sed 's/\./,/')
sUPPORTED_LLVM_VERSION_MAX=$(echo \($LlvmMaxVersion\) | sed 's/\./,/')

printf "%s\n" "#define sUPPORTED_LLVM_VERSION_MIN ${sUPPORTED_LLVM_VERSION_MIN}" >>confdefs.h


printf "%s\n" "#define sUPPORTED_LLVM_VERSION_MAX ${sUPPORTED_LLVM_VERSION_MAX}" >>confdefs.h



# Extract the first word of "$target_alias-clang", so it can be a program name with args.
set dummy $target_alias-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_CLANG+y}
then :
  printf %s "(cached) " >&6
else $as_nop
  if test -n "$CLANG"; then
  ac_cv_prog_CLANG="$CLANG" # 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_CLANG="$target_alias-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
fi
CLANG=$ac_cv_prog_CLANG
if test -n "$CLANG"; then
  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $CLANG" >&5
printf "%s\n" "$CLANG" >&6; }
else
  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
printf "%s\n" "no" >&6; }
fi


if test -z "$ac_cv_prog_CLANG"; then
  if test "$build" = "$target"; then
    ac_ct_CLANG=$CLANG
    # 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_CLANG+y}
then :
  printf %s "(cached) " >&6
else $as_nop
  if test -n "$ac_ct_CLANG"; then
  ac_cv_prog_ac_ct_CLANG="$ac_ct_CLANG" # 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_CLANG="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
fi
ac_ct_CLANG=$ac_cv_prog_ac_ct_CLANG
if test -n "$ac_ct_CLANG"; then
  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_ct_CLANG" >&5
printf "%s\n" "$ac_ct_CLANG" >&6; }
else
  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
printf "%s\n" "no" >&6; }
fi

    CLANG=$ac_ct_CLANG
  else
    CLANG=""
  fi
else
  CLANG="$ac_cv_prog_CLANG"
fi

ClangCmd="$CLANG"



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 $as_nop
  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
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


    # Test for program with and without version name.
    PROG_VERSION_CANDIDATES=$(for llvmVersion in `seq $LlvmMaxVersion -1 $LlvmMinVersion`; do echo "llc-$llvmVersion llc-$llvmVersion.0"; done)
    if test -n "$ac_tool_prefix"; then
  for ac_prog in $PROG_VERSION_CANDIDATES llc
  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_LLC+y}
then :
  printf %s "(cached) " >&6
else $as_nop
  if test -n "$LLC"; then
  ac_cv_prog_LLC="$LLC" # 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_LLC="$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
fi
LLC=$ac_cv_prog_LLC
if test -n "$LLC"; then
  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $LLC" >&5
printf "%s\n" "$LLC" >&6; }
else
  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
printf "%s\n" "no" >&6; }
fi


    test -n "$LLC" && break
  done
fi
if test -z "$LLC"; then
  ac_ct_LLC=$LLC
  for ac_prog in $PROG_VERSION_CANDIDATES llc
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_LLC+y}
then :
  printf %s "(cached) " >&6
else $as_nop
  if test -n "$ac_ct_LLC"; then
  ac_cv_prog_ac_ct_LLC="$ac_ct_LLC" # 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_LLC="$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
fi
ac_ct_LLC=$ac_cv_prog_ac_ct_LLC
if test -n "$ac_ct_LLC"; then
  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_ct_LLC" >&5
printf "%s\n" "$ac_ct_LLC" >&6; }
else
  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
printf "%s\n" "no" >&6; }
fi


  test -n "$ac_ct_LLC" && break
done

  if test "x$ac_ct_LLC" = x; then
    LLC=""
  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
    LLC=$ac_ct_LLC
  fi
fi

    if test x"$LLC" != x
then :

        PROG_VERSION=`$LLC --version | awk '/.*version [0-9\.]+/{for(i=1;i<=NF;i++){ if(\$i ~ /^[0-9\.]+$/){print \$i}}}'`
        if test x"$PROG_VERSION" == x
then :
  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
printf "%s\n" "no" >&6; }
           LLC=""
           { printf "%s\n" "$as_me:${as_lineno-$LINENO}: We only support llvm $LlvmMinVersion to $LlvmMaxVersion (no version found)." >&5
printf "%s\n" "$as_me: We only support llvm $LlvmMinVersion to $LlvmMaxVersion (no version found)." >&6;}
else $as_nop
  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking $LLC version ($PROG_VERSION) is between $LlvmMinVersion and $LlvmMaxVersion" >&5
printf %s "checking $LLC version ($PROG_VERSION) is between $LlvmMinVersion and $LlvmMaxVersion... " >&6; }



  # Used to indicate true or false condition
  ax_compare_version=false

  # Convert the two version strings to be compared into a format that
  # allows a simple string comparison.  The end result is that a version
  # string of the form 1.12.5-r617 will be converted to the form
  # 0001001200050617.  In other words, each number is zero padded to four
  # digits, and non digits are removed.

  ax_compare_version_A=`echo "$PROG_VERSION" | sed -e 's/\([0-9]*\)/Z\1Z/g' \
                     -e 's/Z\([0-9]\)Z/Z0\1Z/g' \
                     -e 's/Z\([0-9][0-9]\)Z/Z0\1Z/g' \
                     -e 's/Z\([0-9][0-9][0-9]\)Z/Z0\1Z/g' \
                     -e 's/[^0-9]//g'`


  ax_compare_version_B=`echo "$LlvmMinVersion" | sed -e 's/\([0-9]*\)/Z\1Z/g' \
                     -e 's/Z\([0-9]\)Z/Z0\1Z/g' \
                     -e 's/Z\([0-9][0-9]\)Z/Z0\1Z/g' \
                     -e 's/Z\([0-9][0-9][0-9]\)Z/Z0\1Z/g' \
                     -e 's/[^0-9]//g'`


    ax_compare_version=`echo "x$ax_compare_version_A
x$ax_compare_version_B" | sed 's/^ *//' | sort -r | sed "s/x${ax_compare_version_A}/false/;s/x${ax_compare_version_B}/true/;1q"`



    if test "$ax_compare_version" = "true" ; then
    { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
printf "%s\n" "no" >&6; }
             LLC=""
             { printf "%s\n" "$as_me:${as_lineno-$LINENO}: We only support llvm $LlvmMinVersion to $LlvmMaxVersion (found $PROG_VERSION)." >&5
printf "%s\n" "$as_me: We only support llvm $LlvmMinVersion to $LlvmMaxVersion (found $PROG_VERSION)." >&6;}
    else


  # Used to indicate true or false condition
  ax_compare_version=false

  # Convert the two version strings to be compared into a format that
  # allows a simple string comparison.  The end result is that a version
  # string of the form 1.12.5-r617 will be converted to the form
  # 0001001200050617.  In other words, each number is zero padded to four
  # digits, and non digits are removed.

  ax_compare_version_A=`echo "$PROG_VERSION" | sed -e 's/\([0-9]*\)/Z\1Z/g' \
                     -e 's/Z\([0-9]\)Z/Z0\1Z/g' \
                     -e 's/Z\([0-9][0-9]\)Z/Z0\1Z/g' \
                     -e 's/Z\([0-9][0-9][0-9]\)Z/Z0\1Z/g' \
                     -e 's/[^0-9]//g'`


  ax_compare_version_B=`echo "$LlvmMaxVersion" | sed -e 's/\([0-9]*\)/Z\1Z/g' \
                     -e 's/Z\([0-9]\)Z/Z0\1Z/g' \
                     -e 's/Z\([0-9][0-9]\)Z/Z0\1Z/g' \
                     -e 's/Z\([0-9][0-9][0-9]\)Z/Z0\1Z/g' \
                     -e 's/[^0-9]//g'`


    ax_compare_version=`echo "x$ax_compare_version_A
x$ax_compare_version_B" | sed 's/^ *//' | sort -r | sed "s/x${ax_compare_version_A}/true/;s/x${ax_compare_version_B}/false/;1q"`



    if test "$ax_compare_version" = "true" ; then
    { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
printf "%s\n" "no" >&6; }
              LLC=""
              { printf "%s\n" "$as_me:${as_lineno-$LINENO}: We only support llvm $LlvmMinVersion to $LlvmMaxVersion (found $PROG_VERSION)." >&5
printf "%s\n" "$as_me: We only support llvm $LlvmMinVersion to $LlvmMaxVersion (found $PROG_VERSION)." >&6;}
    else { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: yes" >&5
printf "%s\n" "yes" >&6; }
  fi

  fi

fi
fi

LlcCmd="$LLC"




    # Test for program with and without version name.
    PROG_VERSION_CANDIDATES=$(for llvmVersion in `seq $LlvmMaxVersion -1 $LlvmMinVersion`; do echo "opt-$llvmVersion opt-$llvmVersion.0"; done)
    if test -n "$ac_tool_prefix"; then
  for ac_prog in $PROG_VERSION_CANDIDATES opt
  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_OPT+y}
then :
  printf %s "(cached) " >&6
else $as_nop
  if test -n "$OPT"; then
  ac_cv_prog_OPT="$OPT" # 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_OPT="$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
fi
OPT=$ac_cv_prog_OPT
if test -n "$OPT"; then
  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $OPT" >&5
printf "%s\n" "$OPT" >&6; }
else
  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
printf "%s\n" "no" >&6; }
fi


    test -n "$OPT" && break
  done
fi
if test -z "$OPT"; then
  ac_ct_OPT=$OPT
  for ac_prog in $PROG_VERSION_CANDIDATES opt
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_OPT+y}
then :
  printf %s "(cached) " >&6
else $as_nop
  if test -n "$ac_ct_OPT"; then
  ac_cv_prog_ac_ct_OPT="$ac_ct_OPT" # 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_OPT="$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
fi
ac_ct_OPT=$ac_cv_prog_ac_ct_OPT
if test -n "$ac_ct_OPT"; then
  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_ct_OPT" >&5
printf "%s\n" "$ac_ct_OPT" >&6; }
else
  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
printf "%s\n" "no" >&6; }
fi


  test -n "$ac_ct_OPT" && break
done

  if test "x$ac_ct_OPT" = x; then
    OPT=""
  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
    OPT=$ac_ct_OPT
  fi
fi

    if test x"$OPT" != x
then :

        PROG_VERSION=`$OPT --version | awk '/.*version [0-9\.]+/{for(i=1;i<=NF;i++){ if(\$i ~ /^[0-9\.]+$/){print \$i}}}'`
        if test x"$PROG_VERSION" == x
then :
  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
printf "%s\n" "no" >&6; }
           OPT=""
           { printf "%s\n" "$as_me:${as_lineno-$LINENO}: We only support llvm $LlvmMinVersion to $LlvmMaxVersion (no version found)." >&5
printf "%s\n" "$as_me: We only support llvm $LlvmMinVersion to $LlvmMaxVersion (no version found)." >&6;}
else $as_nop
  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking $OPT version ($PROG_VERSION) is between $LlvmMinVersion and $LlvmMaxVersion" >&5
printf %s "checking $OPT version ($PROG_VERSION) is between $LlvmMinVersion and $LlvmMaxVersion... " >&6; }



  # Used to indicate true or false condition
  ax_compare_version=false

  # Convert the two version strings to be compared into a format that
  # allows a simple string comparison.  The end result is that a version
  # string of the form 1.12.5-r617 will be converted to the form
  # 0001001200050617.  In other words, each number is zero padded to four
  # digits, and non digits are removed.

  ax_compare_version_A=`echo "$PROG_VERSION" | sed -e 's/\([0-9]*\)/Z\1Z/g' \
                     -e 's/Z\([0-9]\)Z/Z0\1Z/g' \
                     -e 's/Z\([0-9][0-9]\)Z/Z0\1Z/g' \
                     -e 's/Z\([0-9][0-9][0-9]\)Z/Z0\1Z/g' \
                     -e 's/[^0-9]//g'`


  ax_compare_version_B=`echo "$LlvmMinVersion" | sed -e 's/\([0-9]*\)/Z\1Z/g' \
                     -e 's/Z\([0-9]\)Z/Z0\1Z/g' \
                     -e 's/Z\([0-9][0-9]\)Z/Z0\1Z/g' \
                     -e 's/Z\([0-9][0-9][0-9]\)Z/Z0\1Z/g' \
                     -e 's/[^0-9]//g'`


    ax_compare_version=`echo "x$ax_compare_version_A
x$ax_compare_version_B" | sed 's/^ *//' | sort -r | sed "s/x${ax_compare_version_A}/false/;s/x${ax_compare_version_B}/true/;1q"`



    if test "$ax_compare_version" = "true" ; then
    { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
printf "%s\n" "no" >&6; }
             OPT=""
             { printf "%s\n" "$as_me:${as_lineno-$LINENO}: We only support llvm $LlvmMinVersion to $LlvmMaxVersion (found $PROG_VERSION)." >&5
printf "%s\n" "$as_me: We only support llvm $LlvmMinVersion to $LlvmMaxVersion (found $PROG_VERSION)." >&6;}
    else


  # Used to indicate true or false condition
  ax_compare_version=false

  # Convert the two version strings to be compared into a format that
  # allows a simple string comparison.  The end result is that a version
  # string of the form 1.12.5-r617 will be converted to the form
  # 0001001200050617.  In other words, each number is zero padded to four
  # digits, and non digits are removed.

  ax_compare_version_A=`echo "$PROG_VERSION" | sed -e 's/\([0-9]*\)/Z\1Z/g' \
                     -e 's/Z\([0-9]\)Z/Z0\1Z/g' \
                     -e 's/Z\([0-9][0-9]\)Z/Z0\1Z/g' \
                     -e 's/Z\([0-9][0-9][0-9]\)Z/Z0\1Z/g' \
                     -e 's/[^0-9]//g'`


  ax_compare_version_B=`echo "$LlvmMaxVersion" | sed -e 's/\([0-9]*\)/Z\1Z/g' \
                     -e 's/Z\([0-9]\)Z/Z0\1Z/g' \
                     -e 's/Z\([0-9][0-9]\)Z/Z0\1Z/g' \
                     -e 's/Z\([0-9][0-9][0-9]\)Z/Z0\1Z/g' \
                     -e 's/[^0-9]//g'`


    ax_compare_version=`echo "x$ax_compare_version_A
x$ax_compare_version_B" | sed 's/^ *//' | sort -r | sed "s/x${ax_compare_version_A}/true/;s/x${ax_compare_version_B}/false/;1q"`



    if test "$ax_compare_version" = "true" ; then
    { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
printf "%s\n" "no" >&6; }
              OPT=""
              { printf "%s\n" "$as_me:${as_lineno-$LINENO}: We only support llvm $LlvmMinVersion to $LlvmMaxVersion (found $PROG_VERSION)." >&5
printf "%s\n" "$as_me: We only support llvm $LlvmMinVersion to $LlvmMaxVersion (found $PROG_VERSION)." >&6;}
    else { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: yes" >&5
printf "%s\n" "yes" >&6; }
  fi

  fi

fi
fi

OptCmd="$OPT"



{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: Creating links for in-tree file handling routines" >&5
printf "%s\n" "$as_me: Creating links for in-tree file handling routines" >&6;}
ln -f utils/fs/fs.* utils/lndir/
ln -f utils/fs/fs.* utils/unlit/
ln -f utils/fs/fs.* rts/
ln -f utils/fs/fs.h libraries/base/include/
ln -f utils/fs/fs.c libraries/base/cbits/
{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: Routines in place. Packages can now be build normally." >&5
printf "%s\n" "$as_me: Routines in place. Packages can now be build normally." >&6;}

{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: Creating links for ghci wrapper" >&5
printf "%s\n" "$as_me: Creating links for ghci wrapper" >&6;}
ln -f driver/utils/getLocation.c driver/ghci/
ln -f driver/utils/getLocation.h driver/ghci/
ln -f driver/utils/isMinTTY.c driver/ghci/
ln -f driver/utils/isMinTTY.h driver/ghci/
ln -f driver/utils/cwrapper.c driver/ghci/
ln -f driver/utils/cwrapper.h driver/ghci/
{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: done." >&5
printf "%s\n" "$as_me: done." >&6;}


{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking whether #! works in shell scripts" >&5
printf %s "checking whether #! works in shell scripts... " >&6; }
if test ${ac_cv_sys_interpreter+y}
then :
  printf %s "(cached) " >&6
else $as_nop
  echo '#! /bin/cat
exit 69
' >conftest
chmod u+x conftest
(SHELL=/bin/sh; export SHELL; ./conftest >/dev/null 2>&1)
if test $? -ne 69; then
   ac_cv_sys_interpreter=yes
else
   ac_cv_sys_interpreter=no
fi
rm -f conftest
fi
{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_cv_sys_interpreter" >&5
printf "%s\n" "$ac_cv_sys_interpreter" >&6; }
interpval=$ac_cv_sys_interpreter




  if test -z "$CC"; then
    as_fn_error $? "C compiler is required" "$LINENO" 5
  fi

  if $CC --version | grep -q gcc; then
    { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking version of gcc" >&5
printf %s "checking version of gcc... " >&6; }
if test ${fp_cv_gcc_version+y}
then :
  printf %s "(cached) " >&6
else $as_nop

        # Be sure only to look at the first occurrence of the "version " string;
        # Some Apple compilers emit multiple messages containing this string.
        { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking version of gcc" >&5
printf %s "checking version of gcc... " >&6; }
        fp_cv_gcc_version="`$CC -v 2>&1 | sed -n -e '1,/version /s/.*version [^0-9]*\([0-9.]*\).*/\1/p'`"
        { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $fp_cv_gcc_version" >&5
printf "%s\n" "$fp_cv_gcc_version" >&6; }
        # 4.7 is needed for __atomic_ builtins.
        fp_version1=$fp_cv_gcc_version; fp_version2=4.7
fp_save_IFS=$IFS; IFS='.'
while test x"$fp_version1" != x || test x"$fp_version2" != x
do

  set dummy $fp_version1; shift
  fp_num1=""
  test $# = 0 || { fp_num1="$1"; shift; }
  test x"$fp_num1" = x && fp_num1="0"
  fp_version1="$*"

  set dummy $fp_version2; shift
  fp_num2=""
  test $# = 0 || { fp_num2="$1"; shift; }
  test x"$fp_num2" = x && fp_num2="0"
  fp_version2="$*"

  test "$fp_num1" = "$fp_num2" || break;
done
IFS=$fp_save_IFS
if test "$fp_num1" -lt "$fp_num2"
then :
  as_fn_error $? "Need at least gcc version 4.7 (newer recommended)" "$LINENO" 5
fi

fi
{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $fp_cv_gcc_version" >&5
printf "%s\n" "$fp_cv_gcc_version" >&6; }
    GccVersion=$fp_cv_gcc_version

  else
    { printf "%s\n" "$as_me:${as_lineno-$LINENO}: \$CC is not gcc; assuming it's a reasonably new C compiler" >&5
printf "%s\n" "$as_me: \$CC is not gcc; assuming it's a reasonably new C compiler" >&6;}
  fi




   { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking whether GCC supports -no-pie" >&5
printf %s "checking whether GCC supports -no-pie... " >&6; }
   echo 'int main() { return 0; }' > conftest.c
   # Some GCC versions only warn when passed an unrecognized flag.
   if $CC -no-pie -Werror -x c conftest.c > conftest.txt 2>&1 && ! grep -i unrecognized conftest.txt > /dev/null 2>&1; then
       CONF_GCC_SUPPORTS_NO_PIE=YES
       { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: yes" >&5
printf "%s\n" "yes" >&6; }
   else
       CONF_GCC_SUPPORTS_NO_PIE=NO
       { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
printf "%s\n" "no" >&6; }
   fi
   rm -f conftest.c conftest.o conftest




   { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking whether GCC supports __atomic_ builtins" >&5
printf %s "checking whether GCC supports __atomic_ builtins... " >&6; }
   echo 'int test(int *x) { int y; __atomic_load(x, &y, __ATOMIC_SEQ_CST); return y; }' > conftest.c
   if $CC -c conftest.c > /dev/null 2>&1; then
       CONF_GCC_SUPPORTS__ATOMICS=YES
       { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: yes" >&5
printf "%s\n" "yes" >&6; }
   else
       CONF_GCC_SUPPORTS__ATOMICS=NO
       { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
printf "%s\n" "no" >&6; }
   fi
   rm -f conftest.c conftest.o

if test $CONF_GCC_SUPPORTS__ATOMICS = YES ; then

printf "%s\n" "#define HAVE_C11_ATOMICS 1" >>confdefs.h

else
  as_fn_error $? "C compiler needs to support __atomic primitives." "$LINENO" 5
fi


{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for extra options to pass gcc when compiling via C" >&5
printf %s "checking for extra options to pass gcc when compiling via C... " >&6; }
if test ${fp_cv_gcc_extra_opts+y}
then :
  printf %s "(cached) " >&6
else $as_nop

 if test "$Unregisterised" = "YES"; then
   # These used to be conditioned on gcc version but we no longer support
   # GCC versions which lack support for these flags
   fp_cv_gcc_extra_opts="-fwrapv -fno-builtin"
 fi

fi
{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $fp_cv_gcc_extra_opts" >&5
printf "%s\n" "$fp_cv_gcc_extra_opts" >&6; }
GccExtraViaCOpts=$fp_cv_gcc_extra_opts




   { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking whether C compiler has an LLVM back end" >&5
printf %s "checking whether C compiler has an LLVM back end... " >&6; }
   $CC -x c /dev/null -dM -E > conftest.txt 2>&1
   if grep "__llvm__" conftest.txt >/dev/null 2>&1; then

printf "%s\n" "#define CC_LLVM_BACKEND 1" >>confdefs.h

     CcLlvmBackend=YES
     { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: yes" >&5
printf "%s\n" "yes" >&6; }
   else
     CcLlvmBackend=NO
     { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
printf "%s\n" "no" >&6; }
   fi


   rm -f conftest.txt




    { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking Setting up CFLAGS, LDFLAGS, IGNORE_LINKER_LD_FLAGS and CPPFLAGS" >&5
printf %s "checking Setting up CFLAGS, LDFLAGS, IGNORE_LINKER_LD_FLAGS and CPPFLAGS... " >&6; }
    case $target in
    i386-*)
        # Workaround for #7799
        CFLAGS="$CFLAGS -U__i686"
        ;;
    esac

    case $target in
    i386-unknown-mingw32)
        CFLAGS="$CFLAGS -march=i686"
        ;;
    i386-portbld-freebsd*)
        CFLAGS="$CFLAGS -march=i686"
        ;;
    x86_64-unknown-solaris2)
        # Solaris is a multi-lib platform, providing both 32- and 64-bit
        # user-land. It appears to default to 32-bit builds but we of course want to
        # compile for 64-bits on x86-64.
        #
        # On OpenSolaris uses gnu ld whereas SmartOS appears to use the Solaris
        # implementation, which rather uses the -64 flag.
        CFLAGS="$CFLAGS -m64"
        LDFLAGS="$LDFLAGS -m64"
        CPPFLAGS="$CPPFLAGS -m64"
        if test "$fp_cv_gnu_ld" = "yes"; then
            IGNORE_LINKER_LD_FLAGS="$IGNORE_LINKER_LD_FLAGS -m64"
        else
            IGNORE_LINKER_LD_FLAGS="$IGNORE_LINKER_LD_FLAGS -64"
        fi
        ;;
    alpha-*)
        # For now, to suppress the gcc warning "call-clobbered
        # register used for global register variable", we simply
        # disable all warnings altogether using the -w flag. Oh well.
        CFLAGS="$CFLAGS -w -mieee -D_REENTRANT"
        LDFLAGS="$LDFLAGS -w -mieee -D_REENTRANT"
        CPPFLAGS="$CPPFLAGS -w -mieee -D_REENTRANT"
        ;;
    hppa*)
        # ___HPUX_SOURCE, not _HPUX_SOURCE, is #defined if -ansi!
        # (very nice, but too bad the HP /usr/include files don't agree.)
        CFLAGS="$CFLAGS -D_HPUX_SOURCE"
        LDFLAGS="$LDFLAGS -D_HPUX_SOURCE"
        CPPFLAGS="$CPPFLAGS -D_HPUX_SOURCE"
        ;;

    arm*freebsd*)
        # On arm/freebsd, tell gcc to generate Arm
        # instructions (ie not Thumb).
        CFLAGS="$CFLAGS -marm"
        LDFLAGS="$LDFLAGS -Wl,-z,noexecstack"
        IGNORE_LINKER_LD_FLAGS="$IGNORE_LINKER_LD_FLAGS -z noexecstack"
        ;;
    arm*linux*)
        # On arm/linux and arm/android, tell gcc to generate Arm
        # instructions (ie not Thumb).
        CFLAGS="$CFLAGS -marm"
        LDFLAGS="$LDFLAGS -Wl,-z,noexecstack"
        IGNORE_LINKER_LD_FLAGS="$IGNORE_LINKER_LD_FLAGS -z noexecstack"
        ;;

    aarch64*freebsd*)
        LDFLAGS="$LDFLAGS -Wl,-z,noexecstack"
        IGNORE_LINKER_LD_FLAGS="$IGNORE_LINKER_LD_FLAGS -z noexecstack"
        ;;
    aarch64*linux*)
        LDFLAGS="$LDFLAGS -Wl,-z,noexecstack"
        IGNORE_LINKER_LD_FLAGS="$IGNORE_LINKER_LD_FLAGS -z noexecstack"
        ;;

    powerpc-ibm-aix*)
        # We need `-D_THREAD_SAFE` to unlock the thread-local `errno`.
        CFLAGS="$CFLAGS -D_THREAD_SAFE"
        LDFLAGS="$LDFLAGS -D_THREAD_SAFE -Wl,-bnotextro"
        IGNORE_LINKER_LD_FLAGS="$IGNORE_LINKER_LD_FLAGS -bnotextro"
        CPPFLAGS="$CPPFLAGS -D_THREAD_SAFE"
        ;;

    x86_64-*-openbsd*)
        # We need -z wxneeded at least to link ghc-stage2 to workaround
        # W^X issue in GHCi on OpenBSD current (as of Aug 2016)
        LDFLAGS="$LDFLAGS -Wl,-z,wxneeded"
        IGNORE_LINKER_LD_FLAGS="$IGNORE_LINKER_LD_FLAGS -z wxneeded"
        ;;

    esac

    { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: done" >&5
printf "%s\n" "done" >&6; }



    { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking Setting up CONF_CC_OPTS_STAGE0, CONF_GCC_LINKER_OPTS_STAGE0, CONF_LD_LINKER_OPTS_STAGE0 and CONF_CPP_OPTS_STAGE0" >&5
printf %s "checking Setting up CONF_CC_OPTS_STAGE0, CONF_GCC_LINKER_OPTS_STAGE0, CONF_LD_LINKER_OPTS_STAGE0 and CONF_CPP_OPTS_STAGE0... " >&6; }
    case $build in
    i386-*)
        # Workaround for #7799
        CONF_CC_OPTS_STAGE0="$CONF_CC_OPTS_STAGE0 -U__i686"
        ;;
    esac

    case $build in
    i386-unknown-mingw32)
        CONF_CC_OPTS_STAGE0="$CONF_CC_OPTS_STAGE0 -march=i686"
        ;;
    i386-portbld-freebsd*)
        CONF_CC_OPTS_STAGE0="$CONF_CC_OPTS_STAGE0 -march=i686"
        ;;
    x86_64-unknown-solaris2)
        # Solaris is a multi-lib platform, providing both 32- and 64-bit
        # user-land. It appears to default to 32-bit builds but we of course want to
        # compile for 64-bits on x86-64.
        #
        # On OpenSolaris uses gnu ld whereas SmartOS appears to use the Solaris
        # implementation, which rather uses the -64 flag.
        CONF_CC_OPTS_STAGE0="$CONF_CC_OPTS_STAGE0 -m64"
        CONF_GCC_LINKER_OPTS_STAGE0="$CONF_GCC_LINKER_OPTS_STAGE0 -m64"
        CONF_CPP_OPTS_STAGE0="$CONF_CPP_OPTS_STAGE0 -m64"
        if test "$fp_cv_gnu_ld" = "yes"; then
            CONF_LD_LINKER_OPTS_STAGE0="$CONF_LD_LINKER_OPTS_STAGE0 -m64"
        else
            CONF_LD_LINKER_OPTS_STAGE0="$CONF_LD_LINKER_OPTS_STAGE0 -64"
        fi
        ;;
    alpha-*)
        # For now, to suppress the gcc warning "call-clobbered
        # register used for global register variable", we simply
        # disable all warnings altogether using the -w flag. Oh well.
        CONF_CC_OPTS_STAGE0="$CONF_CC_OPTS_STAGE0 -w -mieee -D_REENTRANT"
        CONF_GCC_LINKER_OPTS_STAGE0="$CONF_GCC_LINKER_OPTS_STAGE0 -w -mieee -D_REENTRANT"
        CONF_CPP_OPTS_STAGE0="$CONF_CPP_OPTS_STAGE0 -w -mieee -D_REENTRANT"
        ;;
    hppa*)
        # ___HPUX_SOURCE, not _HPUX_SOURCE, is #defined if -ansi!
        # (very nice, but too bad the HP /usr/include files don't agree.)
        CONF_CC_OPTS_STAGE0="$CONF_CC_OPTS_STAGE0 -D_HPUX_SOURCE"
        CONF_GCC_LINKER_OPTS_STAGE0="$CONF_GCC_LINKER_OPTS_STAGE0 -D_HPUX_SOURCE"
        CONF_CPP_OPTS_STAGE0="$CONF_CPP_OPTS_STAGE0 -D_HPUX_SOURCE"
        ;;

    arm*freebsd*)
        # On arm/freebsd, tell gcc to generate Arm
        # instructions (ie not Thumb).
        CONF_CC_OPTS_STAGE0="$CONF_CC_OPTS_STAGE0 -marm"
        CONF_GCC_LINKER_OPTS_STAGE0="$CONF_GCC_LINKER_OPTS_STAGE0 -Wl,-z,noexecstack"
        CONF_LD_LINKER_OPTS_STAGE0="$CONF_LD_LINKER_OPTS_STAGE0 -z noexecstack"
        ;;
    arm*linux*)
        # On arm/linux and arm/android, tell gcc to generate Arm
        # instructions (ie not Thumb).
        CONF_CC_OPTS_STAGE0="$CONF_CC_OPTS_STAGE0 -marm"
        CONF_GCC_LINKER_OPTS_STAGE0="$CONF_GCC_LINKER_OPTS_STAGE0 -Wl,-z,noexecstack"
        CONF_LD_LINKER_OPTS_STAGE0="$CONF_LD_LINKER_OPTS_STAGE0 -z noexecstack"
        ;;

    aarch64*freebsd*)
        CONF_GCC_LINKER_OPTS_STAGE0="$CONF_GCC_LINKER_OPTS_STAGE0 -Wl,-z,noexecstack"
        CONF_LD_LINKER_OPTS_STAGE0="$CONF_LD_LINKER_OPTS_STAGE0 -z noexecstack"
        ;;
    aarch64*linux*)
        CONF_GCC_LINKER_OPTS_STAGE0="$CONF_GCC_LINKER_OPTS_STAGE0 -Wl,-z,noexecstack"
        CONF_LD_LINKER_OPTS_STAGE0="$CONF_LD_LINKER_OPTS_STAGE0 -z noexecstack"
        ;;

    powerpc-ibm-aix*)
        # We need `-D_THREAD_SAFE` to unlock the thread-local `errno`.
        CONF_CC_OPTS_STAGE0="$CONF_CC_OPTS_STAGE0 -D_THREAD_SAFE"
        CONF_GCC_LINKER_OPTS_STAGE0="$CONF_GCC_LINKER_OPTS_STAGE0 -D_THREAD_SAFE -Wl,-bnotextro"
        CONF_LD_LINKER_OPTS_STAGE0="$CONF_LD_LINKER_OPTS_STAGE0 -bnotextro"
        CONF_CPP_OPTS_STAGE0="$CONF_CPP_OPTS_STAGE0 -D_THREAD_SAFE"
        ;;

    x86_64-*-openbsd*)
        # We need -z wxneeded at least to link ghc-stage2 to workaround
        # W^X issue in GHCi on OpenBSD current (as of Aug 2016)
        CONF_GCC_LINKER_OPTS_STAGE0="$CONF_GCC_LINKER_OPTS_STAGE0 -Wl,-z,wxneeded"
        CONF_LD_LINKER_OPTS_STAGE0="$CONF_LD_LINKER_OPTS_STAGE0 -z wxneeded"
        ;;

    esac

    { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: done" >&5
printf "%s\n" "done" >&6; }



    { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking Setting up CONF_CC_OPTS_STAGE1, CONF_GCC_LINKER_OPTS_STAGE1, CONF_LD_LINKER_OPTS_STAGE1 and CONF_CPP_OPTS_STAGE1" >&5
printf %s "checking Setting up CONF_CC_OPTS_STAGE1, CONF_GCC_LINKER_OPTS_STAGE1, CONF_LD_LINKER_OPTS_STAGE1 and CONF_CPP_OPTS_STAGE1... " >&6; }
    case $target in
    i386-*)
        # Workaround for #7799
        CONF_CC_OPTS_STAGE1="$CONF_CC_OPTS_STAGE1 -U__i686"
        ;;
    esac

    case $target in
    i386-unknown-mingw32)
        CONF_CC_OPTS_STAGE1="$CONF_CC_OPTS_STAGE1 -march=i686"
        ;;
    i386-portbld-freebsd*)
        CONF_CC_OPTS_STAGE1="$CONF_CC_OPTS_STAGE1 -march=i686"
        ;;
    x86_64-unknown-solaris2)
        # Solaris is a multi-lib platform, providing both 32- and 64-bit
        # user-land. It appears to default to 32-bit builds but we of course want to
        # compile for 64-bits on x86-64.
        #
        # On OpenSolaris uses gnu ld whereas SmartOS appears to use the Solaris
        # implementation, which rather uses the -64 flag.
        CONF_CC_OPTS_STAGE1="$CONF_CC_OPTS_STAGE1 -m64"
        CONF_GCC_LINKER_OPTS_STAGE1="$CONF_GCC_LINKER_OPTS_STAGE1 -m64"
        CONF_CPP_OPTS_STAGE1="$CONF_CPP_OPTS_STAGE1 -m64"
        if test "$fp_cv_gnu_ld" = "yes"; then
            CONF_LD_LINKER_OPTS_STAGE1="$CONF_LD_LINKER_OPTS_STAGE1 -m64"
        else
            CONF_LD_LINKER_OPTS_STAGE1="$CONF_LD_LINKER_OPTS_STAGE1 -64"
        fi
        ;;
    alpha-*)
        # For now, to suppress the gcc warning "call-clobbered
        # register used for global register variable", we simply
        # disable all warnings altogether using the -w flag. Oh well.
        CONF_CC_OPTS_STAGE1="$CONF_CC_OPTS_STAGE1 -w -mieee -D_REENTRANT"
        CONF_GCC_LINKER_OPTS_STAGE1="$CONF_GCC_LINKER_OPTS_STAGE1 -w -mieee -D_REENTRANT"
        CONF_CPP_OPTS_STAGE1="$CONF_CPP_OPTS_STAGE1 -w -mieee -D_REENTRANT"
        ;;
    hppa*)
        # ___HPUX_SOURCE, not _HPUX_SOURCE, is #defined if -ansi!
        # (very nice, but too bad the HP /usr/include files don't agree.)
        CONF_CC_OPTS_STAGE1="$CONF_CC_OPTS_STAGE1 -D_HPUX_SOURCE"
        CONF_GCC_LINKER_OPTS_STAGE1="$CONF_GCC_LINKER_OPTS_STAGE1 -D_HPUX_SOURCE"
        CONF_CPP_OPTS_STAGE1="$CONF_CPP_OPTS_STAGE1 -D_HPUX_SOURCE"
        ;;

    arm*freebsd*)
        # On arm/freebsd, tell gcc to generate Arm
        # instructions (ie not Thumb).
        CONF_CC_OPTS_STAGE1="$CONF_CC_OPTS_STAGE1 -marm"
        CONF_GCC_LINKER_OPTS_STAGE1="$CONF_GCC_LINKER_OPTS_STAGE1 -Wl,-z,noexecstack"
        CONF_LD_LINKER_OPTS_STAGE1="$CONF_LD_LINKER_OPTS_STAGE1 -z noexecstack"
        ;;
    arm*linux*)
        # On arm/linux and arm/android, tell gcc to generate Arm
        # instructions (ie not Thumb).
        CONF_CC_OPTS_STAGE1="$CONF_CC_OPTS_STAGE1 -marm"
        CONF_GCC_LINKER_OPTS_STAGE1="$CONF_GCC_LINKER_OPTS_STAGE1 -Wl,-z,noexecstack"
        CONF_LD_LINKER_OPTS_STAGE1="$CONF_LD_LINKER_OPTS_STAGE1 -z noexecstack"
        ;;

    aarch64*freebsd*)
        CONF_GCC_LINKER_OPTS_STAGE1="$CONF_GCC_LINKER_OPTS_STAGE1 -Wl,-z,noexecstack"
        CONF_LD_LINKER_OPTS_STAGE1="$CONF_LD_LINKER_OPTS_STAGE1 -z noexecstack"
        ;;
    aarch64*linux*)
        CONF_GCC_LINKER_OPTS_STAGE1="$CONF_GCC_LINKER_OPTS_STAGE1 -Wl,-z,noexecstack"
        CONF_LD_LINKER_OPTS_STAGE1="$CONF_LD_LINKER_OPTS_STAGE1 -z noexecstack"
        ;;

    powerpc-ibm-aix*)
        # We need `-D_THREAD_SAFE` to unlock the thread-local `errno`.
        CONF_CC_OPTS_STAGE1="$CONF_CC_OPTS_STAGE1 -D_THREAD_SAFE"
        CONF_GCC_LINKER_OPTS_STAGE1="$CONF_GCC_LINKER_OPTS_STAGE1 -D_THREAD_SAFE -Wl,-bnotextro"
        CONF_LD_LINKER_OPTS_STAGE1="$CONF_LD_LINKER_OPTS_STAGE1 -bnotextro"
        CONF_CPP_OPTS_STAGE1="$CONF_CPP_OPTS_STAGE1 -D_THREAD_SAFE"
        ;;

    x86_64-*-openbsd*)
        # We need -z wxneeded at least to link ghc-stage2 to workaround
        # W^X issue in GHCi on OpenBSD current (as of Aug 2016)
        CONF_GCC_LINKER_OPTS_STAGE1="$CONF_GCC_LINKER_OPTS_STAGE1 -Wl,-z,wxneeded"
        CONF_LD_LINKER_OPTS_STAGE1="$CONF_LD_LINKER_OPTS_STAGE1 -z wxneeded"
        ;;

    esac

    { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: done" >&5
printf "%s\n" "done" >&6; }



    { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking Setting up CONF_CC_OPTS_STAGE2, CONF_GCC_LINKER_OPTS_STAGE2, CONF_LD_LINKER_OPTS_STAGE2 and CONF_CPP_OPTS_STAGE2" >&5
printf %s "checking Setting up CONF_CC_OPTS_STAGE2, CONF_GCC_LINKER_OPTS_STAGE2, CONF_LD_LINKER_OPTS_STAGE2 and CONF_CPP_OPTS_STAGE2... " >&6; }
    case $target in
    i386-*)
        # Workaround for #7799
        CONF_CC_OPTS_STAGE2="$CONF_CC_OPTS_STAGE2 -U__i686"
        ;;
    esac

    case $target in
    i386-unknown-mingw32)
        CONF_CC_OPTS_STAGE2="$CONF_CC_OPTS_STAGE2 -march=i686"
        ;;
    i386-portbld-freebsd*)
        CONF_CC_OPTS_STAGE2="$CONF_CC_OPTS_STAGE2 -march=i686"
        ;;
    x86_64-unknown-solaris2)
        # Solaris is a multi-lib platform, providing both 32- and 64-bit
        # user-land. It appears to default to 32-bit builds but we of course want to
        # compile for 64-bits on x86-64.
        #
        # On OpenSolaris uses gnu ld whereas SmartOS appears to use the Solaris
        # implementation, which rather uses the -64 flag.
        CONF_CC_OPTS_STAGE2="$CONF_CC_OPTS_STAGE2 -m64"
        CONF_GCC_LINKER_OPTS_STAGE2="$CONF_GCC_LINKER_OPTS_STAGE2 -m64"
        CONF_CPP_OPTS_STAGE2="$CONF_CPP_OPTS_STAGE2 -m64"
        if test "$fp_cv_gnu_ld" = "yes"; then
            CONF_LD_LINKER_OPTS_STAGE2="$CONF_LD_LINKER_OPTS_STAGE2 -m64"
        else
            CONF_LD_LINKER_OPTS_STAGE2="$CONF_LD_LINKER_OPTS_STAGE2 -64"
        fi
        ;;
    alpha-*)
        # For now, to suppress the gcc warning "call-clobbered
        # register used for global register variable", we simply
        # disable all warnings altogether using the -w flag. Oh well.
        CONF_CC_OPTS_STAGE2="$CONF_CC_OPTS_STAGE2 -w -mieee -D_REENTRANT"
        CONF_GCC_LINKER_OPTS_STAGE2="$CONF_GCC_LINKER_OPTS_STAGE2 -w -mieee -D_REENTRANT"
        CONF_CPP_OPTS_STAGE2="$CONF_CPP_OPTS_STAGE2 -w -mieee -D_REENTRANT"
        ;;
    hppa*)
        # ___HPUX_SOURCE, not _HPUX_SOURCE, is #defined if -ansi!
        # (very nice, but too bad the HP /usr/include files don't agree.)
        CONF_CC_OPTS_STAGE2="$CONF_CC_OPTS_STAGE2 -D_HPUX_SOURCE"
        CONF_GCC_LINKER_OPTS_STAGE2="$CONF_GCC_LINKER_OPTS_STAGE2 -D_HPUX_SOURCE"
        CONF_CPP_OPTS_STAGE2="$CONF_CPP_OPTS_STAGE2 -D_HPUX_SOURCE"
        ;;

    arm*freebsd*)
        # On arm/freebsd, tell gcc to generate Arm
        # instructions (ie not Thumb).
        CONF_CC_OPTS_STAGE2="$CONF_CC_OPTS_STAGE2 -marm"
        CONF_GCC_LINKER_OPTS_STAGE2="$CONF_GCC_LINKER_OPTS_STAGE2 -Wl,-z,noexecstack"
        CONF_LD_LINKER_OPTS_STAGE2="$CONF_LD_LINKER_OPTS_STAGE2 -z noexecstack"
        ;;
    arm*linux*)
        # On arm/linux and arm/android, tell gcc to generate Arm
        # instructions (ie not Thumb).
        CONF_CC_OPTS_STAGE2="$CONF_CC_OPTS_STAGE2 -marm"
        CONF_GCC_LINKER_OPTS_STAGE2="$CONF_GCC_LINKER_OPTS_STAGE2 -Wl,-z,noexecstack"
        CONF_LD_LINKER_OPTS_STAGE2="$CONF_LD_LINKER_OPTS_STAGE2 -z noexecstack"
        ;;

    aarch64*freebsd*)
        CONF_GCC_LINKER_OPTS_STAGE2="$CONF_GCC_LINKER_OPTS_STAGE2 -Wl,-z,noexecstack"
        CONF_LD_LINKER_OPTS_STAGE2="$CONF_LD_LINKER_OPTS_STAGE2 -z noexecstack"
        ;;
    aarch64*linux*)
        CONF_GCC_LINKER_OPTS_STAGE2="$CONF_GCC_LINKER_OPTS_STAGE2 -Wl,-z,noexecstack"
        CONF_LD_LINKER_OPTS_STAGE2="$CONF_LD_LINKER_OPTS_STAGE2 -z noexecstack"
        ;;

    powerpc-ibm-aix*)
        # We need `-D_THREAD_SAFE` to unlock the thread-local `errno`.
        CONF_CC_OPTS_STAGE2="$CONF_CC_OPTS_STAGE2 -D_THREAD_SAFE"
        CONF_GCC_LINKER_OPTS_STAGE2="$CONF_GCC_LINKER_OPTS_STAGE2 -D_THREAD_SAFE -Wl,-bnotextro"
        CONF_LD_LINKER_OPTS_STAGE2="$CONF_LD_LINKER_OPTS_STAGE2 -bnotextro"
        CONF_CPP_OPTS_STAGE2="$CONF_CPP_OPTS_STAGE2 -D_THREAD_SAFE"
        ;;

    x86_64-*-openbsd*)
        # We need -z wxneeded at least to link ghc-stage2 to workaround
        # W^X issue in GHCi on OpenBSD current (as of Aug 2016)
        CONF_GCC_LINKER_OPTS_STAGE2="$CONF_GCC_LINKER_OPTS_STAGE2 -Wl,-z,wxneeded"
        CONF_LD_LINKER_OPTS_STAGE2="$CONF_LD_LINKER_OPTS_STAGE2 -z wxneeded"
        ;;

    esac

    { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: done" >&5
printf "%s\n" "done" >&6; }

# Stage 3 won't be supported by cross-compilation




   { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking whether  CC supports --target" >&5
printf %s "checking whether  CC supports --target... " >&6; }
   echo 'int main() { return 0; }' > conftest.c
   if $CC --target=$LlvmTarget -Werror conftest.c > /dev/null ; then
       CONF_CC_SUPPORTS_TARGET=YES
       { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: yes" >&5
printf "%s\n" "yes" >&6; }
   else
       CONF_CC_SUPPORTS_TARGET=NO
       { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
printf "%s\n" "no" >&6; }
   fi
   rm -f conftest.c conftest

   if test $CONF_CC_SUPPORTS_TARGET = YES ; then
       CONF_CC_OPTS_STAGE1="--target=$LlvmTarget $CONF_CC_OPTS_STAGE1"
       CONF_CC_OPTS_STAGE2="--target=$LlvmTarget $CONF_CC_OPTS_STAGE2"
       CONF_CXX_OPTS_STAGE1="--target=$LlvmTarget $CONF_CXX_OPTS_STAGE1"
       CONF_CXX_OPTS_STAGE2="--target=$LlvmTarget $CONF_CXX_OPTS_STAGE2"
       CONF_GCC_LINKER_OPTS_STAGE1="--target=$LlvmTarget $CONF_GCC_LINKER_OPTS_STAGE1"
       CONF_GCC_LINKER_OPTS_STAGE2="--target=$LlvmTarget $CONF_GCC_LINKER_OPTS_STAGE2"
   fi


# See rules/distdir-way-opts.mk for details.
# Flags passed to the C compiler



# Flags passed to the C compiler when we ask it to link



# Flags passed to the linker when we ask it to link



# Flags passed to the C preprocessor



# Flags passed to the Haskell compiler





    checkArch() {
        case $1 in
        i386)
            test -z "$2" || eval "$2=ArchX86"
            ;;
        x86_64|amd64)
            test -z "$2" || eval "$2=ArchX86_64"
            ;;
        powerpc)
            test -z "$2" || eval "$2=ArchPPC"
            ;;
        powerpc64)
            test -z "$2" || eval "$2=\"ArchPPC_64 {ppc_64ABI = ELF_V1}\""
            ;;
        powerpc64le)
            test -z "$2" || eval "$2=\"ArchPPC_64 {ppc_64ABI = ELF_V2}\""
            ;;
        s390x)
            test -z "$2" || eval "$2=ArchS390X"
            ;;
        sparc)
            test -z "$2" || eval "$2=ArchSPARC"
            ;;
        sparc64)
            test -z "$2" || eval "$2=ArchSPARC64"
            ;;
        arm)

    cat confdefs.h - <<_ACEOF >conftest.$ac_ext
/* end confdefs.h.  */


int
main (void)
{
#if defined(__ARM_ARCH_2__)  || \
                 defined(__ARM_ARCH_3__)  || \
                 defined(__ARM_ARCH_3M__) || \
                 defined(__ARM_ARCH_4__)  || \
                 defined(__ARM_ARCH_4T__) || \
                 defined(__ARM_ARCH_5__)  || \
                 defined(__ARM_ARCH_5T__) || \
                 defined(__ARM_ARCH_5E__) || \
                 defined(__ARM_ARCH_5TE__)
                 return 0;
             #else
                 not pre arm v6
             #endif

  ;
  return 0;
}
_ACEOF
if ac_fn_c_try_compile "$LINENO"
then :

printf "%s\n" "#define arm_HOST_ARCH_PRE_ARMv6 1" >>confdefs.h


printf "%s\n" "#define arm_HOST_ARCH_PRE_ARMv7 1" >>confdefs.h

                  ARM_ISA=ARMv5
         ARM_ISA_EXT="[]"

else $as_nop

            cat confdefs.h - <<_ACEOF >conftest.$ac_ext
/* end confdefs.h.  */


int
main (void)
{
#if defined(__ARM_ARCH_6__)   || \
                         defined(__ARM_ARCH_6J__)  || \
                         defined(__ARM_ARCH_6T2__) || \
                         defined(__ARM_ARCH_6Z__)  || \
                         defined(__ARM_ARCH_6ZK__) || \
                         defined(__ARM_ARCH_6K__)  || \
                         defined(__ARM_ARCH_6KZ__) || \
                         defined(__ARM_ARCH_6M__)
                         return 0;
                     #else
                         not pre arm v7
                     #endif

  ;
  return 0;
}
_ACEOF
if ac_fn_c_try_compile "$LINENO"
then :

printf "%s\n" "#define arm_HOST_ARCH_PRE_ARMv7 1" >>confdefs.h

                 ARM_ISA=ARMv6
                 cat confdefs.h - <<_ACEOF >conftest.$ac_ext
/* end confdefs.h.  */


int
main (void)
{
#if defined(__VFP_FP__)
                                     return 0;
                                #else
                                     no vfp
                                #endif

  ;
  return 0;
}
_ACEOF
if ac_fn_c_try_compile "$LINENO"
then :
                           ARM_ISA_EXT="[VFPv2]"

else $as_nop
                           ARM_ISA_EXT="[]"


fi
rm -f core conftest.err conftest.$ac_objext conftest.beam conftest.$ac_ext
else $as_nop
                   ARM_ISA=ARMv7
                 ARM_ISA_EXT="[VFPv3,NEON]"

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

        cat confdefs.h - <<_ACEOF >conftest.$ac_ext
/* end confdefs.h.  */

int
main (void)
{
#if defined(__SOFTFP__)
                            return 0;
                       #else
                            not softfp
                       #endif

  ;
  return 0;
}
_ACEOF
if ac_fn_c_try_compile "$LINENO"
then :
                  ARM_ABI="SOFT"

else $as_nop
  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
/* end confdefs.h.  */

int
main (void)
{
#if defined(__ARM_PCS_VFP)
                            return 0;
                       #else
                            no hard float ABI
                       #endif

  ;
  return 0;
}
_ACEOF
if ac_fn_c_try_compile "$LINENO"
then :
  ARM_ABI="HARD"
else $as_nop
  ARM_ABI="SOFTFP"

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



            test -z "$2" || eval "$2=\"ArchARM {armISA = \$ARM_ISA, armISAExt = \$ARM_ISA_EXT, armABI = \$ARM_ABI}\""
            ;;
        aarch64)
            test -z "$2" || eval "$2=ArchAArch64"
            ;;
        alpha)
            test -z "$2" || eval "$2=ArchAlpha"
            ;;
        mips|mipseb)
            test -z "$2" || eval "$2=ArchMipseb"
            ;;
        mipsel)
            test -z "$2" || eval "$2=ArchMipsel"
            ;;
        hppa|hppa1_1|ia64|m68k|nios2|riscv32|riscv64|rs6000|s390|sh4|vax)
            test -z "$2" || eval "$2=ArchUnknown"
            ;;
        *)
            echo "Unknown arch $1"
            exit 1
            ;;
        esac
    }

    checkVendor() {
        case $1 in
        dec|none|unknown|hp|apple|next|sun|sgi|ibm|montavista|portbld|alpine)
            ;;
        *)
            { printf "%s\n" "$as_me:${as_lineno-$LINENO}: WARNING: Unknown vendor $1" >&5
printf "%s\n" "$as_me: WARNING: Unknown vendor $1" >&2;}
            ;;
        esac
    }

    checkOS() {
        case $1 in
        linux|linux-android)
            test -z "$2" || eval "$2=OSLinux"
            ;;
        darwin|ios|watchos|tvos)
            test -z "$2" || eval "$2=OSDarwin"
            ;;
        solaris2)
            test -z "$2" || eval "$2=OSSolaris2"
            ;;
        mingw32)
            test -z "$2" || eval "$2=OSMinGW32"
            ;;
        freebsd)
            test -z "$2" || eval "$2=OSFreeBSD"
            ;;
        dragonfly)
            test -z "$2" || eval "$2=OSDragonFly"
            ;;
        kfreebsdgnu)
            test -z "$2" || eval "$2=OSKFreeBSD"
            ;;
        openbsd)
            test -z "$2" || eval "$2=OSOpenBSD"
            ;;
        netbsd)
            test -z "$2" || eval "$2=OSNetBSD"
            ;;
        haiku)
            test -z "$2" || eval "$2=OSHaiku"
            ;;
        nto-qnx)
            test -z "$2" || eval "$2=OSQNXNTO"
            ;;
        dragonfly|hpux|linuxaout|freebsd2|nextstep2|nextstep3|sunos4|ultrix)
            test -z "$2" || eval "$2=OSUnknown"
            ;;
        aix)
            test -z "$2" || eval "$2=OSAIX"
            ;;
        gnu)
            test -z "$2" || eval "$2=OSHurd"
            ;;
        *)
            echo "Unknown OS '$1'"
            exit 1
            ;;
        esac
    }



    { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for .subsections_via_symbols" >&5
printf %s "checking for .subsections_via_symbols... " >&6; }
        cat confdefs.h - <<_ACEOF >conftest.$ac_ext
/* end confdefs.h.  */

int
main (void)
{
__asm__ (".subsections_via_symbols");
  ;
  return 0;
}
_ACEOF
if ac_fn_c_try_link "$LINENO"
then :
  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: yes" >&5
printf "%s\n" "yes" >&6; }
         if test x"$TargetArch" = xaarch64; then
                        TargetHasSubsectionsViaSymbols=NO
         else
            TargetHasSubsectionsViaSymbols=YES

printf "%s\n" "#define HAVE_SUBSECTIONS_VIA_SYMBOLS 1" >>confdefs.h

         fi

else $as_nop
  TargetHasSubsectionsViaSymbols=NO
         { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
printf "%s\n" "no" >&6; }
fi
rm -f core conftest.err conftest.$ac_objext conftest.beam \
    conftest$ac_exeext conftest.$ac_ext


    { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking whether your assembler supports .ident directive" >&5
printf %s "checking whether your assembler supports .ident directive... " >&6; }
        cat confdefs.h - <<_ACEOF >conftest.$ac_ext
/* end confdefs.h.  */
__asm__ (".ident \"GHC x.y.z\"");
int
main (void)
{

  ;
  return 0;
}
_ACEOF
if ac_fn_c_try_link "$LINENO"
then :
  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: yes" >&5
printf "%s\n" "yes" >&6; }
         TargetHasIdentDirective=YES
else $as_nop
  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
printf "%s\n" "no" >&6; }
         TargetHasIdentDirective=NO
fi
rm -f core conftest.err conftest.$ac_objext conftest.beam \
    conftest$ac_exeext conftest.$ac_ext


                CFLAGS2="$CFLAGS"
    CFLAGS=
    case $TargetArch in
      arm)
                progbits="%progbits"
        ;;
      *)
        progbits="@progbits"
        ;;
    esac
    { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for GNU non-executable stack support" >&5
printf %s "checking for GNU non-executable stack support... " >&6; }
        cat confdefs.h - <<_ACEOF >conftest.$ac_ext
/* end confdefs.h.  */

           __asm__ (".section .note.GNU-stack,\"\",$progbits");
           __asm__ (".section .text");

int
main (void)
{
0
  ;
  return 0;
}
_ACEOF
if ac_fn_c_try_link "$LINENO"
then :
  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: yes" >&5
printf "%s\n" "yes" >&6; }
         TargetHasGnuNonexecStack=YES
else $as_nop
  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
printf "%s\n" "no" >&6; }
         TargetHasGnuNonexecStack=NO
fi
rm -f core conftest.err conftest.$ac_objext conftest.beam \
    conftest$ac_exeext conftest.$ac_ext
    CFLAGS="$CFLAGS2"

    checkArch "$BuildArch" "HaskellBuildArch"
    checkVendor "$BuildVendor"
    checkOS "$BuildOS" ""

    checkArch "$HostArch" "HaskellHostArch"
    checkVendor "$HostVendor"
    checkOS "$HostOS" "HaskellHostOs"

    checkArch "$TargetArch" "HaskellTargetArch"
    checkVendor "$TargetVendor"
    checkOS "$TargetOS" "HaskellTargetOs"










{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for a working context diff" >&5
printf %s "checking for a working context diff... " >&6; }
if test ${fp_cv_context_diff+y}
then :
  printf %s "(cached) " >&6
else $as_nop
  echo foo > conftest1
echo foo > conftest2
fp_cv_context_diff=no
for fp_var in '-U 1' '-u1' '-C 1' '-c1'
do
  if diff $fp_var conftest1 conftest2 > /dev/null 2>&1; then
    fp_cv_context_diff="diff $fp_var"
    break
  fi
done
fi
{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $fp_cv_context_diff" >&5
printf "%s\n" "$fp_cv_context_diff" >&6; }
if test x"$fp_cv_context_diff" = xno; then
   as_fn_error $? "cannot figure out how to do context diffs" "$LINENO" 5
fi
ContextDiffCmd=$fp_cv_context_diff



chmod +x install-sh

  # Find a good install program.  We prefer a C program (faster),
# so one script is as good as another.  But avoid the broken or
# incompatible versions:
# SysV /etc/install, /usr/sbin/install
# SunOS /usr/etc/install
# IRIX /sbin/install
# AIX /bin/install
# AmigaOS /C/install, which installs bootblocks on floppy discs
# AIX 4 /usr/bin/installbsd, which doesn't work without a -g flag
# AFS /usr/afsws/bin/install, which mishandles nonexistent args
# SVR4 /usr/ucb/install, which tries to use the nonexistent group "staff"
# OS/2's system install, which has a completely different semantic
# ./install, which can be erroneously created by make from ./install.sh.
# Reject install programs that cannot install multiple files.
{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for a BSD-compatible install" >&5
printf %s "checking for a BSD-compatible install... " >&6; }
if test -z "$INSTALL"; then
if test ${ac_cv_path_install+y}
then :
  printf %s "(cached) " >&6
else $as_nop
  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
    # Account for fact that we put trailing slashes in our PATH walk.
case $as_dir in #((
  ./ | /[cC]/* | \
  /etc/* | /usr/sbin/* | /usr/etc/* | /sbin/* | /usr/afsws/bin/* | \
  ?:[\\/]os2[\\/]install[\\/]* | ?:[\\/]OS2[\\/]INSTALL[\\/]* | \
  /usr/ucb/* ) ;;
  *)
    # OSF1 and SCO ODT 3.0 have their own names for install.
    # Don't use installbsd from OSF since it installs stuff as root
    # by default.
    for ac_prog in ginstall scoinst install; do
      for ac_exec_ext in '' $ac_executable_extensions; do
	if as_fn_executable_p "$as_dir$ac_prog$ac_exec_ext"; then
	  if test $ac_prog = install &&
	    grep dspmsg "$as_dir$ac_prog$ac_exec_ext" >/dev/null 2>&1; then
	    # AIX install.  It has an incompatible calling convention.
	    :
	  elif test $ac_prog = install &&
	    grep pwplus "$as_dir$ac_prog$ac_exec_ext" >/dev/null 2>&1; then
	    # program-specific install script used by HP pwplus--don't use.
	    :
	  else
	    rm -rf conftest.one conftest.two conftest.dir
	    echo one > conftest.one
	    echo two > conftest.two
	    mkdir conftest.dir
	    if "$as_dir$ac_prog$ac_exec_ext" -c conftest.one conftest.two "`pwd`/conftest.dir/" &&
	      test -s conftest.one && test -s conftest.two &&
	      test -s conftest.dir/conftest.one &&
	      test -s conftest.dir/conftest.two
	    then
	      ac_cv_path_install="$as_dir$ac_prog$ac_exec_ext -c"
	      break 3
	    fi
	  fi
	fi
      done
    done
    ;;
esac

  done
IFS=$as_save_IFS

rm -rf conftest.one conftest.two conftest.dir

fi
  if test ${ac_cv_path_install+y}; then
    INSTALL=$ac_cv_path_install
  else
    # As a last resort, use the slow shell script.  Don't cache a
    # value for INSTALL within a source directory, because that will
    # break other packages using the cache if that directory is
    # removed, or if the value is a relative name.
    INSTALL=$ac_install_sh
  fi
fi
{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $INSTALL" >&5
printf "%s\n" "$INSTALL" >&6; }

# Use test -z because SunOS4 sh mishandles braces in ${var-val}.
# It thinks the first close brace ends the variable substitution.
test -z "$INSTALL_PROGRAM" && INSTALL_PROGRAM='${INSTALL}'

test -z "$INSTALL_SCRIPT" && INSTALL_SCRIPT='${INSTALL}'

test -z "$INSTALL_DATA" && INSTALL_DATA='${INSTALL} -m 644'


fp_prog_ar=$AR

if test -z "$fp_prog_ar"; then
  if test "$HostOS" = "mingw32"
  then
    # Extract the first word of "ar", so it can be a program name with args.
set dummy ar; 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_fp_prog_ar+y}
then :
  printf %s "(cached) " >&6
else $as_nop
  case $fp_prog_ar in
  [\\/]* | ?:[\\/]*)
  ac_cv_path_fp_prog_ar="$fp_prog_ar" # 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_fp_prog_ar="$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

  ;;
esac
fi
fp_prog_ar=$ac_cv_path_fp_prog_ar
if test -n "$fp_prog_ar"; then
  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $fp_prog_ar" >&5
printf "%s\n" "$fp_prog_ar" >&6; }
else
  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
printf "%s\n" "no" >&6; }
fi


    if test -n "$fp_prog_ar"; then
      fp_prog_ar=$(cygpath -m $fp_prog_ar)
    fi
  else
    # Extract the first word of "$target_alias-ar", so it can be a program name with args.
set dummy $target_alias-ar; 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_fp_prog_ar+y}
then :
  printf %s "(cached) " >&6
else $as_nop
  if test -n "$fp_prog_ar"; then
  ac_cv_prog_fp_prog_ar="$fp_prog_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_fp_prog_ar="$target_alias-ar"
    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
fi
fp_prog_ar=$ac_cv_prog_fp_prog_ar
if test -n "$fp_prog_ar"; then
  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $fp_prog_ar" >&5
printf "%s\n" "$fp_prog_ar" >&6; }
else
  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
printf "%s\n" "no" >&6; }
fi


if test -z "$ac_cv_prog_fp_prog_ar"; then
  if test "$build" = "$target"; then
    ac_ct_fp_prog_ar=$fp_prog_ar
    # Extract the first word of "ar", so it can be a program name with args.
set dummy ar; 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_fp_prog_ar+y}
then :
  printf %s "(cached) " >&6
else $as_nop
  if test -n "$ac_ct_fp_prog_ar"; then
  ac_cv_prog_ac_ct_fp_prog_ar="$ac_ct_fp_prog_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_fp_prog_ar="ar"
    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
fi
ac_ct_fp_prog_ar=$ac_cv_prog_ac_ct_fp_prog_ar
if test -n "$ac_ct_fp_prog_ar"; then
  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_ct_fp_prog_ar" >&5
printf "%s\n" "$ac_ct_fp_prog_ar" >&6; }
else
  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
printf "%s\n" "no" >&6; }
fi

    fp_prog_ar=$ac_ct_fp_prog_ar
  else
    fp_prog_ar=""
  fi
else
  fp_prog_ar="$ac_cv_prog_fp_prog_ar"
fi

  fi
fi
if test -z "$fp_prog_ar"; then
  as_fn_error $? "cannot find ar in your PATH, no idea how to make a library" "$LINENO" 5
fi


{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking whether $fp_prog_ar is GNU ar" >&5
printf %s "checking whether $fp_prog_ar is GNU ar... " >&6; }
if test ${fp_cv_prog_ar_is_gnu+y}
then :
  printf %s "(cached) " >&6
else $as_nop
  if "$fp_prog_ar" --version 2> /dev/null | grep "GNU" > /dev/null 2>&1; then
  fp_cv_prog_ar_is_gnu=yes
else
  fp_cv_prog_ar_is_gnu=no
fi
fi
{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $fp_cv_prog_ar_is_gnu" >&5
printf "%s\n" "$fp_cv_prog_ar_is_gnu" >&6; }
fp_prog_ar_is_gnu=$fp_cv_prog_ar_is_gnu
ArIsGNUAr=`echo $fp_prog_ar_is_gnu | tr 'a-z' 'A-Z'`



{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for ar arguments" >&5
printf %s "checking for ar arguments... " >&6; }
if test ${fp_cv_prog_ar_args+y}
then :
  printf %s "(cached) " >&6
else $as_nop

# GNU ar needs special treatment: it appears to have problems with
# object files with the same name if you use the 's' modifier, but
# simple 'ar q' works fine, and doesn't need a separate ranlib.
if test $fp_prog_ar_is_gnu = yes; then
  fp_cv_prog_ar_args="q"
else
  touch conftest.dummy
  for fp_var in qclsZ qcls qcs qcl qc ; do
     rm -f conftest.a
     if "$fp_prog_ar" $fp_var conftest.a conftest.dummy > /dev/null 2> /dev/null ; then
       # Also check that a result was created; it seems some llvm-ar versions
       # exit with code zero even if they fail to parse the command line.
       if test -f conftest.a ; then
         fp_cv_prog_ar_args=$fp_var
         break
       fi
     fi
  done
  rm -f conftest*
  if test -z "$fp_cv_prog_ar_args"; then
    as_fn_error $? "cannot figure out how to use your $fp_prog_ar" "$LINENO" 5
  fi
fi
fi
{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $fp_cv_prog_ar_args" >&5
printf "%s\n" "$fp_cv_prog_ar_args" >&6; }
fp_prog_ar_args=$fp_cv_prog_ar_args
ArCmd="$fp_prog_ar"

ArArgs="$fp_prog_ar_args"





{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking whether $fp_prog_ar supports @file" >&5
printf %s "checking whether $fp_prog_ar supports @file... " >&6; }
if test ${fp_cv_prog_ar_supports_atfile+y}
then :
  printf %s "(cached) " >&6
else $as_nop

rm -f conftest*
touch conftest.file
echo conftest.file  > conftest.atfile
echo conftest.file >> conftest.atfile
"$fp_prog_ar" $fp_prog_ar_args conftest.a @conftest.atfile > /dev/null 2>&1
fp_prog_ar_supports_atfile_tmp=`"$fp_prog_ar" t conftest.a 2> /dev/null | grep -c conftest.file`
rm -f conftest*
if test "$fp_prog_ar_supports_atfile_tmp" -eq 2
then
  fp_cv_prog_ar_supports_atfile=yes
else
  fp_cv_prog_ar_supports_atfile=no
fi
fi
{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $fp_cv_prog_ar_supports_atfile" >&5
printf "%s\n" "$fp_cv_prog_ar_supports_atfile" >&6; }
fp_prog_ar_supports_atfile=$fp_cv_prog_ar_supports_atfile
ArSupportsAtFile=`echo $fp_prog_ar_supports_atfile | tr 'a-z' 'A-Z'`







    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 $as_nop
  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
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 $as_nop
  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
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 $fp_prog_ar_is_gnu = yes
    then
        fp_cv_prog_ar_needs_ranlib=no
    elif test "$TargetVendor_CPP" = "apple"
    then
        # It's quite tedious to check for Apple's crazy timestamps in
        # .a files, so we hardcode it.
        fp_cv_prog_ar_needs_ranlib=yes
    else
        case $fp_prog_ar_args in
        *s*)
            fp_cv_prog_ar_needs_ranlib=no;;
        *)
            fp_cv_prog_ar_needs_ranlib=yes;;
        esac
    fi

    # workaround for AC_PROG_RANLIB which sets RANLIB to `:' when
    # ranlib is missing on the target OS. The problem is that
    # ghc-cabal cannot execute `:' which is a shell built-in but can
    # execute `true' which is usually simple program supported by the
    # OS.
    # Fixes #8795
    if test "$RANLIB" = ":"
    then
        RANLIB="true"
    fi
    REAL_RANLIB_CMD="$RANLIB"
    if test $fp_cv_prog_ar_needs_ranlib = yes
    then
        RANLIB_CMD="$RANLIB"
    else
        RANLIB_CMD="true"
    fi




{ 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



    if test "$windows" = YES -a "$EnableDistroToolchain" = "NO"
    then
        mingw_bin_prefix='$$tooldir/mingw/bin/'
        SettingsCCompilerCommand="${mingw_bin_prefix}gcc.exe"
        SettingsHaskellCPPCommand="${mingw_bin_prefix}gcc.exe"
        SettingsHaskellCPPFlags="$HaskellCPPArgs"
        SettingsLdCommand="${mingw_bin_prefix}ld.exe"
        # Overrides FIND_MERGE_OBJECTS in order to avoid hard-coding linker
        # path on Windows (#18550).
        SettingsMergeObjectsCommand="${SettingsLdCommand}"
        SettingsMergeObjectsFlags="-r --oformat=pe-bigobj-x86-64"
        SettingsArCommand="${mingw_bin_prefix}ar.exe"
        SettingsRanlibCommand="${mingw_bin_prefix}ranlib.exe"
        SettingsDllWrapCommand="${mingw_bin_prefix}dllwrap.exe"
        SettingsWindresCommand="${mingw_bin_prefix}windres.exe"
        SettingsTouchCommand='$$topdir/bin/touchy.exe'
    elif test "$EnableDistroToolchain" = "YES"
    then
        SettingsCCompilerCommand="$(basename $CC)"
        SettingsCCompilerFlags="$CONF_CC_OPTS_STAGE2"
        SettingsCxxCompilerFlags="$CONF_CXX_OPTS_STAGE2"
        SettingsHaskellCPPCommand="$(basename $HaskellCPPCmd)"
        SettingsHaskellCPPFlags="$HaskellCPPArgs"
        SettingsLdCommand="$(basename $LdCmd)"
        SettingsMergeObjectsCommand="$(basename $MergeObjsCmd)"
        SettingsMergeObjectsFlags="$MergeObjsArgs"
        SettingsArCommand="$(basename $ArCmd)"
        SettingsDllWrapCommand="$(basename $DllWrapCmd)"
        SettingsWindresCommand="$(basename $WindresCmd)"
        SettingsTouchCommand='$$topdir/bin/touchy.exe'
    else
        SettingsCCompilerCommand="$CC"
        SettingsHaskellCPPCommand="$HaskellCPPCmd"
        SettingsHaskellCPPFlags="$HaskellCPPArgs"
        SettingsLdCommand="$LdCmd"
        SettingsMergeObjectsCommand="$MergeObjsCmd"
        SettingsMergeObjectsFlags="$MergeObjsArgs"
        SettingsArCommand="$ArCmd"
        SettingsRanlibCommand="$RanlibCmd"
        if test -z "$DllWrapCmd"
        then
            SettingsDllWrapCommand="/bin/false"
        else
            SettingsDllWrapCommand="$DllWrapCmd"
        fi
        if test -z "$WindresCmd"
        then
            SettingsWindresCommand="/bin/false"
        else
            SettingsWindresCommand="$WindresCmd"
        fi
       SettingsTouchCommand='touch'
    fi
    if test -z "$LibtoolCmd"
    then
      SettingsLibtoolCommand="libtool"
    else
      SettingsLibtoolCommand="$LibtoolCmd"
    fi
    if test -z "$ClangCmd"
    then
        SettingsClangCommand="clang"
    else
        SettingsClangCommand="$ClangCmd"
    fi
    if test -z "$LlcCmd"
    then
      SettingsLlcCommand="llc"
    else
      SettingsLlcCommand="$LlcCmd"
    fi
    if test -z "$OptCmd"
    then
      SettingsOptCommand="opt"
    else
      SettingsOptCommand="$OptCmd"
    fi
    if test -z "$OtoolCmd"
    then
      SettingsOtoolCommand="otool"
    else
      SettingsOtoolCommand="$OtoolCmd"
    fi
    if test -z "$InstallNameToolCmd"
    then
      SettingsInstallNameToolCommand="install_name_tool"
    else
      SettingsInstallNameToolCommand="$InstallNameToolCmd"
    fi
    SettingsCCompilerFlags="$CONF_CC_OPTS_STAGE2"
    SettingsCxxCompilerFlags="$CONF_CXX_OPTS_STAGE2"
    SettingsCCompilerLinkFlags="$CONF_GCC_LINKER_OPTS_STAGE2"
    SettingsCCompilerSupportsNoPie="$CONF_GCC_SUPPORTS_NO_PIE"
    SettingsLdFlags="$CONF_LD_LINKER_OPTS_STAGE2"
    SettingsUseDistroMINGW="$EnableDistroToolchain"

























for ac_prog in gsed sed
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_path_SedCmd+y}
then :
  printf %s "(cached) " >&6
else $as_nop
  case $SedCmd in
  [\\/]* | ?:[\\/]*)
  ac_cv_path_SedCmd="$SedCmd" # 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_SedCmd="$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

  ;;
esac
fi
SedCmd=$ac_cv_path_SedCmd
if test -n "$SedCmd"; then
  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $SedCmd" >&5
printf "%s\n" "$SedCmd" >&6; }
else
  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
printf "%s\n" "no" >&6; }
fi


  test -n "$SedCmd" && break
done
test -n "$SedCmd" || SedCmd="sed"



# Extract the first word of "time", so it can be a program name with args.
set dummy time; 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_TimeCmd+y}
then :
  printf %s "(cached) " >&6
else $as_nop
  case $TimeCmd in
  [\\/]* | ?:[\\/]*)
  ac_cv_path_TimeCmd="$TimeCmd" # 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_TimeCmd="$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

  ;;
esac
fi
TimeCmd=$ac_cv_path_TimeCmd
if test -n "$TimeCmd"; then
  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $TimeCmd" >&5
printf "%s\n" "$TimeCmd" >&6; }
else
  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
printf "%s\n" "no" >&6; }
fi



for ac_prog in gnutar gtar tar
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_path_TarCmd+y}
then :
  printf %s "(cached) " >&6
else $as_nop
  case $TarCmd in
  [\\/]* | ?:[\\/]*)
  ac_cv_path_TarCmd="$TarCmd" # 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_TarCmd="$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

  ;;
esac
fi
TarCmd=$ac_cv_path_TarCmd
if test -n "$TarCmd"; then
  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $TarCmd" >&5
printf "%s\n" "$TarCmd" >&6; }
else
  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
printf "%s\n" "no" >&6; }
fi


  test -n "$TarCmd" && break
done
test -n "$TarCmd" || TarCmd="tar"


for ac_prog in bzip2
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_path_Bzip2Cmd+y}
then :
  printf %s "(cached) " >&6
else $as_nop
  case $Bzip2Cmd in
  [\\/]* | ?:[\\/]*)
  ac_cv_path_Bzip2Cmd="$Bzip2Cmd" # 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_Bzip2Cmd="$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

  ;;
esac
fi
Bzip2Cmd=$ac_cv_path_Bzip2Cmd
if test -n "$Bzip2Cmd"; then
  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $Bzip2Cmd" >&5
printf "%s\n" "$Bzip2Cmd" >&6; }
else
  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
printf "%s\n" "no" >&6; }
fi


  test -n "$Bzip2Cmd" && break
done
test -n "$Bzip2Cmd" || Bzip2Cmd="bzip2"

for ac_prog in gzip
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_path_GzipCmd+y}
then :
  printf %s "(cached) " >&6
else $as_nop
  case $GzipCmd in
  [\\/]* | ?:[\\/]*)
  ac_cv_path_GzipCmd="$GzipCmd" # 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_GzipCmd="$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

  ;;
esac
fi
GzipCmd=$ac_cv_path_GzipCmd
if test -n "$GzipCmd"; then
  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $GzipCmd" >&5
printf "%s\n" "$GzipCmd" >&6; }
else
  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
printf "%s\n" "no" >&6; }
fi


  test -n "$GzipCmd" && break
done
test -n "$GzipCmd" || GzipCmd="gzip"

for ac_prog in pxz xz
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_path_XzCmd+y}
then :
  printf %s "(cached) " >&6
else $as_nop
  case $XzCmd in
  [\\/]* | ?:[\\/]*)
  ac_cv_path_XzCmd="$XzCmd" # 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_XzCmd="$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

  ;;
esac
fi
XzCmd=$ac_cv_path_XzCmd
if test -n "$XzCmd"; then
  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $XzCmd" >&5
printf "%s\n" "$XzCmd" >&6; }
else
  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
printf "%s\n" "no" >&6; }
fi


  test -n "$XzCmd" && break
done
test -n "$XzCmd" || XzCmd="xz"


for ac_prog in gpatch patch
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_path_PatchCmd+y}
then :
  printf %s "(cached) " >&6
else $as_nop
  case $PatchCmd in
  [\\/]* | ?:[\\/]*)
  ac_cv_path_PatchCmd="$PatchCmd" # 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_PatchCmd="$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

  ;;
esac
fi
PatchCmd=$ac_cv_path_PatchCmd
if test -n "$PatchCmd"; then
  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $PatchCmd" >&5
printf "%s\n" "$PatchCmd" >&6; }
else
  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
printf "%s\n" "no" >&6; }
fi


  test -n "$PatchCmd" && break
done
test -n "$PatchCmd" || PatchCmd="patch"


# Extract the first word of "autoreconf", so it can be a program name with args.
set dummy autoreconf; 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_AutoreconfCmd+y}
then :
  printf %s "(cached) " >&6
else $as_nop
  case $AutoreconfCmd in
  [\\/]* | ?:[\\/]*)
  ac_cv_path_AutoreconfCmd="$AutoreconfCmd" # 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_AutoreconfCmd="$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_AutoreconfCmd" && ac_cv_path_AutoreconfCmd="autoreconf"
  ;;
esac
fi
AutoreconfCmd=$ac_cv_path_AutoreconfCmd
if test -n "$AutoreconfCmd"; then
  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $AutoreconfCmd" >&5
printf "%s\n" "$AutoreconfCmd" >&6; }
else
  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
printf "%s\n" "no" >&6; }
fi



# Check whether --enable-dtrace was given.
if test ${enable_dtrace+y}
then :
  enableval=$enable_dtrace; EnableDtrace=$enableval
else $as_nop
  EnableDtrace=yes

fi


HaveDtrace=NO

# Extract the first word of "dtrace", so it can be a program name with args.
set dummy dtrace; 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_DtraceCmd+y}
then :
  printf %s "(cached) " >&6
else $as_nop
  case $DtraceCmd in
  [\\/]* | ?:[\\/]*)
  ac_cv_path_DtraceCmd="$DtraceCmd" # 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_DtraceCmd="$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

  ;;
esac
fi
DtraceCmd=$ac_cv_path_DtraceCmd
if test -n "$DtraceCmd"; then
  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $DtraceCmd" >&5
printf "%s\n" "$DtraceCmd" >&6; }
else
  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
printf "%s\n" "no" >&6; }
fi


if test "x$EnableDtrace" = "xyes"; then
  if test -n "$DtraceCmd"; then
    if test "x$TargetOS_CPP-$TargetVendor_CPP" = "xdarwin-apple" \
      -o "x$TargetOS_CPP-$TargetVendor_CPP" = "xfreebsd-portbld" \
      -o "x$TargetOS_CPP-$TargetVendor_CPP" = "xsolaris2-unknown"; then
      HaveDtrace=YES
    fi
  fi
fi


# Extract the first word of "HsColour", so it can be a program name with args.
set dummy HsColour; 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_HSCOLOUR+y}
then :
  printf %s "(cached) " >&6
else $as_nop
  case $HSCOLOUR in
  [\\/]* | ?:[\\/]*)
  ac_cv_path_HSCOLOUR="$HSCOLOUR" # 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_HSCOLOUR="$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

  ;;
esac
fi
HSCOLOUR=$ac_cv_path_HSCOLOUR
if test -n "$HSCOLOUR"; then
  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $HSCOLOUR" >&5
printf "%s\n" "$HSCOLOUR" >&6; }
else
  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
printf "%s\n" "no" >&6; }
fi


# HsColour is passed to Cabal, so we need a native path
if test "$HostOS"      = "mingw32" && \
   test "${OSTYPE}"   != "msys"    && \
   test "${HSCOLOUR}" != ""
then
    # Canonicalise to <drive>:/path/to/gcc
    HSCOLOUR=`cygpath -m ${HSCOLOUR}`
fi

# Extract the first word of "sphinx-build", so it can be a program name with args.
set dummy sphinx-build; 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_SPHINXBUILD+y}
then :
  printf %s "(cached) " >&6
else $as_nop
  case $SPHINXBUILD in
  [\\/]* | ?:[\\/]*)
  ac_cv_path_SPHINXBUILD="$SPHINXBUILD" # 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_SPHINXBUILD="$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

  ;;
esac
fi
SPHINXBUILD=$ac_cv_path_SPHINXBUILD
if test -n "$SPHINXBUILD"; then
  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $SPHINXBUILD" >&5
printf "%s\n" "$SPHINXBUILD" >&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}: checking for version of sphinx-build" >&5
printf %s "checking for version of sphinx-build... " >&6; }
if test ${fp_cv_sphinx_version+y}
then :
  printf %s "(cached) " >&6
else $as_nop
  if test -n "$SPHINXBUILD"; then
  fp_cv_sphinx_version=`"$SPHINXBUILD" --version 2>&1 | sed 's/.* \([0-9]\.[0-9]\.[0-9]\)/\1/' | head -n1`;
fi;

fi
{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $fp_cv_sphinx_version" >&5
printf "%s\n" "$fp_cv_sphinx_version" >&6; }
fp_version1=$fp_cv_sphinx_version; fp_version2=1.0.0
fp_save_IFS=$IFS; IFS='.'
while test x"$fp_version1" != x || test x"$fp_version2" != x
do

  set dummy $fp_version1; shift
  fp_num1=""
  test $# = 0 || { fp_num1="$1"; shift; }
  test x"$fp_num1" = x && fp_num1="0"
  fp_version1="$*"

  set dummy $fp_version2; shift
  fp_num2=""
  test $# = 0 || { fp_num2="$1"; shift; }
  test x"$fp_num2" = x && fp_num2="0"
  fp_version2="$*"

  test "$fp_num1" = "$fp_num2" || break;
done
IFS=$fp_save_IFS
if test "$fp_num1" -lt "$fp_num2"
then :
  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: WARNING: Sphinx version 1.0.0 or later is required to build documentation" >&5
printf "%s\n" "$as_me: WARNING: Sphinx version 1.0.0 or later is required to build documentation" >&2;}; SPHINXBUILD=;
fi
if test -n "$SPHINXBUILD"; then
  if "$SPHINXBUILD" -b text utils/check-sphinx utils/check-sphinx/dist > /dev/null 2>&1; then true; else
    { printf "%s\n" "$as_me:${as_lineno-$LINENO}: WARNING: Sphinx for python3 is required to build documentation." >&5
printf "%s\n" "$as_me: WARNING: Sphinx for python3 is required to build documentation." >&2;}
    SPHINXBUILD=;
  fi
fi

# Extract the first word of "xelatex", so it can be a program name with args.
set dummy xelatex; 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_XELATEX+y}
then :
  printf %s "(cached) " >&6
else $as_nop
  case $XELATEX in
  [\\/]* | ?:[\\/]*)
  ac_cv_path_XELATEX="$XELATEX" # 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_XELATEX="$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

  ;;
esac
fi
XELATEX=$ac_cv_path_XELATEX
if test -n "$XELATEX"; then
  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $XELATEX" >&5
printf "%s\n" "$XELATEX" >&6; }
else
  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
printf "%s\n" "no" >&6; }
fi


# Extract the first word of "makeindex", so it can be a program name with args.
set dummy makeindex; 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_MAKEINDEX+y}
then :
  printf %s "(cached) " >&6
else $as_nop
  case $MAKEINDEX in
  [\\/]* | ?:[\\/]*)
  ac_cv_path_MAKEINDEX="$MAKEINDEX" # 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_MAKEINDEX="$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

  ;;
esac
fi
MAKEINDEX=$ac_cv_path_MAKEINDEX
if test -n "$MAKEINDEX"; then
  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $MAKEINDEX" >&5
printf "%s\n" "$MAKEINDEX" >&6; }
else
  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
printf "%s\n" "no" >&6; }
fi



# Extract the first word of "makeinfo", so it can be a program name with args.
set dummy makeinfo; 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_MAKEINFO+y}
then :
  printf %s "(cached) " >&6
else $as_nop
  case $MAKEINFO in
  [\\/]* | ?:[\\/]*)
  ac_cv_path_MAKEINFO="$MAKEINFO" # 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_MAKEINFO="$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

  ;;
esac
fi
MAKEINFO=$ac_cv_path_MAKEINFO
if test -n "$MAKEINFO"; then
  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $MAKEINFO" >&5
printf "%s\n" "$MAKEINFO" >&6; }
else
  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
printf "%s\n" "no" >&6; }
fi




        # Extract the first word of "python3", so it can be a program name with args.
set dummy python3; 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_PYTHON+y}
then :
  printf %s "(cached) " >&6
else $as_nop
  case $PYTHON in
  [\\/]* | ?:[\\/]*)
  ac_cv_path_PYTHON="$PYTHON" # Let the user override the test with a path.
  ;;
  *)
  as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
for as_dir in /mingw64/bin $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_PYTHON="$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

  ;;
esac
fi
PYTHON=$ac_cv_path_PYTHON
if test -n "$PYTHON"; then
  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $PYTHON" >&5
printf "%s\n" "$PYTHON" >&6; }
else
  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
printf "%s\n" "no" >&6; }
fi


    PythonCmd="$PYTHON"



{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for ghc-pkg matching $WithGhc" >&5
printf %s "checking for ghc-pkg matching $WithGhc... " >&6; }
if test ${fp_cv_matching_ghc_pkg+y}
then :
  printf %s "(cached) " >&6
else $as_nop

# If we are told to use ghc-stage2, then we're using an in-tree
# compiler. In this case, we just want ghc-pkg, not ghc-pkg-stage2,
# so we sed off -stage[0-9]$. However, if we are told to use
# ghc-6.12.1 then we want to use ghc-pkg-6.12.1, so we keep any
# other suffix.
fp_ghc_pkg_guess=`echo "$WithGhc" | sed -e 's/-stage[0-9]$//' -e 's,ghc\([^/\\]*\)$,ghc-pkg\1,'`
if "$fp_ghc_pkg_guess" list > /dev/null 2>&1; then
  fp_cv_matching_ghc_pkg=$fp_ghc_pkg_guess
else
  as_fn_error $? "Cannot find matching ghc-pkg" "$LINENO" 5
fi
fi
{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $fp_cv_matching_ghc_pkg" >&5
printf "%s\n" "$fp_cv_matching_ghc_pkg" >&6; }
GhcPkgCmd=$fp_cv_matching_ghc_pkg





# Extract the first word of "happy", so it can be a program name with args.
set dummy happy; 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_HAPPY+y}
then :
  printf %s "(cached) " >&6
else $as_nop
  case $HAPPY in
  [\\/]* | ?:[\\/]*)
  ac_cv_path_HAPPY="$HAPPY" # 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_HAPPY="$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

  ;;
esac
fi
HAPPY=$ac_cv_path_HAPPY
if test -n "$HAPPY"; then
  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $HAPPY" >&5
printf "%s\n" "$HAPPY" >&6; }
else
  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
printf "%s\n" "no" >&6; }
fi


HappyCmd=$HAPPY

{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for version of happy" >&5
printf %s "checking for version of happy... " >&6; }
if test ${fptools_cv_happy_version+y}
then :
  printf %s "(cached) " >&6
else $as_nop

if test x"$HappyCmd" != x; then
   fptools_cv_happy_version=`"$HappyCmd" -v |
              grep 'Happy Version' | sed -e 's/Happy Version \([^ ]*\).*/\1/g'` ;
else
   fptools_cv_happy_version="";
fi;

fi
{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $fptools_cv_happy_version" >&5
printf "%s\n" "$fptools_cv_happy_version" >&6; }
if test ! -f compiler/GHC/Parser.hs || test ! -f compiler/GHC/Cmm/Parser.hs
then
    fp_version1=$fptools_cv_happy_version; fp_version2=1.19.10
fp_save_IFS=$IFS; IFS='.'
while test x"$fp_version1" != x || test x"$fp_version2" != x
do

  set dummy $fp_version1; shift
  fp_num1=""
  test $# = 0 || { fp_num1="$1"; shift; }
  test x"$fp_num1" = x && fp_num1="0"
  fp_version1="$*"

  set dummy $fp_version2; shift
  fp_num2=""
  test $# = 0 || { fp_num2="$1"; shift; }
  test x"$fp_num2" = x && fp_num2="0"
  fp_version2="$*"

  test "$fp_num1" = "$fp_num2" || break;
done
IFS=$fp_save_IFS
if test "$fp_num1" -lt "$fp_num2"
then :
  as_fn_error $? "Happy version 1.19.10 or later is required to compile GHC." "$LINENO" 5
fi
    fp_version1=$fptools_cv_happy_version; fp_version2=1.20.0
fp_save_IFS=$IFS; IFS='.'
while test x"$fp_version1" != x || test x"$fp_version2" != x
do

  set dummy $fp_version1; shift
  fp_num1=""
  test $# = 0 || { fp_num1="$1"; shift; }
  test x"$fp_num1" = x && fp_num1="0"
  fp_version1="$*"

  set dummy $fp_version2; shift
  fp_num2=""
  test $# = 0 || { fp_num2="$1"; shift; }
  test x"$fp_num2" = x && fp_num2="0"
  fp_version2="$*"

  test "$fp_num1" = "$fp_num2" || break;
done
IFS=$fp_save_IFS
if test "$fp_num1" -ge "$fp_num2"
then :
  as_fn_error $? "Happy version 1.19 is required to compile GHC." "$LINENO" 5
fi
fi
HappyVersion=$fptools_cv_happy_version;





# Extract the first word of "alex", so it can be a program name with args.
set dummy alex; 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_ALEX+y}
then :
  printf %s "(cached) " >&6
else $as_nop
  case $ALEX in
  [\\/]* | ?:[\\/]*)
  ac_cv_path_ALEX="$ALEX" # 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_ALEX="$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

  ;;
esac
fi
ALEX=$ac_cv_path_ALEX
if test -n "$ALEX"; then
  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ALEX" >&5
printf "%s\n" "$ALEX" >&6; }
else
  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
printf "%s\n" "no" >&6; }
fi


AlexCmd=$ALEX

{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for version of alex" >&5
printf %s "checking for version of alex... " >&6; }
if test ${fptools_cv_alex_version+y}
then :
  printf %s "(cached) " >&6
else $as_nop
  if test x"$AlexCmd" != x; then
   fptools_cv_alex_version=`"$AlexCmd" -v |
              grep 'Alex [Vv]ersion' | sed -e 's/Alex [Vv]ersion \([0-9\.]*\).*/\1/g'` ;
else
   fptools_cv_alex_version="";
fi;

fi
{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $fptools_cv_alex_version" >&5
printf "%s\n" "$fptools_cv_alex_version" >&6; }
if test ! -f compiler/GHC/Parser/Lexer.hs || test ! -f compiler/GHC/Cmm/Lexer.hs
then
    fp_version1=$fptools_cv_alex_version; fp_version2=3.1.7
fp_save_IFS=$IFS; IFS='.'
while test x"$fp_version1" != x || test x"$fp_version2" != x
do

  set dummy $fp_version1; shift
  fp_num1=""
  test $# = 0 || { fp_num1="$1"; shift; }
  test x"$fp_num1" = x && fp_num1="0"
  fp_version1="$*"

  set dummy $fp_version2; shift
  fp_num2=""
  test $# = 0 || { fp_num2="$1"; shift; }
  test x"$fp_num2" = x && fp_num2="0"
  fp_version2="$*"

  test "$fp_num1" = "$fp_num2" || break;
done
IFS=$fp_save_IFS
if test "$fp_num1" -lt "$fp_num2"
then :
  as_fn_error $? "Alex version 3.1.7 or later is required to compile GHC." "$LINENO" 5
fi
fi
AlexVersion=$fptools_cv_alex_version;





# Check whether --enable-largefile was given.
if test ${enable_largefile+y}
then :
  enableval=$enable_largefile;
fi

if test "$enable_largefile" != no; then

  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for special C compiler options needed for large files" >&5
printf %s "checking for special C compiler options needed for large files... " >&6; }
if test ${ac_cv_sys_largefile_CC+y}
then :
  printf %s "(cached) " >&6
else $as_nop
  ac_cv_sys_largefile_CC=no
     if test "$GCC" != yes; then
       ac_save_CC=$CC
       while :; do
	 # IRIX 6.2 and later do not support large files by default,
	 # so use the C compiler's -n32 option if that helps.
	 cat confdefs.h - <<_ACEOF >conftest.$ac_ext
/* end confdefs.h.  */
#include <sys/types.h>
 /* Check that off_t can represent 2**63 - 1 correctly.
    We can't simply define LARGE_OFF_T to be 9223372036854775807,
    since some C++ compilers masquerading as C compilers
    incorrectly reject 9223372036854775807.  */
#define LARGE_OFF_T (((off_t) 1 << 31 << 31) - 1 + ((off_t) 1 << 31 << 31))
  int off_t_is_large[(LARGE_OFF_T % 2147483629 == 721
		       && LARGE_OFF_T % 2147483647 == 1)
		      ? 1 : -1];
int
main (void)
{

  ;
  return 0;
}
_ACEOF
	 if ac_fn_c_try_compile "$LINENO"
then :
  break
fi
rm -f core conftest.err conftest.$ac_objext conftest.beam
	 CC="$CC -n32"
	 if ac_fn_c_try_compile "$LINENO"
then :
  ac_cv_sys_largefile_CC=' -n32'; break
fi
rm -f core conftest.err conftest.$ac_objext conftest.beam
	 break
       done
       CC=$ac_save_CC
       rm -f conftest.$ac_ext
    fi
fi
{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_cv_sys_largefile_CC" >&5
printf "%s\n" "$ac_cv_sys_largefile_CC" >&6; }
  if test "$ac_cv_sys_largefile_CC" != no; then
    CC=$CC$ac_cv_sys_largefile_CC
  fi

  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for _FILE_OFFSET_BITS value needed for large files" >&5
printf %s "checking for _FILE_OFFSET_BITS value needed for large files... " >&6; }
if test ${ac_cv_sys_file_offset_bits+y}
then :
  printf %s "(cached) " >&6
else $as_nop
  while :; do
  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
/* end confdefs.h.  */
#include <sys/types.h>
 /* Check that off_t can represent 2**63 - 1 correctly.
    We can't simply define LARGE_OFF_T to be 9223372036854775807,
    since some C++ compilers masquerading as C compilers
    incorrectly reject 9223372036854775807.  */
#define LARGE_OFF_T (((off_t) 1 << 31 << 31) - 1 + ((off_t) 1 << 31 << 31))
  int off_t_is_large[(LARGE_OFF_T % 2147483629 == 721
		       && LARGE_OFF_T % 2147483647 == 1)
		      ? 1 : -1];
int
main (void)
{

  ;
  return 0;
}
_ACEOF
if ac_fn_c_try_compile "$LINENO"
then :
  ac_cv_sys_file_offset_bits=no; break
fi
rm -f core conftest.err conftest.$ac_objext conftest.beam conftest.$ac_ext
  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
/* end confdefs.h.  */
#define _FILE_OFFSET_BITS 64
#include <sys/types.h>
 /* Check that off_t can represent 2**63 - 1 correctly.
    We can't simply define LARGE_OFF_T to be 9223372036854775807,
    since some C++ compilers masquerading as C compilers
    incorrectly reject 9223372036854775807.  */
#define LARGE_OFF_T (((off_t) 1 << 31 << 31) - 1 + ((off_t) 1 << 31 << 31))
  int off_t_is_large[(LARGE_OFF_T % 2147483629 == 721
		       && LARGE_OFF_T % 2147483647 == 1)
		      ? 1 : -1];
int
main (void)
{

  ;
  return 0;
}
_ACEOF
if ac_fn_c_try_compile "$LINENO"
then :
  ac_cv_sys_file_offset_bits=64; break
fi
rm -f core conftest.err conftest.$ac_objext conftest.beam conftest.$ac_ext
  ac_cv_sys_file_offset_bits=unknown
  break
done
fi
{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_cv_sys_file_offset_bits" >&5
printf "%s\n" "$ac_cv_sys_file_offset_bits" >&6; }
case $ac_cv_sys_file_offset_bits in #(
  no | unknown) ;;
  *)
printf "%s\n" "#define _FILE_OFFSET_BITS $ac_cv_sys_file_offset_bits" >>confdefs.h
;;
esac
rm -rf conftest*
  if test $ac_cv_sys_file_offset_bits = unknown; then
    { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for _LARGE_FILES value needed for large files" >&5
printf %s "checking for _LARGE_FILES value needed for large files... " >&6; }
if test ${ac_cv_sys_large_files+y}
then :
  printf %s "(cached) " >&6
else $as_nop
  while :; do
  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
/* end confdefs.h.  */
#include <sys/types.h>
 /* Check that off_t can represent 2**63 - 1 correctly.
    We can't simply define LARGE_OFF_T to be 9223372036854775807,
    since some C++ compilers masquerading as C compilers
    incorrectly reject 9223372036854775807.  */
#define LARGE_OFF_T (((off_t) 1 << 31 << 31) - 1 + ((off_t) 1 << 31 << 31))
  int off_t_is_large[(LARGE_OFF_T % 2147483629 == 721
		       && LARGE_OFF_T % 2147483647 == 1)
		      ? 1 : -1];
int
main (void)
{

  ;
  return 0;
}
_ACEOF
if ac_fn_c_try_compile "$LINENO"
then :
  ac_cv_sys_large_files=no; break
fi
rm -f core conftest.err conftest.$ac_objext conftest.beam conftest.$ac_ext
  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
/* end confdefs.h.  */
#define _LARGE_FILES 1
#include <sys/types.h>
 /* Check that off_t can represent 2**63 - 1 correctly.
    We can't simply define LARGE_OFF_T to be 9223372036854775807,
    since some C++ compilers masquerading as C compilers
    incorrectly reject 9223372036854775807.  */
#define LARGE_OFF_T (((off_t) 1 << 31 << 31) - 1 + ((off_t) 1 << 31 << 31))
  int off_t_is_large[(LARGE_OFF_T % 2147483629 == 721
		       && LARGE_OFF_T % 2147483647 == 1)
		      ? 1 : -1];
int
main (void)
{

  ;
  return 0;
}
_ACEOF
if ac_fn_c_try_compile "$LINENO"
then :
  ac_cv_sys_large_files=1; break
fi
rm -f core conftest.err conftest.$ac_objext conftest.beam conftest.$ac_ext
  ac_cv_sys_large_files=unknown
  break
done
fi
{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_cv_sys_large_files" >&5
printf "%s\n" "$ac_cv_sys_large_files" >&6; }
case $ac_cv_sys_large_files in #(
  no | unknown) ;;
  *)
printf "%s\n" "#define _LARGE_FILES $ac_cv_sys_large_files" >>confdefs.h
;;
esac
rm -rf conftest*
  fi
fi


ac_fn_c_check_header_compile "$LINENO" "ctype.h" "ac_cv_header_ctype_h" "$ac_includes_default"
if test "x$ac_cv_header_ctype_h" = xyes
then :
  printf "%s\n" "#define HAVE_CTYPE_H 1" >>confdefs.h

fi
ac_fn_c_check_header_compile "$LINENO" "dirent.h" "ac_cv_header_dirent_h" "$ac_includes_default"
if test "x$ac_cv_header_dirent_h" = xyes
then :
  printf "%s\n" "#define HAVE_DIRENT_H 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
ac_fn_c_check_header_compile "$LINENO" "errno.h" "ac_cv_header_errno_h" "$ac_includes_default"
if test "x$ac_cv_header_errno_h" = xyes
then :
  printf "%s\n" "#define HAVE_ERRNO_H 1" >>confdefs.h

fi
ac_fn_c_check_header_compile "$LINENO" "fcntl.h" "ac_cv_header_fcntl_h" "$ac_includes_default"
if test "x$ac_cv_header_fcntl_h" = xyes
then :
  printf "%s\n" "#define HAVE_FCNTL_H 1" >>confdefs.h

fi
ac_fn_c_check_header_compile "$LINENO" "grp.h" "ac_cv_header_grp_h" "$ac_includes_default"
if test "x$ac_cv_header_grp_h" = xyes
then :
  printf "%s\n" "#define HAVE_GRP_H 1" >>confdefs.h

fi
ac_fn_c_check_header_compile "$LINENO" "limits.h" "ac_cv_header_limits_h" "$ac_includes_default"
if test "x$ac_cv_header_limits_h" = xyes
then :
  printf "%s\n" "#define HAVE_LIMITS_H 1" >>confdefs.h

fi
ac_fn_c_check_header_compile "$LINENO" "locale.h" "ac_cv_header_locale_h" "$ac_includes_default"
if test "x$ac_cv_header_locale_h" = xyes
then :
  printf "%s\n" "#define HAVE_LOCALE_H 1" >>confdefs.h

fi
ac_fn_c_check_header_compile "$LINENO" "nlist.h" "ac_cv_header_nlist_h" "$ac_includes_default"
if test "x$ac_cv_header_nlist_h" = xyes
then :
  printf "%s\n" "#define HAVE_NLIST_H 1" >>confdefs.h

fi
ac_fn_c_check_header_compile "$LINENO" "pthread.h" "ac_cv_header_pthread_h" "$ac_includes_default"
if test "x$ac_cv_header_pthread_h" = xyes
then :
  printf "%s\n" "#define HAVE_PTHREAD_H 1" >>confdefs.h

fi
ac_fn_c_check_header_compile "$LINENO" "pwd.h" "ac_cv_header_pwd_h" "$ac_includes_default"
if test "x$ac_cv_header_pwd_h" = xyes
then :
  printf "%s\n" "#define HAVE_PWD_H 1" >>confdefs.h

fi
ac_fn_c_check_header_compile "$LINENO" "signal.h" "ac_cv_header_signal_h" "$ac_includes_default"
if test "x$ac_cv_header_signal_h" = xyes
then :
  printf "%s\n" "#define HAVE_SIGNAL_H 1" >>confdefs.h

fi
ac_fn_c_check_header_compile "$LINENO" "sys/param.h" "ac_cv_header_sys_param_h" "$ac_includes_default"
if test "x$ac_cv_header_sys_param_h" = xyes
then :
  printf "%s\n" "#define HAVE_SYS_PARAM_H 1" >>confdefs.h

fi
ac_fn_c_check_header_compile "$LINENO" "sys/mman.h" "ac_cv_header_sys_mman_h" "$ac_includes_default"
if test "x$ac_cv_header_sys_mman_h" = xyes
then :
  printf "%s\n" "#define HAVE_SYS_MMAN_H 1" >>confdefs.h

fi
ac_fn_c_check_header_compile "$LINENO" "sys/resource.h" "ac_cv_header_sys_resource_h" "$ac_includes_default"
if test "x$ac_cv_header_sys_resource_h" = xyes
then :
  printf "%s\n" "#define HAVE_SYS_RESOURCE_H 1" >>confdefs.h

fi
ac_fn_c_check_header_compile "$LINENO" "sys/select.h" "ac_cv_header_sys_select_h" "$ac_includes_default"
if test "x$ac_cv_header_sys_select_h" = xyes
then :
  printf "%s\n" "#define HAVE_SYS_SELECT_H 1" >>confdefs.h

fi
ac_fn_c_check_header_compile "$LINENO" "sys/time.h" "ac_cv_header_sys_time_h" "$ac_includes_default"
if test "x$ac_cv_header_sys_time_h" = xyes
then :
  printf "%s\n" "#define HAVE_SYS_TIME_H 1" >>confdefs.h

fi
ac_fn_c_check_header_compile "$LINENO" "sys/timeb.h" "ac_cv_header_sys_timeb_h" "$ac_includes_default"
if test "x$ac_cv_header_sys_timeb_h" = xyes
then :
  printf "%s\n" "#define HAVE_SYS_TIMEB_H 1" >>confdefs.h

fi
ac_fn_c_check_header_compile "$LINENO" "sys/timerfd.h" "ac_cv_header_sys_timerfd_h" "$ac_includes_default"
if test "x$ac_cv_header_sys_timerfd_h" = xyes
then :
  printf "%s\n" "#define HAVE_SYS_TIMERFD_H 1" >>confdefs.h

fi
ac_fn_c_check_header_compile "$LINENO" "sys/timers.h" "ac_cv_header_sys_timers_h" "$ac_includes_default"
if test "x$ac_cv_header_sys_timers_h" = xyes
then :
  printf "%s\n" "#define HAVE_SYS_TIMERS_H 1" >>confdefs.h

fi
ac_fn_c_check_header_compile "$LINENO" "sys/times.h" "ac_cv_header_sys_times_h" "$ac_includes_default"
if test "x$ac_cv_header_sys_times_h" = xyes
then :
  printf "%s\n" "#define HAVE_SYS_TIMES_H 1" >>confdefs.h

fi
ac_fn_c_check_header_compile "$LINENO" "sys/utsname.h" "ac_cv_header_sys_utsname_h" "$ac_includes_default"
if test "x$ac_cv_header_sys_utsname_h" = xyes
then :
  printf "%s\n" "#define HAVE_SYS_UTSNAME_H 1" >>confdefs.h

fi
ac_fn_c_check_header_compile "$LINENO" "sys/wait.h" "ac_cv_header_sys_wait_h" "$ac_includes_default"
if test "x$ac_cv_header_sys_wait_h" = xyes
then :
  printf "%s\n" "#define HAVE_SYS_WAIT_H 1" >>confdefs.h

fi
ac_fn_c_check_header_compile "$LINENO" "termios.h" "ac_cv_header_termios_h" "$ac_includes_default"
if test "x$ac_cv_header_termios_h" = xyes
then :
  printf "%s\n" "#define HAVE_TERMIOS_H 1" >>confdefs.h

fi
ac_fn_c_check_header_compile "$LINENO" "time.h" "ac_cv_header_time_h" "$ac_includes_default"
if test "x$ac_cv_header_time_h" = xyes
then :
  printf "%s\n" "#define HAVE_TIME_H 1" >>confdefs.h

fi
ac_fn_c_check_header_compile "$LINENO" "utime.h" "ac_cv_header_utime_h" "$ac_includes_default"
if test "x$ac_cv_header_utime_h" = xyes
then :
  printf "%s\n" "#define HAVE_UTIME_H 1" >>confdefs.h

fi
ac_fn_c_check_header_compile "$LINENO" "windows.h" "ac_cv_header_windows_h" "$ac_includes_default"
if test "x$ac_cv_header_windows_h" = xyes
then :
  printf "%s\n" "#define HAVE_WINDOWS_H 1" >>confdefs.h

fi
ac_fn_c_check_header_compile "$LINENO" "winsock.h" "ac_cv_header_winsock_h" "$ac_includes_default"
if test "x$ac_cv_header_winsock_h" = xyes
then :
  printf "%s\n" "#define HAVE_WINSOCK_H 1" >>confdefs.h

fi
ac_fn_c_check_header_compile "$LINENO" "sched.h" "ac_cv_header_sched_h" "$ac_includes_default"
if test "x$ac_cv_header_sched_h" = xyes
then :
  printf "%s\n" "#define HAVE_SCHED_H 1" >>confdefs.h

fi


ac_fn_c_check_header_compile "$LINENO" "sys/cpuset.h" "ac_cv_header_sys_cpuset_h" "#if HAVE_SYS_PARAM_H
# include <sys/param.h>
#endif

"
if test "x$ac_cv_header_sys_cpuset_h" = xyes
then :
  printf "%s\n" "#define HAVE_SYS_CPUSET_H 1" >>confdefs.h

fi


{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for $CC options needed to detect all undeclared functions" >&5
printf %s "checking for $CC options needed to detect all undeclared functions... " >&6; }
if test ${ac_cv_c_undeclared_builtin_options+y}
then :
  printf %s "(cached) " >&6
else $as_nop
  ac_save_CFLAGS=$CFLAGS
   ac_cv_c_undeclared_builtin_options='cannot detect'
   for ac_arg in '' -fno-builtin; do
     CFLAGS="$ac_save_CFLAGS $ac_arg"
     # This test program should *not* compile successfully.
     cat confdefs.h - <<_ACEOF >conftest.$ac_ext
/* end confdefs.h.  */

int
main (void)
{
(void) strchr;
  ;
  return 0;
}
_ACEOF
if ac_fn_c_try_compile "$LINENO"
then :

else $as_nop
  # This test program should compile successfully.
        # No library function is consistently available on
        # freestanding implementations, so test against a dummy
        # declaration.  Include always-available headers on the
        # off chance that they somehow elicit warnings.
        cat confdefs.h - <<_ACEOF >conftest.$ac_ext
/* end confdefs.h.  */
#include <float.h>
#include <limits.h>
#include <stdarg.h>
#include <stddef.h>
extern void ac_decl (int, char *);

int
main (void)
{
(void) ac_decl (0, (char *) 0);
  (void) ac_decl;

  ;
  return 0;
}
_ACEOF
if ac_fn_c_try_compile "$LINENO"
then :
  if test x"$ac_arg" = x
then :
  ac_cv_c_undeclared_builtin_options='none needed'
else $as_nop
  ac_cv_c_undeclared_builtin_options=$ac_arg
fi
          break
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
    done
    CFLAGS=$ac_save_CFLAGS

fi
{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_cv_c_undeclared_builtin_options" >&5
printf "%s\n" "$ac_cv_c_undeclared_builtin_options" >&6; }
  case $ac_cv_c_undeclared_builtin_options in #(
  'cannot detect') :
    { { 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 make $CC report undeclared builtins
See \`config.log' for more details" "$LINENO" 5; } ;; #(
  'none needed') :
    ac_c_undeclared_builtin_options='' ;; #(
  *) :
    ac_c_undeclared_builtin_options=$ac_cv_c_undeclared_builtin_options ;;
esac


            ac_fn_check_decl "$LINENO" "environ" "ac_cv_have_decl_environ" "
    #include <unistd.h>

" "$ac_c_undeclared_builtin_options" "CFLAGS"
if test "x$ac_cv_have_decl_environ" = xyes
then :
  ac_have_decl=1
else $as_nop
  ac_have_decl=0
fi
printf "%s\n" "#define HAVE_DECL_ENVIRON $ac_have_decl" >>confdefs.h





# Obsolete code to be removed.
if test $ac_cv_header_sys_time_h = yes; then

printf "%s\n" "#define TIME_WITH_SYS_TIME 1" >>confdefs.h

fi
# End of obsolete code.


ac_fn_c_check_type "$LINENO" "long long" "ac_cv_type_long_long" "$ac_includes_default"
if test "x$ac_cv_type_long_long" = xyes
then :

printf "%s\n" "#define HAVE_LONG_LONG 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 char" >&5
printf %s "checking size of char... " >&6; }
if test ${ac_cv_sizeof_char+y}
then :
  printf %s "(cached) " >&6
else $as_nop
  if ac_fn_c_compute_int "$LINENO" "(long int) (sizeof (char))" "ac_cv_sizeof_char"        "$ac_includes_default"
then :

else $as_nop
  if test "$ac_cv_type_char" = 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 (char)
See \`config.log' for more details" "$LINENO" 5; }
   else
     ac_cv_sizeof_char=0
   fi
fi

fi
{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_cv_sizeof_char" >&5
printf "%s\n" "$ac_cv_sizeof_char" >&6; }



printf "%s\n" "#define SIZEOF_CHAR $ac_cv_sizeof_char" >>confdefs.h


ac_fn_c_check_type "$LINENO" "char" "ac_cv_type_char" "$ac_includes_default"
if test "x$ac_cv_type_char" = xyes
then :

fi
{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking alignment of char" >&5
printf %s "checking alignment of char... " >&6; }
if test ${fp_cv_alignment_char+y}
then :
  printf %s "(cached) " >&6
else $as_nop
  if test "$ac_cv_type_char" = yes; then
  if ac_fn_c_compute_int "$LINENO" "offsetof(struct { char c; char ty; },ty)" "fp_cv_alignment_char"        "$ac_includes_default"
then :

else $as_nop
  as_fn_error 77 "cannot compute alignment (char)
See \`config.log' for more details." "$LINENO" 5
fi

else
  fp_cv_alignment_char=0
fi
fi
{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $fp_cv_alignment_char" >&5
printf "%s\n" "$fp_cv_alignment_char" >&6; }
printf "%s\n" "#define ALIGNMENT_CHAR $fp_cv_alignment_char" >>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 double" >&5
printf %s "checking size of double... " >&6; }
if test ${ac_cv_sizeof_double+y}
then :
  printf %s "(cached) " >&6
else $as_nop
  if ac_fn_c_compute_int "$LINENO" "(long int) (sizeof (double))" "ac_cv_sizeof_double"        "$ac_includes_default"
then :

else $as_nop
  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
fi

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


ac_fn_c_check_type "$LINENO" "double" "ac_cv_type_double" "$ac_includes_default"
if test "x$ac_cv_type_double" = xyes
then :

fi
{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking alignment of double" >&5
printf %s "checking alignment of double... " >&6; }
if test ${fp_cv_alignment_double+y}
then :
  printf %s "(cached) " >&6
else $as_nop
  if test "$ac_cv_type_double" = yes; then
  if ac_fn_c_compute_int "$LINENO" "offsetof(struct { char c; double ty; },ty)" "fp_cv_alignment_double"        "$ac_includes_default"
then :

else $as_nop
  as_fn_error 77 "cannot compute alignment (double)
See \`config.log' for more details." "$LINENO" 5
fi

else
  fp_cv_alignment_double=0
fi
fi
{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $fp_cv_alignment_double" >&5
printf "%s\n" "$fp_cv_alignment_double" >&6; }
printf "%s\n" "#define ALIGNMENT_DOUBLE $fp_cv_alignment_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 float" >&5
printf %s "checking size of float... " >&6; }
if test ${ac_cv_sizeof_float+y}
then :
  printf %s "(cached) " >&6
else $as_nop
  if ac_fn_c_compute_int "$LINENO" "(long int) (sizeof (float))" "ac_cv_sizeof_float"        "$ac_includes_default"
then :

else $as_nop
  if test "$ac_cv_type_float" = 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 (float)
See \`config.log' for more details" "$LINENO" 5; }
   else
     ac_cv_sizeof_float=0
   fi
fi

fi
{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_cv_sizeof_float" >&5
printf "%s\n" "$ac_cv_sizeof_float" >&6; }



printf "%s\n" "#define SIZEOF_FLOAT $ac_cv_sizeof_float" >>confdefs.h


ac_fn_c_check_type "$LINENO" "float" "ac_cv_type_float" "$ac_includes_default"
if test "x$ac_cv_type_float" = xyes
then :

fi
{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking alignment of float" >&5
printf %s "checking alignment of float... " >&6; }
if test ${fp_cv_alignment_float+y}
then :
  printf %s "(cached) " >&6
else $as_nop
  if test "$ac_cv_type_float" = yes; then
  if ac_fn_c_compute_int "$LINENO" "offsetof(struct { char c; float ty; },ty)" "fp_cv_alignment_float"        "$ac_includes_default"
then :

else $as_nop
  as_fn_error 77 "cannot compute alignment (float)
See \`config.log' for more details." "$LINENO" 5
fi

else
  fp_cv_alignment_float=0
fi
fi
{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $fp_cv_alignment_float" >&5
printf "%s\n" "$fp_cv_alignment_float" >&6; }
printf "%s\n" "#define ALIGNMENT_FLOAT $fp_cv_alignment_float" >>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 int" >&5
printf %s "checking size of int... " >&6; }
if test ${ac_cv_sizeof_int+y}
then :
  printf %s "(cached) " >&6
else $as_nop
  if ac_fn_c_compute_int "$LINENO" "(long int) (sizeof (int))" "ac_cv_sizeof_int"        "$ac_includes_default"
then :

else $as_nop
  if test "$ac_cv_type_int" = 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 (int)
See \`config.log' for more details" "$LINENO" 5; }
   else
     ac_cv_sizeof_int=0
   fi
fi

fi
{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_cv_sizeof_int" >&5
printf "%s\n" "$ac_cv_sizeof_int" >&6; }



printf "%s\n" "#define SIZEOF_INT $ac_cv_sizeof_int" >>confdefs.h


ac_fn_c_check_type "$LINENO" "int" "ac_cv_type_int" "$ac_includes_default"
if test "x$ac_cv_type_int" = xyes
then :

fi
{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking alignment of int" >&5
printf %s "checking alignment of int... " >&6; }
if test ${fp_cv_alignment_int+y}
then :
  printf %s "(cached) " >&6
else $as_nop
  if test "$ac_cv_type_int" = yes; then
  if ac_fn_c_compute_int "$LINENO" "offsetof(struct { char c; int ty; },ty)" "fp_cv_alignment_int"        "$ac_includes_default"
then :

else $as_nop
  as_fn_error 77 "cannot compute alignment (int)
See \`config.log' for more details." "$LINENO" 5
fi

else
  fp_cv_alignment_int=0
fi
fi
{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $fp_cv_alignment_int" >&5
printf "%s\n" "$fp_cv_alignment_int" >&6; }
printf "%s\n" "#define ALIGNMENT_INT $fp_cv_alignment_int" >>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" >&5
printf %s "checking size of long... " >&6; }
if test ${ac_cv_sizeof_long+y}
then :
  printf %s "(cached) " >&6
else $as_nop
  if ac_fn_c_compute_int "$LINENO" "(long int) (sizeof (long))" "ac_cv_sizeof_long"        "$ac_includes_default"
then :

else $as_nop
  if test "$ac_cv_type_long" = 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)
See \`config.log' for more details" "$LINENO" 5; }
   else
     ac_cv_sizeof_long=0
   fi
fi

fi
{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_cv_sizeof_long" >&5
printf "%s\n" "$ac_cv_sizeof_long" >&6; }



printf "%s\n" "#define SIZEOF_LONG $ac_cv_sizeof_long" >>confdefs.h


ac_fn_c_check_type "$LINENO" "long" "ac_cv_type_long" "$ac_includes_default"
if test "x$ac_cv_type_long" = xyes
then :

fi
{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking alignment of long" >&5
printf %s "checking alignment of long... " >&6; }
if test ${fp_cv_alignment_long+y}
then :
  printf %s "(cached) " >&6
else $as_nop
  if test "$ac_cv_type_long" = yes; then
  if ac_fn_c_compute_int "$LINENO" "offsetof(struct { char c; long ty; },ty)" "fp_cv_alignment_long"        "$ac_includes_default"
then :

else $as_nop
  as_fn_error 77 "cannot compute alignment (long)
See \`config.log' for more details." "$LINENO" 5
fi

else
  fp_cv_alignment_long=0
fi
fi
{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $fp_cv_alignment_long" >&5
printf "%s\n" "$fp_cv_alignment_long" >&6; }
printf "%s\n" "#define ALIGNMENT_LONG $fp_cv_alignment_long" >>confdefs.h


if test "$ac_cv_type_long_long" = yes; then
# 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 long" >&5
printf %s "checking size of long long... " >&6; }
if test ${ac_cv_sizeof_long_long+y}
then :
  printf %s "(cached) " >&6
else $as_nop
  if ac_fn_c_compute_int "$LINENO" "(long int) (sizeof (long long))" "ac_cv_sizeof_long_long"        "$ac_includes_default"
then :

else $as_nop
  if test "$ac_cv_type_long_long" = 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 long)
See \`config.log' for more details" "$LINENO" 5; }
   else
     ac_cv_sizeof_long_long=0
   fi
fi

fi
{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_cv_sizeof_long_long" >&5
printf "%s\n" "$ac_cv_sizeof_long_long" >&6; }



printf "%s\n" "#define SIZEOF_LONG_LONG $ac_cv_sizeof_long_long" >>confdefs.h


ac_fn_c_check_type "$LINENO" "long long" "ac_cv_type_long_long" "$ac_includes_default"
if test "x$ac_cv_type_long_long" = xyes
then :

fi
{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking alignment of long long" >&5
printf %s "checking alignment of long long... " >&6; }
if test ${fp_cv_alignment_long_long+y}
then :
  printf %s "(cached) " >&6
else $as_nop
  if test "$ac_cv_type_long_long" = yes; then
  if ac_fn_c_compute_int "$LINENO" "offsetof(struct { char c; long long ty; },ty)" "fp_cv_alignment_long_long"        "$ac_includes_default"
then :

else $as_nop
  as_fn_error 77 "cannot compute alignment (long long)
See \`config.log' for more details." "$LINENO" 5
fi

else
  fp_cv_alignment_long_long=0
fi
fi
{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $fp_cv_alignment_long_long" >&5
printf "%s\n" "$fp_cv_alignment_long_long" >&6; }
printf "%s\n" "#define ALIGNMENT_LONG_LONG $fp_cv_alignment_long_long" >>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 short" >&5
printf %s "checking size of short... " >&6; }
if test ${ac_cv_sizeof_short+y}
then :
  printf %s "(cached) " >&6
else $as_nop
  if ac_fn_c_compute_int "$LINENO" "(long int) (sizeof (short))" "ac_cv_sizeof_short"        "$ac_includes_default"
then :

else $as_nop
  if test "$ac_cv_type_short" = 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 (short)
See \`config.log' for more details" "$LINENO" 5; }
   else
     ac_cv_sizeof_short=0
   fi
fi

fi
{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_cv_sizeof_short" >&5
printf "%s\n" "$ac_cv_sizeof_short" >&6; }



printf "%s\n" "#define SIZEOF_SHORT $ac_cv_sizeof_short" >>confdefs.h


ac_fn_c_check_type "$LINENO" "short" "ac_cv_type_short" "$ac_includes_default"
if test "x$ac_cv_type_short" = xyes
then :

fi
{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking alignment of short" >&5
printf %s "checking alignment of short... " >&6; }
if test ${fp_cv_alignment_short+y}
then :
  printf %s "(cached) " >&6
else $as_nop
  if test "$ac_cv_type_short" = yes; then
  if ac_fn_c_compute_int "$LINENO" "offsetof(struct { char c; short ty; },ty)" "fp_cv_alignment_short"        "$ac_includes_default"
then :

else $as_nop
  as_fn_error 77 "cannot compute alignment (short)
See \`config.log' for more details." "$LINENO" 5
fi

else
  fp_cv_alignment_short=0
fi
fi
{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $fp_cv_alignment_short" >&5
printf "%s\n" "$fp_cv_alignment_short" >&6; }
printf "%s\n" "#define ALIGNMENT_SHORT $fp_cv_alignment_short" >>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 unsigned char" >&5
printf %s "checking size of unsigned char... " >&6; }
if test ${ac_cv_sizeof_unsigned_char+y}
then :
  printf %s "(cached) " >&6
else $as_nop
  if ac_fn_c_compute_int "$LINENO" "(long int) (sizeof (unsigned char))" "ac_cv_sizeof_unsigned_char"        "$ac_includes_default"
then :

else $as_nop
  if test "$ac_cv_type_unsigned_char" = 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 (unsigned char)
See \`config.log' for more details" "$LINENO" 5; }
   else
     ac_cv_sizeof_unsigned_char=0
   fi
fi

fi
{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_cv_sizeof_unsigned_char" >&5
printf "%s\n" "$ac_cv_sizeof_unsigned_char" >&6; }



printf "%s\n" "#define SIZEOF_UNSIGNED_CHAR $ac_cv_sizeof_unsigned_char" >>confdefs.h


ac_fn_c_check_type "$LINENO" "unsigned char" "ac_cv_type_unsigned_char" "$ac_includes_default"
if test "x$ac_cv_type_unsigned_char" = xyes
then :

fi
{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking alignment of unsigned char" >&5
printf %s "checking alignment of unsigned char... " >&6; }
if test ${fp_cv_alignment_unsigned_char+y}
then :
  printf %s "(cached) " >&6
else $as_nop
  if test "$ac_cv_type_unsigned_char" = yes; then
  if ac_fn_c_compute_int "$LINENO" "offsetof(struct { char c; unsigned char ty; },ty)" "fp_cv_alignment_unsigned_char"        "$ac_includes_default"
then :

else $as_nop
  as_fn_error 77 "cannot compute alignment (unsigned char)
See \`config.log' for more details." "$LINENO" 5
fi

else
  fp_cv_alignment_unsigned_char=0
fi
fi
{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $fp_cv_alignment_unsigned_char" >&5
printf "%s\n" "$fp_cv_alignment_unsigned_char" >&6; }
printf "%s\n" "#define ALIGNMENT_UNSIGNED_CHAR $fp_cv_alignment_unsigned_char" >>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 unsigned int" >&5
printf %s "checking size of unsigned int... " >&6; }
if test ${ac_cv_sizeof_unsigned_int+y}
then :
  printf %s "(cached) " >&6
else $as_nop
  if ac_fn_c_compute_int "$LINENO" "(long int) (sizeof (unsigned int))" "ac_cv_sizeof_unsigned_int"        "$ac_includes_default"
then :

else $as_nop
  if test "$ac_cv_type_unsigned_int" = 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 (unsigned int)
See \`config.log' for more details" "$LINENO" 5; }
   else
     ac_cv_sizeof_unsigned_int=0
   fi
fi

fi
{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_cv_sizeof_unsigned_int" >&5
printf "%s\n" "$ac_cv_sizeof_unsigned_int" >&6; }



printf "%s\n" "#define SIZEOF_UNSIGNED_INT $ac_cv_sizeof_unsigned_int" >>confdefs.h


ac_fn_c_check_type "$LINENO" "unsigned int" "ac_cv_type_unsigned_int" "$ac_includes_default"
if test "x$ac_cv_type_unsigned_int" = xyes
then :

fi
{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking alignment of unsigned int" >&5
printf %s "checking alignment of unsigned int... " >&6; }
if test ${fp_cv_alignment_unsigned_int+y}
then :
  printf %s "(cached) " >&6
else $as_nop
  if test "$ac_cv_type_unsigned_int" = yes; then
  if ac_fn_c_compute_int "$LINENO" "offsetof(struct { char c; unsigned int ty; },ty)" "fp_cv_alignment_unsigned_int"        "$ac_includes_default"
then :

else $as_nop
  as_fn_error 77 "cannot compute alignment (unsigned int)
See \`config.log' for more details." "$LINENO" 5
fi

else
  fp_cv_alignment_unsigned_int=0
fi
fi
{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $fp_cv_alignment_unsigned_int" >&5
printf "%s\n" "$fp_cv_alignment_unsigned_int" >&6; }
printf "%s\n" "#define ALIGNMENT_UNSIGNED_INT $fp_cv_alignment_unsigned_int" >>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 unsigned long" >&5
printf %s "checking size of unsigned long... " >&6; }
if test ${ac_cv_sizeof_unsigned_long+y}
then :
  printf %s "(cached) " >&6
else $as_nop
  if ac_fn_c_compute_int "$LINENO" "(long int) (sizeof (unsigned long))" "ac_cv_sizeof_unsigned_long"        "$ac_includes_default"
then :

else $as_nop
  if test "$ac_cv_type_unsigned_long" = 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 (unsigned long)
See \`config.log' for more details" "$LINENO" 5; }
   else
     ac_cv_sizeof_unsigned_long=0
   fi
fi

fi
{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_cv_sizeof_unsigned_long" >&5
printf "%s\n" "$ac_cv_sizeof_unsigned_long" >&6; }



printf "%s\n" "#define SIZEOF_UNSIGNED_LONG $ac_cv_sizeof_unsigned_long" >>confdefs.h


ac_fn_c_check_type "$LINENO" "unsigned long" "ac_cv_type_unsigned_long" "$ac_includes_default"
if test "x$ac_cv_type_unsigned_long" = xyes
then :

fi
{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking alignment of unsigned long" >&5
printf %s "checking alignment of unsigned long... " >&6; }
if test ${fp_cv_alignment_unsigned_long+y}
then :
  printf %s "(cached) " >&6
else $as_nop
  if test "$ac_cv_type_unsigned_long" = yes; then
  if ac_fn_c_compute_int "$LINENO" "offsetof(struct { char c; unsigned long ty; },ty)" "fp_cv_alignment_unsigned_long"        "$ac_includes_default"
then :

else $as_nop
  as_fn_error 77 "cannot compute alignment (unsigned long)
See \`config.log' for more details." "$LINENO" 5
fi

else
  fp_cv_alignment_unsigned_long=0
fi
fi
{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $fp_cv_alignment_unsigned_long" >&5
printf "%s\n" "$fp_cv_alignment_unsigned_long" >&6; }
printf "%s\n" "#define ALIGNMENT_UNSIGNED_LONG $fp_cv_alignment_unsigned_long" >>confdefs.h


if test "$ac_cv_type_long_long" = yes; then
# 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 unsigned long long" >&5
printf %s "checking size of unsigned long long... " >&6; }
if test ${ac_cv_sizeof_unsigned_long_long+y}
then :
  printf %s "(cached) " >&6
else $as_nop
  if ac_fn_c_compute_int "$LINENO" "(long int) (sizeof (unsigned long long))" "ac_cv_sizeof_unsigned_long_long"        "$ac_includes_default"
then :

else $as_nop
  if test "$ac_cv_type_unsigned_long_long" = 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 (unsigned long long)
See \`config.log' for more details" "$LINENO" 5; }
   else
     ac_cv_sizeof_unsigned_long_long=0
   fi
fi

fi
{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_cv_sizeof_unsigned_long_long" >&5
printf "%s\n" "$ac_cv_sizeof_unsigned_long_long" >&6; }



printf "%s\n" "#define SIZEOF_UNSIGNED_LONG_LONG $ac_cv_sizeof_unsigned_long_long" >>confdefs.h


ac_fn_c_check_type "$LINENO" "unsigned long long" "ac_cv_type_unsigned_long_long" "$ac_includes_default"
if test "x$ac_cv_type_unsigned_long_long" = xyes
then :

fi
{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking alignment of unsigned long long" >&5
printf %s "checking alignment of unsigned long long... " >&6; }
if test ${fp_cv_alignment_unsigned_long_long+y}
then :
  printf %s "(cached) " >&6
else $as_nop
  if test "$ac_cv_type_unsigned_long_long" = yes; then
  if ac_fn_c_compute_int "$LINENO" "offsetof(struct { char c; unsigned long long ty; },ty)" "fp_cv_alignment_unsigned_long_long"        "$ac_includes_default"
then :

else $as_nop
  as_fn_error 77 "cannot compute alignment (unsigned long long)
See \`config.log' for more details." "$LINENO" 5
fi

else
  fp_cv_alignment_unsigned_long_long=0
fi
fi
{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $fp_cv_alignment_unsigned_long_long" >&5
printf "%s\n" "$fp_cv_alignment_unsigned_long_long" >&6; }
printf "%s\n" "#define ALIGNMENT_UNSIGNED_LONG_LONG $fp_cv_alignment_unsigned_long_long" >>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 unsigned short" >&5
printf %s "checking size of unsigned short... " >&6; }
if test ${ac_cv_sizeof_unsigned_short+y}
then :
  printf %s "(cached) " >&6
else $as_nop
  if ac_fn_c_compute_int "$LINENO" "(long int) (sizeof (unsigned short))" "ac_cv_sizeof_unsigned_short"        "$ac_includes_default"
then :

else $as_nop
  if test "$ac_cv_type_unsigned_short" = 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 (unsigned short)
See \`config.log' for more details" "$LINENO" 5; }
   else
     ac_cv_sizeof_unsigned_short=0
   fi
fi

fi
{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_cv_sizeof_unsigned_short" >&5
printf "%s\n" "$ac_cv_sizeof_unsigned_short" >&6; }



printf "%s\n" "#define SIZEOF_UNSIGNED_SHORT $ac_cv_sizeof_unsigned_short" >>confdefs.h


ac_fn_c_check_type "$LINENO" "unsigned short" "ac_cv_type_unsigned_short" "$ac_includes_default"
if test "x$ac_cv_type_unsigned_short" = xyes
then :

fi
{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking alignment of unsigned short" >&5
printf %s "checking alignment of unsigned short... " >&6; }
if test ${fp_cv_alignment_unsigned_short+y}
then :
  printf %s "(cached) " >&6
else $as_nop
  if test "$ac_cv_type_unsigned_short" = yes; then
  if ac_fn_c_compute_int "$LINENO" "offsetof(struct { char c; unsigned short ty; },ty)" "fp_cv_alignment_unsigned_short"        "$ac_includes_default"
then :

else $as_nop
  as_fn_error 77 "cannot compute alignment (unsigned short)
See \`config.log' for more details." "$LINENO" 5
fi

else
  fp_cv_alignment_unsigned_short=0
fi
fi
{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $fp_cv_alignment_unsigned_short" >&5
printf "%s\n" "$fp_cv_alignment_unsigned_short" >&6; }
printf "%s\n" "#define ALIGNMENT_UNSIGNED_SHORT $fp_cv_alignment_unsigned_short" >>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 void *" >&5
printf %s "checking size of void *... " >&6; }
if test ${ac_cv_sizeof_void_p+y}
then :
  printf %s "(cached) " >&6
else $as_nop
  if ac_fn_c_compute_int "$LINENO" "(long int) (sizeof (void *))" "ac_cv_sizeof_void_p"        "$ac_includes_default"
then :

else $as_nop
  if test "$ac_cv_type_void_p" = 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 (void *)
See \`config.log' for more details" "$LINENO" 5; }
   else
     ac_cv_sizeof_void_p=0
   fi
fi

fi
{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_cv_sizeof_void_p" >&5
printf "%s\n" "$ac_cv_sizeof_void_p" >&6; }



printf "%s\n" "#define SIZEOF_VOID_P $ac_cv_sizeof_void_p" >>confdefs.h


as_ac_Type=`printf "%s\n" "ac_cv_type_void *" | $as_tr_sh`
ac_fn_c_check_type "$LINENO" "void *" "$as_ac_Type" "$ac_includes_default"
if eval test \"x\$"$as_ac_Type"\" = x"yes"
then :

fi
{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking alignment of void *" >&5
printf %s "checking alignment of void *... " >&6; }
if test ${fp_cv_alignment_void_p+y}
then :
  printf %s "(cached) " >&6
else $as_nop
  if test "$ac_cv_type_void_p" = yes; then
  if ac_fn_c_compute_int "$LINENO" "offsetof(struct { char c; void * ty; },ty)" "fp_cv_alignment_void_p"        "$ac_includes_default"
then :

else $as_nop
  as_fn_error 77 "cannot compute alignment (void *)
See \`config.log' for more details." "$LINENO" 5
fi

else
  fp_cv_alignment_void_p=0
fi
fi
{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $fp_cv_alignment_void_p" >&5
printf "%s\n" "$fp_cv_alignment_void_p" >&6; }
printf "%s\n" "#define ALIGNMENT_VOID_P $fp_cv_alignment_void_p" >>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 int8_t" >&5
printf %s "checking size of int8_t... " >&6; }
if test ${ac_cv_sizeof_int8_t+y}
then :
  printf %s "(cached) " >&6
else $as_nop
  if ac_fn_c_compute_int "$LINENO" "(long int) (sizeof (int8_t))" "ac_cv_sizeof_int8_t"        "$ac_includes_default"
then :

else $as_nop
  if test "$ac_cv_type_int8_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 (int8_t)
See \`config.log' for more details" "$LINENO" 5; }
   else
     ac_cv_sizeof_int8_t=0
   fi
fi

fi
{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_cv_sizeof_int8_t" >&5
printf "%s\n" "$ac_cv_sizeof_int8_t" >&6; }



printf "%s\n" "#define SIZEOF_INT8_T $ac_cv_sizeof_int8_t" >>confdefs.h


ac_fn_c_check_type "$LINENO" "int8_t" "ac_cv_type_int8_t" "$ac_includes_default"
if test "x$ac_cv_type_int8_t" = xyes
then :

fi
{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking alignment of int8_t" >&5
printf %s "checking alignment of int8_t... " >&6; }
if test ${fp_cv_alignment_int8_t+y}
then :
  printf %s "(cached) " >&6
else $as_nop
  if test "$ac_cv_type_int8_t" = yes; then
  if ac_fn_c_compute_int "$LINENO" "offsetof(struct { char c; int8_t ty; },ty)" "fp_cv_alignment_int8_t"        "$ac_includes_default"
then :

else $as_nop
  as_fn_error 77 "cannot compute alignment (int8_t)
See \`config.log' for more details." "$LINENO" 5
fi

else
  fp_cv_alignment_int8_t=0
fi
fi
{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $fp_cv_alignment_int8_t" >&5
printf "%s\n" "$fp_cv_alignment_int8_t" >&6; }
printf "%s\n" "#define ALIGNMENT_INT8_T $fp_cv_alignment_int8_t" >>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 uint8_t" >&5
printf %s "checking size of uint8_t... " >&6; }
if test ${ac_cv_sizeof_uint8_t+y}
then :
  printf %s "(cached) " >&6
else $as_nop
  if ac_fn_c_compute_int "$LINENO" "(long int) (sizeof (uint8_t))" "ac_cv_sizeof_uint8_t"        "$ac_includes_default"
then :

else $as_nop
  if test "$ac_cv_type_uint8_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 (uint8_t)
See \`config.log' for more details" "$LINENO" 5; }
   else
     ac_cv_sizeof_uint8_t=0
   fi
fi

fi
{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_cv_sizeof_uint8_t" >&5
printf "%s\n" "$ac_cv_sizeof_uint8_t" >&6; }



printf "%s\n" "#define SIZEOF_UINT8_T $ac_cv_sizeof_uint8_t" >>confdefs.h


ac_fn_c_check_type "$LINENO" "uint8_t" "ac_cv_type_uint8_t" "$ac_includes_default"
if test "x$ac_cv_type_uint8_t" = xyes
then :

fi
{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking alignment of uint8_t" >&5
printf %s "checking alignment of uint8_t... " >&6; }
if test ${fp_cv_alignment_uint8_t+y}
then :
  printf %s "(cached) " >&6
else $as_nop
  if test "$ac_cv_type_uint8_t" = yes; then
  if ac_fn_c_compute_int "$LINENO" "offsetof(struct { char c; uint8_t ty; },ty)" "fp_cv_alignment_uint8_t"        "$ac_includes_default"
then :

else $as_nop
  as_fn_error 77 "cannot compute alignment (uint8_t)
See \`config.log' for more details." "$LINENO" 5
fi

else
  fp_cv_alignment_uint8_t=0
fi
fi
{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $fp_cv_alignment_uint8_t" >&5
printf "%s\n" "$fp_cv_alignment_uint8_t" >&6; }
printf "%s\n" "#define ALIGNMENT_UINT8_T $fp_cv_alignment_uint8_t" >>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 int16_t" >&5
printf %s "checking size of int16_t... " >&6; }
if test ${ac_cv_sizeof_int16_t+y}
then :
  printf %s "(cached) " >&6
else $as_nop
  if ac_fn_c_compute_int "$LINENO" "(long int) (sizeof (int16_t))" "ac_cv_sizeof_int16_t"        "$ac_includes_default"
then :

else $as_nop
  if test "$ac_cv_type_int16_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 (int16_t)
See \`config.log' for more details" "$LINENO" 5; }
   else
     ac_cv_sizeof_int16_t=0
   fi
fi

fi
{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_cv_sizeof_int16_t" >&5
printf "%s\n" "$ac_cv_sizeof_int16_t" >&6; }



printf "%s\n" "#define SIZEOF_INT16_T $ac_cv_sizeof_int16_t" >>confdefs.h


ac_fn_c_check_type "$LINENO" "int16_t" "ac_cv_type_int16_t" "$ac_includes_default"
if test "x$ac_cv_type_int16_t" = xyes
then :

fi
{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking alignment of int16_t" >&5
printf %s "checking alignment of int16_t... " >&6; }
if test ${fp_cv_alignment_int16_t+y}
then :
  printf %s "(cached) " >&6
else $as_nop
  if test "$ac_cv_type_int16_t" = yes; then
  if ac_fn_c_compute_int "$LINENO" "offsetof(struct { char c; int16_t ty; },ty)" "fp_cv_alignment_int16_t"        "$ac_includes_default"
then :

else $as_nop
  as_fn_error 77 "cannot compute alignment (int16_t)
See \`config.log' for more details." "$LINENO" 5
fi

else
  fp_cv_alignment_int16_t=0
fi
fi
{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $fp_cv_alignment_int16_t" >&5
printf "%s\n" "$fp_cv_alignment_int16_t" >&6; }
printf "%s\n" "#define ALIGNMENT_INT16_T $fp_cv_alignment_int16_t" >>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 uint16_t" >&5
printf %s "checking size of uint16_t... " >&6; }
if test ${ac_cv_sizeof_uint16_t+y}
then :
  printf %s "(cached) " >&6
else $as_nop
  if ac_fn_c_compute_int "$LINENO" "(long int) (sizeof (uint16_t))" "ac_cv_sizeof_uint16_t"        "$ac_includes_default"
then :

else $as_nop
  if test "$ac_cv_type_uint16_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 (uint16_t)
See \`config.log' for more details" "$LINENO" 5; }
   else
     ac_cv_sizeof_uint16_t=0
   fi
fi

fi
{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_cv_sizeof_uint16_t" >&5
printf "%s\n" "$ac_cv_sizeof_uint16_t" >&6; }



printf "%s\n" "#define SIZEOF_UINT16_T $ac_cv_sizeof_uint16_t" >>confdefs.h


ac_fn_c_check_type "$LINENO" "uint16_t" "ac_cv_type_uint16_t" "$ac_includes_default"
if test "x$ac_cv_type_uint16_t" = xyes
then :

fi
{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking alignment of uint16_t" >&5
printf %s "checking alignment of uint16_t... " >&6; }
if test ${fp_cv_alignment_uint16_t+y}
then :
  printf %s "(cached) " >&6
else $as_nop
  if test "$ac_cv_type_uint16_t" = yes; then
  if ac_fn_c_compute_int "$LINENO" "offsetof(struct { char c; uint16_t ty; },ty)" "fp_cv_alignment_uint16_t"        "$ac_includes_default"
then :

else $as_nop
  as_fn_error 77 "cannot compute alignment (uint16_t)
See \`config.log' for more details." "$LINENO" 5
fi

else
  fp_cv_alignment_uint16_t=0
fi
fi
{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $fp_cv_alignment_uint16_t" >&5
printf "%s\n" "$fp_cv_alignment_uint16_t" >&6; }
printf "%s\n" "#define ALIGNMENT_UINT16_T $fp_cv_alignment_uint16_t" >>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 int32_t" >&5
printf %s "checking size of int32_t... " >&6; }
if test ${ac_cv_sizeof_int32_t+y}
then :
  printf %s "(cached) " >&6
else $as_nop
  if ac_fn_c_compute_int "$LINENO" "(long int) (sizeof (int32_t))" "ac_cv_sizeof_int32_t"        "$ac_includes_default"
then :

else $as_nop
  if test "$ac_cv_type_int32_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 (int32_t)
See \`config.log' for more details" "$LINENO" 5; }
   else
     ac_cv_sizeof_int32_t=0
   fi
fi

fi
{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_cv_sizeof_int32_t" >&5
printf "%s\n" "$ac_cv_sizeof_int32_t" >&6; }



printf "%s\n" "#define SIZEOF_INT32_T $ac_cv_sizeof_int32_t" >>confdefs.h


ac_fn_c_check_type "$LINENO" "int32_t" "ac_cv_type_int32_t" "$ac_includes_default"
if test "x$ac_cv_type_int32_t" = xyes
then :

fi
{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking alignment of int32_t" >&5
printf %s "checking alignment of int32_t... " >&6; }
if test ${fp_cv_alignment_int32_t+y}
then :
  printf %s "(cached) " >&6
else $as_nop
  if test "$ac_cv_type_int32_t" = yes; then
  if ac_fn_c_compute_int "$LINENO" "offsetof(struct { char c; int32_t ty; },ty)" "fp_cv_alignment_int32_t"        "$ac_includes_default"
then :

else $as_nop
  as_fn_error 77 "cannot compute alignment (int32_t)
See \`config.log' for more details." "$LINENO" 5
fi

else
  fp_cv_alignment_int32_t=0
fi
fi
{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $fp_cv_alignment_int32_t" >&5
printf "%s\n" "$fp_cv_alignment_int32_t" >&6; }
printf "%s\n" "#define ALIGNMENT_INT32_T $fp_cv_alignment_int32_t" >>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 uint32_t" >&5
printf %s "checking size of uint32_t... " >&6; }
if test ${ac_cv_sizeof_uint32_t+y}
then :
  printf %s "(cached) " >&6
else $as_nop
  if ac_fn_c_compute_int "$LINENO" "(long int) (sizeof (uint32_t))" "ac_cv_sizeof_uint32_t"        "$ac_includes_default"
then :

else $as_nop
  if test "$ac_cv_type_uint32_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 (uint32_t)
See \`config.log' for more details" "$LINENO" 5; }
   else
     ac_cv_sizeof_uint32_t=0
   fi
fi

fi
{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_cv_sizeof_uint32_t" >&5
printf "%s\n" "$ac_cv_sizeof_uint32_t" >&6; }



printf "%s\n" "#define SIZEOF_UINT32_T $ac_cv_sizeof_uint32_t" >>confdefs.h


ac_fn_c_check_type "$LINENO" "uint32_t" "ac_cv_type_uint32_t" "$ac_includes_default"
if test "x$ac_cv_type_uint32_t" = xyes
then :

fi
{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking alignment of uint32_t" >&5
printf %s "checking alignment of uint32_t... " >&6; }
if test ${fp_cv_alignment_uint32_t+y}
then :
  printf %s "(cached) " >&6
else $as_nop
  if test "$ac_cv_type_uint32_t" = yes; then
  if ac_fn_c_compute_int "$LINENO" "offsetof(struct { char c; uint32_t ty; },ty)" "fp_cv_alignment_uint32_t"        "$ac_includes_default"
then :

else $as_nop
  as_fn_error 77 "cannot compute alignment (uint32_t)
See \`config.log' for more details." "$LINENO" 5
fi

else
  fp_cv_alignment_uint32_t=0
fi
fi
{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $fp_cv_alignment_uint32_t" >&5
printf "%s\n" "$fp_cv_alignment_uint32_t" >&6; }
printf "%s\n" "#define ALIGNMENT_UINT32_T $fp_cv_alignment_uint32_t" >>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 int64_t" >&5
printf %s "checking size of int64_t... " >&6; }
if test ${ac_cv_sizeof_int64_t+y}
then :
  printf %s "(cached) " >&6
else $as_nop
  if ac_fn_c_compute_int "$LINENO" "(long int) (sizeof (int64_t))" "ac_cv_sizeof_int64_t"        "$ac_includes_default"
then :

else $as_nop
  if test "$ac_cv_type_int64_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 (int64_t)
See \`config.log' for more details" "$LINENO" 5; }
   else
     ac_cv_sizeof_int64_t=0
   fi
fi

fi
{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_cv_sizeof_int64_t" >&5
printf "%s\n" "$ac_cv_sizeof_int64_t" >&6; }



printf "%s\n" "#define SIZEOF_INT64_T $ac_cv_sizeof_int64_t" >>confdefs.h


ac_fn_c_check_type "$LINENO" "int64_t" "ac_cv_type_int64_t" "$ac_includes_default"
if test "x$ac_cv_type_int64_t" = xyes
then :

fi
{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking alignment of int64_t" >&5
printf %s "checking alignment of int64_t... " >&6; }
if test ${fp_cv_alignment_int64_t+y}
then :
  printf %s "(cached) " >&6
else $as_nop
  if test "$ac_cv_type_int64_t" = yes; then
  if ac_fn_c_compute_int "$LINENO" "offsetof(struct { char c; int64_t ty; },ty)" "fp_cv_alignment_int64_t"        "$ac_includes_default"
then :

else $as_nop
  as_fn_error 77 "cannot compute alignment (int64_t)
See \`config.log' for more details." "$LINENO" 5
fi

else
  fp_cv_alignment_int64_t=0
fi
fi
{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $fp_cv_alignment_int64_t" >&5
printf "%s\n" "$fp_cv_alignment_int64_t" >&6; }
printf "%s\n" "#define ALIGNMENT_INT64_T $fp_cv_alignment_int64_t" >>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 uint64_t" >&5
printf %s "checking size of uint64_t... " >&6; }
if test ${ac_cv_sizeof_uint64_t+y}
then :
  printf %s "(cached) " >&6
else $as_nop
  if ac_fn_c_compute_int "$LINENO" "(long int) (sizeof (uint64_t))" "ac_cv_sizeof_uint64_t"        "$ac_includes_default"
then :

else $as_nop
  if test "$ac_cv_type_uint64_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 (uint64_t)
See \`config.log' for more details" "$LINENO" 5; }
   else
     ac_cv_sizeof_uint64_t=0
   fi
fi

fi
{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_cv_sizeof_uint64_t" >&5
printf "%s\n" "$ac_cv_sizeof_uint64_t" >&6; }



printf "%s\n" "#define SIZEOF_UINT64_T $ac_cv_sizeof_uint64_t" >>confdefs.h


ac_fn_c_check_type "$LINENO" "uint64_t" "ac_cv_type_uint64_t" "$ac_includes_default"
if test "x$ac_cv_type_uint64_t" = xyes
then :

fi
{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking alignment of uint64_t" >&5
printf %s "checking alignment of uint64_t... " >&6; }
if test ${fp_cv_alignment_uint64_t+y}
then :
  printf %s "(cached) " >&6
else $as_nop
  if test "$ac_cv_type_uint64_t" = yes; then
  if ac_fn_c_compute_int "$LINENO" "offsetof(struct { char c; uint64_t ty; },ty)" "fp_cv_alignment_uint64_t"        "$ac_includes_default"
then :

else $as_nop
  as_fn_error 77 "cannot compute alignment (uint64_t)
See \`config.log' for more details." "$LINENO" 5
fi

else
  fp_cv_alignment_uint64_t=0
fi
fi
{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $fp_cv_alignment_uint64_t" >&5
printf "%s\n" "$fp_cv_alignment_uint64_t" >&6; }
printf "%s\n" "#define ALIGNMENT_UINT64_T $fp_cv_alignment_uint64_t" >>confdefs.h




TargetWordSize=$ac_cv_sizeof_void_p
if test "x$TargetWordSize" = x8; then
  Cabal64bit=True

else
  Cabal64bit=False

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 $as_nop
  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 $as_nop
  ac_cv_c_bigendian=no
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 $as_nop
  ac_cv_c_bigendian=no
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];
		}
		extern int foo;

int
main (void)
{
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.beam conftest.$ac_ext
else $as_nop
  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 $as_nop
  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
{ 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)
     TargetWordBigEndian=YES;; #(
   no)
     TargetWordBigEndian=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 for WinExec" >&5
printf %s "checking for WinExec... " >&6; }
if test ${fp_cv_func_WinExec+y}
then :
  printf %s "(cached) " >&6
else $as_nop
  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
/* end confdefs.h.  */
#include <windows.h>
int
main (void)
{
WinExec("",0)
  ;
  return 0;
}
_ACEOF
if ac_fn_c_try_link "$LINENO"
then :
  fp_cv_func_WinExec=yes
else $as_nop
  fp_cv_func_WinExec=no
fi
rm -f core conftest.err conftest.$ac_objext conftest.beam \
    conftest$ac_exeext conftest.$ac_ext
fi
{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $fp_cv_func_WinExec" >&5
printf "%s\n" "$fp_cv_func_WinExec" >&6; }
if test $fp_cv_func_WinExec = yes
then :

printf "%s\n" "#define HAVE_WINEXEC 1" >>confdefs.h

fi

{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for GetModuleFileName" >&5
printf %s "checking for GetModuleFileName... " >&6; }
if test ${fp_cv_func_GetModuleFileName+y}
then :
  printf %s "(cached) " >&6
else $as_nop
  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
/* end confdefs.h.  */
#include <windows.h>
int
main (void)
{
GetModuleFileName((HMODULE)0,(LPTSTR)0,0)
  ;
  return 0;
}
_ACEOF
if ac_fn_c_try_link "$LINENO"
then :
  fp_cv_func_GetModuleFileName=yes
else $as_nop
  fp_cv_func_GetModuleFileName=no
fi
rm -f core conftest.err conftest.$ac_objext conftest.beam \
    conftest$ac_exeext conftest.$ac_ext
fi
{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $fp_cv_func_GetModuleFileName" >&5
printf "%s\n" "$fp_cv_func_GetModuleFileName" >&6; }
if test $fp_cv_func_GetModuleFileName = yes
then :

printf "%s\n" "#define HAVE_GETMODULEFILENAME 1" >>confdefs.h

fi

ac_fn_c_check_func "$LINENO" "getclock" "ac_cv_func_getclock"
if test "x$ac_cv_func_getclock" = xyes
then :
  printf "%s\n" "#define HAVE_GETCLOCK 1" >>confdefs.h

fi
ac_fn_c_check_func "$LINENO" "getrusage" "ac_cv_func_getrusage"
if test "x$ac_cv_func_getrusage" = xyes
then :
  printf "%s\n" "#define HAVE_GETRUSAGE 1" >>confdefs.h

fi
ac_fn_c_check_func "$LINENO" "gettimeofday" "ac_cv_func_gettimeofday"
if test "x$ac_cv_func_gettimeofday" = xyes
then :
  printf "%s\n" "#define HAVE_GETTIMEOFDAY 1" >>confdefs.h

fi
ac_fn_c_check_func "$LINENO" "setitimer" "ac_cv_func_setitimer"
if test "x$ac_cv_func_setitimer" = xyes
then :
  printf "%s\n" "#define HAVE_SETITIMER 1" >>confdefs.h

fi
ac_fn_c_check_func "$LINENO" "siginterrupt" "ac_cv_func_siginterrupt"
if test "x$ac_cv_func_siginterrupt" = xyes
then :
  printf "%s\n" "#define HAVE_SIGINTERRUPT 1" >>confdefs.h

fi
ac_fn_c_check_func "$LINENO" "sysconf" "ac_cv_func_sysconf"
if test "x$ac_cv_func_sysconf" = xyes
then :
  printf "%s\n" "#define HAVE_SYSCONF 1" >>confdefs.h

fi
ac_fn_c_check_func "$LINENO" "times" "ac_cv_func_times"
if test "x$ac_cv_func_times" = xyes
then :
  printf "%s\n" "#define HAVE_TIMES 1" >>confdefs.h

fi
ac_fn_c_check_func "$LINENO" "ctime_r" "ac_cv_func_ctime_r"
if test "x$ac_cv_func_ctime_r" = xyes
then :
  printf "%s\n" "#define HAVE_CTIME_R 1" >>confdefs.h

fi
ac_fn_c_check_func "$LINENO" "sched_setaffinity" "ac_cv_func_sched_setaffinity"
if test "x$ac_cv_func_sched_setaffinity" = xyes
then :
  printf "%s\n" "#define HAVE_SCHED_SETAFFINITY 1" >>confdefs.h

fi
ac_fn_c_check_func "$LINENO" "sched_getaffinity" "ac_cv_func_sched_getaffinity"
if test "x$ac_cv_func_sched_getaffinity" = xyes
then :
  printf "%s\n" "#define HAVE_SCHED_GETAFFINITY 1" >>confdefs.h

fi
ac_fn_c_check_func "$LINENO" "setlocale" "ac_cv_func_setlocale"
if test "x$ac_cv_func_setlocale" = xyes
then :
  printf "%s\n" "#define HAVE_SETLOCALE 1" >>confdefs.h

fi


ac_fn_check_decl "$LINENO" "ctime_r" "ac_cv_have_decl_ctime_r" "#define _POSIX_SOURCE 1
#define _POSIX_C_SOURCE 199506L
#include <time.h>
" "$ac_c_undeclared_builtin_options" "CFLAGS"
if test "x$ac_cv_have_decl_ctime_r" = xyes
then :
  ac_have_decl=1
else $as_nop
  ac_have_decl=0
fi
printf "%s\n" "#define HAVE_DECL_CTIME_R $ac_have_decl" >>confdefs.h


{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for closedir in -lmingwex" >&5
printf %s "checking for closedir in -lmingwex... " >&6; }
if test ${ac_cv_lib_mingwex_closedir+y}
then :
  printf %s "(cached) " >&6
else $as_nop
  ac_check_lib_save_LIBS=$LIBS
LIBS="-lmingwex  $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.  */
char closedir ();
int
main (void)
{
return closedir ();
  ;
  return 0;
}
_ACEOF
if ac_fn_c_try_link "$LINENO"
then :
  ac_cv_lib_mingwex_closedir=yes
else $as_nop
  ac_cv_lib_mingwex_closedir=no
fi
rm -f core conftest.err conftest.$ac_objext conftest.beam \
    conftest$ac_exeext conftest.$ac_ext
LIBS=$ac_check_lib_save_LIBS
fi
{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_mingwex_closedir" >&5
printf "%s\n" "$ac_cv_lib_mingwex_closedir" >&6; }
if test "x$ac_cv_lib_mingwex_closedir" = xyes
then :
  HaveLibMingwEx=YES
 CabalMingwex=True

else $as_nop
  HaveLibMingwEx=NO
 CabalMingwex=False

fi


if test $HaveLibMingwEx = YES ; then

printf "%s\n" "#define HAVE_MINGWEX 1" >>confdefs.h

fi

{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for atan in -lm" >&5
printf %s "checking for atan in -lm... " >&6; }
if test ${ac_cv_lib_m_atan+y}
then :
  printf %s "(cached) " >&6
else $as_nop
  ac_check_lib_save_LIBS=$LIBS
LIBS="-lm  $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.  */
char atan ();
int
main (void)
{
return atan ();
  ;
  return 0;
}
_ACEOF
if ac_fn_c_try_link "$LINENO"
then :
  ac_cv_lib_m_atan=yes
else $as_nop
  ac_cv_lib_m_atan=no
fi
rm -f core conftest.err conftest.$ac_objext conftest.beam \
    conftest$ac_exeext conftest.$ac_ext
LIBS=$ac_check_lib_save_LIBS
fi
{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_m_atan" >&5
printf "%s\n" "$ac_cv_lib_m_atan" >&6; }
if test "x$ac_cv_lib_m_atan" = xyes
then :
  HaveLibM=YES
else $as_nop
  HaveLibM=NO
fi

if test $HaveLibM = YES
then

printf "%s\n" "#define HAVE_LIBM 1" >>confdefs.h

  CabalHaveLibm=True

else
  CabalHaveLibm=False

fi


    CabalHaveLibbfd=False

    # Check whether --enable-bfd-debug was given.
if test ${enable_bfd_debug+y}
then :
  enableval=$enable_bfd_debug;
            # don't pollute general LIBS environment
            save_LIBS="$LIBS"
            ac_fn_c_check_header_compile "$LINENO" "bfd.h" "ac_cv_header_bfd_h" "$ac_includes_default"
if test "x$ac_cv_header_bfd_h" = xyes
then :
  printf "%s\n" "#define HAVE_BFD_H 1" >>confdefs.h

fi

                                    { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for xmalloc in -liberty" >&5
printf %s "checking for xmalloc in -liberty... " >&6; }
if test ${ac_cv_lib_iberty_xmalloc+y}
then :
  printf %s "(cached) " >&6
else $as_nop
  ac_check_lib_save_LIBS=$LIBS
LIBS="-liberty  $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.  */
char xmalloc ();
int
main (void)
{
return xmalloc ();
  ;
  return 0;
}
_ACEOF
if ac_fn_c_try_link "$LINENO"
then :
  ac_cv_lib_iberty_xmalloc=yes
else $as_nop
  ac_cv_lib_iberty_xmalloc=no
fi
rm -f core conftest.err conftest.$ac_objext conftest.beam \
    conftest$ac_exeext conftest.$ac_ext
LIBS=$ac_check_lib_save_LIBS
fi
{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_iberty_xmalloc" >&5
printf "%s\n" "$ac_cv_lib_iberty_xmalloc" >&6; }
if test "x$ac_cv_lib_iberty_xmalloc" = xyes
then :
  printf "%s\n" "#define HAVE_LIBIBERTY 1" >>confdefs.h

  LIBS="-liberty $LIBS"

fi

                        { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for bfd_init in -lbfd" >&5
printf %s "checking for bfd_init in -lbfd... " >&6; }
if test ${ac_cv_lib_bfd_bfd_init+y}
then :
  printf %s "(cached) " >&6
else $as_nop
  ac_check_lib_save_LIBS=$LIBS
LIBS="-lbfd  $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.  */
char bfd_init ();
int
main (void)
{
return bfd_init ();
  ;
  return 0;
}
_ACEOF
if ac_fn_c_try_link "$LINENO"
then :
  ac_cv_lib_bfd_bfd_init=yes
else $as_nop
  ac_cv_lib_bfd_bfd_init=no
fi
rm -f core conftest.err conftest.$ac_objext conftest.beam \
    conftest$ac_exeext conftest.$ac_ext
LIBS=$ac_check_lib_save_LIBS
fi
{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_bfd_bfd_init" >&5
printf "%s\n" "$ac_cv_lib_bfd_bfd_init" >&6; }
if test "x$ac_cv_lib_bfd_bfd_init" = xyes
then :
  printf "%s\n" "#define HAVE_LIBBFD 1" >>confdefs.h

  LIBS="-lbfd $LIBS"

fi


            cat confdefs.h - <<_ACEOF >conftest.$ac_ext
/* end confdefs.h.  */
#include <bfd.h>
int
main (void)
{

                                /* mimic our rts/Printer.c */
                                bfd* abfd;
                                const char * name;
                                char **matching;

                                name = "some.executable";
                                bfd_init();
                                abfd = bfd_openr(name, "default");
                                bfd_check_format_matches (abfd, bfd_object, &matching);
                                {
                                    long storage_needed;
                                    storage_needed = bfd_get_symtab_upper_bound (abfd);
                                }
                                {
                                    asymbol **symbol_table;
                                    long number_of_symbols;
                                    symbol_info info;

                                    number_of_symbols = bfd_canonicalize_symtab (abfd, symbol_table);
                                    bfd_get_symbol_info(abfd,symbol_table[0],&info);
                                }

  ;
  return 0;
}
_ACEOF
if ac_fn_c_try_link "$LINENO"
then :
  CabalHaveLibbfd=True

else $as_nop
                          as_fn_error $? "can't use 'bfd' library" "$LINENO" 5
fi
rm -f core conftest.err conftest.$ac_objext conftest.beam \
    conftest$ac_exeext conftest.$ac_ext
            LIBS="$save_LIBS"


fi




# system libffi


# Check whether --with-system-libffi was given.
if test ${with_system_libffi+y}
then :
  withval=$with_system_libffi;
fi


if test "x$with_system_libffi" = "xyes"
then :
  UseSystemLibFFI="YES"; CabalUseSystemLibFFI="True"
else $as_nop
  UseSystemLibFFI="NO"; CabalUseSystemLibFFI="False"

fi





# Check whether --with-ffi-includes was given.
if test ${with_ffi_includes+y}
then :
  withval=$with_ffi_includes;
 if test "x$UseSystemLibFFI" != "xYES"; then
    { printf "%s\n" "$as_me:${as_lineno-$LINENO}: WARNING: --with-ffi-includes will be ignored, --with-system-libffi not set" >&5
printf "%s\n" "$as_me: WARNING: --with-ffi-includes will be ignored, --with-system-libffi not set" >&2;}
 else
    FFIIncludeDir="$withval"
    LIBFFI_CFLAGS="-I$withval"
 fi

fi





# Check whether --with-ffi-libraries was given.
if test ${with_ffi_libraries+y}
then :
  withval=$with_ffi_libraries;
 if test "x$UseSystemLibFFI" != "xYES"; then
    { printf "%s\n" "$as_me:${as_lineno-$LINENO}: WARNING: --with-ffi-libraries will be ignored, --with-system-libffi not set" >&5
printf "%s\n" "$as_me: WARNING: --with-ffi-libraries will be ignored, --with-system-libffi not set" >&2;}
 else
    FFILibDir="$withval" LIBFFI_LDFLAGS="-L$withval"
 fi

fi




if test "$UseSystemLibFFI" = "YES"
then :

 CFLAGS2="$CFLAGS"
 CFLAGS="$LIBFFI_CFLAGS $CFLAGS"
 LDFLAGS2="$LDFLAGS"
 LDFLAGS="$LIBFFI_LDFLAGS $LDFLAGS"
 if test "$HostOS" = "openbsd";
 then
   # OpenBSD's libffi is not directly linked to the libpthread but
   # still requires pthread functionality. This means that any client
   # binary which links with libffi also needs to link with
   # libpthread. If it does not, then linking fails with unresolved
   # symbols.
   LDFLAGS="$LDFLAGS -lpthread"
 fi
 { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for ffi_call in -lffi" >&5
printf %s "checking for ffi_call in -lffi... " >&6; }
if test ${ac_cv_lib_ffi_ffi_call+y}
then :
  printf %s "(cached) " >&6
else $as_nop
  ac_check_lib_save_LIBS=$LIBS
LIBS="-lffi  $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.  */
char ffi_call ();
int
main (void)
{
return ffi_call ();
  ;
  return 0;
}
_ACEOF
if ac_fn_c_try_link "$LINENO"
then :
  ac_cv_lib_ffi_ffi_call=yes
else $as_nop
  ac_cv_lib_ffi_ffi_call=no
fi
rm -f core conftest.err conftest.$ac_objext conftest.beam \
    conftest$ac_exeext conftest.$ac_ext
LIBS=$ac_check_lib_save_LIBS
fi
{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_ffi_ffi_call" >&5
printf "%s\n" "$ac_cv_lib_ffi_ffi_call" >&6; }
if test "x$ac_cv_lib_ffi_ffi_call" = xyes
then :
         for ac_header in ffi.h
do :
  ac_fn_c_check_header_compile "$LINENO" "ffi.h" "ac_cv_header_ffi_h" "$ac_includes_default"
if test "x$ac_cv_header_ffi_h" = xyes
then :
  printf "%s\n" "#define HAVE_FFI_H 1" >>confdefs.h
 break
fi

done

printf "%s\n" "#define HAVE_SYSTEM_LIBFFI 1" >>confdefs.h

else $as_nop
  as_fn_error $? "Cannot find system libffi" "$LINENO" 5
fi

 CFLAGS="$CFLAGS2"
 LDFLAGS="$LDFLAGS2"

fi

{ 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 $as_nop
  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.  */
char dlopen ();
int
main (void)
{
return dlopen ();
  ;
  return 0;
}
_ACEOF
if ac_fn_c_try_link "$LINENO"
then :
  ac_cv_lib_dl_dlopen=yes
else $as_nop
  ac_cv_lib_dl_dlopen=no
fi
rm -f core conftest.err conftest.$ac_objext conftest.beam \
    conftest$ac_exeext conftest.$ac_ext
LIBS=$ac_check_lib_save_LIBS
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 :
  printf "%s\n" "#define HAVE_LIBDL 1" >>confdefs.h

  LIBS="-ldl $LIBS"

fi

{ 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 $as_nop
  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.  */
char dlopen ();
int
main (void)
{
return dlopen ();
  ;
  return 0;
}
_ACEOF
if ac_fn_c_try_link "$LINENO"
then :
  ac_cv_lib_dl_dlopen=yes
else $as_nop
  ac_cv_lib_dl_dlopen=no
fi
rm -f core conftest.err conftest.$ac_objext conftest.beam \
    conftest$ac_exeext conftest.$ac_ext
LIBS=$ac_check_lib_save_LIBS
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 :
  CabalHaveLibdl=True

else $as_nop
  CabalHaveLibdl=False

fi

ac_fn_c_check_func "$LINENO" "dlinfo" "ac_cv_func_dlinfo"
if test "x$ac_cv_func_dlinfo" = xyes
then :
  printf "%s\n" "#define HAVE_DLINFO 1" >>confdefs.h

fi



ac_fn_c_check_type "$LINENO" "size_t" "ac_cv_type_size_t" "$ac_includes_default"
if test "x$ac_cv_type_size_t" = xyes
then :

else $as_nop

printf "%s\n" "#define size_t unsigned int" >>confdefs.h

fi

# The Ultrix 4.2 mips builtin alloca declared by alloca.h only works
# for constant arguments.  Useless!
{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for working alloca.h" >&5
printf %s "checking for working alloca.h... " >&6; }
if test ${ac_cv_working_alloca_h+y}
then :
  printf %s "(cached) " >&6
else $as_nop
  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
/* end confdefs.h.  */
#include <alloca.h>
int
main (void)
{
char *p = (char *) alloca (2 * sizeof (int));
			  if (p) return 0;
  ;
  return 0;
}
_ACEOF
if ac_fn_c_try_link "$LINENO"
then :
  ac_cv_working_alloca_h=yes
else $as_nop
  ac_cv_working_alloca_h=no
fi
rm -f core conftest.err conftest.$ac_objext conftest.beam \
    conftest$ac_exeext conftest.$ac_ext
fi
{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_cv_working_alloca_h" >&5
printf "%s\n" "$ac_cv_working_alloca_h" >&6; }
if test $ac_cv_working_alloca_h = yes; then

printf "%s\n" "#define HAVE_ALLOCA_H 1" >>confdefs.h

fi

{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for alloca" >&5
printf %s "checking for alloca... " >&6; }
if test ${ac_cv_func_alloca_works+y}
then :
  printf %s "(cached) " >&6
else $as_nop
  if test $ac_cv_working_alloca_h = yes; then
  ac_cv_func_alloca_works=yes
else
  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
/* end confdefs.h.  */
#include <stdlib.h>
#include <stddef.h>
#ifndef alloca
# ifdef __GNUC__
#  define alloca __builtin_alloca
# elif defined _MSC_VER
#  include <malloc.h>
#  define alloca _alloca
# else
#  ifdef  __cplusplus
extern "C"
#  endif
void *alloca (size_t);
# endif
#endif

int
main (void)
{
char *p = (char *) alloca (1);
				    if (p) return 0;
  ;
  return 0;
}
_ACEOF
if ac_fn_c_try_link "$LINENO"
then :
  ac_cv_func_alloca_works=yes
else $as_nop
  ac_cv_func_alloca_works=no
fi
rm -f core conftest.err conftest.$ac_objext conftest.beam \
    conftest$ac_exeext conftest.$ac_ext
fi
{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_cv_func_alloca_works" >&5
printf "%s\n" "$ac_cv_func_alloca_works" >&6; }
fi

if test $ac_cv_func_alloca_works = yes; then

printf "%s\n" "#define HAVE_ALLOCA 1" >>confdefs.h

else
  # The SVR3 libPW and SVR4 libucb both contain incompatible functions
# that cause trouble.  Some versions do not even contain alloca or
# contain a buggy version.  If you still want to use their alloca,
# use ar to extract alloca.o from them instead of compiling alloca.c.

ALLOCA=\${LIBOBJDIR}alloca.$ac_objext

printf "%s\n" "#define C_ALLOCA 1" >>confdefs.h


{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking stack direction for C alloca" >&5
printf %s "checking stack direction for C alloca... " >&6; }
if test ${ac_cv_c_stack_direction+y}
then :
  printf %s "(cached) " >&6
else $as_nop
  if test "$cross_compiling" = yes
then :
  ac_cv_c_stack_direction=0
else $as_nop
  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
/* end confdefs.h.  */
$ac_includes_default
int
find_stack_direction (int *addr, int depth)
{
  int dir, dummy = 0;
  if (! addr)
    addr = &dummy;
  *addr = addr < &dummy ? 1 : addr == &dummy ? 0 : -1;
  dir = depth ? find_stack_direction (addr, depth - 1) : 0;
  return dir + dummy;
}

int
main (int argc, char **argv)
{
  return find_stack_direction (0, argc + !argv + 20) < 0;
}
_ACEOF
if ac_fn_c_try_run "$LINENO"
then :
  ac_cv_c_stack_direction=1
else $as_nop
  ac_cv_c_stack_direction=-1
fi
rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \
  conftest.$ac_objext conftest.beam conftest.$ac_ext
fi

fi
{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_cv_c_stack_direction" >&5
printf "%s\n" "$ac_cv_c_stack_direction" >&6; }
printf "%s\n" "#define STACK_DIRECTION $ac_cv_c_stack_direction" >>confdefs.h


fi



  ac_fn_c_check_type "$LINENO" "pid_t" "ac_cv_type_pid_t" "$ac_includes_default
"
if test "x$ac_cv_type_pid_t" = xyes
then :

else $as_nop
                                          cat confdefs.h - <<_ACEOF >conftest.$ac_ext
/* end confdefs.h.  */

          #if defined _WIN64 && !defined __CYGWIN__
          LLP64
          #endif

int
main (void)
{

  ;
  return 0;
}

_ACEOF
if ac_fn_c_try_compile "$LINENO"
then :
  ac_pid_type='int'
else $as_nop
  ac_pid_type='__int64'
fi
rm -f core conftest.err conftest.$ac_objext conftest.beam conftest.$ac_ext

printf "%s\n" "#define pid_t $ac_pid_type" >>confdefs.h


fi



ac_func=
for ac_item in $ac_func_c_list
do
  if test $ac_func; then
    ac_fn_c_check_func "$LINENO" $ac_func ac_cv_func_$ac_func
    if eval test \"x\$ac_cv_func_$ac_func\" = xyes; then
      echo "#define $ac_item 1" >> confdefs.h
    fi
    ac_func=
  else
    ac_func=$ac_item
  fi
done



if test "x$ac_cv_func_fork" = xyes; then
  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for working fork" >&5
printf %s "checking for working fork... " >&6; }
if test ${ac_cv_func_fork_works+y}
then :
  printf %s "(cached) " >&6
else $as_nop
  if test "$cross_compiling" = yes
then :
  ac_cv_func_fork_works=cross
else $as_nop
  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
/* end confdefs.h.  */
$ac_includes_default
int
main (void)
{

	  /* By Ruediger Kuhlmann. */
	  return fork () < 0;

  ;
  return 0;
}
_ACEOF
if ac_fn_c_try_run "$LINENO"
then :
  ac_cv_func_fork_works=yes
else $as_nop
  ac_cv_func_fork_works=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
{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_cv_func_fork_works" >&5
printf "%s\n" "$ac_cv_func_fork_works" >&6; }

else
  ac_cv_func_fork_works=$ac_cv_func_fork
fi
if test "x$ac_cv_func_fork_works" = xcross; then
  case $host in
    *-*-amigaos* | *-*-msdosdjgpp*)
      # Override, as these systems have only a dummy fork() stub
      ac_cv_func_fork_works=no
      ;;
    *)
      ac_cv_func_fork_works=yes
      ;;
  esac
  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: WARNING: result $ac_cv_func_fork_works guessed because of cross compilation" >&5
printf "%s\n" "$as_me: WARNING: result $ac_cv_func_fork_works guessed because of cross compilation" >&2;}
fi
ac_cv_func_vfork_works=$ac_cv_func_vfork
if test "x$ac_cv_func_vfork" = xyes; then
  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for working vfork" >&5
printf %s "checking for working vfork... " >&6; }
if test ${ac_cv_func_vfork_works+y}
then :
  printf %s "(cached) " >&6
else $as_nop
  if test "$cross_compiling" = yes
then :
  ac_cv_func_vfork_works=cross
else $as_nop
  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
/* end confdefs.h.  */
/* Thanks to Paul Eggert for this test.  */
$ac_includes_default
#include <signal.h>
#include <sys/wait.h>
#ifdef HAVE_VFORK_H
# include <vfork.h>
#endif

static void
do_nothing (int sig)
{
  (void) sig;
}

/* On some sparc systems, changes by the child to local and incoming
   argument registers are propagated back to the parent.  The compiler
   is told about this with #include <vfork.h>, but some compilers
   (e.g. gcc -O) don't grok <vfork.h>.  Test for this by using a
   static variable whose address is put into a register that is
   clobbered by the vfork.  */
static void
sparc_address_test (int arg)
{
  static pid_t child;
  if (!child) {
    child = vfork ();
    if (child < 0) {
      perror ("vfork");
      _exit(2);
    }
    if (!child) {
      arg = getpid();
      write(-1, "", 0);
      _exit (arg);
    }
  }
}

int
main (void)
{
  pid_t parent = getpid ();
  pid_t child;

  sparc_address_test (0);

  /* On Solaris 2.4, changes by the child to the signal handler
     also munge signal handlers in the parent.  To detect this,
     start by putting the parent's handler in a known state.  */
  signal (SIGTERM, SIG_DFL);

  child = vfork ();

  if (child == 0) {
    /* Here is another test for sparc vfork register problems.  This
       test uses lots of local variables, at least as many local
       variables as main has allocated so far including compiler
       temporaries.  4 locals are enough for gcc 1.40.3 on a Solaris
       4.1.3 sparc, but we use 8 to be safe.  A buggy compiler should
       reuse the register of parent for one of the local variables,
       since it will think that parent can't possibly be used any more
       in this routine.  Assigning to the local variable will thus
       munge parent in the parent process.  */
    pid_t
      p = getpid(), p1 = getpid(), p2 = getpid(), p3 = getpid(),
      p4 = getpid(), p5 = getpid(), p6 = getpid(), p7 = getpid();
    /* Convince the compiler that p..p7 are live; otherwise, it might
       use the same hardware register for all 8 local variables.  */
    if (p != p1 || p != p2 || p != p3 || p != p4
	|| p != p5 || p != p6 || p != p7)
      _exit(1);

    /* Alter the child's signal handler.  */
    if (signal (SIGTERM, do_nothing) != SIG_DFL)
      _exit(1);

    /* On some systems (e.g. IRIX 3.3), vfork doesn't separate parent
       from child file descriptors.  If the child closes a descriptor
       before it execs or exits, this munges the parent's descriptor
       as well.  Test for this by closing stdout in the child.  */
    _exit(close(fileno(stdout)) != 0);
  } else {
    int status;
    struct stat st;

    while (wait(&status) != child)
      ;
    return (
	 /* Was there some problem with vforking?  */
	 child < 0

	 /* Did the child munge the parent's signal handler?  */
	 || signal (SIGTERM, SIG_DFL) != SIG_DFL

	 /* Did the child fail?  (This shouldn't happen.)  */
	 || status

	 /* Did the vfork/compiler bug occur?  */
	 || parent != getpid()

	 /* Did the file descriptor bug occur?  */
	 || fstat(fileno(stdout), &st) != 0
	 );
  }
}
_ACEOF
if ac_fn_c_try_run "$LINENO"
then :
  ac_cv_func_vfork_works=yes
else $as_nop
  ac_cv_func_vfork_works=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
{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_cv_func_vfork_works" >&5
printf "%s\n" "$ac_cv_func_vfork_works" >&6; }

fi;
if test "x$ac_cv_func_fork_works" = xcross; then
  ac_cv_func_vfork_works=$ac_cv_func_vfork
  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: WARNING: result $ac_cv_func_vfork_works guessed because of cross compilation" >&5
printf "%s\n" "$as_me: WARNING: result $ac_cv_func_vfork_works guessed because of cross compilation" >&2;}
fi

if test "x$ac_cv_func_vfork_works" = xyes; then

printf "%s\n" "#define HAVE_WORKING_VFORK 1" >>confdefs.h

else

printf "%s\n" "#define vfork fork" >>confdefs.h

fi
if test "x$ac_cv_func_fork_works" = xyes; then

printf "%s\n" "#define HAVE_WORKING_FORK 1" >>confdefs.h

fi


{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for an ANSI C-conforming const" >&5
printf %s "checking for an ANSI C-conforming const... " >&6; }
if test ${ac_cv_c_const+y}
then :
  printf %s "(cached) " >&6
else $as_nop
  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
/* end confdefs.h.  */

int
main (void)
{

#ifndef __cplusplus
  /* Ultrix mips cc rejects this sort of thing.  */
  typedef int charset[2];
  const charset cs = { 0, 0 };
  /* SunOS 4.1.1 cc rejects this.  */
  char const *const *pcpcc;
  char **ppc;
  /* NEC SVR4.0.2 mips cc rejects this.  */
  struct point {int x, y;};
  static struct point const zero = {0,0};
  /* IBM XL C 1.02.0.0 rejects this.
     It does not let you subtract one const X* pointer from another in
     an arm of an if-expression whose if-part is not a constant
     expression */
  const char *g = "string";
  pcpcc = &g + (g ? g-g : 0);
  /* HPUX 7.0 cc rejects these. */
  ++pcpcc;
  ppc = (char**) pcpcc;
  pcpcc = (char const *const *) ppc;
  { /* SCO 3.2v4 cc rejects this sort of thing.  */
    char tx;
    char *t = &tx;
    char const *s = 0 ? (char *) 0 : (char const *) 0;

    *t++ = 0;
    if (s) return 0;
  }
  { /* Someone thinks the Sun supposedly-ANSI compiler will reject this.  */
    int x[] = {25, 17};
    const int *foo = &x[0];
    ++foo;
  }
  { /* Sun SC1.0 ANSI compiler rejects this -- but not the above. */
    typedef const int *iptr;
    iptr p = 0;
    ++p;
  }
  { /* IBM XL C 1.02.0.0 rejects this sort of thing, saying
       "k.c", line 2.27: 1506-025 (S) Operand must be a modifiable lvalue. */
    struct s { int j; const int *ap[3]; } bx;
    struct s *b = &bx; b->j = 5;
  }
  { /* ULTRIX-32 V3.1 (Rev 9) vcc rejects this */
    const int foo = 10;
    if (!foo) return 0;
  }
  return !cs[0] && !zero.x;
#endif

  ;
  return 0;
}
_ACEOF
if ac_fn_c_try_compile "$LINENO"
then :
  ac_cv_c_const=yes
else $as_nop
  ac_cv_c_const=no
fi
rm -f core conftest.err conftest.$ac_objext conftest.beam conftest.$ac_ext
fi
{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_cv_c_const" >&5
printf "%s\n" "$ac_cv_c_const" >&6; }
if test $ac_cv_c_const = no; then

printf "%s\n" "#define const /**/" >>confdefs.h

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 $as_nop
  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 $as_nop
  ac_cv_c_bigendian=no
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 $as_nop
  ac_cv_c_bigendian=no
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];
		}
		extern int foo;

int
main (void)
{
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.beam conftest.$ac_ext
else $as_nop
  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 $as_nop
  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
{ 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 whether float word order is big endian" >&5
printf %s "checking whether float word order is big endian... " >&6; }
if test ${fptools_cv_float_word_order_bigendian+y}
then :
  printf %s "(cached) " >&6
else $as_nop
  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
/* end confdefs.h.  */
#include <endian.h>
int
main (void)
{
#if defined(__FLOAT_WORD_ORDER) && __FLOAT_WORD_ORDER == BIG_ENDIAN
             return 0;
         #else
             not float word order big endian
         #endif

  ;
  return 0;
}
_ACEOF
if ac_fn_c_try_compile "$LINENO"
then :
  fptools_cv_float_word_order_bigendian=yes
else $as_nop
  fptools_cv_float_word_order_bigendian=no
fi
rm -f core conftest.err conftest.$ac_objext conftest.beam conftest.$ac_ext

fi
{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $fptools_cv_float_word_order_bigendian" >&5
printf "%s\n" "$fptools_cv_float_word_order_bigendian" >&6; }
  case $fptools_cv_float_word_order_bigendian in
      yes)

printf "%s\n" "#define FLOAT_WORDS_BIGENDIAN 1" >>confdefs.h
 ;;
  esac


{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for nlist in -lelf" >&5
printf %s "checking for nlist in -lelf... " >&6; }
if test ${ac_cv_lib_elf_nlist+y}
then :
  printf %s "(cached) " >&6
else $as_nop
  ac_check_lib_save_LIBS=$LIBS
LIBS="-lelf  $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.  */
char nlist ();
int
main (void)
{
return nlist ();
  ;
  return 0;
}
_ACEOF
if ac_fn_c_try_link "$LINENO"
then :
  ac_cv_lib_elf_nlist=yes
else $as_nop
  ac_cv_lib_elf_nlist=no
fi
rm -f core conftest.err conftest.$ac_objext conftest.beam \
    conftest$ac_exeext conftest.$ac_ext
LIBS=$ac_check_lib_save_LIBS
fi
{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_elf_nlist" >&5
printf "%s\n" "$ac_cv_lib_elf_nlist" >&6; }
if test "x$ac_cv_lib_elf_nlist" = xyes
then :
  LIBS="-lelf $LIBS"
fi

{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking leading underscore in symbol names" >&5
printf %s "checking leading underscore in symbol names... " >&6; }
if test ${fptools_cv_leading_underscore+y}
then :
  printf %s "(cached) " >&6
else $as_nop

# Hack!: nlist() under Digital UNIX insist on there being an _,
# but symbol table listings shows none. What is going on here?!?
case $TargetPlatform in
    # Apples mach-o platforms use leading underscores
    *-apple-*) fptools_cv_leading_underscore=yes;;
    *linux-android*) fptools_cv_leading_underscore=no;;
    *openbsd*) # x86 openbsd is ELF from 3.4 >, meaning no leading uscore
      case $build in
        i386-*2\.[0-9] | i386-*3\.[0-3] ) fptools_cv_leading_underscore=yes ;;
        *) fptools_cv_leading_underscore=no ;;
      esac ;;
    i386-unknown-mingw32) fptools_cv_leading_underscore=yes;;
    x86_64-unknown-mingw32) fptools_cv_leading_underscore=no;;
    *) if test "$cross_compiling" = yes
then :
  fptools_cv_leading_underscore=no
else $as_nop
  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
/* end confdefs.h.  */
#if defined(HAVE_NLIST_H)
#include <nlist.h>
struct nlist xYzzY1[] = {{"xYzzY1", 0},{0}};
struct nlist xYzzY2[] = {{"_xYzzY2", 0},{0}};
#endif

int main(argc, argv)
int argc;
char **argv;
{
#if defined(HAVE_NLIST_H)
    if(nlist(argv[0], xYzzY1) == 0 && xYzzY1[0].n_value != 0)
        exit(1);
    if(nlist(argv[0], xYzzY2) == 0 && xYzzY2[0].n_value != 0)
        exit(0);
#endif
    exit(1);
}
_ACEOF
if ac_fn_c_try_run "$LINENO"
then :
  fptools_cv_leading_underscore=yes
else $as_nop
  fptools_cv_leading_underscore=no
fi
rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \
  conftest.$ac_objext conftest.beam conftest.$ac_ext
fi

;;
esac
fi
{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $fptools_cv_leading_underscore" >&5
printf "%s\n" "$fptools_cv_leading_underscore" >&6; };
LeadingUnderscore=`echo $fptools_cv_leading_underscore | sed 'y/yesno/YESNO/'`

if test x"$fptools_cv_leading_underscore" = xyes; then
   CabalLeadingUnderscore=True


printf "%s\n" "#define LEADING_UNDERSCORE 1" >>confdefs.h

else
   CabalLeadingUnderscore=False

fi



    { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking whether __attribute__((visibility(\"hidden\"))) is supported" >&5
printf %s "checking whether __attribute__((visibility(\"hidden\"))) is supported... " >&6; }
    echo '__attribute__((visibility("hidden"))) void foo(void) {}' > conftest.c
    if $CC -Wall -Werror -c conftest.c > /dev/null 2>&1
    then
        { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: yes" >&5
printf "%s\n" "yes" >&6; }

printf "%s\n" "#define HAS_VISIBILITY_HIDDEN 1" >>confdefs.h

    else
        { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
printf "%s\n" "no" >&6; }
    fi
    rm -f conftest.c conftest.o


{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for clock_gettime in -lrt" >&5
printf %s "checking for clock_gettime in -lrt... " >&6; }
if test ${ac_cv_lib_rt_clock_gettime+y}
then :
  printf %s "(cached) " >&6
else $as_nop
  ac_check_lib_save_LIBS=$LIBS
LIBS="-lrt  $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.  */
char clock_gettime ();
int
main (void)
{
return clock_gettime ();
  ;
  return 0;
}
_ACEOF
if ac_fn_c_try_link "$LINENO"
then :
  ac_cv_lib_rt_clock_gettime=yes
else $as_nop
  ac_cv_lib_rt_clock_gettime=no
fi
rm -f core conftest.err conftest.$ac_objext conftest.beam \
    conftest$ac_exeext conftest.$ac_ext
LIBS=$ac_check_lib_save_LIBS
fi
{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_rt_clock_gettime" >&5
printf "%s\n" "$ac_cv_lib_rt_clock_gettime" >&6; }
if test "x$ac_cv_lib_rt_clock_gettime" = xyes
then :
  printf "%s\n" "#define HAVE_LIBRT 1" >>confdefs.h

  LIBS="-lrt $LIBS"

fi

{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for clock_gettime in -lrt" >&5
printf %s "checking for clock_gettime in -lrt... " >&6; }
if test ${ac_cv_lib_rt_clock_gettime+y}
then :
  printf %s "(cached) " >&6
else $as_nop
  ac_check_lib_save_LIBS=$LIBS
LIBS="-lrt  $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.  */
char clock_gettime ();
int
main (void)
{
return clock_gettime ();
  ;
  return 0;
}
_ACEOF
if ac_fn_c_try_link "$LINENO"
then :
  ac_cv_lib_rt_clock_gettime=yes
else $as_nop
  ac_cv_lib_rt_clock_gettime=no
fi
rm -f core conftest.err conftest.$ac_objext conftest.beam \
    conftest$ac_exeext conftest.$ac_ext
LIBS=$ac_check_lib_save_LIBS
fi
{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_rt_clock_gettime" >&5
printf "%s\n" "$ac_cv_lib_rt_clock_gettime" >&6; }
if test "x$ac_cv_lib_rt_clock_gettime" = xyes
then :
  CabalHaveLibrt=True

else $as_nop
  CabalHaveLibrt=False

fi

ac_fn_c_check_func "$LINENO" "clock_gettime" "ac_cv_func_clock_gettime"
if test "x$ac_cv_func_clock_gettime" = xyes
then :
  printf "%s\n" "#define HAVE_CLOCK_GETTIME 1" >>confdefs.h

fi
ac_fn_c_check_func "$LINENO" "timer_settime" "ac_cv_func_timer_settime"
if test "x$ac_cv_func_timer_settime" = xyes
then :
  printf "%s\n" "#define HAVE_TIMER_SETTIME 1" >>confdefs.h

fi


ac_fn_c_check_func "$LINENO" "timer_create" "ac_cv_func_timer_create"
if test "x$ac_cv_func_timer_create" = xyes
then :
  HAVE_timer_create=yes
else $as_nop
  HAVE_timer_create=no
fi


if test "$HAVE_timer_create" = "yes"
then
  if test "$cross_compiling" = "yes"
  then
    # We can't test timer_create when we're cross-compiling, so we
    # optimistiaclly assume that it actually works properly.

printf "%s\n" "#define USE_TIMER_CREATE 1" >>confdefs.h

  else
  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for a working timer_create(CLOCK_REALTIME)" >&5
printf %s "checking for a working timer_create(CLOCK_REALTIME)... " >&6; }
if test ${fptools_cv_timer_create_works+y}
then :
  printf %s "(cached) " >&6
else $as_nop
  if test "$cross_compiling" = 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 $? "cannot run test program while cross compiling
See \`config.log' for more details" "$LINENO" 5; }
else $as_nop
  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
/* end confdefs.h.  */

#include <stdio.h>
#if defined(HAVE_STDLIB_H)
#include <stdlib.h>
#endif
#if defined(HAVE_TIME_H)
#include <time.h>
#endif
#if defined(HAVE_SIGNAL_H)
#include <signal.h>
#endif
#if defined(HAVE_UNISTD_H)
#include <unistd.h>
#endif

static volatile int tock = 0;
static void handler(int i)
{
   tock = 1;
}

static void timeout(int i)
{
  // timer_settime() has been known to hang, so just in case
  // we install a 1-second timeout (see #2257)
  exit(99);
}

int main(int argc, char *argv[])
{

    struct sigevent ev;
    timer_t timer;
    struct itimerspec it;
    struct sigaction action;
    int m,n,count = 0;

    ev.sigev_notify = SIGEV_SIGNAL;
    ev.sigev_signo  = SIGVTALRM;

    action.sa_handler = handler;
    action.sa_flags = 0;
    sigemptyset(&action.sa_mask);
    if (sigaction(SIGVTALRM, &action, NULL) == -1) {
        fprintf(stderr,"SIGVTALRM problem\n");
        exit(3);
    }

    action.sa_handler = timeout;
    action.sa_flags = 0;
    sigemptyset(&action.sa_mask);
    if (sigaction(SIGALRM, &action, NULL) == -1) {
      fprintf(stderr,"SIGALRM problem\n");
      exit(3);
    }
    alarm(1);

    if (timer_create(CLOCK_REALTIME, &ev, &timer) != 0) {
        fprintf(stderr,"No CLOCK_REALTIME timer\n");
        exit(2);
    }

    tock = 0;

    it.it_value.tv_sec = 0;
    it.it_value.tv_nsec = 1000000; // 1ms
    it.it_interval = it.it_value;
    if (timer_settime(timer, 0, &it, NULL) != 0) {
        fprintf(stderr,"settime problem\n");
        exit(4);
    }

    // some environments have coarse scheduler/timer granularity of ~10ms and worse
    usleep(100000); // 100ms

    if (!tock) {
        fprintf(stderr,"no CLOCK_REALTIME signal\n");
        exit(5);
    }

    timer_delete(timer);

    exit(0);
}

_ACEOF
if ac_fn_c_try_run "$LINENO"
then :
  fptools_cv_timer_create_works=yes
else $as_nop
  fptools_cv_timer_create_works=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
{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $fptools_cv_timer_create_works" >&5
printf "%s\n" "$fptools_cv_timer_create_works" >&6; }
case $fptools_cv_timer_create_works in
    yes)
printf "%s\n" "#define USE_TIMER_CREATE 1" >>confdefs.h
;;
esac
  fi
fi


{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for printf\$LDBLStub" >&5
printf %s "checking for printf\$LDBLStub... " >&6; }
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.  */
char printf\$LDBLStub ();
int
main (void)
{
return printf\$LDBLStub ();
  ;
  return 0;
}
_ACEOF
if ac_fn_c_try_link "$LINENO"
then :

        { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: yes" >&5
printf "%s\n" "yes" >&6; }

printf "%s\n" "#define HAVE_PRINTF_LDBLSTUB 1" >>confdefs.h


else $as_nop

        { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
printf "%s\n" "no" >&6; }

printf "%s\n" "#define HAVE_PRINTF_LDBLSTUB 0" >>confdefs.h


fi
rm -f core conftest.err conftest.$ac_objext conftest.beam \
    conftest$ac_exeext conftest.$ac_ext

{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking whether -lpthread is needed for pthreads" >&5
printf %s "checking whether -lpthread is needed for pthreads... " >&6; }
ac_fn_c_check_func "$LINENO" "pthread_create" "ac_cv_func_pthread_create"
if test "x$ac_cv_func_pthread_create" = xyes
then :

        { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
printf "%s\n" "no" >&6; }
        CabalNeedLibpthread=False

        need_lpthread=0

else $as_nop

        { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for pthread_create in -lpthread" >&5
printf %s "checking for pthread_create in -lpthread... " >&6; }
if test ${ac_cv_lib_pthread_pthread_create+y}
then :
  printf %s "(cached) " >&6
else $as_nop
  ac_check_lib_save_LIBS=$LIBS
LIBS="-lpthread  $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.  */
char pthread_create ();
int
main (void)
{
return pthread_create ();
  ;
  return 0;
}
_ACEOF
if ac_fn_c_try_link "$LINENO"
then :
  ac_cv_lib_pthread_pthread_create=yes
else $as_nop
  ac_cv_lib_pthread_pthread_create=no
fi
rm -f core conftest.err conftest.$ac_objext conftest.beam \
    conftest$ac_exeext conftest.$ac_ext
LIBS=$ac_check_lib_save_LIBS
fi
{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_pthread_pthread_create" >&5
printf "%s\n" "$ac_cv_lib_pthread_pthread_create" >&6; }
if test "x$ac_cv_lib_pthread_pthread_create" = xyes
then :

                { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: yes" >&5
printf "%s\n" "yes" >&6; }
                CabalNeedLibpthread=True

                need_lpthread=1

else $as_nop

                CabalNeedLibpthread=False

                { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no pthreads support found." >&5
printf "%s\n" "no pthreads support found." >&6; }
                need_lpthread=0

fi


fi


printf "%s\n" "#define NEED_PTHREAD_LIB $need_lpthread" >>confdefs.h


ac_fn_c_check_header_compile "$LINENO" "pthread_np.h" "ac_cv_header_pthread_np_h" "$ac_includes_default"
if test "x$ac_cv_header_pthread_np_h" = xyes
then :
  printf "%s\n" "#define HAVE_PTHREAD_NP_H 1" >>confdefs.h

fi


{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for pthread_setname_np in -lpthread" >&5
printf %s "checking for pthread_setname_np in -lpthread... " >&6; }
if test ${ac_cv_lib_pthread_pthread_setname_np+y}
then :
  printf %s "(cached) " >&6
else $as_nop
  ac_check_lib_save_LIBS=$LIBS
LIBS="-lpthread  $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.  */
char pthread_setname_np ();
int
main (void)
{
return pthread_setname_np ();
  ;
  return 0;
}
_ACEOF
if ac_fn_c_try_link "$LINENO"
then :
  ac_cv_lib_pthread_pthread_setname_np=yes
else $as_nop
  ac_cv_lib_pthread_pthread_setname_np=no
fi
rm -f core conftest.err conftest.$ac_objext conftest.beam \
    conftest$ac_exeext conftest.$ac_ext
LIBS=$ac_check_lib_save_LIBS
fi
{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_pthread_pthread_setname_np" >&5
printf "%s\n" "$ac_cv_lib_pthread_pthread_setname_np" >&6; }
if test "x$ac_cv_lib_pthread_pthread_setname_np" = xyes
then :
  printf "%s\n" "#define HAVE_LIBPTHREAD 1" >>confdefs.h

  LIBS="-lpthread $LIBS"

fi


{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for pthread_setname_np (Darwin)" >&5
printf %s "checking for pthread_setname_np (Darwin)... " >&6; }
cat confdefs.h - <<_ACEOF >conftest.$ac_ext
/* end confdefs.h.  */


    #include <pthread.h>

int
main (void)
{
pthread_setname_np("name");

  ;
  return 0;
}
_ACEOF
if ac_fn_c_try_link "$LINENO"
then :

    { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: yes" >&5
printf "%s\n" "yes" >&6; }

printf "%s\n" "#define HAVE_PTHREAD_SETNAME_NP_DARWIN 1" >>confdefs.h


else $as_nop
  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
printf "%s\n" "no" >&6; }

fi
rm -f core conftest.err conftest.$ac_objext conftest.beam \
    conftest$ac_exeext conftest.$ac_ext

{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for pthread_setname_np (glibc)" >&5
printf %s "checking for pthread_setname_np (glibc)... " >&6; }
cat confdefs.h - <<_ACEOF >conftest.$ac_ext
/* end confdefs.h.  */


    #define _GNU_SOURCE
    #include <pthread.h>

int
main (void)
{
pthread_setname_np(pthread_self(), "name");

  ;
  return 0;
}
_ACEOF
if ac_fn_c_try_link "$LINENO"
then :

    { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: yes" >&5
printf "%s\n" "yes" >&6; }

printf "%s\n" "#define HAVE_PTHREAD_SETNAME_NP 1" >>confdefs.h


else $as_nop
  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
printf "%s\n" "no" >&6; }

fi
rm -f core conftest.err conftest.$ac_objext conftest.beam \
    conftest$ac_exeext conftest.$ac_ext

{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for pthread_set_name_np" >&5
printf %s "checking for pthread_set_name_np... " >&6; }
cat confdefs.h - <<_ACEOF >conftest.$ac_ext
/* end confdefs.h.  */


    #include <pthread_np.h>

int
main (void)
{
pthread_set_name_np(pthread_self(), "name");

  ;
  return 0;
}
_ACEOF
if ac_fn_c_try_link "$LINENO"
then :

    { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: yes" >&5
printf "%s\n" "yes" >&6; }

printf "%s\n" "#define HAVE_PTHREAD_SET_NAME_NP 1" >>confdefs.h


else $as_nop
  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
printf "%s\n" "no" >&6; }

fi
rm -f core conftest.err conftest.$ac_objext conftest.beam \
    conftest$ac_exeext conftest.$ac_ext

ac_fn_c_check_header_compile "$LINENO" "sys/eventfd.h" "ac_cv_header_sys_eventfd_h" "$ac_includes_default"
if test "x$ac_cv_header_sys_eventfd_h" = xyes
then :
  printf "%s\n" "#define HAVE_SYS_EVENTFD_H 1" >>confdefs.h

fi

ac_fn_c_check_func "$LINENO" "eventfd" "ac_cv_func_eventfd"
if test "x$ac_cv_func_eventfd" = xyes
then :
  printf "%s\n" "#define HAVE_EVENTFD 1" >>confdefs.h

fi


{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for __thread support" >&5
printf %s "checking for __thread support... " >&6; }
cat confdefs.h - <<_ACEOF >conftest.$ac_ext
/* end confdefs.h.  */
 __thread int tester = 0;
_ACEOF
if ac_fn_c_try_compile "$LINENO"
then :

   { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: yes" >&5
printf "%s\n" "yes" >&6; }

printf "%s\n" "#define CC_SUPPORTS_TLS 1" >>confdefs.h


else $as_nop

   { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
printf "%s\n" "no" >&6; }

printf "%s\n" "#define CC_SUPPORTS_TLS 0" >>confdefs.h


fi
rm -f core conftest.err conftest.$ac_objext conftest.beam conftest.$ac_ext


# Check whether --enable-large-address-space was given.
if test ${enable_large_address_space+y}
then :
  enableval=$enable_large_address_space; EnableLargeAddressSpace=$enableval
else $as_nop
  EnableLargeAddressSpace=yes

fi


use_large_address_space=no
if test "$ac_cv_sizeof_void_p" -eq 8 ; then
    if test "x$EnableLargeAddressSpace" = "xyes" ; then
        if test "$ghc_host_os" = "darwin" ; then
            use_large_address_space=yes
        elif test "$ghc_host_os" = "openbsd" ; then
            # as of OpenBSD 5.8 (2015), OpenBSD does not support mmap with MAP_NORESERVE.
            # The flag MAP_NORESERVE is supported for source compatibility reasons,
            # but is completely ignored by OS mmap
                  use_large_address_space=no
        elif test "$ghc_host_os" = "mingw32" ; then
            # as of Windows 8.1/Server 2012 windows does no longer allocate the page
            # tabe for reserved memory eagerly. So we are now free to use LAS there too.
                  use_large_address_space=yes
        else
            ac_fn_check_decl "$LINENO" "MAP_NORESERVE" "ac_cv_have_decl_MAP_NORESERVE" "
                #include <unistd.h>
                #include <sys/types.h>
                #include <sys/mman.h>
                #include <fcntl.h>

" "$ac_c_undeclared_builtin_options" "CFLAGS"
if test "x$ac_cv_have_decl_MAP_NORESERVE" = xyes
then :
  ac_have_decl=1
else $as_nop
  ac_have_decl=0
fi
printf "%s\n" "#define HAVE_DECL_MAP_NORESERVE $ac_have_decl" >>confdefs.h
ac_fn_check_decl "$LINENO" "MADV_FREE" "ac_cv_have_decl_MADV_FREE" "
                #include <unistd.h>
                #include <sys/types.h>
                #include <sys/mman.h>
                #include <fcntl.h>

" "$ac_c_undeclared_builtin_options" "CFLAGS"
if test "x$ac_cv_have_decl_MADV_FREE" = xyes
then :
  ac_have_decl=1
else $as_nop
  ac_have_decl=0
fi
printf "%s\n" "#define HAVE_DECL_MADV_FREE $ac_have_decl" >>confdefs.h
ac_fn_check_decl "$LINENO" "MADV_DONTNEED" "ac_cv_have_decl_MADV_DONTNEED" "
                #include <unistd.h>
                #include <sys/types.h>
                #include <sys/mman.h>
                #include <fcntl.h>

" "$ac_c_undeclared_builtin_options" "CFLAGS"
if test "x$ac_cv_have_decl_MADV_DONTNEED" = xyes
then :
  ac_have_decl=1
else $as_nop
  ac_have_decl=0
fi
printf "%s\n" "#define HAVE_DECL_MADV_DONTNEED $ac_have_decl" >>confdefs.h

            if test "$ac_cv_have_decl_MAP_NORESERVE" = "yes" &&
                test "$ac_cv_have_decl_MADV_FREE" = "yes" ||
                test "$ac_cv_have_decl_MADV_DONTNEED" = "yes" ; then
                    use_large_address_space=yes
            fi
        fi
    fi
fi
if test "$use_large_address_space" = "yes" ; then

printf "%s\n" "#define USE_LARGE_ADDRESS_SPACE 1" >>confdefs.h

fi


case ${TargetOS} in
    linux|linux-android|freebsd|dragonfly|netbsd|openbsd|kfreebsdgnu|gnu|solaris2)
        RtsLinkerUseMmap=1
        ;;
    darwin|ios|watchos|tvos)
        RtsLinkerUseMmap=1
        ;;
    *)
        # Windows (which doesn't have mmap) and everything else.
        RtsLinkerUseMmap=0
        ;;
    esac


printf "%s\n" "#define RTS_LINKER_USE_MMAP $RtsLinkerUseMmap" >>confdefs.h




case ${TargetArch} in
    i386|x86_64)
        # We have native adjustor support on these platforms
        HaveNativeAdjustor=yes
        ;;
    *)
        HaveNativeAdjustor=no
        ;;
esac

# Check whether --enable-libffi-adjustors was given.
if test ${enable_libffi_adjustors+y}
then :
  enableval=$enable_libffi_adjustors; UseLibffiForAdjustors=$enableval
fi


{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking whether to use libffi for adjustors" >&5
printf %s "checking whether to use libffi for adjustors... " >&6; }
{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $UseLibffiForAdjustors" >&5
printf "%s\n" "$UseLibffiForAdjustors" >&6; }
if test "$UseLibffiForAdjustors" = "yes" ; then
    # Use libffi is the user explicitly requested it
    AdjustorType="libffi"
elif test "$HaveNativeAdjustor" = "yes"; then
    # Otherwise if we have a native adjustor implementation use that
    AdjustorType="native"
else
    # If we don't have a native adjustor implementation then default to libffi
    AdjustorType="libffi"
fi

case "$AdjustorType" in
libffi)
    CabalLibffiAdjustors=True
    UseLibffiForAdjustors=YES
    ;;
native)
    CabalLibffiAdjustors=False
    UseLibffiForAdjustors=NO
    ;;
*)
    as_fn_error $? "Internal error: Invalid AdjustorType" "$LINENO" 5
    exit 1
esac





# Check whether --with-libdw-libraries was given.
if test ${with_libdw_libraries+y}
then :
  withval=$with_libdw_libraries;
    LibdwLibDir="$withval"
    LIBDW_LDFLAGS="-L$withval"

fi





# Check whether --with-libdw-includes was given.
if test ${with_libdw_includes+y}
then :
  withval=$with_libdw_includes;
    LibdwIncludeDir="$withval"
    LIBDW_CFLAGS="-I$withval"

fi




UseLibdw=NO
USE_LIBDW=0
# Check whether --enable-dwarf-unwind was given.
if test ${enable_dwarf_unwind+y}
then :
  enableval=$enable_dwarf_unwind;
fi

if test "$enable_dwarf_unwind" = "yes" ; then
  CFLAGS2="$CFLAGS"
  CFLAGS="$LIBDW_CFLAGS $CFLAGS"
  LDFLAGS2="$LDFLAGS"
  LDFLAGS="$LIBDW_LDFLAGS $LDFLAGS"

  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for dwfl_attach_state in -ldw" >&5
printf %s "checking for dwfl_attach_state in -ldw... " >&6; }
if test ${ac_cv_lib_dw_dwfl_attach_state+y}
then :
  printf %s "(cached) " >&6
else $as_nop
  ac_check_lib_save_LIBS=$LIBS
LIBS="-ldw  $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.  */
char dwfl_attach_state ();
int
main (void)
{
return dwfl_attach_state ();
  ;
  return 0;
}
_ACEOF
if ac_fn_c_try_link "$LINENO"
then :
  ac_cv_lib_dw_dwfl_attach_state=yes
else $as_nop
  ac_cv_lib_dw_dwfl_attach_state=no
fi
rm -f core conftest.err conftest.$ac_objext conftest.beam \
    conftest$ac_exeext conftest.$ac_ext
LIBS=$ac_check_lib_save_LIBS
fi
{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_dw_dwfl_attach_state" >&5
printf "%s\n" "$ac_cv_lib_dw_dwfl_attach_state" >&6; }
if test "x$ac_cv_lib_dw_dwfl_attach_state" = xyes
then :
         for ac_header in elfutils/libdw.h
do :
  ac_fn_c_check_header_compile "$LINENO" "elfutils/libdw.h" "ac_cv_header_elfutils_libdw_h" "$ac_includes_default"
if test "x$ac_cv_header_elfutils_libdw_h" = xyes
then :
  printf "%s\n" "#define HAVE_ELFUTILS_LIBDW_H 1" >>confdefs.h
 break
fi

done
       UseLibdw=YES
else $as_nop
  as_fn_error $? "Cannot find system libdw (required by --enable-dwarf-unwind)" "$LINENO" 5
fi


  CFLAGS="$CFLAGS2"
  LDFLAGS="$LDFLAGS2"
fi


if test $UseLibdw = "YES" ; then
	USE_LIBDW=1
  CabalHaveLibdw=True

else
  CabalHaveLibdw=False

fi

printf "%s\n" "#define USE_LIBDW $USE_LIBDW" >>confdefs.h



# Check whether --with-libnuma-libraries was given.
if test ${with_libnuma_libraries+y}
then :
  withval=$with_libnuma_libraries;
    LibNumaLibDir="$withval"
    LIBNUMA_LDFLAGS="-L$withval"

fi





# Check whether --with-libnuma-includes was given.
if test ${with_libnuma_includes+y}
then :
  withval=$with_libnuma_includes;
    LibNumaIncludeDir="$withval"
    LIBNUMA_CFLAGS="-I$withval"

fi




HaveLibNuma=0
# Check whether --enable-numa was given.
if test ${enable_numa+y}
then :
  enableval=$enable_numa;
fi


if test "$enable_numa" != "no" ; then
  CFLAGS2="$CFLAGS"
  CFLAGS="$LIBNUMA_CFLAGS $CFLAGS"
  LDFLAGS2="$LDFLAGS"
  LDFLAGS="$LIBNUMA_LDFLAGS $LDFLAGS"

  ac_fn_c_check_header_compile "$LINENO" "numa.h" "ac_cv_header_numa_h" "$ac_includes_default"
if test "x$ac_cv_header_numa_h" = xyes
then :
  printf "%s\n" "#define HAVE_NUMA_H 1" >>confdefs.h

fi
ac_fn_c_check_header_compile "$LINENO" "numaif.h" "ac_cv_header_numaif_h" "$ac_includes_default"
if test "x$ac_cv_header_numaif_h" = xyes
then :
  printf "%s\n" "#define HAVE_NUMAIF_H 1" >>confdefs.h

fi


  if test "$ac_cv_header_numa_h$ac_cv_header_numaif_h" = "yesyes" ; then
    { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for numa_available in -lnuma" >&5
printf %s "checking for numa_available in -lnuma... " >&6; }
if test ${ac_cv_lib_numa_numa_available+y}
then :
  printf %s "(cached) " >&6
else $as_nop
  ac_check_lib_save_LIBS=$LIBS
LIBS="-lnuma  $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.  */
char numa_available ();
int
main (void)
{
return numa_available ();
  ;
  return 0;
}
_ACEOF
if ac_fn_c_try_link "$LINENO"
then :
  ac_cv_lib_numa_numa_available=yes
else $as_nop
  ac_cv_lib_numa_numa_available=no
fi
rm -f core conftest.err conftest.$ac_objext conftest.beam \
    conftest$ac_exeext conftest.$ac_ext
LIBS=$ac_check_lib_save_LIBS
fi
{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_numa_numa_available" >&5
printf "%s\n" "$ac_cv_lib_numa_numa_available" >&6; }
if test "x$ac_cv_lib_numa_numa_available" = xyes
then :
  HaveLibNuma=1
fi

  fi
  if test "$enable_numa:$HaveLibNuma" = "yes:0" ; then
      as_fn_error $? "Cannot find system libnuma (required by --enable-numa)" "$LINENO" 5]
  fi

  CFLAGS="$CFLAGS2"
  LDFLAGS="$LDFLAGS2"
fi


printf "%s\n" "#define HAVE_LIBNUMA $HaveLibNuma" >>confdefs.h

if test $HaveLibNuma = "1" ; then
  UseLibNuma=YES

  CabalHaveLibNuma=True

else
  UseLibNuma=NO

  CabalHaveLibNuma=False

fi

if test -n "$SPHINXBUILD"; then
    BUILD_MAN=YES
    BUILD_SPHINX_HTML=YES
    if test -n "$XELATEX" -a -n "$MAKEINDEX"; then
        BUILD_SPHINX_PDF=YES
    else
        BUILD_SPHINX_PDF=NO
    fi
    if test -n "$MAKEINFO"; then
        BUILD_SPHINX_INFO=YES
    else
        BUILD_SPHINX_INFO=NO
    fi
else
    BUILD_MAN=NO
    BUILD_SPHINX_HTML=NO
    BUILD_SPHINX_PDF=NO
    BUILD_SPHINX_INFO=NO
fi





cabal_file=base/base.cabal
LIBRARY_base_VERSION=`grep -i "^version:" libraries/${cabal_file} | sed "s/.* //"`



cabal_file=Cabal/Cabal/Cabal.cabal
LIBRARY_Cabal_VERSION=`grep -i "^version:" libraries/${cabal_file} | sed "s/.* //"`



cabal_file=template-haskell/template-haskell.cabal.in
LIBRARY_template_haskell_VERSION=`grep -i "^version:" libraries/${cabal_file} | sed "s/.* //"`



cabal_file=array/array.cabal
LIBRARY_array_VERSION=`grep -i "^version:" libraries/${cabal_file} | sed "s/.* //"`



cabal_file=ghc-prim/ghc-prim.cabal
LIBRARY_ghc_prim_VERSION=`grep -i "^version:" libraries/${cabal_file} | sed "s/.* //"`



cabal_file=ghc-compact/ghc-compact.cabal
LIBRARY_ghc_compact_VERSION=`grep -i "^version:" libraries/${cabal_file} | sed "s/.* //"`


LIBRARY_ghc_VERSION="$ProjectVersion"


if grep '	' compiler/ghc.cabal.in 2>&1 >/dev/null; then
   as_fn_error $? "compiler/ghc.cabal.in contains tab characters; please remove them" "$LINENO" 5
fi

# Create the configuration for the Hadrian build system if it is present
if test -e hadrian/cfg/system.config.in; then
    ac_config_files="$ac_config_files hadrian/cfg/system.config"

    ac_config_files="$ac_config_files hadrian/ghci-cabal hadrian/ghci-stack"

fi

# We got caught by
#     http://savannah.gnu.org/bugs/index.php?1516
#     $(eval ...) inside conditionals causes errors
# with make 3.80, so warn the user if it looks like they're about to
# try to use it.
# We would use "grep -q" here, but Solaris's grep doesn't support it.
print_make_warning=""
checkMake380() {
    make_ver=`$1 --version 2>&1 | head -1`
    if echo "$make_ver" | grep 'GNU Make 3\.80' > /dev/null
    then
        print_make_warning="true"
    fi
    if echo "$make_ver" | grep 'GNU Make' > /dev/null
    then
        MakeCmd=$1

    fi
}

checkMake380 make
checkMake380 gmake

ac_config_files="$ac_config_files mk/config.mk mk/install.mk mk/project.mk"


ac_config_files="$ac_config_files rts/rts.cabal compiler/ghc.cabal ghc/ghc-bin.cabal utils/runghc/runghc.cabal driver/ghci/ghci-wrapper.cabal utils/iserv/iserv.cabal utils/iserv-proxy/iserv-proxy.cabal utils/ghc-pkg/ghc-pkg.cabal utils/remote-iserv/remote-iserv.cabal utils/gen-dll/gen-dll.cabal libraries/ghc-boot/ghc-boot.cabal libraries/ghc-boot-th/ghc-boot-th.cabal libraries/ghci/ghci.cabal libraries/ghc-heap/ghc-heap.cabal libraries/libiserv/libiserv.cabal libraries/template-haskell/template-haskell.cabal docs/users_guide/ghc_config.py docs/index.html libraries/prologue.txt distrib/configure.ac"


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





: "${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
as_nop=:
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 $as_nop
  case `(set -o) 2>/dev/null` in #(
  *posix*) :
    set -o posix ;; #(
  *) :
     ;;
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 $as_nop
  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_nop
  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 ||
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_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 The Glorious Glasgow Haskell Compilation System $as_me 9.0.2, which was
generated by GNU Autoconf 2.71.  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"

_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

Report bugs to <glasgow-haskell-bugs@haskell.org>."

_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="\\
The Glorious Glasgow Haskell Compilation System config.status 9.0.2
configured by $0, generated by GNU Autoconf 2.71,
  with options \\"\$ac_cs_config\\"

Copyright (C) 2021 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'
INSTALL='$INSTALL'
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
_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
    "mk/config.h") CONFIG_HEADERS="$CONFIG_HEADERS mk/config.h" ;;
    "hadrian/cfg/system.config") CONFIG_FILES="$CONFIG_FILES hadrian/cfg/system.config" ;;
    "hadrian/ghci-cabal") CONFIG_FILES="$CONFIG_FILES hadrian/ghci-cabal" ;;
    "hadrian/ghci-stack") CONFIG_FILES="$CONFIG_FILES hadrian/ghci-stack" ;;
    "mk/config.mk") CONFIG_FILES="$CONFIG_FILES mk/config.mk" ;;
    "mk/install.mk") CONFIG_FILES="$CONFIG_FILES mk/install.mk" ;;
    "mk/project.mk") CONFIG_FILES="$CONFIG_FILES mk/project.mk" ;;
    "rts/rts.cabal") CONFIG_FILES="$CONFIG_FILES rts/rts.cabal" ;;
    "compiler/ghc.cabal") CONFIG_FILES="$CONFIG_FILES compiler/ghc.cabal" ;;
    "ghc/ghc-bin.cabal") CONFIG_FILES="$CONFIG_FILES ghc/ghc-bin.cabal" ;;
    "utils/runghc/runghc.cabal") CONFIG_FILES="$CONFIG_FILES utils/runghc/runghc.cabal" ;;
    "driver/ghci/ghci-wrapper.cabal") CONFIG_FILES="$CONFIG_FILES driver/ghci/ghci-wrapper.cabal" ;;
    "utils/iserv/iserv.cabal") CONFIG_FILES="$CONFIG_FILES utils/iserv/iserv.cabal" ;;
    "utils/iserv-proxy/iserv-proxy.cabal") CONFIG_FILES="$CONFIG_FILES utils/iserv-proxy/iserv-proxy.cabal" ;;
    "utils/ghc-pkg/ghc-pkg.cabal") CONFIG_FILES="$CONFIG_FILES utils/ghc-pkg/ghc-pkg.cabal" ;;
    "utils/remote-iserv/remote-iserv.cabal") CONFIG_FILES="$CONFIG_FILES utils/remote-iserv/remote-iserv.cabal" ;;
    "utils/gen-dll/gen-dll.cabal") CONFIG_FILES="$CONFIG_FILES utils/gen-dll/gen-dll.cabal" ;;
    "libraries/ghc-boot/ghc-boot.cabal") CONFIG_FILES="$CONFIG_FILES libraries/ghc-boot/ghc-boot.cabal" ;;
    "libraries/ghc-boot-th/ghc-boot-th.cabal") CONFIG_FILES="$CONFIG_FILES libraries/ghc-boot-th/ghc-boot-th.cabal" ;;
    "libraries/ghci/ghci.cabal") CONFIG_FILES="$CONFIG_FILES libraries/ghci/ghci.cabal" ;;
    "libraries/ghc-heap/ghc-heap.cabal") CONFIG_FILES="$CONFIG_FILES libraries/ghc-heap/ghc-heap.cabal" ;;
    "libraries/libiserv/libiserv.cabal") CONFIG_FILES="$CONFIG_FILES libraries/libiserv/libiserv.cabal" ;;
    "libraries/template-haskell/template-haskell.cabal") CONFIG_FILES="$CONFIG_FILES libraries/template-haskell/template-haskell.cabal" ;;
    "docs/users_guide/ghc_config.py") CONFIG_FILES="$CONFIG_FILES docs/users_guide/ghc_config.py" ;;
    "docs/index.html") CONFIG_FILES="$CONFIG_FILES docs/index.html" ;;
    "libraries/prologue.txt") CONFIG_FILES="$CONFIG_FILES libraries/prologue.txt" ;;
    "distrib/configure.ac") CONFIG_FILES="$CONFIG_FILES distrib/configure.ac" ;;

  *) 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
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    "
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
  #

  case $INSTALL in
  [\\/$]* | ?:[\\/]* ) ac_INSTALL=$INSTALL ;;
  *) ac_INSTALL=$ac_top_build_prefix$INSTALL ;;
  esac
_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
s&@INSTALL@&$ac_INSTALL&;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
 ;;


  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


if test "$print_make_warning" = "true"; then
   echo
   echo "WARNING: It looks like \"$MakeCmd\" is GNU make 3.80."
   echo "This version cannot be used to build GHC."
   echo "Please use GNU make >= 3.81."
fi

echo "
----------------------------------------------------------------------
Configure completed successfully.

   Building GHC version  : $ProjectVersion
          Git commit id  : $ProjectGitCommitId

   Build platform        : $BuildPlatform
   Host platform         : $HostPlatform
   Target platform       : $TargetPlatform
"

echo "\
   Bootstrapping using   : $WithGhc
      which is version   : $GhcVersion
      with threaded RTS? : $GhcThreadedRts
"

if test "x$CcLlvmBackend" = "xYES"; then
    CompilerName="clang        "
else
    CompilerName="gcc          "
fi

echo "\
   Using (for bootstrapping) : $CC_STAGE0
   Using $CompilerName       : $CC
      which is version       : $GccVersion
      linker options         : $GccUseLdOpt
   Building a cross compiler : $CrossCompiling
   Unregisterised            : $Unregisterised
   TablesNextToCode          : $TablesNextToCode
   Build GMP in tree         : $GMP_FORCE_INTREE
   hs-cpp       : $HaskellCPPCmd
   hs-cpp-flags : $HaskellCPPArgs
   ar           : $ArCmd
   ld           : $LdCmd
   nm           : $NmCmd
   libtool      : $LibtoolCmd
   objdump      : $ObjdumpCmd
   ranlib       : $RanlibCmd
   otool        : $OtoolCmd
   install_name_tool : $InstallNameToolCmd
   windres      : $WindresCmd
   dllwrap      : $DllWrapCmd
   genlib       : $GenlibCmd
   Happy        : $HappyCmd ($HappyVersion)
   Alex         : $AlexCmd ($AlexVersion)
   sphinx-build : $SPHINXBUILD
   xelatex      : $XELATEX
   makeinfo     : $MAKEINFO

   Using LLVM tools
      clang : $ClangCmd
      llc   : $LlcCmd
      opt   : $OptCmd"

if test "$HSCOLOUR" = ""; then
echo "
   HsColour was not found; documentation will not contain source links
"
else
echo "\
   HsColour : $HSCOLOUR
"
fi

echo "\
   Tools to build Sphinx HTML documentation available: $BUILD_SPHINX_HTML
   Tools to build Sphinx PDF documentation available: $BUILD_SPHINX_PDF
   Tools to build Sphinx INFO documentation available: $BUILD_SPHINX_INFO"

echo "----------------------------------------------------------------------
"

echo "\
For a standard build of GHC (fully optimised with profiling), type (g)make.

To make changes to the default build configuration, copy the file
mk/build.mk.sample to mk/build.mk, and edit the settings in there.

For more information on how to configure your GHC build, see
   https://gitlab.haskell.org/ghc/ghc/wikis/building
"

