< prev index next >

common/autoconf/flags.m4

Print this page
rev 1453 : 8078245: AARCH64: JDK fails to build due to undefined symbol in libpng
Summary: Add -DPNG_ARM_NEON_OPT=0 to JDK flags to fix build
Reviewed-by: dholmes

@@ -483,10 +483,17 @@
   elif test "x$TOOLCHAIN_TYPE" = xxlc; then
     CFLAGS_JDK="${CFLAGS_JDK} -qchars=signed -qfullpath -qsaveopt"
     CXXFLAGS_JDK="${CXXFLAGS_JDK} -qchars=signed -qfullpath -qsaveopt"
   fi
 
+  # gcc on aarch64 automatically defines the symbol __ARM_NEON
+  # this causes build failures (undefined symbols in linpng)
+  # work around this by manually turning off ARM Neon optimization
+  if test "x$OPENJDK_TARGET_CPU_ARCH" = "xaarch64"; then
+    CFLAGS_JDKLIB_EXTRA="${CFLAGS_JDKLIB_EXTRA} -DPNG_ARM_NEON_OPT=0"
+  fi
+
   if test "x$CFLAGS" != "x${ADDED_CFLAGS}"; then
     AC_MSG_WARN([Ignoring CFLAGS($CFLAGS) found in environment. Use --with-extra-cflags])
   fi
 
   if test "x$CXXFLAGS" != "x${ADDED_CXXFLAGS}"; then
< prev index next >