diff options
Diffstat (limited to 'dev-java/openj9-openjdk')
-rw-r--r-- | dev-java/openj9-openjdk/Manifest | 8 | ||||
-rw-r--r-- | dev-java/openj9-openjdk/metadata.xml | 1 | ||||
-rw-r--r-- | dev-java/openj9-openjdk/openj9-openjdk-11.0.48.0.ebuild (renamed from dev-java/openj9-openjdk/openj9-openjdk-11.0.33.1.ebuild) | 52 | ||||
-rw-r--r-- | dev-java/openj9-openjdk/openj9-openjdk-21.0.48.0.ebuild (renamed from dev-java/openj9-openjdk/openj9-openjdk-17.0.33.1.ebuild) | 36 |
4 files changed, 66 insertions, 31 deletions
diff --git a/dev-java/openj9-openjdk/Manifest b/dev-java/openj9-openjdk/Manifest index ffc3344..533a846 100644 --- a/dev-java/openj9-openjdk/Manifest +++ b/dev-java/openj9-openjdk/Manifest @@ -1,4 +1,4 @@ -DIST openj9-0.33.1.tar.gz 17354965 BLAKE2B c5b9c64ea45eefb2a0c67cd414844e52486481b939b8c62c68444f28f9490ebc2bf04913229576e4fff616b63ef6c242e4748a7ad9dea212714e40d9dbb3bd17 SHA512 fdb75916c868473465687c4fc15eafc1abf02ecff4c88b9998bcbc88e6583868ae3012be89f75734c08b636cf41d04946ec3e7bf29afef0575c8b1146616c9a5 -DIST openj9-omr-0.33.1.tar.gz 7932300 BLAKE2B 9fe2d80119dd7a61058d88ea04220db884e95d781f140247a95014acc80da90783849999f6fbe4e0cfb02e95675265875cbf3dfc1309c09e79226bc4d3b5c603 SHA512 b9322aba18bd487407e77f97a751c9e268577e6a03762070bb7c612276ee149891f6177affb2cabfccdacb2eb1e95c500f4a4473095651cc3f30debe10897d10 -DIST openj9-openjdk-jdk11-openj9-0.33.1.tar.gz 109332234 BLAKE2B c289f81a3fdeb4331fe11f0de7e0a6b78f784025048844b3118e5cff12c68623e989b8d776388956c8c5ed056dd91799d06e20410b0036ca7e50ffdba054eb21 SHA512 fb7e4627d1505887aeb67a1feccd3260f2f997190b9081acd5f22fbad395683e3fbefadab4073b119317744bb7afad54befa7bf9f9ceb15db59c806a5d1e4f81 -DIST openj9-openjdk-jdk17-openj9-0.33.1.tar.gz 94013661 BLAKE2B f5f4155fa3b449b09582782ac2c64a69cd37caa10dd731c6fdb0441b87149f1c867a3d622fd04c242e45a5ad9e07f55c824db1c77baa83493ef7314f63c509b9 SHA512 d5a2cefa683b2ec254db0bf636e02f312db4153c25daff41afdd41c8d8aa529aa87f60476edd229dfb5bb5cb9a67030ab67efac44282f355a9b6d5128a169a2e +DIST openj9-0.48.0.tar.gz 18480709 BLAKE2B 4d3d593ce295c0ba40ef32cc79f0e00b4864d2bc5d36e26c0bd0e2c3aa3406888e8a764472c212ff45ab59d092055e9e9775231fd8d979643d91d022911bd147 SHA512 28247eb763056becf881f1a3f431a073f4605d062e26bfc30a8cad86cab7b7a9a114a44faff40743957315d808a42ff7636554ff794dac640578ec75e9328749 +DIST openj9-omr-0.48.0.tar.gz 8126272 BLAKE2B d343b0129d639cd2887c98fe64b92c66ff2932537520158faa2dbaa465cfb32d6ff0c5c7bf0a5591a8f57e25f85cfc1a85f34c7f6bd9f07e04a35d5b50eb09f7 SHA512 090aee202bb7dd46fcc93f94a7168d22f3b2546d86456d40ba12aba7d76699345502aafc25ca5b675ba7683cfa2414564113c91ba31ad720d1f6867d63f70aab +DIST openj9-openjdk-jdk11-openj9-0.48.0.tar.gz 102800187 BLAKE2B 82a04892e389a5e24c59a17d2efa95a37e092480dfbbf89f47da965179aaead0b56c1cbe26efcd905bfeb018667880faf077e410bf0d689a1b99178acf398fb4 SHA512 9288f83706aeb945a479b4478b365911408a92ac703f43418f3f98fc1beaefb008c8d0b46dd055200122a9d549da89cd727a2eef8598b7ba069cf36055d1207d +DIST openj9-openjdk-jdk21-openj9-0.48.0.tar.gz 100484633 BLAKE2B c23d1325c8db43a7076cc589ea0a485cae2d0d26668f8da5cb2a2db2cc6b43052a7e848d04e7c66f03f7696a19690a0812f9aff92deedf7c426ede03b9aa36c7 SHA512 5b4a390c53643ee10affd5b0c6277f5ac6be873f34035c28fb7b75fca04f9e08e91b66ed505e8a5c0eb114f0cf00d6af2bb8c42f2495e3b6913cc253a7969836 diff --git a/dev-java/openj9-openjdk/metadata.xml b/dev-java/openj9-openjdk/metadata.xml index 7148c44..dadf469 100644 --- a/dev-java/openj9-openjdk/metadata.xml +++ b/dev-java/openj9-openjdk/metadata.xml @@ -8,7 +8,6 @@ <use> <flag name="ddr">Enable Direct Dump Reader</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> diff --git a/dev-java/openj9-openjdk/openj9-openjdk-11.0.33.1.ebuild b/dev-java/openj9-openjdk/openj9-openjdk-11.0.48.0.ebuild index 11e1f9f..4e7eb58 100644 --- a/dev-java/openj9-openjdk/openj9-openjdk-11.0.33.1.ebuild +++ b/dev-java/openj9-openjdk/openj9-openjdk-11.0.48.0.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)" @@ -18,16 +18,16 @@ 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/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 -LICENSE="GPL-2" +LICENSE="GPL-2-with-classpath-exception" KEYWORDS="~amd64" -IUSE="alsa cups ddr debug doc +gentoo-vm headless-awt javafx +jbootstrap jitserver numa selinux source systemtap" +IUSE="alsa cups ddr debug doc headless-awt javafx +jbootstrap jitserver 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 ) @@ -83,14 +83,14 @@ DEPEND=" x11-libs/libXtst javafx? ( dev-java/openjfx:${SLOT}= ) || ( - dev-java/openj9-openjdk-bin:${SLOT}[gentoo-vm(+)] - dev-java/openj9-openjdk:${SLOT}[gentoo-vm(+)] - dev-java/openjdk-bin:${SLOT}[gentoo-vm(+)] - dev-java/openjdk:${SLOT}[gentoo-vm(+)] + dev-java/openj9-openjdk-bin:${SLOT} + dev-java/openj9-openjdk:${SLOT} + dev-java/openjdk-bin:${SLOT} + dev-java/openjdk:${SLOT} ) " -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 @@ -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.33.1.ebuild b/dev-java/openj9-openjdk/openj9-openjdk-21.0.48.0.ebuild index 8a7494e..6bf8ca9 100644 --- a/dev-java/openj9-openjdk/openj9-openjdk-17.0.33.1.ebuild +++ b/dev-java/openj9-openjdk/openj9-openjdk-21.0.48.0.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)" @@ -18,16 +18,16 @@ 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/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 -LICENSE="GPL-2" +LICENSE="GPL-2-with-classpath-exception" KEYWORDS="~amd64" -IUSE="alsa cups ddr debug doc +gentoo-vm 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 ) @@ -90,7 +90,7 @@ DEPEND=" ) " -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 @@ -193,6 +193,12 @@ src_configure() { # Work around stack alignment issue, bug #647954. in case we ever have x86 use x86 && append-flags -mincoming-stack-boundary=2 + # /tmp/portage/dev-java/openj9-openjdk-21.0.48.0/work/openj9-openjdk-jdk21-openj9-0.48.0/openj9/runtime/codert_vm/thunkcrt.c:95: error: function 'icallVMprJavaSendVirtualL' redeclared as variable + # 95 | extern void * icallVMprJavaSendVirtualL; + # /tmp/portage/dev-java/openj9-openjdk-21.0.48.0/work/openj9-openjdk-jdk21-openj9-0.48.0/openj9/runtime/compiler/runtime/Runtime.cpp:341:1: note: previously declared here + # 341 | JIT_HELPER(icallVMprJavaSendVirtualL); + filter-lto + # 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. @@ -221,7 +227,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 +236,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 +277,7 @@ src_compile() { OPENJ9_TAG=${OPENJ9_P} OPENJ9OMR_SHA=${OPENJ9_P} ) - emake "${myemakeargs[@]}" -j1 #nowarn + emake "${myemakeargs[@]}" -j1 } src_install() { @@ -298,12 +306,12 @@ 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}" - 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 @@ -313,3 +321,7 @@ src_install() { dosym ../../../usr/share/doc/"${PF}" /usr/share/doc/"${PN}-${SLOT}" fi } + +pkg_postinst() { + java-vm-2_pkg_postinst +} |