diff --git a/java-17-openjdk.spec b/java-17-openjdk.spec index 9df8217..1fa4173 100644 --- a/java-17-openjdk.spec +++ b/java-17-openjdk.spec @@ -133,9 +133,9 @@ # Set of architectures which support the serviceability agent %global sa_arches %{ix86} x86_64 sparcv9 sparc64 %{aarch64} %{power64} %{arm} # Set of architectures which support class data sharing -# See https://bugzilla.redhat.com/show_bug.cgi?id=513605 -# MetaspaceShared::generate_vtable_methods is not implemented for the PPC JIT -%global share_arches %{ix86} x86_64 sparcv9 sparc64 %{aarch64} %{arm} s390x +# As of JDK-8005165 in OpenJDK 10, class sharing is not arch-specific +# However, it does segfault on the Zero assembler port, so currently JIT only +%global share_arches %{jit_arches} # Set of architectures for which we build the Shenandoah garbage collector %global shenandoah_arches x86_64 %{aarch64} # Set of architectures for which we build the Z garbage collector @@ -226,6 +226,10 @@ # JDK to use for bootstrapping %global bootjdk /usr/lib/jvm/java-%{buildjdkver}-openjdk +# VM variant being built +# This is always 'server' on 17u which doesn't have JDK-8273494 +%global vm_variant server + # debugedit tool for rewriting ELF file paths %global debugedit %{_rpmconfigdir}/debugedit @@ -361,7 +365,7 @@ %global top_level_dir_name %{origin} %global top_level_dir_name_backup %{top_level_dir_name}-backup %global buildver 7 -%global rpmrelease 3 +%global rpmrelease 4 # Settings used by the portable build %global portablerelease 2 %global portablesuffix el8 @@ -573,10 +577,6 @@ alternatives --install %{_jvmdir}/jre-%{javaver}-%{origin} $key %{_jvmdir}/%{jre } %define post_headless() %{expand: -%ifarch %{share_arches} -%{jrebindir -- %{?1}}/java -Xshare:dump >/dev/null 2>/dev/null -%endif - update-desktop-database %{_datadir}/applications &> /dev/null || : /bin/touch --no-create %{_datadir}/icons/hicolor &>/dev/null || : @@ -873,9 +873,12 @@ exit 0 %{_mandir}/man1/%{alt_java_name}-%{uniquesuffix -- %{?1}}.1* %{_mandir}/man1/keytool-%{uniquesuffix -- %{?1}}.1* %{_mandir}/man1/rmiregistry-%{uniquesuffix -- %{?1}}.1* -%{_jvmdir}/%{sdkdir -- %{?1}}/lib/server/ +%{_jvmdir}/%{sdkdir -- %{?1}}/lib/%{vm_variant}/ %ifarch %{share_arches} -%attr(444, root, root) %ghost %{_jvmdir}/%{sdkdir -- %{?1}}/lib/server/classes.jsa +%attr(444, root, root) %{_jvmdir}/%{sdkdir -- %{?1}}/lib/%{vm_variant}/classes.jsa +%ifnarch %{ix86} %{arm32} +%attr(444, root, root) %{_jvmdir}/%{sdkdir -- %{?1}}/lib/%{vm_variant}/classes_nocoops.jsa +%endif %endif %dir %{etcjavasubdir} %dir %{etcjavadir -- %{?1}} @@ -2478,6 +2481,22 @@ require "copy_jdk_configs.lua" %endif %changelog +* Tue Jul 11 2023 Andrew Hughes - 1:17.0.7.0.7-4 +- Introduce vm_variant global for consistency with future JDK builds +- Related: RHEL-36135 + +* Mon May 15 2023 Jiri Vanek - 1:17.0.7.0.7-4 +- Exclude classes_nocoops.jsa on i686 and arm32 +- Related: RHEL-36135 + +* Mon May 15 2023 Andrew Hughes - 1:17.0.7.0.7-4 +- Following JDK-8005165, class data sharing can be enabled on all JIT architectures +- Related: RHEL-36135 + +* Wed May 10 2023 Severin Gehwolf - 1:17.0.7.0.7-4 +- Fix packaging of CDS archives +- Resolves: RHEL-36135 + * Wed Apr 26 2023 Andrew Hughes - 1:17.0.7.0.7-3 - Sync portable spec file with current version - Related: RHEL-36129