changeset 1797:c5fb6cab68ec

Require jm_AC_TYPE_UNSIGNED_LONG_LONG. Replace xstroull if necessary.
author Jim Meyering <jim@meyering.net>
date Wed, 21 Apr 1999 04:00:38 +0000
parents e8013bcb6a9a
children c9b3ff225f84
files m4/xstrtoumax.m4
diffstat 1 files changed, 14 insertions(+), 1 deletions(-) [+]
line wrap: on
line diff
--- a/m4/xstrtoumax.m4
+++ b/m4/xstrtoumax.m4
@@ -4,7 +4,20 @@
 
 AC_DEFUN(jm_AC_PREREQ_XSTRTOUMAX,
 [
-  jm_AC_HEADER_INTTYPES_H
+  AC_REQUIRE([jm_AC_HEADER_INTTYPES_H])
+  AC_REQUIRE([jm_AC_TYPE_UNSIGNED_LONG_LONG])
   AC_CHECK_HEADERS(stdlib.h)
   AC_CHECK_FUNCS(strtoull strtoumax strtouq)
+  AC_REPLACE_FUNCS(strtoumax)
+
+  dnl We don't need (and can't compile) the replacement strtoull
+  dnl unless the type `unsigned long long' exists.
+  dnl Also, only the replacement strtoumax invokes strtoull,
+  dnl so we need the replacement strtoull only if strtoumax does not exist.
+  case "$ac_cv_type_unsigned_long_long,$ac_cv_func_strtoumax" in
+    yes,no)
+      AC_REPLACE_FUNCS(strtoull)
+      ;;
+  esac
+
 ])