commit:     d1d71c78d4b4453f05d02e7fb4755c1f253d283e
Author:     Georgy Yakovlev <gyakovlev <AT> gentoo <DOT> org>
AuthorDate: Thu Jan 19 21:21:07 2023 +0000
Commit:     Georgy Yakovlev <gyakovlev <AT> gentoo <DOT> org>
CommitDate: Thu Jan 19 21:39:57 2023 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=d1d71c78

dev-java/openjdk: add 8.362_p09

Bug: https://bugs.gentoo.org/891323
Signed-off-by: Georgy Yakovlev <gyakovlev <AT> gentoo.org>

 dev-java/openjdk/Manifest                 |   1 +
 dev-java/openjdk/openjdk-8.362_p09.ebuild | 229 ++++++++++++++++++++++++++++++
 2 files changed, 230 insertions(+)

diff --git a/dev-java/openjdk/Manifest b/dev-java/openjdk/Manifest
index 03b79e30bb0f..483fc70b5bd8 100644
--- a/dev-java/openjdk/Manifest
+++ b/dev-java/openjdk/Manifest
@@ -10,6 +10,7 @@ DIST openjdk-17.0.5_p8.tar.gz 105048497 BLAKE2B 
c707633a247e5ff4f5083623e874200d
 DIST openjdk-8.332_p09.tar.gz 88130953 BLAKE2B 
9c7419851588dfbca92610f8fbb8b74fa7516282f82e8c7c37af88c776ba0c83a22fb3d4a1c2c2b98d44e394025217d095cff9c79fba53f9c5a32a43eb91ad70
 SHA512 
f6a717f77cc0e85bc2eb3c3c599d09e06a4004e4987a2caf0773b1197336722469e2abcca9d39c1f4c534d15cd77408d6405c9ee6edb3815bccd8e4872571aaa
 DIST openjdk-8.345_p01.tar.gz 88173976 BLAKE2B 
f0eca11f4fcb532a8fd156a74ff6629ea2d948c5d29d9b9638b526c57598618f5c3782ace26654be61f8d9ab229f44aa46112234c2d2e8a9bdc367c1071b6e53
 SHA512 
bb01156f751a0ba25290d1337356f9dd78121373220e2e2df07a4536e2ab31390865ab63d628901de7983d1679dd6dfd4bc3c6304911e6c76fe4c616bdf07eab
 DIST openjdk-8.352_p08.tar.gz 87951551 BLAKE2B 
da24a507583b820ae30b9f7e0d7661a8d5fac86f25dd27aab747d7ed0bea387b00379e067c0f2cdba0f44815ea6689e50c0a21a1b9a2ff807480a8ecbe1f6f8f
 SHA512 
85f17830bee92b88afa69957b0c2fa49333845d65acd48c5f6548a020a3a69a82d8691884757e07f4d146223e7725c5e0cc51d2d3d6c984d457d3772e3b7c862
+DIST openjdk-8.362_p09.tar.gz 87939909 BLAKE2B 
cff08a04e2e0cf0af776d8ae8220cae86afb322a4dbb83df39444b08a23dd59fea761a0ee403d24d7fd639e1982eac7c77764920c7efcfeb877dc64763c9f672
 SHA512 
6579e881f36902db49db8d136f1cd9d2b2659705b216bfe014df99441d1984b4d7678998bb36edf78b77049bdd8315a8dcf22e6a598b485b972fee3784fe2ef7
 DIST openjdk-bootstrap-11.0.13_p8-ppc64.tar.xz 108215404 BLAKE2B 
5e6c0b905b34b437137922b73a9724da96b8832186fea945f8c73d941db822ca1cc5718f3ecb4607ed98d1f8241c9f365b54caaf978863e8b84680a94f067b5d
 SHA512 
732e2220219d42be10589fcaf2420da87ebc8564b4afc6bd02f61f31cdca9c31b339366e34d374fb814499b92f8aa796435a18f28e10c8cb00d9a0f5953bb60e
 DIST openjdk-bootstrap-11.0.13_p8-x86.tar.xz 105420236 BLAKE2B 
d3137ad497937a9a04dedf38776f3ac45bf3b115d275991fd8582b72ade48390b6aa8ad89e0b4d34fa6a787a3c413dab20b32ef347dc8733544e810150c55d29
 SHA512 
f71a7ef8fbf19b0595dd7d4ebe52bbe1c95b8c17f34d092472c5f5ce8caf52a053f22db8587f1649f9a96ad01c0c632be343342812f5a8cc4ff843b33b8d9b0f
 DIST openjdk-bootstrap-11.0.14_p9-riscv.tar.xz 104601676 BLAKE2B 
