public inbox for gentoo-commits@lists.gentoo.org
 help / color / mirror / Atom feed
From: "Miroslav Šulc" <fordfrog@gentoo.org>
To: gentoo-commits@lists.gentoo.org
Subject: [gentoo-commits] repo/gentoo:master commit in: dev-java/openjdk/
Date: Wed, 17 Jul 2024 10:30:37 +0000 (UTC)	[thread overview]
Message-ID: <1721212230.f40ab9a3192a40886034dbfd82ad4147775497d1.fordfrog@gentoo> (raw)

commit:     f40ab9a3192a40886034dbfd82ad4147775497d1
Author:     Volkmar W. Pogatzki <gentoo <AT> pogatzki <DOT> net>
AuthorDate: Wed Jul 17 05:54:24 2024 +0000
Commit:     Miroslav Šulc <fordfrog <AT> gentoo <DOT> org>
CommitDate: Wed Jul 17 10:30:30 2024 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=f40ab9a3

dev-java/openjdk: add 11.0.24_p8, 17.0.12_p7, 21.0.4_p7

Signed-off-by: Volkmar W. Pogatzki <gentoo <AT> pogatzki.net>
Signed-off-by: Miroslav Šulc <fordfrog <AT> gentoo.org>

 dev-java/openjdk/Manifest                  |   3 +
 dev-java/openjdk/openjdk-11.0.24_p8.ebuild | 311 ++++++++++++++++++++++++++++
 dev-java/openjdk/openjdk-17.0.12_p7.ebuild | 320 +++++++++++++++++++++++++++++
 dev-java/openjdk/openjdk-21.0.4_p7.ebuild  | 319 ++++++++++++++++++++++++++++
 4 files changed, 953 insertions(+)

diff --git a/dev-java/openjdk/Manifest b/dev-java/openjdk/Manifest
index 430e128de96e..65ee714997ee 100644
--- a/dev-java/openjdk/Manifest
+++ b/dev-java/openjdk/Manifest
@@ -1,7 +1,10 @@
 DIST openjdk-11.0.18-riscv.patch.xz 272672 BLAKE2B b079612032a5bf135b05bdd1da16f2823772a5d9a18447a435f191daf78c5429a15c2e9ea64758dc9b26ee2a88275532b4f27714b2a7e4489f920c0ed2f5003b SHA512 c0426f243c5aa581d90366cb01ce811e34883a9d8a0298cab420378470e8eb427a56932ca1fbb5ed57e7430be2b38c6bc4491028ebaa25be0a938ba0bb2baf45
 DIST openjdk-11.0.23_p9.tar.gz 116316363 BLAKE2B a3745b2afe9d2529daf89aceed43025aca72a353210b0987aacb32af971262077411e9a2b6cfd938ca9d0c93c8762759b9207a13cee0808288674671164e3a36 SHA512 3851063289042ed467a9cb636eba7170a0feeaa3e5d19bda6c30a186ea624e4ae1b308006652acb9c9820c2065382bd719ee130b7a1a0524fe25ecd639f8a51d
+DIST openjdk-11.0.24_p8.tar.gz 116418943 BLAKE2B cb768b202b42f426f4edaead16ba09800d86c10da4a664176842ee396332284d410191a55dbb35d7604272231e5b3daf8a75ddc03bb819d670622b7682eec7f6 SHA512 ce45efd934b9bacc56c468d92083a85de311b4436a519ae1d6038aff025c2fa8a811abca4cdd99aeb8c09455effff53500f96c287976cd2ae90d4e11da2385a3
 DIST openjdk-17.0.11_p9.tar.gz 106574173 BLAKE2B 3db4763527d1acb83a2d492c3e94dc571065b844cf2ac56b7377a821cf2cb48af405b9fef73f477502bedc2c119ac57a115315140af04d51dbab5a78dfa6c789 SHA512 77baa3ec3ff2d06b28121342357311d1d5ca2ddd9ac7982b1aa5fc745b49519d2f95d14226ad4ac413d9a0ecf0e49d15078cabbba0b2897d0c6883b92ef0b5e9
+DIST openjdk-17.0.12_p7.tar.gz 106597045 BLAKE2B f0e9baec472ecefbf28359abfc10757dc7cb2a6ddf8428086a6565831f1c13ee1a7cdb87b67d6b3840860ddbf2c74e80ece55f09238fddc2cb8fa77208695b9b SHA512 cc99e9742123f7d8ac7ad78abab0fbe5cff37999b9c06ad14851009a95c9868968e97dd0f3e4dea8bfa8578f8f903fccaa37134466a778375cdf24344138f1fc
 DIST openjdk-21.0.3_p9.tar.gz 112404688 BLAKE2B e73688fdd2e4f4da144f66058e4ff68da4a557d9c7693c7854ba6c7e1a12155abec4aa0fcd724f62333060c4b4f7488f827c1b5499fe5667743516101f7f2fa6 SHA512 efc2d03a7e7afed62a2cdc9f7707d056ed62d63f513394d7e3c6bbe11980ac492a2cad144021cea4180f4c93f1a481bdd65cb61156023a3f14ba596fd9c0eb60
+DIST openjdk-21.0.4_p7.tar.gz 112506384 BLAKE2B d58636bc9221d56afcf118a91e41326d2e086c9fe22675429ec50d0b62fefd9e2040140a9d99682547e8bf0d40fa4ca2cbcdf8be55b9a0556b95c90fc0a08d56 SHA512 507524d842fb7c371cf7d3163cdce87e9266d613998b797f2828178b35c087354ae30941384d5afd1d6e3982eddf5c9067553bc2b918a9e223b93893f7f27e76
 DIST openjdk-8.412_p08.tar.gz 93003614 BLAKE2B 71a3825bf69bb196ae219f5125e8452f634be2ff7b9f42a4829f6581f0a143bfec95013971c6f6b8f402c11efa34443f55a7f89d4133eac0b05a6d1cd6e0324d SHA512 d198f26474a4bd0b5e09c3c3aa53fbf77f217b8cd23499f7e661224048e925e0e020b28264b6ce7401baf83f8ffd8e3247788e2f5e7188509dea8b06f9fa0572
 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

