openjdk-1.8.0/Huawei-Fix-build-failures-due-to-wrap-in-x86.patch
佛系少年中二 99ebffa26f update to jdk8u432
2024-11-08 10:33:12 +08:00

41 lines
1.6 KiB
Diff

Subject: Fix build failures due to wrap in x86
---
hotspot/make/linux/makefiles/adlc.make | 20 +++++++++++++++++++-
1 file changed, 19 insertions(+), 1 deletion(-)
diff --git a/hotspot/make/linux/makefiles/adlc.make b/hotspot/make/linux/makefiles/adlc.make
index a01aa1aaa..92728fbe7 100644
--- a/hotspot/make/linux/makefiles/adlc.make
+++ b/hotspot/make/linux/makefiles/adlc.make
@@ -70,8 +70,26 @@ CFLAGS_WARN = $(WARNINGS_ARE_ERRORS)
CFLAGS += $(CFLAGS_WARN)
# Extra flags from gnumake's invocation or environment
+# Adapt wrap for JDK-8281096:Flags introduced by configure script are not passed to ADLC build
+WRAP_STR := -Wl,--wrap
+WRAP_MEM := ,--wrap=memcpy
+WRAP_NULL :=
+WRAP_LIBPTHREAD := libpthread.so.0
+WRAP_LIBDL := libdl.so.2
+WRAP_LM := -lm
+HOST_LDFLAGS_ADOPT_WRAP := $(HOST_LDFLAGS)
+
+ifeq ($(findstring --wrap=,$(HOST_LDFLAGS)),--wrap=)
+ HOST_LDFLAGS_ADOPT_WRAP := $(subst $(WRAP_MEM),$(WRAP_NULL),$(HOST_LDFLAGS_ADOPT_WRAP))
+ HOST_LDFLAGS_ADOPT_WRAP := $(subst $(WRAP_LIBPTHREAD),$(WRAP_NULL),$(HOST_LDFLAGS_ADOPT_WRAP))
+ HOST_LDFLAGS_ADOPT_WRAP := $(subst $(WRAP_LIBDL),$(WRAP_NULL),$(HOST_LDFLAGS_ADOPT_WRAP))
+ HOST_LDFLAGS_ADOPT_WRAP := $(subst $(WRAP_LM),$(WRAP_NULL),$(HOST_LDFLAGS_ADOPT_WRAP))
+ FILTERED_WRAP := $(filter $(WRAP_STR)%,$(HOST_LDFLAGS_ADOPT_WRAP))
+ HOST_LDFLAGS_ADOPT_WRAP := $(patsubst %$(FILTERED_WRAP),$(WRAP_NULL),$(HOST_LDFLAGS_ADOPT_WRAP))
+endif
+
CFLAGS += $(HOST_CFLAGS)
-LFLAGS += $(HOST_CFLAGS) $(HOST_LDFLAGS)
+LFLAGS += $(HOST_CFLAGS) $(HOST_LDFLAGS_ADOPT_WRAP)
ASFLAGS += $(HOST_ASFLAGS)
OBJECTNAMES = \
--
2.37.7