[git commit nptl] nptl/: fix .dep files not working for libpthread.a

Austin Foxley austinf at cetoncorp.com
Tue Sep 22 01:38:24 UTC 2009


commit: http://git.uclibc.org/uClibc/commit/?id=906e1a9987ce8068bc5d539496dc570d9f5ba7b3
branch: http://git.uclibc.org/uClibc/commit/?id=refs/heads/nptl

the variable libpthread-a-y was holding %.o instead of %.os, so the .dep
make rules were rebuilding the whole lib every time

Signed-off-by: Austin Foxley <austinf at cetoncorp.com>
---
 libpthread/nptl/Makefile.in                        |    9 +++++----
 libpthread/nptl/sysdeps/arm/Makefile.arch          |    4 ++++
 libpthread/nptl/sysdeps/mips/Makefile.arch         |    4 ++++
 libpthread/nptl/sysdeps/pthread/Makefile.in        |    4 ++++
 libpthread/nptl/sysdeps/sh/Makefile.arch           |    4 ++++
 libpthread/nptl/sysdeps/sparc/Makefile.arch        |    4 ++++
 .../nptl/sysdeps/unix/sysv/linux/Makefile.in       |    4 ++++
 .../nptl/sysdeps/unix/sysv/linux/arm/Makefile.arch |    4 ++++
 .../sysdeps/unix/sysv/linux/mips/Makefile.arch     |    4 ++++
 .../nptl/sysdeps/unix/sysv/linux/sh/Makefile.arch  |    4 ++++
 .../sysdeps/unix/sysv/linux/sparc/Makefile.arch    |    4 ++++
 11 files changed, 45 insertions(+), 4 deletions(-)

diff --git a/libpthread/nptl/Makefile.in b/libpthread/nptl/Makefile.in
index 94dcb36..787107b 100644
--- a/libpthread/nptl/Makefile.in
+++ b/libpthread/nptl/Makefile.in
@@ -240,7 +240,12 @@ libc-shared-y += $(patsubst %.c, $(PTHREAD_OUT)/%.oS, forward.c		\
 	    libc-cancellation.c)
 libpthread-nonshared-y += $(patsubst %,$(PTHREAD_OUT)/%.oS,$(libpthread_static_SRC))
 
+ifeq ($(DOPIC),y)
+libpthread-a-y := $(patsubst $(PTHREAD_DIR)/%.c,$(PTHREAD_OUT)/%.os,$(libpthread_a_SRC))
+else
 libpthread-a-y := $(patsubst $(PTHREAD_DIR)/%.c,$(PTHREAD_OUT)/%.o,$(libpthread_a_SRC))
+endif
+
 libpthread-so-y := $(patsubst $(PTHREAD_DIR)/%.c,$(PTHREAD_OUT)/%.oS,$(libpthread_so_SRC))
 libpthread-static-y += $(patsubst $(PTHREAD_DIR)/%.c,$(PTHREAD_OUT)/%.o,$(libpthread_a_SRC) $(libpthread_static_SRC))
 
@@ -271,11 +276,7 @@ else
 endif
 	$(do_ar)
 
-ifeq ($(DOPIC),y)
-$(top_builddir)lib/libpthread.a: $(libpthread-a-y:.o=.os)
-else
 $(top_builddir)lib/libpthread.a: $(libpthread-a-y)
-endif
 	$(Q)$(INSTALL) -d $(dir $@)
 	$(Q)$(RM) $@
 	$(do_strip)
diff --git a/libpthread/nptl/sysdeps/arm/Makefile.arch b/libpthread/nptl/sysdeps/arm/Makefile.arch
index 1550d1f..6d16ae3 100644
--- a/libpthread/nptl/sysdeps/arm/Makefile.arch
+++ b/libpthread/nptl/sysdeps/arm/Makefile.arch
@@ -31,7 +31,11 @@ LIBRT_ARCH_OBJ := $(patsubst %.S,$(PTHREAD_ARCH_OUT)/%.o,$(librt_SSRC))
 LIBRT_ARCH_OBJ += $(patsubst %.c,$(PTHREAD_ARCH_OUT)/%.o,$(librt_CSRC))
 
 
