OSDN Git Service

libm/ldouble_wrappers.c: add libm_hidden_def's to fix testsuite build
[uclinux-h8/uClibc.git] / libc / sysdeps / linux / i386 / bits / kernel_types.h
index 0f3bca5..9c07c72 100644 (file)
@@ -1,11 +1,20 @@
 /* Note that we use the exact same include guard #define names
- * as asm/posix_types.h.  This will avoid gratuitous conflicts 
- * with the posix_types.h kernel header, and will ensure that 
+ * as asm/posix_types.h.  This will avoid gratuitous conflicts
+ * with the posix_types.h kernel header, and will ensure that
  * our private content, and not the kernel header, will win.
  *  -Erik
  */
-#ifndef __ARCH_I386_POSIX_TYPES_H
+
+/* a hack for compiling a 32 bit user space with 64 bit
+ * kernel on x86_64  */
+#if !defined(__ARCH_I386_POSIX_TYPES_H) && \
+    !defined(_ASM_X86_64_POSIX_TYPES_H) && \
+    !defined(_ASM_X86_POSIX_TYPES_32_H) && \
+    !defined(_ASM_X86_POSIX_TYPES_64_H)
+#define _ASM_X86_64_POSIX_TYPES_H
 #define __ARCH_I386_POSIX_TYPES_H
+#define _ASM_X86_POSIX_TYPES_32_H
+#define _ASM_X86_POSIX_TYPES_64_H
 
 typedef unsigned short __kernel_dev_t;
 typedef unsigned long  __kernel_ino_t;
@@ -30,6 +39,15 @@ typedef unsigned int __kernel_uid32_t;
 typedef unsigned int   __kernel_gid32_t;
 typedef unsigned short __kernel_old_uid_t;
 typedef unsigned short __kernel_old_gid_t;
+typedef __kernel_dev_t __kernel_old_dev_t;
 typedef long long      __kernel_loff_t;
 
-#endif /* __ARCH_I386_POSIX_TYPES_H */
+typedef struct {
+#ifdef __USE_ALL
+       int val[2];
+#else
+       int __val[2];
+#endif
+} __kernel_fsid_t;
+
+#endif