summaryrefslogtreecommitdiff
path: root/newlib/libc/syscalls/sysfork.c
diff options
context:
space:
mode:
Diffstat (limited to 'newlib/libc/syscalls/sysfork.c')
-rw-r--r--newlib/libc/syscalls/sysfork.c19
1 files changed, 19 insertions, 0 deletions
diff --git a/newlib/libc/syscalls/sysfork.c b/newlib/libc/syscalls/sysfork.c
new file mode 100644
index 00000000000..9fe319ff0df
--- /dev/null
+++ b/newlib/libc/syscalls/sysfork.c
@@ -0,0 +1,19 @@
+/* connector for fork */
+
+/* Don't define this if NO_FORK. See for example libc/sys/win32/spawn.c. */
+
+#ifndef NO_FORK
+
+#include <reent.h>
+
+int
+fork ()
+{
+#ifdef REENTRANT_SYSCALLS_PROVIDED
+ return _fork_r (_REENT);
+#else
+ return _fork ();
+#endif
+}
+
+#endif