summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--libc/sysdeps/linux/mips/Makefile2
-rw-r--r--libc/sysdeps/linux/mips/sys/sysmips.h2
-rw-r--r--libc/sysdeps/linux/mips/sysmips.c5
3 files changed, 7 insertions, 2 deletions
diff --git a/libc/sysdeps/linux/mips/Makefile b/libc/sysdeps/linux/mips/Makefile
index 97ec0f88a..e3c344e48 100644
--- a/libc/sysdeps/linux/mips/Makefile
+++ b/libc/sysdeps/linux/mips/Makefile
@@ -27,7 +27,7 @@ CTOR_TARGETS=$(TOPDIR)lib/crti.o $(TOPDIR)lib/crtn.o
SSRC=bsd-_setjmp.S bsd-setjmp.S setjmp.S clone.S fork.S syscall.S pipe.S
SOBJS=$(patsubst %.S,%.o, $(SSRC))
-CSRC=__longjmp.c brk.c vfork.c setjmp_aux.c _mmap.c __syscall_error.c cacheflush.c pread_write.c
+CSRC=__longjmp.c brk.c vfork.c setjmp_aux.c _mmap.c __syscall_error.c cacheflush.c pread_write.c sysmips.c
COBJS=$(patsubst %.c,%.o, $(CSRC))
OBJS=$(SOBJS) $(MOBJ) $(COBJS)
diff --git a/libc/sysdeps/linux/mips/sys/sysmips.h b/libc/sysdeps/linux/mips/sys/sysmips.h
index 642a31629..7760c755a 100644
--- a/libc/sysdeps/linux/mips/sys/sysmips.h
+++ b/libc/sysdeps/linux/mips/sys/sysmips.h
@@ -28,7 +28,7 @@
__BEGIN_DECLS
-extern int sysmips (__const int cmd, __const int arg1,
+extern int sysmips (__const int cmd, __const long arg1,
__const int arg2, __const int arg3) __THROW;
__END_DECLS
diff --git a/libc/sysdeps/linux/mips/sysmips.c b/libc/sysdeps/linux/mips/sysmips.c
new file mode 100644
index 000000000..69b462c33
--- /dev/null
+++ b/libc/sysdeps/linux/mips/sysmips.c
@@ -0,0 +1,5 @@
+#include <errno.h>
+#include <sys/syscall.h>
+#include <sys/sysmips.h>
+
+_syscall4(int, sysmips, const int, cmd, const long, arg1, const int, arg2, const int, arg3);