From f0972c2658a5335dd6c55049501effb8f5850ce6 Mon Sep 17 00:00:00 2001 From: Bruno Haible Date: Mon, 2 Jul 2007 23:28:02 +0000 Subject: [PATCH] Ensure that defines all the *_MAX and *_MIN macros that gnulib's inttypes.h requires. --- ChangeLog | 6 ++++++ m4/inttypes.m4 | 18 +++++++++++++++++- 2 files changed, 23 insertions(+), 1 deletion(-) diff --git a/ChangeLog b/ChangeLog index cc270c812..0e234dc69 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,9 @@ +2007-07-02 Bruno Haible + + * m4/inttypes.m4 (gl_INTTYPES_H): Define __STDC_LIMIT_MACROS in C++ + mode, when inttypes.h comes from gnulib. + Reported by Joel E. Denny . + 2007-07-02 Simon Josefsson * NEWS: Mention lgpl module name change. diff --git a/m4/inttypes.m4 b/m4/inttypes.m4 index 05f2b2db1..a944659e3 100644 --- a/m4/inttypes.m4 +++ b/m4/inttypes.m4 @@ -1,4 +1,4 @@ -# inttypes.m4 serial 9 +# inttypes.m4 serial 10 dnl Copyright (C) 2006-2007 Free Software Foundation, Inc. dnl This file is free software; the Free Software Foundation dnl gives unlimited permission to copy and/or distribute it, @@ -144,6 +144,22 @@ const char *l = /* implicit string concatenation */ AC_REQUIRE([gl_INTTYPES_H_DEFAULTS]) gl_CHECK_NEXT_HEADERS([inttypes.h]) + dnl Ensure that defines the limit macros, since gnulib's + dnl relies on them. This macro is only needed when a + dnl C++ compiler is in use; it has no effect for a C compiler. + dnl Also be careful to define __STDC_LIMIT_MACROS only when gnulib's + dnl is going to be created, and to avoid redefinition warnings + dnl if the __STDC_LIMIT_MACROS is already defined through the CPPFLAGS. + AC_DEFINE([__STDC_LIMIT_MACROS_TRIGGER], 1, + [Define to make the limit macros in visible.]) + AH_VERBATIM([__STDC_LIMIT_MACROS_ZZZ], +[/* Ensure that defines the limit macros, since gnulib's + relies on them. */ +#if defined __cplusplus && !defined __STDC_LIMIT_MACROS && __STDC_LIMIT_MACROS_TRIGGER +# define __STDC_LIMIT_MACROS 1 +#endif +]) + PRIPTR_PREFIX= if test -n "$STDINT_H"; then dnl Using the gnulib . It always defines intptr_t to 'long'. -- 2.11.0