The package rpms/java-17-openjdk.git has added or updated architecture specific content in
its
spec file (ExclusiveArch/ExcludeArch or %ifarch/%ifnarch) in commit(s):
https://src.fedoraproject.org/cgit/rpms/java-17-openjdk.git/commit/?id=b8....
Change:
+%ifarch %{jit_arches}
Thanks.
Full change:
============
commit 9ad2fbb190ae1b83eaf81eaccbfc80fcc3da830a
Merge: 15b4cc6 2bd0a29
Author: Jiri Vanek <jvanek(a)redhat.com>
Date: Mon Nov 27 11:58:48 2023 +0100
Merge branch 'f38' into f37
commit 2bd0a29943f3d04c88a7b2f6762bc417bea091d4
Merge: 9fb789b b82a5a9
Author: Jiri Vanek <jvanek(a)redhat.com>
Date: Mon Nov 27 11:58:17 2023 +0100
Merge branch 'f39' into f38
commit b82a5a9bf238f95ad82ef22fd28b51949c173116
Author: Jiri <jvanek(a)redhat.com>
Date: Sun Nov 26 21:52:48 2023 +0100
updated to OpenJDK 17.0.9 (2023-10-17)
diff --git a/.gitignore b/.gitignore
index 4663d5a..29ee5dd 100644
--- a/.gitignore
+++ b/.gitignore
@@ -1,37 +1,2 @@
-/jdk-jdk12-jdk-12+33.tar.xz
/systemtap_3.2_tapsets_hg-icedtea8-9d464368e06d.tar.xz
-/jdk-updates-jdk12u-jdk-12.0.1+12.tar.xz
-/jdk-jdk13-jdk-13+27.tar.xz
-/jdk-jdk13-jdk-13+28.tar.xz
-/jdk-jdk13-jdk-13+33.tar.xz
-/jdk-updates-jdk13u-jdk-13.0.1+9.tar.xz
-/jdk-updates-jdk13u-jdk-13.0.2+8.tar.xz
-/jdk-jdk14-jdk-14+36.tar.xz
-/jdk-updates-jdk14u-jdk-14.0.1+7.tar.xz
-/jdk-updates-jdk14u-jdk-14.0.2+12.tar.xz
-/jdk-jdk15-jdk-15+36.tar.xz
-/jdk-updates-jdk15u-jdk-15.0.1+9.tar.xz
-/tapsets-icedtea-3.15.0.tar.xz
-/jdk-updates-jdk15u-jdk-15.0.2+7.tar.xz
-/openjdk-jdk16-jdk-16+36.tar.xz
-/openjdk-jdk16u-jdk-16.0.1+9.tar.xz
-/openjdk-jdk17-jdk-17+26.tar.xz
-/openjdk-jdk17-jdk-17+33.tar.xz
-/openjdk-jdk17-jdk-17+35.tar.xz
-/openjdk-jdk17u-jdk-17.0.1+12.tar.xz
/tapsets-icedtea-6.0.0pre00-c848b93a8598.tar.xz
-/openjdk-jdk17u-jdk-17.0.2+8.tar.xz
-/openjdk-jdk17u-jdk-17.0.3+1.tar.xz
-/openjdk-jdk17u-jdk-17.0.3+5.tar.xz
-/openjdk-jdk17u-17usec.17.0.3+5-220408.tar.xz
-/openjdk-jdk17u-jdk-17.0.3+7.tar.xz
-/openjdk-jdk17u-jdk-17.0.4+1.tar.xz
-/openjdk-jdk17u-jdk-17.0.4+7.tar.xz
-/openjdk-jdk17u-jdk-17.0.4+8.tar.xz
-/openjdk-jdk17u-jdk-17.0.4.1+1.tar.xz
-/openjdk-jdk17u-jdk-17.0.5+1.tar.xz
-/openjdk-jdk17u-jdk-17.0.5+7.tar.xz
-/openjdk-jdk17u-jdk-17.0.5+8.tar.xz
-/openjdk-jdk17u-jdk-17.0.6+1.tar.xz
-/openjdk-jdk17u-jdk-17.0.6+9.tar.xz
-/openjdk-jdk17u-jdk-17.0.6+10.tar.xz
diff --git a/README.md b/README.md
index 3bfd7d2..1504e68 100644
--- a/README.md
+++ b/README.md
@@ -2,7 +2,7 @@ OpenJDK 17 is the latest Long-Term Support (LTS) release of the Java
platform.
*
https://fedoraproject.org/wiki/Changes/Java17
-For a list of major changes from OpenJDK 11 (java-11-openjdk), see the upstream
+For a list of major changes from OpenJDK 17 (java-17-openjdk), see the upstream
release page for OpenJDK 17 and the preceding interim releases:
* 12:
https://openjdk.java.net/projects/jdk/12/
diff --git a/TestTranslations.java b/TestTranslations.java
index d87647a..f6a4fe2 100644
--- a/TestTranslations.java
+++ b/TestTranslations.java
@@ -52,7 +52,7 @@ public class TestTranslations {
map.put(Locale.FRANCE, new String[] { "heure normale des Rocheuses",
"UTC\u221207:00", "MST",
"heure d\u2019\u00e9t\u00e9 des
Rocheuses", "UTC\u221206:00", "MDT",
"heure des Rocheuses",
"UTC\u221207:00", "MT"});
- map.put(Locale.GERMANY, new String[] { "Rocky Mountain-Normalzeit",
"GMT-07:00", "MST",
+ map.put(Locale.GERMANY, new String[] { "Rocky-Mountain-Normalzeit",
"GMT-07:00", "MST",
"Rocky-Mountain-Sommerzeit",
"GMT-06:00", "MDT",
"Rocky-Mountain-Zeit",
"GMT-07:00", "MT"});
CIUDAD_JUAREZ = Collections.unmodifiableMap(map);
diff --git a/generate_source_tarball.sh b/generate_source_tarball.sh
new file mode 100755
index 0000000..c53abdc
--- /dev/null
+++ b/generate_source_tarball.sh
@@ -0,0 +1 @@
+## This file is intentionally left blank
diff --git a/icedtea_sync.sh b/icedtea_sync.sh
index e5c54f3..c53abdc 100755
--- a/icedtea_sync.sh
+++ b/icedtea_sync.sh
@@ -1,192 +1 @@
-#!/bin/bash
-
-# Copyright (C) 2019 Red Hat, Inc.
-# Written by Andrew John Hughes <gnu.andrew(a)redhat.com>.
-#
-# This program is free software: you can redistribute it and/or modify
-# it under the terms of the GNU Affero General Public License as
-# published by the Free Software Foundation, either version 3 of the
-# License, or (at your option) any later version.
-#
-# This program is distributed in the hope that it will be useful,
-# but WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-# GNU Affero General Public License for more details.
-#
-# You should have received a copy of the GNU Affero General Public License
-# along with this program. If not, see <
http://www.gnu.org/licenses/>.
-
-ICEDTEA_USE_VCS=true
-
-ICEDTEA_VERSION=3.15.0
-ICEDTEA_URL=https://icedtea.classpath.org/download/source
-ICEDTEA_SIGNING_KEY=CFDA0F9B35964222
-
-ICEDTEA_HG_URL=https://icedtea.classpath.org/hg/icedtea11
-
-set -e
-
-RPM_DIR=${PWD}
-if [ ! -f ${RPM_DIR}/jconsole.desktop.in ] ; then
- echo "Not in RPM source tree.";
- exit 1;
-fi
-
-if test "x${TMPDIR}" = "x"; then
- TMPDIR=/tmp;
-fi
-WORKDIR=${TMPDIR}/it.sync
-
-echo "Using working directory ${WORKDIR}"
-mkdir ${WORKDIR}
-pushd ${WORKDIR}
-
-if test "x${WGET}" = "x"; then
- WGET=$(which wget);
- if test "x${WGET}" = "x"; then
- echo "wget not found";
- exit 1;
- fi
-fi
-
-if test "x${TAR}" = "x"; then
- TAR=$(which tar)
- if test "x${TAR}" = "x"; then
- echo "tar not found";
- exit 2;
- fi
-fi
-
-echo "Dependencies:";
-echo -e "\tWGET: ${WGET}";
-echo -e "\tTAR: ${TAR}\n";
-
-if test "x${ICEDTEA_USE_VCS}" = "xtrue"; then
- echo "Mode: Using VCS";
-
- if test "x${GREP}" = "x"; then
- GREP=$(which grep);
- if test "x${GREP}" = "x"; then
- echo "grep not found";
- exit 3;
- fi
- fi
-
- if test "x${CUT}" = "x"; then
- CUT=$(which cut);
- if test "x${CUT}" = "x"; then
- echo "cut not found";
- exit 4;
- fi
- fi
-
- if test "x${TR}" = "x"; then
- TR=$(which tr);
- if test "x${TR}" = "x"; then
- echo "tr not found";
- exit 5;
- fi
- fi
-
- if test "x${HG}" = "x"; then
- HG=$(which hg);
- if test "x${HG}" = "x"; then
- echo "hg not found";
- exit 6;
- fi
- fi
-
- echo "Dependencies:";
- echo -e "\tGREP: ${GREP}";
- echo -e "\tCUT: ${CUT}";
- echo -e "\tTR: ${TR}";
- echo -e "\tHG: ${HG}";
-
- echo "Checking out repository from VCS...";
- ${HG} clone ${ICEDTEA_HG_URL} icedtea
-
- echo "Obtaining version from configure.ac...";
- ROOT_VER=$(${GREP} '^AC_INIT' icedtea/configure.ac|${CUT} -d ',' -f
2|${TR} -d '[][:space:]')
- echo "Root version from configure: ${ROOT_VER}";
-
- VCS_REV=$(${HG} log -R icedtea --template '{node|short}' -r tip)
- echo "VCS revision: ${VCS_REV}";
-
- ICEDTEA_VERSION="${ROOT_VER}-${VCS_REV}"
- echo "Creating icedtea-${ICEDTEA_VERSION}";
- mkdir icedtea-${ICEDTEA_VERSION}
- echo "Copying required files from checkout to icedtea-${ICEDTEA_VERSION}";
- # Commented out for now as IcedTea 6's jconsole.desktop.in is outdated
- #cp -a icedtea/jconsole.desktop.in ../icedtea-${ICEDTEA_VERSION}
- cp -a ${RPM_DIR}/jconsole.desktop.in icedtea-${ICEDTEA_VERSION}
- cp -a icedtea/tapset icedtea-${ICEDTEA_VERSION}
-
- rm -rf icedtea
-else
- echo "Mode: Using tarball";
-
- if test "x${ICEDTEA_VERSION}" = "x"; then
- echo "No IcedTea version specified for tarball download.";
- exit 3;
- fi
-
- if test "x${CHECKSUM}" = "x"; then
- CHECKSUM=$(which sha256sum)
- if test "x${CHECKSUM}" = "x"; then
- echo "sha256sum not found";
- exit 4;
- fi
- fi
-
- if test "x${PGP}" = "x"; then
- PGP=$(which gpg)
- if test "x${PGP}" = "x"; then
- echo "gpg not found";
- exit 5;
- fi
- fi
-
- echo "Dependencies:";
- echo -e "\tCHECKSUM: ${CHECKSUM}";
- echo -e "\tPGP: ${PGP}\n";
-
- echo "Checking for IcedTea signing key ${ICEDTEA_SIGNING_KEY}...";
- if ! gpg --list-keys ${ICEDTEA_SIGNING_KEY}; then
- echo "IcedTea signing key ${ICEDTEA_SIGNING_KEY} not installed.";
- exit 6;
- fi
-
- echo "Downloading IcedTea release tarball...";
- ${WGET} -v ${ICEDTEA_URL}/icedtea-${ICEDTEA_VERSION}.tar.xz
- echo "Downloading IcedTea tarball signature...";
- ${WGET} -v ${ICEDTEA_URL}/icedtea-${ICEDTEA_VERSION}.tar.xz.sig
- echo "Downloading IcedTea tarball checksums...";
- ${WGET} -v ${ICEDTEA_URL}/icedtea-${ICEDTEA_VERSION}.sha256
-
- echo "Verifying checksums...";
- ${CHECKSUM} --check --ignore-missing icedtea-${ICEDTEA_VERSION}.sha256
-
- echo "Checking signature...";
- ${PGP} --verify icedtea-${ICEDTEA_VERSION}.tar.xz.sig
-
- echo "Extracting files...";
- ${TAR} xJf icedtea-${ICEDTEA_VERSION}.tar.xz \
- icedtea-${ICEDTEA_VERSION}/tapset \
- icedtea-${ICEDTEA_VERSION}/jconsole.desktop.in
-
- rm -vf icedtea-${ICEDTEA_VERSION}.tar.xz
- rm -vf icedtea-${ICEDTEA_VERSION}.tar.xz.sig
- rm -vf icedtea-${ICEDTEA_VERSION}.sha256
-fi
-
-echo "Replacing desktop files...";
-mv -v icedtea-${ICEDTEA_VERSION}/jconsole.desktop.in ${RPM_DIR}
-
-echo "Creating new tapset tarball...";
-mv -v icedtea-${ICEDTEA_VERSION} openjdk
-${TAR} cJf ${RPM_DIR}/tapsets-icedtea-${ICEDTEA_VERSION}.tar.xz openjdk
-
-rm -rvf openjdk
-
-popd
-rm -rf ${WORKDIR}
+## This file is intentionally left blank
diff --git a/java-17-openjdk.spec b/java-17-openjdk.spec
index 61cc9fc..4a70a27 100644
--- a/java-17-openjdk.spec
+++ b/java-17-openjdk.spec
@@ -113,7 +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}
-%global share_arches %{ix86} %{power64} 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
@@ -123,7 +125,12 @@
# Set of architectures for which java has short vector math library (libsvml.so)
%global svml_arches x86_64
# Set of architectures where we verify backtraces with gdb
+# s390x fails on RHEL 7 so we exclude it there
+%if (0%{?rhel} > 0 && 0%{?rhel} < 8)
+%global gdb_arches %{arm} %{aarch64} %{ix86} %{power64} sparcv9 sparc64 x86_64
%{zero_arches}
+%else
%global gdb_arches %{jit_arches} %{zero_arches}
+%endif
# By default, we build a debug build during main build on JIT architectures
%if %{with slowdebug}
@@ -271,16 +278,17 @@
# New Version-String scheme-style defines
%global featurever 17
%global interimver 0
-%global updatever 8
+%global updatever 9
%global patchver 0
+
# 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}
%global lts_designator "LTS"
%global lts_designator_zip -%{lts_designator}
%else
- %global lts_designator ""
- %global lts_designator_zip ""
+ %global lts_designator ""
+ %global lts_designator_zip ""
%endif
# Define vendor information used by OpenJDK
@@ -296,7 +304,7 @@
%global oj_vendor_bug_url
https://bugzilla.redhat.com/enter_bug.cgi?product=Fedora&component=%{...
%else
%if 0%{?rhel}
-%global oj_vendor_bug_url
https://bugzilla.redhat.com/enter_bug.cgi?product=Red%20Hat%20Enterprise%...
+%global oj_vendor_bug_url
https://access.redhat.com/support/cases/
%else
%global oj_vendor_bug_url
https://bugzilla.redhat.com/enter_bug.cgi
%endif
@@ -306,14 +314,21 @@
# Define IcedTea version used for SystemTap tapsets and desktop file
%global icedteaver 6.0.0pre00-c848b93a8598
+# Define JDK versions
+%global newjavaver %{featurever}.%{interimver}.%{updatever}.%{patchver}
+%global javaver %{featurever}
+# Strip up to 6 trailing zeros in newjavaver, as the JDK does, to get the correct version
used in filenames
+%global filever %(svn=%{newjavaver}; for i in 1 2 3 4 5 6 ; do svn=${svn%%.0} ; done;
echo ${svn})
+# The tag used to create the OpenJDK tarball
+%global vcstag jdk-%{filever}+%{buildver}%{?tagsuffix:-%{tagsuffix}}
# Standard JPackage naming and versioning defines
%global origin openjdk
%global origin_nice OpenJDK
%global top_level_dir_name %{origin}
%global top_level_dir_name_backup %{top_level_dir_name}-backup
-%global buildver 7
-%global rpmrelease 2
+%global buildver 9
+%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
@@ -326,14 +341,6 @@
# for techpreview, using 1, so slowdebugs can have 0
%global priority %( printf '%08d' 1 )
%endif
-%global newjavaver %{featurever}.%{interimver}.%{updatever}.%{patchver}
-%global javaver %{featurever}
-
-# Strip up to 6 trailing zeros in newjavaver, as the JDK does, to get the correct version
used in filenames
-%global filever %(svn=%{newjavaver}; for i in 1 2 3 4 5 6 ; do svn=${svn%%.0} ; done;
echo ${svn})
-
-# The tag used to create the OpenJDK tarball
-%global vcstag jdk-%{filever}+%{buildver}%{?tagsuffix:-%{tagsuffix}}
# Define milestone (EA for pre-releases, GA for releases)
# Release will be (where N is usually a number starting at 1):
@@ -343,7 +350,7 @@
%if %{is_ga}
%global build_type GA
%global ea_designator ""
-%global ea_designator_zip ""
+%global ea_designator_zip %{nil}
%global extraver %{nil}
%global eaprefix %{nil}
%else
@@ -509,12 +516,15 @@ alternatives \\
--install %{_bindir}/java $key %{jrebindir -- %{?1}}/java $PRIORITY --family %{family}
\\
--slave %{_jvmdir}/jre jre %{_jvmdir}/%{sdkdir -- %{?1}} \\
--slave %{_bindir}/%{alt_java_name} %{alt_java_name} %{jrebindir --
%{?1}}/%{alt_java_name} \\
+ --slave %{_bindir}/jcmd jcmd %{sdkbindir -- %{?1}}/jcmd \\
--slave %{_bindir}/keytool keytool %{jrebindir -- %{?1}}/keytool \\
--slave %{_bindir}/rmiregistry rmiregistry %{jrebindir -- %{?1}}/rmiregistry \\
--slave %{_mandir}/man1/java.1$ext java.1$ext \\
%{_mandir}/man1/java-%{uniquesuffix -- %{?1}}.1$ext \\
--slave %{_mandir}/man1/%{alt_java_name}.1$ext %{alt_java_name}.1$ext \\
%{_mandir}/man1/%{alt_java_name}-%{uniquesuffix -- %{?1}}.1$ext \\
+ --slave %{_mandir}/man1/jcmd.1$ext jcmd.1$ext \\
+ %{_mandir}/man1/jcmd-%{uniquesuffix -- %{?1}}.1$ext \\
--slave %{_mandir}/man1/keytool.1$ext keytool.1$ext \\
%{_mandir}/man1/keytool-%{uniquesuffix -- %{?1}}.1$ext \\
--slave %{_mandir}/man1/rmiregistry.1$ext rmiregistry.1$ext \\
@@ -599,7 +609,6 @@ alternatives \\
--slave %{_bindir}/jarsigner jarsigner %{sdkbindir -- %{?1}}/jarsigner \\
--slave %{_bindir}/javadoc javadoc %{sdkbindir -- %{?1}}/javadoc \\
--slave %{_bindir}/javap javap %{sdkbindir -- %{?1}}/javap \\
- --slave %{_bindir}/jcmd jcmd %{sdkbindir -- %{?1}}/jcmd \\
--slave %{_bindir}/jconsole jconsole %{sdkbindir -- %{?1}}/jconsole \\
--slave %{_bindir}/jdb jdb %{sdkbindir -- %{?1}}/jdb \\
--slave %{_bindir}/jdeps jdeps %{sdkbindir -- %{?1}}/jdeps \\
@@ -626,8 +635,6 @@ alternatives \\
%{_mandir}/man1/javadoc-%{uniquesuffix -- %{?1}}.1$ext \\
--slave %{_mandir}/man1/javap.1$ext javap.1$ext \\
%{_mandir}/man1/javap-%{uniquesuffix -- %{?1}}.1$ext \\
- --slave %{_mandir}/man1/jcmd.1$ext jcmd.1$ext \\
- %{_mandir}/man1/jcmd-%{uniquesuffix -- %{?1}}.1$ext \\
--slave %{_mandir}/man1/jconsole.1$ext jconsole.1$ext \\
%{_mandir}/man1/jconsole-%{uniquesuffix -- %{?1}}.1$ext \\
--slave %{_mandir}/man1/jdb.1$ext jdb.1$ext \\
@@ -790,10 +797,11 @@ exit 0
%dir %{_jvmdir}/%{sdkdir -- %{?1}}/bin
%{_jvmdir}/%{sdkdir -- %{?1}}/bin/java
%{_jvmdir}/%{sdkdir -- %{?1}}/bin/%{alt_java_name}
+%{_jvmdir}/%{sdkdir -- %{?1}}/bin/jcmd
%{_jvmdir}/%{sdkdir -- %{?1}}/bin/keytool
%{_jvmdir}/%{sdkdir -- %{?1}}/bin/rmiregistry
%dir %{_jvmdir}/%{sdkdir -- %{?1}}/lib
-%ifarch %{share_arches}
+%ifarch %{jit_arches}
%{_jvmdir}/%{sdkdir -- %{?1}}/lib/classlist
%endif
%{_jvmdir}/%{sdkdir -- %{?1}}/lib/jexec
@@ -851,7 +859,8 @@ exit 0
%{_jvmdir}/%{sdkdir -- %{?1}}/lib/jfr/default.jfc
%{_jvmdir}/%{sdkdir -- %{?1}}/lib/jfr/profile.jfc
%{_mandir}/man1/java-%{uniquesuffix -- %{?1}}.1*
-#%{_mandir}/man1/%{alt_java_name}-%{uniquesuffix -- %{?1}}.1* #TODO, resolve alt-java man
page
+%{_mandir}/man1/%{alt_java_name}-%{uniquesuffix -- %{?1}}.1*
+%{_mandir}/man1/jcmd-%{uniquesuffix -- %{?1}}.1*
%{_mandir}/man1/keytool-%{uniquesuffix -- %{?1}}.1*
%{_mandir}/man1/rmiregistry-%{uniquesuffix -- %{?1}}.1*
%{_jvmdir}/%{sdkdir -- %{?1}}/lib/%{vm_variant}/
@@ -900,8 +909,9 @@ exit 0
%if %is_system_jdk
%if %{is_release_build -- %{?1}}
%ghost %{_bindir}/java
-%ghost %{_bindir}/%{alt_java_name}
%ghost %{_jvmdir}/jre
+%ghost %{_bindir}/%{alt_java_name}
+%ghost %{_bindir}/jcmd
%ghost %{_bindir}/keytool
%ghost %{_bindir}/pack200
%ghost %{_bindir}/rmid
@@ -926,7 +936,6 @@ exit 0
%{_jvmdir}/%{sdkdir -- %{?1}}/bin/javadoc
%{_jvmdir}/%{sdkdir -- %{?1}}/bin/javap
%{_jvmdir}/%{sdkdir -- %{?1}}/bin/jconsole
-%{_jvmdir}/%{sdkdir -- %{?1}}/bin/jcmd
%{_jvmdir}/%{sdkdir -- %{?1}}/bin/jdb
%{_jvmdir}/%{sdkdir -- %{?1}}/bin/jdeps
%{_jvmdir}/%{sdkdir -- %{?1}}/bin/jdeprscan
@@ -999,7 +1008,6 @@ exit 0
%ghost %{_bindir}/jarsigner
%ghost %{_bindir}/javadoc
%ghost %{_bindir}/javap
-%ghost %{_bindir}/jcmd
%ghost %{_bindir}/jconsole
%ghost %{_bindir}/jdb
%ghost %{_bindir}/jdeps
@@ -1028,7 +1036,6 @@ exit 0
%define files_demo() %{expand:
%license %{_jvmdir}/%{sdkdir -- %{?1}}/legal
%{_jvmdir}/%{sdkdir -- %{?1}}/demo
-%{_jvmdir}/%{sdkdir -- %{?1}}/sample
}
%define files_src() %{expand:
@@ -1231,7 +1238,7 @@ Provides: java-%{origin}-src%{?1} = %{epoch}:%{version}-%{release}
%global portable_name %{name}-portable
# the version must match, but sometmes we need to more precise, so including release
-%global portable_version %{version}-3
+%global portable_version %{version}-1
Name: java-%{javaver}-%{origin}
Version: %{newjavaver}.%{buildver}
@@ -1294,23 +1301,22 @@ Source16: CheckVendor.java
Source18: TestTranslations.java
BuildRequires: %{portable_name}-sources >= %{portable_version}
+BuildRequires: %{portable_name}-misc >= %{portable_version}
+BuildRequires: %{portable_name}-docs >= %{portable_version}
%if %{include_normal_build}
-BuildRequires: %{portable_name} >= %{portable_version}
-BuildRequires: %{portable_name}-devel >= %{portable_version}
+BuildRequires: %{portable_name}-unstripped >= %{portable_version}
%if %{include_staticlibs}
BuildRequires: %{portable_name}-static-libs >= %{portable_version}
%endif
%endif
%if %{include_fastdebug_build}
-BuildRequires: %{portable_name}-fastdebug >= %{portable_version}
BuildRequires: %{portable_name}-devel-fastdebug >= %{portable_version}
%if %{include_staticlibs}
BuildRequires: %{portable_name}-static-libs-fastdebug >= %{portable_version}
%endif
%endif
%if %{include_debug_build}
-BuildRequires: %{portable_name}-slowdebug >= %{portable_version}
BuildRequires: %{portable_name}-devel-slowdebug >= %{portable_version}
%if %{include_staticlibs}
BuildRequires: %{portable_name}-static-libs-slowdebug >= %{portable_version}
@@ -1695,23 +1701,23 @@ if [ $prioritylength -ne 8 ] ; then
fi
tar -xf %{portablejvmdir}/%{compatiblename}*%{version}*portable.sources.noarch.tar.xz
+tar -xf %{portablejvmdir}/%{compatiblename}*%{version}*portable*.misc.%{_arch}.tar.xz
+tar -xf %{portablejvmdir}/%{compatiblename}*%{version}*portable*.docs.%{_arch}.tar.xz
+
%if %{include_normal_build}
-tar -xf %{portablejvmdir}/%{compatiblename}*%{version}*portable.jdk.%{_arch}.tar.xz
-#tar -xf %{portablejvmdir}/%{compatiblename}*%{version}*portable.jre.%{_arch}.tar.xz
+tar -xf
%{portablejvmdir}/%{compatiblename}*%{version}*portable.unstripped.jdk.%{_arch}.tar.xz
%if %{include_staticlibs}
tar -xf
%{portablejvmdir}/%{compatiblename}*%{version}*portable.static-libs.%{_arch}.tar.xz
%endif
%endif
%if %{include_fastdebug_build}
tar -xf
%{portablejvmdir}/%{compatiblename}*%{version}*portable.fastdebug.jdk.%{_arch}.tar.xz
-#tar -xf
%{portablejvmdir}/%{compatiblename}*%{version}*portable.fastdebug.jre.%{_arch}.tar.xz
%if %{include_staticlibs}
tar -xf
%{portablejvmdir}/%{compatiblename}*%{version}*portable.fastdebug.static-libs.%{_arch}.tar.xz
%endif
%endif
%if %{include_debug_build}
tar -xf
%{portablejvmdir}/%{compatiblename}*%{version}*portable.slowdebug.jdk.%{_arch}.tar.xz
-#tar -xf
%{portablejvmdir}/%{compatiblename}*%{version}*portable.slowdebug.jre.%{_arch}.tar.xz
%if %{include_staticlibs}
tar -xf
%{portablejvmdir}/%{compatiblename}*%{version}*portable.slowdebug.static-libs.%{_arch}.tar.xz
%endif
@@ -1945,6 +1951,8 @@ for suffix in %{build_loop} ; do
%endif
jdk_image=${top_dir_abs_main_build_path}
src_image=`echo ${top_dir_abs_main_build_path} | sed
"s/portable.*.%{_arch}/portable.sources.noarch/"`
+ misc_image=`echo ${top_dir_abs_main_build_path} | sed
"s/portable.*.%{_arch}/portable.misc.%{_arch}/"`
+ docs_image=`echo ${top_dir_abs_main_build_path} | sed
"s/portable.*.%{_arch}/portable.docs.%{_arch}/"`
# Install the jdk
mkdir -p $RPM_BUILD_ROOT%{_jvmdir}
@@ -1952,7 +1960,7 @@ mkdir -p $RPM_BUILD_ROOT%{_jvmdir}
# Install icons
for s in 16 24 32 48 ; do
install -D -p -m 644 \
- ${src_image}/openjdk/src/java.desktop/unix/classes/sun/awt/X11/java-icon${s}.png \
+ ${src_image}/%{vcstag}/src/java.desktop/unix/classes/sun/awt/X11/java-icon${s}.png
\
$RPM_BUILD_ROOT%{_datadir}/icons/hicolor/${s}x${s}/apps/java-%{javaver}-%{origin}.png
done
@@ -2006,11 +2014,11 @@ if ! echo $suffix | grep -q "debug" ; then
# Install Javadoc documentation
install -d -m 755 $RPM_BUILD_ROOT%{_javadocdir}
install -d -m 755 $RPM_BUILD_ROOT%{_javadocdir}/%{uniquejavadocdir -- $suffix}
- built_doc_archive=javadocs.zip
- cp -a ${top_dir_abs_main_build_path}/${built_doc_archive} \
- $RPM_BUILD_ROOT%{_javadocdir}/%{uniquejavadocdir -- $suffix}.zip || ls -l
${top_dir_abs_main_build_path}
+ built_doc_archive=$(basename $(ls ${docs_image}/jdk*docs.zip))
+ cp -a ${docs_image}/${built_doc_archive} \
+ $RPM_BUILD_ROOT%{_javadocdir}/%{uniquejavadocdir -- $suffix}.zip
pushd $RPM_BUILD_ROOT%{_javadocdir}/%{uniquejavadocdir -- $suffix}
- unzip ${top_dir_abs_main_build_path}/${built_doc_archive}
+ unzip ${docs_image}/${built_doc_archive}
popd
fi
@@ -2031,7 +2039,6 @@ done
mkdir -p $RPM_BUILD_ROOT%{_sysconfdir}/.java/.systemPrefs
# copy samples next to demos; samples are mostly js files
-cp -r ${src_image}/%{top_level_dir_name}/src/sample $RPM_BUILD_ROOT/%{_jvmdir}/%{sdkdir
-- $suffix}/
# moving config files to /etc
mkdir -p $RPM_BUILD_ROOT/%{etcjavadir -- $suffix}
@@ -2052,9 +2059,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 {} \;
;
-if [ "x$suffix" = "x" ] ; then
- rm $RPM_BUILD_ROOT/%{_jvmdir}/%{sdkdir -- $suffix}/javadocs.zip #is in subpackages, 1
renamed, 2nd unpacked
-fi
# end, dual install
done
@@ -2093,10 +2097,11 @@ $JAVA_HOME/bin/java ${SEC_DEBUG}
-Djava.security.disableSystemPropertiesFile=tru
if ! nm $JAVA_HOME/bin/java | grep set_speculation ; then true ; else false; fi
# Check alt-java launcher has SSB mitigation on supported architectures
+# set_speculation function exists in both cases, so check for prctl call
%ifarch %{ssbd_arches}
-nm $JAVA_HOME/bin/%{alt_java_name} | grep set_speculation
+nm $JAVA_HOME/bin/%{alt_java_name} | grep prctl
%else
-if ! nm $JAVA_HOME/bin/%{alt_java_name} | grep set_speculation ; then true ; else false;
fi
+if ! nm $JAVA_HOME/bin/%{alt_java_name} | grep prctl ; then true ; else false; fi
%endif
# Check correct vendor values have been set
@@ -2113,8 +2118,8 @@ $JAVA_HOME/bin/java -Djava.locale.providers=CLDR $(echo $(basename
%{SOURCE18})|
%if %{include_staticlibs}
# Check debug symbols in static libraries (smoke test)
export STATIC_LIBS_HOME=${JAVA_HOME}/%{static_libs_install_dir}
-readelf --debug-dump $STATIC_LIBS_HOME/libfdlibm.a | grep w_remainder.c
-readelf --debug-dump $STATIC_LIBS_HOME/libfdlibm.a | grep e_remainder.c
+readelf --debug-dump $STATIC_LIBS_HOME/libnet.a | grep Inet4AddressImpl.c
+readelf --debug-dump $STATIC_LIBS_HOME/libnet.a | grep Inet6AddressImpl.c
%endif
# Check src.zip has all sources. See RHBZ#1130490
@@ -2377,6 +2382,9 @@ cjc.mainProgram(args)
%endif
%changelog
+* Wed Nov 22 2023 Jiri Vanek <jvanek(a)redhat.com> - 1:17.0.9.0.9-1
+- updated to OpenJDK 17.0.9 (2023-10-17)
+
* Fri Sep 29 2023 Yaakov Selkowitz <yselkowi(a)redhat.com> - 1:17.0.8.0.7-2
- Fix flatpak build
commit efb675a1006c24a4f1e96021d1a785f37c237da9
Author: Yaakov Selkowitz <yselkowi(a)redhat.com>
Date: Mon Sep 11 16:13:18 2023 -0400
Fix flatpak build
java-X-openjdk-portable must not be rebuilt for flatpaks, nor do we want
to rebuild tzdata for tzdata-java, so it will be added to the runtimes.
Therefore, we need to take into account the possibility of different
prefixes for those compared to java-X-openjdk.
diff --git a/java-17-openjdk.spec b/java-17-openjdk.spec
index 45aa8e9..61cc9fc 100644
--- a/java-17-openjdk.spec
+++ b/java-17-openjdk.spec
@@ -313,7 +313,7 @@
%global top_level_dir_name %{origin}
%global top_level_dir_name_backup %{top_level_dir_name}-backup
%global buildver 7
-%global rpmrelease 1
+%global rpmrelease 2
# 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
@@ -404,12 +404,16 @@
%global rpm_state_dir %{_localstatedir}/lib/rpm-state/
-# For flatpack builds hard-code /usr/sbin/alternatives,
-# otherwise use %%{_sbindir} relative path.
+# For flatpack builds hard-code dependency paths,
+# otherwise use relative paths.
%if 0%{?flatpak}
%global alternatives_requires /usr/sbin/alternatives
+%global javazidir /usr/share/javazi-1.8
+%global portablejvmdir /usr/lib/jvm
%else
%global alternatives_requires %{_sbindir}/alternatives
+%global javazidir %{_datadir}/javazi-1.8
+%global portablejvmdir %{_jvmdir}
%endif
%global family %{name}.%{_arch}
@@ -1690,26 +1694,26 @@ if [ $prioritylength -ne 8 ] ; then
exit 14
fi
-tar -xf %{_jvmdir}/%{compatiblename}*%{version}*portable.sources.noarch.tar.xz
+tar -xf %{portablejvmdir}/%{compatiblename}*%{version}*portable.sources.noarch.tar.xz
%if %{include_normal_build}
-tar -xf %{_jvmdir}/%{compatiblename}*%{version}*portable.jdk.%{_arch}.tar.xz
-#tar -xf %{_jvmdir}/%{compatiblename}*%{version}*portable.jre.%{_arch}.tar.xz
+tar -xf %{portablejvmdir}/%{compatiblename}*%{version}*portable.jdk.%{_arch}.tar.xz
+#tar -xf %{portablejvmdir}/%{compatiblename}*%{version}*portable.jre.%{_arch}.tar.xz
%if %{include_staticlibs}
-tar -xf %{_jvmdir}/%{compatiblename}*%{version}*portable.static-libs.%{_arch}.tar.xz
+tar -xf
%{portablejvmdir}/%{compatiblename}*%{version}*portable.static-libs.%{_arch}.tar.xz
%endif
%endif
%if %{include_fastdebug_build}
-tar -xf %{_jvmdir}/%{compatiblename}*%{version}*portable.fastdebug.jdk.%{_arch}.tar.xz
-#tar -xf %{_jvmdir}/%{compatiblename}*%{version}*portable.fastdebug.jre.%{_arch}.tar.xz
+tar -xf
%{portablejvmdir}/%{compatiblename}*%{version}*portable.fastdebug.jdk.%{_arch}.tar.xz
+#tar -xf
%{portablejvmdir}/%{compatiblename}*%{version}*portable.fastdebug.jre.%{_arch}.tar.xz
%if %{include_staticlibs}
-tar -xf
%{_jvmdir}/%{compatiblename}*%{version}*portable.fastdebug.static-libs.%{_arch}.tar.xz
+tar -xf
%{portablejvmdir}/%{compatiblename}*%{version}*portable.fastdebug.static-libs.%{_arch}.tar.xz
%endif
%endif
%if %{include_debug_build}
-tar -xf %{_jvmdir}/%{compatiblename}*%{version}*portable.slowdebug.jdk.%{_arch}.tar.xz
-#tar -xf %{_jvmdir}/%{compatiblename}*%{version}*portable.slowdebug.jre.%{_arch}.tar.xz
+tar -xf
%{portablejvmdir}/%{compatiblename}*%{version}*portable.slowdebug.jdk.%{_arch}.tar.xz
+#tar -xf
%{portablejvmdir}/%{compatiblename}*%{version}*portable.slowdebug.jre.%{_arch}.tar.xz
%if %{include_staticlibs}
-tar -xf
%{_jvmdir}/%{compatiblename}*%{version}*portable.slowdebug.static-libs.%{_arch}.tar.xz
+tar -xf
%{portablejvmdir}/%{compatiblename}*%{version}*portable.slowdebug.static-libs.%{_arch}.tar.xz
%endif
%endif
@@ -1787,7 +1791,7 @@ function installjdk() {
# Use system-wide tzdata
mv ${imagepath}/lib/tzdb.dat{,.upstream}
- ln -sv %{_datadir}/javazi-1.8/tzdb.dat ${imagepath}/lib/tzdb.dat
+ ln -sv %{javazidir}/tzdb.dat ${imagepath}/lib/tzdb.dat
# Rename OpenJDK cacerts database
mv ${imagepath}/lib/security/cacerts{,.upstream}
@@ -2100,15 +2104,11 @@ $JAVA_HOME/bin/javac -d . %{SOURCE16}
#TODO skipped vendor check. It now points to PORTABLE version of jdk.
#$JAVA_HOME/bin/java $(echo $(basename %{SOURCE16})|sed "s|\.java||")
"%{oj_vendor}" "%{oj_vendor_url}" "%{oj_vendor_bug_url}"
"%{oj_vendor_version}"
-%if ! 0%{?flatpak}
-# Check translations are available for new timezones (during flatpak builds, the
-# tzdb.dat used by this test is not where the test expects it, so this is
-# disabled for flatpak builds)
+# Check translations are available for new timezones
$JAVA_HOME/bin/javac -d . %{SOURCE18}
#TODO doublecheck tzdata handling
$JAVA_HOME/bin/java $(echo $(basename %{SOURCE18})|sed "s|\.java||") JRE ||
echo "TZDATA no longer can be synced with system, because we repack"
$JAVA_HOME/bin/java -Djava.locale.providers=CLDR $(echo $(basename %{SOURCE18})|sed
"s|\.java||") CLDR || echo "TZDATA no longer can be synced with system,
because we repack"
-%endif
%if %{include_staticlibs}
# Check debug symbols in static libraries (smoke test)
@@ -2377,7 +2377,10 @@ cjc.mainProgram(args)
%endif
%changelog
-* Thu Aug 08 2023 Jiri Vanek <jvanek(a)redhat.com> - 1:17.0.8.0.7-1
+* Fri Sep 29 2023 Yaakov Selkowitz <yselkowi(a)redhat.com> - 1:17.0.8.0.7-2
+- Fix flatpak build
+
+* Tue Aug 08 2023 Jiri Vanek <jvanek(a)redhat.com> - 1:17.0.8.0.7-1
- updated to security 17.0.8.0.7
* Thu Jul 20 2023 Fedora Release Engineering <releng(a)fedoraproject.org> -
1:17.0.7.0.7-5.1