[project @ 1998-05-11 11:21:46 by simonm]
[ghc-hetmet.git] / configure.in
index 97acf32..cc4160f 100644 (file)
@@ -281,6 +281,19 @@ dnl AC_SUBST(TargetVendor_CPP)
 
 AC_SUBST(exeext)
 
+dnl * Booting from .hc files?
+#--------------------------------------------------------------
+AC_ARG_ENABLE(hc-boot,
+   [
+Boot the Glasgow Haskell Compiler from intermediate .hc files.
+(This option is mostly of interest for porters.)
+   ],
+
+   BootingFromHc=YES,
+   BootingFromHc=NO
+)
+AC_SUBST(BootingFromHc)
+
 # -------------------------------------------------------------------------
 dnl
 dnl * _GENERAL_ CONFIGURATION CHECKS
@@ -399,19 +412,12 @@ fi
 AC_SUBST(CompressCmd)
 AC_SUBST(CompressSuffix)
 
-#
+dnl
 dnl ** check for installed happy binary + version
-#
+dnl    (don't do it if we're booting from .hc files though.)
+if (test "$BootingFromHc" = "NO"); then
 AC_HAPPY
-
-if test x"$HappyCmd" != x; then
-   if expr $HappyVersion \< "1.3" >/dev/null; then
-       echo "   Happy Version 1.3 or later is required to compile GHC."
-       echo "   Using the Happy sources in the tree.";
-       HappyCmd=""
-   fi
-fi
-
+fi;
 #
 #
 dnl ** check for installed lx binary
@@ -443,25 +449,47 @@ dnl ** how do we get a timezone name, and UTC offset ?
 AC_STRUCT_TIMEZONE
 
 # 
-dnl what's the type of timezone?
+dnl ** what's the type of timezone?
 AC_TYPE_TIMEZONE
 
 #
-dnl do we have altzone?
+dnl ** do we have altzone?
 AC_ALTZONE
 
+dnl ** what are the sizes of various types
+dnl    (these must come before GHC_CHECK_ALIGNMENT)
+AC_CHECK_SIZEOF(unsigned int,4)
+AC_CHECK_SIZEOF(float,       4)
+AC_CHECK_SIZEOF(double,      8)
+AC_CHECK_SIZEOF(long,        4)
+AC_CHECK_SIZEOF(void *,      4)
+
+dnl ** what are alignment constraints on various types
+GHC_CHECK_ALIGNMENT(unsigned int) dnl redundant but harmless
+GHC_CHECK_ALIGNMENT(long)
+GHC_CHECK_ALIGNMENT(float)
+GHC_CHECK_ALIGNMENT(double)
+
 #
 dnl ** check for specific library functions that we are interested in
 #
 AC_CHECK_FUNCS(access ftime getclock getpagesize getrusage gettimeofday mktime mprotect setitimer stat sysconf timelocal times vadvise vfork)
 
 #
+dnl ** check whether this machine has GMP 2.0 installed
+#
+AC_CHECK_LIB(gmp, mpz_fdiv_qr, HaveLibGmp=YES, HaveLibGmp=NO)
+AC_SUBST(HaveLibGmp)
+
+#
 # Misc
 #
 dnl ** can we get alloca?
 AC_FUNC_ALLOCA
 dnl ** determine whether or not const works
 AC_C_CONST
+dnl ** are we big endian?
+AC_C_BIGENDIAN
 dnl ** determine the type of signal()
 AC_TYPE_SIGNAL