In theory, this patch should work, but I cannot verify it. Marc, can you try it out?

diff --git a/make/Images.gmk b/make/Images.gmk
--- a/make/Images.gmk
+++ b/make/Images.gmk
@@ -147,31 +147,33 @@

   JRE_TARGETS += $(gen_cds_archive_jre)

-  $(eval $(call SetupExecute, gen_cds_nocoops_archive_jdk, \
-      WARN := Creating CDS-NOCOOPS archive for jdk image, \
-      DEPS := $(jlink_jdk), \
-      OUTPUT_FILE := $(JDK_IMAGE_DIR)/$(CDS_NOCOOPS_ARCHIVE), \
-      SUPPORT_DIR := $(SUPPORT_OUTPUTDIR)/images/jdk, \
-      COMMAND := $(FIXPATH) $(JDK_IMAGE_DIR)/bin/java -Xshare:dump \
- -XX:SharedArchiveFile=$(JDK_IMAGE_DIR)/$(CDS_NOCOOPS_ARCHIVE) \
-          -XX:-UseCompressedOops \
-          -Xmx128M -Xms128M $(LOG_INFO), \
-  ))
+  ifeq ($(call isTargetCpuBits, 64), true)
+    $(eval $(call SetupExecute, gen_cds_nocoops_archive_jdk, \
+        WARN := Creating CDS-NOCOOPS archive for jdk image, \
+        DEPS := $(jlink_jdk), \
+        OUTPUT_FILE := $(JDK_IMAGE_DIR)/$(CDS_NOCOOPS_ARCHIVE), \
+        SUPPORT_DIR := $(SUPPORT_OUTPUTDIR)/images/jdk, \
+        COMMAND := $(FIXPATH) $(JDK_IMAGE_DIR)/bin/java -Xshare:dump \
+ -XX:SharedArchiveFile=$(JDK_IMAGE_DIR)/$(CDS_NOCOOPS_ARCHIVE) \
+            -XX:-UseCompressedOops \
+            -Xmx128M -Xms128M $(LOG_INFO), \
+    ))

-  JDK_TARGETS += $(gen_cds_nocoops_archive_jdk)
+    JDK_TARGETS += $(gen_cds_nocoops_archive_jdk)

-  $(eval $(call SetupExecute, gen_cds_nocoops_archive_jre, \
-      WARN := Creating CDS-NOCOOPS archive for jre image, \
-      DEPS := $(jlink_jre), \
-      OUTPUT_FILE := $(JRE_IMAGE_DIR)/$(CDS_NOCOOPS_ARCHIVE), \
-      SUPPORT_DIR := $(SUPPORT_OUTPUTDIR)/images/jre, \
-      COMMAND := $(FIXPATH) $(JRE_IMAGE_DIR)/bin/java -Xshare:dump \
- -XX:SharedArchiveFile=$(JRE_IMAGE_DIR)/$(CDS_NOCOOPS_ARCHIVE) \
-          -XX:-UseCompressedOops \
-          -Xmx128M -Xms128M $(LOG_INFO), \
-  ))
+    $(eval $(call SetupExecute, gen_cds_nocoops_archive_jre, \
+        WARN := Creating CDS-NOCOOPS archive for jre image, \
+        DEPS := $(jlink_jre), \
+        OUTPUT_FILE := $(JRE_IMAGE_DIR)/$(CDS_NOCOOPS_ARCHIVE), \
+        SUPPORT_DIR := $(SUPPORT_OUTPUTDIR)/images/jre, \
+        COMMAND := $(FIXPATH) $(JRE_IMAGE_DIR)/bin/java -Xshare:dump \
+ -XX:SharedArchiveFile=$(JRE_IMAGE_DIR)/$(CDS_NOCOOPS_ARCHIVE) \
+            -XX:-UseCompressedOops \
+            -Xmx128M -Xms128M $(LOG_INFO), \
+    ))

-  JRE_TARGETS += $(gen_cds_nocoops_archive_jre)
+    JRE_TARGETS += $(gen_cds_nocoops_archive_jre)
+  endif
 endif

 
################################################################################

/Magnus

On 2020-05-15 08:18, David Holmes wrote:
https://bugs.openjdk.java.net/browse/JDK-8245070

David

On 15/05/2020 4:10 pm, David Holmes wrote:
Hi Marc,

I will file a bug for this. Thanks for the report.

David

On 15/05/2020 4:04 pm, Marc Hoffmann wrote:
Dear Rory, dear all,

JaCoCo project here. It looks like that OpenJDK build for jdk main dev branch (Java 15) is broken for us on ARM32 since commit

     changeset 59296:e25b21095e86

     8242524: Use different default CDS archives depending on UseCompressOops
     Reviewed-by: erikj, iklam, ccheung

The logged error is:

     === Output from failing command(s) repeated here ===
     * For target support_images_jdk__gen_cds_nocoops_archive_jdk_exec:
     Unrecognized VM option 'UseCompressedOops'
     Did you mean '(+/-)CheckCompressedOops'? Error: Could not create the Java Virtual Machine.
     Error: A fatal exception has occurred. Program will exit.


Best regards,
-marc


Reply via email to