diff --git a/dev-java/openjdk/openjdk-11.0.24_p8.ebuild b/dev-java/openjdk/openjdk-11.0.24_p8.ebuild
new file mode 100644
index 000000000000..7a870e1198b5
--- /dev/null
+++ b/dev-java/openjdk/openjdk-11.0.24_p8.ebuild
@@ -0,0 +1,311 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit check-reqs 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="${PV%_p*}-ga"
+
+# variable name format: <UPPERCASE_KEYWORD>_XPAK
+PPC64_XPAK="11.0.13_p8" # big-endian bootstrap tarball
+RISCV_XPAK="11.0.14_p9" # lp64d bootstrap tarball
+X86_XPAK="11.0.13_p8"
+
+# Usage: bootstrap_uri <keyword> <version> [extracond]
+# Example: $(bootstrap_uri ppc64 17.0.1_p12 big-endian)
+# Output: ppc64? ( big-endian? ( https://...17.0.1_p12-ppc64.tar.xz ) )
+bootstrap_uri() {
+	local baseuri="https://dev.gentoo.org/~arthurzam/distfiles/dev-java/${PN}/${PN}-bootstrap"
+	local suff="tar.xz"
+	local kw="${1:?${FUNCNAME[0]}: keyword not specified}"
+	local ver="${2:?${FUNCNAME[0]}: version not specified}"
+	local cond="${3-}"
+
+	# here be dragons
+	echo "${kw}? ( ${cond:+${cond}? (} ${baseuri}-${ver}-${kw}.${suff} ${cond:+) })"
+}
+
+DESCRIPTION="Open source implementation of the Java programming language"
+HOMEPAGE="https://openjdk.org"
+SRC_URI="
+	https://github.com/${PN}/jdk11u/archive/jdk-${MY_PV}.tar.gz
+		-> ${P}.tar.gz
+	!system-bootstrap? (
+		$(bootstrap_uri ppc64 ${PPC64_XPAK} big-endian)
+		$(bootstrap_uri riscv ${RISCV_XPAK})
+		$(bootstrap_uri x86 ${X86_XPAK})
+	)
+	riscv? ( https://dev.gentoo.org/~arthurzam/distfiles/dev-java/openjdk/openjdk-11.0.18-riscv.patch.xz )
+"
+S="${WORKDIR}/jdk${SLOT}u-jdk-${MY_PV}"
+
+LICENSE="GPL-2-with-classpath-exception"
+SLOT="${MY_PV%%[.+]*}"
+KEYWORDS="~amd64 ~arm ~arm64 ~ppc64 ~riscv ~x86"
+
+IUSE="alsa big-endian cups debug doc examples headless-awt javafx +jbootstrap lto selinux source system-bootstrap systemtap"
+
+REQUIRED_USE="
+	javafx? ( alsa !headless-awt )
+	!system-bootstrap? ( jbootstrap )
+"
+
+COMMON_DEPEND="
+	media-libs/freetype:2=
+	media-libs/giflib:0/7
+	media-libs/harfbuzz:=
+	media-libs/libpng:0=
+	media-libs/lcms:2=
+	sys-libs/zlib
+	media-libs/libjpeg-turbo:0=
+	systemtap? ( dev-debug/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}= )
+	system-bootstrap? (
+		|| (
+			dev-java/openjdk-bin:${SLOT}[gentoo-vm(+)]
+			dev-java/openjdk:${SLOT}[gentoo-vm(+)]
+		)
+	)
+"
+
+# 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}, bug #677876"
+	fi
+}
+
+pkg_setup() {
+	openjdk_check_requirements
+	java-vm-2_pkg_setup
+
+	[[ ${MERGE_TYPE} == "binary" ]] && return
+
+	JAVA_PKG_WANT_BUILD_VM="openjdk-${SLOT} openjdk-bin-${SLOT}"
+	JAVA_PKG_WANT_SOURCE="${SLOT}"
+	JAVA_PKG_WANT_TARGET="${SLOT}"
+
+	if use system-bootstrap; then
+		for vm in ${JAVA_PKG_WANT_BUILD_VM}; do
+			if [[ -d ${BROOT}/usr/lib/jvm/${vm} ]]; then
+				java-pkg-2_pkg_setup
+				return
+			fi
+		done
+	fi
+}
+
+src_prepare() {
+	use riscv && eapply "${WORKDIR}"/openjdk-11.0.18-riscv.patch
+	default
+	chmod +x configure || die
+}
+
+src_configure() {
+	if ! use system-bootstrap; then
+		local xpakvar="${ARCH^^}_XPAK"
+		export JDK_HOME="${WORKDIR}/openjdk-bootstrap-${!xpakvar}"
+	fi
+
+	# Work around stack alignment issue, bug #647954.
+	use x86 && append-flags -mincoming-stack-boundary=2
+
+	# bug 906987; append-cppflags doesnt work
+	use elibc_musl && append-flags -D_LARGEFILE64_SOURCE
+
+	# Strip some flags users may set, but should not. #818502
+	filter-flags -fexceptions
+
+	# Strip lto related flags, we rely on USE=lto and --with-jvm-features=link-time-opt
+	# https://bugs.gentoo.org/833097
+	# https://bugs.gentoo.org/833098
+	filter-lto
+	filter-flags -fdevirtualize-at-ltrans
+
+	# 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
+		--disable-precompiled-headers
+		--enable-full-docs=no
+		--with-boot-jdk="${JDK_HOME}"
+		--with-extra-cflags="${CFLAGS}"
+		--with-extra-cxxflags="${CXXFLAGS}"
+		--with-extra-ldflags="${LDFLAGS}"
+		--with-freetype="${XPAK_BOOTSTRAP:-system}"
+		--with-giflib="${XPAK_BOOTSTRAP:-system}"
+		--with-harfbuzz="${XPAK_BOOTSTRAP:-system}"
+		--with-lcms="${XPAK_BOOTSTRAP:-system}"
+		--with-libjpeg="${XPAK_BOOTSTRAP:-system}"
+		--with-libpng="${XPAK_BOOTSTRAP:-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="${XPAK_BOOTSTRAP:-system}"
+		--enable-dtrace=$(usex systemtap yes no)
+		--enable-headless-only=$(usex headless-awt yes no)
+		$(tc-is-clang && echo "--with-toolchain-type=clang")
+	)
+	! use riscv && myconf+=( --with-jvm-features=shenandoahgc )
+
+	use lto && myconf+=( --with-jvm-features=link-time-opt )
+
+	if use javafx; then
+		# this is not useful for users, just for upstream developers
+		# build system compares mesa version in md file
+		# https://bugs.gentoo.org/822612
+		export LEGAL_EXCLUDES=mesa3d.md
+
+		local zip="${EPREFIX}/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
+
+	if use !system-bootstrap ; then
+		addpredict /dev/random
+		addpredict /proc/self/coredump_filter
+	fi
+
+	(
+		unset _JAVA_OPTIONS JAVA JAVA_TOOL_OPTIONS JAVAC XARGS
+		CFLAGS= CXXFLAGS= LDFLAGS= \
+		CONFIG_SITE=/dev/null \
+		econf "${myconf[@]}"
+	)
+}
+
+src_compile() {
+	# Too brittle - gets confused by e.g. -Oline
+	export MAKEOPTS="-j$(makeopts_jobs) -l$(makeopts_loadavg)"
+	unset GNUMAKEFLAGS MAKEFLAGS
+
+	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 product-images)
+	)
+	emake "${myemakeargs[@]}" -j1
+}
+
+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 -r /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
+
+	java-vm_install-env "${FILESDIR}"/${PN}.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 -r /usr/share/doc/"${PF}" /usr/share/doc/"${PN}-${SLOT}"
+	fi
+}
+
+pkg_postinst() {
+	java-vm-2_pkg_postinst
+}

