forked from gentoo/gentoo
-
Notifications
You must be signed in to change notification settings - Fork 0
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Package-Manager: Portage-2.3.63, Repoman-2.3.12 Signed-off-by: Georgy Yakovlev <[email protected]>
- Loading branch information
Showing
2 changed files
with
256 additions
and
0 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -1,9 +1,17 @@ | ||
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-8.212_p03.tar.bz2 451800 BLAKE2B f8466a0d99650a07e3ff21e8dc06252ef9d31ce15e22c6ede15fc4c7b1633820e84e67aa501e816101c6bd473293fb897645b2df1530d8f7b81c6e8e6d38ce3a SHA512 ccc642da05aa00cfcc46c1eb759391dd2242218b7392bced77481600aa15b3b1d0a0c03380f59b6a6d038311721f249de1a6b116c6f651193cfb57b89fba4866 | ||
DIST openjdk-corba-8.202_p08.tar.bz2 1033539 BLAKE2B 9cbe20fb771157142329db037866ec7d67ff7e70318bec8b74034ce59574cd730975f0e7a3d6b88fc946b1d340558a92ca867639765a205883481fd071d7059e SHA512 9b25132c76f559055698c52888f6cae287096e05b89541cb8e445b46a488126a38e58d4f28649e277862eac7aa20f75f64dbcdcf56c900dcb0530a9545c4f717 | ||
DIST openjdk-corba-8.212_p03.tar.bz2 1033709 BLAKE2B f59b294e62425b63e881ed5534ae9beb3cc51351ff197995503671ec52ad82e34e145f8c9790dc88e4f452b4e09af80143fd0f7e0fda588b00eed08d4b2bc861 SHA512 3a786a372ab6b849a6ccd944cdfdc0aa9994a6a9f4d52afccad7d6b187e46a1fd0be30bde3da1eb03988034c36b4590b55379819245fb6f5ed4d75a958e9caa3 | ||
DIST openjdk-hotspot-8.202_p08.tar.bz2 7918616 BLAKE2B a35cedf99a5067896dc498d4baa9b10f4ceb1ffcf946632b578c45d6354e4d025d82462797e56773507e504e5e25a25cdf63485460f9a8df234474a2e110f91a SHA512 ab53e77a4081a34c250750d7b975f790936cf370e81807d0081b006a12c0ceb452f54bd40cc8085a9f16047d270b9b610ee777f6fcd1431ff9d77461c32db464 | ||
DIST openjdk-hotspot-8.212_p03.tar.bz2 7925246 BLAKE2B b405362450186d50228ddaf78907a98365c34d5e09a95064dc39bbc88328d1bf37e23791322fb68a44d90753cd68139627d235852dd1e03ad2b0535982badeaf SHA512 e8c8f9151c94bd821fa6810a0c70ed2749e0c39f66108deccc68718f106eb1731c91b13fb502c4a4be425ee04ecd909937247efb5891aac1ca27ee16d7bbf290 | ||
DIST openjdk-jaxp-8.202_p08.tar.bz2 2733553 BLAKE2B 53341136b427152115ea0d4f758228090a607270104c88ebb61bc442ddd51a43cfed03c34660a47ab55bb601e1a9d8bf4fcdab05874bf0a5ada33b1ecb60df45 SHA512 9671fb56b6127359376cc2f85d91eb027fb1df1f808e36abbe3a1265d88d50809c34d73b84f52fb6e058ef78017d8d7a24bd097a9d720ad70a6861aa9fcc80f2 | ||
DIST openjdk-jaxp-8.212_p03.tar.bz2 2734510 BLAKE2B fa920514fd499019a8f3d03edf895c11b3d67617b645444025cc5406216fed0ecb9340a08b8e314c43d0ced0ffbc1e3940f7c719930d5e4cdf9b24653d6249f8 SHA512 200516ef92b9fd50b4e7814b2f5f62c344b4654c8c836e0166c9e3669992d2fe231d3e262bc9be54d8793d6c4a3d6bdee5c93a6b6a3b6481d6a234f26dfb2a32 | ||
DIST openjdk-jaxws-8.202_p08.tar.bz2 2541554 BLAKE2B a92aae4290e1901b736a6a93aed3b8c4bca14046a1f3eb9939ea9bf8ae0cd09785cf37045a8274641f13e543b49114ff158b9bc0cdd58163b42791e952ac76d0 SHA512 ce385f247a57695f716894137d868fa492d610776d120966c86b741688d6df54ae9538da7cf7b9530212a288ac4ff0d156e09bd5d01305b8165b939fa518fede | ||
DIST openjdk-jaxws-8.212_p03.tar.bz2 2540937 BLAKE2B 53c2793d9071f408a3704dacc4d61ac8f1b8ead33e75d309f217a05514661f14656711d017bcdde5821e114c5010d4417ac283571c2a52c28885d6736468402e SHA512 3e336e8cab78636b82488b7da183ba4ba2b84c0a2cb72a369c4352aaeb0fa5da05660c830db12a486e1cdfbc7a88a748d88284ca86c45b890a40dc1d23f3915a | ||
DIST openjdk-jdk-8.202_p08.tar.bz2 46618401 BLAKE2B e73b1341b837a0983ded4b4969ce83f9b77283e1d4d51e8d31a1b7401961a0b78943a41d2fe0aa724d85ac93dc3082511bcea341e87daecd070278ae59c8f240 SHA512 20e6747b506091383166298aeed6ff4ffd9deb92f20765ef839bf46d3ecae6b1aa218eb6857e6541df0522b8d571379341e94eb5bef765a1164cf9f59b20dfac | ||
DIST openjdk-jdk-8.212_p03.tar.bz2 46720739 BLAKE2B af515701052ede8b6cf828cc74f1f5938dad0874a12ed3c5c3f7b03be1f43108fce5e1820452a87e098c3469922227950f6f4fea33306f7b426487b48cc4b993 SHA512 9b3342419c82a8f243d2a7523d83b395c89629820fd99ba387991656e5754ed067877bf12b7e780368dd4bdb6eba10be09e63b1301bcbc0aa29e86e84ec394a3 | ||
DIST openjdk-langtools-8.202_p08.tar.bz2 2392880 BLAKE2B 45ebebe4864e3274e14cf27986cd96facfe2f8e5c1292344e05743d1448f95367caf0f68886c506ce10435fbf53948c6b9f7087ad5d2cd090cf0f1becb962843 SHA512 a1e1c3dc06b3a58082e1d67d58ffeaf0bc3c5534fd1ba368e835a54d3c6ba9232e277ae685ed3ff5ccdf3cd7fe0612ad78a08ed55d1d2d06de54914a19377907 | ||
DIST openjdk-langtools-8.212_p03.tar.bz2 2393112 BLAKE2B 96656795114bad1d2e5eabace5d1c6568646084421fbaa43045ce0ec8d222f1a7e8629e4b86bdd5ff8eb51e90ea1eaafab3e94f34c41932754249f17b2e447f8 SHA512 15b931432cb14cf60c73627bd70e66f6d18ff25763a7b8758109cf8746d278d6c2b5d945a9f0b948a76c0813b5f42c988a3d10ac13165ec12e0f4d9eab98f369 | ||
DIST openjdk-nashorn-8.202_p08.tar.bz2 2854026 BLAKE2B 05ba828160270e52f27023db83b1ffc4e6611b7a74b300a93a6d476f319a265834b48c7de57b0d3bea502d88279e72fd9cfbc5f3eb0e719650e34e82ba4a3d09 SHA512 bea0eaa4b2247cf1e5ee33613754c8f2f6ffe074a7be562f26e63c6327f56d67f60d4877dd363ed8a812689db1d837f5c257637460e247a1592c3258f3add11b | ||
DIST openjdk-nashorn-8.212_p03.tar.bz2 2854888 BLAKE2B 3e5a1867d8a5db301fb3512ebdc4dea8f8226fe3308142d6f3f616795c9cee0d598a257ccd7e790ec440c966339399776d1118764dbf882a46a2daa32d81ddd5 SHA512 5c7fba1d567aa1d0602ef045b24a8624fed9ced72b3bae030ee15ea133ed2223e402cc08c996ff253c4792570da87b7713f351c84704b12556466349f6452f74 |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,248 @@ | ||
# Copyright 1999-2019 Gentoo Authors | ||
# Distributed under the terms of the GNU General Public License v2 | ||
|
||
EAPI=6 | ||
|
||
inherit check-reqs eapi7-ver flag-o-matic java-pkg-2 java-vm-2 multiprocessing pax-utils toolchain-funcs | ||
|
||
MY_PV=$(ver_rs 1 'u' 2 '-' ${PV//p/b}) | ||
|
||
BASE_URI="https://hg.${PN}.java.net/jdk8u/jdk8u" | ||
|
||
DESCRIPTION="Open source implementation of the Java programming language" | ||
HOMEPAGE="https://openjdk.java.net" | ||
SRC_URI=" | ||
${BASE_URI}/archive/jdk${MY_PV}.tar.bz2 -> ${P}.tar.bz2 | ||
${BASE_URI}/corba/archive/jdk${MY_PV}.tar.bz2 -> ${PN}-corba-${PV}.tar.bz2 | ||
${BASE_URI}/hotspot/archive/jdk${MY_PV}.tar.bz2 -> ${PN}-hotspot-${PV}.tar.bz2 | ||
${BASE_URI}/jaxp/archive/jdk${MY_PV}.tar.bz2 -> ${PN}-jaxp-${PV}.tar.bz2 | ||
${BASE_URI}/jaxws/archive/jdk${MY_PV}.tar.bz2 -> ${PN}-jaxws-${PV}.tar.bz2 | ||
${BASE_URI}/jdk/archive/jdk${MY_PV}.tar.bz2 -> ${PN}-jdk-${PV}.tar.bz2 | ||
${BASE_URI}/langtools/archive/jdk${MY_PV}.tar.bz2 -> ${PN}-langtools-${PV}.tar.bz2 | ||
${BASE_URI}/nashorn/archive/jdk${MY_PV}.tar.bz2 -> ${PN}-nashorn-${PV}.tar.bz2 | ||
" | ||
|
||
LICENSE="GPL-2" | ||
SLOT="$(ver_cut 1)" | ||
KEYWORDS="~amd64 ~arm64 ~ppc64 ~x86" | ||
IUSE="alsa debug cups doc examples gentoo-vm headless-awt +jbootstrap nsplugin +pch selinux source +webstart" | ||
|
||
CDEPEND=" | ||
media-libs/freetype:2= | ||
sys-libs/zlib | ||
alsa? ( media-libs/alsa-lib ) | ||
!headless-awt? ( | ||
media-libs/giflib:0/7 | ||
x11-libs/libX11 | ||
x11-libs/libXext | ||
x11-libs/libXi | ||
x11-libs/libXrender | ||
x11-libs/libXt | ||
x11-libs/libXtst | ||
) | ||
" | ||
|
||
RDEPEND=" | ||
${CDEPEND} | ||
cups? ( net-print/cups ) | ||
selinux? ( sec-policy/selinux-java ) | ||
" | ||
|
||
# cups headers requied to build, runtime dep is optional | ||
DEPEND=" | ||
${CDEPEND} | ||
net-print/cups | ||
app-arch/zip | ||
app-misc/ca-certificates | ||
dev-lang/perl | ||
dev-libs/openssl:0 | ||
media-libs/alsa-lib | ||
!headless-awt? ( | ||
x11-base/xorg-proto | ||
) | ||
|| ( | ||
dev-java/openjdk-bin:${SLOT} | ||
dev-java/icedtea-bin:${SLOT} | ||
dev-java/openjdk:${SLOT} | ||
dev-java/icedtea:${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 16GB. This function is certainly not exact but | ||
# should be close enough to be useful. | ||
openjdk_check_requirements() { | ||
local M | ||
M=2048 | ||
M=$(( $(usex debug 3 1) * $M )) | ||
M=$(( $(usex jbootstrap 2 1) * $M )) | ||
M=$(( $(usex doc 320 0) + $(usex source 128 0) + 192 + $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} icedtea-${SLOT} icedtea-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_prepare() { | ||
default | ||
chmod +x configure || die | ||
local repo | ||
for repo in corba hotspot jdk jaxp jaxws langtools nashorn; do | ||
ln -s ../"${repo}-jdk${MY_PV}" "${repo}" || die | ||
done | ||
|
||
# linux 5 is ok https://bugs.gentoo.org/679506 | ||
sed -i '/^SUPPORTED_OS_VERSION/ s/ 4%/ 4% 5%/' hotspot/make/linux/Makefile || die | ||
} | ||
|
||
src_configure() { | ||
# general build info found here: | ||
#https://hg.openjdk.java.net/jdk8/jdk8/raw-file/tip/README-builds.html | ||
|
||
# Work around stack alignment issue, bug #647954. | ||
use x86 && append-flags -mincoming-stack-boundary=2 | ||
|
||
append-flags -Wno-error | ||
|
||
local myconf=( | ||
--disable-ccache | ||
--enable-unlimited-crypto | ||
--with-boot-jdk="${JDK_HOME}" | ||
--with-extra-cflags="${CFLAGS}" | ||
--with-extra-cxxflags="${CXXFLAGS}" | ||
--with-extra-ldflags="${LDFLAGS}" | ||
--with-giflib=system | ||
--with-jtreg=no | ||
--with-jobs=1 | ||
--with-num-cores=1 | ||
--with-update-version="$(ver_cut 2)" | ||
--with-build-number="$(ver_cut 4)" | ||
--with-milestone="gentoo" | ||
--with-vendor-name="Gentoo" | ||
--with-vendor-url="https://gentoo.org" | ||
--with-vendor-bug-url="https://bugs.gentoo.org" | ||
--with-vendor-vm-bug-url="https://bugs.openjdk.java.net" | ||
--with-zlib=system | ||
--with-native-debug-symbols=$(usex debug internal none) | ||
$(usex headless-awt --disable-headful '') | ||
) | ||
|
||
# PaX breaks pch, bug #601016 | ||
if use pch && ! host-is-pax; then | ||
myconf+=( --enable-precompiled-headers ) | ||
else | ||
myconf+=( --disable-precompiled-headers ) | ||
fi | ||
|
||
( | ||
unset _JAVA_OPTIONS JAVA JAVAC XARGS | ||
CFLAGS= CXXFLAGS= LDFLAGS= \ | ||
CONFIG_SITE=/dev/null \ | ||
econf "${myconf[@]}" | ||
) | ||
} | ||
|
||
src_compile() { | ||
emake -j1 LOG=debug JOBS=$(makeopts_jobs)\ | ||
$(usex jbootstrap bootcycle-images images) $(usex doc docs '') | ||
} | ||
|
||
src_install() { | ||
local dest="/usr/$(get_libdir)/${PN}-${SLOT}" | ||
local ddest="${ED}${dest#/}" | ||
|
||
cd "${S}"/build/*-release/images/j2sdk-image || die | ||
|
||
if ! use alsa; then | ||
rm -v jre/lib/$(get_system_arch)/libjsoundalsa.* || die | ||
fi | ||
|
||
if ! use examples ; then | ||
rm -vr demo/ || die | ||
fi | ||
|
||
if ! use source ; then | ||
rm -v src.zip || die | ||
fi | ||
|
||
dodir "${dest}" | ||
cp -pPR * "${ddest}" || die | ||
|
||
einfo "Generating cacerts file from certificates in ${EPREFIX}/usr/share/ca-certificates/" | ||
mkdir "${T}/certgen" && cd "${T}/certgen" || die | ||
cp "${FILESDIR}/generate-cacerts.pl" . && chmod +x generate-cacerts.pl || die | ||
for c in "${EPREFIX}"/usr/share/ca-certificates/*/*.crt; do | ||
openssl x509 -text -in "${c}" >> all.crt || die | ||
done | ||
./generate-cacerts.pl "${ddest}/bin/keytool" all.crt || die | ||
cp -vRP cacerts "${ddest}/jre/lib/security/" || die | ||
chmod 644 "${ddest}/jre/lib/security/cacerts" || 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/docs/* | ||
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 | ||
} |