Fix packaging of CDS archives
The JDK build includes CDS archives, classes.jsa and classes_nocoops.jsa already since JEP 341. Executing -Xshare:dump in the headless post script breaks AppCDS workflows using dynamic dumps since that relies on the base CDS archive from the JDK to be unchanged. Following JDK-8005165, class data sharing can be enabled on all JIT architectures Exclude classes_nocoops.jsa on i686 and arm32 Introduce vm_variant global for consistency with future JDK builds Resolves: RHEL-36135
This commit is contained in:
		
							parent
							
								
									e0450f0029
								
							
						
					
					
						commit
						2483c0c540
					
				| @ -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 <gnu.andrew@redhat.com> - 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 <jvanek@redhat.com> - 1:17.0.7.0.7-4 | ||||
| - Exclude classes_nocoops.jsa on i686 and arm32 | ||||
| - Related: RHEL-36135 | ||||
| 
 | ||||
| * Mon May 15 2023 Andrew Hughes <gnu.andrew@redhat.com> - 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 <sgehwolf@redhat.com> - 1:17.0.7.0.7-4 | ||||
| - Fix packaging of CDS archives | ||||
| - Resolves: RHEL-36135 | ||||
| 
 | ||||
| * Wed Apr 26 2023 Andrew Hughes <gnu.andrew@redhat.com> - 1:17.0.7.0.7-3 | ||||
| - Sync portable spec file with current version | ||||
| - Related: RHEL-36129 | ||||
|  | ||||
		Loading…
	
		Reference in New Issue
	
	Block a user