Hash :
522efb3b
Author :
Date :
2001-08-18T15:59:02
Add AC_PREREQ(2.13). (jm_AC_HEADER_INTTYPES_H): Test for intmax_t, too. (jm_AC_TYPE_INTMAX_T): New macro. (jm_AC_TYPE_UINTMAX_T): Moved here from uintmax_t.m4.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 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
])