summaryrefslogtreecommitdiff
path: root/dev-java/openj9-openjdk
diff options
context:
space:
mode:
Diffstat (limited to 'dev-java/openj9-openjdk')
-rw-r--r--dev-java/openj9-openjdk/Manifest8
-rw-r--r--dev-java/openj9-openjdk/files/openj9.patch12
-rw-r--r--dev-java/openj9-openjdk/openj9-openjdk-11.0.46.1.ebuild (renamed from dev-java/openj9-openjdk/openj9-openjdk-11.0.41.0.ebuild)38
-rw-r--r--dev-java/openj9-openjdk/openj9-openjdk-21.0.46.1.ebuild (renamed from dev-java/openj9-openjdk/openj9-openjdk-17.0.41.0.ebuild)21
4 files changed, 59 insertions, 20 deletions
diff --git a/dev-java/openj9-openjdk/Manifest b/dev-java/openj9-openjdk/Manifest
index 59d3825..ca28a90 100644
--- a/dev-java/openj9-openjdk/Manifest
+++ b/dev-java/openj9-openjdk/Manifest
@@ -1,4 +1,4 @@
-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
+DIST openj9-0.46.1.tar.gz 18342761 BLAKE2B 63f73666ec2bf6d0f8d37ed17f6ae43a2732b413260d340c896000f8b2a025285cd425a9c8e25da2e46863109c73cbd2767112ad86c9f97a68236774e98658fb SHA512 a243ca6f6c8a762079d9884e40d509204a589e970b316cd9d574db4f02e24175187b36400caf79b9c306b76fa22a679ff81f1678daa2cb6589ca324302e875a4
+DIST openj9-omr-0.46.1.tar.gz 8110029 BLAKE2B e36edd58026d8a14eccfd6dca8b1bfc3f98d1b4873d0835e6f5ced14c2a3bf8dcbf152c88197ac9f1788d60444582f32fce7d324673b395a9ccf04d81d1b2fdb SHA512 7dc44aec1655a8add2dd5a91b05c164fc9182aadd1bfe961d2734f59dfd082e489365e5b33ac6a59e9838cef0db0f69f5cf66bbc326761ed583540cd099fcaba
+DIST openj9-openjdk-jdk11-openj9-0.46.1.tar.gz 102673195 BLAKE2B 05e6b41693ba23cb9b0ed809f20b5c0e9d1f512dc205013dc9a8fa3be07fa23c20a5d50b7edcf6ab8de5315faef2ac997b4224119d54ed42a7e2eb9ab32f5add SHA512 7976e5319466ae829397a639e8ac03753777cb61503acb03d98c8ad5b61de639244be2dbaa9e2def78127b639fbd2a7e4b5d6ae6ce862c6dbeadc96c77e28a63
+DIST openj9-openjdk-jdk21-openj9-0.46.1.tar.gz 100343564 BLAKE2B 24638cd0a351d2a333df100acd72b1ddb5088e15fd9415b66e67d236ee670ee305dba53c4b520cefc89b43838b8a0d36a6341ecb5053663fde70f4e2c8e2792e SHA512 942542139e8cd61cce0e64e229f56e808608e1a2432b53cfa774f5afa163ccf1c06356e693d8aedf7de7849fbeca5c357f5e2359c7f96d49c2ed9804d24a94a1
diff --git a/dev-java/openj9-openjdk/files/openj9.patch b/dev-java/openj9-openjdk/files/openj9.patch
new file mode 100644
index 0000000..0233be5
--- /dev/null
+++ b/dev-java/openj9-openjdk/files/openj9.patch
@@ -0,0 +1,12 @@
+diff --git a/runtime/oti/xhelpers.m4 b/runtime/oti/xhelpers.m4
+index 9d9fe46aba..793bb06901 100644
+--- a/runtime/oti/xhelpers.m4
++++ b/runtime/oti/xhelpers.m4
+@@ -93,7 +93,6 @@ define({SHORT_JMP},{short})
+
+ define({FILE_START},{
+ .intel_syntax noprefix
+- .arch pentium4
+ .text
+ })
+
diff --git a/dev-java/openj9-openjdk/openj9-openjdk-11.0.41.0.ebuild b/dev-java/openj9-openjdk/openj9-openjdk-11.0.46.1.ebuild
index 35bc082..4e7eb58 100644
--- a/dev-java/openj9-openjdk/openj9-openjdk-11.0.41.0.ebuild
+++ b/dev-java/openj9-openjdk/openj9-openjdk-11.0.46.1.ebuild
@@ -1,9 +1,9 @@
-# Copyright 1999-2022 Gentoo Authors
+# Copyright 1999-2024 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
-EAPI=7
+EAPI=8
-inherit check-reqs eapi8-dosym flag-o-matic java-pkg-2 java-vm-2 multiprocessing toolchain-funcs
+inherit check-reqs flag-o-matic java-pkg-2 java-vm-2 multiprocessing toolchain-funcs
SLOT="$(ver_cut 1)"
OPENJ9_PV="$(ver_cut 2-4)"
@@ -24,7 +24,7 @@ else
"
fi
-LICENSE="GPL-2"
+LICENSE="GPL-2-with-classpath-exception"
KEYWORDS="~amd64"
IUSE="alsa cups ddr debug doc headless-awt javafx +jbootstrap jitserver numa selinux source systemtap"
@@ -41,7 +41,7 @@ COMMON_DEPEND="
media-libs/lcms:2=
sys-libs/zlib
media-libs/libjpeg-turbo:0=
- systemtap? ( dev-util/systemtap )
+ systemtap? ( dev-debug/systemtap )
dev-libs/elfutils
ddr? ( dev-libs/libdwarf )
@@ -162,9 +162,18 @@ src_prepare() {
}
src_configure() {
- # Work around stack alignment issue, bug #647954. in case we ever have x86
+ # Work around stack alignment issue, bug #647954.
use x86 && append-flags -mincoming-stack-boundary=2
+ # Strip some flags users may set, but should not. #818502
+ filter-flags -fexceptions
+
+ # Strip lto related flags, we rely on USE=lto and --with-jvm-features=link-time-opt
+ # https://bugs.gentoo.org/833097
+ # https://bugs.gentoo.org/833098
+ filter-lto
+ filter-flags -fdevirtualize-at-ltrans
+
# 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.
@@ -202,7 +211,14 @@ src_configure() {
$(use_enable jitserver)
)
+ use lto && myconf+=( --with-jvm-features=link-time-opt )
+
if use javafx; then
+ # this is not useful for users, just for upstream developers
+ # build system compares mesa version in md file
+ # https://bugs.gentoo.org/822612
+ export LEGAL_EXCLUDES=mesa3d.md
+
local zip="${EPREFIX}/usr/$(get_libdir)/openjfx-${SLOT}/javafx-exports.zip"
if [[ -r ${zip} ]]; then
myconf+=( --with-import-modules="${zip}" )
@@ -220,6 +236,10 @@ src_configure() {
}
src_compile() {
+ # Too brittle - gets confused by e.g. -Oline
+ export MAKEOPTS="-j$(makeopts_jobs) -l$(makeopts_loadavg)"
+ unset GNUMAKEFLAGS MAKEFLAGS
+
local mycmakeargsx=(
"-DCMAKE_C_FLAGS='${CFLAGS}'"
"-DJ9JIT_EXTRA_CFLAGS='${CFLAGS}'"
@@ -282,6 +302,10 @@ src_install() {
if use doc ; then
docinto html
dodoc -r "${S}"/build/*-release/images/docs/*
- dosym ../../../usr/share/doc/"${PF}" /usr/share/doc/"${PN}-${SLOT}"
+ dosym -r /usr/share/doc/"${PF}" /usr/share/doc/"${PN}-${SLOT}"
fi
}
+
+pkg_postinst() {
+ java-vm-2_pkg_postinst
+}
diff --git a/dev-java/openj9-openjdk/openj9-openjdk-17.0.41.0.ebuild b/dev-java/openj9-openjdk/openj9-openjdk-21.0.46.1.ebuild
index ca64ddd..b3076d5 100644
--- a/dev-java/openj9-openjdk/openj9-openjdk-17.0.41.0.ebuild
+++ b/dev-java/openj9-openjdk/openj9-openjdk-21.0.46.1.ebuild
@@ -1,9 +1,9 @@
-# Copyright 1999-2022 Gentoo Authors
+# Copyright 1999-2024 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
-EAPI=7
+EAPI=8
-inherit check-reqs eapi8-dosym flag-o-matic java-pkg-2 java-vm-2 multiprocessing toolchain-funcs
+inherit check-reqs flag-o-matic java-pkg-2 java-vm-2 multiprocessing toolchain-funcs
SLOT="$(ver_cut 1)"
OPENJ9_PV="$(ver_cut 2-4)"
@@ -24,10 +24,10 @@ else
"
fi
-LICENSE="GPL-2"
+LICENSE="GPL-2-with-classpath-exception"
KEYWORDS="~amd64"
-IUSE="alsa cups ddr debug doc headless-awt javafx +jbootstrap jitserver numa selinux source systemtap"
+IUSE="alsa cups ddr debug doc headless-awt javafx +jbootstrap jitserver lto numa selinux source systemtap"
REQUIRED_USE="
javafx? ( alsa !headless-awt )
@@ -41,7 +41,7 @@ COMMON_DEPEND="
media-libs/lcms:2=
sys-libs/zlib
media-libs/libjpeg-turbo:0=
- systemtap? ( dev-util/systemtap )
+ systemtap? ( dev-debug/systemtap )
dev-libs/elfutils
ddr? ( dev-libs/libdwarf )
@@ -168,6 +168,7 @@ src_prepare() {
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 openj9 -- "${FILESDIR}/openj9.patch"
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
@@ -221,7 +222,7 @@ src_configure() {
--with-vendor-version-string="${PVR}"
--with-version-pre=""
--with-zlib=system
- --enable-dtrace=$(usex systemtap yes no)
+ --enable-jvm-feature-dtrace=$(usex systemtap yes no)
--enable-headless-only=$(usex headless-awt yes no)
$(tc-is-clang && echo "--with-toolchain-type=clang")
@@ -230,6 +231,8 @@ src_configure() {
$(use_enable jitserver)
)
+ use lto && myconf+=( --with-jvm-features=link-time-opt )
+
if use javafx; then
local zip="${EPREFIX}/usr/$(get_libdir)/openjfx-${SLOT}/javafx-exports.zip"
if [[ -r ${zip} ]]; then
@@ -269,7 +272,7 @@ src_compile() {
OPENJ9_TAG=${OPENJ9_P}
OPENJ9OMR_SHA=${OPENJ9_P}
)
- emake "${myemakeargs[@]}" -j1 #nowarn
+ emake "${myemakeargs[@]}" -j1
}
src_install() {
@@ -298,7 +301,7 @@ src_install() {
dodir "${dest}"
cp -pPR * "${ddest}" || die
- dosym8 -r /etc/ssl/certs/java/cacerts "${dest}"/lib/security/cacerts
+ dosym -r /etc/ssl/certs/java/cacerts "${dest}"/lib/security/cacerts
# must be done before running itself
java-vm_set-pax-markings "${ddest}"