From f3a594f390abe7d4a3f1b544424b31613d559c88 Mon Sep 17 00:00:00 2001 From: Khem Raj Date: Sat, 18 Dec 2010 08:08:05 -0800 Subject: nptl: If DOPIC is set then we missed a rule to generate .os variants for pt-*.c files Signed-off-by: Khem Raj --- libpthread/nptl/sysdeps/pthread/Makefile.in | 4 ++++ 1 file changed, 4 insertions(+) (limited to 'libpthread/nptl') diff --git a/libpthread/nptl/sysdeps/pthread/Makefile.in b/libpthread/nptl/sysdeps/pthread/Makefile.in index 8ccf96d76..fc0c6ac3e 100644 --- a/libpthread/nptl/sysdeps/pthread/Makefile.in +++ b/libpthread/nptl/sysdeps/pthread/Makefile.in @@ -95,6 +95,10 @@ $(patsubst %,$(libpthread_pthread_OUT)/pt-%.oS,$(pthread-lc-fwd)): $(libpthread_ $(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 -- cgit v1.2.3 From 9e5335ed874515b33aa296c1cd8e7a8b640472c9 Mon Sep 17 00:00:00 2001 From: Khem Raj Date: Sat, 18 Dec 2010 08:09:25 -0800 Subject: sem_open.c/sem_unlink.c: Use INTUSE macro to get proper function call to __pthread_once We need to use __pthread_once_internal if available this macro is therefore used to notify that. Signed-off-by: Khem Raj --- libpthread/nptl/sem_open.c | 2 +- libpthread/nptl/sem_unlink.c | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) (limited to 'libpthread/nptl') diff --git a/libpthread/nptl/sem_open.c b/libpthread/nptl/sem_open.c index 28dd3aa90..71bebb00a 100644 --- a/libpthread/nptl/sem_open.c +++ b/libpthread/nptl/sem_open.c @@ -248,7 +248,7 @@ sem_open (const char *name, int oflag, ...) int fd; /* Determine where the shmfs is mounted. */ - __pthread_once (&__namedsem_once, __where_is_shmfs); + INTUSE(__pthread_once) (&__namedsem_once, __where_is_shmfs); /* If we don't know the mount points there is nothing we can do. Ever. */ if (mountpoint.dir == NULL) diff --git a/libpthread/nptl/sem_unlink.c b/libpthread/nptl/sem_unlink.c index beed02ee5..f3e7f1a70 100644 --- a/libpthread/nptl/sem_unlink.c +++ b/libpthread/nptl/sem_unlink.c @@ -33,7 +33,7 @@ sem_unlink ( size_t namelen; /* Determine where the shmfs is mounted. */ - __pthread_once (&__namedsem_once, __where_is_shmfs); + INTUSE(__pthread_once) (&__namedsem_once, __where_is_shmfs); /* If we don't know the mount points there is nothing we can do. Ever. */ if (mountpoint.dir == NULL) -- cgit v1.2.3 From 90e38b925cc5d023bbdccbc8a4a401b0ed282c21 Mon Sep 17 00:00:00 2001 From: Austin Foxley Date: Wed, 29 Dec 2010 17:49:59 -0800 Subject: sparc: fix linking issue with __syscall_error.c Finally got around to testing out latest master and noticed that some buildsystem work last summer broke shared-builds of nptl on sparc. A version of __syscall_error.c needs to be linked into both libpthread and librt Signed-off-by: Austin Foxley --- libpthread/nptl/sysdeps/unix/sysv/linux/sparc/Makefile.arch | 6 +++++- libpthread/nptl/sysdeps/unix/sysv/linux/sparc/pt-__syscall_error.c | 1 + 2 files changed, 6 insertions(+), 1 deletion(-) create mode 100644 libpthread/nptl/sysdeps/unix/sysv/linux/sparc/pt-__syscall_error.c (limited to 'libpthread/nptl') diff --git a/libpthread/nptl/sysdeps/unix/sysv/linux/sparc/Makefile.arch b/libpthread/nptl/sysdeps/unix/sysv/linux/sparc/Makefile.arch index 88ca01a51..102c0dad1 100644 --- a/libpthread/nptl/sysdeps/unix/sysv/linux/sparc/Makefile.arch +++ b/libpthread/nptl/sysdeps/unix/sysv/linux/sparc/Makefile.arch @@ -7,16 +7,20 @@ libpthread_linux_arch_SSRC = pt-vfork.S clone.S libpthread_linux_arch_CSRC = pthread_once.c lowlevellock.c \ - pthread_barrier_init.c pthread_barrier_wait.c pthread_barrier_destroy.c + pthread_barrier_init.c pthread_barrier_wait.c pthread_barrier_destroy.c \ + pt-__syscall_error.c libc_linux_arch_CSRC = fork.c libc-lowlevellock.c libc_linux_arch_SSRC = clone.S vfork.S +librt_linux_arch_CSRC = pt-__syscall_error.c + ASFLAGS += -DUSE___THREAD ASFLAGS-pt-vfork.S = -DNOT_IN_libc -DIS_IN_libpthread -D_LIBC_REENTRANT CFLAGS-pthread_once.c = -DNOT_IN_libc -DIS_IN_libpthread CFLAGS-lowlevellock.c = -DNOT_IN_libc -DIS_IN_libpthread +CFLAGS-pt-__syscall_error.c = -DNOT_IN_libc -DIS_IN_libpthread ASFLAGS-clone.S = -D_LIBC_REENTRANT ASFLAGS-vfork.S = -D_LIBC_REENTRANT diff --git a/libpthread/nptl/sysdeps/unix/sysv/linux/sparc/pt-__syscall_error.c b/libpthread/nptl/sysdeps/unix/sysv/linux/sparc/pt-__syscall_error.c new file mode 100644 index 000000000..872e4eff6 --- /dev/null +++ b/libpthread/nptl/sysdeps/unix/sysv/linux/sparc/pt-__syscall_error.c @@ -0,0 +1 @@ +#include <../../../../../../../libc/sysdeps/linux/sparc/__syscall_error.c> -- cgit v1.2.3