mirror of
https://github.com/gentoo-mirror/gentoo.git
synced 2026-09-23 16:49:10 -07:00
dev-java/openjdk: drop old
Package-Manager: Portage-2.3.62, Repoman-2.3.12 Signed-off-by: Georgy Yakovlev <gyakovlev@gentoo.org>
This commit is contained in:
@@ -1,4 +1,3 @@
|
||||
DIST jdk-11.0.1+13.tar.bz2 90134818 BLAKE2B c79f32dc5b531a06317afb87ef15495267e914b9b292a1d434514a90298d8234e7e0ba92659416b15d9392c7513d976a0c81411953cb6706a27ee57c965e36fb SHA512 c534c2fa8dcd4fdebef6f00473d5ceaae4a33bd1e1a417846508e25f154b1ded649a73468c8c71ac0c1e27bab5f641a3b480a264b532a0c30be2869c3d11a15d
|
||||
DIST jdk-11.0.2+7.tar.bz2 90189455 BLAKE2B 37473a8db4c6ad6789ea67b44f4dda94b9f59143c681a206aa0931b3a2a376fbc480c0c5a6b617072cf9ce1faca34a6c5c5e56cfec9fbf5482b82520fb2463c4 SHA512 03214d9fc920c04f3057594efa78ff588a630e6c594e5bbcc24b4c327fa08273ce060063d98720cdc04bc6978a3d04e172f38ba7a3bcabf02dd5dad397fd9952
|
||||
DIST openjdk-8.202_p08.tar.bz2 449202 BLAKE2B 8f7442918c083e94cda0e029cf2348dd9242653027f84d66deebe162e0928b2c6a86d3f273ba235bad5e5656f2b109e6521aaccfa81332fea92873d008ac0c0d SHA512 586713b889dd60c7dc65fccd39ef3ddd985ebb95a7c6c1feaef3c8d76fd1d929bbf19a99f72274c1afb77bd7f80b581d44add4aa232358d8951f7cc5befb43d0
|
||||
DIST openjdk-corba-8.202_p08.tar.bz2 1033539 BLAKE2B 9cbe20fb771157142329db037866ec7d67ff7e70318bec8b74034ce59574cd730975f0e7a3d6b88fc946b1d340558a92ca867639765a205883481fd071d7059e SHA512 9b25132c76f559055698c52888f6cae287096e05b89541cb8e445b46a488126a38e58d4f28649e277862eac7aa20f75f64dbcdcf56c900dcb0530a9545c4f717
|
||||
|
||||
@@ -1,237 +0,0 @@
|
||||
# Copyright 1999-2019 Gentoo Authors
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
|
||||
EAPI=6
|
||||
|
||||
inherit autotools check-reqs flag-o-matic java-pkg-2 java-vm-2 multiprocessing pax-utils toolchain-funcs
|
||||
|
||||
MY_PV=${PV/_p/+}
|
||||
SLOT=${MY_PV%%[.+]*}
|
||||
|
||||
DESCRIPTION="Open source implementation of the Java programming language"
|
||||
HOMEPAGE="https://openjdk.java.net"
|
||||
SRC_URI="https://hg.${PN}.java.net/jdk-updates/jdk${SLOT}u/archive/jdk-${MY_PV}.tar.bz2"
|
||||
LICENSE="GPL-2"
|
||||
KEYWORDS="~amd64 ~arm64 ~ppc64"
|
||||
|
||||
# Default variant must be first!
|
||||
# The rest do not matter.
|
||||
JVM_VARIANTS="
|
||||
server
|
||||
client
|
||||
core
|
||||
minimal
|
||||
zero
|
||||
"
|
||||
|
||||
IUSE=$(printf "jvm_variant_%s " ${JVM_VARIANTS})
|
||||
|
||||
REQUIRED_USE="
|
||||
|| ( ${IUSE} )
|
||||
?? ( jvm_variant_core jvm_variant_zero )
|
||||
jvm_variant_core? ( !jvm_variant_server !jvm_variant_client !jvm_variant_minimal )
|
||||
jvm_variant_zero? ( !jvm_variant_server !jvm_variant_client !jvm_variant_minimal )
|
||||
"
|
||||
|
||||
IUSE="+${IUSE} alsa debug doc examples gentoo-vm headless-awt +jbootstrap nsplugin +pch selinux source systemtap +webstart"
|
||||
|
||||
CDEPEND="
|
||||
media-libs/freetype:2=
|
||||
net-print/cups
|
||||
sys-libs/zlib
|
||||
systemtap? ( dev-util/systemtap )
|
||||
!headless-awt? (
|
||||
x11-libs/libX11
|
||||
x11-libs/libXext
|
||||
x11-libs/libXi
|
||||
x11-libs/libXrender
|
||||
x11-libs/libXt
|
||||
x11-libs/libXtst
|
||||
)
|
||||
"
|
||||
|
||||
RDEPEND="
|
||||
${CDEPEND}
|
||||
alsa? ( media-libs/alsa-lib )
|
||||
selinux? ( sec-policy/selinux-java )
|
||||
"
|
||||
|
||||
DEPEND="
|
||||
${CDEPEND}
|
||||
app-arch/zip
|
||||
media-libs/alsa-lib
|
||||
!headless-awt? (
|
||||
x11-base/xorg-proto
|
||||
)
|
||||
|| (
|
||||
dev-java/openjdk-bin:${SLOT}
|
||||
dev-java/openjdk:${SLOT}
|
||||
)
|
||||
"
|
||||
|
||||
PDEPEND="webstart? ( >=dev-java/icedtea-web-1.6.1:0 )
|
||||
nsplugin? ( >=dev-java/icedtea-web-1.6.1:0[nsplugin] )"
|
||||
|
||||
S="${WORKDIR}/jdk${SLOT}u-jdk-${MY_PV}"
|
||||
|
||||
# The space required to build varies wildly depending on USE flags,
|
||||
# ranging from 2GB to 24GB. This function is certainly not exact but
|
||||
# should be close enough to be useful.
|
||||
openjdk_check_requirements() {
|
||||
local M variant count=0
|
||||
|
||||
for variant in ${JVM_VARIANTS}; do
|
||||
use jvm_variant_${variant} &&
|
||||
count=$(( $count + 1 ))
|
||||
done
|
||||
|
||||
M=$(usex debug 2600 875)
|
||||
M=$(( $(usex debug 2900 375) * $count + $M ))
|
||||
M=$(( $(usex jbootstrap 2 1) * $M ))
|
||||
M=$(( $(usex doc 300 0) + $(usex source 120 0) + 820 + $M ))
|
||||
|
||||
CHECKREQS_DISK_BUILD=${M}M check-reqs_pkg_${EBUILD_PHASE}
|
||||
}
|
||||
|
||||
pkg_pretend() {
|
||||
openjdk_check_requirements
|
||||
has ccache ${FEATURES} && die "FEATURES=ccache doesn't work with ${PN}"
|
||||
}
|
||||
|
||||
pkg_setup() {
|
||||
openjdk_check_requirements
|
||||
java-vm-2_pkg_setup
|
||||
|
||||
JAVA_PKG_WANT_BUILD_VM="openjdk-${SLOT} openjdk-bin-${SLOT}"
|
||||
JAVA_PKG_WANT_SOURCE="${SLOT}"
|
||||
JAVA_PKG_WANT_TARGET="${SLOT}"
|
||||
|
||||
# The nastiness below is necessary while the gentoo-vm USE flag is
|
||||
# masked. First we call java-pkg-2_pkg_setup if it looks like the
|
||||
# flag was unmasked against one of the possible build VMs. If not,
|
||||
# we try finding one of them in their expected locations. This would
|
||||
# have been slightly less messy if openjdk-bin had been installed to
|
||||
# /opt/${PN}-${SLOT} or if there was a mechanism to install a VM env
|
||||
# file but disable it so that it would not normally be selectable.
|
||||
|
||||
local vm
|
||||
for vm in ${JAVA_PKG_WANT_BUILD_VM}; do
|
||||
if [[ -d ${EPREFIX}/usr/lib/jvm/${vm} ]]; then
|
||||
java-pkg-2_pkg_setup
|
||||
return
|
||||
fi
|
||||
done
|
||||
|
||||
if has_version --host-root dev-java/openjdk:${SLOT}; then
|
||||
export JDK_HOME=${EPREFIX}/usr/$(get_libdir)/openjdk-${SLOT}
|
||||
else
|
||||
JDK_HOME=$(best_version --host-root dev-java/openjdk-bin:${SLOT})
|
||||
[[ -n ${JDK_HOME} ]] || die "Build VM not found!"
|
||||
JDK_HOME=${JDK_HOME#*/}
|
||||
JDK_HOME=${EPREFIX}/opt/${JDK_HOME%-r*}
|
||||
export JDK_HOME
|
||||
fi
|
||||
}
|
||||
|
||||
src_configure() {
|
||||
# Work around stack alignment issue, bug #647954.
|
||||
use x86 && append-flags -mincoming-stack-boundary=2
|
||||
|
||||
chmod +x configure || die
|
||||
|
||||
local variant build_variants
|
||||
for variant in ${JVM_VARIANTS}; do
|
||||
use jvm_variant_${variant} &&
|
||||
build_variants+=${variant},
|
||||
done
|
||||
|
||||
local myconf=()
|
||||
|
||||
# PaX breaks pch, bug #601016
|
||||
if use pch && ! host-is-pax; then
|
||||
myconf+=( --enable-precompiled-headers )
|
||||
else
|
||||
myconf+=( --disable-precompiled-headers )
|
||||
fi
|
||||
|
||||
# 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.
|
||||
|
||||
(
|
||||
unset _JAVA_OPTIONS JAVA JAVAC XARGS
|
||||
CFLAGS= CXXFLAGS= LDFLAGS= \
|
||||
CONFIG_SITE=/dev/null \
|
||||
econf \
|
||||
--with-boot-jdk="${JDK_HOME}" \
|
||||
--with-extra-cflags="${CFLAGS}" \
|
||||
--with-extra-cxxflags="${CXXFLAGS}" \
|
||||
--with-extra-ldflags="${LDFLAGS}" \
|
||||
--with-jvm-variants=${build_variants%,} \
|
||||
--with-native-debug-symbols=$(usex debug internal none) \
|
||||
--with-version-pre=gentoo \
|
||||
--with-version-string=${MY_PV%+*} \
|
||||
--with-version-build=${MY_PV#*+} \
|
||||
--enable-dtrace=$(usex systemtap yes no) \
|
||||
--enable-headless-only=$(usex headless-awt yes no) \
|
||||
--enable-full-docs=no \
|
||||
--disable-ccache \
|
||||
"${myconf[@]}"
|
||||
)
|
||||
}
|
||||
|
||||
src_compile() {
|
||||
emake -j1 \
|
||||
$(usex jbootstrap bootcycle-images product-images) $(usex doc docs '') \
|
||||
JOBS=$(makeopts_jobs) LOG=debug CFLAGS_WARNINGS_ARE_ERRORS= # No -Werror
|
||||
}
|
||||
|
||||
src_install() {
|
||||
local dest="/usr/$(get_libdir)/${PN}-${SLOT}"
|
||||
local ddest="${ED}${dest#/}"
|
||||
|
||||
cd "${S}"/build/*-release/images/jdk || die
|
||||
|
||||
# Oracle and IcedTea have libjsoundalsa.so depending on
|
||||
# libasound.so.2 but OpenJDK only has libjsound.so. Weird.
|
||||
if ! use alsa ; then
|
||||
rm -v lib/libjsound.* || die
|
||||
fi
|
||||
|
||||
if ! use examples ; then
|
||||
rm -vr demo/ || die
|
||||
fi
|
||||
|
||||
if ! use source ; then
|
||||
rm -v lib/src.zip || die
|
||||
fi
|
||||
|
||||
dodir "${dest}"
|
||||
cp -pPR * "${ddest}" || die
|
||||
|
||||
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
|
||||
|
||||
if use doc ; then
|
||||
insinto /usr/share/doc/${PF}/html
|
||||
doins -r "${S}"/build/*-release/images/docs/*
|
||||
dosym ${PF} /usr/share/doc/${PN}-${SLOT}
|
||||
fi
|
||||
}
|
||||
|
||||
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 things."
|
||||
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}/usr/$(get_libdir)/${PN}-${SLOT}."
|
||||
fi
|
||||
}
|
||||
Reference in New Issue
Block a user