From 4cc2001e1bcbd7610023f6983198f58cfd4d4c92 Mon Sep 17 00:00:00 2001 From: nbd Date: Fri, 8 Dec 2006 15:58:15 +0000 Subject: [PATCH] fix up include/linux/types.h for user space stuff (patch from debian), fixes #1008 git-svn-id: svn://svn.openwrt.org/openwrt/trunk@5724 3c298f89-4303-0410-b956-a3cf2f4a3e73 --- .../patches/900-headers_type_and_time.patch | 64 +++++++++++++++++++ 1 file changed, 64 insertions(+) create mode 100644 target/linux/generic-2.6/patches/900-headers_type_and_time.patch diff --git a/target/linux/generic-2.6/patches/900-headers_type_and_time.patch b/target/linux/generic-2.6/patches/900-headers_type_and_time.patch new file mode 100644 index 000000000..09118bc0e --- /dev/null +++ b/target/linux/generic-2.6/patches/900-headers_type_and_time.patch @@ -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 ++#else ++ + #include + + #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 ++/* For other kernel headers. */ ++# include ++# include ++/* For util-linux / cryptoloop. How lame. */ ++typedef __u32 __kernel_dev_t; ++#else ++ + #ifdef __KERNEL__ + #include + +@@ -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__ -- 2.20.1