8331541: [i386] linking with libjvm.so fails after JDK-8283326
authorVladimir Petko <vladimir.petko@canonical.com>
Thu, 27 Mar 2025 11:19:44 +0000 (12:19 +0100)
committerMatthias Klose <doko@ubuntu.com>
Thu, 27 Mar 2025 11:19:44 +0000 (12:19 +0100)
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

make/autoconf/flags-ldflags.m4
src/hotspot/os_cpu/linux_x86/safefetch_linux_x86_32.S

index e5c345fdef16dc4de1f20314dd39b90d34250eea..af6c06b48b4d94df61ec98786797d6f03d6631cc 100644 (file)
@@ -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
index 492b1207db6e220f2167520039ba9c74c35b795c..35caa39f9512c41464f1c89416d38a8b34119849 100644 (file)
@@ -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: