فهرست منبع

'pthread.h' is not the only file that needs to be symlinked. When NPTL gets merged, you will need to do 'semaphore.h' and 'bits/pthreadtypes.h'. I think I have been a good little boy and keeping my NPTL changes out of mainline, so I'm going to go ahead and cross the line this once to get this change in.

"Steven J. Hill" 18 سال پیش
والد
کامیت
c76818fd78
2فایلهای تغییر یافته به همراه15 افزوده شده و 2 حذف شده
  1. 1 0
      Makefile
  2. 14 2
      libpthread/Makefile

+ 1 - 0
Makefile

@@ -350,6 +350,7 @@ clean:
 	$(MAKE) -C libc/sysdeps/linux/common clean
 	$(MAKE) -C extra/locale clean
 	$(MAKE) -C utils clean
+	$(MAKE) -C libpthread clean
 	@set -e; \
 	for i in `(cd $(TOPDIR)/libc/sysdeps/linux/common/sys; ls *.h)` ; do \
 		$(RM) include/sys/$$i; \

+ 14 - 2
libpthread/Makefile

@@ -49,7 +49,18 @@ LIBTHREAD_DB_LDFLAGS := $(subst -z defs,,$(LDFLAGS))
 all: $(LIBPTHREAD) $(LIBTHREAD_DB)
 
 headers:
-	$(LN) -sf $(TOPDIR)libpthread/linuxthreads/sysdeps/pthread/pthread.h $(TOPDIR)include/pthread.h
+ifeq ($(strip $(UCLIBC_HAS_THREADS_NATIVE)),y)
+	$(LN) -sf $(TOPDIR)libpthread/nptl/sysdeps/pthread/pthread.h $(TOPDIR)include
+	$(LN) -sf $(TOPDIR)libpthread/nptl/semaphore.h $(TOPDIR)include
+	$(LN) -sf ../$(TOPDIR)libpthread/nptl/sysdeps/unix/sysv/linux/$(TARGET_ARCH)/bits/semaphore.h $(TOPDIR)include/bits
+	$(LN) -sf ../$(TOPDIR)libpthread/nptl/sysdeps/unix/sysv/linux/$(TARGET_ARCH)/bits/pthreadtypes.h $(TOPDIR)include/bits
+	$(LN) -sf ../$(TOPDIR)libpthread/nptl/sysdeps/pthread/bits/libc-lock.h $(TOPDIR)include/bits
+	$(LN) -sf ../$(TOPDIR)libpthread/nptl/sysdeps/pthread/bits/stdio-lock.h $(TOPDIR)include/bits
+else
+	$(LN) -sf $(TOPDIR)libpthread/linuxthreads/sysdeps/pthread/pthread.h $(TOPDIR)include
+	$(LN) -sf $(TOPDIR)libpthread/linuxthreads/semaphore.h $(TOPDIR)include
+	$(LN) -sf ../$(TOPDIR)libpthread/linuxthreads/sysdeps/pthread/bits/pthreadtypes.h $(TOPDIR)include/bits
+endif
 
 $(LIBPTHREAD): subdirs
 ifeq ($(strip $(UCLIBC_HAS_THREADS)),y)
@@ -117,6 +128,7 @@ $(patsubst %, _dirclean_%, $(ALL_SUBDIRS)) : dummy
 
 clean: subdirs_clean
 	$(RM) *.[oa] *~ core $(LIBPTHREAD) $(LIBPTHREAD_SHARED_FULLNAME) \
-		$(LIBTHREAD_DB) $(LIBTHREAD_DB_SHARED_FULLNAME)
+		$(LIBTHREAD_DB) $(LIBTHREAD_DB_SHARED_FULLNAME)		 \
+		$(RM) $(TOPDIR)include/pthread.h $(TOPDIR)include/semaphore.h
 
 .PHONY: dummy