[git commit branch/0.9.33] Revert "nptl: remove sigaction, sigprocmask, and sigfillset from libpthread"
Bernhard Reutner-Fischer
rep.dot.nop at gmail.com
Mon Mar 26 10:39:59 UTC 2012
commit: http://git.uclibc.org/uClibc/commit/?id=f4abd0d3e944af48c9bd6988816e26e8bfbe80ed
branch: http://git.uclibc.org/uClibc/commit/?id=refs/heads/0.9.33
This reverts commit 34b59601212249559bf3e99934ea878ebe20dcff.
---
libpthread/nptl/sysdeps/pthread/Makefile.in | 27 +++++++++++++++++++++++++--
1 files changed, 25 insertions(+), 2 deletions(-)
diff --git a/libpthread/nptl/sysdeps/pthread/Makefile.in b/libpthread/nptl/sysdeps/pthread/Makefile.in
index add3a8e..79765e9 100644
--- a/libpthread/nptl/sysdeps/pthread/Makefile.in
+++ b/libpthread/nptl/sysdeps/pthread/Makefile.in
@@ -33,12 +33,17 @@ libpthread_pthread_CSRC = \
pthread_spin_init.c \
pthread_spin_unlock.c \
pt-longjmp.c \
+ pt-sigaction.c \
+ pt-sigfillset.c \
+ pt-sigprocmask.c \
tpp.c
CFLAGS-pthread = $(SSP_ALL_CFLAGS) -DNOT_IN_libc -DIS_IN_libpthread
CFLAGS-pthread_barrier_wait.c = -D_GNU_SOURCE
CFLAGS-pthread_spin_destroy.c = -D_GNU_SOURCE
CFLAGS-pthread_spin_init.c = -D_GNU_SOURCE
CFLAGS-pthread_spin_unlock.c = -D_GNU_SOURCE
+CFLAGS-pt-sigfillset.c = -I$(top_srcdir)libc/signal
+CFLAGS-pt-sigprocmask.c = -I$(top_srcdir)libc/sysdeps/linux/common
CFLAGS-unwind-forcedunwind.c = -fexceptions -fasynchronous-unwind-tables
CFLAGS-OMIT-librt-cancellation.c = -DIS_IN_libpthread
@@ -48,7 +53,8 @@ CFLAGS-librt-cancellation.c = -DIS_IN_librt \
CFLAGS-rt-unwind-resume.c = -DIS_IN_librt \
-fexceptions -fasynchronous-unwind-tables
-libpthread-so-y += $(patsubst %,$(libpthread_pthread_OUT)/%.oS, unwind-forcedunwind)
+libpthread-so-y += $(patsubst %,$(libpthread_pthread_OUT)/%.oS, \
+ pt-sigaction pt-sigprocmask unwind-forcedunwind)
librt-pt-routines-y = librt-cancellation.c
librt-pt-shared-only-routines-y = rt-unwind-resume.c
@@ -98,9 +104,26 @@ $(libpthread_pthread_OUT)/pt-crtn.S: $(libpthread_pthread_OUT)/pt-initfini.s $(l
-e '/@TRAILER_BEGINS/,$$p' $< > $@.tmp
$(Q)mv $@.tmp $@
endif
+# It would have been easier to just add dummy files that include the real
+# impl, but ok.
+# Special rules needed since we do objdir->objdir compilation for these 3.
+# First symlink them, then build them. Rob would freak out on these. Sheesh! ;)
+pthread-lc-fwd = sigfillset sigprocmask
+$(patsubst %,$(libpthread_pthread_OUT)/pt-%.c,$(pthread-lc-fwd)): | $(libpthread_pthread_OUT)
+ $(do_ln) $(call rel_srcdir)$(patsubst pt-%,$(libpthread_pthread_DIR)/%,$(@F)) $@
+$(patsubst %,$(libpthread_pthread_OUT)/pt-%.oS,$(pthread-lc-fwd)): $(libpthread_pthread_OUT)/pt-%.oS: $(libpthread_pthread_OUT)/pt-%.c
+ $(compile.c)
+$(patsubst %,$(libpthread_pthread_OUT)/pt-%.o,$(pthread-lc-fwd)): $(libpthread_pthread_OUT)/pt-%.o: $(libpthread_pthread_OUT)/pt-%.c
+ $(compile.c)
+ifeq ($(DOPIC),y)
+$(patsubst %,$(libpthread_pthread_OUT)/pt-%.os,$(pthread-lc-fwd)): $(libpthread_pthread_OUT)/pt-%.os: $(libpthread_pthread_OUT)/pt-%.c
+ $(compile.c)
+endif
objclean-y += CLEAN_libpthread/nptl/sysdeps/pthread
CLEAN_libpthread/nptl/sysdeps/pthread:
$(do_rm) $(addprefix $(libpthread_pthread_OUT)/*., o os oS s S) \
- $(libpthread_pthread_OUT)/defs.h
+ $(libpthread_pthread_OUT)/defs.h \
+ $(addprefix $(libpthread_pthread_DIR)/, \
+ pt-sigfillset.c pt-sigprocmask.c)
More information about the uClibc-cvs
mailing list