Welcome to mirror list, hosted at ThFree Co, Russian Federation.

cygwin.com/git/newlib-cygwin.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorSebastian Huber <sebastian.huber@embedded-brains.de>2016-04-21 09:21:46 +0300
committerCorinna Vinschen <corinna@vinschen.de>2016-04-21 11:29:04 +0300
commit82768d9bab0a8f1fa805799f9afbb0379c276da5 (patch)
tree4fd85999fc41a88d7c0b550d9d754c7acc0599f9
parent51062c856b17c484a5b805b3d63654e87c6fe845 (diff)
Provide FreeBSD types for <sys/types.h> on RTEMScygwin-2_5_1-release
Provide the following types via <sys/types.h> on RTEMS for FreeBSD compatibility if __BSD_VISIBLE * accmode_t, * cap_rights_t, * c_caddr_t, * cpulevel_t, * fixpt_t, * lwpid_t, * uintfptr_t, * vm_offset_t, * vm_ooffset_t, * vm_paddr_t, * vm_pindex_t, and * vm_size_t. Signed-off-by: Sebastian Huber <sebastian.huber@embedded-brains.de>
-rw-r--r--newlib/libc/sys/rtems/include/machine/_types.h7
-rw-r--r--newlib/libc/sys/rtems/include/machine/types.h73
2 files changed, 80 insertions, 0 deletions
diff --git a/newlib/libc/sys/rtems/include/machine/_types.h b/newlib/libc/sys/rtems/include/machine/_types.h
index e5dece034..f003ce9ed 100644
--- a/newlib/libc/sys/rtems/include/machine/_types.h
+++ b/newlib/libc/sys/rtems/include/machine/_types.h
@@ -28,6 +28,13 @@ typedef unsigned long __ino_t;
typedef __uint32_t __mode_t;
#define __machine_mode_t_defined
+typedef int __accmode_t; /* access permissions */
+typedef __uint32_t __fixpt_t; /* fixed point number */
+typedef int __lwpid_t; /* Thread ID (a.k.a. LWP) */
+typedef __int64_t __rlim_t; /* resource limit - intentionally */
+ /* signed, because of legacy code */
+ /* that uses -1 for RLIM_INFINITY */
+
#ifdef _KERNEL
typedef int boolean_t;
typedef struct device *device_t;
diff --git a/newlib/libc/sys/rtems/include/machine/types.h b/newlib/libc/sys/rtems/include/machine/types.h
new file mode 100644
index 000000000..52ff790ea
--- /dev/null
+++ b/newlib/libc/sys/rtems/include/machine/types.h
@@ -0,0 +1,73 @@
+/*-
+ * Copyright (c) 2016 embedded brains GmbH
+ * All rights reserved.
+ *
+ * Redistribution and use in source and binary forms, with or without
+ * modification, are permitted provided that the following conditions
+ * are met:
+ * 1. Redistributions of source code must retain the above copyright
+ * notice, this list of conditions and the following disclaimer.
+ * 2. Redistributions in binary form must reproduce the above copyright
+ * notice, this list of conditions and the following disclaimer in the
+ * documentation and/or other materials provided with the distribution.
+ *
+ * THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ``AS IS'' AND
+ * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
+ * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
+ * ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE
+ * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
+ * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
+ * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
+ * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
+ * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
+ * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
+ * SUCH DAMAGE.
+ */
+
+#ifndef _SYS_TYPES_H
+#error "must be included via <sys/types.h>"
+#endif /* !_SYS_TYPES_H */
+
+#if __BSD_VISIBLE
+
+#ifndef _ACCMODE_T_DECLARED
+typedef __accmode_t accmode_t; /* access permissions */
+#define _ACCMODE_T_DECLARED
+#endif
+
+#ifndef _CAP_RIGHTS_T_DECLARED
+#define _CAP_RIGHTS_T_DECLARED
+struct cap_rights;
+
+typedef struct cap_rights cap_rights_t;
+#endif
+
+typedef const char * c_caddr_t; /* core address, pointer to const */
+
+typedef int cpulevel_t;
+typedef int cpusetid_t;
+typedef int cpuwhich_t;
+
+typedef __fixpt_t fixpt_t; /* fixed point number */
+
+#ifndef _LWPID_T_DECLARED
+typedef __lwpid_t lwpid_t; /* Thread ID (a.k.a. LWP) */
+#define _LWPID_T_DECLARED
+#endif
+
+#ifndef _RLIM_T_DECLARED
+typedef __rlim_t rlim_t; /* resource limit */
+#define _RLIM_T_DECLARED
+#endif
+
+typedef __uintptr_t segsz_t; /* segment size (in pages) */
+
+typedef __uintptr_t uintfptr_t;
+
+typedef __intptr_t vm_ooffset_t;
+typedef __uintptr_t vm_offset_t;
+typedef __uintptr_t vm_paddr_t;
+typedef __uintptr_t vm_pindex_t;
+typedef __uintptr_t vm_size_t;
+
+#endif /* __BSD_VISIBLE */