]> git.cworth.org Git - tar/blob - m4/strtoumax.m4
upstream: Fix extraction of device nodes.
[tar] / m4 / strtoumax.m4
1 # strtoumax.m4 serial 7
2 dnl Copyright (C) 2002, 2003, 2004, 2006, 2009, 2010 Free Software Foundation,
3 dnl Inc.
4 dnl This file is free software; the Free Software Foundation
5 dnl gives unlimited permission to copy and/or distribute it,
6 dnl with or without modifications, as long as this notice is preserved.
7
8 AC_DEFUN([gl_FUNC_STRTOUMAX],
9 [
10   dnl Work around a bug of AC_EGREP_CPP in autoconf-2.57.
11   AC_REQUIRE([AC_PROG_CPP])
12   AC_REQUIRE([AC_PROG_EGREP])
13
14   AC_CACHE_CHECK([whether <inttypes.h> defines strtoumax as a macro],
15     gl_cv_func_strtoumax_macro,
16     [AC_EGREP_CPP([inttypes_h_defines_strtoumax], [#include <inttypes.h>
17 #ifdef strtoumax
18  inttypes_h_defines_strtoumax
19 #endif],
20        gl_cv_func_strtoumax_macro=yes,
21        gl_cv_func_strtoumax_macro=no)])
22
23   if test "$gl_cv_func_strtoumax_macro" != yes; then
24     AC_REPLACE_FUNCS([strtoumax])
25     if test $ac_cv_func_strtoumax = no; then
26       gl_PREREQ_STRTOUMAX
27     fi
28   fi
29 ])
30
31 # Prerequisites of lib/strtoumax.c.
32 AC_DEFUN([gl_PREREQ_STRTOUMAX], [
33   AC_CHECK_DECLS([strtoull])
34   AC_REQUIRE([AC_TYPE_UNSIGNED_LONG_LONG_INT])
35 ])