From d1ff6d69a33d8c12ce9edaece3be362e983fa66d Mon Sep 17 00:00:00 2001 From: Georgy Yakovlev Date: Sat, 22 Jan 2022 13:17:11 -0800 Subject: dev-java/openjdk-bin: fix installation directory Bug: https://bugs.gentoo.org/831780 Signed-off-by: Georgy Yakovlev --- .../openjdk-bin/openjdk-bin-11.0.14_p9-r1.ebuild | 121 +++++++++++++++++++++ dev-java/openjdk-bin/openjdk-bin-11.0.14_p9.ebuild | 118 -------------------- 2 files changed, 121 insertions(+), 118 deletions(-) create mode 100644 dev-java/openjdk-bin/openjdk-bin-11.0.14_p9-r1.ebuild delete mode 100644 dev-java/openjdk-bin/openjdk-bin-11.0.14_p9.ebuild (limited to 'dev-java/openjdk-bin') diff --git a/dev-java/openjdk-bin/openjdk-bin-11.0.14_p9-r1.ebuild b/dev-java/openjdk-bin/openjdk-bin-11.0.14_p9-r1.ebuild new file mode 100644 index 000000000000..8a314444f21d --- /dev/null +++ b/dev-java/openjdk-bin/openjdk-bin-11.0.14_p9-r1.ebuild @@ -0,0 +1,121 @@ +# 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() { + 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 aarch64 arm64) + $(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 ~arm64 ~x64-macos" +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 + >=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 -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}-${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 +} diff --git a/dev-java/openjdk-bin/openjdk-bin-11.0.14_p9.ebuild b/dev-java/openjdk-bin/openjdk-bin-11.0.14_p9.ebuild deleted file mode 100644 index 019ca529d3b6..000000000000 --- a/dev-java/openjdk-bin/openjdk-bin-11.0.14_p9.ebuild +++ /dev/null @@ -1,118 +0,0 @@ -# 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() { - 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 aarch64 arm64) - $(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 ~arm64 ~x64-macos" -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 - >=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/${PN}-${SLOT}" - 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 - - 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 -} -- cgit v1.2.3-65-gdbad