5c18beed72
Copy from Base:System/glibc based on submit request 48637 from user coolo OBS-URL: https://build.opensuse.org/request/show/48637 OBS-URL: https://build.opensuse.org/package/show/openSUSE:Factory/glibc?expand=0&rev=25
92 lines
3.3 KiB
Diff
92 lines
3.3 KiB
Diff
From: Andreas Schwab <schwab at redhat dot com>
|
|
To: libc-hacker at sourceware dot org
|
|
Subject: [PATCH] Work around shortest-stem feature in make 3.82+
|
|
|
|
make 3.82+ no longer selects pattern rules by order, but by shortest
|
|
stem, so we need to add more rules to make sure we still get the right
|
|
matches.
|
|
|
|
Andreas.
|
|
|
|
2010-09-09 Andreas Schwab <schwab@redhat.com>
|
|
|
|
* Makeconfig (sysd-rules-patterns): Add rtld-%:rtld-%.
|
|
(sysd-rules-targets): Remove duplicates.
|
|
* elf/rtld-Rules ($(objpfx)rtld-%.os): Add pattern rules with
|
|
rtld-%.$o dependency.
|
|
|
|
2010-09-06 Andreas Schwab <schwab@redhat.com>
|
|
|
|
* manual/Makefile: Don't mix pattern rules with normal rules.
|
|
|
|
diff --git a/Makeconfig b/Makeconfig
|
|
index 9778998..807c1d1 100644
|
|
--- a/Makeconfig
|
|
+++ b/Makeconfig
|
|
@@ -966,7 +966,7 @@ endif
|
|
# emitted into sysd-rules. A sysdeps Makeconfig fragment can
|
|
# add its own special object file prefix to this list with e.g. foo-%:%
|
|
# to have foo-*.? compiled from *.? using $(foo-CPPFLAGS).
|
|
-sysd-rules-patterns := %:% rtld-%:% m_%:s_%
|
|
+sysd-rules-patterns := %:% rtld-%:rtld-% rtld-%:% m_%:s_%
|
|
|
|
# Let sysdeps/ subdirs contain a Makeconfig fragment for us to include here.
|
|
sysdep-makeconfigs := $(wildcard $(+sysdep_dirs:=/Makeconfig))
|
|
@@ -975,8 +975,8 @@ include $(sysdep-makeconfigs)
|
|
endif
|
|
|
|
# Compute just the target patterns. Makeconfig has set sysd-rules-patterns.
|
|
-sysd-rules-targets := $(foreach p,$(sysd-rules-patterns),\
|
|
- $(firstword $(subst :, ,$p)))
|
|
+sysd-rules-targets := $(sort $(foreach p,$(sysd-rules-patterns),\
|
|
+ $(firstword $(subst :, ,$p))))
|
|
|
|
endif # Makeconfig not yet included
|
|
|
|
diff --git a/elf/rtld-Rules b/elf/rtld-Rules
|
|
index 9f31a56..fc225f2 100644
|
|
--- a/elf/rtld-Rules
|
|
+++ b/elf/rtld-Rules
|
|
@@ -93,6 +93,12 @@ else
|
|
# These are the basic compilation rules corresponding to the Makerules ones.
|
|
# The sysd-rules generated makefile already defines pattern rules for rtld-%
|
|
# targets built from sysdeps source files.
|
|
+$(objpfx)rtld-%.os: rtld-%.S $(before-compile)
|
|
+ $(compile-command.S) $(rtld-CPPFLAGS)
|
|
+$(objpfx)rtld-%.os: rtld-%.s $(before-compile)
|
|
+ $(compile-command.s) $(rtld-CPPFLAGS)
|
|
+$(objpfx)rtld-%.os: rtld-%.c $(before-compile)
|
|
+ $(compile-command.c) $(rtld-CPPFLAGS)
|
|
$(objpfx)rtld-%.os: %.S $(before-compile)
|
|
$(compile-command.S) $(rtld-CPPFLAGS)
|
|
$(objpfx)rtld-%.os: %.s $(before-compile)
|
|
@@ -101,6 +107,9 @@ $(objpfx)rtld-%.os: %.c $(before-compile)
|
|
$(compile-command.c) $(rtld-CPPFLAGS)
|
|
|
|
# The rules for generated source files.
|
|
+$(objpfx)rtld-%.os: $(objpfx)rtld-%.S $(before-compile); $(compile-command.S)
|
|
+$(objpfx)rtld-%.os: $(objpfx)rtld-%.s $(before-compile); $(compile-command.s)
|
|
+$(objpfx)rtld-%.os: $(objpfx)rtld-%.c $(before-compile); $(compile-command.c)
|
|
$(objpfx)rtld-%.os: $(objpfx)%.S $(before-compile); $(compile-command.S)
|
|
$(objpfx)rtld-%.os: $(objpfx)%.s $(before-compile); $(compile-command.s)
|
|
$(objpfx)rtld-%.os: $(objpfx)%.c $(before-compile); $(compile-command.c)
|
|
--
|
|
1.7.2.2
|
|
|
|
diff --git a/manual/Makefile b/manual/Makefile
|
|
index c5866eb..b1f5fa7 100644
|
|
--- a/manual/Makefile
|
|
+++ b/manual/Makefile
|
|
@@ -232,7 +232,10 @@ ifdef objpfx
|
|
.PHONY: stubs
|
|
stubs: $(objpfx)stubs
|
|
endif
|
|
-$(objpfx)stubs ../po/manual.pot $(objpfx)stamp%:
|
|
+$(objpfx)stubs ../po/manual.pot:
|
|
+ $(make-target-directory)
|
|
+ touch $@
|
|
+$(objpfx)stamp%:
|
|
$(make-target-directory)
|
|
touch $@
|
|
|