فهرست منبع

enable the common code for NPTL

the generic open, close, waitpid, read, write are good for NPTL too
no good reason to have the same sleep in both libc and libpthread (NPTL)
no good reason to add sigwaitinfo, sigtimedwait and sigwait to libpthread (NPTL)

Signed-off-by: Peter S. Mazinger <ps.m@gmx.net>
Signed-off-by: Bernhard Reutner-Fischer <rep.dot.nop@gmail.com>
Peter S. Mazinger 14 سال پیش
والد
کامیت
814b0901f4
3فایلهای تغییر یافته به همراه22 افزوده شده و 20 حذف شده
  1. 3 3
      libc/sysdeps/linux/common/Makefile.in
  2. 3 3
      libc/unistd/Makefile.in
  3. 16 14
      libpthread/nptl/sysdeps/unix/sysv/linux/Makefile.commonarch

+ 3 - 3
libc/sysdeps/linux/common/Makefile.in

@@ -64,17 +64,17 @@ CSRC-$(if $(findstring yy,$(UCLIBC_LINUX_SPECIFIC)$(UCLIBC_HAS_LFS)),y) += \
 # NPTL needs these internally: madvise.c
 CSRC-$(findstring y,$(UCLIBC_LINUX_SPECIFIC)$(UCLIBC_HAS_THREADS_NATIVE)) += madvise.c
 ifeq ($(UCLIBC_HAS_THREADS_NATIVE),y)
-CSRC- += fork.c getpid.c raise.c open.c close.c read.c write.c
+CSRC- += fork.c getpid.c raise.c #open.c close.c read.c write.c
 CSRC- += $(if $(findstring =arm=,=$(TARGET_ARCH)=),vfork.c)
 CSRC- += $(if $(findstring =x86_64=,=$(TARGET_ARCH)=),vfork.c)
-CSRC- += $(if $(findstring =mips=y=,=$(TARGET_ARCH)=$(CONFIG_MIPS_O32_ABI)=),waitpid.c)
+#CSRC- += $(if $(findstring =mips=y=,=$(TARGET_ARCH)=$(CONFIG_MIPS_O32_ABI)=),waitpid.c)
 endif
 # stubbed out in mman.h
 CSRC-$(ARCH_USE_MMU) += msync.c
 # we need these internally: getdomainname.c
 CSRC-$(UCLIBC_BSD_SPECIFIC) += mincore.c setdomainname.c
 CSRC-$(UCLIBC_NTP_LEGACY) += ntp_gettime.c
-# aio_cancel|aio_error|aio_fsync|aio_read|aio_return|aio_suspend|aio_write|clock_getres|clock_gettime|clock_settime|clock_settime|fdatasync|lio_listio|mlockall|munlockall|mlock|munlock|mq_close|mq_getattr|mq_notify|mq_open|mq_receive|mq_timedreceive|mq_send|mq_timedsend|mq_setattr|mq_unlink|nanosleep|sched_getparam|sched_get_priority_max|sched_get_priority_min|sched_getscheduler|sched_rr_get_interval|sched_setparam|sched_setscheduler|sem_close|sem_destroy|sem_getvalue|sem_init|sem_open|sem_post|sem_trywait|sem_wait|sem_unlink|sem_wait|shm_open|shm_unlink|sigqueue|sigtimedwait|sigwaitinfo|sigwaitinfo|timer_create|timer_delete|timer_getoverrun|timer_gettime|timer_settime
+# aio_cancel|aio_error|aio_fsync|aio_read|aio_return|aio_suspend|aio_write|clock_getres|clock_gettime|clock_settime|clock_settime|fdatasync|lio_listio|mlockall|munlockall|mlock|munlock|mq_close|mq_getattr|mq_notify|mq_open|mq_receive|mq_timedreceive|mq_send|mq_timedsend|mq_setattr|mq_unlink|nanosleep|sched_getparam|sched_get_priority_max|sched_get_priority_min|sched_getscheduler|sched_rr_get_interval|sched_setparam|sched_setscheduler|sem_close|sem_destroy|sem_getvalue|sem_init|sem_open|sem_post|sem_trywait|sem_wait|sem_unlink|sem_wait|shm_open|shm_unlink|sigqueue|sigtimedwait|sigwaitinfo|timer_create|timer_delete|timer_getoverrun|timer_gettime|timer_settime
 CSRC-$(UCLIBC_HAS_REALTIME) += clock_getres.c clock_gettime.c clock_settime.c \
 	fdatasync.c mlockall.c mlock.c munlockall.c munlock.c \
 	nanosleep.c __rt_sigtimedwait.c __rt_sigwaitinfo.c sched_getparam.c \

+ 3 - 3
libc/unistd/Makefile.in

@@ -37,9 +37,9 @@ ifneq ($(UCLIBC_SUSV3_LEGACY),y)
 CSRC := $(filter-out ualarm.c usleep.c,$(CSRC))
 endif
 
