OSDN Git Service

* libc/include/sys/types.h: Add _mode_t for __rtems__.
authorcorinna <corinna>
Tue, 16 Nov 2010 17:29:38 +0000 (17:29 +0000)
committercorinna <corinna>
Tue, 16 Nov 2010 17:29:38 +0000 (17:29 +0000)
* libc/sys/rtems/machine/_types.h: Provide _mode_t, _fpos_t, _off_t.
Add _ssize_t for 64bit sparc.
Let arm, i386, m68k, mips, PPC, sparc use 64bit _off_t, _fpos_t.

newlib/ChangeLog
newlib/libc/include/sys/types.h
newlib/libc/sys/rtems/machine/_types.h

index 29ace2a..54fbfa8 100644 (file)
@@ -1,5 +1,12 @@
 2010-11-16  Ralf Corsépius  <ralf.corsepius@rtems.org>
 
+       * libc/include/sys/types.h: Add _mode_t for __rtems__.
+       * libc/sys/rtems/machine/_types.h: Provide _mode_t, _fpos_t, _off_t.
+       Add _ssize_t for 64bit sparc.
+       Let arm, i386, m68k, mips, PPC, sparc use 64bit _off_t, _fpos_t.
+
+2010-11-16  Ralf Corsépius  <ralf.corsepius@rtems.org>
+
        * configure.host: Add -D_COMPILING_NEWLIB to newlib_cflags.
 
 2010-11-04  Ralf Corsépius  <ralf.corsepius@rtems.org>
index 823a9c0..17f9306 100644 (file)
@@ -171,12 +171,16 @@ typedef signed char pid_t;
 typedef int pid_t;
 #endif
 
+#if defined(__rtems__)
+typedef _mode_t mode_t;
+#endif
+
 #ifndef __CYGWIN__
 typedef        long key_t;
 #endif
 typedef _ssize_t ssize_t;
 
-#ifndef __CYGWIN__
+#if !defined(__CYGWIN__) && !defined(__rtems__)
 #ifdef __MS_types__
 typedef        char *  addr_t;
 typedef int mode_t;
index e1c6ba6..2e02043 100644 (file)
@@ -20,6 +20,9 @@ typedef signed int _ssize_t;
 typedef long signed int _ssize_t;
 #endif
 #define __ssize_t_defined 1
+#elif defined(__sparc__) && defined(__LP64__)
+typedef long signed int _ssize_t;
+#define __ssize_t_defined 1
 #elif defined(__AVR__) || defined(__lm32__) || defined(__m32c__) || defined(__mips__) || defined(__moxie__) || defined(__PPC__) || defined(__sparc__) || defined(__sh__)
 typedef signed int _ssize_t;
 #define __ssize_t_defined 1
@@ -31,4 +34,24 @@ typedef signed int _ssize_t;
 
 typedef __int32_t blksize_t;
 typedef __int32_t blkcnt_t;
+
+#if defined(__arm__) || defined(__i386__) || defined(__m68k__) || defined(__mips__) || defined(__PPC__) || defined(__sparc__)
+/* Use 64bit types */
+typedef __int64_t _off_t;
+#define __off_t_defined 1
+
+typedef __int64_t _fpos_t;
+#define __fpos_t_defined 1
+#else
+/* Use 32bit types */
+typedef __int32_t _off_t;
+#define __off_t_defined 1
+
+typedef __int32_t _fpos_t;
+#define __fpos_t_defined 1
+#endif
+
+typedef __uint32_t _mode_t;
+#define __mode_t_defined 1
+
 #endif