diff options
-rw-r--r-- | dev-java/openjdk-bin/Manifest | 3 | ||||
-rw-r--r-- | dev-java/openjdk-bin/openjdk-bin-21_p35.ebuild | 132 |
2 files changed, 135 insertions, 0 deletions
diff --git a/dev-java/openjdk-bin/Manifest b/dev-java/openjdk-bin/Manifest index 43eb02ec..c3e2fe93 100644 --- a/dev-java/openjdk-bin/Manifest +++ b/dev-java/openjdk-bin/Manifest @@ -18,3 +18,6 @@ DIST OpenJDK19U-jdk_ppc64le_linux_hotspot_19.0.2_7.tar.gz 199260239 BLAKE2B 40b5 DIST OpenJDK19U-jdk_x64_alpine-linux_hotspot_19.0.2_7.tar.gz 199287128 BLAKE2B 7d6d9cc91c4354f74e54b88fadf8a9be347c0cc51d0573310448e017636e74e6571dc69263790b5c80c5ccf80ce1b7d35b0fc79d709a21b7b887fcfe93df2619 SHA512 2c37d080dd3a88eb8d33363ac8db8a3ebc731a649d3eb175257b28e01b673f7c274d59a77b7459eb2cc87678552d5d431b986780344a00f745d51391d0c3c76e DIST OpenJDK19U-jdk_x64_linux_hotspot_19.0.2_7.tar.gz 200079543 BLAKE2B 27cc090a99cf943f39c42af442365e120b72390b2286e61c5f93d9e059f84e0d6446d9a20f40cf5caeaba794e1b9e4b9ee96217955273bcc973dbbb37eae989e SHA512 bc04881cd3b999ede7dd4f3d580518b99990885cb57a165e807e32837b18cc7b4fd3a9320376222507f085b5f4fe88fd69d2b26dd4f8f34c890f000e6b316880 DIST OpenJDK19U-jdk_x64_mac_hotspot_19.0.2_7.tar.gz 195407051 BLAKE2B f8485e60483ce5c53a058d1fd138a256613e00cea66cefd2e96f828e1aaa0de542d5c3d37e09c4d41bd7c2eb05cabce0b9b65a4009cdf2b5bca3b1feddfc8ad2 SHA512 e6f393faaaa0ccf9ff8e126b17f5e7e6ceaecab969d5ef9297cf7e7b2e1daf1c5bd4b69b1c32df7709e0b4cb8dded06daf07cf699e970caad2d267c34c427676 +DIST OpenJDK21U-jdk_aarch64_linux_hotspot_21_35.tar.gz 205925582 BLAKE2B 0854605835441f43a33b2a85357deadff67ae0bcd38ef8a39be8c3463965fbfaac04875727d51f0c0bc8a8edb3823576a5f7f3b5a7db0444c71e2f42ffd7697b SHA512 62dff6e23d1ef44690805096b8f5997533308feb6b4ac60ceec03380286f61d9778f73ccde6939a7bc961905373d6f377f9492d2c87e65acd7c0c111d847f0a6 +DIST OpenJDK21U-jdk_x64_alpine-linux_hotspot_21_35.tar.gz 206853468 BLAKE2B 7a0f69ec7ed5004749062325be2969fe2efe21f67139f44045fcd0e6845aeaffd1f3f737c9647b35bb192c88647b4db4fc633f0d4dbd0664f2425d5395330c3b SHA512 8b216ce474157fdd2000e0c50cb653db87b74f0d2cbb7a373dcaf714bbeab24f8002f2ad4e6158d709cbbd76f03d71730711c1cc4df5a901e8c1af77a807f9f2 +DIST OpenJDK21U-jdk_x64_linux_hotspot_21_35.tar.gz 207813280 BLAKE2B 7202868eabc01d0c102d9a144f6cc5d40e72ba6c1c5c47aa55f281569ede29b2c9d148354e31ea7f1d12f89f8594fd3311f3ac45934a9ab6b5f47badbec34aaf SHA512 d8f8d99e9f8727378effa387eac82e3209031357080811359571265c04f21122cc883729b8a110eaaf5aafb75f9e7321a1178d0cc6d629301013fad585a48c81 diff --git a/dev-java/openjdk-bin/openjdk-bin-21_p35.ebuild b/dev-java/openjdk-bin/openjdk-bin-21_p35.ebuild new file mode 100644 index 00000000..3d125fc6 --- /dev/null +++ b/dev-java/openjdk-bin/openjdk-bin-21_p35.ebuild @@ -0,0 +1,132 @@ +# Copyright 1999-2023 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=$(ver_cut 1) + +SRC_URI=" + $(abi_uri aarch64 arm64) + $(abi_uri x64 amd64) + $(abi_uri x64 amd64 musl) +" + +DESCRIPTION="Prebuilt Java JDK binaries provided by Eclipse Temurin" +HOMEPAGE="https://adoptium.net" +LICENSE="GPL-2-with-classpath-exception" +KEYWORDS="~amd64 ~arm64" +IUSE="alsa cups 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-${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 -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 +} + +pkg_postinst() { + java-vm-2_pkg_postinst +} |