Cygwin: posix_getdents: implement per SUS Base Specifications Issue 8 draft
[newlib-cygwin.git] / config / uintmax_t.m4
blobb5f28d4404a28ff1464347bc055a4de5c0c877b7
1 # uintmax_t.m4 serial 7 (gettext-0.12)
2 dnl Copyright (C) 1997-2003 Free Software Foundation, Inc.
3 dnl This file is free software, distributed under the terms of the GNU
4 dnl General Public License.  As a special exception to the GNU General
5 dnl Public License, this file may be distributed as part of a program
6 dnl that contains a configuration script generated by Autoconf, under
7 dnl the same distribution terms as the rest of that program.
9 dnl From Paul Eggert.
11 AC_PREREQ(2.13)
13 # Define uintmax_t to 'unsigned long' or 'unsigned long long'
14 # if it is not already defined in <stdint.h> or <inttypes.h>.
16 AC_DEFUN([jm_AC_TYPE_UINTMAX_T],
18   AC_REQUIRE([jm_AC_HEADER_INTTYPES_H])
19   AC_REQUIRE([jm_AC_HEADER_STDINT_H])
20   if test $jm_ac_cv_header_inttypes_h = no && test $jm_ac_cv_header_stdint_h = no; then
21     AC_REQUIRE([jm_AC_TYPE_UNSIGNED_LONG_LONG])
22     test $ac_cv_type_unsigned_long_long = yes \
23       && ac_type='unsigned long long' \
24       || ac_type='unsigned long'
25     AC_DEFINE_UNQUOTED(uintmax_t, $ac_type,
26       [Define to unsigned long or unsigned long long
27        if <stdint.h> and <inttypes.h> don't define.])
28   else
29     AC_DEFINE(HAVE_UINTMAX_T, 1,
30       [Define if you have the 'uintmax_t' type in <stdint.h> or <inttypes.h>.])
31   fi