From: Vladimir Petko Date: Thu, 17 Jul 2025 14:12:28 +0000 (+0200) Subject: 8331541: [i386] linking with libjvm.so fails after JDK-8283326 X-Git-Tag: archive/raspbian/21.0.8+9-1+rpi1^2~5 X-Git-Url: https://dgit.raspbian.org/?a=commitdiff_plain;h=ff53ca31b48d0676f5c86fecbd648d6edfdaa79a;p=openjdk-21.git 8331541: [i386] linking with libjvm.so fails after JDK-8283326 Origin: https://github.com/openjdk/jdk/pull/19048 Bug: https://bugs.openjdk.org/browse/JDK-8331541 Applied-Upstream: commit:2d622152b07bba0aba8fd5b1e24293e28d6e69f5 Last-Update: 2024-05-02 i386 declaration of _SafeFetch32_impl contains an underscore that causes an undefined symbol in libjvm.so. Disable -Wl,--allow-shlib-undefined link flag that allowed the build to succeed. Gbp-Pq: Name jdk-8331541.patch --- diff --git a/make/autoconf/flags-ldflags.m4 b/make/autoconf/flags-ldflags.m4 index e5c345fde..af6c06b48 100644 --- a/make/autoconf/flags-ldflags.m4 +++ b/make/autoconf/flags-ldflags.m4 @@ -133,7 +133,6 @@ AC_DEFUN([FLAGS_SETUP_LDFLAGS_HELPER], # Setup LDFLAGS for linking executables if test "x$TOOLCHAIN_TYPE" = xgcc; then - EXECUTABLE_LDFLAGS="$EXECUTABLE_LDFLAGS -Wl,--allow-shlib-undefined" # Enabling pie on 32 bit builds prevents the JVM from allocating a continuous # java heap. if test "x$OPENJDK_TARGET_CPU_BITS" != "x32"; then diff --git a/src/hotspot/os_cpu/linux_x86/safefetch_linux_x86_32.S b/src/hotspot/os_cpu/linux_x86/safefetch_linux_x86_32.S index 492b1207d..35caa39f9 100644 --- a/src/hotspot/os_cpu/linux_x86/safefetch_linux_x86_32.S +++ b/src/hotspot/os_cpu/linux_x86/safefetch_linux_x86_32.S @@ -32,7 +32,7 @@ # 8(%esp) : default value # 4(%esp) : crash address # 0(%esp) : return pc - .type _SafeFetch32_impl,@function + .type SafeFetch32_impl,@function SafeFetch32_impl: movl 4(%esp),%ecx # load address from stack _SafeFetch32_fault: