[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
PATCH to stdint_.h for OpenBSD Sparc64
From: |
Mark D. Baushke |
Subject: |
PATCH to stdint_.h for OpenBSD Sparc64 |
Date: |
Sun, 26 Mar 2006 22:06:06 -0800 |
Hi Folks,
For this is the bug report:
<http://savannah.nongnu.org/bugs/?func=detailitem&item_id=15040>
CVS needs the following patch applied to GNULIB/lib/stdlib_.h
Apparently, OpenBSD puts the standard exact-width integer types into
/usr/include/machine/int_types.h which is included by both <sys/types.h>
and <stddef.h>.
Alex has verified that the patch below fixes his problem building CVS on
his OpenBSD box.
Thanks,
-- Mark
2006-03-26 Mark D. Baushke <address@hidden>
* stdint_.h: Protect against OpenBSD integer types from
<sys/types.h>.
Index: stdint_.h
===================================================================
RCS file: /cvsroot/cvs/ccvs/lib/stdint_.h,v
retrieving revision 1.5
diff -u -p -u -p -r1.5 stdint_.h
--- stdint_.h 25 Jan 2006 12:53:38 -0000 1.5
+++ stdint_.h 27 Mar 2006 02:20:56 -0000
@@ -33,6 +33,9 @@
#if defined(__FreeBSD__)
# include <sys/inttypes.h>
#endif
+#if defined(__OpenBSD__)
+# include <sys/types.h>
+#endif
#if defined(__linux__) && HAVE_SYS_BITYPES_H
/* Linux libc4 >= 4.6.7 and libc5 have a <sys/bitypes.h> that defines
int{8,16,32,64}_t and __BIT_TYPES_DEFINED__. In libc5 >= 5.2.2 it is
@@ -62,7 +65,7 @@
/* 7.18.1.1. Exact-width integer types */
-#if !defined(__FreeBSD__)
+#if !defined(__FreeBSD__) && !defined(__OpenBSD__)
#ifdef _STDINT_H_NEED_SIGNED_INT_TYPES
typedef signed char int8_t;
@@ -97,7 +100,7 @@ typedef unsigned __int64 uint64_t;
#define _STDINT_H_HAVE_INT64
#endif
-#endif /* !FreeBSD */
+#endif /* !FreeBSD && !OpenBSD */
/* 7.18.1.2. Minimum-width integer types */
@@ -127,14 +130,14 @@ typedef uint64_t uint_fast64_t;
/* 7.18.1.4. Integer types capable of holding object pointers */
-#if !defined(__FreeBSD__)
+#if !defined(__FreeBSD__) && !defined(__OpenBSD__)
/* On some platforms (like IRIX6 MIPS with -n32) sizeof(void*) < sizeof(long),
but this doesn't matter here. */
typedef long intptr_t;
typedef unsigned long uintptr_t;
-#endif /* !FreeBSD */
+#endif /* !FreeBSD && !OpenBSD */
/* 7.18.1.5. Greatest-width integer types */