+ifeq ($(DOPIC),y)
+libpthread-a-y += $(PTHREAD_ARCH_OBJ:.o=.os)
+else
 libpthread-a-y += $(PTHREAD_ARCH_OBJ)
+endif
 libpthread-so-y += $(PTHREAD_ARCH_OBJ:.o=.oS)
 
 librt-a-y += $(LIBRT_ARCH_OBJ)
diff --git a/libpthread/nptl/sysdeps/mips/Makefile.arch b/libpthread/nptl/sysdeps/mips/Makefile.arch
index 8e0d8c9..5d77b00 100644
--- a/libpthread/nptl/sysdeps/mips/Makefile.arch
+++ b/libpthread/nptl/sysdeps/mips/Makefile.arch
@@ -24,7 +24,11 @@ PTHREAD_ARCH_DIR := $(top_srcdir)libpthread/nptl/sysdeps/mips
 PTHREAD_ARCH_OUT := $(top_builddir)libpthread/nptl/sysdeps/mips
 PTHREAD_ARCH_OBJ := $(patsubst %.S,$(PTHREAD_ARCH_OUT)/%.o,$(libpthread_SSRC))
 
+ifeq ($(DOPIC),y)
+libpthread-a-y += $(PTHREAD_ARCH_OBJ:.o=.os)
+else
 libpthread-a-y += $(PTHREAD_ARCH_OBJ)
+endif
 libpthread-so-y += $(PTHREAD_ARCH_OBJ:.o=.oS)
 
 libpthread-nomulti-y += $(PTHREAD_ARCH_OBJ)
diff --git a/libpthread/nptl/sysdeps/pthread/Makefile.in b/libpthread/nptl/sysdeps/pthread/Makefile.in
index 0c3b52f..23e8ffb 100644
--- a/libpthread/nptl/sysdeps/pthread/Makefile.in
+++ b/libpthread/nptl/sysdeps/pthread/Makefile.in
@@ -83,7 +83,11 @@ pthread_OUT := $(top_builddir)libpthread/nptl/sysdeps/pthread
 pthread_SRC = $(patsubst %.c, $(pthread_DIR)/%.c, $(libpthread_CSRC))
 pthread_OBJ = $(patsubst %.c, $(pthread_OUT)/%.o, $(libpthread_CSRC))
 
+ifeq ($(DOPIC),y)
+libpthread-a-y += $(pthread_OBJ:.o=.os)
+else
 libpthread-a-y += $(pthread_OBJ)
+endif
 libpthread-so-y += $(pthread_OBJ:.o=.oS)
 libpthread-so-y += $(pthread_OUT)/pt-sigaction.oS $(pthread_OUT)/pt-sigprocmask.oS \
 					$(pthread_OUT)/unwind-forcedunwind.oS
diff --git a/libpthread/nptl/sysdeps/sh/Makefile.arch b/libpthread/nptl/sysdeps/sh/Makefile.arch
index a6e1014..83db10f 100644
--- a/libpthread/nptl/sysdeps/sh/Makefile.arch
+++ b/libpthread/nptl/sysdeps/sh/Makefile.arch
@@ -21,7 +21,11 @@ PTHREAD_ARCH_OUT := $(top_builddir)libpthread/nptl/sysdeps/sh
 PTHREAD_ARCH_OBJ := $(patsubst %.S,$(PTHREAD_ARCH_OUT)/%.o,$(libpthread_SSRC))
 PTHREAD_ARCH_OBJ += $(patsubst %.c,$(PTHREAD_ARCH_OUT)/%.o,$(libpthread_CSRC))
 
+ifeq ($(DOPIC),y)
+libpthread-a-y += $(PTHREAD_ARCH_OBJ:.o=.os)
+else
 libpthread-a-y += $(PTHREAD_ARCH_OBJ)
