summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--java/openjdk8/Makefile14
-rw-r--r--java/openjdk8/files/fpuhack.patch (renamed from java/openjdk8/files/armv6.patch)7
2 files changed, 11 insertions, 10 deletions
diff --git a/java/openjdk8/Makefile b/java/openjdk8/Makefile
index ba7c76cf10d5..ed1c17b745e0 100644
--- a/java/openjdk8/Makefile
+++ b/java/openjdk8/Makefile
@@ -234,10 +234,14 @@ CONFIGURE_SCRIPT= ../../configure
CONFIGURE_WRKSRC= ${WRKSRC}/common/autoconf
OPTIONS_DEFINE= POLICY TZUPDATE
+OPTIONS_DEFINE_armv6= FPUHACK
OPTIONS_DEFAULT= POLICY TZUPDATE
+OPTIONS_DEFAULT_armv6= FPUHACK
+FPUHACK_DESC= Hack denormalized numbers in flush-to-zero mode
POLICY_DESC= Install the Unlimited Strength Policy Files
TZUPDATE_DESC= Update the time zone data
+FPUHACK_EXTRA_PATCHES= ${PATCHDIR}/fpuhack.patch
POLICY_CONFIGURE_ENABLE= unlimited-crypto
TZUPDATE_RUN_DEPENDS= java-zoneinfo>0:java/java-zoneinfo
@@ -293,16 +297,6 @@ CONFIGURE_ARGS+= --with-boot-jdk-jvmargs="-Xmx768m"
MAKE_ENV+= JAVADOC_CMD_MEM="-Xmx768m"
.endif
-.if ${ARCH} == "armv6"
-# From NetBSD http://cvsweb.netbsd.org/bsdweb.cgi/pkgsrc/lang/openjdk7/hacks.mk
-# Workaround incorrect constant folding of subnormals in javac when the FPU
-# does not handle subnormal arithmetic, like on ARM in Flush-to-zero mode.
-# These workarounds avoid underflow conditions during the bootstrap so the
-# JDK can correctly build itself. Compiling or running programs other than
-# openjdk itself on such hardware may still cause unexpected behaviour.
-EXTRA_PATCHES= ${PATCHDIR}/armv6.patch
-.endif
-
.if ${ARCH} == "amd64" || ${ARCH} == "i386"
JDK_BUILD_JVM= server
.else
diff --git a/java/openjdk8/files/armv6.patch b/java/openjdk8/files/fpuhack.patch
index 45037c33a18d..bc5ccdee138f 100644
--- a/java/openjdk8/files/armv6.patch
+++ b/java/openjdk8/files/fpuhack.patch
@@ -1,3 +1,10 @@
+From NetBSD http://cvsweb.netbsd.org/bsdweb.cgi/pkgsrc/lang/openjdk7/hacks.mk
+Work around incorrect constant folding of subnormals in javac when the FPU
+does not handle subnormal arithmetic, like on ARM in flush-to-zero mode.
+These workarounds avoid underflow conditions during the bootstrap so the JDK
+can correctly build itself. Compiling or running programs other than OpenJDK
+itself on such hardware may still cause unexpected behaviour.
+
--- jdk/src/share/classes/java/lang/Double.java.orig 2014-03-04 02:57:59 UTC
+++ jdk/src/share/classes/java/lang/Double.java
@@ -86,7 +86,7 @@ public final class Double extends Number