-ifeq ($(UCLIBC_HAS_THREADS_NATIVE),y)
-CSRC := $(filter-out sleep.c,$(CSRC))
-endif
+#ifeq ($(UCLIBC_HAS_THREADS_NATIVE),y)
+#CSRC := $(filter-out sleep.c,$(CSRC))
+#endif
 
 UNISTD_SRC := $(patsubst %.c,$(UNISTD_DIR)/%.c,$(CSRC))
 UNISTD_OBJ := $(patsubst %.c,$(UNISTD_OUT)/%.o,$(CSRC))

+ 16 - 14
libpthread/nptl/sysdeps/unix/sysv/linux/Makefile.commonarch

@@ -62,22 +62,24 @@ libpthread_linux_CSRC += pthread_attr_getaffinity.c pthread_attr_setaffinity.c \
 	pthread_getcpuclockid.c pthread_kill.c			\
 	pthread_mutex_cond_lock.c pthread_yield.c		\
 	sem_post.c sem_timedwait.c sem_trywait.c sem_wait.c	\
-	pt-fork.c pt-sleep.c pthread_sigqueue.c	pt-tempname.c	\
-	sigtimedwait.c sigwaitinfo.c sigwait.c			\
+	pt-tempname.c \
+	pthread_sigqueue.c \
 	lowlevellock.c lowlevelrobustlock.c
+#	pt-sleep.c pt-fork.c sigtimedwait.c sigwaitinfo.c sigwait.c
 
 libpthread_linux_SSRC := #ptw-close.S ptw-open.S ptw-waitid.S ptw-waidpid.S ptw-write.S
 
 libc_linux_CSRC += libc_pthread_init.c libc_multiple_threads.c		\
 	register-atfork.c unregister-atfork.c getpid.c		\
-	raise.c sleep.c jmp-unwind.c libc-lowlevellock.c
+	raise.c jmp-unwind.c libc-lowlevellock.c
+	#sleep.c
 
 librt_linux_CSRC += mq_notify.c timer_create.c timer_delete.c		\
 	timer_getoverr.c timer_gettime.c timer_routines.c		\
 	timer_settime.c
 
 # These provide both a cancellable and a not cancellable implementation
-libc_linux_SSRC = close.S open.S write.S read.S waitpid.S
+libc_linux_SSRC = #close.S open.S write.S read.S waitpid.S
 libc_linux_SSRC := $(filter-out $(libc_linux_arch_SSRC-OMIT),$(libc_linux_SSRC))
 
 libpthread_linux_CSRC := $(filter-out $(notdir $(libpthread_linux_arch_OBJS:.o=.c)),$(libpthread_linux_CSRC))
@@ -144,11 +146,11 @@ CFLAGS-OMIT-sleep.c = -DNOT_IN_libc -DIS_IN_libpthread
 CFLAGS-OMIT-jmp-unwind.c = -DNOT_IN_libc -DIS_IN_libpthread
 CFLAGS-OMIT-libc-lowlevellock.c = -DNOT_IN_libc -DIS_IN_libpthread
 
-CFLAGS-OMIT-close.S = -DNOT_IN_libc -DIS_IN_libpthread
-CFLAGS-OMIT-open.S = -DNOT_IN_libc -DIS_IN_libpthread
-CFLAGS-OMIT-read.S = -DNOT_IN_libc -DIS_IN_libpthread
-CFLAGS-OMIT-write.S = -DNOT_IN_libc -DIS_IN_libpthread
-CFLAGS-OMIT-waitpid.S = -DNOT_IN_libc -DIS_IN_libpthread
+#CFLAGS-OMIT-close.S = -DNOT_IN_libc -DIS_IN_libpthread
+#CFLAGS-OMIT-open.S = -DNOT_IN_libc -DIS_IN_libpthread
+#CFLAGS-OMIT-read.S = -DNOT_IN_libc -DIS_IN_libpthread
+#CFLAGS-OMIT-write.S = -DNOT_IN_libc -DIS_IN_libpthread
+#CFLAGS-OMIT-waitpid.S = -DNOT_IN_libc -DIS_IN_libpthread
 
 CFLAGS-OMIT-mq_notify.c = -DIS_IN_libpthread
 CFLAGS-OMIT-timer_create.c = -DIS_IN_libpthread
@@ -158,11 +160,11 @@ CFLAGS-OMIT-timer_gettime.c = -DIS_IN_libpthread
 CFLAGS-OMIT-timer_routines.c = -DIS_IN_libpthread
 CFLAGS-OMIT-timer_settime.c = -DIS_IN_libpthread
 
-ASFLAGS-open.S = -D_LIBC_REENTRANT
-ASFLAGS-close.S = -D_LIBC_REENTRANT
-ASFLAGS-read.S = -D_LIBC_REENTRANT
-ASFLAGS-write.S = -D_LIBC_REENTRANT
-ASFLAGS-waitpid.S = -D_LIBC_REENTRANT
+#ASFLAGS-open.S = -D_LIBC_REENTRANT
+#ASFLAGS-close.S = -D_LIBC_REENTRANT
+#ASFLAGS-read.S = -D_LIBC_REENTRANT
+#ASFLAGS-write.S = -D_LIBC_REENTRANT
+#ASFLAGS-waitpid.S = -D_LIBC_REENTRANT
 
 #
 # Create header files.