]> Dogcows Code - chaz/tar/commitdiff
Initial revision
authorPaul Eggert <eggert@cs.ucla.edu>
Sat, 18 Aug 2001 15:59:02 +0000 (15:59 +0000)
committerPaul Eggert <eggert@cs.ucla.edu>
Sat, 18 Aug 2001 15:59:02 +0000 (15:59 +0000)
m4/inttypes.m4 [new file with mode: 0644]

diff --git a/m4/inttypes.m4 b/m4/inttypes.m4
new file mode 100644 (file)
index 0000000..536c31f
--- /dev/null
@@ -0,0 +1,56 @@
+#serial 6
+
+dnl From Paul Eggert.
+
+AC_PREREQ(2.13)
+
+# Define HAVE_INTTYPES_H if <inttypes.h> exists,
+# doesn't clash with <sys/types.h>, and declares intmax_t and uintmax_t.
+
+AC_DEFUN([jm_AC_HEADER_INTTYPES_H],
+[
+  AC_CACHE_CHECK([for inttypes.h], jm_ac_cv_header_inttypes_h,
+  [AC_TRY_COMPILE(
+    [#include <sys/types.h>
+#include <inttypes.h>],
+    [intmax_t i = (intmax_t) -1; uintmax_t ui = (uintmax_t) -1;],
+    jm_ac_cv_header_inttypes_h=yes,
+    jm_ac_cv_header_inttypes_h=no)])
+  if test $jm_ac_cv_header_inttypes_h = yes; then
+    AC_DEFINE_UNQUOTED(HAVE_INTTYPES_H, 1,
+[Define if <inttypes.h> exists, doesn't clash with <sys/types.h>,
+   and declares intmax_t and uintmax_t.])
+  fi
+])
+
+# Define intmax_t to long or long long if <inttypes.h> doesn't define.
+
+AC_DEFUN([jm_AC_TYPE_INTMAX_T],
+[
+  AC_REQUIRE([jm_AC_HEADER_INTTYPES_H])
+  if test $jm_ac_cv_header_inttypes_h = no; then
+    AC_REQUIRE([jm_AC_TYPE_LONG_LONG])
+    test $ac_cv_type_long_long = yes \
+      && ac_type='long long' \
+      || ac_type='long'
+    AC_DEFINE_UNQUOTED(intmax_t, $ac_type,
+      [Define to long or long long if <inttypes.h> doesn't define.])
+  fi
+])
+
+# Define uintmax_t to unsigned long or unsigned long long
+# if <inttypes.h> doesn't define.
+
+AC_DEFUN([jm_AC_TYPE_UINTMAX_T],
+[
+  AC_REQUIRE([jm_AC_HEADER_INTTYPES_H])
+  if test $jm_ac_cv_header_inttypes_h = no; then
+    AC_REQUIRE([jm_AC_TYPE_UNSIGNED_LONG_LONG])
+    test $ac_cv_type_unsigned_long_long = yes \
+      && ac_type='unsigned long long' \
+      || ac_type='unsigned long'
+    AC_DEFINE_UNQUOTED(uintmax_t, $ac_type,
+[Define to unsigned long or unsigned long long
+   if <inttypes.h> doesn't define.])
+  fi
+])
This page took 0.02513 seconds and 4 git commands to generate.