diff --git a/.gitattributes b/.gitattributes new file mode 100644 index 0000000000000000000000000000000000000000..f087b429e2f81a9f37b28a8308e2210f84df6c9b --- /dev/null +++ b/.gitattributes @@ -0,0 +1 @@ +*.tar.gz filter=lfs diff=lfs merge=lfs -text diff --git a/.lfsconfig b/.lfsconfig new file mode 100644 index 0000000000000000000000000000000000000000..c92252770dc3836c04e4d9d659f8691f0d8ee5a2 --- /dev/null +++ b/.lfsconfig @@ -0,0 +1,2 @@ +[lfs] + url = https://artlfs.openeuler.openatom.cn/src-openEuler/openjdk-latest \ No newline at end of file diff --git a/8332854-Unable-to-build-openjdk-with-with-harfbuzz=system.patch b/8332854-Unable-to-build-openjdk-with-with-harfbuzz=system.patch deleted file mode 100644 index ba23bf8b777ca64c09272dc14507fb49ddb054e9..0000000000000000000000000000000000000000 --- a/8332854-Unable-to-build-openjdk-with-with-harfbuzz=system.patch +++ /dev/null @@ -1,22 +0,0 @@ -From ba5a4670b8ad86fefb41a939752754bf36aac9dc Mon Sep 17 00:00:00 2001 -From: Phil Race -Date: Mon, 17 Jun 2024 19:37:32 +0000 -Subject: [PATCH] 8332854: Unable to build openjdk with --with-harfbuzz=system - -Reviewed-by: jwaters, erikj, jdv, ihse ---- - make/modules/java.desktop/lib/ClientLibraries.gmk | 1 + - 1 file changed, 1 insertion(+) - -diff --git a/make/modules/java.desktop/lib/ClientLibraries.gmk b/make/modules/java.desktop/lib/ClientLibraries.gmk -index 6f3616608ccea..f023969536987 100644 ---- a/make/modules/java.desktop/lib/ClientLibraries.gmk -+++ b/make/modules/java.desktop/lib/ClientLibraries.gmk -@@ -281,6 +281,7 @@ endif - ifeq ($(USE_EXTERNAL_HARFBUZZ), true) - LIBFONTMANAGER_EXTRA_SRC = - LIBFONTMANAGER_LIBS += $(HARFBUZZ_LIBS) -+ LIBFONTMANAGER_CFLAGS += $(HARFBUZZ_CFLAGS) - else - LIBFONTMANAGER_EXTRA_SRC = libharfbuzz - diff --git a/jdk-updates-jdk23u-jdk-23.0.1+11.tar.gz b/jdk-updates-jdk23u-jdk-23.0.1+11.tar.gz deleted file mode 100644 index 117daae75c872e112ff72ec503ddbc53dd39c4ba..0000000000000000000000000000000000000000 Binary files a/jdk-updates-jdk23u-jdk-23.0.1+11.tar.gz and /dev/null differ diff --git a/jdk-updates-jdk24u-jdk-24+36.tar.gz b/jdk-updates-jdk24u-jdk-24+36.tar.gz new file mode 100644 index 0000000000000000000000000000000000000000..d0aaa6a3f3a17df3ac56e9dd92270b0f7b31e90b --- /dev/null +++ b/jdk-updates-jdk24u-jdk-24+36.tar.gz @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:59c7f47ea50986c44ff00bed2d6cbee950e14a1b3e660c0ccf4f246c2f2ee053 +size 75981916 diff --git a/man.tar.gz b/man.tar.gz new file mode 100644 index 0000000000000000000000000000000000000000..b45a06d029f32248032d6a31e444b35723704753 --- /dev/null +++ b/man.tar.gz @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:d0f024005a0a73563adefb1a4e0a1b8f86a4f3c446548c1982ac4379c8011b89 +size 195960 diff --git a/openjdk-latest.spec b/openjdk-latest.spec index b15c2335877b2edf8db22ee38803f4b42c082754..03c04b0ae722ddeac1f8df50e30a4eefe786203f 100644 --- a/openjdk-latest.spec +++ b/openjdk-latest.spec @@ -81,6 +81,9 @@ # Set of architectures for which java has short vector math library (libsvml.so) %global svml_arches x86_64 +# Set of architectures with libsleef.so +%global sleef_arches aarch64 riscv64 + # By default, we build a debug build during main build on JIT architectures %if %{with slowdebug} %ifarch %{jit_arches} @@ -157,11 +160,11 @@ # New Version-String scheme-style defines # If you bump majorver, you must bump also vendor_version_string -%global majorver 23 +%global majorver 24 # Used via new version scheme. JDK 19 was # GA'ed in March 2022 => 22.3 %global vendor_version_string BiSheng -%global securityver 1 +%global securityver 0 # 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 @@ -181,8 +184,8 @@ %global origin_nice OpenJDK %global top_level_dir_name %{origin} %global minorver 0 -%global buildver 11 -%global rpmrelease 3 +%global buildver 36 +%global rpmrelease 0 # 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 %global priority %( printf '%02d%02d%02d%02d' %{majorver} %{minorver} %{securityver} %{buildver} ) @@ -379,6 +382,7 @@ alternatives \\ --slave %{_bindir}/jimage jimage %{sdkbindir -- %{?1}}/jimage \\ --slave %{_bindir}/jinfo jinfo %{sdkbindir -- %{?1}}/jinfo \\ --slave %{_bindir}/jmap jmap %{sdkbindir -- %{?1}}/jmap \\ + --slave %{_bindir}/jnativescan jnativescan %{sdkbindir -- %{?1}}/jnativescan \\ --slave %{_bindir}/jps jps %{sdkbindir -- %{?1}}/jps \\ --slave %{_bindir}/jpackage jpackage %{sdkbindir -- %{?1}}/jpackage \\ --slave %{_bindir}/jrunscript jrunscript %{sdkbindir -- %{?1}}/jrunscript \\ @@ -410,6 +414,8 @@ alternatives \\ %{_mandir}/man1/jinfo-%{uniquesuffix -- %{?1}}.1$ext \\ --slave %{_mandir}/man1/jmap.1$ext jmap.1$ext \\ %{_mandir}/man1/jmap-%{uniquesuffix -- %{?1}}.1$ext \\ + --slave %{_mandir}/man1/jnativescan.1$ext jnativescan.1$ext \\ + %{_mandir}/man1/jnativescan-%{uniquesuffix -- %{?1}}.1$ext \\ --slave %{_mandir}/man1/jps.1$ext jps.1$ext \\ %{_mandir}/man1/jps-%{uniquesuffix -- %{?1}}.1$ext \\ --slave %{_mandir}/man1/jpackage.1$ext jpackage.1$ext \\ @@ -561,6 +567,9 @@ exit 0 %{_jvmdir}/%{sdkdir -- %{?1}}/lib/libjsvml.so %{_jvmdir}/%{sdkdir -- %{?1}}/lib/libsimdsort.so %endif +%ifarch %{sleef_arches} +%{_jvmdir}/%{sdkdir -- %{?1}}/lib/libsleef.so +%endif %{_jvmdir}/%{sdkdir -- %{?1}}/lib/libsyslookup.so %{_jvmdir}/%{sdkdir -- %{?1}}/lib/libverify.so %{_jvmdir}/%{sdkdir -- %{?1}}/lib/libzip.so @@ -574,6 +583,8 @@ exit 0 %{_jvmdir}/%{sdkdir -- %{?1}}/lib/client/ %attr(444, root, root) %ghost %{_jvmdir}/%{sdkdir -- %{?1}}/lib/server/classes.jsa %attr(444, root, root) %ghost %{_jvmdir}/%{sdkdir -- %{?1}}/lib/client/classes.jsa +%attr(444, root, root) %ghost %{_jvmdir}/%{sdkdir -- %{?1}}/lib/server/classes_coh.jsa +%attr(444, root, root) %ghost %{_jvmdir}/%{sdkdir -- %{?1}}/lib/client/classes_coh.jsa %dir %{etcjavasubdir} %dir %{etcjavadir -- %{?1}} %dir %{etcjavadir -- %{?1}}/lib @@ -586,7 +597,6 @@ exit 0 %dir %{etcjavadir -- %{?1}}/conf/security/policy %dir %{etcjavadir -- %{?1}}/conf/security/policy/limited %dir %{etcjavadir -- %{?1}}/conf/security/policy/unlimited -%config(noreplace) %{etcjavadir -- %{?1}}/lib/security/default.policy %config(noreplace) %{etcjavadir -- %{?1}}/lib/security/blocked.certs %config(noreplace) %{etcjavadir -- %{?1}}/lib/security/public_suffix_list.dat %config(noreplace) %{etcjavadir -- %{?1}}/conf/security/policy/limited/exempt_local.policy @@ -595,7 +605,6 @@ exit 0 %config(noreplace) %{etcjavadir -- %{?1}}/conf/security/policy/unlimited/default_local.policy %config(noreplace) %{etcjavadir -- %{?1}}/conf/security/policy/unlimited/default_US_export.policy %{etcjavadir -- %{?1}}/conf/security/policy/README.txt -%config(noreplace) %{etcjavadir -- %{?1}}/conf/security/java.policy %config(noreplace) %{etcjavadir -- %{?1}}/conf/security/java.security %config(noreplace) %{etcjavadir -- %{?1}}/conf/logging.properties %config(noreplace) %{etcjavadir -- %{?1}}/conf/security/nss.cfg @@ -648,6 +657,7 @@ exit 0 %{_jvmdir}/%{sdkdir -- %{?1}}/bin/jlink %{_jvmdir}/%{sdkdir -- %{?1}}/bin/jmap %{_jvmdir}/%{sdkdir -- %{?1}}/bin/jmod +%{_jvmdir}/%{sdkdir -- %{?1}}/bin/jnativescan %{_jvmdir}/%{sdkdir -- %{?1}}/bin/jps %{_jvmdir}/%{sdkdir -- %{?1}}/bin/jpackage %{_jvmdir}/%{sdkdir -- %{?1}}/bin/jrunscript @@ -685,6 +695,7 @@ exit 0 %{_mandir}/man1/jdeprscan-%{uniquesuffix -- %{?1}}.1.gz %{_mandir}/man1/jlink-%{uniquesuffix -- %{?1}}.1.gz %{_mandir}/man1/jmod-%{uniquesuffix -- %{?1}}.1.gz +%{_mandir}/man1/jnativescan-%{uniquesuffix -- %{?1}}.1.gz %{_mandir}/man1/jshell-%{uniquesuffix -- %{?1}}.1.gz %{_mandir}/man1/jfr-%{uniquesuffix -- %{?1}}.1.gz @@ -901,7 +912,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: %{rpmrelease} +Release: %{rpmrelease}.rolling # 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 @@ -954,6 +965,10 @@ Source13: TestCryptoLevel.java # Ensure ECDSA is working Source14: TestECDSA.java +# Because there is no pandoc, man pages cannot be generated during the build, +# so get it from the builds of https://jdk.java.net/ +Source15: man.tar.gz + ############################################ # # RPM/distribution specific patches @@ -967,7 +982,6 @@ Patch1000: rh1648249-add_commented_out_nss_cfg_provider_to_java_security.patch # Ignore AWTError when assistive technologies are loaded Patch1: rh1648242-accessible_toolkit_crash_do_not_break_jvm.patch # Restrict access to java-atk-wrapper classes -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 @@ -981,9 +995,6 @@ Patch3: rh649512-remove_uses_of_far_in_jpeg_libjpeg_turbo_1_4_compat_for_jdk10_a Patch7: downgrade-the-glibc-symver-of-memcpy.patch Patch8: downgrade-the-glibc-symver-of-log2f-posix_spawn.patch -# 23.0.1 -Patch9: 8332854-Unable-to-build-openjdk-with-with-harfbuzz=system.patch - ############################################ # # LoongArch64 specific patches @@ -1215,19 +1226,17 @@ fi # Remove libraries that are linked sh %{SOURCE12} pushd %{top_level_dir_name} -%patch1 -p1 -%patch2 -p1 -%patch3 -p1 -%patch7 -p1 -%patch8 -p1 -%patch9 -p1 +%patch 1 -p1 +%patch 3 -p1 +%patch 7 -p1 +%patch 8 -p1 popd # openjdk -%patch1000 +%patch 1000 %ifarch loongarch64 pushd %{top_level_dir_name} -%patch3000 -p1 +%patch 3000 -p1 popd %endif @@ -1378,6 +1387,8 @@ bash ../configure \ --with-debug-level=$debugbuild \ --with-native-debug-symbols=internal \ --enable-unlimited-crypto \ + --enable-linkable-runtime \ + --enable-keep-packaged-modules \ --with-zlib=system \ --with-libjpeg=system \ --with-giflib=system \ @@ -1509,14 +1520,14 @@ EOF #jar -tf $JAVA_HOME/lib/src.zip | grep 'sun.misc.Unsafe' # Check class files include useful debugging information -$JAVA_HOME/bin/javap -l java.lang.Object | grep "Compiled from" -$JAVA_HOME/bin/javap -l java.lang.Object | grep LineNumberTable -$JAVA_HOME/bin/javap -l java.lang.Object | grep LocalVariableTable +$JAVA_HOME/bin/javap -l -c java.lang.Object | grep "Compiled from" +$JAVA_HOME/bin/javap -l -c java.lang.Object | grep LineNumberTable +$JAVA_HOME/bin/javap -l -c java.lang.Object | grep LocalVariableTable # Check generated class files include useful debugging information -$JAVA_HOME/bin/javap -l java.nio.ByteBuffer | grep "Compiled from" -$JAVA_HOME/bin/javap -l java.nio.ByteBuffer | grep LineNumberTable -$JAVA_HOME/bin/javap -l java.nio.ByteBuffer | grep LocalVariableTable +$JAVA_HOME/bin/javap -l -c java.nio.ByteBuffer | grep "Compiled from" +$JAVA_HOME/bin/javap -l -c java.nio.ByteBuffer | grep LineNumberTable +$JAVA_HOME/bin/javap -l -c java.nio.ByteBuffer | grep LocalVariableTable # build cycles check done @@ -1568,6 +1579,8 @@ pushd %{buildoutputdir $suffix}/images/%{jdkimage} # Install man pages install -d -m 755 $RPM_BUILD_ROOT%{_mandir}/man1 + tar -xf %{SOURCE15} + rm -v man/man1/{jabswitch,jaccessinspector,jaccesswalker,kinit,klist,ktab}.1 for manpage in man/man1/* do # Convert man pages to UTF8 encoding @@ -1798,6 +1811,11 @@ cjc.mainProgram(args) -- the returns from copy_jdk_configs.lua should not affect %changelog +* Mon Mar 31 2025 Dingli Zhang - 1:24.0.0.36-0.rolling +- update to jdk24.0.0+36 +- Add lfs config +- Fix typo in changelog + * Wed Mar 26 2025 Whitney33 - 1:23.0.1.11-3 - fix condigure arguments, disable global lto @@ -1827,7 +1845,7 @@ cjc.mainProgram(args) -- the returns from copy_jdk_configs.lua should not affect * Fri Jun 21 2024 aoqi - 1:22.0.0.36-1 - update to jdk22+36 for loongarch64 -* Wed Jun 05 2024 Autistic_boyya - 1:22.0.0.36-rolling +* Mon Jun 17 2024 Autistic_boyya - 1:22.0.0.36-rolling - update to jdk22+36 * Fri Jun 07 2024 panxuefeng - 1:21.0.0.35-3 @@ -1858,7 +1876,7 @@ cjc.mainProgram(args) -- the returns from copy_jdk_configs.lua should not affect * Wed Nov 2 2022 DXwangg - 1:19.0.0.36-1.rolling - set build jdk to 19 -* Thu Oct 27 2022 DXwangg -1:19.0.0.36-0.0.ea.rolling +* Thu Oct 27 2022 DXwangg - 1:19.0.0.36-0.0.ea.rolling - Update to jdk-19.0.0.0+36 - Remove references to sample directory removed by JDK-8284999 - Need to include the '.S' suffix in debuginfo checks after JDK-8284661 @@ -1909,7 +1927,7 @@ cjc.mainProgram(args) -- the returns from copy_jdk_configs.lua should not affect - add lib/libsvml.so for intel - add lib/libsyslookup.so to files -* Tuh Sep 9 2021 noah - 1:16.0.2.7-0.rolling +* Thu Sep 9 2021 noah - 1:16.0.2.7-0.rolling - Update to jdk-16.0.2+7 * Thu Jul 8 2021 noah - 1:16.0.1.9-2.rolling diff --git a/rh1648644-java_access_bridge_privileged_security.patch b/rh1648644-java_access_bridge_privileged_security.patch deleted file mode 100644 index 53026ad5c38dcdc15b18048ef1fd2f1ea9f0aff1..0000000000000000000000000000000000000000 --- a/rh1648644-java_access_bridge_privileged_security.patch +++ /dev/null @@ -1,20 +0,0 @@ ---- openjdk/src/java.base/share/conf/security/java.security -+++ openjdk/src/java.base/share/conf/security/java.security -@@ -304,6 +304,8 @@ - # - package.access=sun.misc.,\ - sun.reflect.,\ -+ org.GNOME.Accessibility.,\ -+ org.GNOME.Bonobo.,\ - - # - # List of comma-separated packages that start with or equal this string -@@ -316,6 +318,8 @@ - # - package.definition=sun.misc.,\ - sun.reflect.,\ -+ org.GNOME.Accessibility.,\ -+ org.GNOME.Bonobo.,\ - - # - # Determines whether this properties file can be appended to