3501f7739b53d5d969b22db0b0da80c24ce4f06b
[gnulib.git] / m4 / uintmax_t.m4
1 #serial 2
2
3 dnl From Paul Eggert.
4
5 AC_PREREQ(2.13)
6
7 # Define uintmax_t to `unsigned long' or `unsigned long long'
8 # if <inttypes.h> does not exist.
9
10 AC_DEFUN(jm_AC_TYPE_UINTMAX_T,
11 [
12   AC_REQUIRE([jm_AC_HEADER_INTTYPES_H])
13   if test $jm_ac_cv_header_inttypes_h = no; then
14     AC_CACHE_CHECK([for unsigned long long], ac_cv_type_unsigned_long_long,
15     [AC_TRY_COMPILE([],
16       [unsigned long long i = (unsigned long long) -1;],
17       ac_cv_type_unsigned_long_long=yes,
18       ac_cv_type_unsigned_long_long=no)])
19     test $ac_cv_type_unsigned_long_long = yes \
20       && ac_type='unsigned long long' \
21       || ac_type='unsigned long'
22     AC_DEFINE_UNQUOTED(uintmax_t, $ac_type,
23 [  Define to \`unsigned long' or \`unsigned long long'
24    if <inttypes.h> doesn't define.])
25   fi
26 ])