+endif
 libpthread-so-y += $(PTHREAD_ARCH_OBJ:.o=.oS)
 
 libpthread-nomulti-y += $(PTHREAD_ARCH_OBJ)
diff --git a/libpthread/nptl/sysdeps/sparc/Makefile.arch b/libpthread/nptl/sysdeps/sparc/Makefile.arch
index 4547ee3..b13eee9 100644
--- a/libpthread/nptl/sysdeps/sparc/Makefile.arch
+++ b/libpthread/nptl/sysdeps/sparc/Makefile.arch
@@ -18,7 +18,11 @@ PTHREAD_ARCH_OUT := $(top_builddir)libpthread/nptl/sysdeps/sparc/
 PTHREAD_ARCH_OBJ := $(patsubst %.S,$(PTHREAD_ARCH_OUT)/%.o,$(libpthread_SSRC))
 PTHREAD_ARCH_OBJ += $(patsubst %.c,$(PTHREAD_ARCH_OUT)/%.o,$(libpthread_CSRC))
 
+ifeq ($(DOPIC),y)
+libpthread-a-y += $(PTHREAD_ARCH_OBJ:.o=.os)
+else
 libpthread-a-y += $(PTHREAD_ARCH_OBJ)
+endif
 libpthread-so-y += $(PTHREAD_ARCH_OBJ:.o=.oS)
 
 libpthread-nomulti-y += $(PTHREAD_ARCH_OBJ)
diff --git a/libpthread/nptl/sysdeps/unix/sysv/linux/Makefile.in b/libpthread/nptl/sysdeps/unix/sysv/linux/Makefile.in
index 7e92e35..5a6d8a2 100644
--- a/libpthread/nptl/sysdeps/unix/sysv/linux/Makefile.in
+++ b/libpthread/nptl/sysdeps/unix/sysv/linux/Makefile.in
@@ -105,7 +105,11 @@ PTHREAD_LINUX_OUT := $(top_builddir)libpthread/nptl/sysdeps/unix/sysv/linux
 PTHREAD_LINUX_OBJ := $(patsubst %.c,$(PTHREAD_LINUX_OUT)/%.o,$(libpthread_CSRC))
 PTHREAD_LINUX_OBJ += $(patsubst %.S,$(PTHREAD_LINUX_OUT)/%.o,$(libpthread_SSRC))
 
+ifeq ($(DOPIC),y)
+libpthread-a-y += $(PTHREAD_LINUX_OBJ:.o=.os)
+else
 libpthread-a-y += $(PTHREAD_LINUX_OBJ)
+endif
 libpthread-so-y += $(PTHREAD_LINUX_OBJ:.o=.oS)
 libpthread-so-y += $(PTHREAD_LINUX_OUT)/pt-raise.oS
 libpthread-nomulti-y += $(PTHREAD_LINUX_OBJ)
diff --git a/libpthread/nptl/sysdeps/unix/sysv/linux/arm/Makefile.arch b/libpthread/nptl/sysdeps/unix/sysv/linux/arm/Makefile.arch
index 5c8d634..2256d6b 100644
--- a/libpthread/nptl/sysdeps/unix/sysv/linux/arm/Makefile.arch
+++ b/libpthread/nptl/sysdeps/unix/sysv/linux/arm/Makefile.arch
@@ -33,7 +33,11 @@ LINUX_ARCH_OUT:=$(top_builddir)libpthread/nptl/sysdeps/unix/sysv/linux/arm
 LINUX_ARCH_OBJ:=$(patsubst %.S,$(LINUX_ARCH_OUT)/%.o,$(libpthread_SSRC))
 LINUX_ARCH_OBJ+=$(patsubst %.c,$(LINUX_ARCH_OUT)/%.o,$(libpthread_CSRC))
 
+ifeq ($(DOPIC),y)
+libpthread-a-y += $(LINUX_ARCH_OBJ:.o=.os)
+else
 libpthread-a-y += $(LINUX_ARCH_OBJ)
