summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorSamuel Thibault <samuel.thibault@ens-lyon.org>2015-08-07 01:38:39 +0200
committerSamuel Thibault <samuel.thibault@ens-lyon.org>2015-08-07 01:38:39 +0200
commitedd4cbcf83fb466dd8a1b5d63d55b1fea96356fe (patch)
tree525d4c7405e67c6b2cf2c77f895f8d654ae825d7
parent5e29dd573777197fc4d12c1bdea8f6d04e505391 (diff)
Fix gcrt0.o compilation
When static-start-installed-name is different from start-installed-name, we must not use the shared objects. * csu/Makefile (extra-objs): Add gmon-start.o when building shared library and $(static-start-installed-name) is different from $(start-installed-name). $(objpfx)g$(static-start-installed-name): When building shared library and $(static-start-installed-name) is different from $(static-start-installed-name), revert to non-shared rule, i.e. using $(objpfx)% and gmon-start.o.
-rw-r--r--ChangeLog16
-rw-r--r--csu/Makefile11
2 files changed, 25 insertions, 2 deletions
diff --git a/ChangeLog b/ChangeLog
index f3456baf46..1994e44871 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,19 @@
+2015-08-07 Samuel Thibault <samuel.thibault@ens-lyon.org>
+
+ Fix gcrt0.o compilation
+
+ When static-start-installed-name is different from
+ start-installed-name, we must not use the shared objects.
+
+ * csu/Makefile
+ (extra-objs): Add gmon-start.o when building shared library and
+ $(static-start-installed-name) is different from
+ $(start-installed-name).
+ $(objpfx)g$(static-start-installed-name): When building shared
+ library and $(static-start-installed-name) is different from
+ $(static-start-installed-name), revert to non-shared rule,
+ i.e. using $(objpfx)% and gmon-start.o.
+
2015-08-06 Joseph Myers <joseph@codesourcery.com>
[BZ #16519]
diff --git a/csu/Makefile b/csu/Makefile
index 9f0855a6ac..4df5d107a1 100644
--- a/csu/Makefile
+++ b/csu/Makefile
@@ -47,6 +47,9 @@ tests-static := tst-empty
ifeq (yes,$(build-shared))
extra-objs += S$(start-installed-name) gmon-start.os
+ifneq ($(start-installed-name),$(static-start-installed-name))
+extra-objs += gmon-start.o
+endif
install-lib += S$(start-installed-name)
generated += start.os
else
@@ -98,10 +101,14 @@ endif
# startfile with gmon-start.o, which defines a constructor function
# to turn on profiling code at startup.
ifeq (yes,$(build-shared))
-$(addprefix $(objpfx),$(sort g$(start-installed-name) \
- g$(static-start-installed-name))): \
+$(objpfx)g$(start-installed-name): \
$(objpfx)g%: $(objpfx)S% $(objpfx)gmon-start.os
$(link-relocatable)
+ifneq ($(start-installed-name),$(static-start-installed-name))
+$(objpfx)g$(static-start-installed-name): \
+ $(objpfx)g%: $(objpfx)% $(objpfx)gmon-start.o
+ $(link-relocatable)
+endif
else
$(addprefix $(objpfx),$(sort g$(start-installed-name) \
g$(static-start-installed-name))): \