diff --git a/dev-java/openjdk/openjdk-17.0.12_p7.ebuild b/dev-java/openjdk/openjdk-17.0.12_p7.ebuild
new file mode 100644
index 000000000000..1c4f51f66acd
--- /dev/null
+++ b/dev-java/openjdk/openjdk-17.0.12_p7.ebuild
@@ -0,0 +1,320 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit check-reqs flag-o-matic java-pkg-2 java-vm-2 multiprocessing toolchain-funcs
+
+# variable name format: <UPPERCASE_KEYWORD>_XPAK
+ARM64_XPAK="17.0.2_p8" # musl bootstrap install
+PPC64_XPAK="17.0.1_p12" # big-endian bootstrap tarball
+RISCV_XPAK="17.0.3_p7"
+X86_XPAK="17.0.1_p12"
+
+# Usage: bootstrap_uri <keyword> <version> [extracond]
+# Example: $(bootstrap_uri ppc64 17.0.1_p12 big-endian)
+# Output: ppc64? ( big-endian? ( https://...17.0.1_p12-ppc64.tar.xz ) )
+bootstrap_uri() {
+	local baseuri="https://dev.gentoo.org/~arthurzam/distfiles/dev-java/${PN}/${PN}-bootstrap"
+	local suff="tar.xz"
+	local kw="${1:?${FUNCNAME[0]}: keyword not specified}"
+	local ver="${2:?${FUNCNAME[0]}: version not specified}"
+	local cond="${3-}"
+	[[ ${cond} == elibc_musl* ]] && local musl=yes
+
+	# here be dragons
+	echo "${kw}? ( ${cond:+${cond}? (} ${baseuri}-${ver}-${kw}${musl:+-musl}.${suff} ${cond:+) })"
+}
+
+# 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.
+MY_PV="${PV%_p*}-ga"
+
+DESCRIPTION="Open source implementation of the Java programming language"
+HOMEPAGE="https://openjdk.org"
+SRC_URI="
+	https://github.com/${PN}/jdk17u/archive/jdk-${MY_PV}.tar.gz
+		-> ${P}.tar.gz
+	!system-bootstrap? (
+		$(bootstrap_uri arm64 ${ARM64_XPAK} elibc_musl)
+		$(bootstrap_uri ppc64 ${PPC64_XPAK} big-endian)
+		$(bootstrap_uri x86 ${X86_XPAK})
+		$(bootstrap_uri riscv ${RISCV_XPAK})
+	)
+"
+S="${WORKDIR}/jdk${SLOT}u-jdk-${MY_PV//+/-}"
+
+LICENSE="GPL-2-with-classpath-exception"
+SLOT="${MY_PV%%[.+]*}"
+KEYWORDS="~amd64 ~arm ~arm64 ~ppc64 ~riscv ~x86"
+
+IUSE="alsa big-endian cups debug doc examples headless-awt javafx +jbootstrap lto selinux source system-bootstrap systemtap"
+
+REQUIRED_USE="
+	javafx? ( alsa !headless-awt )
+	!system-bootstrap? ( jbootstrap )
+"
+
+COMMON_DEPEND="
+	media-libs/freetype:2=
+	media-libs/giflib:0/7
+	media-libs/harfbuzz:=
+	media-libs/libpng:0=
+	media-libs/lcms:2=
+	sys-libs/zlib
+	media-libs/libjpeg-turbo:0=
+	systemtap? ( dev-debug/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}= )
+	system-bootstrap? (
+		|| (
+			dev-java/openjdk-bin:${SLOT}
+			dev-java/openjdk:${SLOT}
+		)
+	)
+"
+
+# 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}, bug #677876"
+	fi
+}
+
+pkg_setup() {
+	openjdk_check_requirements
+	java-vm-2_pkg_setup
+
+	[[ ${MERGE_TYPE} == "binary" ]] && return
+
+	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 ${BROOT}/usr/lib/jvm/${vm} ]]; then
+			java-pkg-2_pkg_setup
+			return
+		fi
+	done
+}
+
+src_prepare() {
+	default
+	chmod +x configure || die
+}
+
+src_configure() {
+	if has_version dev-java/openjdk:${SLOT}; then
+		export JDK_HOME=${BROOT}/usr/$(get_libdir)/openjdk-${SLOT}
+	elif use !system-bootstrap ; then
+		local xpakvar="${ARCH^^}_XPAK"
+		export JDK_HOME="${WORKDIR}/openjdk-bootstrap-${!xpakvar}"
+	else
+		JDK_HOME=$(best_version -b dev-java/openjdk-bin:${SLOT})
+		[[ -n ${JDK_HOME} ]] || die "Build VM not found!"
+		JDK_HOME=${JDK_HOME#*/}
+		JDK_HOME=${BROOT}/opt/${JDK_HOME%-r*}
+		export JDK_HOME
+	fi
+
+	# Work around stack alignment issue, bug #647954. in case we ever have x86
+	use x86 && append-flags -mincoming-stack-boundary=2
+
+	# bug 906987; append-cppflags doesnt work
+	use elibc_musl && append-flags -D_LARGEFILE64_SOURCE
+
+	# Strip some flags users may set, but should not. #818502
+	filter-flags -fexceptions
+
+	# Strip lto related flags, we rely on USE=lto and --with-jvm-features=link-time-opt
+	# https://bugs.gentoo.org/833097
+	# https://bugs.gentoo.org/833098
+	filter-lto
+	filter-flags -fdevirtualize-at-ltrans
+
+	# 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
+		--disable-precompiled-headers
+		--disable-warnings-as-errors
+		--enable-full-docs=no
+		--with-boot-jdk="${JDK_HOME}"
+		--with-extra-cflags="${CFLAGS}"
+		--with-extra-cxxflags="${CXXFLAGS}"
+		--with-extra-ldflags="${LDFLAGS}"
+		--with-freetype="${XPAK_BOOTSTRAP:-system}"
+		--with-giflib="${XPAK_BOOTSTRAP:-system}"
+		--with-harfbuzz="${XPAK_BOOTSTRAP:-system}"
+		--with-lcms="${XPAK_BOOTSTRAP:-system}"
+		--with-libjpeg="${XPAK_BOOTSTRAP:-system}"
+		--with-libpng="${XPAK_BOOTSTRAP:-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="${XPAK_BOOTSTRAP:-system}"
+		--enable-jvm-feature-dtrace=$(usex systemtap yes no)
+		--enable-headless-only=$(usex headless-awt yes no)
+		$(tc-is-clang && echo "--with-toolchain-type=clang")
+	)
+
+	use lto && myconf+=( --with-jvm-features=link-time-opt )
+
+	if use javafx; then
+		local zip="${EPREFIX}/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
+
+	if use !system-bootstrap ; then
+		addpredict /dev/random
+		addpredict /proc/self/coredump_filter
+	fi
+
+	(
+		unset _JAVA_OPTIONS JAVA JAVA_TOOL_OPTIONS JAVAC XARGS
+		CFLAGS= CXXFLAGS= LDFLAGS= \
+		CONFIG_SITE=/dev/null \
+		econf "${myconf[@]}"
+	)
+}
+
+src_compile() {
+	# Too brittle - gets confused by e.g. -Oline
+	export MAKEOPTS="-j$(makeopts_jobs) -l$(makeopts_loadavg)"
+	unset GNUMAKEFLAGS MAKEFLAGS
+
+	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 product-images)
+	)
+	emake "${myemakeargs[@]}" -j1
+}
+
+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 -r /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
+
+	java-vm_install-env "${FILESDIR}"/${PN}.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
+}

