summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--ChangeLog5
-rw-r--r--configure.in7
-rw-r--r--ruby.h18
3 files changed, 10 insertions, 20 deletions
diff --git a/ChangeLog b/ChangeLog
index 8e499ec3e0..b6213eb6e0 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,8 @@
+Sun May 15 18:56:35 2005 Nobuyoshi Nakada <nobu@ruby-lang.org>
+
+ * configure.in, ruby.h: define rb_[pgu]id_t macros instead of typedefs
+ to get rid of types which might not be defined yet. [ruby-dev:26165]
+
Sun May 15 14:35:46 2005 Tanaka Akira <akr@m17n.org>
* lib/pathname.rb (Pathname#unlink): unlink a symlink to a directory
diff --git a/configure.in b/configure.in
index 10e783e1ac..4e0dc1490b 100644
--- a/configure.in
+++ b/configure.in
@@ -1,7 +1,7 @@
dnl Process this file with autoconf to produce a configure script.
AC_INIT()
-AC_PREREQ(2.50)
+AC_PREREQ(2.58)
AC_DEFUN(RUBY_MINGW32,
[case "$host_os" in
@@ -230,7 +230,10 @@ AC_CHECK_SIZEOF(float, 4)
AC_CHECK_SIZEOF(double, 8)
AC_CHECK_SIZEOF(time_t, 0)
-AC_CHECK_TYPES([pid_t, gid_t, uid_t])
+for id in pid_t gid_t uid_t; do
+ AC_CHECK_TYPE($id, [typ=$id], [typ=int])
+ AC_DEFINE_UNQUOTED(rb_$id, $typ)
+done
AC_CACHE_CHECK(for prototypes, rb_cv_have_prototypes,
[AC_TRY_COMPILE([int foo(int x) { return 0; }], [return foo(10);],
diff --git a/ruby.h b/ruby.h
index c5dcbff219..db3280b905 100644
--- a/ruby.h
+++ b/ruby.h
@@ -76,24 +76,6 @@ extern "C" {
typedef unsigned long VALUE;
typedef unsigned long ID;
-#ifndef HAVE_PID_T
- typedef int rb_pid_t;
-#else
- typedef pid_t rb_pid_t;
-#endif
-
-#ifndef HAVE_GID_T
- typedef int rb_gid_t;
-#else
- typedef gid_t rb_gid_t;
-#endif
-
-#ifndef HAVE_UID_T
- typedef int rb_uid_t;
-#else
- typedef uid_t rb_uid_t;
-#endif
-
#ifdef __STDC__
# include <limits.h>
#else