fix up include/linux/types.h for user space stuff (patch from debian), fixes #1008

SVN-Revision: 5724
This commit is contained in:
Felix Fietkau 2006-12-08 15:58:15 +00:00
parent bc4c9e6095
commit 3264c50c3a

View file

@ -0,0 +1,64 @@
Taken from Debian linux-kernel-headers package
Update 2005-05-05 gotom, add __extension__ for linux/types.h.
--- linux.old/include/linux/time.h 2006-06-05 13:18:23.000000000 -0400
+++ linux.dev/include/linux/time.h 2006-06-10 00:16:51.962628154 -0400
@@ -1,6 +1,10 @@
#ifndef _LINUX_TIME_H
#define _LINUX_TIME_H
+#ifndef __KERNEL__
+#include <time.h>
+#else
+
#include <linux/types.h>
#ifdef __KERNEL__
@@ -196,4 +200,6 @@
*/
#define TIMER_ABSTIME 0x01
+#endif /* __KERNEL__ DEBIAN */
+
#endif
--- linux.old/include/linux/types.h 2006-06-05 13:18:23.000000000 -0400
+++ linux.dev/include/linux/types.h 2006-06-10 00:16:51.962628154 -0400
@@ -1,6 +1,16 @@
#ifndef _LINUX_TYPES_H
#define _LINUX_TYPES_H
+/* Debian: Use userland types instead. */
+#ifndef __KERNEL__
+# include <sys/types.h>
+/* For other kernel headers. */
+# include <linux/posix_types.h>
+# include <asm/types.h>
+/* For util-linux / cryptoloop. How lame. */
+typedef __u32 __kernel_dev_t;
+#else
+
#ifdef __KERNEL__
#include <linux/config.h>
@@ -147,6 +157,8 @@
#endif /* __KERNEL_STRICT_NAMES */
+#endif /* __KERNEL__ DEBIAN */
+
/*
* Below are truly Linux-specific types that should never collide with
* any application/library that wants linux/types.h.
@@ -167,9 +179,9 @@
typedef __u16 __bitwise __be16;
typedef __u32 __bitwise __le32;
typedef __u32 __bitwise __be32;
-#if defined(__GNUC__) && !defined(__STRICT_ANSI__)
-typedef __u64 __bitwise __le64;
-typedef __u64 __bitwise __be64;
+#if defined(__GNUC__)
+__extension__ typedef __u64 __bitwise __le64;
+__extension__ typedef __u64 __bitwise __be64;
#endif
#ifdef __KERNEL__