+endif
 libpthread-so-y += $(LINUX_ARCH_OBJ:.o=.oS)
 
 libpthread-nomulti-y+=$(LINUX_ARCH_OBJ)
diff --git a/libpthread/nptl/sysdeps/unix/sysv/linux/mips/Makefile.arch b/libpthread/nptl/sysdeps/unix/sysv/linux/mips/Makefile.arch
index 59759f0..a7de215 100644
--- a/libpthread/nptl/sysdeps/unix/sysv/linux/mips/Makefile.arch
+++ b/libpthread/nptl/sysdeps/unix/sysv/linux/mips/Makefile.arch
@@ -27,7 +27,11 @@ LINUX_ARCH_OUT:=$(top_builddir)libpthread/nptl/sysdeps/unix/sysv/linux/mips
 LINUX_ARCH_OBJ:=$(patsubst %.S,$(LINUX_ARCH_OUT)/%.o,$(libpthread_SSRC))
 LINUX_ARCH_OBJ+=$(patsubst %.c,$(LINUX_ARCH_OUT)/%.o,$(libpthread_CSRC))
 
+ifeq ($(DOPIC),y)
+libpthread-a-y += $(LINUX_ARCH_OBJ:.o=.os)
+else
 libpthread-a-y += $(LINUX_ARCH_OBJ)
+endif
 libpthread-so-y += $(LINUX_ARCH_OBJ:.o=.oS)
 
 libpthread-nomulti-y+=$(LINUX_ARCH_OBJS)
diff --git a/libpthread/nptl/sysdeps/unix/sysv/linux/sh/Makefile.arch b/libpthread/nptl/sysdeps/unix/sysv/linux/sh/Makefile.arch
index 2fbf2b1..9bd7569 100644
--- a/libpthread/nptl/sysdeps/unix/sysv/linux/sh/Makefile.arch
+++ b/libpthread/nptl/sysdeps/unix/sysv/linux/sh/Makefile.arch
@@ -61,7 +61,11 @@ LINUX_ARCH_OUT:=$(top_builddir)libpthread/nptl/sysdeps/unix/sysv/linux/sh
 
 LINUX_ARCH_OBJ:=$(patsubst %.S,$(LINUX_ARCH_OUT)/%.o,$(libpthread_SSRC))
 
+ifeq ($(DOPIC),y)
+libpthread-a-y += $(LINUX_ARCH_OBJ:.o=.os)
+else
 libpthread-a-y += $(LINUX_ARCH_OBJ)
+endif
 libpthread-so-y += $(LINUX_ARCH_OBJ:.o=.oS)
 
 libpthread-nomulti-y+=$(LINUX_ARCH_OBJS)
diff --git a/libpthread/nptl/sysdeps/unix/sysv/linux/sparc/Makefile.arch b/libpthread/nptl/sysdeps/unix/sysv/linux/sparc/Makefile.arch
index 5f79949..a843027 100644
--- a/libpthread/nptl/sysdeps/unix/sysv/linux/sparc/Makefile.arch
+++ b/libpthread/nptl/sysdeps/unix/sysv/linux/sparc/Makefile.arch
@@ -42,7 +42,11 @@ LINUX_ARCH_OUT:=$(top_builddir)libpthread/nptl/sysdeps/unix/sysv/linux/sparc
 LINUX_ARCH_OBJ:=$(patsubst %.c,$(LINUX_ARCH_OUT)/%.o,$(libpthread_CSRC))
 LINUX_ARCH_OBJ+=$(patsubst %.c,$(LINUX_ARCH_OUT)/%.o,$(libpthread_CSRC))
 
+ifeq ($(DOPIC),y)
+libpthread-a-y += $(LINUX_ARCH_OBJ:.o=.os)
+else
 libpthread-a-y += $(LINUX_ARCH_OBJ)
+endif
 libpthread-so-y += $(LINUX_ARCH_OBJ:.o=.oS)
 
 libpthread-nomulti-y+=$(LINUX_ARCH_OBJS)
-- 
1.6.3.3



More information about the uClibc-cvs mailing list