changeset 14314:289c9659c1c4

stdlib: don't depend on stdint * lib/stdlib.in.h: Don't include <stdint.h> merely because GNULIB_POSIXCHECK is defined. GNULIB_POSIXCHECK seems to be independent of whether stdint.h is needed. * m4/random_r.m4 (gl_FUNC_RANDOM_R): Check for struct random_data here, instead of ... * m4/stdlib_h.m4 (gl_STDLIB_H): ... here. Applications that need struct random_data should be using the random_r module, not just the stdlib module (which wouldn't make sense: what package needs just struct random_data without also needing random_r?). * modules/stdlib (Depends-on): Remove stdint.
author Paul Eggert <eggert@cs.ucla.edu>
date Tue, 08 Feb 2011 12:24:48 -0800
parents dd51e283d6cd
children 27fdb01a2e2e
files ChangeLog lib/stdlib.in.h m4/random_r.m4 m4/stdlib_h.m4 modules/stdlib
diffstat 5 files changed, 24 insertions(+), 12 deletions(-) [+]
line wrap: on
line diff
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,5 +1,17 @@
 2011-02-08  Paul Eggert  <eggert@cs.ucla.edu>
 
+	stdlib: don't depend on stdint
+	* lib/stdlib.in.h: Don't include <stdint.h> merely because
+	GNULIB_POSIXCHECK is defined.  GNULIB_POSIXCHECK seems to
+	be independent of whether stdint.h is needed.
+	* m4/random_r.m4 (gl_FUNC_RANDOM_R): Check for struct random_data
+	here, instead of ...
+	* m4/stdlib_h.m4 (gl_STDLIB_H): ... here.  Applications that need
+	struct random_data should be using the random_r module, not just
+	the stdlib module (which wouldn't make sense: what package needs
+	just struct random_data without also needing random_r?).
+	* modules/stdlib (Depends-on): Remove stdint.
+
 	getloadavg: don't depend on c-strtod, cloexec, fcntl-safer
 	See the thread rooted at
 	<http://lists.gnu.org/archive/html/bug-gnulib/2011-02/msg00090.html>.
--- a/lib/stdlib.in.h
+++ b/lib/stdlib.in.h
@@ -55,8 +55,7 @@
 # include <random.h>
 #endif
 
-#if !@HAVE_STRUCT_RANDOM_DATA@ || (@GNULIB_RANDOM_R@ && !@HAVE_RANDOM_R@) \
-    || defined GNULIB_POSIXCHECK
+#if !@HAVE_STRUCT_RANDOM_DATA@ || (@GNULIB_RANDOM_R@ && !@HAVE_RANDOM_R@)
 # include <stdint.h>
 #endif
 
--- a/m4/random_r.m4
+++ b/m4/random_r.m4
@@ -1,4 +1,4 @@
-# serial 1
+# serial 2
 dnl Copyright (C) 2008-2011 Free Software Foundation, Inc.
 dnl This file is free software; the Free Software Foundation
 dnl gives unlimited permission to copy and/or distribute it,
@@ -7,6 +7,15 @@
 AC_DEFUN([gl_FUNC_RANDOM_R],
 [
   AC_REQUIRE([gl_STDLIB_H_DEFAULTS])
+
+  AC_CHECK_TYPES([struct random_data],
+    [], [HAVE_STRUCT_RANDOM_DATA=0],
+    [[#include <stdlib.h>
+      #if HAVE_RANDOM_H
+      # include <random.h>
+      #endif
+    ]])
+
   AC_CHECK_FUNCS([random_r])
   if test $ac_cv_func_random_r = no; then
     HAVE_RANDOM_R=0
--- a/m4/stdlib_h.m4
+++ b/m4/stdlib_h.m4
@@ -1,4 +1,4 @@
-# stdlib_h.m4 serial 34
+# stdlib_h.m4 serial 35
 dnl Copyright (C) 2007-2011 Free Software Foundation, Inc.
 dnl This file is free software; the Free Software Foundation
 dnl gives unlimited permission to copy and/or distribute it,
@@ -15,13 +15,6 @@
     HAVE_RANDOM_H=0
   fi
   AC_SUBST([HAVE_RANDOM_H])
-  AC_CHECK_TYPES([struct random_data],
-    [], [HAVE_STRUCT_RANDOM_DATA=0],
-    [[#include <stdlib.h>
-      #if HAVE_RANDOM_H
-      # include <random.h>
-      #endif
-    ]])
 
   dnl Check for declarations of anything we want to poison if the
   dnl corresponding gnulib module is not in use, and which is not
--- a/modules/stdlib
+++ b/modules/stdlib
@@ -10,7 +10,6 @@
 c++defs
 include_next
 stddef
-stdint
 unistd
 warn-on-use