update to jdk22+36

This commit is contained in:
佛系少年中二 2024-06-19 17:17:23 +08:00
parent 7097e924d2
commit 78452fb9d0
7 changed files with 83777 additions and 18 deletions

83731
LoongArch64-support.patch Normal file

File diff suppressed because it is too large Load Diff

View File

@ -25,8 +25,8 @@ index becd187..9bbcb0c 100644
+#endif
+
#ifndef PRODUCT
extern int explicit_null_checks_inserted,
explicit_null_checks_elided;
extern uint explicit_null_checks_inserted,
explicit_null_checks_elided;
diff --git a/src/java.base/unix/native/libjava/ProcessImpl_md.c b/src/java.base/unix/native/libjava/ProcessImpl_md.c
index 3854f36..26cf41c 100644
--- a/src/java.base/unix/native/libjava/ProcessImpl_md.c

View File

@ -36,8 +36,8 @@ diff --git a/make/hotspot/lib/CompileJvm.gmk b/make/hotspot/lib/CompileJvm.gmk
index 65edd04..d5b689e 100644
--- a/make/hotspot/lib/CompileJvm.gmk
+++ b/make/hotspot/lib/CompileJvm.gmk
@@ -167,6 +167,14 @@ $(eval $(call SetupJdkLibrary, BUILD_LIBJVM, \
PRECOMPILED_HEADER_EXCLUDE := $(JVM_PRECOMPILED_HEADER_EXCLUDE), \
@@ -204,6 +204,14 @@ $(eval $(call SetupJdkLibrary, BUILD_LIBJVM, \
STATIC_LIB_EXCLUDE_OBJS := $(LIBJVM_STATIC_EXCLUDE_OBJS), \
))
+MEMCPY_OBJECT_FILE := $(JVM_OUTPUTDIR)/objs/memcpy$(OBJ_SUFFIX)

View File

@ -72,7 +72,7 @@
%global is_system_jdk 0
%global aarch64 aarch64 arm64 armv8
%global jit_arches x86_64 %{aarch64} riscv64
%global jit_arches x86_64 %{aarch64} riscv64 loongarch64
%global aot_arches x86_64 %{aarch64}
# Set of architectures for which java has short vector math library (libsvml.so)
@ -81,7 +81,7 @@
# By default, we build a debug build during main build on JIT architectures
%if %{with slowdebug}
%ifarch %{jit_arches}
%global include_debug_build 0
%global include_debug_build 1
%else
%global include_debug_build 0
%endif
@ -139,6 +139,9 @@
%ifarch %{aarch64}
%global archinstall aarch64
%endif
%ifarch %{loongarch64}
%global archinstall loongarch64
%endif
%ifnarch %{jit_arches}
%global archinstall %{_arch}
%endif
@ -151,7 +154,7 @@
# New Version-String scheme-style defines
# If you bump majorver, you must bump also vendor_version_string
%global majorver 21
%global majorver 22
# Used via new version scheme. JDK 19 was
# GA'ed in March 2022 => 22.3
%global vendor_version_string BiSheng
@ -159,7 +162,7 @@
# buildjdkver is usually same as %%{majorver},
# but in time of bootstrap of next jdk, it is majorver-1,
# and this it is better to change it here, on single place
%global buildjdkver 21
%global buildjdkver 22
# We don't add any LTS designator for STS packages (Fedora and EPEL).
# We need to explicitly exclude EPEL as it would have the %%{rhel} macro defined.
%if 0%{?rhel} && !0%{?epel}
@ -175,7 +178,7 @@
%global origin_nice OpenJDK
%global top_level_dir_name %{origin}
%global minorver 0
%global buildver 35
%global buildver 36
%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
@ -554,6 +557,7 @@ exit 0
%{_jvmdir}/%{sdkdir -- %{?1}}/lib/libsctp.so
%ifarch %{svml_arches}
%{_jvmdir}/%{sdkdir -- %{?1}}/lib/libjsvml.so
%{_jvmdir}/%{sdkdir -- %{?1}}/lib/libsimdsort.so
%endif
%{_jvmdir}/%{sdkdir -- %{?1}}/lib/libsyslookup.so
%{_jvmdir}/%{sdkdir -- %{?1}}/lib/libverify.so
@ -894,7 +898,7 @@ Name: java-latest-%{origin}
Version: %{newjavaver}.%{buildver}
# This package needs `.rolling` as part of Release so as to not conflict on install with
# java-X-openjdk. I.e. when latest rolling release is also an LTS release packaged as
Release: 2
Release: 0
# java-1.5.0-ibm from jpackage.org set Epoch to 1 for unknown reasons
# and this change was brought into RHEL-4. java-1.5.0-ibm packages
@ -930,8 +934,8 @@ URL: http://openjdk.java.net/
# to regenerate source0 (jdk) and source8 (jdk's taspets) run update_package.sh
# update_package.sh contains hard-coded repos, revisions, tags, and projects to regenerate the source archives
Source0: jdk-updates-jdk%{majorver}u-jdk-%{filever}+%{buildver}.tar.gz
Source1: OpenJDK20U-jdk_aarch64_linux_hotspot_20.0.2_9.tar.xz
Source2: OpenJDK20U-jdk_x64_linux_hotspot_20.0.2_9.tar.xz
Source1: OpenJDK21U-jdk_aarch64_linux_hotspot_21.0.3_9.tar.gz
Source2: OpenJDK21U-jdk_x64_linux_hotspot_21.0.3_9.tar.gz
Source8: systemtap_3.2_tapsets_hg-icedtea8-9d464368e06d.tar.xz
# Desktop files. Adapted from IcedTea
@ -965,7 +969,6 @@ Patch1: rh1648242-accessible_toolkit_crash_do_not_break_jvm.patch
Patch2: rh1648644-java_access_bridge_privileged_security.patch
Patch3: rh649512-remove_uses_of_far_in_jpeg_libjpeg_turbo_1_4_compat_for_jdk10_and_up.patch
# Depend on pcs-lite-libs instead of pcs-lite-devel as this is only in optional repo
Patch6: rh1684077-openjdk_should_depend_on_pcsc-lite-libs_instead_of_pcsc-lite-devel.patch
#############################################
#
@ -984,6 +987,14 @@ Patch8: downgrade-the-glibc-symver-of-log2f-posix_spawn.patch
############################################
Patch2000: 8316859-RISC-V-Disable-detection-of-V-through-HWCAP.patch
############################################
#
# LoongArch64 specific patches
#
############################################
Patch3000: LoongArch64-support.patch
BuildRequires: autoconf
BuildRequires: automake
BuildRequires: alsa-lib-devel
@ -1210,7 +1221,6 @@ pushd %{top_level_dir_name}
%patch1 -p1
%patch2 -p1
%patch3 -p1
%patch6 -p1
%patch7 -p1
%patch8 -p1
popd # openjdk
@ -1223,6 +1233,12 @@ pushd %{top_level_dir_name}
popd
%endif
%ifarch loongarch64
pushd %{top_level_dir_name}
%patch3000 -p1
popd
%endif
# Extract systemtap tapsets
%if %{with_systemtap}
tar --strip-components=1 -x -I xz -f %{SOURCE8}
@ -1277,7 +1293,7 @@ export NUM_PROC=${NUM_PROC:-1}
[ ${NUM_PROC} -gt %{?_smp_ncpus_max} ] && export NUM_PROC=%{?_smp_ncpus_max}
%endif
%ifarch s390x sparc64 alpha %{power64} %{aarch64}
%ifarch s390x sparc64 alpha %{power64} %{aarch64} loongarch64
export ARCH_DATA_MODEL=64
%endif
%ifarch alpha
@ -1329,12 +1345,14 @@ ARCH=$(uname -m)
BOOTJDKPATH=/usr/lib/jvm/java-%{buildjdkver}-openjdk
if [ "$ARCH" = "x86_64" ]; then
tar -xf %{SOURCE2}
BOOTJDKPATH=$PWD/jdk-20.0.2+9
BOOTJDKPATH=$PWD/jdk-21.0.3+9
elif [ "$ARCH" = "aarch64" ]; then
tar -xf %{SOURCE1}
BOOTJDKPATH=$PWD/jdk-20.0.2+9
BOOTJDKPATH=$PWD/jdk-21.0.3+9
elif [ "$ARCH" = "riscv64" ]; then
:
elif [ "$ARCH" = "loongarch64" ]; then
:
else
echo " Failed to set BOOTJDKPATH "
exit 18
@ -1359,7 +1377,11 @@ bash ../configure \
--with-version-pre=\"${EA_DESIGNATOR}\" \
--with-version-opt=%{lts_designator} \
--with-vendor-version-string="%{vendor_version_string}" \
%ifarch loongarch64
--with-vendor-name="Loongson" \
%else
--with-vendor-name="BiSheng" \
%endif
--with-vendor-url="https://openeuler.org/" \
--with-vendor-bug-url="%{bug_url}" \
--with-vendor-vm-bug-url="%{bug_url}" \
@ -1435,7 +1457,7 @@ $JAVA_HOME/bin/java $(echo $(basename %{SOURCE14})|sed "s|\.java||")
# Check debug symbols are present and can identify code
find "$JAVA_HOME" -iname '*.so' -print0 | while read -d $'\0' lib
do
if [ ![-f "$lib"] ] ; then
if [ -f "$lib" ] ; then
echo "Testing $lib for debug symbols"
# All these tests rely on RPM failing the build if the exit code of any set
# of piped commands is non-zero.
@ -1786,6 +1808,12 @@ cjc.mainProgram(arg)
%changelog
* Wed Jun 05 2024 Autistic_boyya <wangzhongyi7@huawei.com> - 1:22.0.0.36-rolling
- update to jdk22+36
* Fri Jun 07 2024 panxuefeng <panxuefeng@loongson.cn> - 1:21.0.0.35-3
- Init LoongArch64
* Mon May 06 2024 Dingli Zhang <dingli@iscas.ac.cn> - 1:21.0.0.35-2
- Backport JDK-8316859 for riscv64