diff --git a/dev-java/openjdk/openjdk-21.0.4_p7.ebuild b/dev-java/openjdk/openjdk-21.0.4_p7.ebuild
new file mode 100644
index 000000000000..943ac23576da
--- /dev/null
+++ b/dev-java/openjdk/openjdk-21.0.4_p7.ebuild
@@ -0,0 +1,319 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit check-reqs flag-o-matic java-pkg-2 java-vm-2 multiprocessing toolchain-funcs
+
+# variable name format: <UPPERCASE_KEYWORD>_XPAK
+PPC64_XPAK="21.0.0_p35" # big-endian bootstrap tarball
+X86_XPAK="21.0.0_p35"
+
+# Usage: bootstrap_uri <keyword> <version> [extracond]
+# Example: $(bootstrap_uri ppc64 17.0.1_p12 big-endian)
+# Output: ppc64? ( big-endian? ( https://...17.0.1_p12-ppc64.tar.xz ) )
+bootstrap_uri() {
+	local baseuri="https://dev.gentoo.org/~arthurzam/distfiles/dev-java/${PN}/${PN}-bootstrap"
+	local suff="tar.xz"
+	local kw="${1:?${FUNCNAME[0]}: keyword not specified}"
+	local ver="${2:?${FUNCNAME[0]}: version not specified}"
+	local cond="${3-}"
+	[[ ${cond} == elibc_musl* ]] && local musl=yes
+
+	# here be dragons
+	echo "${kw}? ( ${cond:+${cond}? (} ${baseuri}-${ver}-${kw}${musl:+-musl}.${suff} ${cond:+) })"
+}
+
+# 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.
+MY_PV="${PV%_p*}-ga"
+
+DESCRIPTION="Open source implementation of the Java programming language"
+HOMEPAGE="https://openjdk.org"
+SRC_URI="
+	https://github.com/${PN}/jdk21u/archive/jdk-${MY_PV}.tar.gz
+		-> ${P}.tar.gz
+	!system-bootstrap? (
+		$(bootstrap_uri ppc64 ${PPC64_XPAK} big-endian)
+		$(bootstrap_uri x86 ${X86_XPAK})
+	)
+"
+S="${WORKDIR}/jdk${SLOT}u-jdk-${MY_PV//+/-}"
+
+LICENSE="GPL-2-with-classpath-exception"
+SLOT="${MY_PV%%[.+]*}"
+KEYWORDS="~amd64 ~arm64 ~ppc64 ~x86"
+
+IUSE="alsa big-endian cups debug doc examples headless-awt javafx +jbootstrap lto selinux source +system-bootstrap systemtap"
+
+REQUIRED_USE="
+	javafx? ( alsa !headless-awt )
+	!system-bootstrap? ( jbootstrap )
+	!system-bootstrap? ( || ( ppc64 x86 ) )
+"
+
+COMMON_DEPEND="
+	media-libs/freetype:2=
+	media-libs/giflib:0/7
+	media-libs/harfbuzz:=
+	media-libs/libpng:0=
+	media-libs/lcms:2=
+	sys-libs/zlib
+	media-libs/libjpeg-turbo:0=
+	systemtap? ( dev-debug/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}= )
+	system-bootstrap? (
+		|| (
+			dev-java/openjdk-bin:${SLOT}
+			dev-java/openjdk:${SLOT}
+		)
+	)
+"
+
+# 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}, bug #677876"
+	fi
+}
+
+pkg_setup() {
+	openjdk_check_requirements
+	java-vm-2_pkg_setup
+
+	[[ ${MERGE_TYPE} == "binary" ]] && return
+
+	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 ${BROOT}/usr/lib/jvm/${vm} ]]; then
+			java-pkg-2_pkg_setup
+			return
+		fi
+	done
+}
+
+src_prepare() {
+	default
+	chmod +x configure || die
+}
+
+src_configure() {
+	if has_version dev-java/openjdk:${SLOT}; then
+		export JDK_HOME=${BROOT}/usr/$(get_libdir)/openjdk-${SLOT}
+	elif use !system-bootstrap ; then
+		local xpakvar="${ARCH^^}_XPAK"
+		export JDK_HOME="${WORKDIR}/openjdk-bootstrap-${!xpakvar}"
+	else
+		JDK_HOME=$(best_version -b dev-java/openjdk-bin:${SLOT})
+		[[ -n ${JDK_HOME} ]] || die "Build VM not found!"
+		JDK_HOME=${JDK_HOME#*/}
+		JDK_HOME=${BROOT}/opt/${JDK_HOME%-r*}
+		export JDK_HOME
+	fi
+
+	# Work around stack alignment issue, bug #647954. in case we ever have x86
+	use x86 && append-flags -mincoming-stack-boundary=2
+
+	# bug 906987; append-cppflags doesnt work
+	use elibc_musl && append-flags -D_LARGEFILE64_SOURCE
+
+	# Strip some flags users may set, but should not. #818502
+	filter-flags -fexceptions
+
+	# Strip lto related flags, we rely on USE=lto and --with-jvm-features=link-time-opt
+	# https://bugs.gentoo.org/833097
+	# https://bugs.gentoo.org/833098
+	filter-lto
+	filter-flags -fdevirtualize-at-ltrans
+
+	# 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
+		--disable-precompiled-headers
+		--disable-warnings-as-errors
+		--enable-full-docs=no
+		--with-boot-jdk="${JDK_HOME}"
+		--with-extra-cflags="${CFLAGS}"
+		--with-extra-cxxflags="${CXXFLAGS}"
+		--with-extra-ldflags="${LDFLAGS}"
+		--with-freetype="${XPAK_BOOTSTRAP:-system}"
+		--with-giflib="${XPAK_BOOTSTRAP:-system}"
+		--with-harfbuzz="${XPAK_BOOTSTRAP:-system}"
+		--with-lcms="${XPAK_BOOTSTRAP:-system}"
+		--with-libjpeg="${XPAK_BOOTSTRAP:-system}"
+		--with-libpng="${XPAK_BOOTSTRAP:-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="${XPAK_BOOTSTRAP:-system}"
+		--enable-jvm-feature-dtrace=$(usex systemtap yes no)
+		--enable-headless-only=$(usex headless-awt yes no)
+		$(tc-is-clang && echo "--with-toolchain-type=clang")
+	)
+
+	use riscv && myconf+=( --with-boot-jdk-jvmargs="-Djdk.lang.Process.launchMechanism=vfork" )
+
+	use lto && myconf+=( --with-jvm-features=link-time-opt )
+
+	if use javafx; then
+		local zip="${EPREFIX}/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
+
+	if use !system-bootstrap ; then
+		addpredict /dev/random
+		addpredict /proc/self/coredump_filter
+	fi
+
+	(
+		unset _JAVA_OPTIONS JAVA JAVA_TOOL_OPTIONS JAVAC XARGS
+		CFLAGS= CXXFLAGS= LDFLAGS= \
+		CONFIG_SITE=/dev/null \
+		econf "${myconf[@]}"
+	)
+}
+
+src_compile() {
+	# Too brittle - gets confused by e.g. -Oline
+	export MAKEOPTS="-j$(makeopts_jobs) -l$(makeopts_loadavg)"
+	unset GNUMAKEFLAGS MAKEFLAGS
+
+	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 product-images)
+	)
+	emake "${myemakeargs[@]}" -j1
+}
+
+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 -r /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
+
+	java-vm_install-env "${FILESDIR}"/${PN}.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
+}


             reply	other threads:[~2024-07-17 10:30 UTC|newest]

