[git commit branch/0.9.33] nptl: remove sigaction, sigprocmask, and sigfillset from libpthread
Carmelo AMOROSO
carmelo.amoroso at st.com
Sat Feb 25 14:43:58 UTC 2012
On 23/02/2012 20.47, Bernhard Reutner-Fischer wrote:
> commit: http://git.uclibc.org/uClibc/commit/?id=34b59601212249559bf3e99934ea878ebe20dcff
> branch: http://git.uclibc.org/uClibc/commit/?id=refs/heads/0.9.33
>
> Having them defined in both places was causing errors with static linking
>
> Signed-off-by: Austin Foxley <austinf at cetoncorp.com>
> Signed-off-by: Bernhard Reutner-Fischer <rep.dot.nop at gmail.com>
Hi,
IIRC the issue due to duplicated sigaction was already addressed
(Bernard and myself worked on this).
It's not correct to remove pt-sigaction for nptl, as the implementation
has to properly manage SIGCANCEL and SIGSETXID.
See commit 83ce0cc4d5e93549f0a9447a9bd6b051f5f1b62f
Cheers,
Carmelo
> ---
> libpthread/nptl/sysdeps/pthread/Makefile.in | 27 ++-------------------------
> 1 files changed, 2 insertions(+), 25 deletions(-)
>
> diff --git a/libpthread/nptl/sysdeps/pthread/Makefile.in b/libpthread/nptl/sysdeps/pthread/Makefile.in
> index 79765e9..add3a8e 100644
> --- a/libpthread/nptl/sysdeps/pthread/Makefile.in
> +++ b/libpthread/nptl/sysdeps/pthread/Makefile.in
> @@ -33,17 +33,12 @@ 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
> @@ -53,8 +48,7 @@ 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, \
> - pt-sigaction pt-sigprocmask unwind-forcedunwind)
> +libpthread-so-y += $(patsubst %,$(libpthread_pthread_OUT)/%.oS, unwind-forcedunwind)
>
> librt-pt-routines-y = librt-cancellation.c
> librt-pt-shared-only-routines-y = rt-unwind-resume.c
> @@ -104,26 +98,9 @@ $(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 \
> - $(addprefix $(libpthread_pthread_DIR)/, \
> - pt-sigfillset.c pt-sigprocmask.c)
> + $(libpthread_pthread_OUT)/defs.h
> _______________________________________________
> uClibc-cvs mailing list
> uClibc-cvs at uclibc.org
> http://lists.busybox.net/mailman/listinfo/uclibc-cvs
>
More information about the uClibc-cvs
mailing list