浏览代码

Move fork to common/syscalls (with NO_MMU check). Add Makefile to sparc so
make clean works.

Manuel Novoa III 24 年之前
父节点
当前提交
fae403620c

+ 1 - 1
libc/sysdeps/linux/Makefile

@@ -32,7 +32,7 @@ libc.a: subdirs
 
 tags:
 	ctags -R
-	
+
 clean: subdirs_clean
 
 subdirs: $(patsubst %, _dir_%, $(DIRS))

+ 1 - 1
libc/sysdeps/linux/arm/Makefile

@@ -38,7 +38,7 @@ CRT0_OBJ=$(patsubst %.S,%.o, $(CRT0))
 SSRC=longjmp.S setjmp.S vfork.S
 SOBJS=$(patsubst %.S,%.o, $(SSRC))
 
-CSRC=fork.c ptrace.c
+CSRC=ptrace.c
 COBJS=$(patsubst %.c,%.o, $(CSRC))
 
 OBJS=$(SOBJS) $(MOBJ) $(COBJS)

+ 1 - 1
libc/sysdeps/linux/i386/Makefile

@@ -34,7 +34,7 @@ ifeq ($(UNIFIED_SYSCALL),true)
 endif
 SOBJS=$(patsubst %.S,%.o, $(SSRC))
 
-CSRC=fork.c __init_brk.c brk.c sbrk.c
+CSRC=__init_brk.c brk.c sbrk.c
 COBJS=$(patsubst %.c,%.o, $(CSRC))
 
 OBJS=$(SOBJS) $(COBJS)

+ 0 - 2
libc/sysdeps/linux/i386/__uClibc_syscall.S

@@ -16,8 +16,6 @@ __uClibc_syscall:
 	int $0x80
 #NO_APP
 	cmpl $-4095,%eax
-	/* jae .L5 */
-	/* cmpl $-126,%eax */
 	jbe .L5
 	negl %eax
 	movl %eax,errno

+ 1 - 1
libc/sysdeps/linux/sh/Makefile

@@ -37,7 +37,7 @@ CRT0_OBJ=$(patsubst %.S,%.o, $(CRT0))
 SSRC=setjmp.S bsd-setjmp.S bsd-_setjmp.S __longjmp.S
 SOBJS=$(patsubst %.S,%.o, $(SSRC))
 
-CSRC=fork.c vfork.c _mmap.c longjmp.c jmp-unwind.c
+CSRC=vfork.c _mmap.c longjmp.c jmp-unwind.c
 COBJS=$(patsubst %.c,%.o, $(CSRC))
 
 OBJS=$(SOBJS) $(MOBJ) $(COBJS)

+ 0 - 35
libc/sysdeps/linux/sh/fork.c

@@ -1,35 +0,0 @@
-/* vi: set sw=4 ts=4: */
-/*
- * fork for uClibc
- *
- * Copyright (C) 2000 by Lineo, inc.  Written by Erik Andersen
- * <andersen@lineo.com>, <andersee@debian.org>
- *
- * This program is free software; you can redistribute it and/or modify it
- * under the terms of the GNU Library General Public License as published by
- * the Free Software Foundation; either version 2 of the License, or (at your
- * option) any later version.
- *
- * This program is distributed in the hope that it will be useful, but WITHOUT
- * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
- * FITNESS FOR A PARTICULAR PURPOSE. See the GNU Library General Public License
- * for more details.
- *
- * You should have received a copy of the GNU Library General Public License
- * along with this program; if not, write to the Free Software Foundation,
- * Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
- *
- */
-
-#include <errno.h>
-#include <features.h>
-#include <sys/types.h>
-#include <sys/syscall.h>
-
-#ifndef __HAS_NO_MMU__
-
-//#define __NR_fork             2
-#include <unistd.h>
-_syscall0(pid_t, fork);
-
-#endif

+ 63 - 0
libc/sysdeps/linux/sparc/Makefile

@@ -0,0 +1,63 @@
+# Makefile for uClibc
+#
+# Copyright (C) 2000 by Lineo, inc.
+#
+# This program is free software; you can redistribute it and/or modify it under
+# the terms of the GNU Library General Public License as published by the Free
+# Software Foundation; either version 2 of the License, or (at your option) any
+# later version.
+#
+# This program is distributed in the hope that it will be useful, but WITHOUT
+# ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS
+# FOR A PARTICULAR PURPOSE. See the GNU Library General Public License for more
+# details.
+#
+# You should have received a copy of the GNU Library General Public License
+# along with this program; if not, write to the Free Software Foundation, Inc.,
+# 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+#
+# Derived in part from the Linux-8086 C library, the GNU C Library, and several
+# other sundry sources.  Files within this library are copyright by their
+# respective copyright holders.
+
+TOPDIR=../../../
+include $(TOPDIR)Rules.mak
+LIBC=$(TOPDIR)libc.a
+ASFLAGS=$(CFLAGS)
+
+CRT0=crt0.S
+CRT0_OBJ=$(patsubst %.S,%.o, $(CRT0))
+
+SSRC=
+SOBJS=$(patsubst %.S,%.o, $(SSRC))
+
+CSRC=
+COBJS=$(patsubst %.c,%.o, $(CSRC))
+
+OBJS=$(SOBJS) $(MOBJ) $(COBJS)
+
+
+
+all: $(OBJS) $(LIBC)
+
+$(LIBC): ar-target 
+
+ar-target: $(OBJS) $(CRT0_OBJ)
+	$(AR) $(ARFLAGS) $(LIBC) $(OBJS)
+	cp $(CRT0_OBJ) $(TOPDIR)$(CRT0_OBJ)
+
+$(CRT0_OBJ): %.o : %.S
+	$(CC) $(CFLAGS) -c $< -o $@
+	$(STRIPTOOL) -x -R .note -R .comment $*.o
+
+$(SOBJS): %.o : %.S
+	$(CC) $(CFLAGS) -c $< -o $@
+	$(STRIPTOOL) -x -R .note -R .comment $*.o
+
+$(COBJS): %.o : %.c
+	$(CC) $(CFLAGS) -c $< -o $@
+	$(STRIPTOOL) -x -R .note -R .comment $*.o
+
+clean:
+	rm -f *.[oa] *~ core
+