From: Kevin Cernekee Date: Wed, 5 Mar 2014 20:10:56 +0000 (-0800) Subject: stdint, read-file: fix missing SIZE_MAX on Android (tiny change) X-Git-Tag: v1.0~7422 X-Git-Url: https://gitweb.git.savannah.gnu.org/gitweb/?a=commitdiff_plain;h=cb3c90598c13d3db616c0c1e62c5d59ed80b069d;p=gnulib.git stdint, read-file: fix missing SIZE_MAX on Android (tiny change) This is basically one of the options Bruno Haible proposed in: http://lists.gnu.org/archive/html/bug-gnulib/2012-01/msg00282.html * lib/sys_types.in.h (_GL_INCLUDING_UNISTD_H): New macro. * lib/stdint.in.h: Use it. * modules/stdint (Depends-on): Add sys_types. --- diff --git a/ChangeLog b/ChangeLog index 4e1984ca03..17b9b886a5 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,15 @@ +2014-03-04 Kevin Cernekee + + stdint, read-file: fix missing SIZE_MAX on Android + * lib/sys_types.in.h (_GL_INCLUDING_UNISTD_H): New macro, to work + around potential circular dependencies when stdint.h is included + by the system's sys/types.h. + * lib/stdint.in.h: Use _GL_INCLUDING_UNISTD_H to figure out if + we're being included from sys/types.h, as merely checking + _SYS_TYPES_H_ could return true if sys/types.h had been previously + included. + * modules/stdint (Depends-on): Add sys_types. + 2014-02-26 Pádraig Brady parse-datetime: fix crash or infloop in TZ="" parsing diff --git a/lib/stdint.in.h b/lib/stdint.in.h index 91fad37d65..98ee423b18 100644 --- a/lib/stdint.in.h +++ b/lib/stdint.in.h @@ -38,8 +38,7 @@ other system header files; just include the system's . Ideally we should test __BIONIC__ here, but it is only defined after has been included; hence test __ANDROID__ instead. */ -#if defined __ANDROID__ \ - && defined _SYS_TYPES_H_ && !defined __need_size_t +#if defined __ANDROID__ && defined _GL_INCLUDING_SYS_TYPES_H # @INCLUDE_NEXT@ @NEXT_STDINT_H@ #else diff --git a/lib/sys_types.in.h b/lib/sys_types.in.h index 803d7b19a4..b3bf9f2092 100644 --- a/lib/sys_types.in.h +++ b/lib/sys_types.in.h @@ -23,7 +23,9 @@ #ifndef _@GUARD_PREFIX@_SYS_TYPES_H /* The include_next requires a split double-inclusion guard. */ +# define _GL_INCLUDING_SYS_TYPES_H #@INCLUDE_NEXT@ @NEXT_SYS_TYPES_H@ +# undef _GL_INCLUDING_SYS_TYPES_H #ifndef _@GUARD_PREFIX@_SYS_TYPES_H #define _@GUARD_PREFIX@_SYS_TYPES_H diff --git a/modules/stdint b/modules/stdint index 92eb59f948..62a57973aa 100644 --- a/modules/stdint +++ b/modules/stdint @@ -14,6 +14,7 @@ m4/longlong.m4 Depends-on: include_next multiarch +sys_types configure.ac: gl_STDINT_H