Compare commits
10 Commits
94ed5ba576
...
9105779d37
Author | SHA1 | Date |
---|---|---|
Jiri | 9105779d37 | |
Petra Alice Mikova | e2a674daf0 | |
Fedora Release Engineering | ddda966d83 | |
Jiri | 3c123e76a3 | |
Jiri Vanek | 7f1c24631b | |
Jiri Vanek | 3f192f7986 | |
Jiri Vanek | 3a08aff87f | |
Jiri | af4ddd0260 | |
Jiri Vanek | c92cdeadf2 | |
Jiri | 8e0a39897f |
|
@ -113,10 +113,9 @@
|
|||
%global aot_arches x86_64 %{aarch64}
|
||||
# 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
|
||||
|
@ -279,7 +278,7 @@
|
|||
# New Version-String scheme-style defines
|
||||
%global featurever 20
|
||||
%global interimver 0
|
||||
%global updatever 1
|
||||
%global updatever 2
|
||||
%global patchver 0
|
||||
|
||||
# We don't add any LTS designator for STS packages (Fedora and EPEL).
|
||||
|
@ -322,7 +321,7 @@
|
|||
%global top_level_dir_name %{origin}
|
||||
%global top_level_dir_name_backup %{top_level_dir_name}-backup
|
||||
%global buildver 9
|
||||
%global rpmrelease 4
|
||||
%global rpmrelease 1
|
||||
# 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
|
||||
# Using 10 digits may overflow the int used for priority, so we combine the patch and build versions
|
||||
|
@ -539,10 +538,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 || :
|
||||
|
||||
|
@ -793,6 +788,7 @@ exit 0
|
|||
%define files_jre_headless() %{expand:
|
||||
%license %{_jvmdir}/%{sdkdir -- %{?1}}/legal
|
||||
%doc %{_defaultdocdir}/%{uniquejavadocdir -- %{?1}}/NEWS
|
||||
%{_jvmdir}/%{sdkdir -- %{?1}}/NEWS
|
||||
%dir %{_sysconfdir}/.java/.systemPrefs
|
||||
%dir %{_sysconfdir}/.java
|
||||
%dir %{_jvmdir}/%{sdkdir -- %{?1}}
|
||||
|
@ -804,7 +800,7 @@ exit 0
|
|||
%{_jvmdir}/%{sdkdir -- %{?1}}/bin/keytool
|
||||
%{_jvmdir}/%{sdkdir -- %{?1}}/bin/rmiregistry
|
||||
%dir %{_jvmdir}/%{sdkdir -- %{?1}}/lib
|
||||
%ifarch %{jit_arches}
|
||||
%ifarch %{share_arches}
|
||||
%{_jvmdir}/%{sdkdir -- %{?1}}/lib/classlist
|
||||
%endif
|
||||
%{_jvmdir}/%{sdkdir -- %{?1}}/lib/jexec
|
||||
|
@ -867,7 +863,10 @@ exit 0
|
|||
%{_mandir}/man1/rmiregistry-%{uniquesuffix -- %{?1}}.1*
|
||||
%{_jvmdir}/%{sdkdir -- %{?1}}/lib/%{vm_variant}/
|
||||
%ifarch %{share_arches}
|
||||
%attr(444, root, root) %ghost %{_jvmdir}/%{sdkdir -- %{?1}}/lib/%{vm_variant}/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}}
|
||||
|
@ -1333,6 +1332,10 @@ BuildRequires: desktop-file-utils
|
|||
# elfutils only are OK for build without AOT
|
||||
BuildRequires: elfutils-devel
|
||||
BuildRequires: gdb
|
||||
# for modyfying build-id in clashing binaries
|
||||
BuildRequires: /usr/bin/gcc
|
||||
BuildRequires: /usr/bin/objcopy
|
||||
BuildRequires: /usr/bin/readelf
|
||||
# Requirement for setting up nss.cfg and nss.fips.cfg
|
||||
BuildRequires: nss-devel
|
||||
# Requirement for system security property test
|
||||
|
@ -1903,6 +1906,29 @@ for suffix in %{build_loop} ; do
|
|||
buildoutputdir=`ls -d %{compatiblename}*portable${debugbuild}.${jdkjre}*`
|
||||
top_dir_abs_main_build_path=$(pwd)/${buildoutputdir}
|
||||
installjdk ${top_dir_abs_main_build_path}
|
||||
# it may happen, that some library - in original case libjsvml build identically for two jdks
|
||||
# it is becasue of our ld/gcc flags - otherwise rpm build enhances each binarry by full path to it
|
||||
# if it is hit then this library needs to have build-id repalced - note, that it do not affect dbugability
|
||||
clashinglibs=""
|
||||
%ifarch %{svml_arches}
|
||||
clashinglibs="$clashinglibs lib/libjsvml.so"
|
||||
%endif
|
||||
for lib in $clashinglibs ; do
|
||||
libjsvmlgcchackdir=`mktemp -d`
|
||||
pushd $libjsvmlgcchackdir
|
||||
libjsvml=${top_dir_abs_main_build_path}/$lib
|
||||
ls -l $libjsvml
|
||||
echo "#include <stdio.h>" > a.c
|
||||
echo "int main(void) { printf(\"$libjsvml\"); }" >> a.c
|
||||
gcc a.c -o exe
|
||||
readelf -n exe | grep "Build ID"
|
||||
readelf -n $libjsvml | grep "Build ID"
|
||||
objcopy --dump-section .note.gnu.build-id=id exe
|
||||
objcopy --update-section .note.gnu.build-id=id $libjsvml
|
||||
readelf -n $libjsvml | grep -i "Build ID"
|
||||
popd
|
||||
rm -rf $libjsvmlgcchackdir
|
||||
done
|
||||
# Check debug symbols were built into the dynamic libraries
|
||||
if [ $jdkjre == jdk ] ; then
|
||||
#jdk only?
|
||||
|
@ -2034,8 +2060,6 @@ find $RPM_BUILD_ROOT/%{_jvmdir}/%{sdkdir -- $suffix}/ -name "*.so" -exec chmod 7
|
|||
find $RPM_BUILD_ROOT/%{_jvmdir}/%{sdkdir -- $suffix}/ -type d -exec chmod 755 {} \; ;
|
||||
find $RPM_BUILD_ROOT/%{_jvmdir}/%{sdkdir -- $suffix}/legal -type f -exec chmod 644 {} \; ;
|
||||
|
||||
#TODO conslut this clean up
|
||||
rm $RPM_BUILD_ROOT/%{_jvmdir}/%{sdkdir -- $suffix}/NEWS #is in commondocdir. Ok ot go, or also pack
|
||||
if [ "x$suffix" = "x" ] ; then
|
||||
rm $RPM_BUILD_ROOT/%{_jvmdir}/%{sdkdir -- $suffix}/javadocs.zip #is in subpackages, 1 renamed, 2nd unpacked
|
||||
fi
|
||||
|
@ -2365,6 +2389,24 @@ cjc.mainProgram(args)
|
|||
%endif
|
||||
|
||||
%changelog
|
||||
* Mon Aug 07 2023 Jiri Vanek <jvanek@redhat.com> - 1:20.0.2.0.9-2.rolling
|
||||
- updated to July security update 20.0.2.9 portables
|
||||
|
||||
* Thu Jul 20 2023 Fedora Release Engineering <releng@fedoraproject.org> - 1:20.0.1.0.9-8.rolling.1
|
||||
- Rebuilt for https://fedoraproject.org/wiki/Fedora_39_Mass_Rebuild
|
||||
|
||||
* Thu May 11 2023 Andrew Hughes <gnu.andrew@redhat.com> - 1:20.0.1.0.9-8.rolling
|
||||
- Following JDK-8005165, class data sharing can be enabled on all JIT architectures
|
||||
|
||||
* Wed May 10 2023 Severin Gehwolf <sgehwolf@redhat.com> - 1:20.0.1.0.9-6.rolling
|
||||
- Fix packaging of CDS archives
|
||||
|
||||
* Fri Apr 28 2023 Jiri Vanek <jvanek@redhat.com> - 1:20.0.1.0.9-6.rolling
|
||||
- faking build-id in libjsvml.so
|
||||
|
||||
* Fri Apr 28 2023 Jiri Vanek <jvanek@redhat.com> - 1:20.0.1.0.9-5.rolling
|
||||
- returned news
|
||||
|
||||
* Fri Apr 28 2023 Jiri Vanek <jvanek@redhat.com> - 1:20.0.1.0.9-4.rolling
|
||||
- now expecting the exact version in portbale filename
|
||||
|
||||
|
|
Loading…
Reference in New Issue