5f976e8a626a829fae70ad6c007f10bfeff79e29c85d6c75fb2f5ff8984fd2a2bd44ee6e07958dbbdaaed761c6839d375e1b5ba6cffc63b02ad9e2c9178310db
 SHA512 
580dec81626553fe3e7afd0f6385a733ba80a0502cf0f9e8bdc973048887290c9ab6171267d61d8838c4ece4de58c9ca8b78540bd52b1757495a27175057ec64

diff --git a/dev-java/openjdk/openjdk-8.362_p09.ebuild 
b/dev-java/openjdk/openjdk-8.362_p09.ebuild
new file mode 100644
index 000000000000..95b16bb09f4d
--- /dev/null
+++ b/dev-java/openjdk/openjdk-8.362_p09.ebuild
@@ -0,0 +1,229 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+inherit check-reqs eapi8-dosym flag-o-matic java-pkg-2 java-vm-2 
multiprocessing toolchain-funcs
+
+# don't change versioning scheme
+# to find correct _p number, look at
+# https://github.com/openjdk/jdk${SLOT}u/tags
+# you will see, for example, jdk-17.0.4.1-ga and jdk-17.0.4.1+1, both point
+# to exact same commit sha. we should always use the full version.
+# -ga tag is just for humans to easily identify General Availability release 
tag.
+# we need -ga tag to fetch tarball and unpack it, but exact number everywhere 
else to
+# set build version properly
+MY_PV="$(ver_rs 1 'u' 2 '-' ${PV%_p*}-ga)"
+SLOT="${PV%%[.+]*}"
+
+DESCRIPTION="Open source implementation of the Java programming language"
+HOMEPAGE="https://openjdk.org";
+SRC_URI="https://github.com/openjdk/jdk${SLOT}u/archive/refs/tags/jdk${MY_PV}.tar.gz
 -> ${P}.tar.gz"
+
+LICENSE="GPL-2"
+KEYWORDS="~amd64 ~arm64 ~ppc64 ~x86"
+IUSE="alsa debug cups doc examples headless-awt javafx +jbootstrap selinux 
source"
+
+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
+       virtual/pkgconfig
+       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}
+       )
+"
+
+BDEPEND="
+       virtual/pkgconfig
+"
+
+PDEPEND="javafx? ( dev-java/openjfx:${SLOT} )"
+
+S="${WORKDIR}/jdk${SLOT}u-jdk${MY_PV}"
+
+PATCHES=( "${FILESDIR}/openjdk-8-insantiate-arrayallocator.patch" )
+
+# 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}, bug #677876"
+       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
+
+       # 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
+
+       chmod +x configure || 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
+
+       # Strip some flags users may set, but should not. #818502
+       filter-flags -fexceptions
+
+       tc-export_build_env CC CXX PKG_CONFIG STRIP
+
+       local myconf=(
+                       --disable-ccache
+                       --disable-freetype-bundling
+                       --disable-precompiled-headers
+                       --enable-unlimited-crypto
+                       --with-boot-jdk="${JDK_HOME}"
+                       --with-extra-cflags="${CFLAGS}"
+                       --with-extra-cxxflags="${CXXFLAGS}"
+                       --with-extra-ldflags="${LDFLAGS}"
+                       --with-freetype-lib="$( $(tc-getPKG_CONFIG) 
--variable=libdir freetype2 )"
+                       --with-freetype-include="$( $(tc-getPKG_CONFIG) 
--variable=includedir freetype2)/freetype2"
+                       --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 '')
+                       $(tc-is-clang && echo "--with-toolchain-type=clang")
+               )
+
+       (
+               unset _JAVA_OPTIONS JAVA JAVA_TOOL_OPTIONS JAVAC MAKE XARGS
+               CFLAGS= CXXFLAGS= LDFLAGS= \
+               CONFIG_SITE=/dev/null \
+               CONFIG_SHELL="${BROOT}/bin/bash"
+               econf "${myconf[@]}"
+       )
+}
+
+src_compile() {
+       local myemakeargs=(
+               JOBS=$(makeopts_jobs)
+               LOG=debug
+               CFLAGS_WARNINGS_ARE_ERRORS= # No -Werror
+               NICE= # Use PORTAGE_NICENESS, don't adjust further down
+               $(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
+
+       # 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
+
+       dosym8 -r /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
+       einfo "JavaWebStart functionality provided by icedtea-web package"
+}

Reply via email to