Adjust behaviour of gcd
[ghc-base.git] / aclocal.m4
index 7278320..a8f5412 100644 (file)
@@ -7,8 +7,10 @@
 # Implementation note: We are lazy and use an internal autoconf macro, but it
 # is supported in autoconf versions 2.50 up to the actual 2.57, so there is
 # little risk.
+# The public AC_COMPUTE_INT macro isn't supported by some versions of
+# autoconf.
 AC_DEFUN([FP_COMPUTE_INT],
-[_AC_COMPUTE_INT([$1], [$2], [$3], [$4])[]dnl
+[_AC_COMPUTE_INT([$2], [$1], [$3], [$4])[]dnl
 ])# FP_COMPUTE_INT
 
 
@@ -19,7 +21,7 @@ AC_DEFUN([FP_COMPUTE_INT],
 AC_DEFUN([FP_CHECK_CONST],
 [AS_VAR_PUSHDEF([fp_Cache], [fp_cv_const_$1])[]dnl
 AC_CACHE_CHECK([value of $1], fp_Cache,
-[FP_COMPUTE_INT([$1], fp_check_const_result, [AC_INCLUDES_DEFAULT([$2])],
+[FP_COMPUTE_INT(fp_check_const_result, [$1], [AC_INCLUDES_DEFAULT([$2])],
                 [fp_check_const_result=m4_default([$3], ['-1'])])
 AS_VAR_SET(fp_Cache, [$fp_check_const_result])])[]dnl
 AC_DEFINE_UNQUOTED(AS_TR_CPP([CONST_$1]), AS_VAR_GET(fp_Cache), [The value of $1.])[]dnl
@@ -110,8 +112,8 @@ AC_DEFUN([FPTOOLS_HTYPE_INCLUDES],
 dnl ** Map an arithmetic C type to a Haskell type.
 dnl    Based on autconf's AC_CHECK_SIZEOF.
 
-dnl FPTOOLS_CHECK_HTYPE(TYPE [, DEFAULT_VALUE ])
-AC_DEFUN([FPTOOLS_CHECK_HTYPE],[
+dnl FPTOOLS_CHECK_HTYPE_ELSE(TYPE, WHAT_TO_DO_IF_TYPE_DOES_NOT_EXIST)
+AC_DEFUN([FPTOOLS_CHECK_HTYPE_ELSE],[
     changequote(<<, >>)
     dnl The name to #define.
     define(<<AC_TYPE_NAME>>, translit(htype_$1, [a-z *], [A-Z_P]))
@@ -123,20 +125,20 @@ AC_DEFUN([FPTOOLS_CHECK_HTYPE],[
     AC_MSG_CHECKING(Haskell type for $1)
     AC_CACHE_VAL(AC_CV_NAME,[
         AC_CV_NAME_supported=yes
-        AC_COMPUTE_INT([HTYPE_IS_INTEGRAL],
+        FP_COMPUTE_INT([HTYPE_IS_INTEGRAL],
                        [(($1)((int)(($1)1.4))) == (($1)1.4)],
                        [FPTOOLS_HTYPE_INCLUDES],[AC_CV_NAME_supported=no])
         if test "$AC_CV_NAME_supported" = "yes"
         then
             if test "$HTYPE_IS_INTEGRAL" -eq 0
             then
-                AC_COMPUTE_INT([HTYPE_IS_FLOAT],[sizeof($1) == sizeof(float)],
+                FP_COMPUTE_INT([HTYPE_IS_FLOAT],[sizeof($1) == sizeof(float)],
                                [FPTOOLS_HTYPE_INCLUDES],
                                [AC_CV_NAME_supported=no])
-                AC_COMPUTE_INT([HTYPE_IS_DOUBLE],[sizeof($1) == sizeof(double)],
+                FP_COMPUTE_INT([HTYPE_IS_DOUBLE],[sizeof($1) == sizeof(double)],
                                [FPTOOLS_HTYPE_INCLUDES],
                                [AC_CV_NAME_supported=no])
-                AC_COMPUTE_INT([HTYPE_IS_LDOUBLE],[sizeof($1) == sizeof(long double)],
+                FP_COMPUTE_INT([HTYPE_IS_LDOUBLE],[sizeof($1) == sizeof(long double)],
                                [FPTOOLS_HTYPE_INCLUDES],
                                [AC_CV_NAME_supported=no])
                 if test "$HTYPE_IS_FLOAT" -eq 1
@@ -152,10 +154,10 @@ AC_DEFUN([FPTOOLS_CHECK_HTYPE],[
                     AC_CV_NAME_supported=no
                 fi
             else
-                AC_COMPUTE_INT([HTYPE_IS_SIGNED],[(($1)(-1)) < (($1)0)],
+                FP_COMPUTE_INT([HTYPE_IS_SIGNED],[(($1)(-1)) < (($1)0)],
                                [FPTOOLS_HTYPE_INCLUDES],
                                [AC_CV_NAME_supported=no])
-                AC_COMPUTE_INT([HTYPE_SIZE],[sizeof($1) * 8],
+                FP_COMPUTE_INT([HTYPE_SIZE],[sizeof($1) * 8],
                                [FPTOOLS_HTYPE_INCLUDES],
                                [AC_CV_NAME_supported=no])
                 if test "$HTYPE_IS_SIGNED" -eq 0
@@ -172,14 +174,21 @@ AC_DEFUN([FPTOOLS_CHECK_HTYPE],[
         AC_DEFINE_UNQUOTED(AC_TYPE_NAME, $AC_CV_NAME,
                            [Define to Haskell type for $1])
     else
-        AC_CV_NAME=NotReallyAType
-        AC_MSG_RESULT([not supported])
+        $2
     fi
     undefine([AC_TYPE_NAME])dnl
     undefine([AC_CV_NAME])dnl
     undefine([AC_CV_NAME_supported])dnl
 ])
 
+dnl FPTOOLS_CHECK_HTYPE(TYPE)
+AC_DEFUN([FPTOOLS_CHECK_HTYPE],[
+    FPTOOLS_CHECK_HTYPE_ELSE([$1],[
+        AC_CV_NAME=NotReallyAType
+        AC_MSG_RESULT([not supported])
+    ])
+])
+
 
 # FP_SEARCH_LIBS_PROTO(WHAT, PROTOTYPE, FUNCTION, SEARCH-LIBS,
 #                [ACTION-IF-FOUND], [ACTION-IF-NOT-FOUND],