diff --git a/java-11-openjdk.spec b/java-11-openjdk.spec index b0c9ef3..e3276ae 100644 --- a/java-11-openjdk.spec +++ b/java-11-openjdk.spec @@ -174,6 +174,11 @@ %else %global bootstrap_build 1 %endif +# Need to support noarch for srpm build +%ifarch noarch +%global archinstall %{nil} +%global stapinstall %{nil} +%endif %if %{bootstrap_build} %global release_targets bootcycle-images static-libs-image docs-zip @@ -205,50 +210,57 @@ # In some cases, the arch used by the JDK does # not match _arch. # Also, in some cases, the machine name used by SystemTap -# does not match that given by _build_cpu +# does not match that given by _target_cpu %ifarch x86_64 %global archinstall amd64 +%global stapinstall x86_64 %endif %ifarch ppc %global archinstall ppc +%global stapinstall powerpc %endif %ifarch %{ppc64be} %global archinstall ppc64 +%global stapinstall powerpc %endif %ifarch %{ppc64le} %global archinstall ppc64le +%global stapinstall powerpc %endif %ifarch %{ix86} %global archinstall i686 +%global stapinstall i386 %endif %ifarch ia64 %global archinstall ia64 +%global stapinstall ia64 %endif %ifarch s390 %global archinstall s390 +%global stapinstall s390 %endif %ifarch s390x %global archinstall s390x +%global stapinstall s390 %endif %ifarch %{arm} %global archinstall arm +%global stapinstall arm %endif %ifarch %{aarch64} %global archinstall aarch64 +%global stapinstall arm64 %endif # 32 bit sparc, optimized for v9 %ifarch sparcv9 %global archinstall sparc +%global stapinstall %{_target_cpu} %endif # 64 bit sparc %ifarch sparc64 %global archinstall sparcv9 +%global stapinstall %{_target_cpu} %endif -%ifnarch %{jit_arches} -%global archinstall %{_arch} -%endif - - %ifarch %{systemtap_arches} %global with_systemtap 1 @@ -286,7 +298,7 @@ %global origin_nice OpenJDK %global top_level_dir_name %{origin} %global buildver 8 -%global rpmrelease 1 +%global rpmrelease 2 #%%global tagsuffix "" # Priority must be 8 digits in total; up to openjdk 1.8, we were using 18..... so when we moved to 11, we had to add another digit %if %is_system_jdk @@ -400,10 +412,10 @@ # and 32 bit architectures we place the tapsets under the arch # specific dir (note that systemtap will only pickup the tapset # for the primary arch for now). Systemtap uses the machine name -# aka build_cpu as architecture specific directory name. +# aka target_cpu as architecture specific directory name. %global tapsetroot /usr/share/systemtap %global tapsetdirttapset %{tapsetroot}/tapset/ -%global tapsetdir %{tapsetdirttapset}/%{_build_cpu} +%global tapsetdir %{tapsetdirttapset}/%{stapinstall} %endif # not-duplicated scriptlets for normal/debug packages @@ -1483,6 +1495,14 @@ The %{origin_nice} %{featurever} API documentation compressed in a single archiv %endif %prep + +# Using the echo macro breaks rpmdev-bumpspec, as it parses the first line of stdout :-( +%if 0%{?stapinstall:1} + echo "CPU: %{_target_cpu}, arch install directory: %{archinstall}, SystemTap install directory: %{stapinstall}" +%else + %{error:Unrecognised architecture %{_target_cpu}} +%endif + if [ %{include_normal_build} -eq 0 -o %{include_normal_build} -eq 1 ] ; then echo "include_normal_build is %{include_normal_build}" else @@ -2167,6 +2187,12 @@ require "copy_jdk_configs.lua" %endif %changelog +* Sat Jan 23 2021 Andrew Hughes - 1:11.0.10.0.8-0.2.ea +- Need to support noarch for creating source RPMs for non-scratch builds. + +* Mon Jan 18 2021 Andrew Hughes - 1:11.0.10.0.8-0.2.ea +- Introduce stapinstall variable to set SystemTap arch directory correctly (e.g. arm64 on aarch64) + * Mon Jan 18 2021 Andrew Hughes - 1:11.0.10.0.8-0.1.ea - Use -march=i686 for x86 builds if -fcf-protection is detected (needs CMOV)