summaryrefslogtreecommitdiff
path: root/dev-java
diff options
context:
space:
mode:
authorLiguros - Gitlab CI/CD [feature/flatten] <gitlab@liguros.net>2020-07-15 00:47:32 +0000
committerLiguros - Gitlab CI/CD [feature/flatten] <gitlab@liguros.net>2020-07-15 00:47:32 +0000
commitf5bfc0b4bd0e901ce1395efab8026d87f234f5a0 (patch)
treee277cc59b6cda5d8d532eb491c75fb00a542f0d4 /dev-java
parent49a5c172665cfd774b11b15b01bd4b5501796d90 (diff)
downloadbaldeagleos-repo-f5bfc0b4bd0e901ce1395efab8026d87f234f5a0.tar.gz
baldeagleos-repo-f5bfc0b4bd0e901ce1395efab8026d87f234f5a0.tar.xz
baldeagleos-repo-f5bfc0b4bd0e901ce1395efab8026d87f234f5a0.zip
Updating liguros repo
Diffstat (limited to 'dev-java')
-rw-r--r--dev-java/openjdk/Manifest9
-rw-r--r--dev-java/openjdk/openjdk-11.0.8_p10.ebuild276
-rw-r--r--dev-java/openjdk/openjdk-8.262_p10.ebuild226
-rw-r--r--dev-java/openjfx/Manifest1
-rw-r--r--dev-java/openjfx/openjfx-11.0.8_p2.ebuild222
5 files changed, 734 insertions, 0 deletions
diff --git a/dev-java/openjdk/Manifest b/dev-java/openjdk/Manifest
index 0062a4f8d08a..4c71ff2f5c19 100644
--- a/dev-java/openjdk/Manifest
+++ b/dev-java/openjdk/Manifest
@@ -1,9 +1,18 @@
DIST openjdk-11.0.7_p10.tar.bz2 91317054 BLAKE2B 113f6d0b1ea97aa6c3a619a3f4183b72f5e0448422d17b6ffc4d778ce50eee68e4495d610845d1f3aace2e5660703dad96583203c6d12b5528e0f33f78df7cec SHA512 c6776bd05e2cbb42134ccf5cd522e4b73d1662e3cf136a8718c5d302b9c44e76b74a554b81aa14c5deda20bee76abc80a144f5c2e1941b70c9503579c325aa12
+DIST openjdk-11.0.8_p10.tar.bz2 91141175 BLAKE2B eeef0f6b6a8f804e043cde01de256c86ed35d5a391588100caea49c8c2b617c3f06aa37df894feaa89734e68c32fe28d8bc5337755050c457d657cf88fcff7f3 SHA512 f8fd26a11cb044197d3b04a1347e27e177e79cb58436e67116f63025a2a5c39c0083ac17362e7d2234caf89df530422ead088e3fc4546f8d9f68482fc75eb7a0
DIST openjdk-8.252_p09.tar.bz2 454656 BLAKE2B 7132af72a09da9ded1759ccf92da6237a24e3fd15209b8d5aecb7011b890cd3484b4724f6b6a144e4bc5cb41931076985f75a9089c178938be62ac1a1d2a7f07 SHA512 0f03f1549dea1577cb01895d4e34721d16443977c5e7b3f0744af9cf2c0b09e60cb6d91b35a5e474c593d518d5610fb4c14fc4b9a907a7e13bb2351cea51bd06
+DIST openjdk-8.262_p10.tar.bz2 455868 BLAKE2B 22637a8ecd2af97b8cdc335fff5d4a14c56f53a26f0fe1ccb61f7f6542961126f4a2dadfc596ae561ea27cfdbc5f23fb10350d1533f43f1740540367565cb160 SHA512 196e201cbbd53132a78f276df7407346ba611798d813272c68cd3d654f34b84874009cda1df62e51fd5e33c5bc4aa4bdda6bd0ef7cac9857c609fcdb3fa3fd53
DIST openjdk-corba-8.252_p09.tar.bz2 1034367 BLAKE2B d281a0b2e092c637adae4a206ac4b3f7beeb65f0fce5862f996ac71a814c5c3ee3261dd1145660cb50fde0398e42ca1e8c86d6aad07e43b44aa1f903c204b21c SHA512 08f348849eeadefee3dce9658b519091a14b9f972a1ee1dc51c37a3cd766e5265faed1931b967410ebff2132dd18cedf8840277d804b402ee43a862e37575ab1
+DIST openjdk-corba-8.262_p10.tar.bz2 1033428 BLAKE2B 979f86546dc4c558c8615e4cc1887bcc4a0b82845cf6474ef3802321cb205037c2c753c55f0c219cba3e0771bc2e1a7096b6ad93ce8582e45ef6b5815c0c593b SHA512 4b91cbcc55b983719aa1e0fb683bf2d169b908eb4d4e24857dfd918f4f086e6ce1317f980ba89ff911673131c71c27149091ee114deb75e6f98f31b0922bc04f
DIST openjdk-hotspot-8.252_p09.tar.bz2 7954548 BLAKE2B a791d3c3385be3c8543bea1fc8d5bee9b3de873122ec850c3ad0082430083ec9dff2aa7c0cae33e628047a18a76fca8146b68aa52f32845cf7a61a45fdc8d9eb SHA512 53079cc255f75f246a67937bdf2b7715882f9baf8bcbc46ab2963c259359b1008642aeeae7ba7705c39f7a04e69ba286421a83b90294e81071f8e630db48ba7c
+DIST openjdk-hotspot-8.262_p10.tar.bz2 8204485 BLAKE2B dd4411fdceb36c378d15fce45dc75ea6b2e19c219a6b46e10de3864407d9eff0a4fcb7fcf2f5f0bc613b68cd54766404f25c76346c7500e7a2018c0001ad4981 SHA512 11880562cebbdc4abd59cd2ac234ca697316c1ec78ad291fa41d69fe8f5f01f30db0c3e224226521afcaf798619a5afc9055ea12fcd41f5da179a353351dff2a
DIST openjdk-jaxp-8.252_p09.tar.bz2 2736174 BLAKE2B c198f144be7d0e7439e2184768db8649973f9e6869e67d3a950abd4872584160f4aaec1f4bec727f0d38830d34a4be7bd2f3e897b8ca10c758212262fa1672c3 SHA512 8027676e2928087a7d396c4f1edd3366336aaf8e3f201e2006cb7ddf91e518c9258d7ab6cc1c4fcc27e3e87bcecd96c55b2550d49f28b98beabf7553ea54ba3f
+DIST openjdk-jaxp-8.262_p10.tar.bz2 2735942 BLAKE2B 0445bffe29772968775d4ef5c516e16e53564a27828487ac69224591f008659548bf561eb5e8ac90d1c6129c52e5b91da142b66eb3c4117504752d8a151202ba SHA512 6ff35eaf23a21376643252a0cdcf7d82588c49f9e231e069b14c930d0379f1ef5973996918ae964729d2038d677f2afeec094af904df7e294c3c81a09f12c0b1
DIST openjdk-jaxws-8.252_p09.tar.bz2 2542417 BLAKE2B cf898e0c56269ea1f468c6b9e6cfbdf552caea562f833ade234d207f05be6f39f86d9d6794cc8b365ed3fde4bac5df41949e76cbaef61553f5557ec86dd593e6 SHA512 cadeec8825073db1fea13f1d83903ba2799324cfa8e25012c5dc98ec31976bd91b22526f98fc871d0ee01156943f4fc4ec115f7a81feb10e9f7d96f3f39a9313
+DIST openjdk-jaxws-8.262_p10.tar.bz2 2543114 BLAKE2B 1329a7157335374e6a61572843c067fbb8125ccdc425ce54a5fc723750d2efdde255390393dfbdb3993fe21943bc9c18bb0aa22a177d7095bbe1343cd4fed1b4 SHA512 d229dea6d1feb0f404f438e8e2fe7760866965db3d0dfe2c3be52122723a915b502114716b99a243029f4377ea701918568dfe7a8426922e7186addb2ea9a36a
DIST openjdk-jdk-8.252_p09.tar.bz2 47507382 BLAKE2B 4638256df52aa48a1ccace15fe65b284cb2a1e3a3c45f32ae69a807ae4bd9b9ce3cf9f464a9b8a87d07c49f2d7c48c8516b43d9d4372f578ad1cd4dfa17abb80 SHA512 96188acc8078c312c7118abfbc39874429f71e63c2e282fef2da9df29731ee13396bda28a8a1041b17b50da4bb00b1fe88404d682b0a850e5db10e59e39994f2
+DIST openjdk-jdk-8.262_p10.tar.bz2 48030557 BLAKE2B 5aba38969729686718527acbf469086afc241c65667a69ddd2a71af4250dd2d931ea267a0c956a1ab342eea032a981ff66a31875f3d7ccca9dcdff82e02df10e SHA512 120b0f613ed9b13c07e68cfc074a1d812567edbc209cbc14d15b477fb7e67a779139f620bc7c65423e420c7b240211727760ca69b532d2f009452f7bfbecacd4
DIST openjdk-langtools-8.252_p09.tar.bz2 2399354 BLAKE2B aa3f0cb647986490612b9574fb0c78955f5ffb8969dbd06dfae5406436d6fecdbbb09896bdb0acc18d56f51bcd4ad1eadb19cc544185762ad623a47fde2e4a85 SHA512 d84ff97294ac612cd4e49deb2d7470026a564208c0e1fa23d5692db45efaaf564483966921ce642506a97aa90a2a8593617f944ebc6d18c9db5a808fd3946864
+DIST openjdk-langtools-8.262_p10.tar.bz2 2398186 BLAKE2B 874461ecd6655edab66541ca681e60eb1f0dd3331d26ad806f59c486658fb7cdf26a65869316ae7e1ba04aa1a4b45f1bc2848b695e89a87b878f399b08b12bb4 SHA512 a109d8dd94c83b0caddd1527c2467c12f05c344c1916a5af7bac0127a5694107d6a902679bf609a48aad434b3c623d42cce6ece83b205051435d3e3aab1824f7
DIST openjdk-nashorn-8.252_p09.tar.bz2 2852104 BLAKE2B 570fbe605ed27c4b3a5db5f6e9dbb4269ad2c895654a989d366a4a6f238ea06fec398140563ca2700303856dfa795ae40dbf9485dd9e9a46ef438f5418fd8b8b SHA512 996e7068d8c6f8ca192e6037eaf7f98ff94188c02670caadf1042e4e0909a3d51835a8cd2250d1f0a8bbdedb107f3713b614466ba4d2915b955e19fdcc2cbb91
+DIST openjdk-nashorn-8.262_p10.tar.bz2 2852351 BLAKE2B f7c4650981e6193f5e7495971b1a1777e086d734befe79ef53bc20382cc738f14ea95e6bd1baa51e128a071c96ca3885eac93494fe1db92de4eb2820f1392ebd SHA512 55119e12a7dc2f1acc31c655f5b3fb9f417b06310c99d4e93c355bd638950f839e62137509f784dafd7f402940dddefc4c0952a5e182d4801f46d78830086e97
diff --git a/dev-java/openjdk/openjdk-11.0.8_p10.ebuild b/dev-java/openjdk/openjdk-11.0.8_p10.ebuild
new file mode 100644
index 000000000000..35a2c27c3f85
--- /dev/null
+++ b/dev-java/openjdk/openjdk-11.0.8_p10.ebuild
@@ -0,0 +1,276 @@
+# Copyright 1999-2020 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
+
+# we need -ga tag to fetch tarball and unpack it, but exact number everywhere else to
+# set build version properly
+MY_PV="${PV%_p*}-ga"
+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 -> ${P}.tar.bz2"
+
+LICENSE="GPL-2"
+KEYWORDS="~amd64 ~arm ~arm64 ~ppc64"
+
+IUSE="alsa cups debug doc examples gentoo-vm headless-awt javafx +jbootstrap nsplugin +pch selinux source systemtap webstart"
+
+COMMON_DEPEND="
+ media-libs/freetype:2=
+ media-libs/giflib:0/7
+ media-libs/libpng:0=
+ media-libs/lcms:2=
+ sys-libs/zlib
+ virtual/jpeg:0=
+ systemtap? ( dev-util/systemtap )
+"
+
+# Many libs are required to build, but not to run, make is possible to remove
+# by listing conditionally in RDEPEND unconditionally in DEPEND
+RDEPEND="
+ ${COMMON_DEPEND}
+ >=sys-apps/baselayout-java-0.1.0-r1
+ !headless-awt? (
+ x11-libs/libX11
+ x11-libs/libXext
+ x11-libs/libXi
+ x11-libs/libXrandr
+ x11-libs/libXrender
+ x11-libs/libXt
+ x11-libs/libXtst
+ )
+ alsa? ( media-libs/alsa-lib )
+ cups? ( net-print/cups )
+ selinux? ( sec-policy/selinux-java )
+"
+
+DEPEND="
+ ${COMMON_DEPEND}
+ app-arch/zip
+ media-libs/alsa-lib
+ net-print/cups
+ x11-base/xorg-proto
+ x11-libs/libX11
+ x11-libs/libXext
+ x11-libs/libXi
+ x11-libs/libXrandr
+ x11-libs/libXrender
+ x11-libs/libXt
+ x11-libs/libXtst
+ javafx? ( dev-java/openjfx:${SLOT}= )
+ || (
+ 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] )
+"
+
+REQUIRED_USE="javafx? ( alsa !headless-awt )"
+
+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 jbootstrap 2 1) * $M ))
+ M=$(( $(usex debug 3 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
+ if [[ ${MERGE_TYPE} != binary ]]; then
+ has ccache ${FEATURES} && die "FEATURES=ccache doesn't work with ${PN}"
+ fi
+}
+
+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
+ if [[ ${MERGE_TYPE} != "binary" ]]; then
+ 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
+ fi
+}
+
+src_prepare() {
+ default
+ chmod +x configure || die
+}
+
+src_configure() {
+ # Work around stack alignment issue, bug #647954. in case we ever have x86
+ use x86 && append-flags -mincoming-stack-boundary=2
+
+ # Work around -fno-common ( GCC10 default ), bug #713180
+ append-flags -fcommon
+
+ # 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.
+
+ local myconf=(
+ --disable-ccache
+ --enable-full-docs=no
+ --with-boot-jdk="${JDK_HOME}"
+ --with-extra-cflags="${CFLAGS}"
+ --with-extra-cxxflags="${CXXFLAGS}"
+ --with-extra-ldflags="${LDFLAGS}"
+ --with-giflib=system
+ --with-lcms=system
+ --with-libjpeg=system
+ --with-libpng=system
+ --with-native-debug-symbols=$(usex debug internal none)
+ --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-vendor-version-string="${PVR}"
+ --with-version-pre=""
+ --with-version-string="${PV%_p*}"
+ --with-version-build="${PV#*_p}"
+ --with-zlib=system
+ --enable-dtrace=$(usex systemtap yes no)
+ --enable-headless-only=$(usex headless-awt yes no)
+ )
+
+ if use javafx; then
+ local zip="${EROOT%/}/usr/$(get_libdir)/openjfx-${SLOT}/javafx-exports.zip"
+ if [[ -r ${zip} ]]; then
+ myconf+=( --with-import-modules="${zip}" )
+ else
+ die "${zip} not found or not readable"
+ fi
+ fi
+
+ # 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 JAVA_TOOL_OPTIONS JAVAC XARGS
+ CFLAGS= CXXFLAGS= LDFLAGS= \
+ CONFIG_SITE=/dev/null \
+ econf "${myconf[@]}"
+ )
+}
+
+src_compile() {
+ local myemakeargs=(
+ JOBS=$(makeopts_jobs)
+ LOG=debug
+ CFLAGS_WARNINGS_ARE_ERRORS= # No -Werror
+ $(usex doc docs '')
+ $(usex jbootstrap bootcycle-images product-images)
+ )
+ emake "${myemakeargs[@]}" -j1 #nowarn
+}
+
+src_install() {
+ local dest="/usr/$(get_libdir)/${PN}-${SLOT}"
+ local ddest="${ED}${dest#/}"
+
+ cd "${S}"/build/*-release/images/jdk || die
+
+ # Create files used as storage for system preferences.
+ mkdir .systemPrefs || die
+ touch .systemPrefs/.system.lock || die
+ touch .systemPrefs/.systemRootModFile || 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
+
+ rm -v lib/security/cacerts || die
+
+ dodir "${dest}"
+ cp -pPR * "${ddest}" || die
+
+ dosym ../../../../../etc/ssl/certs/java/cacerts "${dest}"/lib/security/cacerts
+
+ # must be done before running itself
+ java-vm_set-pax-markings "${ddest}"
+
+ einfo "Creating the Class Data Sharing archives and disabling usage tracking"
+ "${ddest}/bin/java" -server -Xshare:dump -Djdk.disableLastUsageTracking || die
+
+ use gentoo-vm && java-vm_install-env "${FILESDIR}"/${PN}-${SLOT}.env.sh
+ java-vm_revdep-mask
+ java-vm_sandbox-predict /dev/random /proc/self/coredump_filter
+
+ if use doc ; then
+ docinto html
+ dodoc -r "${S}"/build/*-release/images/docs/*
+ dosym ../../../usr/share/doc/"${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"
+ 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 ${SLOT}. This JDK must therefore be invoked using its"
+ ewarn "absolute location under ${EPREFIX}/usr/$(get_libdir)/${PN}-${SLOT}."
+ fi
+}
diff --git a/dev-java/openjdk/openjdk-8.262_p10.ebuild b/dev-java/openjdk/openjdk-8.262_p10.ebuild
new file mode 100644
index 000000000000..3bf95edeea43
--- /dev/null
+++ b/dev-java/openjdk/openjdk-8.262_p10.ebuild
@@ -0,0 +1,226 @@
+# Copyright 1999-2020 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
+
+# we need latest -ga tag from hg, but want to keep build number as well
+# as _p component of the gentoo version string.
+
+MY_PV=$(ver_rs 1 'u' 2 '-' ${PV%_p*}-ga)
+
+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 ~ppc64 ~x86"
+IUSE="alsa debug cups doc examples headless-awt +jbootstrap nsplugin +pch selinux source webstart"
+
+COMMON_DEPEND="
+ media-libs/freetype:2=
+ media-libs/giflib:0/7
+ sys-libs/zlib
+"
+# Many libs are required to build, but not to run, make is possible to remove
+# by listing conditionally in RDEPEND unconditionally in DEPEND
+RDEPEND="
+ ${COMMON_DEPEND}
+ >=sys-apps/baselayout-java-0.1.0-r1
+ !headless-awt? (
+ x11-libs/libX11
+ x11-libs/libXext
+ x11-libs/libXi
+ x11-libs/libXrender
+ x11-libs/libXt
+ x11-libs/libXtst
+ )
+ alsa? ( media-libs/alsa-lib )
+ cups? ( net-print/cups )
+ selinux? ( sec-policy/selinux-java )
+"
+
+DEPEND="
+ ${COMMON_DEPEND}
+ app-arch/zip
+ media-libs/alsa-lib
+ net-print/cups
+ x11-base/xorg-proto
+ x11-libs/libX11
+ x11-libs/libXext
+ x11-libs/libXi
+ x11-libs/libXrender
+ x11-libs/libXt
+ x11-libs/libXtst
+ || (
+ 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
+ if [[ ${MERGE_TYPE} != binary ]]; then
+ has ccache ${FEATURES} && die "FEATURES=ccache doesn't work with ${PN}"
+ fi
+}
+
+pkg_setup() {
+ openjdk_check_requirements
+
+ 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}"
+
+ java-vm-2_pkg_setup
+ java-pkg-2_pkg_setup
+}
+
+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
+ # new warnings in new gcc https://bugs.gentoo.org/685426
+ sed -i '/^WARNINGS_ARE_ERRORS/ s/-Werror/-Wno-error/' \
+ hotspot/make/linux/makefiles/gcc.make || 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
+
+ # Work around -fno-common ( GCC10 default ), bug #706638
+ append-flags -fcommon
+
+ 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="b$(ver_cut 4)"
+ --with-milestone="fcs" # magic variable that means "release version"
+ --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 JAVA_TOOL_OPTIONS JAVAC XARGS
+ CFLAGS= CXXFLAGS= LDFLAGS= \
+ CONFIG_SITE=/dev/null \
+ econf "${myconf[@]}"
+ )
+}
+
+src_compile() {
+ local myemakeargs=(
+ JOBS=$(makeopts_jobs)
+ LOG=debug
+ $(usex doc docs '')
+ $(usex jbootstrap bootcycle-images images)
+ )
+ emake "${myemakeargs[@]}" -j1 #nowarn
+}
+
+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
+
+ # stupid build system does not remove that
+ if use headless-awt ; then
+ rm -fvr jre/lib/$(get_system_arch)/lib*{[jx]awt,splashscreen}* \
+ {,jre/}bin/policytool bin/appletviewer || 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
+
+ dosym ../../../../../../etc/ssl/certs/java/cacerts "${dest}"/jre/lib/security/cacerts
+
+ 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
+ docinto html
+ dodoc -r "${S}"/build/*-release/docs/*
+ fi
+}
+
+pkg_postinst() {
+ java-vm-2_pkg_postinst
+}
diff --git a/dev-java/openjfx/Manifest b/dev-java/openjfx/Manifest
index 4b7bc888df5a..a57d245b994e 100644
--- a/dev-java/openjfx/Manifest
+++ b/dev-java/openjfx/Manifest
@@ -8,3 +8,4 @@ DIST lucene-queries-7.1.0.jar 243126 BLAKE2B 166c3efea04c19314be7fd8c1d6b1378b2b
DIST lucene-queryparser-7.1.0.jar 384680 BLAKE2B adce2572de9f534323eead31dd30f97b853b2d5e4be6828c415f0c647460c361e00680d856ff9ffbba0fe45c3e4a425d68938a3d2dc01c76491bb65673e120fa SHA512 7151ef899e318679995138262c3450577ae33580708864581dc22a027f43ca4989825d434680925547e3c04ad4453a454e7045f605d7eee0da57d63db978ed68
DIST lucene-sandbox-7.1.0.jar 182914 BLAKE2B 70c795f84d8f0908abe47db77f632eeb6571a77e1445b8ab04a75080cea40e3b8171071965ff7fd9f6d39a450dd33144e922d19c1f07c605de54b45e3e881323 SHA512 6faf9fd9c7c082bf062adb6a28d89447e6e27152eb3f0a325081e5f791196e5440334632ccbf9c458940220676f7e73390a174889d9b7a656d088b3dade5d500
DIST openjfx-11.0.7_p1.tar.bz2 64302415 BLAKE2B 1a0705b5a668025dd73cc92af35b9e33d698adb1130dace1c079e20f6f6a848517102fe28f7e5e62a141fdfbd6f8086e9a2bb96573a597245d935e5d80918c4c SHA512 ff2b0af1d4b18963bd8ce26c20ab1def268fec8e6030732336edec3aedf58f8bdc25b61b3cd1d70c7d814a3ee96413965f26fba2426c083338c62d8483e93564
+DIST openjfx-11.0.8_p2.tar.bz2 64151301 BLAKE2B 045dcfa35c52fe6f293713420147dd1a69b1851c8e1a1d09f0be1e0237d510e8d7b67d8c0ad36bcf23e1504a540c905a95c706faf0919da4de5005f3046e6cce SHA512 d693e1f4215e9ba42b3241f50581dbc3e7a3e6bf8ccda6f3c43c6a976389d321e6ca3d393138b62f6defd240b9d1aaef7ab26083520ed404d0d439ac9478341d
diff --git a/dev-java/openjfx/openjfx-11.0.8_p2.ebuild b/dev-java/openjfx/openjfx-11.0.8_p2.ebuild
new file mode 100644
index 000000000000..5f211eba215c
--- /dev/null
+++ b/dev-java/openjfx/openjfx-11.0.8_p2.ebuild
@@ -0,0 +1,222 @@
+# Copyright 2019-2020 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=6
+
+MY_PV="${PV/_p/+}"
+SLOT="${MY_PV%%[.+]*}"
+EGRADLE_VER="4.8"
+
+inherit flag-o-matic java-pkg-2 multiprocessing
+
+DESCRIPTION="Java OpenJFX client application platform"
+HOMEPAGE="https://openjfx.io"
+
+SRC_URI="https://hg.openjdk.java.net/${PN}/${SLOT}-dev/rt/archive/${MY_PV}.tar.bz2 -> ${P}.tar.bz2
+ https://downloads.gradle.org/distributions/gradle-${EGRADLE_VER}-bin.zip
+ https://repo.maven.apache.org/maven2/org/apache/lucene/lucene-sandbox/7.1.0/lucene-sandbox-7.1.0.jar
+ https://repo.maven.apache.org/maven2/org/apache/lucene/lucene-grouping/7.1.0/lucene-grouping-7.1.0.jar
+ https://repo.maven.apache.org/maven2/org/apache/lucene/lucene-queryparser/7.1.0/lucene-queryparser-7.1.0.jar
+ https://repo.maven.apache.org/maven2/org/apache/lucene/lucene-queries/7.1.0/lucene-queries-7.1.0.jar
+ https://repo.maven.apache.org/maven2/org/apache/lucene/lucene-core/7.1.0/lucene-core-7.1.0.jar
+ https://repo.maven.apache.org/maven2/org/antlr/gunit/3.5.2/gunit-3.5.2.jar
+ https://repo1.maven.org/maven2/org/antlr/antlr4/4.7.2/antlr4-4.7.2-complete.jar
+ https://repo.maven.apache.org/maven2/org/antlr/ST4/4.0.8/ST4-4.0.8.jar
+"
+
+LICENSE="GPL-2-with-classpath-exception"
+KEYWORDS="-* ~amd64"
+
+IUSE="cpu_flags_x86_sse2 debug doc source +media"
+
+RDEPEND="
+ dev-java/swt:4.10[cairo,opengl]
+ dev-libs/atk
+ dev-libs/glib:2
+ dev-libs/libxml2:2
+ dev-libs/libxslt
+ media-libs/freetype:2
+ media-libs/fontconfig:1.0
+ media-video/ffmpeg:0=
+ x11-libs/gdk-pixbuf
+ x11-libs/gtk+:2
+ x11-libs/gtk+:3
+ x11-libs/cairo[glib]
+ x11-libs/libX11
+ x11-libs/libXtst
+ x11-libs/libXxf86vm
+ x11-libs/pango
+ virtual/jpeg
+ virtual/opengl
+ || (
+ dev-java/openjdk-bin:${SLOT}[doc?]
+ dev-java/openjdk:${SLOT}[doc?]
+ )
+"
+
+DEPEND="${RDEPEND}
+ app-arch/unzip
+ app-arch/zip
+ >=dev-java/ant-core-1.10.7-r1:0
+ dev-java/antlr:0
+ dev-java/antlr:3.5
+ dev-java/hamcrest-core:0
+ dev-java/stringtemplate:0
+ virtual/ttf-fonts
+ virtual/pkgconfig
+"
+
+REQUIRED_USE="cpu_flags_x86_sse2"
+
+PATCHES=(
+ "${FILESDIR}"/11/disable-buildSrc-tests.patch
+ "${FILESDIR}"/11/glibc-compatibility.patch
+ "${FILESDIR}"/11/respect-user-cflags.patch
+ "${FILESDIR}"/11/use-system-swt-jar.patch
+ "${FILESDIR}"/11/wno-error.patch
+)
+
+S="${WORKDIR}/rt-${MY_PV}"
+
+egradle() {
+ local GRADLE_HOME="${WORKDIR}/gradle-${EGRADLE_VER}"
+ local gradle="${GRADLE_HOME}/bin/gradle"
+ local gradle_args=(
+ --info
+ --stacktrace
+ --no-build-cache
+ --no-daemon
+ --offline
+ --gradle-user-home "${T}/gradle_user_home"
+ --project-cache-dir "${T}/gradle_project_cache"
+ )
+
+ export GRADLE_HOME
+
+ # FIXME: build.gradle believes $ANT_HOME/bin/ant shoud exist
+ unset ANT_HOME
+
+ einfo "gradle "${gradle_args[@]}" ${@}"
+ # TERM needed, otherwise gradle may fail on terms it does not know about
+ TERM="xterm" "${gradle}" "${gradle_args[@]}" ${@} || die "gradle failed"
+}
+
+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 JAVA_HOME=${EPREFIX}/usr/$(get_libdir)/openjdk-${SLOT}
+ export JDK_HOME="${JAVA_HOME}"
+ export ANT_RESPECT_JAVA_HOME=ture
+
+ else
+ if [[ ${MERGE_TYPE} != "binary" ]]; then
+ 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
+ export JAVA_HOME="${JDK_HOME}"
+ export ANT_RESPECT_JAVA_HOME=ture
+ fi
+ fi
+}
+
+src_unpack() {
+ unpack "${P}.tar.bz2"
+ unpack "gradle-${EGRADLE_VER}-bin.zip"
+
+ mkdir "${T}/jars" || die
+
+ local line jar
+ for line in ${SRC_URI}; do
+ if [[ ${line} =~ (http|https)://[a-zA-Z0-9.-_]*/(maven2|m2|eclipse)/(.*[.]jar)$ ]]; then
+ jar=$(basename "${BASH_REMATCH[-1]}")
+ cp -v "${DISTDIR}/${jar}" "${T}/jars/" || die
+ fi
+ done
+}
+
+src_prepare() {
+ default
+
+ local d="${T}/jars"
+
+ java-pkg_jar-from --build-only --with-dependencies --into "${d}" antlr
+ java-pkg_jar-from --build-only --with-dependencies --into "${d}" antlr-3.5
+ java-pkg_jar-from --build-only --with-dependencies --into "${d}" stringtemplate
+ java-pkg_jar-from --build-only --with-dependencies --into "${d}" hamcrest-core
+
+ sed -i "s#__gentoo_swt_jar__#$(java-pkg_getjars swt-4.10)#" "${S}"/build.gradle || die
+}
+
+src_configure() {
+ append-flags -Wno-error -fcommon
+
+ #FIXME: still calls gcc, pkg-config etc by name without chost prefix
+ #FIXME: should we enable webkit? doubt so
+
+ # build is very sensetive to doc presense, take extra steps
+ if use doc; then
+ local jdk_doc
+ if has_version --host-root dev-java/openjdk:${SLOT}[doc]; then
+ jdk_doc="${EROOT%/}/usr/share/doc/openjdk-${SLOT}/html/api"
+ elif has_version --host-root dev-java/java-sdk-docs:${SLOT}; then
+ jdk_doc="${EROOT%/}/usr/share/doc/java-sdk-docs-${SLOT}/html/api"
+ fi
+ [[ -r ${jdk_doc}/element-list ]] || die "JDK Docs not found, terminating build early"
+ fi
+
+ cat <<- _EOF_ > "${S}"/gradle.properties
+ COMPILE_TARGETS = linux
+ COMPILE_WEBKIT = false
+ COMPILE_MEDIA = $(usex media true false)
+ JDK_DOCS = https://docs.oracle.com/en/java/javase/${SLOT}/docs/api
+ JDK_DOCS_LINK = $(usex doc "${jdk_doc}" "")
+ BUILD_LIBAV_STUBS = false
+ GRADLE_VERSION_CHECK = false
+ LINT = none
+ CONF = $(usex debug DebugNative Release)
+ NUM_COMPILE_THREADS = $(makeopts_jobs)
+ JFX_DEPS_URL = ${T}/jars
+ COMPANY_NAME = "Gentoo"
+ _EOF_
+}
+
+src_compile() {
+ egradle zips $(usex doc "" "--exclude-task javadoc")
+}
+
+src_install() {
+ if ! use source ; then
+ rm -v build/sdk/lib/src.zip || die
+ fi
+
+ insinto "/usr/$(get_libdir)/${PN}-${SLOT}"
+ doins -r build/sdk/.
+ doins build/javafx-exports.zip
+
+ if use doc; then
+ docinto html
+ dodoc -r build/javadoc/.
+ dosym ../../../usr/share/doc/"${PF}" /usr/share/doc/"${PN}-${SLOT}"
+ fi
+}