Thread overview: 338+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2024-07-17 10:30 Miroslav Šulc [this message]
  -- strict thread matches above, loose matches on Subject: below --
2024-10-18 16:40 [gentoo-commits] repo/gentoo:master commit in: dev-java/openjdk/ Miroslav Šulc
2024-10-18 16:40 Miroslav Šulc
2024-10-18 16:40 Miroslav Šulc
2024-10-18 15:40 Arthur Zamarin
2024-10-18 15:40 Arthur Zamarin
2024-10-18 15:40 Arthur Zamarin
2024-10-18 10:40 Sam James
2024-10-18 10:40 Sam James
2024-10-18 10:40 Sam James
2024-10-18 10:27 Sam James
2024-10-18 10:27 Sam James
2024-10-18 10:27 Sam James
2024-10-18 10:27 Sam James
2024-10-18 10:27 Sam James
2024-10-18 10:27 Sam James
2024-10-17 11:30 Miroslav Šulc
2024-10-17 11:29 Miroslav Šulc
2024-10-17 11:28 Miroslav Šulc
2024-10-17 10:55 Miroslav Šulc
2024-10-17 10:55 Miroslav Šulc
2024-10-17  9:51 Miroslav Šulc
2024-10-17  9:46 Miroslav Šulc
2024-09-19  3:09 Sam James
2024-09-19  3:00 Sam James
2024-09-11  0:15 Sam James
2024-08-31 10:34 Arthur Zamarin
2024-08-31  2:49 Sam James
2024-08-31  2:23 Sam James
2024-08-27 19:21 Eli Schwartz
2024-08-26  8:29 Miroslav Šulc
2024-08-25  5:26 Arthur Zamarin
2024-08-25  5:26 Arthur Zamarin
2024-08-25  5:26 Arthur Zamarin
2024-08-25  0:34 Sam James
2024-08-25  0:34 Sam James
2024-08-25  0:34 Sam James
2024-08-24 21:42 Jakov Smolić
2024-08-24 21:42 Jakov Smolić
2024-08-24 21:42 Jakov Smolić
2024-08-24 21:42 Jakov Smolić
2024-08-24 21:42 Jakov Smolić
2024-08-24 21:42 Jakov Smolić
2024-07-25 22:01 Miroslav Šulc
2024-07-17 10:30 Miroslav Šulc
2024-07-17 10:30 Miroslav Šulc
2024-06-12  7:02 Arthur Zamarin
2024-06-12  2:43 Sam James
2024-06-12  2:43 Sam James
2024-06-08  7:12 Sam James
2024-06-08  7:12 Sam James
2024-05-17  9:28 Miroslav Šulc
2024-05-15 12:06 Sam James
2024-05-15 12:06 Sam James
2024-05-15 10:31 Sam James
2024-05-15 10:31 Sam James
2024-05-09 11:42 Florian Schmaus
2024-05-09 11:42 Florian Schmaus
2024-04-14 13:52 Arthur Zamarin
2024-04-11 14:41 Arthur Zamarin
2024-04-11 14:41 Arthur Zamarin
2024-04-08  7:15 Miroslav Šulc
2024-04-05  8:03 Miroslav Šulc
2024-04-05  5:16 Arthur Zamarin
2024-04-05  5:16 Arthur Zamarin
2024-04-05  5:16 Arthur Zamarin
2024-04-05  5:16 Arthur Zamarin
2024-04-05  5:16 Arthur Zamarin
2024-04-05  5:16 Arthur Zamarin
2024-04-05  0:53 Sam James
2024-04-05  0:53 Sam James
2024-03-10 14:29 Miroslav Šulc
2024-03-09  8:26 Miroslav Šulc
2024-03-06 18:46 Sam James
2024-03-06 18:46 Sam James
2024-03-06 17:36 Sam James
2024-03-06 16:54 Sam James
2024-03-06 16:25 Sam James
2024-03-06 16:25 Sam James
2024-03-06 16:25 Sam James
2024-03-06 16:02 Sam James
2024-03-06 15:45 Sam James
2024-03-03 16:46 Andreas K. Hüttel
2024-02-19  9:03 Miroslav Šulc
2024-02-16 11:22 Miroslav Šulc
2023-10-26  7:26 Miroslav Šulc
2023-10-25 15:33 Arthur Zamarin
2023-10-25 15:33 Arthur Zamarin
2023-10-25 15:33 Arthur Zamarin
2023-10-25 15:33 Arthur Zamarin
2023-10-25 15:33 Arthur Zamarin
2023-10-25 15:33 Arthur Zamarin
2023-10-25 15:33 Arthur Zamarin
2023-10-25 15:33 Arthur Zamarin
2023-10-25 15:33 Arthur Zamarin
2023-10-25 15:33 Arthur Zamarin
2023-10-25 15:33 Arthur Zamarin
2023-10-25 15:33 Arthur Zamarin
2023-09-21 23:32 Georgy Yakovlev
2023-09-21 23:32 Georgy Yakovlev
2023-09-21 23:32 Georgy Yakovlev
2023-09-21 23:32 Georgy Yakovlev
2023-06-26 21:36 Georgy Yakovlev
2023-06-26 21:36 Georgy Yakovlev
2023-06-26 21:36 Georgy Yakovlev
2023-06-24  2:59 Sam James
2023-06-11 22:27 Sam James
2023-06-11 21:10 Sam James
2023-04-06  0:27 Georgy Yakovlev
2023-03-15 16:37 Arthur Zamarin
2023-01-27 20:35 Georgy Yakovlev
2023-01-22 23:13 Georgy Yakovlev
2023-01-22 23:13 Georgy Yakovlev
2023-01-22 23:13 Georgy Yakovlev
2023-01-22 23:13 Georgy Yakovlev
2023-01-22  6:04 Sam James
2023-01-22  6:04 Sam James
2023-01-22  6:04 Sam James
2023-01-22  6:04 Sam James
2023-01-22  6:04 Sam James
2023-01-22  6:04 Sam James
2023-01-22  2:25 Sam James
2023-01-22  2:25 Sam James
2023-01-22  2:25 Sam James
2023-01-21 22:39 Georgy Yakovlev
2023-01-21 22:39 Georgy Yakovlev
2023-01-21 22:39 Georgy Yakovlev
2023-01-19 21:40 Georgy Yakovlev
2023-01-19 21:40 Georgy Yakovlev
2023-01-19 21:40 Georgy Yakovlev
2022-11-18 17:52 Georgy Yakovlev
2022-11-18 17:52 Georgy Yakovlev
2022-11-18 17:52 Georgy Yakovlev
2022-11-18 17:52 Georgy Yakovlev
2022-11-18 17:52 Georgy Yakovlev
2022-11-11 12:34 Georgy Yakovlev
2022-11-11 12:34 Georgy Yakovlev
2022-11-11 12:34 Georgy Yakovlev
2022-11-11 12:34 Georgy Yakovlev
2022-09-13 23:17 Georgy Yakovlev
2022-09-13 22:59 Georgy Yakovlev
2022-09-13 22:59 Georgy Yakovlev
2022-09-13 22:59 Georgy Yakovlev
2022-09-12 18:18 Florian Schmaus
2022-09-12 18:18 Florian Schmaus
2022-07-22 18:13 Jakov Smolić
2022-07-04 10:44 Georgy Yakovlev
2022-07-04 10:44 Georgy Yakovlev
2022-07-04 10:44 Georgy Yakovlev
2022-07-01 23:50 Mike Gilbert
2022-06-19  5:17 Sam James
2022-05-24 16:44 Georgy Yakovlev
2022-05-24 16:44 Georgy Yakovlev
2022-05-24 16:44 Georgy Yakovlev
2022-05-24 16:44 Georgy Yakovlev
2022-05-23 12:03 Jakov Smolić
2022-05-23 12:03 Jakov Smolić
2022-05-23 12:03 Jakov Smolić
2022-05-22 20:08 Jakov Smolić
2022-05-22 20:08 Jakov Smolić
2022-05-22 20:08 Jakov Smolić
2022-05-22 18:46 Sam James
2022-05-22 18:46 Sam James
2022-05-22 18:46 Sam James
2022-05-22 11:46 Georgy Yakovlev
2022-05-22 11:46 Georgy Yakovlev
2022-05-22 11:46 Georgy Yakovlev
2022-05-21 20:05 Arthur Zamarin
2022-05-21 20:05 Arthur Zamarin
2022-05-13  7:16 Florian Schmaus
2022-05-11 20:41 Georgy Yakovlev
2022-05-11 20:41 Georgy Yakovlev
2022-05-11 20:41 Georgy Yakovlev
2022-05-11 20:41 Georgy Yakovlev
2022-05-11 20:41 Georgy Yakovlev
2022-05-11 20:41 Georgy Yakovlev
2022-05-01 20:47 Georgy Yakovlev
2022-03-27 17:07 Arthur Zamarin
2022-02-16 20:25 Georgy Yakovlev
2022-02-16 20:25 Georgy Yakovlev
2022-02-16 20:25 Georgy Yakovlev
2022-02-02 23:14 Georgy Yakovlev
2022-02-02 20:52 Arthur Zamarin
2022-02-02 20:52 Arthur Zamarin
2022-02-02 20:52 Arthur Zamarin
2022-02-02  6:27 Sam James
2022-02-02  6:27 Sam James
2022-02-02  6:27 Sam James
2022-02-02  6:27 Sam James
2022-01-31  6:30 Georgy Yakovlev
2022-01-31  6:30 Georgy Yakovlev
2022-01-27 23:57 Georgy Yakovlev
2022-01-27 23:57 Georgy Yakovlev
2022-01-27 21:32 Georgy Yakovlev
2022-01-22 21:38 Georgy Yakovlev
2022-01-21 14:20 Georgy Yakovlev
2022-01-20 19:15 Georgy Yakovlev
2022-01-20  9:57 Georgy Yakovlev
2022-01-20  9:57 Georgy Yakovlev
2022-01-20  8:57 Georgy Yakovlev
2022-01-20  7:23 Georgy Yakovlev
2022-01-20  7:23 Georgy Yakovlev
2022-01-20  7:23 Georgy Yakovlev
2022-01-20  7:23 Georgy Yakovlev
2022-01-20  7:23 Georgy Yakovlev
2022-01-20  7:23 Georgy Yakovlev
2022-01-20  7:23 Georgy Yakovlev
2022-01-20  7:23 Georgy Yakovlev
2022-01-14 11:39 Georgy Yakovlev
2022-01-08  0:35 Georgy Yakovlev
2021-12-26 23:23 Georgy Yakovlev
2021-12-15 13:40 Jakov Smolić
2021-12-15  5:44 Georgy Yakovlev
2021-12-15  4:33 Arthur Zamarin
2021-12-01 11:46 Georgy Yakovlev
2021-12-01 11:46 Georgy Yakovlev
2021-12-01 11:42 Georgy Yakovlev
2021-12-01 11:42 Georgy Yakovlev
2021-12-01  9:02 Agostino Sarubbo
2021-11-30 20:50 Arthur Zamarin
2021-11-30 20:50 Arthur Zamarin
2021-11-30 14:49 Agostino Sarubbo
2021-11-18  4:42 Georgy Yakovlev
2021-11-18  4:42 Georgy Yakovlev
2021-11-18  4:42 Georgy Yakovlev
2021-11-18  4:42 Georgy Yakovlev
2021-11-10  7:05 Agostino Sarubbo
2021-11-09  3:06 Georgy Yakovlev
2021-11-09  3:06 Georgy Yakovlev
2021-11-09  3:06 Georgy Yakovlev
2021-11-09  3:06 Georgy Yakovlev
2021-11-09  2:49 Georgy Yakovlev
2021-11-09  2:49 Georgy Yakovlev
2021-11-09  2:49 Georgy Yakovlev
2021-10-19 18:23 Georgy Yakovlev
2021-10-16 17:50 Georgy Yakovlev
2021-10-01 23:42 Sam James
2021-10-01 23:42 Sam James
2021-09-30 20:51 Agostino Sarubbo
2021-07-27  1:26 Georgy Yakovlev
2021-06-03  7:25 Georgy Yakovlev
2021-05-25 18:56 Georgy Yakovlev
2021-05-25 12:33 Sam James
2021-05-25 11:30 Sam James
2021-05-25 10:34 Sam James
2021-05-15 17:59 Sam James
2021-05-09  9:17 Agostino Sarubbo
2021-04-28 16:46 Mikle Kolyada
2021-04-27 21:54 Georgy Yakovlev
2021-04-27 21:54 Georgy Yakovlev
2021-04-27 20:13 Georgy Yakovlev
2021-04-27 19:23 Georgy Yakovlev
2021-04-27 18:32 Georgy Yakovlev
2021-04-27 18:28 Georgy Yakovlev
2021-04-25 15:13 Georgy Yakovlev
2021-04-25 15:13 Georgy Yakovlev
2021-02-21 19:53 Georgy Yakovlev
2021-02-12  2:15 Georgy Yakovlev
2021-02-12  2:15 Georgy Yakovlev
2020-10-29  2:07 Georgy Yakovlev
2020-10-29  1:22 Sam James
2020-10-28 18:52 Georgy Yakovlev
2020-10-26 12:11 Sam James
2020-10-25 23:08 Thomas Deutschmann
2020-10-23  5:44 Georgy Yakovlev
2020-10-23  5:44 Georgy Yakovlev
2020-09-24  0:09 Georgy Yakovlev
2020-09-19  3:12 Georgy Yakovlev
2020-09-17 22:13 Georgy Yakovlev
2020-09-17  7:12 Georgy Yakovlev
2020-09-05  6:32 Georgy Yakovlev
2020-08-04 21:58 Georgy Yakovlev
2020-08-04  2:43 Sam James
2020-08-04  0:35 Sam James
2020-07-31  9:22 Georgy Yakovlev
2020-07-27 13:54 Sam James
2020-07-14 22:02 Georgy Yakovlev
2020-07-14 22:00 Georgy Yakovlev
2020-05-11  4:43 Georgy Yakovlev
2020-05-10  7:58 Georgy Yakovlev
2020-05-10  7:58 Georgy Yakovlev
2020-05-08  6:38 Agostino Sarubbo
2020-04-21 20:27 Georgy Yakovlev
2020-04-21 20:27 Georgy Yakovlev
2020-03-28  5:27 Georgy Yakovlev
2020-03-17  1:02 Georgy Yakovlev
2020-03-05  6:09 Georgy Yakovlev
2020-03-05  5:26 Georgy Yakovlev
2020-03-05  5:26 Georgy Yakovlev
2020-03-04 13:00 Agostino Sarubbo
2020-01-28  8:55 Georgy Yakovlev
2020-01-22  1:26 Georgy Yakovlev
2020-01-22  1:26 Georgy Yakovlev
2020-01-21 22:31 Georgy Yakovlev
2020-01-21 18:28 Georgy Yakovlev
2020-01-21 10:55 Georgy Yakovlev
2020-01-07 20:13 Georgy Yakovlev
2019-12-29  8:36 Georgy Yakovlev
2019-12-29  8:36 Georgy Yakovlev
2019-12-03  1:30 Georgy Yakovlev
2019-11-11 15:04 Aaron Bauman
2019-10-30 12:26 Agostino Sarubbo
2019-10-25 18:55 Georgy Yakovlev
2019-10-25 18:55 Georgy Yakovlev
2019-09-16 18:20 Georgy Yakovlev
2019-07-30 17:01 Georgy Yakovlev
2019-07-28 21:17 Georgy Yakovlev
2019-07-28 21:17 Georgy Yakovlev
2019-06-23  3:19 Georgy Yakovlev
2019-06-23  3:19 Georgy Yakovlev
2019-06-01 11:35 Georgy Yakovlev
2019-05-31 18:44 Georgy Yakovlev
2019-05-31 18:44 Georgy Yakovlev
2019-05-14  1:34 Georgy Yakovlev
2019-05-14  1:34 Georgy Yakovlev
2019-05-14  1:34 Georgy Yakovlev
2019-05-13 18:48 Georgy Yakovlev
2019-05-13 18:48 Georgy Yakovlev
2019-05-13 18:48 Georgy Yakovlev
2019-05-13 18:48 Georgy Yakovlev
2019-05-09 23:05 Georgy Yakovlev
2019-05-09 23:05 Georgy Yakovlev
2019-05-09 19:02 Georgy Yakovlev
2019-05-09 19:02 Georgy Yakovlev
2019-05-09 19:02 Georgy Yakovlev
2019-05-09 19:02 Georgy Yakovlev
2019-04-18 18:54 Georgy Yakovlev
2019-04-18 18:54 Georgy Yakovlev
2019-03-08  4:40 Georgy Yakovlev
2019-03-05 23:00 Georgy Yakovlev
2019-02-23 20:26 Georgy Yakovlev
2019-02-13 20:43 Georgy Yakovlev
2019-02-05  5:15 Georgy Yakovlev
2019-02-04 19:45 Georgy Yakovlev
2019-01-28  3:23 Georgy Yakovlev
2019-01-18  6:12 Georgy Yakovlev
2019-01-11 21:34 Georgy Yakovlev
2018-11-09 22:48 James Le Cuirot

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=1721212230.f40ab9a3192a40886034dbfd82ad4147775497d1.fordfrog@gentoo \
    --to=fordfrog@gentoo.org \
    --cc=gentoo-commits@lists.gentoo.org \
    --cc=gentoo-dev@lists.gentoo.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox