summaryrefslogtreecommitdiff
path: root/dev-java
diff options
context:
space:
mode:
authorLiguros - Gitlab CI/CD [develop] <gitlab@liguros.net>2021-11-28 01:42:00 +0000
committerLiguros - Gitlab CI/CD [develop] <gitlab@liguros.net>2021-11-28 01:42:00 +0000
commit06420615b26878f3845cfe7d90a1f66acf4e978c (patch)
treef212634b0767ce4f4e638aa5327f543d78760a30 /dev-java
parenta634b2c8ae7b31a45c7084a1169000d9da1110b7 (diff)
downloadbaldeagleos-repo-06420615b26878f3845cfe7d90a1f66acf4e978c.tar.gz
baldeagleos-repo-06420615b26878f3845cfe7d90a1f66acf4e978c.tar.xz
baldeagleos-repo-06420615b26878f3845cfe7d90a1f66acf4e978c.zip
Adding metadata
Diffstat (limited to 'dev-java')
-rw-r--r--dev-java/icedtea-bin/icedtea-bin-3.16.0-r1.ebuild132
-rw-r--r--dev-java/openjdk-bin/openjdk-bin-11.0.13_p8-r1.ebuild136
-rw-r--r--dev-java/openjdk-bin/openjdk-bin-17.0.1_p12-r1.ebuild147
-rw-r--r--dev-java/openjdk-bin/openjdk-bin-8.312_p07-r1.ebuild123
-rw-r--r--dev-java/openjdk-jre-bin/openjdk-jre-bin-11.0.13_p8-r1.ebuild97
-rw-r--r--dev-java/openjdk-jre-bin/openjdk-jre-bin-8.312_p07-r1.ebuild83
6 files changed, 718 insertions, 0 deletions
diff --git a/dev-java/icedtea-bin/icedtea-bin-3.16.0-r1.ebuild b/dev-java/icedtea-bin/icedtea-bin-3.16.0-r1.ebuild
new file mode 100644
index 000000000000..5e58650a3852
--- /dev/null
+++ b/dev-java/icedtea-bin/icedtea-bin-3.16.0-r1.ebuild
@@ -0,0 +1,132 @@
+# Copyright 1999-2021 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}? (
+ ${BASE_URI}/${PN}-core-${PV}${3+-r${3}}-${1}.tar.xz
+ examples? ( ${BASE_URI}/${PN}-examples-${PV}${3+-r${3}}-${1}.tar.xz )
+ )"
+}
+
+BASE_URI="https://dev.gentoo.org/~gyakovlev/distfiles"
+SRC_URI="
+ doc? ( ${BASE_URI}/${PN}-doc-${PV}.tar.xz )
+ source? ( ${BASE_URI}/${PN}-src-${PV}.tar.xz )
+ big-endian? ( $(abi_uri ppc64) )
+ !big-endian? ( $(abi_uri ppc64le ppc64) )
+ $(abi_uri amd64)
+ $(abi_uri arm)
+ $(abi_uri arm64)
+ $(abi_uri x86)
+"
+
+DESCRIPTION="A Gentoo-made binary build of the IcedTea JDK"
+HOMEPAGE="https://icedtea.classpath.org"
+
+LICENSE="GPL-2-with-classpath-exception"
+SLOT="8"
+KEYWORDS="-* ~amd64 ~arm ~arm64 ~ppc64 ~x86"
+IUSE="+alsa big-endian cups doc examples +gtk headless-awt pulseaudio selinux source"
+
+REQUIRED_USE="gtk? ( !headless-awt )"
+
+RESTRICT="preserve-libs strip"
+QA_PREBUILT="opt/.*"
+
+DEPEND="app-arch/xz-utils"
+
+RDEPEND="
+ >=dev-libs/glib-2.60.7:2
+ >=media-libs/fontconfig-2.13:1.0
+ >=media-libs/freetype-2.9.1:2
+ >=media-libs/lcms-2.9:2
+ >=sys-apps/baselayout-java-0.1.0-r1
+ >=sys-libs/zlib-1.2.11-r2
+ virtual/jpeg-compat:62
+ alsa? ( >=media-libs/alsa-lib-1.2 )
+ cups? ( >=net-print/cups-2.0 )
+ gtk? (
+ >=dev-libs/atk-2.32.0
+ >=x11-libs/cairo-1.16.0
+ x11-libs/gdk-pixbuf:2
+ >=x11-libs/gtk+-2.24:2
+ >=x11-libs/pango-1.42
+ )
+ selinux? ( sec-policy/selinux-java )
+ virtual/ttf-fonts
+ !headless-awt? (
+ media-libs/giflib:0/7
+ =media-libs/libpng-1.6*
+ >=x11-libs/libX11-1.6
+ >=x11-libs/libXcomposite-0.4
+ >=x11-libs/libXext-1.3
+ >=x11-libs/libXi-1.7
+ >=x11-libs/libXrender-0.9.10
+ >=x11-libs/libXtst-1.2
+ )
+"
+
+PDEPEND="pulseaudio? ( dev-java/icedtea-sound )"
+
+S="${WORKDIR}"
+
+pkg_pretend() {
+ if [[ "$(tc-is-softfloat)" != "no" ]]; then
+ die "These binaries require a hardfloat system."
+ fi
+}
+
+src_prepare() {
+ default
+
+ # I wouldn't normally use -f below but symlinks in the arm files
+ # make this fail otherwise and any other approach would be tedious.
+
+ if ! use alsa; then
+ rm -fv */jre/lib/*/libjsoundalsa.* || die
+ fi
+
+ if use headless-awt; then
+ rm -fvr */jre/lib/*/lib*{[jx]awt,splashscreen}* \
+ */{,jre/}bin/policytool */bin/appletviewer || die
+ fi
+}
+
+src_install() {
+ local dest="/opt/${P}"
+ local ddest="${ED}/${dest#/}"
+ dodir "${dest}"
+
+ dodoc ${P}-${ABI}/doc/{ASSEMBLY_EXCEPTION,AUTHORS,NEWS,README,THIRD_PARTY_README}
+ use doc && dodoc -r ${P}/doc/html
+
+ # doins doesn't preserve executable bits.
+ cp -pRP ${P}-${ABI}/{bin,include,jre,lib,man} "${ddest}" || die
+
+ if use examples; then
+ cp -pRP ${P}-${ABI}/{demo,sample} "${ddest}" || die
+ fi
+
+ if use source; then
+ cp ${P}/src.zip "${ddest}" || die
+ fi
+
+ # use system-wide cacert store
+ rm "${ddest}"/jre/lib/security/cacerts || die
+ dosym ../../../../../etc/ssl/certs/java/cacerts "${dest}"/jre/lib/security/cacerts
+
+ java-vm_install-env "${FILESDIR}/icedtea-bin.env.sh"
+
+ # Both icedtea itself and the icedtea ebuild set PAX markings but we
+ # disable them for the icedtea-bin build because the line below will
+ # respect end-user settings when icedtea-bin is actually installed.
+ java-vm_set-pax-markings "${ddest}"
+
+ # Each invocation appends to the config.
+ java-vm_revdep-mask "${EPREFIX}${dest}"
+ java-vm_sandbox-predict /proc/self/coredump_filter
+}
diff --git a/dev-java/openjdk-bin/openjdk-bin-11.0.13_p8-r1.ebuild b/dev-java/openjdk-bin/openjdk-bin-11.0.13_p8-r1.ebuild
new file mode 100644
index 000000000000..95bcdeba00a6
--- /dev/null
+++ b/dev-java/openjdk-bin/openjdk-bin-11.0.13_p8-r1.ebuild
@@ -0,0 +1,136 @@
+# Copyright 1999-2021 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit java-vm-2 toolchain-funcs
+
+abi_uri() {
+ local os=linux
+ case ${2} in
+ *-macos) os=mac ;;
+ *-solaris) os=solaris ;;
+ esac
+ echo "${2-$1}? (
+ https://github.com/adoptium/temurin${SLOT}-binaries/releases/download/jdk-${MY_PV}/OpenJDK${SLOT}U-jdk_${1}_${os}_hotspot_${MY_PV//+/_}.tar.gz
+ )"
+}
+
+MY_PV=${PV/_p/+}
+SLOT=${MY_PV%%[.+]*}
+
+SRC_URI="
+ $(abi_uri arm)
+ $(abi_uri aarch64 arm64)
+ $(abi_uri ppc64le ppc64)
+ $(abi_uri x64 amd64)
+ $(abi_uri x64 x64-macos)
+"
+
+DESCRIPTION="Prebuilt Java JDK binaries provided by Eclipse Temurin"
+HOMEPAGE="https://adoptium.net"
+LICENSE="GPL-2-with-classpath-exception"
+KEYWORDS="~amd64 ~arm ~arm64 ~ppc64 ~x64-macos"
+IUSE="alsa cups +gentoo-vm 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
+ >=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-${MY_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 ../../../../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}-${SLOT}.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
+
+ if use gentoo-vm ; then
+ ewarn "WARNING! You have enabled the gentoo-vm USE flag, making this JDK"
+ ewarn "recognised by the system. This will almost certainly break"
+ ewarn "many java ebuilds as they are not ready for openjdk-11"
+ else
+ ewarn "The experimental gentoo-vm USE flag has not been enabled so this JDK"
+ ewarn "will not be recognised by the system. For example, simply calling"
+ ewarn "\"java\" will launch a different JVM. This is necessary until Gentoo"
+ ewarn "fully supports Java 11. This JDK must therefore be invoked using its"
+ ewarn "absolute location under ${EPREFIX}/opt/${P}."
+ fi
+}
diff --git a/dev-java/openjdk-bin/openjdk-bin-17.0.1_p12-r1.ebuild b/dev-java/openjdk-bin/openjdk-bin-17.0.1_p12-r1.ebuild
new file mode 100644
index 000000000000..e95578814cd8
--- /dev/null
+++ b/dev-java/openjdk-bin/openjdk-bin-17.0.1_p12-r1.ebuild
@@ -0,0 +1,147 @@
+# Copyright 1999-2021 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit java-vm-2 toolchain-funcs
+
+abi_uri() {
+ local baseuri="https://github.com/adoptium/temurin${SLOT}-binaries/releases/download/jdk-${MY_PV}/"
+ local musl=
+ local os=linux
+
+ case ${2} in
+ *-macos) os=mac ;;
+ *-solaris) os=solaris ;;
+ esac
+
+ if [[ ${3} == musl ]]; then
+ os=alpine-linux
+ musl=true
+ fi
+
+ echo "${2-$1}? (
+ ${musl:+ elibc_musl? ( }
+ ${baseuri}/OpenJDK${SLOT}U-jdk_${1}_${os}_hotspot_${MY_PV//+/_}.tar.gz
+ ${musl:+ ) } )"
+}
+
+MY_PV=${PV/_p/+}
+SLOT=${MY_PV%%[.+]*}
+
+SRC_URI="
+ $(abi_uri arm)
+ $(abi_uri aarch64 arm64)
+ $(abi_uri ppc64le ppc64)
+ $(abi_uri x64 amd64)
+ $(abi_uri x64 amd64 musl)
+ $(abi_uri x64 x64-macos)
+"
+
+DESCRIPTION="Prebuilt Java JDK binaries provided by Eclipse Temurin"
+HOMEPAGE="https://adoptium.net"
+LICENSE="GPL-2-with-classpath-exception"
+KEYWORDS="~amd64 ~arm ~arm64 ~ppc64 ~x64-macos"
+IUSE="alsa cups +gentoo-vm 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:* )
+ 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-${MY_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 ../../../../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}-${SLOT}.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
+
+ if use gentoo-vm ; then
+ ewarn "WARNING! You have enabled the gentoo-vm USE flag, making this JDK"
+ ewarn "recognised by the system. This will almost certainly break"
+ ewarn "many java ebuilds as they are not ready for openjdk-${SLOT}"
+ else
+ ewarn "The experimental gentoo-vm USE flag has not been enabled so this JDK"
+ ewarn "will not be recognised by the system. For example, simply calling"
+ ewarn "\"java\" will launch a different JVM. This is necessary until Gentoo"
+ ewarn "fully supports Java ${SLOT}. This JDK must therefore be invoked using its"
+ ewarn "absolute location under ${EPREFIX}/opt/${P}."
+ fi
+}
diff --git a/dev-java/openjdk-bin/openjdk-bin-8.312_p07-r1.ebuild b/dev-java/openjdk-bin/openjdk-bin-8.312_p07-r1.ebuild
new file mode 100644
index 000000000000..465e0a290547
--- /dev/null
+++ b/dev-java/openjdk-bin/openjdk-bin-8.312_p07-r1.ebuild
@@ -0,0 +1,123 @@
+# Copyright 1999-2021 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit java-vm-2
+
+abi_uri() {
+ local os=linux
+ case ${2} in
+ *-macos) os=mac ;;
+ *-solaris) os=solaris ;;
+ esac
+ echo "${2-$1}? (
+ https://github.com/adoptium/temurin${SLOT}-binaries/releases/download/jdk${MY_PV}/OpenJDK8U-jdk_${1}_${os}_hotspot_${3-${MY_PV/-/}}.tar.gz
+ )"
+}
+
+# they have different tarball names for different arches...
+# https://github.com/AdoptOpenJDK/openjdk8-binaries/releases/download/jdk8u282-b08/OpenJDK8U-jdk_x64_linux_hotspot_8u282b08.tar.gz
+# https://github.com/AdoptOpenJDK/openjdk8-binaries/releases/download/jdk8u282-b08/OpenJDK8U-jdk_aarch64_linux_hotspot_jdk8u282-b08.tar.gz
+
+MY_PV=$(ver_rs 1 'u' 2 '-' ${PV//p/b})
+SLOT="$(ver_cut 1)"
+
+DESCRIPTION="Prebuilt Java JDK binaries provided by Eclipse Temurin"
+HOMEPAGE="https://adoptium.net"
+SRC_URI="
+ $(abi_uri aarch64 arm64)
+ $(abi_uri arm)
+ $(abi_uri ppc64le ppc64)
+ $(abi_uri x64 amd64)
+ $(abi_uri x64 x64-macos)
+"
+
+LICENSE="GPL-2-with-classpath-exception"
+KEYWORDS="~amd64 ~arm ~arm64 ~ppc64 ~x64-macos"
+
+IUSE="alsa cups examples headless-awt selinux source"
+
+RDEPEND="
+ >=sys-apps/baselayout-java-0.1.0-r1
+ kernel_linux? (
+ media-libs/fontconfig:1.0
+ media-libs/freetype:2
+ >=sys-libs/glibc-2.2.5:*
+ sys-libs/zlib
+ alsa? ( media-libs/alsa-lib )
+ arm? ( dev-libs/libffi-compat:6 )
+ 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 strip"
+QA_PREBUILT="*"
+
+S="${WORKDIR}/jdk${MY_PV}"
+
+src_unpack() {
+ default
+ # 753575
+ if use arm; then
+ mv -v "${S}"* "${S}" || die
+ elif [[ ${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#/}"
+
+ rm ASSEMBLY_EXCEPTION LICENSE THIRD_PARTY_README || die
+
+ # 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
+ # this does not exist on arm64 hence -f
+ rm -fv jre/lib/*/libfreetype.so* || die
+
+ if ! use alsa ; then
+ rm -v jre/lib/*/libjsoundalsa.so* || die
+ fi
+
+ if ! use examples ; then
+ rm -vr sample || die
+ fi
+
+ if use headless-awt ; then
+ rm -fvr {,jre/}lib/*/lib*{[jx]awt,splashscreen}* \
+ {,jre/}bin/policytool bin/appletviewer || die
+ fi
+ fi
+
+ if ! use source ; then
+ rm -v src.zip || die
+ fi
+
+ rm -v jre/lib/security/cacerts || die
+ dosym ../../../../../etc/ssl/certs/java/cacerts \
+ "${dest}"/jre/lib/security/cacerts
+
+ dodir "${dest}"
+ cp -pPR * "${ddest}" || die
+
+ # provide stable symlink
+ dosym "${P}" "/opt/${PN}-${SLOT}"
+
+ java-vm_install-env "${FILESDIR}"/${PN}-${SLOT}.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/openjdk-jre-bin/openjdk-jre-bin-11.0.13_p8-r1.ebuild b/dev-java/openjdk-jre-bin/openjdk-jre-bin-11.0.13_p8-r1.ebuild
new file mode 100644
index 000000000000..57f5b0dac68d
--- /dev/null
+++ b/dev-java/openjdk-jre-bin/openjdk-jre-bin-11.0.13_p8-r1.ebuild
@@ -0,0 +1,97 @@
+# Copyright 1999-2021 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit java-vm-2
+
+abi_uri() {
+ echo "${2-$1}? (
+ https://github.com/adoptium/temurin${SLOT}-binaries/releases/download/jdk-${MY_PV}/OpenJDK${SLOT}U-jre_${1}_linux_hotspot_${MY_PV//+/_}.tar.gz
+ )"
+}
+
+MY_PV=${PV/_p/+}
+SLOT=${MY_PV%%[.+]*}
+
+SRC_URI="
+ $(abi_uri x64 amd64)
+"
+
+DESCRIPTION="Prebuilt Java JRE binaries provided by AdoptOpenJDK"
+HOMEPAGE="https://adoptopenjdk.net"
+LICENSE="GPL-2-with-classpath-exception"
+KEYWORDS="~amd64"
+IUSE="alsa cups +gentoo-vm 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
+ 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-${MY_PV}-jre"
+
+src_install() {
+ local dest="/opt/${P}"
+ 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.
+ if ! use alsa ; then
+ rm -v lib/libjsound.* || die
+ fi
+
+ if use headless-awt ; then
+ rm -v lib/lib*{[jx]awt,splashscreen}* || 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}-${SLOT}.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
+
+ if use gentoo-vm ; then
+ ewarn "WARNING! You have enabled the gentoo-vm USE flag, making this JRE"
+ ewarn "recognised by the system. This will almost certainly break things."
+ else
+ ewarn "The experimental gentoo-vm USE flag has not been enabled so this JRE"
+ ewarn "will not be recognised by the system. For example, simply calling"
+ ewarn "\"java\" will launch a different JVM. This is necessary until Gentoo"
+ ewarn "fully supports Java 11. This JRE must therefore be invoked using its"
+ ewarn "absolute location under ${EPREFIX}/opt/${P}."
+ fi
+}
diff --git a/dev-java/openjdk-jre-bin/openjdk-jre-bin-8.312_p07-r1.ebuild b/dev-java/openjdk-jre-bin/openjdk-jre-bin-8.312_p07-r1.ebuild
new file mode 100644
index 000000000000..2d5ee85aa434
--- /dev/null
+++ b/dev-java/openjdk-jre-bin/openjdk-jre-bin-8.312_p07-r1.ebuild
@@ -0,0 +1,83 @@
+# Copyright 1999-2021 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit java-vm-2
+
+abi_uri() {
+ echo "${2-$1}? (
+ https://github.com/adoptium/temurin${SLOT}-binaries/releases/download/jdk${MY_PV}/OpenJDK8U-jre_${1}_linux_hotspot_${MY_PV/-/}.tar.gz
+ )"
+}
+
+MY_PV=$(ver_rs 1 'u' 2 '-' ${PV//p/b})
+SLOT="$(ver_cut 1)"
+
+DESCRIPTION="Prebuilt Java JRE binaries provided by Eclipse Temurin"
+HOMEPAGE="https://adoptium.net"
+SRC_URI="
+ $(abi_uri x64 amd64)
+"
+
+LICENSE="GPL-2-with-classpath-exception"
+KEYWORDS="~amd64"
+
+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
+ 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${MY_PV}-jre"
+
+src_install() {
+ local dest="/opt/${P}"
+ local ddest="${ED%/}/${dest#/}"
+
+ rm ASSEMBLY_EXCEPTION LICENSE THIRD_PARTY_README || die
+
+ # this does not exist on arm64 hence -f
+ rm -fv lib/*/libfreetype.so* || die
+
+ if ! use alsa ; then
+ rm -v lib/*/libjsoundalsa.so* || die
+ fi
+
+ if use headless-awt ; then
+ rm -fvr lib/*/lib*{[jx]awt,splashscreen}* \
+ bin/policytool || 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}"
+
+ java-vm_install-env "${FILESDIR}"/${PN}-${SLOT}.env.sh
+ java-vm_set-pax-markings "${ddest}"
+ java-vm_revdep-mask
+ java-vm_sandbox-predict /dev/random /proc/self/coredump_filter
+}