summaryrefslogtreecommitdiff
path: root/dev-java
diff options
context:
space:
mode:
Diffstat (limited to 'dev-java')
-rw-r--r--dev-java/openj9-openjdk-bin/Manifest28
-rw-r--r--dev-java/openj9-openjdk-bin/files/openj9-openjdk-bin.env.sh5
-rw-r--r--dev-java/openj9-openjdk-bin/metadata.xml1
-rw-r--r--dev-java/openj9-openjdk-bin/openj9-openjdk-bin-11.0.13.8.0.29.0.ebuild101
-rw-r--r--dev-java/openj9-openjdk-bin/openj9-openjdk-bin-11.0.21_p9.ebuild117
-rw-r--r--dev-java/openj9-openjdk-bin/openj9-openjdk-bin-17.0.1.12.0.29.1.ebuild101
-rw-r--r--dev-java/openj9-openjdk-bin/openj9-openjdk-bin-17.0.9_p9.ebuild117
-rw-r--r--dev-java/openj9-openjdk-jre-bin/Manifest14
-rw-r--r--dev-java/openj9-openjdk-jre-bin/files/openj9-openjdk-jre-bin.env.sh11
-rw-r--r--dev-java/openj9-openjdk-jre-bin/metadata.xml1
-rw-r--r--dev-java/openj9-openjdk-jre-bin/openj9-openjdk-jre-bin-11.0.21_p9.ebuild (renamed from dev-java/openj9-openjdk-jre-bin/openj9-openjdk-jre-bin-11.0.13.8.0.29.0.ebuild)36
-rw-r--r--dev-java/openj9-openjdk-jre-bin/openj9-openjdk-jre-bin-17.0.9_p9.ebuild (renamed from dev-java/openj9-openjdk-jre-bin/openj9-openjdk-jre-bin-17.0.1.12.0.29.1.ebuild)36
-rw-r--r--dev-java/openj9-openjdk/Manifest10
-rw-r--r--dev-java/openj9-openjdk/files/omr-fam.patch70
-rw-r--r--dev-java/openj9-openjdk/files/openj9-no-o3.patch11
-rw-r--r--dev-java/openj9-openjdk/files/openj9-openjdk-override-version.patch11
-rw-r--r--dev-java/openj9-openjdk/files/openj9-openjdk.env.sh3
-rw-r--r--dev-java/openj9-openjdk/metadata.xml4
-rw-r--r--dev-java/openj9-openjdk/openj9-openjdk-11.0.41.0.ebuild (renamed from dev-java/openj9-openjdk/openj9-openjdk-11.0.29.0.ebuild)105
-rw-r--r--dev-java/openj9-openjdk/openj9-openjdk-17.0.41.0.ebuild (renamed from dev-java/openj9-openjdk/openj9-openjdk-17.0.29.1.ebuild)104
20 files changed, 399 insertions, 487 deletions
diff --git a/dev-java/openj9-openjdk-bin/Manifest b/dev-java/openj9-openjdk-bin/Manifest
index 8fe2377..b36e1ce 100644
--- a/dev-java/openj9-openjdk-bin/Manifest
+++ b/dev-java/openj9-openjdk-bin/Manifest
@@ -1,16 +1,12 @@
-DIST ibm-semeru-open-debugimage_aarch64_linux_11.0.13_8_openj9-0.29.0.tar.gz 258280215 SHA256 0138156b0388f7f06bbe67a6ed982ea7d14a372c5e5d14c6e7d53dc17c58f932
-DIST ibm-semeru-open-debugimage_aarch64_linux_17.0.1_12_openj9-0.29.1.tar.gz 261666497 SHA256 6d4fc24664d85b6c8f9c3b4c279ef8237dbec8397e277b775f7459ed5d423df8
-DIST ibm-semeru-open-debugimage_ppc64le_linux_11.0.13_8_openj9-0.29.0.tar.gz 312477496 SHA256 f898c2a081a4e3cc56146ab731edf1ede9e72644ad9a5d8a4c5125766260403f
-DIST ibm-semeru-open-debugimage_ppc64le_linux_17.0.1_12_openj9-0.29.1.tar.gz 315841869 SHA256 3d463cfc6829350293d7fbbc95a8614282287ffb5b8ce2da8c600b4ca2d64d1b
-DIST ibm-semeru-open-debugimage_s390x_linux_11.0.13_8_openj9-0.29.0.tar.gz 276384710 SHA256 7632165750d00ed0ce5c14fcd5e261daf4e7873d53969183189779575e10d8c6
-DIST ibm-semeru-open-debugimage_s390x_linux_17.0.1_12_openj9-0.29.1.tar.gz 279619663 SHA256 14056d435f56a3f1bac1d6b8b41610345bc6942d2d7a4728de62236493581024
-DIST ibm-semeru-open-debugimage_x64_linux_11.0.13_8_openj9-0.29.0.tar.gz 322796284 SHA256 b049b1dfe36079caa937262d5b1c83a7e0e5d88704315e819aac1d1480e0da60
-DIST ibm-semeru-open-debugimage_x64_linux_17.0.1_12_openj9-0.29.1.tar.gz 326242836 SHA256 fd541c2dae76a630776418b99f55c4825ab5083025470a38b45df310b8269234
-DIST ibm-semeru-open-jdk_aarch64_linux_11.0.13_8_openj9-0.29.0.tar.gz 197781632 SHA256 151dca23e1fdb43eaa60631c96895be9aa7bb751e7fdf88ddffa1c32157fb417
-DIST ibm-semeru-open-jdk_aarch64_linux_17.0.1_12_openj9-0.29.1.tar.gz 202169246 SHA256 5e0f80052ac4613d2d689904b20ff8b6e2bbd1edd87271db0659a646a24dfeb6
-DIST ibm-semeru-open-jdk_ppc64le_linux_11.0.13_8_openj9-0.29.0.tar.gz 203079177 SHA256 7b304c52974f51611b45a2ab7949503e33a204b8a4ae705eb3c74789350174d3
-DIST ibm-semeru-open-jdk_ppc64le_linux_17.0.1_12_openj9-0.29.1.tar.gz 207687300 SHA256 80b6389dbed9b7de9c63b1cb423e719aa5e6fbab42387fdb1f68d9d199bf5196
-DIST ibm-semeru-open-jdk_s390x_linux_11.0.13_8_openj9-0.29.0.tar.gz 199870826 SHA256 6c3ebb4af0f4066e721e1f0078438458775f4b93bfd2d0be1066c54ccf015654
-DIST ibm-semeru-open-jdk_s390x_linux_17.0.1_12_openj9-0.29.1.tar.gz 203493613 SHA256 56e01c97f98bfb2cf9959b09b5d0cfae9993f82f1f54f77ef1199425c0b64bc2
-DIST ibm-semeru-open-jdk_x64_linux_11.0.13_8_openj9-0.29.0.tar.gz 202193589 SHA256 3975e2732cf632ca8f41c237ba7e033fd96bda262b79861f83b4e2ac62c90c3d
-DIST ibm-semeru-open-jdk_x64_linux_17.0.1_12_openj9-0.29.1.tar.gz 207287538 SHA256 154f6411742ee1f8cbf004d72e7e71053b9ad4e89090cb930b6f16951e56503e
+DIST ibm-semeru-open-debugimage_aarch64_linux_11.0.21_9_openj9-0.41.0.tar.gz 344573477 SHA256 cbeb1b48be7ebe090d7998ff903cdfc120597f0c291e063f2173786ebc4d1e7a
+DIST ibm-semeru-open-debugimage_aarch64_linux_17.0.9_9_openj9-0.41.0.tar.gz 359634686 SHA256 d8e0a70145f7f160a1c26ad5196f521bf68ad0ecd6a784faf81ab59868ffb81b
+DIST ibm-semeru-open-debugimage_ppc64le_linux_11.0.21_9_openj9-0.41.0.tar.gz 357090764 SHA256 39efd2b530b3061c11c490e75ebbb20a4ec72448aec268bdb8449ee00021a138
+DIST ibm-semeru-open-debugimage_ppc64le_linux_17.0.9_9_openj9-0.41.0.tar.gz 372992490 SHA256 093579d76dda1fff44da05f08a9450d4e435e2f6be5d538113b96ccf0d2a559e
+DIST ibm-semeru-open-debugimage_x64_linux_11.0.21_9_openj9-0.41.0.tar.gz 369014125 SHA256 d2cda3fb77f3cad6870f2c868ad4bb3fc6c86e2a82522426a732733ce0fdb2d6
+DIST ibm-semeru-open-debugimage_x64_linux_17.0.9_9_openj9-0.41.0.tar.gz 386149336 SHA256 cf947725632aa736e9bd0e5b7b3f5af9b427f62fdde2b9c16c4aaf3e1231526d
+DIST ibm-semeru-open-jdk_aarch64_linux_11.0.21_9_openj9-0.41.0.tar.gz 202866166 SHA256 64f9cc164906b65fb1cb88287d64e40e02371ae1366bce28802d90cbd91df1be
+DIST ibm-semeru-open-jdk_aarch64_linux_17.0.9_9_openj9-0.41.0.tar.gz 206857922 SHA256 cfdff21ce44ae6af494cba75c1f323bef83a982f2c11944988bab2125f85b906
+DIST ibm-semeru-open-jdk_ppc64le_linux_11.0.21_9_openj9-0.41.0.tar.gz 206559764 SHA256 c23d62e5e2c3613357f6904cfc9a8229709bbc12d6aeb814875e0c4c471bb350
+DIST ibm-semeru-open-jdk_ppc64le_linux_17.0.9_9_openj9-0.41.0.tar.gz 211958174 SHA256 6934275c8045df881db8693caa219ef566d15f4a0d0b0154583f12370b996c5b
+DIST ibm-semeru-open-jdk_x64_linux_11.0.21_9_openj9-0.41.0.tar.gz 205707724 SHA256 d11ec92737b9f97bdd9bb553c3e476981f4ac38039963a15c2e1ca9ec163a304
+DIST ibm-semeru-open-jdk_x64_linux_17.0.9_9_openj9-0.41.0.tar.gz 209702777 SHA256 9b945e58f024108a20eb907015cca4a452332b7644e8dd8e051149a3ec62e3a3
diff --git a/dev-java/openj9-openjdk-bin/files/openj9-openjdk-bin.env.sh b/dev-java/openj9-openjdk-bin/files/openj9-openjdk-bin.env.sh
index 2e200d9..f4e3c9a 100644
--- a/dev-java/openj9-openjdk-bin/files/openj9-openjdk-bin.env.sh
+++ b/dev-java/openj9-openjdk-bin/files/openj9-openjdk-bin.env.sh
@@ -1,7 +1,4 @@
-# Copyright 1999-2018 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-VERSION="AdoptOpenJDK ${DL_PV}"
+VERSION="IBM Semeru JDK ${DL_PV}"
JAVA_HOME="${EPREFIX}/opt/${P}"
JDK_HOME="${EPREFIX}/opt/${P}"
JAVAC="\${JAVA_HOME}/bin/javac"
diff --git a/dev-java/openj9-openjdk-bin/metadata.xml b/dev-java/openj9-openjdk-bin/metadata.xml
index 4c0b1aa..532f0f1 100644
--- a/dev-java/openj9-openjdk-bin/metadata.xml
+++ b/dev-java/openj9-openjdk-bin/metadata.xml
@@ -8,7 +8,6 @@
</longdescription>
<use>
<flag name="headless-awt">Don't install the X backend for AWT, needed by some GUIs (used to be X flag)</flag>
- <flag name="gentoo-vm">Allow this JDK to be recognised by Gentoo (package manager, eselect, java-config, EXPERIMENTAL!)</flag>
<flag name="source">Install JVM sources</flag>
</use>
</pkgmetadata>
diff --git a/dev-java/openj9-openjdk-bin/openj9-openjdk-bin-11.0.13.8.0.29.0.ebuild b/dev-java/openj9-openjdk-bin/openj9-openjdk-bin-11.0.13.8.0.29.0.ebuild
deleted file mode 100644
index 32b852c..0000000
--- a/dev-java/openj9-openjdk-bin/openj9-openjdk-bin-11.0.13.8.0.29.0.ebuild
+++ /dev/null
@@ -1,101 +0,0 @@
-# Copyright 1999-2020 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-
-inherit eapi7-ver java-vm-2 toolchain-funcs
-
-abi_uri() {
- echo "${2-$1}? (
- debug? (
- https://github.com/ibmruntimes/semeru${SLOT}-binaries/releases/download/jdk-${DL_PV/+/%2B}/ibm-semeru-open-debugimage_${1}_linux_${DL_PV/+/_}.tar.gz
- )
- https://github.com/ibmruntimes/semeru${SLOT}-binaries/releases/download/jdk-${DL_PV/+/%2B}/ibm-semeru-open-jdk_${1}_linux_${DL_PV/+/_}.tar.gz
- )"
-}
-
-JDK_PV=$(ver_cut 1-3)+$(ver_cut 4)
-DL_PV=${JDK_PV}_openj9-$(ver_cut 5-7)
-SLOT=$(ver_cut 1)
-
-SRC_URI="
- $(abi_uri aarch64 arm64)
- $(abi_uri ppc64le ppc64)
- $(abi_uri s390x s390)
- $(abi_uri x64 amd64)
-"
-
-DESCRIPTION="Prebuilt IBM Semeru JDK binaries provided by IBM"
-HOMEPAGE="https://developer.ibm.com/languages/java/semeru-runtimes/"
-LICENSE="GPL-2-with-classpath-exception"
-KEYWORDS="~amd64 ~arm64 ~ppc64 ~s390"
-IUSE="alsa cups debug +gentoo-vm headless-awt selinux source"
-
-RDEPEND="
- media-libs/fontconfig:1.0
- media-libs/freetype:2
- >=sys-apps/baselayout-java-0.1.0-r1
- >=sys-libs/glibc-2.2.5:*
- sys-libs/zlib
- alsa? ( media-libs/alsa-lib )
- cups? ( net-print/cups )
- selinux? ( sec-policy/selinux-java )
- !headless-awt? (
- x11-libs/libX11
- x11-libs/libXext
- x11-libs/libXi
- x11-libs/libXrender
- x11-libs/libXtst
- )"
-
-RESTRICT="preserve-libs splitdebug"
-QA_PREBUILT="*"
-
-S="${WORKDIR}/jdk-${JDK_PV}"
-
-pkg_pretend() {
- if [[ "$(tc-is-softfloat)" != "no" ]]; then
- die "These binaries require a hardfloat system."
- fi
-}
-
-do_rm() {
- rm -v $1 || die
- if use debug ; then
- rm -v "${S}-debug-image"/$1 || die
- fi
-}
-
-src_install() {
- local dest="/opt/${P}"
- local ddest="${ED%/}/${dest#/}"
-
- # Oracle and IcedTea have libjsoundalsa.so depending on
- # libasound.so.2 but AdoptOpenJDK only has libjsound.so. Weird.
- if ! use alsa ; then
- do_rm 'lib/libjsound.*'
- fi
-
- if use headless-awt ; then
- do_rm 'lib/lib*{[jx]awt,splashscreen}*'
- fi
-
- if ! use source ; then
- rm -v lib/src.zip || die
- fi
-
- rm -v lib/security/cacerts || die
- dosym ../../../../etc/ssl/certs/java/cacerts \
- "${dest}"/lib/security/cacerts
-
- dodir "${dest}"
- cp -pPR * "${ddest}" || die
-
- # provide stable symlink
- dosym "${P}" "/opt/${PN}-${SLOT}"
-
- use gentoo-vm && java-vm_install-env "${FILESDIR}"/${PN}.env.sh
- java-vm_set-pax-markings "${ddest}"
- java-vm_revdep-mask
- java-vm_sandbox-predict /dev/random /proc/self/coredump_filter
-}
diff --git a/dev-java/openj9-openjdk-bin/openj9-openjdk-bin-11.0.21_p9.ebuild b/dev-java/openj9-openjdk-bin/openj9-openjdk-bin-11.0.21_p9.ebuild
new file mode 100644
index 0000000..f41e70a
--- /dev/null
+++ b/dev-java/openj9-openjdk-bin/openj9-openjdk-bin-11.0.21_p9.ebuild
@@ -0,0 +1,117 @@
+# Copyright 1999-2022 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit java-vm-2 toolchain-funcs
+
+abi_uri() {
+ echo "${2-$1}? (
+ debug? (
+ https://github.com/ibmruntimes/semeru${SLOT}-binaries/releases/download/jdk-${DL_PV/+/%2B}/ibm-semeru-open-debugimage_${1}_linux_${DL_PV/+/_}.tar.gz
+ )
+ https://github.com/ibmruntimes/semeru${SLOT}-binaries/releases/download/jdk-${DL_PV/+/%2B}/ibm-semeru-open-jdk_${1}_linux_${DL_PV/+/_}.tar.gz
+ )"
+}
+
+JDK_PV=${PV//_p/+}
+DL_PV=${JDK_PV}_openj9-0.41.0
+SLOT=$(ver_cut 1)
+
+SRC_URI="
+ $(abi_uri aarch64 arm64)
+ $(abi_uri ppc64le ppc64)
+ $(abi_uri x64 amd64)
+"
+
+DESCRIPTION="Prebuilt IBM Semeru JDK binaries provided by IBM"
+HOMEPAGE="https://developer.ibm.com/languages/java/semeru-runtimes/"
+LICENSE="GPL-2-with-classpath-exception"
+KEYWORDS="~amd64 ~arm64 ~ppc64"
+IUSE="alsa cups debug headless-awt selinux source"
+
+RDEPEND="
+ >=sys-apps/baselayout-java-0.1.0-r1
+ kernel_linux? (
+ media-libs/fontconfig:1.0
+ media-libs/freetype:2
+ media-libs/harfbuzz
+ elibc_glibc? ( >=sys-libs/glibc-2.2.5:* )
+ elibc_musl? ( sys-libs/musl )
+ sys-libs/zlib
+ alsa? ( media-libs/alsa-lib )
+ cups? ( net-print/cups )
+ selinux? ( sec-policy/selinux-java )
+ !headless-awt? (
+ x11-libs/libX11
+ x11-libs/libXext
+ x11-libs/libXi
+ x11-libs/libXrender
+ x11-libs/libXtst
+ )
+ )"
+
+RESTRICT="preserve-libs splitdebug"
+QA_PREBUILT="*"
+
+S="${WORKDIR}/jdk-${JDK_PV}"
+
+pkg_pretend() {
+ if [[ "$(tc-is-softfloat)" != "no" ]]; then
+ die "These binaries require a hardfloat system."
+ fi
+}
+
+src_unpack() {
+ default
+ if [[ ${A} == *_mac_* ]] ; then
+ mv -v "${S}/Contents/Home/"* "${S}" || die
+ rm -Rf "${S}/Contents" # drop macOS executable
+ fi
+}
+
+src_install() {
+ local dest="/opt/${P}"
+ local ddest="${ED}/${dest#/}"
+
+ # on macOS if they would exist they would be called .dylib, but most
+ # importantly, there are no different providers, so everything
+ # that's shipped works.
+ if [[ ${A} != *_mac_* ]] ; then
+ # Not sure why they bundle this as it's commonly available and they
+ # only do so on x86_64. It's needed by libfontmanager.so. IcedTea
+ # also has an explicit dependency while Oracle seemingly dlopens it.
+ rm -vf lib/libfreetype.so || die
+
+ # prefer system copy # https://bugs.gentoo.org/776676
+ rm -vf lib/libharfbuzz.so || die
+
+ # Oracle and IcedTea have libjsoundalsa.so depending on
+ # libasound.so.2 but AdoptOpenJDK only has libjsound.so. Weird.
+ if ! use alsa ; then
+ rm -v lib/libjsound.* || die
+ fi
+
+ if use headless-awt ; then
+ rm -v lib/lib*{[jx]awt,splashscreen}* || die
+ fi
+ fi
+
+ if ! use source ; then
+ rm -v lib/src.zip || die
+ fi
+
+ rm -v lib/security/cacerts || die
+ dosym -r /etc/ssl/certs/java/cacerts "${dest}"/lib/security/cacerts
+
+ dodir "${dest}"
+ cp -pPR * "${ddest}" || die
+
+ # provide stable symlink
+ dosym "${P}" "/opt/${PN}-${SLOT}"
+
+ java-vm_install-env "${FILESDIR}"/${PN}.env.sh
+ java-vm_set-pax-markings "${ddest}"
+ java-vm_revdep-mask
+ java-vm_sandbox-predict /dev/random /proc/self/coredump_filter
+}
diff --git a/dev-java/openj9-openjdk-bin/openj9-openjdk-bin-17.0.1.12.0.29.1.ebuild b/dev-java/openj9-openjdk-bin/openj9-openjdk-bin-17.0.1.12.0.29.1.ebuild
deleted file mode 100644
index 32b852c..0000000
--- a/dev-java/openj9-openjdk-bin/openj9-openjdk-bin-17.0.1.12.0.29.1.ebuild
+++ /dev/null
@@ -1,101 +0,0 @@
-# Copyright 1999-2020 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-
-inherit eapi7-ver java-vm-2 toolchain-funcs
-
-abi_uri() {
- echo "${2-$1}? (
- debug? (
- https://github.com/ibmruntimes/semeru${SLOT}-binaries/releases/download/jdk-${DL_PV/+/%2B}/ibm-semeru-open-debugimage_${1}_linux_${DL_PV/+/_}.tar.gz
- )
- https://github.com/ibmruntimes/semeru${SLOT}-binaries/releases/download/jdk-${DL_PV/+/%2B}/ibm-semeru-open-jdk_${1}_linux_${DL_PV/+/_}.tar.gz
- )"
-}
-
-JDK_PV=$(ver_cut 1-3)+$(ver_cut 4)
-DL_PV=${JDK_PV}_openj9-$(ver_cut 5-7)
-SLOT=$(ver_cut 1)
-
-SRC_URI="
- $(abi_uri aarch64 arm64)
- $(abi_uri ppc64le ppc64)
- $(abi_uri s390x s390)
- $(abi_uri x64 amd64)
-"
-
-DESCRIPTION="Prebuilt IBM Semeru JDK binaries provided by IBM"
-HOMEPAGE="https://developer.ibm.com/languages/java/semeru-runtimes/"
-LICENSE="GPL-2-with-classpath-exception"
-KEYWORDS="~amd64 ~arm64 ~ppc64 ~s390"
-IUSE="alsa cups debug +gentoo-vm headless-awt selinux source"
-
-RDEPEND="
- media-libs/fontconfig:1.0
- media-libs/freetype:2
- >=sys-apps/baselayout-java-0.1.0-r1
- >=sys-libs/glibc-2.2.5:*
- sys-libs/zlib
- alsa? ( media-libs/alsa-lib )
- cups? ( net-print/cups )
- selinux? ( sec-policy/selinux-java )
- !headless-awt? (
- x11-libs/libX11
- x11-libs/libXext
- x11-libs/libXi
- x11-libs/libXrender
- x11-libs/libXtst
- )"
-
-RESTRICT="preserve-libs splitdebug"
-QA_PREBUILT="*"
-
-S="${WORKDIR}/jdk-${JDK_PV}"
-
-pkg_pretend() {
- if [[ "$(tc-is-softfloat)" != "no" ]]; then
- die "These binaries require a hardfloat system."
- fi
-}
-
-do_rm() {
- rm -v $1 || die
- if use debug ; then
- rm -v "${S}-debug-image"/$1 || die
- fi
-}
-
-src_install() {
- local dest="/opt/${P}"
- local ddest="${ED%/}/${dest#/}"
-
- # Oracle and IcedTea have libjsoundalsa.so depending on
- # libasound.so.2 but AdoptOpenJDK only has libjsound.so. Weird.
- if ! use alsa ; then
- do_rm 'lib/libjsound.*'
- fi
-
- if use headless-awt ; then
- do_rm 'lib/lib*{[jx]awt,splashscreen}*'
- fi
-
- if ! use source ; then
- rm -v lib/src.zip || die
- fi
-
- rm -v lib/security/cacerts || die
- dosym ../../../../etc/ssl/certs/java/cacerts \
- "${dest}"/lib/security/cacerts
-
- dodir "${dest}"
- cp -pPR * "${ddest}" || die
-
- # provide stable symlink
- dosym "${P}" "/opt/${PN}-${SLOT}"
-
- use gentoo-vm && java-vm_install-env "${FILESDIR}"/${PN}.env.sh
- java-vm_set-pax-markings "${ddest}"
- java-vm_revdep-mask
- java-vm_sandbox-predict /dev/random /proc/self/coredump_filter
-}
diff --git a/dev-java/openj9-openjdk-bin/openj9-openjdk-bin-17.0.9_p9.ebuild b/dev-java/openj9-openjdk-bin/openj9-openjdk-bin-17.0.9_p9.ebuild
new file mode 100644
index 0000000..f41e70a
--- /dev/null
+++ b/dev-java/openj9-openjdk-bin/openj9-openjdk-bin-17.0.9_p9.ebuild
@@ -0,0 +1,117 @@
+# Copyright 1999-2022 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit java-vm-2 toolchain-funcs
+
+abi_uri() {
+ echo "${2-$1}? (
+ debug? (
+ https://github.com/ibmruntimes/semeru${SLOT}-binaries/releases/download/jdk-${DL_PV/+/%2B}/ibm-semeru-open-debugimage_${1}_linux_${DL_PV/+/_}.tar.gz
+ )
+ https://github.com/ibmruntimes/semeru${SLOT}-binaries/releases/download/jdk-${DL_PV/+/%2B}/ibm-semeru-open-jdk_${1}_linux_${DL_PV/+/_}.tar.gz
+ )"
+}
+
+JDK_PV=${PV//_p/+}
+DL_PV=${JDK_PV}_openj9-0.41.0
+SLOT=$(ver_cut 1)
+
+SRC_URI="
+ $(abi_uri aarch64 arm64)
+ $(abi_uri ppc64le ppc64)
+ $(abi_uri x64 amd64)
+"
+
+DESCRIPTION="Prebuilt IBM Semeru JDK binaries provided by IBM"
+HOMEPAGE="https://developer.ibm.com/languages/java/semeru-runtimes/"
+LICENSE="GPL-2-with-classpath-exception"
+KEYWORDS="~amd64 ~arm64 ~ppc64"
+IUSE="alsa cups debug headless-awt selinux source"
+
+RDEPEND="
+ >=sys-apps/baselayout-java-0.1.0-r1
+ kernel_linux? (
+ media-libs/fontconfig:1.0
+ media-libs/freetype:2
+ media-libs/harfbuzz
+ elibc_glibc? ( >=sys-libs/glibc-2.2.5:* )
+ elibc_musl? ( sys-libs/musl )
+ sys-libs/zlib
+ alsa? ( media-libs/alsa-lib )
+ cups? ( net-print/cups )
+ selinux? ( sec-policy/selinux-java )
+ !headless-awt? (
+ x11-libs/libX11
+ x11-libs/libXext
+ x11-libs/libXi
+ x11-libs/libXrender
+ x11-libs/libXtst
+ )
+ )"
+
+RESTRICT="preserve-libs splitdebug"
+QA_PREBUILT="*"
+
+S="${WORKDIR}/jdk-${JDK_PV}"
+
+pkg_pretend() {
+ if [[ "$(tc-is-softfloat)" != "no" ]]; then
+ die "These binaries require a hardfloat system."
+ fi
+}
+
+src_unpack() {
+ default
+ if [[ ${A} == *_mac_* ]] ; then
+ mv -v "${S}/Contents/Home/"* "${S}" || die
+ rm -Rf "${S}/Contents" # drop macOS executable
+ fi
+}
+
+src_install() {
+ local dest="/opt/${P}"
+ local ddest="${ED}/${dest#/}"
+
+ # on macOS if they would exist they would be called .dylib, but most
+ # importantly, there are no different providers, so everything
+ # that's shipped works.
+ if [[ ${A} != *_mac_* ]] ; then
+ # Not sure why they bundle this as it's commonly available and they
+ # only do so on x86_64. It's needed by libfontmanager.so. IcedTea
+ # also has an explicit dependency while Oracle seemingly dlopens it.
+ rm -vf lib/libfreetype.so || die
+
+ # prefer system copy # https://bugs.gentoo.org/776676
+ rm -vf lib/libharfbuzz.so || die
+
+ # Oracle and IcedTea have libjsoundalsa.so depending on
+ # libasound.so.2 but AdoptOpenJDK only has libjsound.so. Weird.
+ if ! use alsa ; then
+ rm -v lib/libjsound.* || die
+ fi
+
+ if use headless-awt ; then
+ rm -v lib/lib*{[jx]awt,splashscreen}* || die
+ fi
+ fi
+
+ if ! use source ; then
+ rm -v lib/src.zip || die
+ fi
+
+ rm -v lib/security/cacerts || die
+ dosym -r /etc/ssl/certs/java/cacerts "${dest}"/lib/security/cacerts
+
+ dodir "${dest}"
+ cp -pPR * "${ddest}" || die
+
+ # provide stable symlink
+ dosym "${P}" "/opt/${PN}-${SLOT}"
+
+ java-vm_install-env "${FILESDIR}"/${PN}.env.sh
+ java-vm_set-pax-markings "${ddest}"
+ java-vm_revdep-mask
+ java-vm_sandbox-predict /dev/random /proc/self/coredump_filter
+}
diff --git a/dev-java/openj9-openjdk-jre-bin/Manifest b/dev-java/openj9-openjdk-jre-bin/Manifest
index f69c8d5..3c2aca6 100644
--- a/dev-java/openj9-openjdk-jre-bin/Manifest
+++ b/dev-java/openj9-openjdk-jre-bin/Manifest
@@ -1,8 +1,6 @@
-DIST ibm-semeru-open-jre_aarch64_linux_11.0.13_8_openj9-0.29.0.tar.gz 42122642 SHA256 b56f464c2f46aa779897f076edb4c3c37d0280784bcc3b7a46228a32a9e62470
-DIST ibm-semeru-open-jre_aarch64_linux_17.0.1_12_openj9-0.29.1.tar.gz 41883291 SHA256 9763bdceaaa712b3d432b0b5961cef2140cd986669f887d55463da07748537b2
-DIST ibm-semeru-open-jre_ppc64le_linux_11.0.13_8_openj9-0.29.0.tar.gz 44652787 SHA256 3615940d4b26e8d11ff927dbf620a5247caecd84ba24c9d67f0e8b30ff463998
-DIST ibm-semeru-open-jre_ppc64le_linux_17.0.1_12_openj9-0.29.1.tar.gz 44451029 SHA256 1b29af021509e9aa6066953609ea1df661764695a934c0dc0c1abefeee88ff8b
-DIST ibm-semeru-open-jre_s390x_linux_11.0.13_8_openj9-0.29.0.tar.gz 43141369 SHA256 e942c0806163bbabe0b7ec8e630319489da400d58cd390011fc28428f468558e
-DIST ibm-semeru-open-jre_s390x_linux_17.0.1_12_openj9-0.29.1.tar.gz 42719983 SHA256 e19f4981cef24b8a2b008e14ddbf1481239ef189d22557ea4768b30605e07639
-DIST ibm-semeru-open-jre_x64_linux_11.0.13_8_openj9-0.29.0.tar.gz 43966499 SHA256 78eb54af15fac39eb2d254f51f0302aa213d3ad838f17766a9d081ca783edff4
-DIST ibm-semeru-open-jre_x64_linux_17.0.1_12_openj9-0.29.1.tar.gz 44078476 SHA256 69f1f7a6b3d4a701f3c25ac338768d8a414594fa2c50ddfbd8c014e8a5e790db
+DIST ibm-semeru-open-jre_aarch64_linux_11.0.21_9_openj9-0.41.0.tar.gz 46724041 SHA256 5eb5d5d6006e1066b5c72d3b000f1c8fda572fa64189af103ef1176235cd3174
+DIST ibm-semeru-open-jre_aarch64_linux_17.0.9_9_openj9-0.41.0.tar.gz 46616927 SHA256 9760aa27a5790a8c20a702ff5f036535f3df51d3fb291bb5254b5ae76e096bad
+DIST ibm-semeru-open-jre_ppc64le_linux_11.0.21_9_openj9-0.41.0.tar.gz 48848011 SHA256 0495d4d122dfb7ae160d9c76549f62fdd77b9c8ceddc9d4aced882c3c5157ba5
+DIST ibm-semeru-open-jre_ppc64le_linux_17.0.9_9_openj9-0.41.0.tar.gz 49098475 SHA256 73b9baab2766191de5da00498f2dcfe9de90fff6c4c457bea4944f103c6dde6e
+DIST ibm-semeru-open-jre_x64_linux_11.0.21_9_openj9-0.41.0.tar.gz 48023048 SHA256 324f7e8d75490cc76d5cf6a46b43f50ec1206a97d49e1549d1c65f1583fc51d5
+DIST ibm-semeru-open-jre_x64_linux_17.0.9_9_openj9-0.41.0.tar.gz 47935029 SHA256 1caf409f33f7738efe37742197525b5ae6244d6383b2017e7b8e925dc0b6a329
diff --git a/dev-java/openj9-openjdk-jre-bin/files/openj9-openjdk-jre-bin.env.sh b/dev-java/openj9-openjdk-jre-bin/files/openj9-openjdk-jre-bin.env.sh
index 1ad9132..ba4b8a2 100644
--- a/dev-java/openj9-openjdk-jre-bin/files/openj9-openjdk-jre-bin.env.sh
+++ b/dev-java/openj9-openjdk-jre-bin/files/openj9-openjdk-jre-bin.env.sh
@@ -1,10 +1,5 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-VERSION="AdoptOpenJDK JRE ${DL_PV}"
-JAVA_HOME="${EPREFIX}/opt/${P}"
-JDK_HOME="${EPREFIX}/opt/${P}"
-JAVAC="\${JAVA_HOME}/bin/javac"
+VERSION="IBM Semeru JRE ${DL_PV}"
+JAVA_HOME="${EPREFIX}/opt/${PN}-${SLOT}"
PATH="\${JAVA_HOME}/bin"
ROOTPATH="\${JAVA_HOME}/bin"
LDPATH="\${JAVA_HOME}/lib/:\${JAVA_HOME}/lib/server/"
@@ -13,4 +8,4 @@ PROVIDES_TYPE="JRE"
PROVIDES_VERSION="${SLOT}"
BOOTCLASSPATH=""
GENERATION="2"
-ENV_VARS="JAVA_HOME JDK_HOME JAVAC PATH ROOTPATH LDPATH MANPATH"
+ENV_VARS="JAVA_HOME PATH ROOTPATH LDPATH MANPATH"
diff --git a/dev-java/openj9-openjdk-jre-bin/metadata.xml b/dev-java/openj9-openjdk-jre-bin/metadata.xml
index b21a054..96526d8 100644
--- a/dev-java/openj9-openjdk-jre-bin/metadata.xml
+++ b/dev-java/openj9-openjdk-jre-bin/metadata.xml
@@ -8,6 +8,5 @@
</longdescription>
<use>
<flag name="headless-awt">Don't install the X backend for AWT, needed by some GUIs (used to be X flag)</flag>
- <flag name="gentoo-vm">Allow this JDK to be recognised by Gentoo (package manager, eselect, java-config, EXPERIMENTAL!)</flag>
</use>
</pkgmetadata>
diff --git a/dev-java/openj9-openjdk-jre-bin/openj9-openjdk-jre-bin-11.0.13.8.0.29.0.ebuild b/dev-java/openj9-openjdk-jre-bin/openj9-openjdk-jre-bin-11.0.21_p9.ebuild
index 52c9fd3..7aa42d8 100644
--- a/dev-java/openj9-openjdk-jre-bin/openj9-openjdk-jre-bin-11.0.13.8.0.29.0.ebuild
+++ b/dev-java/openj9-openjdk-jre-bin/openj9-openjdk-jre-bin-11.0.21_p9.ebuild
@@ -1,9 +1,9 @@
-# Copyright 1999-2020 Gentoo Authors
+# Copyright 1999-2022 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
-EAPI=6
+EAPI=8
-inherit eapi7-ver java-vm-2 toolchain-funcs
+inherit java-vm-2
abi_uri() {
echo "${2-$1}? (
@@ -11,27 +11,25 @@ abi_uri() {
)"
}
-JDK_PV=$(ver_cut 1-3)+$(ver_cut 4)
-DL_PV=${JDK_PV}_openj9-$(ver_cut 5-7)
+JDK_PV=${PV//_p/+}
+DL_PV=${JDK_PV}_openj9-0.41.0
SLOT=$(ver_cut 1)
SRC_URI="
$(abi_uri aarch64 arm64)
$(abi_uri ppc64le ppc64)
- $(abi_uri s390x s390)
$(abi_uri x64 amd64)
"
DESCRIPTION="Prebuilt IBM Semeru JRE binaries provided by IBM"
HOMEPAGE="https://developer.ibm.com/languages/java/semeru-runtimes/"
LICENSE="GPL-2-with-classpath-exception"
-KEYWORDS="~amd64 ~arm64 ~ppc64 ~s390"
-IUSE="alsa cups +gentoo-vm headless-awt selinux"
+KEYWORDS="~amd64 ~arm64 ~ppc64"
+IUSE="alsa cups headless-awt selinux"
RDEPEND="
media-libs/fontconfig:1.0
media-libs/freetype:2
- >net-libs/libnet-1.1
>=sys-apps/baselayout-java-0.1.0-r1
>=sys-libs/glibc-2.2.5:*
sys-libs/zlib
@@ -52,8 +50,13 @@ QA_PREBUILT="*"
S="${WORKDIR}/jdk-${JDK_PV}-jre"
src_install() {
- local dest="/opt/${P}"
- local ddest="${ED%/}/${dest#/}"
+ local dest="/opt/${PN}-${SLOT}"
+ local ddest="${ED}/${dest#/}"
+
+ # Not sure why they bundle this as it's commonly available and they
+ # only do so on x86_64. It's needed by libfontmanager.so. IcedTea
+ # also has an explicit dependency while Oracle seemingly dlopens it.
+ rm -vf lib/libfreetype.so || die
# Oracle and IcedTea have libjsoundalsa.so depending on
# libasound.so.2 but AdoptOpenJDK only has libjsound.so. Weird.
@@ -66,16 +69,17 @@ src_install() {
fi
rm -v lib/security/cacerts || die
- dosym ../../../../etc/ssl/certs/java/cacerts "${dest}"/lib/security/cacerts
+ dosym -r /etc/ssl/certs/java/cacerts "${dest}"/lib/security/cacerts
dodir "${dest}"
cp -pPR * "${ddest}" || die
- # provide stable symlink
- dosym "${P}" "/opt/${PN}-${SLOT}"
-
- use gentoo-vm && java-vm_install-env "${FILESDIR}"/${PN}.env.sh
+ java-vm_install-env "${FILESDIR}"/${PN}.env.sh
java-vm_set-pax-markings "${ddest}"
java-vm_revdep-mask
java-vm_sandbox-predict /dev/random /proc/self/coredump_filter
}
+
+pkg_postinst() {
+ java-vm-2_pkg_postinst
+}
diff --git a/dev-java/openj9-openjdk-jre-bin/openj9-openjdk-jre-bin-17.0.1.12.0.29.1.ebuild b/dev-java/openj9-openjdk-jre-bin/openj9-openjdk-jre-bin-17.0.9_p9.ebuild
index 52c9fd3..7aa42d8 100644
--- a/dev-java/openj9-openjdk-jre-bin/openj9-openjdk-jre-bin-17.0.1.12.0.29.1.ebuild
+++ b/dev-java/openj9-openjdk-jre-bin/openj9-openjdk-jre-bin-17.0.9_p9.ebuild
@@ -1,9 +1,9 @@
-# Copyright 1999-2020 Gentoo Authors
+# Copyright 1999-2022 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
-EAPI=6
+EAPI=8
-inherit eapi7-ver java-vm-2 toolchain-funcs
+inherit java-vm-2
abi_uri() {
echo "${2-$1}? (
@@ -11,27 +11,25 @@ abi_uri() {
)"
}
-JDK_PV=$(ver_cut 1-3)+$(ver_cut 4)
-DL_PV=${JDK_PV}_openj9-$(ver_cut 5-7)
+JDK_PV=${PV//_p/+}
+DL_PV=${JDK_PV}_openj9-0.41.0
SLOT=$(ver_cut 1)
SRC_URI="
$(abi_uri aarch64 arm64)
$(abi_uri ppc64le ppc64)
- $(abi_uri s390x s390)
$(abi_uri x64 amd64)
"
DESCRIPTION="Prebuilt IBM Semeru JRE binaries provided by IBM"
HOMEPAGE="https://developer.ibm.com/languages/java/semeru-runtimes/"
LICENSE="GPL-2-with-classpath-exception"
-KEYWORDS="~amd64 ~arm64 ~ppc64 ~s390"
-IUSE="alsa cups +gentoo-vm headless-awt selinux"
+KEYWORDS="~amd64 ~arm64 ~ppc64"
+IUSE="alsa cups headless-awt selinux"
RDEPEND="
media-libs/fontconfig:1.0
media-libs/freetype:2
- >net-libs/libnet-1.1
>=sys-apps/baselayout-java-0.1.0-r1
>=sys-libs/glibc-2.2.5:*
sys-libs/zlib
@@ -52,8 +50,13 @@ QA_PREBUILT="*"
S="${WORKDIR}/jdk-${JDK_PV}-jre"
src_install() {
- local dest="/opt/${P}"
- local ddest="${ED%/}/${dest#/}"
+ local dest="/opt/${PN}-${SLOT}"
+ local ddest="${ED}/${dest#/}"
+
+ # Not sure why they bundle this as it's commonly available and they
+ # only do so on x86_64. It's needed by libfontmanager.so. IcedTea
+ # also has an explicit dependency while Oracle seemingly dlopens it.
+ rm -vf lib/libfreetype.so || die
# Oracle and IcedTea have libjsoundalsa.so depending on
# libasound.so.2 but AdoptOpenJDK only has libjsound.so. Weird.
@@ -66,16 +69,17 @@ src_install() {
fi
rm -v lib/security/cacerts || die
- dosym ../../../../etc/ssl/certs/java/cacerts "${dest}"/lib/security/cacerts
+ dosym -r /etc/ssl/certs/java/cacerts "${dest}"/lib/security/cacerts
dodir "${dest}"
cp -pPR * "${ddest}" || die
- # provide stable symlink
- dosym "${P}" "/opt/${PN}-${SLOT}"
-
- use gentoo-vm && java-vm_install-env "${FILESDIR}"/${PN}.env.sh
+ java-vm_install-env "${FILESDIR}"/${PN}.env.sh
java-vm_set-pax-markings "${ddest}"
java-vm_revdep-mask
java-vm_sandbox-predict /dev/random /proc/self/coredump_filter
}
+
+pkg_postinst() {
+ java-vm-2_pkg_postinst
+}
diff --git a/dev-java/openj9-openjdk/Manifest b/dev-java/openj9-openjdk/Manifest
index bfa52d1..59d3825 100644
--- a/dev-java/openj9-openjdk/Manifest
+++ b/dev-java/openj9-openjdk/Manifest
@@ -1,6 +1,4 @@
-DIST openj9-0.29.0.tar.gz 16776743 BLAKE2B 524fc53506be1521c07ce6a65ec17419e7d228baa7543342b4011a223c6f2d1e50d80e2d4eee51cc8cfe89bf387ae17a9eb7d28ce61a5d8ff8bc790307061882 SHA512 accfb336b52c94f6988ef47c79c8be3fe841e37611596e61edaad57c801856c53ea248daab41f05a5487873d002f75b3a684588cb81b0fb0270f2638d6d06ed7
-DIST openj9-0.29.1.tar.gz 16789002 BLAKE2B 8cb49c7ebf89e50c6f7802912d3666d0be3a5614558daa17b90dcdc73b5b11e82265445df6064f4c03db220473320b1a164c4f3274a0316644d2c63d5b1aa71e SHA512 e61aaba78e836f209d35f0aaa344f727e0a9c77ec8efee68fa3a9d73dba44040bba12953ed2dff3475b3dfa94f9f4db6d7978a1b5dd05ae5a6db9eaa60fa83fa
-DIST openj9-omr-0.29.0.tar.gz 7852434 BLAKE2B 6f77abbf2597ee4f71aec7eb44e5a9f54c76fde7e3d432415d34c94c84dc00d49c3cd716c6cda4e0fea807b8ba87345b2c94a0014019154a0c60dde4a00db7b1 SHA512 de58cc6b3c2f3d657b8f588151b96acfffc63af274ef6d9c06e5e832c45c246476475c2d40b657c852d2d6f1915ea52095dae89defdaa644cd14f35500e0939f
-DIST openj9-omr-0.29.1.tar.gz 7852824 BLAKE2B 947e0ec74dcc327b646af7274f0a270a1f4b90f542b8a275e8bb839f8937191d171259da9727cd76bca9b1a83bf20713c538bcc6344d35949e617c293bb63e3d SHA512 8374fc5295cc082496d8e12e00450f57c08bbe4f320bd18a3dd4e5b190091022250b2077867abd81aa2da1bcacd04741d4b07d7e08275237c6997c446bcbead2
-DIST openj9-openjdk-jdk11-openj9-0.29.0.tar.gz 108964710 BLAKE2B 40526d85b988cbcd04ea254c120fd6cffecd2a1d3ce16e8dde54a3bffad81aea9d78b56804671a79684dfb327f6a8176d15b08e06f1e0b9f64f360c113a2b1b2 SHA512 a033b50bbe49c80c97ecf5f49757913815fcb15c1b8b6574f4039899b254febcbc8deaa49b2e5fd255d5dbcb9fccef9d7778971efa41ea3b0a09a40a0b65c87e
-DIST openj9-openjdk-jdk17-openj9-0.29.1.tar.gz 93765672 BLAKE2B b1825236b7a7e6ee70beefde588cde79d35b03f29b7f7ca83b3db178c9d0df318bd07dac81a09266466d094a567990448cad6746953643f7bf51870dc90cf169 SHA512 1fba0cce3840a70b7e43022991034dedc073f1989937fe9cbee1a2260fda71adf729e2bb67ef25e6300f830b69089edb792b35784c09e59e9fc996c38797dec6
+DIST openj9-0.41.0.tar.gz 18175551 BLAKE2B 691251444980b715b30d2624f6bf9e3964fb848201491f9ac18076ad8d4e354f34ba38affdf55ddf2631ddbd980a5fa4a39a7ac4dab9da8d8cf912711e03009a SHA512 39b5b3d950954183fcfce40398ab7a990a5030e7f403d2e1eb216a914345ec78bcdac14c5c2b24c7ddafcb75a91e267b03c752f88189b537258967f2d191efea
+DIST openj9-omr-0.41.0.tar.gz 8058703 BLAKE2B ead5711d9ab0400ddee7798c594585b9bfe73eeb20fc59f191ba062e64005f8c41c4ff8049e58d95cdb5f2175929274ae306c0b4f7938e8c5c8df2f9962d59df SHA512 2429994271f8367204b0e6d75450a7d283dc0fc1166055340a050cf80e06e87d95e3df0607d8d2554fb4adfa712f6ff048fb3d0fb24efed1960e5e3802b7f02d
+DIST openj9-openjdk-jdk11-openj9-0.41.0.tar.gz 102514856 BLAKE2B cb1bdc624ae4222ceaac329c5a70ac9f69003bad1dafbd2600fd088538a988b659f368615d5a269c0965caeb14df5b60cf80231d203fbe4a6302ba14a29fccaa SHA512 681a5d636c4672dae489cf71dfd6d9f8879a6ffe795912ecf9fa8f319f2039a16b9db2a75ee69bee9330f2978c411b077d496dc46ff91d9ec4c835f2b32d6142
+DIST openj9-openjdk-jdk17-openj9-0.41.0.tar.gz 95151687 BLAKE2B 4f31f740d3bc568910ec9c0c55b980a51e13272c1fd2d740e019b0fbe1631910e4f961170b26221bcf49d88e47fe0f314ab1182d113581abdecd096f873f71f6 SHA512 5d6e58a317c641b5b73295ee2f3ca63e85d14385640727e949ad06c41dc260fd710eef9f5eac8cb426e1524439359340f2d1ab606c752d77643baeb3201a2d18
diff --git a/dev-java/openj9-openjdk/files/omr-fam.patch b/dev-java/openj9-openjdk/files/omr-fam.patch
deleted file mode 100644
index 9141ec1..0000000
--- a/dev-java/openj9-openjdk/files/omr-fam.patch
+++ /dev/null
@@ -1,70 +0,0 @@
-diff --git a/ddr/tools/blob_reader/blob_reader.cpp b/ddr/tools/blob_reader/blob_reader.cpp
-index 028decd0c..a0212609f 100644
---- a/ddr/tools/blob_reader/blob_reader.cpp
-+++ b/ddr/tools/blob_reader/blob_reader.cpp
-@@ -85,7 +85,7 @@ struct BlobHeaderV1 {
-
- struct BlobString {
- uint16_t length;
-- char data[1]; /* flexible array member */
-+ char data[];
-
- void endian_swap()
- {
-diff --git a/include_core/ute_core.h b/include_core/ute_core.h
-index 8b3b1c65d..330ea52c6 100644
---- a/include_core/ute_core.h
-+++ b/include_core/ute_core.h
-@@ -125,7 +125,7 @@ typedef struct UtTraceRecord {
- uint64_t threadSyn2; /* Thread synonym 2 */
- int32_t firstEntry; /* Offset to first trace entry */
- int32_t nextEntry; /* Offset to next entry */
-- char threadName[1]; /* Thread name */
-+ char threadName[]; /* Thread name */
- } UtTraceRecord;
-
- /*
-diff --git a/include_core/ute_dataformat.h b/include_core/ute_dataformat.h
-index 71d9e36ad..8a9dcb487 100644
---- a/include_core/ute_dataformat.h
-+++ b/include_core/ute_dataformat.h
-@@ -180,7 +180,7 @@ typedef struct UtProcSection {
- #define UT_TRACE_ACTIVE_SECTION_NAME "UTTA"
- typedef struct UtActiveSection {
- UtDataHeader header; /* Eyecatcher, version etc */
-- char active[1]; /* Trace activation commands */
-+ char active[]; /* Trace activation commands */
- } UtActiveSection;
-
- /*
-@@ -191,7 +191,7 @@ typedef struct UtActiveSection {
- #define UT_TRACE_SERVICE_SECTION_NAME "UTSS"
- typedef struct UtServiceSection {
- UtDataHeader header; /* Eyecatcher, version etc */
-- char level[1]; /* Service level info */
-+ char level[]; /* Service level info */
- } UtServiceSection;
-
- /*
-@@ -202,7 +202,7 @@ typedef struct UtServiceSection {
- #define UT_TRACE_STARTUP_SECTION_NAME "UTSO"
- typedef struct UtStartupSection {
- UtDataHeader header; /* Eyecatcher, version etc */
-- char options[1]; /* Startup options */
-+ char options[]; /* Startup options */
- } UtStartupSection;
-
- /*
-diff --git a/omrtrace/omrtrace_internal.h b/omrtrace/omrtrace_internal.h
-index e52347eac..a68a88abd 100644
---- a/omrtrace/omrtrace_internal.h
-+++ b/omrtrace/omrtrace_internal.h
-@@ -157,7 +157,7 @@ typedef struct OMR_TraceGlobal OMR_TraceGlobal;
- typedef struct UtTraceCfg {
- UtDataHeader header;
- struct UtTraceCfg *next; /* Next trace config command */
-- char command[1]; /* Start of variable length section */
-+ char command[]; /* Start of variable length section */
- } UtTraceCfg;
-
- typedef struct UtDeferredConfigInfo {
diff --git a/dev-java/openj9-openjdk/files/openj9-no-o3.patch b/dev-java/openj9-openjdk/files/openj9-no-o3.patch
index 63d1dcf..b332052 100644
--- a/dev-java/openj9-openjdk/files/openj9-no-o3.patch
+++ b/dev-java/openj9-openjdk/files/openj9-no-o3.patch
@@ -1,11 +1,10 @@
-diff -ru a/runtime/cmake/platform/toolcfg/gnu.cmake b/runtime/cmake/platform/toolcfg/gnu.cmake
---- a/runtime/cmake/platform/toolcfg/gnu.cmake 2021-07-20 17:24:52.000000000 -0400
-+++ b/runtime/cmake/platform/toolcfg/gnu.cmake 2021-08-07 09:46:15.685325927 -0400
+--- a/runtime/cmake/platform/toolcfg/gnu.cmake
++++ b/runtime/cmake/platform/toolcfg/gnu.cmake
@@ -20,7 +20,6 @@
# SPDX-License-Identifier: EPL-2.0 OR Apache-2.0 OR GPL-2.0 WITH Classpath-exception-2.0 OR LicenseRef-GPL-2.0 WITH Assembly-exception
################################################################################
-list(APPEND OMR_PLATFORM_COMPILE_OPTIONS -O3 -g -fstack-protector)
- list(APPEND OMR_PLATFORM_C_COMPILE_OPTIONS -Wimplicit -Wreturn-type)
- list(APPEND OMR_PLATFORM_CXX_COMPILE_OPTIONS -fno-threadsafe-statics)
-
+ if(OMR_DDR AND NOT (CMAKE_C_COMPILER_VERSION VERSION_LESS 11))
+ # In gcc 11+ the default is to use DWARF version 5 which is not yet
+ # supported by ddrgen: tell the compiler to use DWARF version 4.
diff --git a/dev-java/openj9-openjdk/files/openj9-openjdk-override-version.patch b/dev-java/openj9-openjdk/files/openj9-openjdk-override-version.patch
new file mode 100644
index 0000000..1652627
--- /dev/null
+++ b/dev-java/openj9-openjdk/files/openj9-openjdk-override-version.patch
@@ -0,0 +1,11 @@
+--- a/closed/OpenJ9.gmk
++++ b/closed/OpenJ9.gmk
+@@ -44,7 +44,7 @@
+ # $4 - 'required' for a required repository, anything else for an optional one
+ GetVersion = $(eval $(call GetVersionHelper,$(strip $1),$(strip $2),$(strip $3),$(strip $4)))
+ define GetVersionHelper
+- $2 := $$(if $(wildcard $3),$$(shell $(GIT) -C $3 rev-parse --short HEAD))
++ $2 := $$(if $$($2),$$($2),$$(if $(wildcard $3),$$(shell $(GIT) -C $3 rev-parse --short HEAD)))
+ ifneq (,$$($2))
+ VersionLabelWidth := $(shell $(ECHO) "$1" | $(AWK) "{ width = length; print (width > $(VersionLabelWidth) ? width : $(VersionLabelWidth)) }")
+ VersionPairs += "$1" "$$($2)"
diff --git a/dev-java/openj9-openjdk/files/openj9-openjdk.env.sh b/dev-java/openj9-openjdk/files/openj9-openjdk.env.sh
index 5aac9c7..8d0d130 100644
--- a/dev-java/openj9-openjdk/files/openj9-openjdk.env.sh
+++ b/dev-java/openj9-openjdk/files/openj9-openjdk.env.sh
@@ -1,6 +1,3 @@
-# Copyright 1999-2018 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
VERSION="OpenJDK ${SLOT} with OpenJ9 ${OPENJ9_PV}"
JAVA_HOME="${EPREFIX}/usr/$(get_libdir)/${PN}-${SLOT}"
JDK_HOME="${EPREFIX}/usr/$(get_libdir)/${PN}-${SLOT}"
diff --git a/dev-java/openj9-openjdk/metadata.xml b/dev-java/openj9-openjdk/metadata.xml
index 1616443..dadf469 100644
--- a/dev-java/openj9-openjdk/metadata.xml
+++ b/dev-java/openj9-openjdk/metadata.xml
@@ -7,11 +7,11 @@
</maintainer>
<use>
<flag name="ddr">Enable Direct Dump Reader</flag>
- <flag name="custom-optimization">Override OpenJDK and OpenJ9 per-module optimization flags</flag>
<flag name="headless-awt">Don't install the X backend for AWT, needed by some GUIs</flag>
- <flag name="gentoo-vm">Allow this JDK to be recognised by Gentoo (package manager, eselect, java-config, EXPERIMENTAL!)</flag>
<flag name="javafx">Import OpenJFX modules at build time, via <pkg>dev-java/openjfx</pkg></flag>
<flag name="jbootstrap">Build OpenJDK twice, the second time using the result of the first</flag>
+ <flag name="jitserver">OpenJ9 JITServer support</flag>
+ <flag name="numa">Enable NUMA support using sys-process/numactl (NUMA kernel support is also required)</flag>
<flag name="systemtap">Enable SystemTAP/DTrace tracing</flag>
</use>
</pkgmetadata>
diff --git a/dev-java/openj9-openjdk/openj9-openjdk-11.0.29.0.ebuild b/dev-java/openj9-openjdk/openj9-openjdk-11.0.41.0.ebuild
index 07ab41d..35bc082 100644
--- a/dev-java/openj9-openjdk/openj9-openjdk-11.0.29.0.ebuild
+++ b/dev-java/openj9-openjdk/openj9-openjdk-11.0.41.0.ebuild
@@ -1,9 +1,9 @@
-# Copyright 1999-2020 Gentoo Authors
+# Copyright 1999-2022 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
-EAPI=6
+EAPI=7
-inherit check-reqs eapi7-ver flag-o-matic java-pkg-2 java-vm-2 multiprocessing pax-utils toolchain-funcs
+inherit check-reqs eapi8-dosym flag-o-matic java-pkg-2 java-vm-2 multiprocessing toolchain-funcs
SLOT="$(ver_cut 1)"
OPENJ9_PV="$(ver_cut 2-4)"
@@ -18,8 +18,8 @@ if [[ ${OPENJ9_PV} == 9999 ]]; then
OPENJ9_OMR_EGIT_REPO_URI="https://github.com/eclipse/openj9-omr.git"
else
SRC_URI="
- https://github.com/ibmruntimes/openj9-openjdk-jdk${SLOT}/archive/v${OPENJ9_PV}-release.tar.gz -> openj9-openjdk-jdk${SLOT}-${OPENJ9_P}.tar.gz
- https://github.com/eclipse/openj9/archive/${OPENJ9_P}.tar.gz -> ${OPENJ9_P}.tar.gz
+ https://github.com/ibmruntimes/openj9-openjdk-jdk${SLOT}/archive/${OPENJ9_P}.tar.gz -> openj9-openjdk-jdk${SLOT}-${OPENJ9_P}.tar.gz
+ https://github.com/eclipse/openj9/archive/${OPENJ9_P}.tar.gz
https://github.com/eclipse/openj9-omr/archive/${OPENJ9_P}.tar.gz -> openj9-omr-${OPENJ9_PV}.tar.gz
"
fi
@@ -27,7 +27,11 @@ fi
LICENSE="GPL-2"
KEYWORDS="~amd64"
-IUSE="alsa cups custom-optimization ddr debug doc examples gentoo-vm headless-awt javafx +jbootstrap +pch selinux source systemtap"
+IUSE="alsa cups ddr debug doc headless-awt javafx +jbootstrap jitserver numa selinux source systemtap"
+
+REQUIRED_USE="
+ javafx? ( alsa !headless-awt )
+"
COMMON_DEPEND="
media-libs/freetype:2=
@@ -36,11 +40,12 @@ COMMON_DEPEND="
media-libs/libpng:0=
media-libs/lcms:2=
sys-libs/zlib
- virtual/jpeg:0=
+ media-libs/libjpeg-turbo:0=
systemtap? ( dev-util/systemtap )
dev-libs/elfutils
ddr? ( dev-libs/libdwarf )
+ numa? ( sys-process/numactl )
"
# Many libs are required to build, but not to run, make is possible to remove
@@ -85,9 +90,7 @@ DEPEND="
)
"
-REQUIRED_USE="javafx? ( alsa !headless-awt )"
-
-S="${WORKDIR}/openj9-openjdk-jdk${SLOT}-${OPENJ9_PV}-release"
+S="${WORKDIR}/${PN}-jdk${SLOT}-${OPENJ9_P}"
# The space required to build varies wildly depending on USE flags,
# ranging from 3GB to 16GB. This function is certainly not exact but
@@ -106,6 +109,10 @@ pkg_pretend() {
openjdk_check_requirements
if [[ ${MERGE_TYPE} != binary ]]; then
has ccache ${FEATURES} && die "FEATURES=ccache doesn't work with ${PN}, bug #677876"
+
+ if use jitserver && tc-is-clang; then
+ die "jitserver does not compile with clang"
+ fi
fi
}
@@ -113,45 +120,13 @@ pkg_setup() {
openjdk_check_requirements
java-vm-2_pkg_setup
+ [[ ${MERGE_TYPE} == "binary" ]] && return
+
JAVA_PKG_WANT_BUILD_VM="openj9-openjdk-${SLOT} openj9-openjdk-bin-${SLOT} openjdk-${SLOT} openjdk-bin-${SLOT}"
JAVA_PKG_WANT_SOURCE="${SLOT}"
JAVA_PKG_WANT_TARGET="${SLOT}"
- # The nastiness below is necessary while the gentoo-vm USE flag is
- # masked. First we call java-pkg-2_pkg_setup if it looks like the
- # flag was unmasked against one of the possible build VMs. If not,
- # we try finding one of them in their expected locations. This would
- # have been slightly less messy if openjdk-bin had been installed to
- # /opt/${PN}-${SLOT} or if there was a mechanism to install a VM env
- # file but disable it so that it would not normally be selectable.
-
- local vm
- for vm in ${JAVA_PKG_WANT_BUILD_VM}; do
- if [[ -d ${EPREFIX}/usr/lib/jvm/${vm} ]]; then
- java-pkg-2_pkg_setup
- return
- fi
- done
-
- if [[ ${MERGE_TYPE} != binary ]]; then
- if [[ -z ${JDK_HOME} ]]; then
- for slot in ${SLOT} $((SLOT-1)); do
- for variant in openj9- ''; do
- if has_version --host-root dev-java/${variant}openjdk:${slot}; then
- JDK_HOME=${EPREFIX}/usr/$(get_libdir)/${variant}openjdk-${slot}
- break
- elif has_version --host-root dev-java/${variant}openjdk-bin:${slot}; then
- JDK_HOME=$(best_version --host-root dev-java/${variant}openjdk-bin:${slot})
- JDK_HOME=${JDK_HOME#*/}
- JDK_HOME=${EPREFIX}/opt/${JDK_HOME%-r*}
- break
- fi
- done
- done
- fi
- [[ -n ${JDK_HOME} ]] || die "Build VM not found!"
- export JDK_HOME
- fi
+ java-pkg-2_pkg_setup
}
src_unpack() {
@@ -176,19 +151,12 @@ src_prepare() {
default
+ eapply -- "${FILESDIR}/openj9-openjdk-override-version.patch"
eapply -d openj9 -- "${FILESDIR}/openj9-no-o3.patch"
eapply -d omr -- "${FILESDIR}/omr-omrstr-iconv-failure-overflow.patch"
- eapply -d omr -- "${FILESDIR}/omr-fam.patch"
-
- if [[ ${OPENJ9_PV} != 9999 ]]; then
- sed -i -e '/^OPENJDK_SHA :=/s/:=.*/:= __OPENJDK_SHA__/' \
- -e '/^OPENJ9_SHA :=/s/:=.*/:= '${OPENJ9_P}/ \
- -e '/^OPENJ9_TAG :=/s/:=.*/:= '${OPENJ9_P}/ \
- -e '/^OPENJ9OMR_SHA :=/s/:=.*/:= '${OPENJ9_P}/ \
- closed/OpenJ9.gmk || die
- fi
find openj9/ omr/ -name CMakeLists.txt -exec sed -i -e '/set(OMR_WARNINGS_AS_ERRORS ON/s/ON/OFF/' {} + || die
+ sed -i -e '/^ OPENJ9_CONFIGURE_NUMA$/d' closed/autoconf/custom-hook.m4 || die
chmod +x configure || die
}
@@ -197,14 +165,13 @@ src_configure() {
# Work around stack alignment issue, bug #647954. in case we ever have x86
use x86 && append-flags -mincoming-stack-boundary=2
- use custom-optimization || filter-flags '-O*'
-
# Enabling full docs appears to break doc building. If not
# explicitly disabled, the flag will get auto-enabled if pandoc and
# graphviz are detected. pandoc has loads of dependencies anyway.
local myconf=(
--disable-ccache
+ --disable-precompiled-headers
--disable-warnings-as-errors{,-omr,-openj9}
--enable-full-docs=no
--with-boot-jdk="${JDK_HOME}"
@@ -225,7 +192,6 @@ src_configure() {
--with-vendor-vm-bug-url="https://bugs.openjdk.java.net"
--with-vendor-version-string="${PVR}"
--with-version-pre=""
- --with-version-opt=""
--with-zlib=system
--enable-dtrace=$(usex systemtap yes no)
--enable-headless-only=$(usex headless-awt yes no)
@@ -233,10 +199,11 @@ src_configure() {
--with-cmake
$(use_enable ddr)
+ $(use_enable jitserver)
)
if use javafx; then
- local zip="${EPREFIX%/}/usr/$(get_libdir)/openjfx-${SLOT}/javafx-exports.zip"
+ local zip="${EPREFIX}/usr/$(get_libdir)/openjfx-${SLOT}/javafx-exports.zip"
if [[ -r ${zip} ]]; then
myconf+=( --with-import-modules="${zip}" )
else
@@ -244,13 +211,6 @@ src_configure() {
fi
fi
- # PaX breaks pch, bug #601016
- if use pch && ! host-is-pax; then
- myconf+=( --enable-precompiled-headers )
- else
- myconf+=( --disable-precompiled-headers )
- fi
-
(
unset _JAVA_OPTIONS JAVA JAVA_TOOL_OPTIONS JAVAC XARGS
CFLAGS= CXXFLAGS= LDFLAGS= \
@@ -267,6 +227,7 @@ src_compile() {
"-DJ9JIT_EXTRA_CXXFLAGS='${CXXFLAGS}'"
"-DCMAKE_EXE_LINKER_FLAGS='${LDFLAGS}'"
-DOMR_WARNINGS_AS_ERRORS=OFF
+ -DOMR_PORT_NUMA_SUPPORT=$(usex numa)
)
local myemakeargs=(
JOBS=$(makeopts_jobs)
@@ -275,13 +236,17 @@ src_compile() {
$(usex jbootstrap bootcycle-images product-images)
EXTRA_CMAKE_ARGS="${mycmakeargsx[*]}"
+ OPENJDK_SHA=$(ver_cut 1-3)
+ OPENJ9_SHA=${OPENJ9_P}
+ OPENJ9_TAG=${OPENJ9_P}
+ OPENJ9OMR_SHA=${OPENJ9_P}
)
emake "${myemakeargs[@]}" -j1 #nowarn
}
src_install() {
local dest="/usr/$(get_libdir)/${PN}-${SLOT}"
- local ddest="${ED}${dest#/}"
+ local ddest="${ED}/${dest#/}"
cd "${S}"/build/*-release/images/jdk || die
@@ -296,10 +261,6 @@ src_install() {
rm -v lib/libjsound.* || die
fi
- if ! use examples ; then
- rm -vr demo/ || die
- fi
-
if ! use source ; then
rm -v lib/src.zip || die
fi
@@ -309,12 +270,12 @@ src_install() {
dodir "${dest}"
cp -pPR * "${ddest}" || die
- dosym ../../../../../etc/ssl/certs/java/cacerts "${dest}"/lib/security/cacerts
+ dosym8 -r /etc/ssl/certs/java/cacerts "${dest}"/lib/security/cacerts
# must be done before running itself
java-vm_set-pax-markings "${ddest}"
- use gentoo-vm && java-vm_install-env "${FILESDIR}"/${PN}.env.sh
+ java-vm_install-env "${FILESDIR}"/${PN}.env.sh
java-vm_revdep-mask
java-vm_sandbox-predict /dev/random /proc/self/coredump_filter
diff --git a/dev-java/openj9-openjdk/openj9-openjdk-17.0.29.1.ebuild b/dev-java/openj9-openjdk/openj9-openjdk-17.0.41.0.ebuild
index 93bdcf3..ca64ddd 100644
--- a/dev-java/openj9-openjdk/openj9-openjdk-17.0.29.1.ebuild
+++ b/dev-java/openj9-openjdk/openj9-openjdk-17.0.41.0.ebuild
@@ -1,9 +1,9 @@
-# Copyright 1999-2020 Gentoo Authors
+# Copyright 1999-2022 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
-EAPI=6
+EAPI=7
-inherit check-reqs eapi7-ver flag-o-matic java-pkg-2 java-vm-2 multiprocessing pax-utils toolchain-funcs
+inherit check-reqs eapi8-dosym flag-o-matic java-pkg-2 java-vm-2 multiprocessing toolchain-funcs
SLOT="$(ver_cut 1)"
OPENJ9_PV="$(ver_cut 2-4)"
@@ -18,8 +18,8 @@ if [[ ${OPENJ9_PV} == 9999 ]]; then
OPENJ9_OMR_EGIT_REPO_URI="https://github.com/eclipse/openj9-omr.git"
else
SRC_URI="
- https://github.com/ibmruntimes/openj9-openjdk-jdk${SLOT}/archive/v${OPENJ9_PV}-release.tar.gz -> openj9-openjdk-jdk${SLOT}-${OPENJ9_P}.tar.gz
- https://github.com/eclipse/openj9/archive/${OPENJ9_P}.tar.gz -> ${OPENJ9_P}.tar.gz
+ https://github.com/ibmruntimes/openj9-openjdk-jdk${SLOT}/archive/${OPENJ9_P}.tar.gz -> openj9-openjdk-jdk${SLOT}-${OPENJ9_P}.tar.gz
+ https://github.com/eclipse/openj9/archive/${OPENJ9_P}.tar.gz
https://github.com/eclipse/openj9-omr/archive/${OPENJ9_P}.tar.gz -> openj9-omr-${OPENJ9_PV}.tar.gz
"
fi
@@ -27,7 +27,11 @@ fi
LICENSE="GPL-2"
KEYWORDS="~amd64"
-IUSE="alsa cups ddr debug doc examples gentoo-vm headless-awt javafx +jbootstrap numa +pch selinux source systemtap"
+IUSE="alsa cups ddr debug doc headless-awt javafx +jbootstrap jitserver numa selinux source systemtap"
+
+REQUIRED_USE="
+ javafx? ( alsa !headless-awt )
+"
COMMON_DEPEND="
media-libs/freetype:2=
@@ -36,7 +40,7 @@ COMMON_DEPEND="
media-libs/libpng:0=
media-libs/lcms:2=
sys-libs/zlib
- virtual/jpeg:0=
+ media-libs/libjpeg-turbo:0=
systemtap? ( dev-util/systemtap )
dev-libs/elfutils
@@ -86,9 +90,7 @@ DEPEND="
)
"
-REQUIRED_USE="javafx? ( alsa !headless-awt )"
-
-S="${WORKDIR}/openj9-openjdk-jdk${SLOT}-${OPENJ9_PV}-release"
+S="${WORKDIR}/${PN}-jdk${SLOT}-${OPENJ9_P}"
# The space required to build varies wildly depending on USE flags,
# ranging from 3GB to 16GB. This function is certainly not exact but
@@ -107,6 +109,10 @@ pkg_pretend() {
openjdk_check_requirements
if [[ ${MERGE_TYPE} != binary ]]; then
has ccache ${FEATURES} && die "FEATURES=ccache doesn't work with ${PN}, bug #677876"
+
+ if use jitserver && tc-is-clang; then
+ die "jitserver does not compile with clang"
+ fi
fi
}
@@ -114,6 +120,8 @@ pkg_setup() {
openjdk_check_requirements
java-vm-2_pkg_setup
+ [[ ${MERGE_TYPE} == "binary" ]] && return
+
JAVA_PKG_WANT_BUILD_VM="openj9-openjdk-${SLOT} openj9-openjdk-bin-${SLOT} openjdk-${SLOT} openjdk-bin-${SLOT}"
JAVA_PKG_WANT_SOURCE="${SLOT}"
JAVA_PKG_WANT_TARGET="${SLOT}"
@@ -128,31 +136,11 @@ pkg_setup() {
local vm
for vm in ${JAVA_PKG_WANT_BUILD_VM}; do
- if [[ -d ${EPREFIX}/usr/lib/jvm/${vm} ]]; then
+ if [[ -d ${BROOT}/usr/lib/jvm/${vm} ]]; then
java-pkg-2_pkg_setup
return
fi
done
-
- if [[ ${MERGE_TYPE} != binary ]]; then
- if [[ -z ${JDK_HOME} ]]; then
- for slot in ${SLOT} $((SLOT-1)); do
- for variant in openj9- ''; do
- if has_version --host-root dev-java/${variant}openjdk:${slot}; then
- JDK_HOME=${EPREFIX}/usr/$(get_libdir)/${variant}openjdk-${slot}
- break
- elif has_version --host-root dev-java/${variant}openjdk-bin:${slot}; then
- JDK_HOME=$(best_version --host-root dev-java/${variant}openjdk-bin:${slot})
- JDK_HOME=${JDK_HOME#*/}
- JDK_HOME=${EPREFIX}/opt/${JDK_HOME%-r*}
- break
- fi
- done
- done
- fi
- [[ -n ${JDK_HOME} ]] || die "Build VM not found!"
- export JDK_HOME
- fi
}
src_unpack() {
@@ -177,17 +165,9 @@ src_prepare() {
default
+ eapply -- "${FILESDIR}/openj9-openjdk-override-version.patch"
eapply -d openj9 -- "${FILESDIR}/openj9-no-o3.patch"
eapply -d omr -- "${FILESDIR}/omr-omrstr-iconv-failure-overflow.patch"
- eapply -d omr -- "${FILESDIR}/omr-fam.patch"
-
- if [[ ${OPENJ9_PV} != 9999 ]]; then
- sed -i -e '/^OPENJDK_SHA :=/s/:=.*/:= __OPENJDK_SHA__/' \
- -e '/^OPENJ9_SHA :=/s/:=.*/:= '${OPENJ9_P}/ \
- -e '/^OPENJ9_TAG :=/s/:=.*/:= '${OPENJ9_P}/ \
- -e '/^OPENJ9OMR_SHA :=/s/:=.*/:= '${OPENJ9_P}/ \
- closed/OpenJ9.gmk || die
- fi
find openj9/ omr/ -name CMakeLists.txt -exec sed -i -e '/set(OMR_WARNINGS_AS_ERRORS ON/s/ON/OFF/' {} + || die
sed -i -e '/^ OPENJ9_CONFIGURE_NUMA$/d' closed/autoconf/custom-hook.m4 || die
@@ -196,6 +176,20 @@ src_prepare() {
}
src_configure() {
+ for variant in openj9- ''; do
+ if has_version dev-java/${variant}openjdk:${SLOT}; then
+ JDK_HOME=${EPREFIX}/usr/$(get_libdir)/${variant}openjdk-${SLOT}
+ break
+ elif has_version dev-java/${variant}openjdk-bin:${SLOT}; then
+ JDK_HOME=$(best_version dev-java/${variant}openjdk-bin:${SLOT})
+ JDK_HOME=${JDK_HOME#*/}
+ JDK_HOME=${EPREFIX}/opt/${JDK_HOME%-r*}
+ break
+ fi
+ done
+ [[ -n ${JDK_HOME} ]] || die "Build VM not found!"
+ export JDK_HOME
+
# Work around stack alignment issue, bug #647954. in case we ever have x86
use x86 && append-flags -mincoming-stack-boundary=2
@@ -205,6 +199,7 @@ src_configure() {
local myconf=(
--disable-ccache
+ --disable-precompiled-headers
--disable-warnings-as-errors{,-omr,-openj9}
--enable-full-docs=no
--with-boot-jdk="${JDK_HOME}"
@@ -225,7 +220,6 @@ src_configure() {
--with-vendor-vm-bug-url="https://bugs.openjdk.java.net"
--with-vendor-version-string="${PVR}"
--with-version-pre=""
- --with-version-opt=""
--with-zlib=system
--enable-dtrace=$(usex systemtap yes no)
--enable-headless-only=$(usex headless-awt yes no)
@@ -233,10 +227,11 @@ src_configure() {
--with-cmake
$(use_enable ddr)
+ $(use_enable jitserver)
)
if use javafx; then
- local zip="${EPREFIX%/}/usr/$(get_libdir)/openjfx-${SLOT}/javafx-exports.zip"
+ local zip="${EPREFIX}/usr/$(get_libdir)/openjfx-${SLOT}/javafx-exports.zip"
if [[ -r ${zip} ]]; then
myconf+=( --with-import-modules="${zip}" )
else
@@ -244,13 +239,6 @@ src_configure() {
fi
fi
- # PaX breaks pch, bug #601016
- if use pch && ! host-is-pax; then
- myconf+=( --enable-precompiled-headers )
- else
- myconf+=( --disable-precompiled-headers )
- fi
-
(
unset _JAVA_OPTIONS JAVA JAVA_TOOL_OPTIONS JAVAC XARGS
CFLAGS= CXXFLAGS= LDFLAGS= \
@@ -276,13 +264,17 @@ src_compile() {
$(usex jbootstrap bootcycle-images product-images)
EXTRA_CMAKE_ARGS="${mycmakeargsx[*]}"
+ OPENJDK_SHA=$(ver_cut 1-3)
+ OPENJ9_SHA=${OPENJ9_P}
+ OPENJ9_TAG=${OPENJ9_P}
+ OPENJ9OMR_SHA=${OPENJ9_P}
)
emake "${myemakeargs[@]}" -j1 #nowarn
}
src_install() {
local dest="/usr/$(get_libdir)/${PN}-${SLOT}"
- local ddest="${ED}${dest#/}"
+ local ddest="${ED}/${dest#/}"
cd "${S}"/build/*-release/images/jdk || die
@@ -297,10 +289,6 @@ src_install() {
rm -v lib/libjsound.* || die
fi
- if ! use examples ; then
- rm -vr demo/ || die
- fi
-
if ! use source ; then
rm -v lib/src.zip || die
fi
@@ -310,12 +298,12 @@ src_install() {
dodir "${dest}"
cp -pPR * "${ddest}" || die
- dosym ../../../../../etc/ssl/certs/java/cacerts "${dest}"/lib/security/cacerts
+ dosym8 -r /etc/ssl/certs/java/cacerts "${dest}"/lib/security/cacerts
# must be done before running itself
java-vm_set-pax-markings "${ddest}"
- use gentoo-vm && java-vm_install-env "${FILESDIR}"/${PN}.env.sh
+ java-vm_install-env "${FILESDIR}"/${PN}.env.sh
java-vm_revdep-mask
java-vm_sandbox-predict /dev/random /proc/self/coredump_filter
@@ -325,3 +313,7 @@ src_install() {
dosym ../../../usr/share/doc/"${PF}" /usr/share/doc/"${PN}-${SLOT}"
fi
}
+
+pkg_postinst() {
+ java-vm-2_pkg_postinst
+}