From a54194f35c5c65d1e73491f9f75aaaee905e3d15 Mon Sep 17 00:00:00 2001 From: Matt Weber Date: Tue, 26 Feb 2019 11:36:45 -0600 Subject: [PATCH] package/openjdk: support zero hotspot variant The OpenJDK package supports a non-assembler variant of the hotspot virtual machine. This allows archtectures which don't have hard-coded support (which provides better performance) to still build a virtual machine that can execute JAVA. Signed-off-by: Matthew Weber Signed-off-by: Thomas Petazzoni --- package/openjdk/Config.in | 14 +++++++++++++- package/openjdk/openjdk.mk | 5 ++++- 2 files changed, 17 insertions(+), 2 deletions(-) diff --git a/package/openjdk/Config.in b/package/openjdk/Config.in index 96eef79eb0..dd1f3c59cf 100644 --- a/package/openjdk/Config.in +++ b/package/openjdk/Config.in @@ -25,7 +25,8 @@ config BR2_PACKAGE_OPENJDK select BR2_PACKAGE_ZLIB # make sure at least one variant is enabled select BR2_PACKAGE_OPENJDK_JVM_VARIANT_SERVER \ - if !BR2_PACKAGE_OPENJDK_JVM_VARIANT_CLIENT + if !BR2_PACKAGE_OPENJDK_JVM_VARIANT_CLIENT && !BR2_PACKAGE_OPENJDK_JVM_VARIANT_ZERO && !BR2_powerpc + select BR2_PACKAGE_OPENJDK_JVM_VARIANT_ZERO if BR2_powerpc help OpenJDK is a free and open-source implementation of the Java Platform. @@ -36,14 +37,25 @@ if BR2_PACKAGE_OPENJDK config BR2_PACKAGE_OPENJDK_JVM_VARIANT_CLIENT bool "build client variant" + depends on !BR2_powerpc help Quick loading, but slower run-time performance. config BR2_PACKAGE_OPENJDK_JVM_VARIANT_SERVER bool "build server variant" + depends on !BR2_powerpc help Slower loading, but faster run-time performance. +config BR2_PACKAGE_OPENJDK_JVM_VARIANT_ZERO + bool "build zero variant" + select BR2_PACKAGE_LIBFFI + help + A non-assembler variant with wide arch support, however + performance is less then client/server. + + http://openjdk.java.net/projects/zero + endif comment "openjdk needs X.Org" diff --git a/package/openjdk/openjdk.mk b/package/openjdk/openjdk.mk index cf98dd73e1..602e26b34b 100644 --- a/package/openjdk/openjdk.mk +++ b/package/openjdk/openjdk.mk @@ -35,10 +35,13 @@ OPENJDK_DEPENDENCIES = \ ifeq ($(BR2_PACKAGE_OPENJDK_JVM_VARIANT_CLIENT),y) OPENJDK_JVM_VARIANTS += client endif - ifeq ($(BR2_PACKAGE_OPENJDK_JVM_VARIANT_SERVER),y) OPENJDK_JVM_VARIANTS += server endif +ifeq ($(BR2_PACKAGE_OPENJDK_JVM_VARIANT_ZERO),y) +OPENJDK_JVM_VARIANTS += zero +OPENJDK_DEPENDENCIES += libffi +endif OPENJDK_JVM_VARIANT_LIST = $(subst $(space),$(comma),$(OPENJDK_JVM_VARIANTS)) # OpenJDK ignores some variables unless passed via the environment. -- 2.30.2