public inbox for gentoo-commits@lists.gentoo.org
 help / color / mirror / Atom feed
* [gentoo-commits] repo/gentoo:master commit in: eclass/
@ 2017-11-30 19:10 Ulrich Müller
  0 siblings, 0 replies; 6131+ messages in thread
From: Ulrich Müller @ 2017-11-30 19:10 UTC (permalink / raw
  To: gentoo-commits

commit:     fd0904c4a89bbe6a7ec976ee8b832356d7944d29
Author:     Ulrich Müller <ulm <AT> gentoo <DOT> org>
AuthorDate: Thu Nov 23 23:38:13 2017 +0000
Commit:     Ulrich Müller <ulm <AT> gentoo <DOT> org>
CommitDate: Thu Nov 30 19:09:27 2017 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=fd0904c4

eutils.eclass: Remove validate_desktop_entries function.

This function is no longer used in the tree. It was deprecated more
than 8 months ago in commit 650a1ebe8f63d3750908142e2117b24a8efc9403.

 eclass/eutils.eclass | 30 ------------------------------
 1 file changed, 30 deletions(-)

diff --git a/eclass/eutils.eclass b/eclass/eutils.eclass
index 7fd4b847a64..972a2138aad 100644
--- a/eclass/eutils.eclass
+++ b/eclass/eutils.eclass
@@ -314,36 +314,6 @@ _eutils_eprefix_init() {
 	has "${EAPI:-0}" 0 1 2 && : ${ED:=${D}} ${EPREFIX:=} ${EROOT:=${ROOT}}
 }
 
-# @FUNCTION: validate_desktop_entries
-# @USAGE: [directories]
-# @DESCRIPTION:
-# Validate desktop entries using desktop-file-utils
-validate_desktop_entries() {
-	eqawarn "validate_desktop_entries is deprecated and should be not be used."
-	eqawarn ".desktop file validation is done implicitly by Portage now."
-
-	_eutils_eprefix_init
-	if [[ -x "${EPREFIX}"/usr/bin/desktop-file-validate ]] ; then
-		einfo "Checking desktop entry validity"
-		local directories=""
-		for d in /usr/share/applications $@ ; do
-			[[ -d ${ED}${d} ]] && directories="${directories} ${ED}${d}"
-		done
-		if [[ -n ${directories} ]] ; then
-			for FILE in $(find ${directories} -name "*\.desktop" \
-							-not -path '*.hidden*' | sort -u 2>/dev/null)
-			do
-				local temp=$(desktop-file-validate ${FILE} | grep -v "warning:" | \
-								sed -e "s|error: ||" -e "s|${FILE}:|--|g" )
-				[[ -n $temp ]] && elog ${temp/--/${FILE/${ED}/}:}
-			done
-		fi
-		echo ""
-	else
-		einfo "Passing desktop entry validity check. Install dev-util/desktop-file-utils, if you want to help to improve Gentoo."
-	fi
-}
-
 # @FUNCTION: make_session_desktop
 # @USAGE: <title> <command> [command args...]
 # @DESCRIPTION:


^ permalink raw reply related	[flat|nested] 6131+ messages in thread

* [gentoo-commits] repo/gentoo:master commit in: eclass/
@ 2023-07-17  9:44 Michał Górny
  0 siblings, 0 replies; 6131+ messages in thread
From: Michał Górny @ 2023-07-17  9:44 UTC (permalink / raw
  To: gentoo-commits

commit:     d2da31f41428439e273db7f1a8c8c3ff883641ed
Author:     Michał Górny <mgorny <AT> gentoo <DOT> org>
AuthorDate: Wed Jul 12 12:19:36 2023 +0000
Commit:     Michał Górny <mgorny <AT> gentoo <DOT> org>
CommitDate: Mon Jul 17 09:44:19 2023 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=d2da31f4

distutils-r1.eclass: Disable LTO when using cargo.eclass

Strip LTO flags when cargo.eclass is inherited.  This means that Rust
extensions are being built, and linking them with C/C++ style LTO
results in broken shared libraries.

Closes: https://bugs.gentoo.org/910220
Signed-off-by: Michał Górny <mgorny <AT> gentoo.org>

 eclass/distutils-r1.eclass | 7 +++++++
 1 file changed, 7 insertions(+)

diff --git a/eclass/distutils-r1.eclass b/eclass/distutils-r1.eclass
index 924e83b54ad8..e4f0589e191b 100644
--- a/eclass/distutils-r1.eclass
+++ b/eclass/distutils-r1.eclass
@@ -191,6 +191,7 @@ esac
 if [[ -z ${_DISTUTILS_R1_ECLASS} ]]; then
 _DISTUTILS_R1_ECLASS=1
 
+inherit flag-o-matic
 inherit multibuild multilib multiprocessing ninja-utils toolchain-funcs
 
 if [[ ! ${DISTUTILS_SINGLE_IMPL} ]]; then
@@ -1836,6 +1837,12 @@ distutils-r1_run_phase() {
 		local -x CYTHON_FORCE_REGEN=1
 	fi
 
+	# Rust extensions are incompatible with C/C++ LTO compiler
+	# see e.g. https://bugs.gentoo.org/910220
+	if has cargo ${INHERITED}; then
+		filter-lto
+	fi
+
 	# How to build Python modules in different worlds...
 	local ldopts
 	case "${CHOST}" in


^ permalink raw reply related	[flat|nested] 6131+ messages in thread

* [gentoo-commits] repo/gentoo:master commit in: eclass/
@ 2023-07-17  9:44 Michał Górny
  0 siblings, 0 replies; 6131+ messages in thread
From: Michał Górny @ 2023-07-17  9:44 UTC (permalink / raw
  To: gentoo-commits

commit:     ee468eec11953a67f877bc7e15079f9dcdc7ddaa
Author:     Michał Górny <mgorny <AT> gentoo <DOT> org>
AuthorDate: Sat Jul 15 15:51:25 2023 +0000
Commit:     Michał Górny <mgorny <AT> gentoo <DOT> org>
CommitDate: Mon Jul 17 09:44:22 2023 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=ee468eec

python-utils-r1.eclass: Loosen minimal Python versions

Loosen minimal Python versions to accept any version in a given slot.
Lower bounds are cumbersome to maintain and cause problems when
upgrading outdated systems, particularly when sys-libs/glibc
is involved.

We could technically apply some hack to make any-r1 dependency checks
to conditionally ignore minimal versions but that sounds like
unnecessary complexity.  In the end, minimum versions were primarily
enforced to make sure users got the latest bugfixes but that doesn't
seem strictly necessary.

Closes: https://bugs.gentoo.org/910288
Signed-off-by: Michał Górny <mgorny <AT> gentoo.org>
Closes: https://github.com/gentoo/gentoo/pull/31796
Signed-off-by: Michał Górny <mgorny <AT> gentoo.org>

 eclass/python-any-r1.eclass   |  6 +++---
 eclass/python-r1.eclass       |  2 +-
 eclass/python-utils-r1.eclass | 12 +++++-------
 3 files changed, 9 insertions(+), 11 deletions(-)

diff --git a/eclass/python-any-r1.eclass b/eclass/python-any-r1.eclass
index d7d44a87f516..4e2e12e228ad 100644
--- a/eclass/python-any-r1.eclass
+++ b/eclass/python-any-r1.eclass
@@ -1,4 +1,4 @@
-# Copyright 1999-2022 Gentoo Authors
+# Copyright 1999-2023 Gentoo Authors
 # Distributed under the terms of the GNU General Public License v2
 
 # @ECLASS: python-any-r1.eclass
@@ -176,7 +176,7 @@ _python_any_set_globals() {
 		_python_export "${i}" PYTHON_PKG_DEP
 
 		# note: need to strip '=' slot operator for || deps
-		deps="${PYTHON_PKG_DEP/:0=/:0} ${deps}"
+		deps="${PYTHON_PKG_DEP/:=} ${deps}"
 	done
 	deps="|| ( ${deps})"
 
@@ -259,7 +259,7 @@ python_gen_any_dep() {
 		local i_depstr=${depstr//\$\{PYTHON_USEDEP\}/${PYTHON_USEDEP}}
 		i_depstr=${i_depstr//\$\{PYTHON_SINGLE_USEDEP\}/${PYTHON_SINGLE_USEDEP}}
 		# note: need to strip '=' slot operator for || deps
-		out="( ${PYTHON_PKG_DEP%=} ${i_depstr} ) ${out}"
+		out="( ${PYTHON_PKG_DEP%:=} ${i_depstr} ) ${out}"
 	done
 	echo "|| ( ${out})"
 }

diff --git a/eclass/python-r1.eclass b/eclass/python-r1.eclass
index 4758defe6493..b816e3b6f855 100644
--- a/eclass/python-r1.eclass
+++ b/eclass/python-r1.eclass
@@ -522,7 +522,7 @@ python_gen_any_dep() {
 			local i_depstr=${depstr//\$\{PYTHON_USEDEP\}/${PYTHON_USEDEP}}
 			i_depstr=${i_depstr//\$\{PYTHON_SINGLE_USEDEP\}/${PYTHON_SINGLE_USEDEP}}
 			# note: need to strip '=' slot operator for || deps
-			out="( ${PYTHON_PKG_DEP/:0=/:0} ${i_depstr} ) ${out}"
+			out="( ${PYTHON_PKG_DEP/:=} ${i_depstr} ) ${out}"
 		fi
 	done
 	echo "|| ( ${out})"

diff --git a/eclass/python-utils-r1.eclass b/eclass/python-utils-r1.eclass
index a395538be39c..a883135eaa41 100644
--- a/eclass/python-utils-r1.eclass
+++ b/eclass/python-utils-r1.eclass
@@ -446,14 +446,12 @@ _python_export() {
 			PYTHON_PKG_DEP)
 				local d
 				case ${impl} in
-					python3.10)
-						PYTHON_PKG_DEP=">=dev-lang/python-3.10.12:3.10";;
-					python3.11)
-						PYTHON_PKG_DEP=">=dev-lang/python-3.11.4:3.11";;
-					python3.12)
-						PYTHON_PKG_DEP=">=dev-lang/python-3.12.0_beta3:3.12";;
+					python*)
+						PYTHON_PKG_DEP="dev-lang/python:${impl#python}"
+						;;
 					pypy3)
-						PYTHON_PKG_DEP='>=dev-python/pypy3-7.3.12:0=';;
+						PYTHON_PKG_DEP="dev-python/${impl}:="
+						;;
 					*)
 						die "Invalid implementation: ${impl}"
 				esac


^ permalink raw reply related	[flat|nested] 6131+ messages in thread

* [gentoo-commits] repo/gentoo:master commit in: eclass/
@ 2023-07-17  9:44 Michał Górny
  0 siblings, 0 replies; 6131+ messages in thread
From: Michał Górny @ 2023-07-17  9:44 UTC (permalink / raw
  To: gentoo-commits

commit:     bb60cc3fc8505ce5323ebbe6825faf68c6af4f33
Author:     Tom Gillespie <tgbugs <AT> gmail <DOT> com>
AuthorDate: Thu Jul 13 01:55:39 2023 +0000
Commit:     Michał Górny <mgorny <AT> gentoo <DOT> org>
CommitDate: Mon Jul 17 09:44:20 2023 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=bb60cc3f

pypi.eclass: _pypi_translate_version _pre to .dev

Implement automatic translation _pre to .dev for pypi SRC_URIs.

Signed-off-by: Tom Gillespie <tgbugs <AT> gmail.com>
Closes: https://github.com/gentoo/gentoo/pull/31861
Signed-off-by: Michał Górny <mgorny <AT> gentoo.org>

 eclass/pypi.eclass | 1 +
 1 file changed, 1 insertion(+)

diff --git a/eclass/pypi.eclass b/eclass/pypi.eclass
index 594216a7fd96..b80ff9c95d36 100644
--- a/eclass/pypi.eclass
+++ b/eclass/pypi.eclass
@@ -105,6 +105,7 @@ _pypi_translate_version() {
 	local version=${1}
 	version=${version/_alpha/a}
 	version=${version/_beta/b}
+	version=${version/_pre/.dev}
 	version=${version/_rc/rc}
 	_PYPI_TRANSLATED_VERSION=${version/_p/.post}
 }


^ permalink raw reply related	[flat|nested] 6131+ messages in thread

* [gentoo-commits] repo/gentoo:master commit in: eclass/
@ 2023-07-17  9:44 Michał Górny
  0 siblings, 0 replies; 6131+ messages in thread
From: Michał Górny @ 2023-07-17  9:44 UTC (permalink / raw
  To: gentoo-commits

commit:     8f952fad8ad5152d7877944c537f469f25d0a7af
Author:     Violet Purcell <vimproved <AT> inventati <DOT> org>
AuthorDate: Sat Jul  8 18:25:16 2023 +0000
Commit:     Michał Górny <mgorny <AT> gentoo <DOT> org>
CommitDate: Mon Jul 17 09:44:13 2023 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=8f952fad

multibuild.eclass: Remove --reflink=auto from calls to cp

--reflink=auto has become the default behaviour in coreutils 9,
and it is not compatible with BSD userland.

Signed-off-by: Violet Purcell <vimproved <AT> inventati.org>
Signed-off-by: Michał Górny <mgorny <AT> gentoo.org>

 eclass/multibuild.eclass | 6 ++----
 1 file changed, 2 insertions(+), 4 deletions(-)

diff --git a/eclass/multibuild.eclass b/eclass/multibuild.eclass
index 33edb9312a86..d8a5862731bf 100644
--- a/eclass/multibuild.eclass
+++ b/eclass/multibuild.eclass
@@ -170,8 +170,7 @@ multibuild_copy_sources() {
 
 	_multibuild_create_source_copy() {
 		einfo "${MULTIBUILD_VARIANT}: copying to ${BUILD_DIR}"
-		# enable reflinking if possible to make this faster
-		cp -p -R --reflink=auto \
+		cp -p -R \
 			"${_MULTIBUILD_INITIAL_BUILD_DIR}" "${BUILD_DIR}" || die
 	}
 
@@ -190,8 +189,7 @@ multibuild_merge_root() {
 	local src=${1}
 	local dest=${2}
 
-	# enable reflinking if possible to make this faster
-	cp -a --reflink=auto "${src}"/. "${dest}"/ || die "${MULTIBUILD_VARIANT:-(unknown)}: merging image failed"
+	cp -a "${src}"/. "${dest}"/ || die "${MULTIBUILD_VARIANT:-(unknown)}: merging image failed"
 	rm -rf "${src}" || die
 }
 


^ permalink raw reply related	[flat|nested] 6131+ messages in thread

* [gentoo-commits] repo/gentoo:master commit in: eclass/
@ 2023-07-17  9:44 Michał Górny
  0 siblings, 0 replies; 6131+ messages in thread
From: Michał Górny @ 2023-07-17  9:44 UTC (permalink / raw
  To: gentoo-commits

commit:     b6ee87f3dd10dac484d0d0c6e9db0efa187164ab
Author:     Michał Górny <mgorny <AT> gentoo <DOT> org>
AuthorDate: Wed Jul 12 12:06:28 2023 +0000
Commit:     Michał Górny <mgorny <AT> gentoo <DOT> org>
CommitDate: Mon Jul 17 09:44:18 2023 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=b6ee87f3

distutils-r1.eclass: Update addpredict for PyPy3.10

Signed-off-by: Michał Górny <mgorny <AT> gentoo.org>

 eclass/distutils-r1.eclass | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/eclass/distutils-r1.eclass b/eclass/distutils-r1.eclass
index 046277d0371c..924e83b54ad8 100644
--- a/eclass/distutils-r1.eclass
+++ b/eclass/distutils-r1.eclass
@@ -1718,7 +1718,7 @@ distutils-r1_python_install() {
 		# python likes to compile any module it sees, which triggers sandbox
 		# failures if some packages haven't compiled their modules yet.
 		addpredict "${EPREFIX}/usr/lib/${EPYTHON}"
-		addpredict "${EPREFIX}/usr/lib/pypy3.9"
+		addpredict "${EPREFIX}/usr/lib/pypy3.10"
 		addpredict "${EPREFIX}/usr/local" # bug 498232
 
 		if [[ ! ${DISTUTILS_SINGLE_IMPL} ]]; then


^ permalink raw reply related	[flat|nested] 6131+ messages in thread

* [gentoo-commits] repo/gentoo:master commit in: eclass/
@ 2023-07-17  9:44 Michał Górny
  0 siblings, 0 replies; 6131+ messages in thread
From: Michał Górny @ 2023-07-17  9:44 UTC (permalink / raw
  To: gentoo-commits

commit:     ed78c944748d94ea4fb37c782b23cbe478899c1d
Author:     Violet Purcell <vimproved <AT> inventati <DOT> org>
AuthorDate: Sat Jul  8 18:25:37 2023 +0000
Commit:     Michał Górny <mgorny <AT> gentoo <DOT> org>
CommitDate: Mon Jul 17 09:44:14 2023 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=ed78c944

distutils-r1.eclass: Remove --reflink=auto from calls to cp

--reflink=auto has become the default behaviour in coreutils 9,
and it is not compatible with BSD userland.

Signed-off-by: Violet Purcell <vimproved <AT> inventati.org>
Signed-off-by: Michał Górny <mgorny <AT> gentoo.org>

 eclass/distutils-r1.eclass | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/eclass/distutils-r1.eclass b/eclass/distutils-r1.eclass
index fd9bf47aa963..046277d0371c 100644
--- a/eclass/distutils-r1.eclass
+++ b/eclass/distutils-r1.eclass
@@ -1974,7 +1974,7 @@ _distutils-r1_post_python_compile() {
 			die "${rscriptdir} should not exist!"
 		if [[ -d ${bindir} ]]; then
 			mkdir -p "${rscriptdir}" || die
-			cp -a --reflink=auto "${bindir}"/. "${rscriptdir}"/ || die
+			cp -a "${bindir}"/. "${rscriptdir}"/ || die
 		fi
 
 		# enable venv magic inside the install tree


^ permalink raw reply related	[flat|nested] 6131+ messages in thread

* [gentoo-commits] repo/gentoo:master commit in: eclass/
@ 2023-07-17 14:14 Michał Górny
  0 siblings, 0 replies; 6131+ messages in thread
From: Michał Górny @ 2023-07-17 14:14 UTC (permalink / raw
  To: gentoo-commits

commit:     7ad9b298d939424e9ee839833da8a12257647943
Author:     Michał Górny <mgorny <AT> gentoo <DOT> org>
AuthorDate: Mon Jul 17 10:45:39 2023 +0000
Commit:     Michał Górny <mgorny <AT> gentoo <DOT> org>
CommitDate: Mon Jul 17 14:14:17 2023 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=7ad9b298

llvm.org.eclass: Add 17.0.0_pre20230717 snapshot

Signed-off-by: Michał Górny <mgorny <AT> gentoo.org>

 eclass/llvm.org.eclass | 3 +++
 1 file changed, 3 insertions(+)

diff --git a/eclass/llvm.org.eclass b/eclass/llvm.org.eclass
index ffc5ad4405ee..4691b3c9666d 100644
--- a/eclass/llvm.org.eclass
+++ b/eclass/llvm.org.eclass
@@ -72,6 +72,9 @@ if [[ -z ${_LLVM_SOURCE_TYPE+1} ]]; then
 			_LLVM_SOURCE_TYPE=snapshot
 
 			case ${PV} in
+				17.0.0_pre20230717)
+					EGIT_COMMIT=3cd3f11c174baa001b337b88c7a6507eb5705cf2
+					;;
 				17.0.0_pre20230705)
 					EGIT_COMMIT=5ae7fde004cbc640c2f60207791ac36574e5f5c6
 					;;


^ permalink raw reply related	[flat|nested] 6131+ messages in thread

* [gentoo-commits] repo/gentoo:master commit in: eclass/
@ 2023-07-17 14:24 Florian Schmaus
  0 siblings, 0 replies; 6131+ messages in thread
From: Florian Schmaus @ 2023-07-17 14:24 UTC (permalink / raw
  To: gentoo-commits

commit:     d5e1f736c92d50438ee7dd19c5067e47044c99b3
Author:     Florian Schmaus <flow <AT> gentoo <DOT> org>
AuthorDate: Mon Jul 17 14:20:05 2023 +0000
Commit:     Florian Schmaus <flow <AT> gentoo <DOT> org>
CommitDate: Mon Jul 17 14:21:02 2023 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=d5e1f736

shell-completion.eclass: new eclass, migrated from ::guru

Signed-off-by: Florian Schmaus <flow <AT> gentoo.org>

 eclass/shell-completion.eclass | 115 +++++++++++++++++++++++++++++++++++++++++
 1 file changed, 115 insertions(+)

diff --git a/eclass/shell-completion.eclass b/eclass/shell-completion.eclass
new file mode 100644
index 000000000000..debfb8ecd26f
--- /dev/null
+++ b/eclass/shell-completion.eclass
@@ -0,0 +1,115 @@
+# Copyright 2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+# @ECLASS: shell-completion.eclass
+# @SUPPORTED_EAPIS: 8
+# @PROVIDES: bash-completion-r1
+# @AUTHOR:
+# Alfred Wingate <parona@protonmail.com>
+# @MAINTAINER:
+# Jonas Frei <freijon@pm.me>
+# Florian Schmaus <flow@gentoo.org>
+# @BLURB: a few quick functions to install various shell completion files
+# @DESCRIPTION:
+# This eclass provides a standardised way to install shell completions
+# for popular shells.  It inherits the already widely adopted
+# 'bash-completion-r1', thus extending on its functionality.
+
+case ${EAPI} in
+	8) ;;
+	*) die "${ECLASS}: EAPI ${EAPI:-0} not supported"
+esac
+
+if [[ ! ${_SHELL_COMPLETION_ECLASS} ]]; then
+_SHELL_COMPLETION_ECLASS=1
+
+# Extend bash-completion-r1
+inherit bash-completion-r1
+
+# @FUNCTION: _shell-completion_get_fishcompdir
+# @INTERNAL
+# @RETURN: unprefixed fish completions directory
+_shell-completion_get_fishcompdir() {
+	echo "/usr/share/fish/vendor_completions.d"
+}
+
+# @FUNCTION: _shell-completion_get_zshcompdir
+# @INTERNAL
+# @RETURN: unprefixed zsh completions directory
+_shell-completion_get_zshcompdir() {
+	echo "/usr/share/zsh/site-functions"
+}
+
+# @FUNCTION: get_fishcompdir
+# @RETURN: the fish completions directory (with EPREFIX)
+get_fishcompdir() {
+	debug-print-function ${FUNCNAME} "${@}"
+
+	echo "${EPREFIX}$(_shell-completion_get_fishcompdir)"
+}
+
+# @FUNCTION: get_zshcompdir
+# @RETURN: the zsh completions directory (with EPREFIX)
+get_zshcompdir() {
+	debug-print-function ${FUNCNAME} "${@}"
+
+	echo "${EPREFIX}$(_shell-completion_get_zshcompdir)"
+}
+
+# @FUNCTION: dofishcomp
+# @USAGE: <file...>
+# @DESCRIPTION:
+# Install fish completion files passed as args.
+dofishcomp() {
+	debug-print-function ${FUNCNAME} "${@}"
+
+	(
+		insopts -m 0644
+		insinto "$(_shell-completion_get_fishcompdir)"
+		doins "${@}"
+	)
+}
+
+# @FUNCTION: dozshcomp
+# @USAGE: <file...>
+# @DESCRIPTION:
+# Install zsh completion files passed as args.
+dozshcomp() {
+	debug-print-function ${FUNCNAME} "${@}"
+
+	(
+		insopts -m 0644
+		insinto "$(_shell-completion_get_zshcompdir)"
+		doins "${@}"
+	)
+}
+
+# @FUNCTION: newfishcomp
+# @USAGE: <file> <newname>
+# @DESCRIPTION:
+# Install fish file under a new name.
+newfishcomp() {
+	debug-print-function ${FUNCNAME} "${@}"
+
+	(
+		insopts -m 0644
+		insinto "$(_shell-completion_get_fishcompdir)"
+		newins "${@}"
+	)
+}
+
+# @FUNCTION: newzshcomp
+# @USAGE: <file> <newname>
+# @DESCRIPTION:
+# Install zsh file under a new name.
+newzshcomp() {
+	debug-print-function ${FUNCNAME} "${@}"
+
+	(
+		insopts -m 0644
+		insinto "$(_shell-completion_get_zshcompdir)"
+		newins "${@}"
+	)
+}
+
+fi


^ permalink raw reply related	[flat|nested] 6131+ messages in thread

* [gentoo-commits] repo/gentoo:master commit in: eclass/
@ 2023-07-17 21:18 Sam James
  0 siblings, 0 replies; 6131+ messages in thread
From: Sam James @ 2023-07-17 21:18 UTC (permalink / raw
  To: gentoo-commits

commit:     4ba2e70baded5cbcabbfd03d7440d677cd955f23
Author:     konsolebox <konsolebox <AT> gmail <DOT> com>
AuthorDate: Fri Jul 14 08:33:44 2023 +0000
Commit:     Sam James <sam <AT> gentoo <DOT> org>
CommitDate: Mon Jul 17 21:18:04 2023 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=4ba2e70b

ruby-utils.eclass: Simplify _ruby_implementation_depend

Closes: https://bugs.gentoo.org/909529
Signed-off-by: Sam James <sam <AT> gentoo.org>

 eclass/ruby-utils.eclass | 52 ++----------------------------------------------
 1 file changed, 2 insertions(+), 50 deletions(-)

diff --git a/eclass/ruby-utils.eclass b/eclass/ruby-utils.eclass
index c4b6f1502f8a..8a2b7720c951 100644
--- a/eclass/ruby-utils.eclass
+++ b/eclass/ruby-utils.eclass
@@ -44,57 +44,9 @@ _ruby_implementation_depend() {
 	local rubyslot=
 
 	case $1 in
-		ruby18)
+		ruby1[89]|ruby2[0-7]|ruby3[0-2])
 			rubypn="dev-lang/ruby"
-			rubyslot=":1.8"
-			;;
-		ruby19)
-			rubypn="dev-lang/ruby"
-			rubyslot=":1.9"
-			;;
-		ruby20)
-			rubypn="dev-lang/ruby"
-			rubyslot=":2.0"
-			;;
-		ruby21)
-			rubypn="dev-lang/ruby"
-			rubyslot=":2.1"
-			;;
-		ruby22)
-			rubypn="dev-lang/ruby"
-			rubyslot=":2.2"
-			;;
-		ruby23)
-			rubypn="dev-lang/ruby"
-			rubyslot=":2.3"
-			;;
-		ruby24)
-			rubypn="dev-lang/ruby"
-			rubyslot=":2.4"
-			;;
-		ruby25)
-			rubypn="dev-lang/ruby"
-			rubyslot=":2.5"
-			;;
-		ruby26)
-			rubypn="dev-lang/ruby"
-			rubyslot=":2.6"
-			;;
-		ruby27)
-			rubypn="dev-lang/ruby"
-			rubyslot=":2.7"
-			;;
-		ruby30)
-			rubypn="dev-lang/ruby"
-			rubyslot=":3.0"
-			;;
-		ruby31)
-			rubypn="dev-lang/ruby"
-			rubyslot=":3.1"
-			;;
-		ruby32)
-			rubypn="dev-lang/ruby"
-			rubyslot=":3.2"
+			rubyslot=":${1:4:1}.${1:5}"
 			;;
 		ree18)
 			rubypn="dev-lang/ruby-enterprise"


^ permalink raw reply related	[flat|nested] 6131+ messages in thread

* [gentoo-commits] repo/gentoo:master commit in: eclass/
@ 2023-07-18 20:52 Matt Turner
  0 siblings, 0 replies; 6131+ messages in thread
From: Matt Turner @ 2023-07-18 20:52 UTC (permalink / raw
  To: gentoo-commits

commit:     92001b4083b2f65353a0509ee9b9303015804e92
Author:     Matt Turner <mattst88 <AT> gentoo <DOT> org>
AuthorDate: Tue Jul 18 20:48:42 2023 +0000
Commit:     Matt Turner <mattst88 <AT> gentoo <DOT> org>
CommitDate: Tue Jul 18 20:51:53 2023 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=92001b40

meson.eclass: Change maintainer to base-system@

Per floppym's request.

Signed-off-by: Matt Turner <mattst88 <AT> gentoo.org>

 eclass/meson.eclass | 3 +--
 1 file changed, 1 insertion(+), 2 deletions(-)

diff --git a/eclass/meson.eclass b/eclass/meson.eclass
index 2c274b213191..adbc495fdef3 100644
--- a/eclass/meson.eclass
+++ b/eclass/meson.eclass
@@ -3,8 +3,7 @@
 
 # @ECLASS: meson.eclass
 # @MAINTAINER:
-# William Hubbs <williamh@gentoo.org>
-# Mike Gilbert <floppym@gentoo.org>
+# base-system@gentoo.org
 # @SUPPORTED_EAPIS: 7 8
 # @BLURB: common ebuild functions for meson-based packages
 # @DESCRIPTION:


^ permalink raw reply related	[flat|nested] 6131+ messages in thread

* [gentoo-commits] repo/gentoo:master commit in: eclass/
@ 2023-07-18 20:52 Matt Turner
  0 siblings, 0 replies; 6131+ messages in thread
From: Matt Turner @ 2023-07-18 20:52 UTC (permalink / raw
  To: gentoo-commits

commit:     89fa08dd8703bfd854d6a77a60bbd270ae8d803d
Author:     Jonas Rakebrandt <xarblu <AT> protonmail <DOT> com>
AuthorDate: Mon Jan  2 19:40:13 2023 +0000
Commit:     Matt Turner <mattst88 <AT> gentoo <DOT> org>
CommitDate: Tue Jul 18 20:51:54 2023 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=89fa08dd

meson.eclass: Add MESON_VERBOSE

This works similar to cmake.eclass's ${CMAKE_VERBOSE}.

Closes: https://github.com/gentoo/gentoo/pull/28942
Signed-off-by: Jonas Rakebrandt <xarblu <AT> protonmail.com>
Signed-off-by: Matt Turner <mattst88 <AT> gentoo.org>

 eclass/meson.eclass | 15 +++++++++++++--
 1 file changed, 13 insertions(+), 2 deletions(-)

diff --git a/eclass/meson.eclass b/eclass/meson.eclass
index adbc495fdef3..5aff3eb58930 100644
--- a/eclass/meson.eclass
+++ b/eclass/meson.eclass
@@ -54,6 +54,12 @@ BDEPEND=">=dev-util/meson-0.62.2
 # Build directory, location where all generated files should be placed.
 # If this isn't set, it defaults to ${WORKDIR}/${P}-build.
 
+# @ECLASS_VARIABLE: MESON_VERBOSE
+# @USER_VARIABLE
+# @DESCRIPTION:
+# Set to OFF to disable verbose messages during compilation
+: "${MESON_VERBOSE:=ON}"
+
 # @ECLASS_VARIABLE: EMESON_BUILDTYPE
 # @DESCRIPTION:
 # The buildtype value to pass to meson setup.
@@ -384,10 +390,15 @@ meson_src_compile() {
 		-C "${BUILD_DIR}"
 		--jobs "$(makeopts_jobs "${MAKEOPTS}" 0)"
 		--load-average "$(makeopts_loadavg "${MAKEOPTS}" 0)"
-		--verbose
-		"$@"
 	)
 
+	case ${MESON_VERBOSE} in
+		OFF) ;;
+		*) mesoncompileargs+=( --verbose ) ;;
+	esac
+
+	mesoncompileargs+=( "$@" )
+
 	set -- meson compile "${mesoncompileargs[@]}"
 	echo "$@" >&2
 	"$@" || die "compile failed"


^ permalink raw reply related	[flat|nested] 6131+ messages in thread

* [gentoo-commits] repo/gentoo:master commit in: eclass/
@ 2023-07-18 20:52 Matt Turner
  0 siblings, 0 replies; 6131+ messages in thread
From: Matt Turner @ 2023-07-18 20:52 UTC (permalink / raw
  To: gentoo-commits

commit:     3641a9957a33475a0af84eca1aa9ccf3e7cd7ab6
Author:     Matt Turner <mattst88 <AT> gentoo <DOT> org>
AuthorDate: Tue Jul 18 20:49:41 2023 +0000
Commit:     Matt Turner <mattst88 <AT> gentoo <DOT> org>
CommitDate: Tue Jul 18 20:51:54 2023 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=3641a995

ninja-utils.eclass: Change maintainer to base-system@

Per floppym's request.

Signed-off-by: Matt Turner <mattst88 <AT> gentoo.org>

 eclass/ninja-utils.eclass | 3 +--
 1 file changed, 1 insertion(+), 2 deletions(-)

diff --git a/eclass/ninja-utils.eclass b/eclass/ninja-utils.eclass
index e6d8c9e6c0a9..fa1aa137ea73 100644
--- a/eclass/ninja-utils.eclass
+++ b/eclass/ninja-utils.eclass
@@ -3,8 +3,7 @@
 
 # @ECLASS: ninja-utils.eclass
 # @MAINTAINER:
-# Michał Górny <mgorny@gentoo.org>
-# Mike Gilbert <floppym@gentoo.org>
+# base-system@gentoo.org
 # @AUTHOR:
 # Michał Górny <mgorny@gentoo.org>
 # Mike Gilbert <floppym@gentoo.org>


^ permalink raw reply related	[flat|nested] 6131+ messages in thread

* [gentoo-commits] repo/gentoo:master commit in: eclass/
@ 2023-07-18 20:52 Matt Turner
  0 siblings, 0 replies; 6131+ messages in thread
From: Matt Turner @ 2023-07-18 20:52 UTC (permalink / raw
  To: gentoo-commits

commit:     cf52bf96b61db64d46196192407dcb2e0ef67701
Author:     konsolebox <konsolebox <AT> gmail <DOT> com>
AuthorDate: Wed Dec 14 11:46:53 2022 +0000
Commit:     Matt Turner <mattst88 <AT> gentoo <DOT> org>
CommitDate: Tue Jul 18 20:51:53 2023 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=cf52bf96

git-r3.eclass: Use '__init__' as initial branch

It silences the default branch warning.

Closes: https://bugs.gentoo.org/841392
Signed-off-by: Matt Turner <mattst88 <AT> gentoo.org>

 eclass/git-r3.eclass | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/eclass/git-r3.eclass b/eclass/git-r3.eclass
index e9fdf2ac3a42..5ac141962b12 100644
--- a/eclass/git-r3.eclass
+++ b/eclass/git-r3.eclass
@@ -344,7 +344,7 @@ _git-r3_set_gitdir() {
 			umask "${EVCS_UMASK}" || die "Bad options to umask: ${EVCS_UMASK}"
 		fi
 		mkdir "${GIT_DIR}" || die
-		git init --bare || die
+		git init --bare -b __init__ || die
 		if [[ ${saved_umask} ]]; then
 			umask "${saved_umask}" || die
 		fi
@@ -874,7 +874,7 @@ git-r3_checkout() {
 		# use git init+fetch instead of clone since the latter doesn't like
 		# non-empty directories.
 
-		git init --quiet || die
+		git init --quiet -b __init__ || die
 		# setup 'alternates' to avoid copying objects
 		echo "${orig_repo}/objects" > "${GIT_DIR}"/objects/info/alternates || die
 		# now copy the refs


^ permalink raw reply related	[flat|nested] 6131+ messages in thread

* [gentoo-commits] repo/gentoo:master commit in: eclass/
@ 2023-07-18 20:52 Matt Turner
  0 siblings, 0 replies; 6131+ messages in thread
From: Matt Turner @ 2023-07-18 20:52 UTC (permalink / raw
  To: gentoo-commits

commit:     385957565ea319259586571fb931e2df01bdf215
Author:     Matt Turner <mattst88 <AT> gentoo <DOT> org>
AuthorDate: Mon Jul 17 15:11:25 2023 +0000
Commit:     Matt Turner <mattst88 <AT> gentoo <DOT> org>
CommitDate: Tue Jul 18 20:51:54 2023 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=38595756

ninja-utils.eclass: Add NINJA_VERBOSE

ninja operates in one of three modes:
 - verbose (with -v): prints build commands
 - quiet (with --quiet): prints nothing
 - normal: prints [XX/YY]-style build status updates

samurai works the same way, except it does not have a quiet mode.

Thus we can't simply override ninja-utils' hard-coded flag from callers
of eninja.

Signed-off-by: Matt Turner <mattst88 <AT> gentoo.org>

 eclass/ninja-utils.eclass | 13 ++++++++++++-
 1 file changed, 12 insertions(+), 1 deletion(-)

diff --git a/eclass/ninja-utils.eclass b/eclass/ninja-utils.eclass
index fa1aa137ea73..5a211e81131d 100644
--- a/eclass/ninja-utils.eclass
+++ b/eclass/ninja-utils.eclass
@@ -47,6 +47,12 @@ _NINJA_UTILS_ECLASS=1
 # supposed to be set in make.conf. If unset, eninja() will convert
 # MAKEOPTS instead.
 
+# @ECLASS_VARIABLE: NINJA_VERBOSE
+# @USER_VARIABLE
+# @DESCRIPTION:
+# Set to OFF to disable verbose messages during compilation
+: "${NINJA_VERBOSE:=ON}"
+
 inherit multiprocessing
 
 case "${NINJA}" in
@@ -79,7 +85,12 @@ get_NINJAOPTS() {
 # also supports being called via 'nonfatal'.
 eninja() {
 	[[ -n "${NINJA_DEPEND}" ]] || ewarn "Unknown value '${NINJA}' for \${NINJA}"
-	set -- "${NINJA}" -v $(get_NINJAOPTS) "$@"
+	local v
+	case "${NINJA_VERBOSE}" in
+		OFF) ;;
+		*) v="-v"
+	esac
+	set -- "${NINJA}" ${v} $(get_NINJAOPTS) "$@"
 	echo "$@" >&2
 	"$@" || die -n "${*} failed"
 }


^ permalink raw reply related	[flat|nested] 6131+ messages in thread

* [gentoo-commits] repo/gentoo:master commit in: eclass/
@ 2023-07-18 20:52 Matt Turner
  0 siblings, 0 replies; 6131+ messages in thread
From: Matt Turner @ 2023-07-18 20:52 UTC (permalink / raw
  To: gentoo-commits

commit:     f042f7c1d9a26422514494a1d4e98e51a4255b28
Author:     Matt Turner <mattst88 <AT> gentoo <DOT> org>
AuthorDate: Mon Jul 17 15:13:25 2023 +0000
Commit:     Matt Turner <mattst88 <AT> gentoo <DOT> org>
CommitDate: Tue Jul 18 20:51:54 2023 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=f042f7c1

cmake.eclass: Support CMAKE_VERBOSE with ninja

Signed-off-by: Matt Turner <mattst88 <AT> gentoo.org>

 eclass/cmake.eclass | 4 ++++
 1 file changed, 4 insertions(+)

diff --git a/eclass/cmake.eclass b/eclass/cmake.eclass
index d70f2cbf1fac..16b3e300ccae 100644
--- a/eclass/cmake.eclass
+++ b/eclass/cmake.eclass
@@ -651,6 +651,10 @@ cmake_build() {
 			;;
 		ninja)
 			[[ -e build.ninja ]] || die "build.ninja not found. Error during configure stage."
+			case ${CMAKE_VERBOSE} in
+				OFF) NINJA_VERBOSE=OFF eninja "$@" ;;
+				*) eninja "$@" ;;
+			esac
 			eninja "$@"
 			;;
 	esac


^ permalink raw reply related	[flat|nested] 6131+ messages in thread

* [gentoo-commits] repo/gentoo:master commit in: eclass/
@ 2023-07-20  0:08 Sam James
  0 siblings, 0 replies; 6131+ messages in thread
From: Sam James @ 2023-07-20  0:08 UTC (permalink / raw
  To: gentoo-commits

commit:     9686580f1317fa20a8090d55bfe1cba102cfb0d1
Author:     Sam James <sam <AT> gentoo <DOT> org>
AuthorDate: Thu Jul 20 00:07:20 2023 +0000
Commit:     Sam James <sam <AT> gentoo <DOT> org>
CommitDate: Thu Jul 20 00:07:45 2023 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=9686580f

toolchain.eclass: disable gcov for cross

I don't see an immediate way to only disable this for crossdev stage1, so just
disable it entirely for cross for now.

Bug: https://gcc.gnu.org/bugzilla/show_bug.cgi?id=100289
Signed-off-by: Sam James <sam <AT> gentoo.org>

 eclass/toolchain.eclass | 8 +++++++-
 1 file changed, 7 insertions(+), 1 deletion(-)

diff --git a/eclass/toolchain.eclass b/eclass/toolchain.eclass
index dabdd3a8f4fa..ed6692ca8dea 100644
--- a/eclass/toolchain.eclass
+++ b/eclass/toolchain.eclass
@@ -998,7 +998,13 @@ toolchain_src_configure() {
 			fi
 		fi
 
-		confgcc+=( --disable-bootstrap )
+		confgcc+=(
+			# https://gcc.gnu.org/bugzilla/show_bug.cgi?id=100289
+			# TOOD: Find a way to disable this just for stage1 cross?
+			--disable-gcov
+
+			--disable-bootstrap
+		)
 	else
 		if tc-is-static-only ; then
 			confgcc+=( --disable-shared )


^ permalink raw reply related	[flat|nested] 6131+ messages in thread

* [gentoo-commits] repo/gentoo:master commit in: eclass/
@ 2023-07-20  9:49 WANG Xuerui
  0 siblings, 0 replies; 6131+ messages in thread
From: WANG Xuerui @ 2023-07-20  9:49 UTC (permalink / raw
  To: gentoo-commits

commit:     b65ec7188f25479e458186b9a41d89205fd8a859
Author:     WANG Xuerui <xen0n <AT> gentoo <DOT> org>
AuthorDate: Wed May 31 07:25:27 2023 +0000
Commit:     WANG Xuerui <xen0n <AT> gentoo <DOT> org>
CommitDate: Thu Jul 20 09:48:25 2023 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=b65ec718

rust-toolchain.eclass: cosmetic cleanups

Re-tab the file, and reorganize the rust_abi and rust_all_arch_uris
helpers so the keys are sorted alphabetically while preserving match
order. No functional change intended.

See: https://github.com/gentoo/gentoo/pull/31241
Signed-off-by: WANG Xuerui <xen0n <AT> gentoo.org>

 eclass/rust-toolchain.eclass | 70 +++++++++++++++++++++++++-------------------
 1 file changed, 40 insertions(+), 30 deletions(-)

diff --git a/eclass/rust-toolchain.eclass b/eclass/rust-toolchain.eclass
index df48d3fae264..ef4b2a91ef7d 100644
--- a/eclass/rust-toolchain.eclass
+++ b/eclass/rust-toolchain.eclass
@@ -36,21 +36,21 @@ rust_abi() {
 	case ${CTARGET%%*-} in
 		aarch64*gnu)  echo aarch64-unknown-linux-gnu;;
 		aarch64*musl) echo aarch64-unknown-linux-musl;;
-		mips64*)	  echo mips64-unknown-linux-gnuabi64;;
+		armv6j*h*)    echo arm-unknown-linux-gnueabihf;;
+		armv6j*s*)    echo arm-unknown-linux-gnueabi;;
+		armv7a*h*)    echo armv7-unknown-linux-gnueabihf;;
+		i?86*)        echo i686-unknown-linux-gnu;;
+		mips64*)      echo mips64-unknown-linux-gnuabi64;;
+		mipsel*)      echo mipsel-unknown-linux-gnu;;
+		mips*)        echo mips-unknown-linux-gnu;;
 		powerpc64le*) echo powerpc64le-unknown-linux-gnu;;
 		powerpc64*)   echo powerpc64-unknown-linux-gnu;;
-		x86_64*gnu)	  echo x86_64-unknown-linux-gnu;;
+		powerpc*)     echo powerpc-unknown-linux-gnu;;
+		riscv64*)     echo riscv64gc-unknown-linux-gnu;;
+		s390x*)       echo s390x-unknown-linux-gnu;;
+		x86_64*gnu)   echo x86_64-unknown-linux-gnu;;
 		x86_64*musl)  echo x86_64-unknown-linux-musl;;
-		armv6j*s*)	  echo arm-unknown-linux-gnueabi;;
-		armv6j*h*)	  echo arm-unknown-linux-gnueabihf;;
-		armv7a*h*)	  echo armv7-unknown-linux-gnueabihf;;
-		i?86*)		  echo i686-unknown-linux-gnu;;
-		mipsel*)	  echo mipsel-unknown-linux-gnu;;
-		mips*)		  echo mips-unknown-linux-gnu;;
-		powerpc*)	  echo powerpc-unknown-linux-gnu;;
-		s390x*)		  echo s390x-unknown-linux-gnu;;
-		riscv64*)	  echo riscv64gc-unknown-linux-gnu;;
-		*)			  echo ${CTARGET};;
+		*)            echo ${CTARGET};;
   esac
 }
 
@@ -105,22 +105,32 @@ rust_arch_uri() {
 #
 rust_all_arch_uris()
 {
-  local uris=""
-  uris+="abi_x86_64? ( elibc_glibc? ( $(rust_arch_uri x86_64-unknown-linux-gnu "$@") ) 
-                       elibc_musl?  ( $(rust_arch_uri x86_64-unknown-linux-musl "$@") ) ) "
-  uris+="arm?        ( $(rust_arch_uri arm-unknown-linux-gnueabi      "$@")
-                       $(rust_arch_uri arm-unknown-linux-gnueabihf    "$@")
-                       $(rust_arch_uri armv7-unknown-linux-gnueabihf  "$@") ) "
-  uris+="arm64?      ( elibc_glibc? ( $(rust_arch_uri aarch64-unknown-linux-gnu "$@") ) 
-                       elibc_musl?  ( $(rust_arch_uri aarch64-unknown-linux-musl "$@") ) ) "
-  uris+="mips?       ( $(rust_arch_uri mips-unknown-linux-gnu         "$@")
-                       $(rust_arch_uri mipsel-unknown-linux-gnu       "$@")
-                       $(rust_arch_uri mips64-unknown-linux-gnuabi64  "$@") ) "
-  uris+="ppc?        ( $(rust_arch_uri powerpc-unknown-linux-gnu      "$@") ) "
-  uris+="ppc64?      ( $(rust_arch_uri powerpc64-unknown-linux-gnu    "$@")
-                       $(rust_arch_uri powerpc64le-unknown-linux-gnu  "$@") ) "
-  uris+="s390?       ( $(rust_arch_uri s390x-unknown-linux-gnu        "$@") ) "
-  uris+="abi_x86_32? ( $(rust_arch_uri i686-unknown-linux-gnu         "$@") ) "
-  uris+="riscv?      ( $(rust_arch_uri riscv64gc-unknown-linux-gnu    "$@") ) "
-  echo "${uris}"
+	echo "
+	abi_x86_32? ( $(rust_arch_uri i686-unknown-linux-gnu "$@") )
+	abi_x86_64? (
+		elibc_glibc? ( $(rust_arch_uri x86_64-unknown-linux-gnu  "$@") )
+		elibc_musl?  ( $(rust_arch_uri x86_64-unknown-linux-musl "$@") )
+	)
+	arm? (
+		$(rust_arch_uri arm-unknown-linux-gnueabi     "$@")
+		$(rust_arch_uri arm-unknown-linux-gnueabihf   "$@")
+		$(rust_arch_uri armv7-unknown-linux-gnueabihf "$@")
+	)
+	arm64? (
+		elibc_glibc? ( $(rust_arch_uri aarch64-unknown-linux-gnu  "$@") )
+		elibc_musl?  ( $(rust_arch_uri aarch64-unknown-linux-musl "$@") )
+	)
+	mips? (
+		$(rust_arch_uri mips-unknown-linux-gnu          "$@")
+		$(rust_arch_uri mipsel-unknown-linux-gnu        "$@")
+		$(rust_arch_uri mips64-unknown-linux-gnuabi64   "$@")
+	)
+	ppc? ( $(rust_arch_uri powerpc-unknown-linux-gnu "$@") )
+	ppc64? (
+		$(rust_arch_uri powerpc64-unknown-linux-gnu   "$@")
+		$(rust_arch_uri powerpc64le-unknown-linux-gnu "$@")
+	)
+	riscv? ( $(rust_arch_uri riscv64gc-unknown-linux-gnu "$@") )
+	s390?  ( $(rust_arch_uri s390x-unknown-linux-gnu     "$@") )
+	"
 }


^ permalink raw reply related	[flat|nested] 6131+ messages in thread

* [gentoo-commits] repo/gentoo:master commit in: eclass/
@ 2023-07-20  9:49 WANG Xuerui
  0 siblings, 0 replies; 6131+ messages in thread
From: WANG Xuerui @ 2023-07-20  9:49 UTC (permalink / raw
  To: gentoo-commits

commit:     32a7e626490101308c19b10a2a3f70ca4276c493
Author:     WANG Xuerui <xen0n <AT> gentoo <DOT> org>
AuthorDate: Sat Jun  3 06:32:53 2023 +0000
Commit:     WANG Xuerui <xen0n <AT> gentoo <DOT> org>
CommitDate: Thu Jul 20 09:48:26 2023 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=32a7e626

rust-toolchain.eclass: add preparatory loong support

Rust 1.71.0 was already beta at time of the commit, meaning the target
tuple of loong can be considered stable.

See: https://github.com/gentoo/gentoo/pull/31241
Signed-off-by: WANG Xuerui <xen0n <AT> gentoo.org>

 eclass/rust-toolchain.eclass | 9 +++++++++
 1 file changed, 9 insertions(+)

diff --git a/eclass/rust-toolchain.eclass b/eclass/rust-toolchain.eclass
index 0dcafdf9b335..f4451f743596 100644
--- a/eclass/rust-toolchain.eclass
+++ b/eclass/rust-toolchain.eclass
@@ -40,6 +40,7 @@ rust_abi() {
 		armv6j*s*)    echo arm-unknown-linux-gnueabi;;
 		armv7a*h*)    echo armv7-unknown-linux-gnueabihf;;
 		i?86*)        echo i686-unknown-linux-gnu;;
+		loongarch64*) echo loongarch64-unknown-linux-gnu;;
 		mips64el*)    echo mips64el-unknown-linux-gnuabi64;;
 		mips64*)      echo mips64-unknown-linux-gnuabi64;;
 		mipsel*)      echo mipsel-unknown-linux-gnu;;
@@ -139,4 +140,12 @@ rust_all_arch_uris()
 	riscv? ( $(rust_arch_uri riscv64gc-unknown-linux-gnu "$@") )
 	s390?  ( $(rust_arch_uri s390x-unknown-linux-gnu     "$@") )
 	"
+
+	# Upstream did not gain support for loong until v1.71.0.
+	# NOTE: Merge this into the block above after every <1.71.0 version is
+	# gone from tree.
+	local arg_version="${1##*-}"
+	if ver_test "${arg_version:-$PV}" -ge 1.71.0; then
+		echo "loong? ( $(rust_arch_uri loongarch64-unknown-linux-gnu "$@") )"
+	fi
 }


^ permalink raw reply related	[flat|nested] 6131+ messages in thread

* [gentoo-commits] repo/gentoo:master commit in: eclass/
@ 2023-07-20 11:33 Andrew Ammerlaan
  0 siblings, 0 replies; 6131+ messages in thread
From: Andrew Ammerlaan @ 2023-07-20 11:33 UTC (permalink / raw
  To: gentoo-commits

commit:     502530bfe68d2f5447c8ac6d959c0234c5d06dae
Author:     Andrew Ammerlaan <andrewammerlaan <AT> gentoo <DOT> org>
AuthorDate: Tue Jul 11 17:47:52 2023 +0000
Commit:     Andrew Ammerlaan <andrewammerlaan <AT> gentoo <DOT> org>
CommitDate: Thu Jul 20 11:32:10 2023 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=502530bf

eclass/secureboot.eclass: add new eclass

Signed-off-by: Andrew Ammerlaan <andrewammerlaan <AT> gentoo.org>

 eclass/secureboot.eclass | 173 +++++++++++++++++++++++++++++++++++++++++++++++
 1 file changed, 173 insertions(+)

diff --git a/eclass/secureboot.eclass b/eclass/secureboot.eclass
new file mode 100644
index 000000000000..477722a83bb3
--- /dev/null
+++ b/eclass/secureboot.eclass
@@ -0,0 +1,173 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+# @ECLASS: secureboot.eclass
+# @MAINTAINER:
+# Andrew Ammerlaan <andrewammerlaan@gentoo.org>
+# @AUTHOR:
+# Author: Andrew Ammerlaan <andrewammerlaan@gentoo.org>
+# @SUPPORTED_EAPIS: 7 8
+# @BLURB: A small eclass to sign efi files for Secure Boot
+# @DESCRIPTION:
+# Eclass for packages that install .efi files. A use flag and two user
+# variables allow signing these .efi files for use on systems with Secure Boot
+# enabled.
+#
+# Signing the files during emerge ensures that any tooling that actually
+# installs the bootloaders and kernels to ESP always uses a signed version.
+# This prevents Secure Boot from accidentally breaking when upgrading the
+# kernel or the bootloader.
+#
+# Example use
+# @CODE
+# src_install() {
+# 	default
+# 	secureboot_sign_efi_file in.efi out.efi.signed
+# }
+# @CODE
+#
+# Or
+# @CODE
+# src_install() {
+# 	default
+# 	secureboot_auto_sign
+# }
+# @CODE
+#
+# Some tools will automatically detect and use EFI executables with the .signed
+# suffix. For tools that do not do this the --in-place argument for
+# secureboot_auto_sign can be used to ensure that the signed version is used.
+
+case ${EAPI} in
+	7|8) ;;
+	*) die "${ECLASS}: EAPI ${EAPI:-0} not supported" ;;
+esac
+
+IUSE="secureboot"
+BDEPEND="secureboot? ( app-crypt/sbsigntools )"
+
+# @ECLASS_VARIABLE: SECUREBOOT_SIGN_KEY
+# @USER_VARIABLE
+# @DEFAULT_UNSET
+# @DESCRIPTION:
+# Used with USE=secureboot.  Should be set to the path of the private
+# key in PEM format to use, or a PKCS#11 URI.
+#
+# @ECLASS_VARIABLE: SECUREBOOT_SIGN_CERT
+# @USER_VARIABLE
+# @DEFAULT_UNSET
+# @DESCRIPTION:
+# Used with USE=secureboot.  Should be set to the path of the public
+# key certificate in PEM format to use.
+
+if [[ -z ${_SECUREBOOT_ECLASS} ]]; then
+_SECUREBOOT_ECLASS=1
+
+# @FUNCTION: _secureboot_die_if_unset
+# @INTERNAL
+# @DESCRIPTION:
+# If USE=secureboot is enabled die if the required user variables are unset
+# and die if the keys can't be found.
+_secureboot_die_if_unset() {
+	debug-print-function ${FUNCNAME[0]} "${@}"
+	use secureboot || return
+
+	if [[ -z ${SECUREBOOT_SIGN_KEY} || -z ${SECUREBOOT_SIGN_CERT} ]]; then
+		die "USE=secureboot enabled but SECUREBOOT_SIGN_KEY and/or SECUREBOOT_SIGN_CERT not set."
+	fi
+	if [[ ! ${SECUREBOOT_SIGN_KEY} == pkcs11:* && ! -f ${SECUREBOOT_SIGN_KEY} ]]; then
+		die "SECUREBOOT_SIGN_KEY=${SECUREBOOT_SIGN_KEY} not found"
+	fi
+	if [[ ! -f ${SECUREBOOT_SIGN_CERT} ]];then
+		die "SECUREBOOT_SIGN_CERT=${SECUREBOOT_SIGN_CERT} not found"
+	fi
+}
+
+# @FUNCTION: secureboot_pkg_setup
+# @DESCRIPTION:
+# Checks if required user variables are set before starting the build
+secureboot_pkg_setup() {
+	debug-print-function ${FUNCNAME[0]} "${@}"
+	use secureboot || return
+
+	# If we are merging a binary then the files in this binary
+	# are already signed, no need to check the variables.
+	if [[ ${MERGE_TYPE} != binary ]]; then
+		_secureboot_die_if_unset
+	fi
+}
+
+# @FUNCTION: secureboot_sign_efi_file
+# @USAGE: <input file> <output file>
+# @DESCRIPTION:
+# Sign a file using sbsign and the requested key/certificate.
+# If the file is already signed with our key then skip.
+secureboot_sign_efi_file() {
+	debug-print-function ${FUNCNAME[0]} "${@}"
+	use secureboot || return
+
+	local input_file=${1}
+	local output_file=${2}
+
+	_secureboot_die_if_unset
+
+	ebegin "Signing ${input_file}"
+	local return=1
+	if sbverify "${input_file}" --cert "${SECUREBOOT_SIGN_CERT}" &> /dev/null; then
+		ewarn "${input_file} already signed, skipping"
+		return=0
+	else
+		local args=(
+			"--key=${SECUREBOOT_SIGN_KEY}"
+			"--cert=${SECUREBOOT_SIGN_CERT}"
+		)
+		if [[ ${SECUREBOOT_SIGN_KEY} == pkcs11:* ]]; then
+			args+=( --engine=pkcs11 )
+		fi
+
+		sbsign "${args[@]}" "${input_file}" --output "${output_file}"
+		return=${?}
+	fi
+	eend ${return} || die "Signing ${input_file} failed"
+}
+
+# @FUNCTION: secureboot_auto_sign
+# @USAGE: [--in-place]
+# @DESCRIPTION:
+# Automatically discover and sign efi files in the image directory.
+#
+# By default signed files gain the .signed suffix. If the --in-place
+# argument is given the efi files are replaced with a signed version in place.
+secureboot_auto_sign() {
+	debug-print-function ${FUNCNAME[0]} "${@}"
+	use secureboot || return
+
+	[[ ${EBUILD_PHASE} == install ]] ||
+		die "${FUNCNAME[0]} can only be called in the src_install phase"
+
+	local -a efi_execs
+	mapfile -td '' efi_execs < <(
+		find "${ED}" -type f \
+			\( -iname '*.efi' -o -iname '*.efi32' -o -iname '*.efi64' \) \
+			-print0 || die
+	)
+	(( ${#efi_execs[@]} )) ||
+		die "${FUNCNAME[0]} was called but no efi executables were found"
+
+	local suffix
+	if [[ ${1} == --in-place ]]; then
+		suffix=""
+	elif [[ -n ${1} ]]; then
+		die "Invalid argument ${1}"
+	else
+		suffix=".signed"
+	fi
+
+	for efi_exec in "${efi_execs[@]}"; do
+		secureboot_sign_efi_file "${efi_exec}" "${efi_exec}${suffix}"
+	done
+}
+
+fi
+
+EXPORT_FUNCTIONS pkg_setup


^ permalink raw reply related	[flat|nested] 6131+ messages in thread

* [gentoo-commits] repo/gentoo:master commit in: eclass/
@ 2023-07-20 11:33 Andrew Ammerlaan
  0 siblings, 0 replies; 6131+ messages in thread
From: Andrew Ammerlaan @ 2023-07-20 11:33 UTC (permalink / raw
  To: gentoo-commits

commit:     d4df03c213d176fd5cc394628b7bbf611a474125
Author:     Andrew Ammerlaan <andrewammerlaan <AT> gentoo <DOT> org>
AuthorDate: Tue Jul 11 11:20:12 2023 +0000
Commit:     Andrew Ammerlaan <andrewammerlaan <AT> gentoo <DOT> org>
CommitDate: Thu Jul 20 11:32:13 2023 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=d4df03c2

dist-kernel-utils.eclass: optionally sign the kernels

Signed-off-by: Andrew Ammerlaan <andrewammerlaan <AT> gentoo.org>

 eclass/dist-kernel-utils.eclass | 18 +++++++++++++++++-
 1 file changed, 17 insertions(+), 1 deletion(-)

diff --git a/eclass/dist-kernel-utils.eclass b/eclass/dist-kernel-utils.eclass
index 1ef3104245c6..cb0021f8b3a7 100644
--- a/eclass/dist-kernel-utils.eclass
+++ b/eclass/dist-kernel-utils.eclass
@@ -12,6 +12,13 @@
 # This eclass provides various utility functions related to Distribution
 # Kernels.
 
+# @ECLASS_VARIABLE: KERNEL_IUSE_SECUREBOOT
+# @PRE_INHERIT
+# @DEFAULT_UNSET
+# @DESCRIPTION:
+# If set to a non-null value, inherits secureboot.eclass
+# and allows signing of generated kernel images.
+
 if [[ ! ${_DIST_KERNEL_UTILS} ]]; then
 
 case ${EAPI} in
@@ -19,6 +26,10 @@ case ${EAPI} in
 	*) die "${ECLASS}: EAPI ${EAPI:-0} not supported" ;;
 esac
 
+if [[ ${KERNEL_IUSE_SECUREBOOT} ]]; then
+	inherit secureboot
+fi
+
 # @FUNCTION: dist-kernel_build_initramfs
 # @USAGE: <output> <version>
 # @DESCRIPTION:
@@ -104,7 +115,7 @@ dist-kernel_install_kernel() {
 	if [[ ${magic} == MZ ]]; then
 		einfo "Combined UEFI kernel+initramfs executable found"
 		# install the combined executable in place of kernel
-		image=${initrd}.efi
+		image=${initrd%/*}/uki.efi
 		mv "${initrd}" "${image}" || die
 		# We moved the generated initrd, prevent dracut from running again
 		# https://github.com/dracutdevs/dracut/pull/2405
@@ -122,6 +133,11 @@ dist-kernel_install_kernel() {
 		export KERNEL_INSTALL_PLUGINS="${KERNEL_INSTALL_PLUGINS} ${plugins[@]}"
 	fi
 
+	if [[ ${KERNEL_IUSE_SECUREBOOT} ]]; then
+		# Kernel-install requires uki's are named uki.efi, sign in-place
+		secureboot_sign_efi_file "${image}" "${image}"
+	fi
+
 	ebegin "Installing the kernel via installkernel"
 	# note: .config is taken relatively to System.map;
 	# initrd relatively to bzImage


^ permalink raw reply related	[flat|nested] 6131+ messages in thread

* [gentoo-commits] repo/gentoo:master commit in: eclass/
@ 2023-07-20 11:33 Andrew Ammerlaan
  0 siblings, 0 replies; 6131+ messages in thread
From: Andrew Ammerlaan @ 2023-07-20 11:33 UTC (permalink / raw
  To: gentoo-commits

commit:     2c7a2cc2fff75fa25839d7607dc8aa88cb8cc707
Author:     Andrew Ammerlaan <andrewammerlaan <AT> gentoo <DOT> org>
AuthorDate: Thu Jul 13 07:55:32 2023 +0000
Commit:     Andrew Ammerlaan <andrewammerlaan <AT> gentoo <DOT> org>
CommitDate: Thu Jul 20 11:32:14 2023 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=2c7a2cc2

kernel-build.eclass: require modules-sign if secureboot

Signed-off-by: Andrew Ammerlaan <andrewammerlaan <AT> gentoo.org>

 eclass/kernel-build.eclass | 18 +++++++++++++++++-
 1 file changed, 17 insertions(+), 1 deletion(-)

diff --git a/eclass/kernel-build.eclass b/eclass/kernel-build.eclass
index 0c8eaf3c1cd5..ff615a02d0eb 100644
--- a/eclass/kernel-build.eclass
+++ b/eclass/kernel-build.eclass
@@ -29,6 +29,11 @@ if [[ ! ${_KERNEL_BUILD_ECLASS} ]]; then
 _KERNEL_BUILD_ECLASS=1
 
 PYTHON_COMPAT=( python3_{10..12} )
+if [[ ${KERNEL_IUSE_MODULES_SIGN} ]]; then
+	# If we have enabled module signing IUSE
+	# then we can also enable secureboot IUSE
+	KERNEL_IUSE_SECUREBOOT=1
+fi
 
 inherit multiprocessing python-any-r1 savedconfig toolchain-funcs kernel-install
 
@@ -86,8 +91,19 @@ IUSE="+strip"
 
 if [[ ${KERNEL_IUSE_MODULES_SIGN} ]]; then
 	IUSE+=" modules-sign"
+	REQUIRED_USE="secureboot? ( modules-sign )"
 fi
 
+# @FUNCTION: kernel-build_pkg_setup
+# @DESCRIPTION:
+# Call python-any-r1 and secureboot pkg_setup
+kernel-build_pkg_setup() {
+	python-any-r1_pkg_setup
+	if [[ ${KERNEL_IUSE_MODULES_SIGN} ]]; then
+		secureboot_pkg_setup
+	fi
+}
+
 # @FUNCTION: kernel-build_src_configure
 # @DESCRIPTION:
 # Prepare the toolchain for building the kernel, get the default .config
@@ -395,4 +411,4 @@ kernel-build_merge_configs() {
 
 fi
 
-EXPORT_FUNCTIONS src_configure src_compile src_test src_install pkg_postinst
+EXPORT_FUNCTIONS pkg_setup src_configure src_compile src_test src_install pkg_postinst


^ permalink raw reply related	[flat|nested] 6131+ messages in thread

* [gentoo-commits] repo/gentoo:master commit in: eclass/
@ 2023-07-20 12:16 Sam James
  0 siblings, 0 replies; 6131+ messages in thread
From: Sam James @ 2023-07-20 12:16 UTC (permalink / raw
  To: gentoo-commits

commit:     a72b4a02bcd6e21ed62b56955074b2582a9ec785
Author:     Sam James <sam <AT> gentoo <DOT> org>
AuthorDate: Thu Jul 20 12:16:00 2023 +0000
Commit:     Sam James <sam <AT> gentoo <DOT> org>
CommitDate: Thu Jul 20 12:16:00 2023 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=a72b4a02

toolchain.eclass: add note re texinfo QA warning

Signed-off-by: Sam James <sam <AT> gentoo.org>

 eclass/toolchain.eclass | 1 +
 1 file changed, 1 insertion(+)

diff --git a/eclass/toolchain.eclass b/eclass/toolchain.eclass
index ed6692ca8dea..52baf429a58c 100644
--- a/eclass/toolchain.eclass
+++ b/eclass/toolchain.eclass
@@ -1304,6 +1304,7 @@ toolchain_src_configure() {
 		)
 	fi
 
+	# TODO: Ignore RCs here (but TOOLCHAIN_IS_RC isn't yet an eclass var)
 	if [[ ${PV} == *_p* && -f "${S}"/gcc/doc/gcc.info ]] ; then
 		# Safeguard against https://gcc.gnu.org/bugzilla/show_bug.cgi?id=106899 being fixed
 		# without corresponding ebuild changes.


^ permalink raw reply related	[flat|nested] 6131+ messages in thread

* [gentoo-commits] repo/gentoo:master commit in: eclass/
@ 2023-07-21 17:59 Sam James
  0 siblings, 0 replies; 6131+ messages in thread
From: Sam James @ 2023-07-21 17:59 UTC (permalink / raw
  To: gentoo-commits

commit:     b723d7642057b863e8b3f25ff19b3ad9c4f2f160
Author:     Sam James <sam <AT> gentoo <DOT> org>
AuthorDate: Fri Jul 21 00:38:07 2023 +0000
Commit:     Sam James <sam <AT> gentoo <DOT> org>
CommitDate: Fri Jul 21 17:56:50 2023 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=b723d764

dist-kernel-utils.eclass: dist-kernel_get_image_path: handle sparc

Same as hppa/ppc*.

Signed-off-by: Sam James <sam <AT> gentoo.org>

 eclass/dist-kernel-utils.eclass | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/eclass/dist-kernel-utils.eclass b/eclass/dist-kernel-utils.eclass
index cb0021f8b3a7..666896028669 100644
--- a/eclass/dist-kernel-utils.eclass
+++ b/eclass/dist-kernel-utils.eclass
@@ -77,7 +77,7 @@ dist-kernel_get_image_path() {
 		arm)
 			echo arch/arm/boot/zImage
 			;;
-		hppa|ppc|ppc64)
+		hppa|ppc|ppc64|sparc)
 			# https://www.kernel.org/doc/html/latest/powerpc/bootwrapper.html
 			# ./ is required because of ${image_path%/*}
 			# substitutions in the code


^ permalink raw reply related	[flat|nested] 6131+ messages in thread

* [gentoo-commits] repo/gentoo:master commit in: eclass/
@ 2023-07-21 17:59 Sam James
  0 siblings, 0 replies; 6131+ messages in thread
From: Sam James @ 2023-07-21 17:59 UTC (permalink / raw
  To: gentoo-commits

commit:     d1c60c8515d1487149bda90575609a757b8246ef
Author:     Sam James <sam <AT> gentoo <DOT> org>
AuthorDate: Fri Jul 21 00:45:48 2023 +0000
Commit:     Sam James <sam <AT> gentoo <DOT> org>
CommitDate: Fri Jul 21 17:56:49 2023 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=d1c60c85

toolchain-funcs.eclass: tc-ninja_magic_to_arch: rename helper function

Signed-off-by: Sam James <sam <AT> gentoo.org>

 eclass/toolchain-funcs.eclass | 14 +++++++-------
 1 file changed, 7 insertions(+), 7 deletions(-)

diff --git a/eclass/toolchain-funcs.eclass b/eclass/toolchain-funcs.eclass
index bffbf36f1696..78ebfe54e41a 100644
--- a/eclass/toolchain-funcs.eclass
+++ b/eclass/toolchain-funcs.eclass
@@ -666,7 +666,7 @@ tc-has-tls() {
 # Parse information from CBUILD/CHOST/CTARGET rather than
 # use external variables from the profile.
 tc-ninja_magic_to_arch() {
-	ninj() { [[ ${type} == "kern" ]] && echo $1 || echo $2 ; }
+	_tc_echo_kernel_alias() { [[ ${type} == "kern" ]] && echo $1 || echo $2 ; }
 
 	local type=$1
 	local host=$2
@@ -676,16 +676,16 @@ tc-ninja_magic_to_arch() {
 		aarch64*)	echo arm64;;
 		alpha*)		echo alpha;;
 		arm*)		echo arm;;
-		avr*)		ninj avr32 avr;;
-		bfin*)		ninj blackfin bfin;;
+		avr*)		_tc_echo_kernel_alias avr32 avr;;
+		bfin*)		_tc_echo_kernel_alias blackfin bfin;;
 		c6x*)		echo c6x;;
 		cris*)		echo cris;;
 		frv*)		echo frv;;
 		hexagon*)	echo hexagon;;
-		hppa*)		ninj parisc hppa;;
+		hppa*)		_tc_echo_kernel_alias parisc hppa;;
 		i?86*)		echo x86;;
 		ia64*)		echo ia64;;
-		loongarch*)	ninj loongarch loong;;
+		loongarch*)	_tc_echo_kernel_alias loongarch loong;;
 		m68*)		echo m68k;;
 		metag*)		echo metag;;
 		microblaze*)	echo microblaze;;
@@ -708,11 +708,11 @@ tc-ninja_magic_to_arch() {
 		riscv*)		echo riscv;;
 		s390*)		echo s390;;
 		score*)		echo score;;
-		sh64*)		ninj sh64 sh;;
+		sh64*)		_tc_echo_kernel_alias sh64 sh;;
 		sh*)		echo sh;;
 		sparc64*)	ninj sparc64 sparc;;
 		sparc*)		[[ ${PROFILE_ARCH} == "sparc64" ]] \
-						&& ninj sparc64 sparc \
+						&& _tc_echo_kernel_alias sparc64 sparc \
 						|| echo sparc
 					;;
 		tile*)		echo tile;;


^ permalink raw reply related	[flat|nested] 6131+ messages in thread

* [gentoo-commits] repo/gentoo:master commit in: eclass/
@ 2023-07-21 17:59 Sam James
  0 siblings, 0 replies; 6131+ messages in thread
From: Sam James @ 2023-07-21 17:59 UTC (permalink / raw
  To: gentoo-commits

commit:     293d9443082622ae54c1ddbf7335c25a1f4d39a2
Author:     Sam James <sam <AT> gentoo <DOT> org>
AuthorDate: Fri Jul 21 02:09:59 2023 +0000
Commit:     Sam James <sam <AT> gentoo <DOT> org>
CommitDate: Fri Jul 21 17:56:51 2023 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=293d9443

kernel-build.eclass: add special-case for sparc arch/ directory

Unfortunately, we still have a mess wrt dual-bitness arches.

For sparc, there's arch/sparc, with ARCH=sparc being "whatever the toolchain is",
ARCH=sparc32 being "give me a 32-bit kernel", and ARCH=sparc64 being "give me
a 64-bit kernel".

You do, seemingly, need to actually pass ARCH=sparc64 to guarantee correct results,
as various kernel Makefiles check for the ARCH value, even though ARCH=sparc will
pop out a 64-bit kernel.

(I originally updated toolchain-funcs.eclass's tc-ninja_magic_to_arch, but we
later found that doesn't look particularly sturdy.

Per at the very least 5ba800962a80d4158b73fb91a7779df7b770c750 ("kbuild: update ARCH alias info for sparc")
upstream, although it seems to go back a fair bit earlier, ARCH=sparc when building
the kernel means "sparc64" if on a sparc64 host.)

Signed-off-by: Sam James <sam <AT> gentoo.org>

 eclass/kernel-build.eclass | 8 ++++++++
 1 file changed, 8 insertions(+)

diff --git a/eclass/kernel-build.eclass b/eclass/kernel-build.eclass
index ff615a02d0eb..276a08a104e0 100644
--- a/eclass/kernel-build.eclass
+++ b/eclass/kernel-build.eclass
@@ -257,6 +257,14 @@ kernel-build_src_install() {
 	local kern_arch=$(tc-arch-kernel)
 	local dir_ver=${PV}${KV_LOCALVERSION}
 	local kernel_dir=/usr/src/linux-${dir_ver}
+
+	if use sparc ; then
+		# We don't want tc-arch-kernel's sparc64, even though we do
+		# need to pass ARCH=sparc64 to the build system. It's a quasi-alias
+		# in Kbuild.
+		kern_arch=sparc
+	fi
+
 	dodir "${kernel_dir}/arch/${kern_arch}"
 	mv include scripts "${ED}${kernel_dir}/" || die
 	mv "arch/${kern_arch}/include" \


^ permalink raw reply related	[flat|nested] 6131+ messages in thread

* [gentoo-commits] repo/gentoo:master commit in: eclass/
@ 2023-07-21 17:59 Sam James
  0 siblings, 0 replies; 6131+ messages in thread
From: Sam James @ 2023-07-21 17:59 UTC (permalink / raw
  To: gentoo-commits

commit:     706f56d80574a5694a977a63e9f821ac3d9e1358
Author:     Sam James <sam <AT> gentoo <DOT> org>
AuthorDate: Fri Jul 21 00:39:05 2023 +0000
Commit:     Sam James <sam <AT> gentoo <DOT> org>
CommitDate: Fri Jul 21 17:56:51 2023 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=706f56d8

kernel-install.eclass: kernel-install_get_qemu_arch: port to sparc

Signed-off-by: Sam James <sam <AT> gentoo.org>

 eclass/kernel-install.eclass | 8 +++++++-
 1 file changed, 7 insertions(+), 1 deletion(-)

diff --git a/eclass/kernel-install.eclass b/eclass/kernel-install.eclass
index 49aff35dea0d..ef64bde6d414 100644
--- a/eclass/kernel-install.eclass
+++ b/eclass/kernel-install.eclass
@@ -1,4 +1,4 @@
-# Copyright 2020-2022 Gentoo Authors
+# Copyright 2020-2023 Gentoo Authors
 # Distributed under the terms of the GNU General Public License v2
 
 # @ECLASS: kernel-install.eclass
@@ -165,6 +165,12 @@ kernel-install_get_qemu_arch() {
 		riscv)
 			echo riscv
 			;;
+		sparc)
+			echo sparc
+			;;
+		sparc64)
+			echo sparc64
+			;;
 		*)
 			die "${FUNCNAME}: unsupported ARCH=${ARCH}"
 			;;


^ permalink raw reply related	[flat|nested] 6131+ messages in thread

* [gentoo-commits] repo/gentoo:master commit in: eclass/
@ 2023-07-21 17:59 Sam James
  0 siblings, 0 replies; 6131+ messages in thread
From: Sam James @ 2023-07-21 17:59 UTC (permalink / raw
  To: gentoo-commits

commit:     d195dd93c4911185c37d6821ddae01c2f34bcb49
Author:     Sam James <sam <AT> gentoo <DOT> org>
AuthorDate: Fri Jul 21 15:19:41 2023 +0000
Commit:     Sam James <sam <AT> gentoo <DOT> org>
CommitDate: Fri Jul 21 17:56:53 2023 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=d195dd93

kernel-install.eclass: adjust test deps for sparc

Signed-off-by: Sam James <sam <AT> gentoo.org>

 eclass/kernel-install.eclass | 1 +
 1 file changed, 1 insertion(+)

diff --git a/eclass/kernel-install.eclass b/eclass/kernel-install.eclass
index b96caba08a3e..62fbb1dab049 100644
--- a/eclass/kernel-install.eclass
+++ b/eclass/kernel-install.eclass
@@ -69,6 +69,7 @@ BDEPEND="
 		arm64? ( app-emulation/qemu[qemu_softmmu_targets_aarch64] )
 		ppc? ( app-emulation/qemu[qemu_softmmu_targets_ppc] )
 		ppc64? ( app-emulation/qemu[qemu_softmmu_targets_ppc64] )
+		sparc? ( app-emulation/qemu[qemu_softmmu_targets_sparc,qemu_softmmu_targets_sparc64] )
 		x86? ( app-emulation/qemu[qemu_softmmu_targets_i386] )
 	)"
 


^ permalink raw reply related	[flat|nested] 6131+ messages in thread

* [gentoo-commits] repo/gentoo:master commit in: eclass/
@ 2023-07-21 17:59 Sam James
  0 siblings, 0 replies; 6131+ messages in thread
From: Sam James @ 2023-07-21 17:59 UTC (permalink / raw
  To: gentoo-commits

commit:     37cd6231a0cbb920a4dd62e4d3dcdbfa21d578c0
Author:     Sam James <sam <AT> gentoo <DOT> org>
AuthorDate: Fri Jul 21 15:18:39 2023 +0000
Commit:     Sam James <sam <AT> gentoo <DOT> org>
CommitDate: Fri Jul 21 17:56:52 2023 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=37cd6231

kernel-install.eclass: simplify case

Signed-off-by: Sam James <sam <AT> gentoo.org>

 eclass/kernel-install.eclass | 21 +++------------------
 1 file changed, 3 insertions(+), 18 deletions(-)

diff --git a/eclass/kernel-install.eclass b/eclass/kernel-install.eclass
index ef64bde6d414..b96caba08a3e 100644
--- a/eclass/kernel-install.eclass
+++ b/eclass/kernel-install.eclass
@@ -150,27 +150,12 @@ kernel-install_get_qemu_arch() {
 		x86)
 			echo i386
 			;;
-		arm)
-			echo arm
-			;;
+		arm|ppc|ppc64|riscv|sparc|sparc64)
+			echo ${ARCH}
+		;;
 		arm64)
 			echo aarch64
 			;;
-		ppc)
-			echo ppc
-			;;
-		ppc64)
-			echo ppc64
-			;;
-		riscv)
-			echo riscv
-			;;
-		sparc)
-			echo sparc
-			;;
-		sparc64)
-			echo sparc64
-			;;
 		*)
 			die "${FUNCNAME}: unsupported ARCH=${ARCH}"
 			;;


^ permalink raw reply related	[flat|nested] 6131+ messages in thread

* [gentoo-commits] repo/gentoo:master commit in: eclass/
@ 2023-07-21 22:14 Sam James
  0 siblings, 0 replies; 6131+ messages in thread
From: Sam James @ 2023-07-21 22:14 UTC (permalink / raw
  To: gentoo-commits

commit:     4a26040a0e651b7cbb143add51151d7104ef74fe
Author:     Sam James <sam <AT> gentoo <DOT> org>
AuthorDate: Fri Jul 21 22:14:16 2023 +0000
Commit:     Sam James <sam <AT> gentoo <DOT> org>
CommitDate: Fri Jul 21 22:14:16 2023 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=4a26040a

toolchain-funcs.eclass: fix incomplete ninj rename

Lost in rebase as kept changing between splitting/unsplitting sparc64*.

Thanks to dilfridge & ionen for spotting.

Fixes: d1c60c8515d1487149bda90575609a757b8246ef
Signed-off-by: Sam James <sam <AT> gentoo.org>

 eclass/toolchain-funcs.eclass | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/eclass/toolchain-funcs.eclass b/eclass/toolchain-funcs.eclass
index 78ebfe54e41a..acd71eae82e5 100644
--- a/eclass/toolchain-funcs.eclass
+++ b/eclass/toolchain-funcs.eclass
@@ -710,7 +710,7 @@ tc-ninja_magic_to_arch() {
 		score*)		echo score;;
 		sh64*)		_tc_echo_kernel_alias sh64 sh;;
 		sh*)		echo sh;;
-		sparc64*)	ninj sparc64 sparc;;
+		sparc64*)	_tc_echo_kernel_alias sparc64 sparc;;
 		sparc*)		[[ ${PROFILE_ARCH} == "sparc64" ]] \
 						&& _tc_echo_kernel_alias sparc64 sparc \
 						|| echo sparc


^ permalink raw reply related	[flat|nested] 6131+ messages in thread

* [gentoo-commits] repo/gentoo:master commit in: eclass/
@ 2023-07-21 23:49 Sam James
  0 siblings, 0 replies; 6131+ messages in thread
From: Sam James @ 2023-07-21 23:49 UTC (permalink / raw
  To: gentoo-commits

commit:     86dc6e703e32c1e7ae8d74c12669775fca23690e
Author:     Sam James <sam <AT> gentoo <DOT> org>
AuthorDate: Fri Jul 21 22:20:54 2023 +0000
Commit:     Sam James <sam <AT> gentoo <DOT> org>
CommitDate: Fri Jul 21 23:23:11 2023 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=86dc6e70

toolchain-funcs.eclass: formatting tweaks

Signed-off-by: Sam James <sam <AT> gentoo.org>

 eclass/toolchain-funcs.eclass | 24 +++++++++++++-----------
 1 file changed, 13 insertions(+), 11 deletions(-)

diff --git a/eclass/toolchain-funcs.eclass b/eclass/toolchain-funcs.eclass
index acd71eae82e5..2f5ed29e875d 100644
--- a/eclass/toolchain-funcs.eclass
+++ b/eclass/toolchain-funcs.eclass
@@ -338,7 +338,7 @@ tc-is-static-only() {
 tc-stack-grows-down() {
 	# List the few that grow up.
 	case ${ARCH} in
-	hppa|metag) return 1 ;;
+		hppa|metag) return 1 ;;
 	esac
 
 	# Assume all others grow down.
@@ -535,7 +535,7 @@ tc-ld-force-bfd() {
 
 	# Set up LD to point directly to bfd if it's available.
 	# We need to extract the first word in case there are flags appended
-	# to its value (like multilib).  #545218
+	# to its value (like multilib), bug #545218.
 	local ld=$(tc-getLD "$@")
 	local bfd_ld="${ld%% *}.bfd"
 	local path_ld=$(type -P "${bfd_ld}" 2>/dev/null)
@@ -560,6 +560,7 @@ tc-ld-force-bfd() {
 			fallback="false"
 		fi
 	fi
+
 	if [[ ${fallback} == "true" ]] ; then
 		# <=gcc-4.7 and <=clang-3.4 require some coercion.
 		# Only works if bfd exists.
@@ -647,6 +648,7 @@ tc-has-tls() {
 		return *i ? j : *i;
 	}
 	EOF
+
 	local flags
 	case $1 in
 		-s) flags="-S";;
@@ -654,6 +656,7 @@ tc-has-tls() {
 		-l) ;;
 		-*) die "Usage: tc-has-tls [-c|-l] [toolchain prefix]";;
 	esac
+
 	: "${flags:=-fPIC -shared -Wl,-z,defs}"
 	[[ $1 == -* ]] && shift
 	$(tc-getCC "$@") ${flags} "${base}.c" -o "${base}" >&/dev/null
@@ -731,7 +734,7 @@ tc-ninja_magic_to_arch() {
 		# since our usage of tc-arch is largely concerned with
 		# normalizing inputs for testing ${CTARGET}, let's filter
 		# other cross targets (mingw and such) into the unknown.
-		*)			echo unknown;;
+		*)		echo unknown;;
 	esac
 }
 # @FUNCTION: tc-arch-kernel
@@ -781,7 +784,7 @@ tc-endian() {
 		sh*)		echo little;;
 		sparc*)		echo big;;
 		x86_64*)	echo little;;
-		*)			echo wtf;;
+		*)		echo wtf;;
 	esac
 }
 
@@ -1058,18 +1061,17 @@ gen_usr_ldscript() {
 
 	tc-is-static-only && return
 
-	# We only care about stuffing / for the native ABI. #479448
+	# We only care about stuffing / for the native ABI, bug #479448
 	if [[ $(type -t multilib_is_native_abi) == "function" ]] ; then
 		multilib_is_native_abi || return 0
 	fi
 
-	# Eventually we'd like to get rid of this func completely #417451
+	# Eventually we'd like to get rid of this func completely, bug #417451
 	case ${CTARGET:-${CHOST}} in
-	*-darwin*) ;;
-	*-android*) return 0 ;;
-	*linux*)
-		use prefix && return 0 ;;
-	*) return 0 ;;
+		*-darwin*) ;;
+		*-android*) return 0 ;;
+		*linux*) use prefix && return 0 ;;
+		*) return 0 ;;
 	esac
 
 	# Just make sure it exists


^ permalink raw reply related	[flat|nested] 6131+ messages in thread

* [gentoo-commits] repo/gentoo:master commit in: eclass/
@ 2023-07-21 23:49 Sam James
  0 siblings, 0 replies; 6131+ messages in thread
From: Sam James @ 2023-07-21 23:49 UTC (permalink / raw
  To: gentoo-commits

commit:     c4e911da66c918bd0944d1457776b82260657cd6
Author:     Sam James <sam <AT> gentoo <DOT> org>
AuthorDate: Fri Jul 21 22:23:15 2023 +0000
Commit:     Sam James <sam <AT> gentoo <DOT> org>
CommitDate: Fri Jul 21 23:23:12 2023 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=c4e911da

toolchain-funcs.eclass: cleanup old gcc/clang logic in tc-ld-force-bfd

Signed-off-by: Sam James <sam <AT> gentoo.org>

 eclass/toolchain-funcs.eclass | 24 ++++++++----------------
 1 file changed, 8 insertions(+), 16 deletions(-)

diff --git a/eclass/toolchain-funcs.eclass b/eclass/toolchain-funcs.eclass
index 2f5ed29e875d..e194342f7bb5 100644
--- a/eclass/toolchain-funcs.eclass
+++ b/eclass/toolchain-funcs.eclass
@@ -543,25 +543,17 @@ tc-ld-force-bfd() {
 
 	# Set up LDFLAGS to select bfd based on the gcc / clang version.
 	local fallback="true"
-	if tc-is-gcc; then
-		local major=$(gcc-major-version "$@")
-		local minor=$(gcc-minor-version "$@")
-		if [[ ${major} -gt 4 ]] || [[ ${major} -eq 4 && ${minor} -ge 8 ]]; then
-			# gcc-4.8+ supports -fuse-ld directly.
-			export LDFLAGS="${LDFLAGS} -fuse-ld=bfd"
-			fallback="false"
-		fi
-	elif tc-is-clang; then
-		local major=$(clang-major-version "$@")
-		local minor=$(clang-minor-version "$@")
-		if [[ ${major} -gt 3 ]] || [[ ${major} -eq 3 && ${minor} -ge 5 ]]; then
-			# clang-3.5+ supports -fuse-ld directly.
-			export LDFLAGS="${LDFLAGS} -fuse-ld=bfd"
-			fallback="false"
-		fi
+	if tc-is-gcc || tc-is-clang ; then
+		export LDFLAGS="${LDFLAGS} -fuse-ld=bfd"
 	fi
 
 	if [[ ${fallback} == "true" ]] ; then
+		# TODO: Clean this up, or is it useful for when the compiler can't
+		# be detected or for rubbish shims? Might be helpful for cases like
+		# when porting to new linker which GCC doesn't yet recognise (less
+		# of a problem for Clang as it accepts absolute paths), like was
+		# the case for mold.
+		#
 		# <=gcc-4.7 and <=clang-3.4 require some coercion.
 		# Only works if bfd exists.
 		if [[ -e ${path_ld} ]] ; then


^ permalink raw reply related	[flat|nested] 6131+ messages in thread

* [gentoo-commits] repo/gentoo:master commit in: eclass/
@ 2023-07-22 13:04 Michał Górny
  0 siblings, 0 replies; 6131+ messages in thread
From: Michał Górny @ 2023-07-22 13:04 UTC (permalink / raw
  To: gentoo-commits

commit:     b8e00c22cadb9ba3f5f03fba2132659bbfc71bb9
Author:     Michał Górny <mgorny <AT> gentoo <DOT> org>
AuthorDate: Sat Jul 22 06:03:37 2023 +0000
Commit:     Michał Górny <mgorny <AT> gentoo <DOT> org>
CommitDate: Sat Jul 22 13:01:25 2023 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=b8e00c22

llvm.org.eclass: Add 17.0.0_pre20230722 snapshot

Signed-off-by: Michał Górny <mgorny <AT> gentoo.org>

 eclass/llvm.org.eclass | 3 +++
 1 file changed, 3 insertions(+)

diff --git a/eclass/llvm.org.eclass b/eclass/llvm.org.eclass
index 4691b3c9666d..3f4b4d29a7b9 100644
--- a/eclass/llvm.org.eclass
+++ b/eclass/llvm.org.eclass
@@ -72,6 +72,9 @@ if [[ -z ${_LLVM_SOURCE_TYPE+1} ]]; then
 			_LLVM_SOURCE_TYPE=snapshot
 
 			case ${PV} in
+				17.0.0_pre20230722)
+					EGIT_COMMIT=5f1a388a11ae67c2e5d7a4d1fe45e369a393c572
+					;;
 				17.0.0_pre20230717)
 					EGIT_COMMIT=3cd3f11c174baa001b337b88c7a6507eb5705cf2
 					;;


^ permalink raw reply related	[flat|nested] 6131+ messages in thread

* [gentoo-commits] repo/gentoo:master commit in: eclass/
@ 2023-07-25 16:11 Michał Górny
  0 siblings, 0 replies; 6131+ messages in thread
From: Michał Górny @ 2023-07-25 16:11 UTC (permalink / raw
  To: gentoo-commits

commit:     70e137162cc0978da3fe6f1c4c7f2b3dd738f585
Author:     Michał Górny <mgorny <AT> gentoo <DOT> org>
AuthorDate: Tue Jul 25 16:05:00 2023 +0000
Commit:     Michał Górny <mgorny <AT> gentoo <DOT> org>
CommitDate: Tue Jul 25 16:11:16 2023 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=70e13716

llvm.org.eclass: main is now 18.x

Signed-off-by: Michał Górny <mgorny <AT> gentoo.org>

 eclass/llvm.org.eclass | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/eclass/llvm.org.eclass b/eclass/llvm.org.eclass
index 0b058ee7d6fc..765619b8a043 100644
--- a/eclass/llvm.org.eclass
+++ b/eclass/llvm.org.eclass
@@ -57,7 +57,7 @@ LLVM_VERSION=$(ver_cut 1-3)
 # @DESCRIPTION:
 # The major version of current LLVM trunk.  Used to determine
 # the correct branch to use.
-_LLVM_MASTER_MAJOR=17
+_LLVM_MASTER_MAJOR=18
 
 # @ECLASS_VARIABLE: _LLVM_SOURCE_TYPE
 # @INTERNAL


^ permalink raw reply related	[flat|nested] 6131+ messages in thread

* [gentoo-commits] repo/gentoo:master commit in: eclass/
@ 2023-07-25 16:11 Michał Górny
  0 siblings, 0 replies; 6131+ messages in thread
From: Michał Górny @ 2023-07-25 16:11 UTC (permalink / raw
  To: gentoo-commits

commit:     17423585ad57a733ac81e45292c17f2899730f7b
Author:     Michał Górny <mgorny <AT> gentoo <DOT> org>
AuthorDate: Tue Jul 25 16:03:56 2023 +0000
Commit:     Michał Górny <mgorny <AT> gentoo <DOT> org>
CommitDate: Tue Jul 25 16:11:15 2023 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=17423585

llvm.org.eclass: Remove old snapshots

Signed-off-by: Michał Górny <mgorny <AT> gentoo.org>

 eclass/llvm.org.eclass | 6 ------
 1 file changed, 6 deletions(-)

diff --git a/eclass/llvm.org.eclass b/eclass/llvm.org.eclass
index 3f4b4d29a7b9..0b058ee7d6fc 100644
--- a/eclass/llvm.org.eclass
+++ b/eclass/llvm.org.eclass
@@ -75,12 +75,6 @@ if [[ -z ${_LLVM_SOURCE_TYPE+1} ]]; then
 				17.0.0_pre20230722)
 					EGIT_COMMIT=5f1a388a11ae67c2e5d7a4d1fe45e369a393c572
 					;;
-				17.0.0_pre20230717)
-					EGIT_COMMIT=3cd3f11c174baa001b337b88c7a6507eb5705cf2
-					;;
-				17.0.0_pre20230705)
-					EGIT_COMMIT=5ae7fde004cbc640c2f60207791ac36574e5f5c6
-					;;
 				*)
 					die "Unknown snapshot: ${PV}"
 					;;


^ permalink raw reply related	[flat|nested] 6131+ messages in thread

* [gentoo-commits] repo/gentoo:master commit in: eclass/
@ 2023-07-25 16:11 Michał Górny
  0 siblings, 0 replies; 6131+ messages in thread
From: Michał Górny @ 2023-07-25 16:11 UTC (permalink / raw
  To: gentoo-commits

commit:     39ea1f5cbb12c9bb5087fc17a98f552173ad6401
Author:     Michał Górny <mgorny <AT> gentoo <DOT> org>
AuthorDate: Tue Jul 25 16:05:42 2023 +0000
Commit:     Michał Górny <mgorny <AT> gentoo <DOT> org>
CommitDate: Tue Jul 25 16:11:17 2023 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=39ea1f5c

llvm.org.eclass: master → main

Signed-off-by: Michał Górny <mgorny <AT> gentoo.org>

 eclass/llvm.org.eclass | 12 ++++++------
 1 file changed, 6 insertions(+), 6 deletions(-)

diff --git a/eclass/llvm.org.eclass b/eclass/llvm.org.eclass
index 765619b8a043..a3c268dfef80 100644
--- a/eclass/llvm.org.eclass
+++ b/eclass/llvm.org.eclass
@@ -52,12 +52,12 @@ LLVM_VERSION=$(ver_cut 1-3)
 
 # == internal control bits ==
 
-# @ECLASS_VARIABLE: _LLVM_MASTER_MAJOR
+# @ECLASS_VARIABLE: _LLVM_MAIN_MAJOR
 # @INTERNAL
 # @DESCRIPTION:
 # The major version of current LLVM trunk.  Used to determine
 # the correct branch to use.
-_LLVM_MASTER_MAJOR=18
+_LLVM_MAIN_MAJOR=18
 
 # @ECLASS_VARIABLE: _LLVM_SOURCE_TYPE
 # @INTERNAL
@@ -89,8 +89,8 @@ fi
 
 [[ ${_LLVM_SOURCE_TYPE} == git ]] && inherit git-r3
 
-[[ ${LLVM_MAJOR} == ${_LLVM_MASTER_MAJOR} && ${_LLVM_SOURCE_TYPE} == tar ]] &&
-	die "${ECLASS}: Release ebuild for master branch?!"
+[[ ${LLVM_MAJOR} == ${_LLVM_MAIN_MAJOR} && ${_LLVM_SOURCE_TYPE} == tar ]] &&
+	die "${ECLASS}: Release ebuild for main branch?!"
 
 inherit multiprocessing
 
@@ -205,7 +205,7 @@ ALL_LLVM_TARGET_FLAGS=(
 # as a subslot.  This is equal to LLVM_MAJOR for releases, and to PV
 # for the main branch.
 LLVM_SOABI=${LLVM_MAJOR}
-[[ ${LLVM_MAJOR} == ${_LLVM_MASTER_MAJOR} ]] && LLVM_SOABI=${PV}
+[[ ${LLVM_MAJOR} == ${_LLVM_MAIN_MAJOR} ]] && LLVM_SOABI=${PV}
 
 # == global scope logic ==
 
@@ -227,7 +227,7 @@ llvm.org_set_globals() {
 		git)
 			EGIT_REPO_URI="https://github.com/llvm/llvm-project.git"
 
-			[[ ${LLVM_MAJOR} != ${_LLVM_MASTER_MAJOR} ]] &&
+			[[ ${LLVM_MAJOR} != ${_LLVM_MAIN_MAJOR} ]] &&
 				EGIT_BRANCH="release/${LLVM_MAJOR}.x"
 			;;
 		tar)


^ permalink raw reply related	[flat|nested] 6131+ messages in thread

* [gentoo-commits] repo/gentoo:master commit in: eclass/
@ 2023-07-26  2:53 Sam James
  0 siblings, 0 replies; 6131+ messages in thread
From: Sam James @ 2023-07-26  2:53 UTC (permalink / raw
  To: gentoo-commits

commit:     af790bf6bf4866ff4057e332bdf71dc2f9fb03ed
Author:     Sam James <sam <AT> gentoo <DOT> org>
AuthorDate: Wed Jul 26 01:07:56 2023 +0000
Commit:     Sam James <sam <AT> gentoo <DOT> org>
CommitDate: Wed Jul 26 02:47:07 2023 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=af790bf6

llvm.eclass: fix _LLVM_KNOWN_SLOTS for LLVM 18

Thanks to vimproved for reporting.

Signed-off-by: Sam James <sam <AT> gentoo.org>

 eclass/llvm.eclass | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/eclass/llvm.eclass b/eclass/llvm.eclass
index 223e2a15baf4..8198650aad9a 100644
--- a/eclass/llvm.eclass
+++ b/eclass/llvm.eclass
@@ -78,7 +78,7 @@ DEPEND="!!sys-devel/llvm:0"
 # @INTERNAL
 # @DESCRIPTION:
 # Correct values of LLVM slots, newest first.
-declare -g -r _LLVM_KNOWN_SLOTS=( {17..8} )
+declare -g -r _LLVM_KNOWN_SLOTS=( {18..8} )
 
 # @FUNCTION: get_llvm_slot
 # @USAGE: [-b|-d] [<max_slot>]


^ permalink raw reply related	[flat|nested] 6131+ messages in thread

* [gentoo-commits] repo/gentoo:master commit in: eclass/
@ 2023-07-26  6:03 Michał Górny
  0 siblings, 0 replies; 6131+ messages in thread
From: Michał Górny @ 2023-07-26  6:03 UTC (permalink / raw
  To: gentoo-commits

commit:     4761ac9cebefde3ee6e9ab42e7da399829c1b953
Author:     Sebastian Parborg <darkdefende <AT> gmail <DOT> com>
AuthorDate: Sat Jul 15 23:47:40 2023 +0000
Commit:     Michał Górny <mgorny <AT> gentoo <DOT> org>
CommitDate: Wed Jul 26 06:03:48 2023 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=4761ac9c

git-r3.eclass: Add Git LFS support

Signed-off-by: Sebastian Parborg <darkdefende <AT> gmail.com>
Closes: https://github.com/gentoo/gentoo/pull/31905
Signed-off-by: Michał Górny <mgorny <AT> gentoo.org>

 eclass/git-r3.eclass | 90 ++++++++++++++++++++++++++++++++++++++++++++++++++++
 1 file changed, 90 insertions(+)

diff --git a/eclass/git-r3.eclass b/eclass/git-r3.eclass
index 5ac141962b12..83c5ab590c39 100644
--- a/eclass/git-r3.eclass
+++ b/eclass/git-r3.eclass
@@ -10,6 +10,21 @@
 # Third generation eclass for easing maintenance of live ebuilds using
 # git as remote repository.
 
+# @ECLASS_VARIABLE: EGIT_LFS
+# @PRE_INHERIT
+# @DEFAULT_UNSET
+# @DESCRIPTION:
+# If set, git lfs support will be enabled.
+# Set before inheriting this eclass.
+
+# @ECLASS_VARIABLE: _NUM_LFS_FILTERS_FOUND
+# @INTERNAL
+# @DEFAULT_UNSET
+# @DESCRIPTION:
+# This is used to provide QA warnings if a repo has git lfs filters
+# defined but EGIT_LFS is not turned on and vice versa.
+# If non-empty, then the repo likely needs EGIT_LFS to clone properly.
+
 case ${EAPI} in
 	6|7|8) ;;
 	*) die "${ECLASS}: EAPI ${EAPI:-0} not supported" ;;
@@ -22,8 +37,10 @@ PROPERTIES+=" live"
 
 if [[ ${EAPI} != 6 ]]; then
 	BDEPEND=">=dev-vcs/git-1.8.2.1[curl]"
+	[[ ${EGIT_LFS} ]] && BDEPEND+=" dev-vcs/git-lfs"
 else
 	DEPEND=">=dev-vcs/git-1.8.2.1[curl]"
+	[[ ${EGIT_LFS} ]] && DEPEND+=" dev-vcs/git-lfs"
 fi
 
 # @ECLASS_VARIABLE: EGIT_CLONE_TYPE
@@ -81,6 +98,28 @@ fi
 # fatal errors rather than 'non-pretty versions'.
 : "${EGIT_MIN_CLONE_TYPE:=shallow}"
 
+# @ECLASS_VARIABLE: EGIT_LFS_CLONE_TYPE
+# @USER_VARIABLE
+# @DESCRIPTION:
+# Type of lfs clone that should be used against the remote repository.
+# This can be either of: 'mirror', 'single', 'shallow'.
+#
+# This works a bit differently than EGIT_CLONE_TYPE.
+#
+# The 'mirror' type clones all LFS files that is available from the
+# cloned repo. Is is mostly useful for backup or rehosting purposes as
+# the disk usage will be excessive.
+#
+# The 'single' type clones only the LFS files from the current commit.
+# However unlike 'shallow', it will not cleanup stale LFS files.
+#
+# The 'shallow' type clones only the LFS files from the current commit.
+# LFS files that are not referenced by the current commit and more than
+# a few days old will be automatically removed to save disk space.
+# This is the recommended mode for LFS repos to prevent excessive disk
+# usage.
+: "${EGIT_LFS_CLONE_TYPE:=shallow}"
+
 # @ECLASS_VARIABLE: EGIT3_STORE_DIR
 # @USER_VARIABLE
 # @DEFAULT_UNSET
@@ -760,6 +799,35 @@ git-r3_fetch() {
 			fi
 		fi
 
+		if [[ ${EGIT_LFS} ]]; then
+			# Fetch the LFS files from the current ref (if any)
+			local lfs_fetch_command=( git lfs fetch "${r}" )
+
+			case "${EGIT_LFS_CLONE_TYPE}" in
+				shallow)
+					lfs_fetch_command+=(
+						--prune
+					)
+					;;
+				single)
+					;;
+				mirror)
+					lfs_fetch_command+=(
+						--all
+					)
+					;;
+				*)
+					die "Invalid EGIT_LFS_CLONE_TYPE=${EGIT_LFS_CLONE_TYPE}"
+			esac
+
+			set -- "${lfs_fetch_command[@]}"
+			echo "${@}" >&2
+			"${@}" || die
+		elif [[ -d ${GIT_DIR}/lfs && ${EGIT_LFS_CLONE_TYPE} == shallow ]]; then
+			# Cleanup the LFS files from old checkouts if LFS support has been turned off.
+			rm -fr ${GIT_DIR}/lfs || die
+		fi
+
 		success=1
 		break
 	done
@@ -875,6 +943,11 @@ git-r3_checkout() {
 		# non-empty directories.
 
 		git init --quiet -b __init__ || die
+		if [[ ${EGIT_LFS} ]]; then
+			# The "skip-repo" flag will just skip the installation of the pre-push hooks.
+			# We don't use these hook as we don't do any pushes
+			git lfs install --local --skip-repo || die
+		fi
 		# setup 'alternates' to avoid copying objects
 		echo "${orig_repo}/objects" > "${GIT_DIR}"/objects/info/alternates || die
 		# now copy the refs
@@ -905,6 +978,16 @@ git-r3_checkout() {
 		fi
 		echo "${@}" >&2
 		"${@}" || die "git checkout ${remote_ref:-${new_commit_id}} failed"
+
+		# If any filters in any of the ".gitattributes" files specifies lfs,
+		# then this repo is most likely storing files with git lfs.
+		local has_git_lfs_filters=$(
+			git grep "filter=lfs" -- ".gitattributes" "**/.gitattributes"
+		)
+		if [[ $has_git_lfs_filters ]]; then
+			# This is used for issuing QA warnings regarding LFS files in the repo (or lack thereof)
+			_EGIT_LFS_FILTERS_FOUND="yes"
+		fi
 	}
 	git-r3_sub_checkout
 	unset -f git-r3_sub_checkout
@@ -1054,6 +1137,13 @@ git-r3_src_unpack() {
 	_git-r3_env_setup
 	git-r3_src_fetch
 	git-r3_checkout
+
+	if [[ ! ${EGIT_LFS} && ${_EGIT_LFS_FILTERS_FOUND} ]]; then
+		eqawarn "QA Notice: There are Git LFS filters setup in the cloned repo, consider using EGIT_LFS!"
+	fi
+	if [[ ${EGIT_LFS} && ! ${_EGIT_LFS_FILTERS_FOUND} ]]; then
+		eqawarn "QA Notice: There are no Git LFS filters setup in the cloned repo. EGIT_LFS will do nothing!"
+	fi
 }
 
 # https://bugs.gentoo.org/show_bug.cgi?id=482666


^ permalink raw reply related	[flat|nested] 6131+ messages in thread

* [gentoo-commits] repo/gentoo:master commit in: eclass/
@ 2023-07-27 16:36 Ulrich Müller
  0 siblings, 0 replies; 6131+ messages in thread
From: Ulrich Müller @ 2023-07-27 16:36 UTC (permalink / raw
  To: gentoo-commits

commit:     6eb0dc54a2c89c9f73e1d1e68841d2940961ebce
Author:     Ulrich Müller <ulm <AT> gentoo <DOT> org>
AuthorDate: Thu Jul 27 13:47:49 2023 +0000
Commit:     Ulrich Müller <ulm <AT> gentoo <DOT> org>
CommitDate: Thu Jul 27 16:36:07 2023 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=6eb0dc54

kernel-2.eclass: Replace the ill-defined linux-firmware license label

Replace by "linux-fw-redistributable all-rights-reserved" which reflects
usage by the linux-firmware package.

This only affects kernels before 4.14.

Signed-off-by: Ulrich Müller <ulm <AT> gentoo.org>

 eclass/kernel-2.eclass | 5 +++--
 1 file changed, 3 insertions(+), 2 deletions(-)

diff --git a/eclass/kernel-2.eclass b/eclass/kernel-2.eclass
index 2ce1a87c0650..bdeabb9fc2dc 100644
--- a/eclass/kernel-2.eclass
+++ b/eclass/kernel-2.eclass
@@ -680,7 +680,8 @@ if [[ ${ETYPE} == sources ]]; then
 			# Reflect that kernels contain firmware blobs unless otherwise
 			# stripped. Starting with version 4.14, the whole firmware
 			# tree has been dropped from the kernel.
-			kernel_is lt 4 14 && LICENSE+=" !deblob? ( linux-firmware )"
+			kernel_is lt 4 14 &&
+				LICENSE+=" !deblob? ( linux-fw-redistributable all-rights-reserved )"
 
 			if [[ -n KV_MINOR ]]; then
 				DEBLOB_PV="${KV_MAJOR}.${KV_MINOR}.${KV_PATCH}"
@@ -710,7 +711,7 @@ if [[ ${ETYPE} == sources ]]; then
 		elif kernel_is lt 4 14; then
 			# Deblobbing is not available, so just mark kernels older
 			# than 4.14 as tainted with non-libre materials.
-			LICENSE+=" linux-firmware"
+			LICENSE+=" linux-fw-redistributable all-rights-reserved"
 		fi
 	fi
 


^ permalink raw reply related	[flat|nested] 6131+ messages in thread

* [gentoo-commits] repo/gentoo:master commit in: eclass/
@ 2023-07-27 18:26 Matthew Thode
  0 siblings, 0 replies; 6131+ messages in thread
From: Matthew Thode @ 2023-07-27 18:26 UTC (permalink / raw
  To: gentoo-commits

commit:     4a4d6b1160258c9f42337973baf9f7b9820b6cc9
Author:     Andrew Ammerlaan <andrewammerlaan <AT> gentoo <DOT> org>
AuthorDate: Thu Jul 27 09:27:12 2023 +0000
Commit:     Matthew Thode <prometheanfire <AT> gentoo <DOT> org>
CommitDate: Thu Jul 27 18:26:02 2023 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=4a4d6b11

dist-kernel-utils.eclass: also rebuild initrd when using uki's

An UKI contains some initrd, so in situations where we want
to regenerate the initrd we also want to rebuild the UKIs

Signed-off-by: Andrew Ammerlaan <andrewammerlaan <AT> gentoo.org>
Signed-off-by: Matthew Thode <prometheanfire <AT> gentoo.org>

 eclass/dist-kernel-utils.eclass | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/eclass/dist-kernel-utils.eclass b/eclass/dist-kernel-utils.eclass
index 666896028669..6903183b6efb 100644
--- a/eclass/dist-kernel-utils.eclass
+++ b/eclass/dist-kernel-utils.eclass
@@ -171,8 +171,8 @@ dist-kernel_reinstall_initramfs() {
 		eerror "Initramfs will not be updated.  Please reinstall your kernel."
 		return
 	fi
-	if [[ ! -f ${initramfs_path} ]]; then
-		einfo "No initramfs found at ${initramfs_path}"
+	if [[ ! -f ${initramfs_path} && ! -f ${initramfs_path%/*}/uki.efi ]]; then
+		einfo "No initramfs or uki found at ${image_path}"
 		return
 	fi
 


^ permalink raw reply related	[flat|nested] 6131+ messages in thread

* [gentoo-commits] repo/gentoo:master commit in: eclass/
@ 2023-07-29  2:24 Sam James
  0 siblings, 0 replies; 6131+ messages in thread
From: Sam James @ 2023-07-29  2:24 UTC (permalink / raw
  To: gentoo-commits

commit:     2c5a722facb7b317535d2e6d439861506687289f
Author:     Sam James <sam <AT> gentoo <DOT> org>
AuthorDate: Sat Jul 29 02:23:13 2023 +0000
Commit:     Sam James <sam <AT> gentoo <DOT> org>
CommitDate: Sat Jul 29 02:23:48 2023 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=2c5a722f

toolchain.eclass: 'endusers' -> 'end users'

It's (surprisingly to me) not a compound word.

Signed-off-by: Sam James <sam <AT> gentoo.org>

 eclass/toolchain.eclass | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/eclass/toolchain.eclass b/eclass/toolchain.eclass
index 52baf429a58c..cc104873a497 100644
--- a/eclass/toolchain.eclass
+++ b/eclass/toolchain.eclass
@@ -1636,7 +1636,7 @@ gcc_do_make() {
 			GCC_MAKE_TARGET=${GCC_MAKE_TARGET-all}
 
 			ewarn "Disabling bootstrapping. ONLY recommended for development."
-			ewarn "This is NOT a safe configuration for endusers!"
+			ewarn "This is NOT a safe configuration for end users!"
 			ewarn "This compiler may not be safe or reliable for production use!"
 		elif _tc_use_if_iuse pgo; then
 			GCC_MAKE_TARGET=${GCC_MAKE_TARGET-profiledbootstrap}


^ permalink raw reply related	[flat|nested] 6131+ messages in thread

* [gentoo-commits] repo/gentoo:master commit in: eclass/
@ 2023-07-30 18:29 Sam James
  0 siblings, 0 replies; 6131+ messages in thread
From: Sam James @ 2023-07-30 18:29 UTC (permalink / raw
  To: gentoo-commits

commit:     c26413ae8029f1557aae95b6f8744fc16671fa3b
Author:     Sam James <sam <AT> gentoo <DOT> org>
AuthorDate: Sun Jul 30 18:28:23 2023 +0000
Commit:     Sam James <sam <AT> gentoo <DOT> org>
CommitDate: Sun Jul 30 18:29:25 2023 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=c26413ae

toolchain-funcs.eclass: fix tc-force-bfd

Before c4e911da66c918bd0944d1457776b82260657cd6, fallback would be false
for newer GCC and Clang, not true.

Thanks to parona for giving the nudge.

Closes: https://bugs.gentoo.org/911503
Fixes: c4e911da66c918bd0944d1457776b82260657cd6
Signed-off-by: Sam James <sam <AT> gentoo.org>

 eclass/toolchain-funcs.eclass | 3 +--
 1 file changed, 1 insertion(+), 2 deletions(-)

diff --git a/eclass/toolchain-funcs.eclass b/eclass/toolchain-funcs.eclass
index e194342f7bb5..26b7a0772ca6 100644
--- a/eclass/toolchain-funcs.eclass
+++ b/eclass/toolchain-funcs.eclass
@@ -542,12 +542,11 @@ tc-ld-force-bfd() {
 	[[ -e ${path_ld} ]] && export LD=${bfd_ld}
 
 	# Set up LDFLAGS to select bfd based on the gcc / clang version.
-	local fallback="true"
 	if tc-is-gcc || tc-is-clang ; then
 		export LDFLAGS="${LDFLAGS} -fuse-ld=bfd"
 	fi
 
-	if [[ ${fallback} == "true" ]] ; then
+	if false ; then
 		# TODO: Clean this up, or is it useful for when the compiler can't
 		# be detected or for rubbish shims? Might be helpful for cases like
 		# when porting to new linker which GCC doesn't yet recognise (less


^ permalink raw reply related	[flat|nested] 6131+ messages in thread

* [gentoo-commits] repo/gentoo:master commit in: eclass/
@ 2023-07-30 18:38 Sam James
  0 siblings, 0 replies; 6131+ messages in thread
From: Sam James @ 2023-07-30 18:38 UTC (permalink / raw
  To: gentoo-commits

commit:     af86694a988bf16a794191383b4b624d99d4a39f
Author:     Sam James <sam <AT> gentoo <DOT> org>
AuthorDate: Sun Jul 30 18:36:07 2023 +0000
Commit:     Sam James <sam <AT> gentoo <DOT> org>
CommitDate: Sun Jul 30 18:38:17 2023 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=af86694a

toolchain-funcs.eclass: shift comment

It makes a bit more sense (although still a bit suspicious, wonder if should
strip . as well, see c26413ae8029f1557aae95b6f8744fc16671fa3b and bug #911503
where we had 'ld.lld.bd') now with the comment in the right place.

It was added originally for bug #545218 (b959fb6c158d4727e85472b3a50af5af3f719972).

Bug: https://bugs.gentoo.org/545218
Bug: https://bugs.gentoo.org/911503
Signed-off-by: Sam James <sam <AT> gentoo.org>

 eclass/toolchain-funcs.eclass | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/eclass/toolchain-funcs.eclass b/eclass/toolchain-funcs.eclass
index 26b7a0772ca6..0eca4dde9f36 100644
--- a/eclass/toolchain-funcs.eclass
+++ b/eclass/toolchain-funcs.eclass
@@ -534,9 +534,9 @@ tc-ld-force-bfd() {
 	ewarn "Forcing usage of the BFD linker"
 
 	# Set up LD to point directly to bfd if it's available.
+	local ld=$(tc-getLD "$@")
 	# We need to extract the first word in case there are flags appended
 	# to its value (like multilib), bug #545218.
-	local ld=$(tc-getLD "$@")
 	local bfd_ld="${ld%% *}.bfd"
 	local path_ld=$(type -P "${bfd_ld}" 2>/dev/null)
 	[[ -e ${path_ld} ]] && export LD=${bfd_ld}


^ permalink raw reply related	[flat|nested] 6131+ messages in thread

* [gentoo-commits] repo/gentoo:master commit in: eclass/
@ 2023-07-30 18:41 Sam James
  0 siblings, 0 replies; 6131+ messages in thread
From: Sam James @ 2023-07-30 18:41 UTC (permalink / raw
  To: gentoo-commits

commit:     d719ea13be2cd289a371806b226aff218c30f07f
Author:     Sam James <sam <AT> gentoo <DOT> org>
AuthorDate: Sun Jul 30 18:40:12 2023 +0000
Commit:     Sam James <sam <AT> gentoo <DOT> org>
CommitDate: Sun Jul 30 18:40:19 2023 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=d719ea13

toolchain-funcs.eclass: cleanup obsolete bits in tc-ld-force-bfd

I didn't want to drop this entirely in c26413ae8029f1557aae95b6f8744fc16671fa3b
as I wanted to keep it to just fixing the error I'd made, but I don't see the
point in keeping this now anyway - non-gcc/clang isn't a thing and if it is
I'd hope they'd support -fuse-ld=bfd anyway.

Plus it's an obvious approach if we need it for something else like forcing
an alt linker that isn't bfd anyway, no need for having cruft remaining.

Signed-off-by: Sam James <sam <AT> gentoo.org>

 eclass/toolchain-funcs.eclass | 19 -------------------
 1 file changed, 19 deletions(-)

diff --git a/eclass/toolchain-funcs.eclass b/eclass/toolchain-funcs.eclass
index 0eca4dde9f36..e28f6148ddc1 100644
--- a/eclass/toolchain-funcs.eclass
+++ b/eclass/toolchain-funcs.eclass
@@ -545,25 +545,6 @@ tc-ld-force-bfd() {
 	if tc-is-gcc || tc-is-clang ; then
 		export LDFLAGS="${LDFLAGS} -fuse-ld=bfd"
 	fi
-
-	if false ; then
-		# TODO: Clean this up, or is it useful for when the compiler can't
-		# be detected or for rubbish shims? Might be helpful for cases like
-		# when porting to new linker which GCC doesn't yet recognise (less
-		# of a problem for Clang as it accepts absolute paths), like was
-		# the case for mold.
-		#
-		# <=gcc-4.7 and <=clang-3.4 require some coercion.
-		# Only works if bfd exists.
-		if [[ -e ${path_ld} ]] ; then
-			local d="${T}/bfd-linker"
-			mkdir -p "${d}"
-			ln -sf "${path_ld}" "${d}"/ld
-			export LDFLAGS="${LDFLAGS} -B${d}"
-		else
-			die "unable to locate a BFD linker"
-		fi
-	fi
 }
 
 # @FUNCTION: _tc-has-openmp


^ permalink raw reply related	[flat|nested] 6131+ messages in thread

* [gentoo-commits] repo/gentoo:master commit in: eclass/
@ 2023-07-31  2:36 Sam James
  0 siblings, 0 replies; 6131+ messages in thread
From: Sam James @ 2023-07-31  2:36 UTC (permalink / raw
  To: gentoo-commits

commit:     913d9dfb7d4085a133192fcab817202b2a94bf3b
Author:     Sam James <sam <AT> gentoo <DOT> org>
AuthorDate: Mon Jul 31 02:35:13 2023 +0000
Commit:     Sam James <sam <AT> gentoo <DOT> org>
CommitDate: Mon Jul 31 02:35:13 2023 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=913d9dfb

toolchain.eclass: sanity-check against bootstrapping for cross

Had a report on IRC where bootstrap-cet was being used for a cross-compiler
which seems wrong even if it's a bit odd that --disable-bootstrap doesn't
win with it. Add a guard as we don't need any of the bootstrap-* targets
for cross.

Thanks to Ionen for spotting.

Signed-off-by: Sam James <sam <AT> gentoo.org>

 eclass/toolchain.eclass | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/eclass/toolchain.eclass b/eclass/toolchain.eclass
index cc104873a497..edd4c89bb00a 100644
--- a/eclass/toolchain.eclass
+++ b/eclass/toolchain.eclass
@@ -1320,8 +1320,8 @@ toolchain_src_configure() {
 
 	confgcc+=( "$@" ${EXTRA_ECONF} )
 
-	if [[ -n ${build_config_targets} ]] ; then
-		# ./configure --with-build-config='bootstrap-lto bootstrap-cet'
+	if ! is_crosscompile && ! tc-is-cross-compiler && [[ -n ${build_config_targets} ]] ; then
+		# e.g. ./configure --with-build-config='bootstrap-lto bootstrap-cet'
 		confgcc+=( --with-build-config="${build_config_targets[*]}" )
 	fi
 


^ permalink raw reply related	[flat|nested] 6131+ messages in thread

* [gentoo-commits] repo/gentoo:master commit in: eclass/
@ 2023-07-31 15:12 David Seifert
  0 siblings, 0 replies; 6131+ messages in thread
From: David Seifert @ 2023-07-31 15:12 UTC (permalink / raw
  To: gentoo-commits

commit:     9ee970fd6afc45d0ea99f3bab90b40c8ce6b40c5
Author:     David Seifert <soap <AT> gentoo <DOT> org>
AuthorDate: Mon Jul 31 15:12:33 2023 +0000
Commit:     David Seifert <soap <AT> gentoo <DOT> org>
CommitDate: Mon Jul 31 15:12:33 2023 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=9ee970fd

pam.eclass: remove EAPI 6

Closes: https://github.com/gentoo/gentoo/pull/31917
Signed-off-by: David Seifert <soap <AT> gentoo.org>

 eclass/pam.eclass | 69 +++++++++++++++++++++++++------------------------------
 1 file changed, 31 insertions(+), 38 deletions(-)

diff --git a/eclass/pam.eclass b/eclass/pam.eclass
index 22b59ad65e43..2516fa896587 100644
--- a/eclass/pam.eclass
+++ b/eclass/pam.eclass
@@ -6,14 +6,14 @@
 # base-system@gentoo.org
 # @AUTHOR:
 # Diego Pettenò <flameeyes@gentoo.org>
-# @SUPPORTED_EAPIS: 6 7 8
+# @SUPPORTED_EAPIS: 7 8
 # @BLURB: Handles pam related tasks
 # @DESCRIPTION:
 # This eclass contains functions to install pamd configuration files and
 # pam modules.
 
-case ${EAPI:-0} in
-	[678]) ;;
+case ${EAPI} in
+	7|8) ;;
 	*) die "${ECLASS}: EAPI ${EAPI:-0} not supported" ;;
 esac
 
@@ -22,6 +22,14 @@ _PAM_ECLASS=1
 
 inherit flag-o-matic
 
+# @FUNCTION: _pam_flag_disabled
+# @INTERNAL
+# @DESCRIPTION:
+# Check whether pam support is disabled.
+_pam_flag_disabled() {
+	in_iuse pam && ! use pam
+}
+
 # @FUNCTION: dopamd
 # @USAGE: <file> [more files]
 # @DESCRIPTION:
@@ -29,15 +37,13 @@ inherit flag-o-matic
 dopamd() {
 	[[ -z $1 ]] && die "dopamd requires at least one argument"
 
-	if has pam ${IUSE} && ! use pam; then
-		return 0;
-	fi
+	_pam_flag_disabled && return 0
 
 	( # dont want to pollute calling env
 		insinto /etc/pam.d
 		insopts -m 0644
 		doins "$@"
-	) || die "failed to install $@"
+	)
 	cleanpamd "$@"
 }
 
@@ -48,15 +54,13 @@ dopamd() {
 newpamd() {
 	[[ $# -ne 2 ]] && die "newpamd requires two arguments"
 
-	if has pam ${IUSE} && ! use pam; then
-		return 0;
-	fi
+	_pam_flag_disabled && return 0
 
 	( # dont want to pollute calling env
 		insinto /etc/pam.d
 		insopts -m 0644
 		newins "$1" "$2"
-	) || die "failed to install $1 as $2"
+	)
 	cleanpamd $2
 }
 
@@ -67,15 +71,13 @@ newpamd() {
 dopamsecurity() {
 	[[ $# -lt 2 ]] && die "dopamsecurity requires at least two arguments"
 
-	if has pam ${IUSE} && ! use pam; then
-		return 0
-	fi
+	_pam_flag_disabled && return 0
 
 	( # dont want to pollute calling env
 		insinto /etc/security/$1
 		insopts -m 0644
 		doins "${@:2}"
-	) || die "failed to install ${@:2}"
+	)
 }
 
 # @FUNCTION: newpamsecurity
@@ -85,15 +87,13 @@ dopamsecurity() {
 newpamsecurity() {
 	[[ $# -ne 3 ]] && die "newpamsecurity requires three arguments"
 
-	if has pam ${IUSE} && ! use pam; then
-		return 0;
-	fi
+	_pam_flag_disabled && return 0
 
 	( # dont want to pollute calling env
 		insinto /etc/security/$1
 		insopts -m 0644
 		newins "$2" "$3"
-	) || die "failed to install $2 as $3"
+	)
 }
 
 # @FUNCTION: getpam_mod_dir
@@ -129,12 +129,10 @@ EOF
 dopammod() {
 	[[ -z $1 ]] && die "dopammod requires at least one argument"
 
-	if has pam ${IUSE} && ! use pam; then
-		return 0;
-	fi
+	_pam_flag_disabled && return 0
 
 	exeinto $(getpam_mod_dir)
-	doexe "$@" || die "failed to install $@"
+	doexe "$@"
 }
 
 # @FUNCTION: newpammod
@@ -145,12 +143,10 @@ dopammod() {
 newpammod() {
 	[[ $# -ne 2 ]] && die "newpammod requires two arguments"
 
-	if has pam ${IUSE} && ! use pam; then
-		return 0;
-	fi
+	_pam_flag_disabled && return 0
 
 	exeinto $(getpam_mod_dir)
-	newexe "$1" "$2" || die "failed to install $1 as $2"
+	newexe "$1" "$2"
 }
 
 # @FUNCTION: pamd_mimic_system
@@ -171,26 +167,23 @@ pamd_mimic_system() {
 pamd_mimic() {
 	[[ $# -lt 3 ]] && die "pamd_mimic requires at least three arguments"
 
-	if has pam ${IUSE} && ! use pam; then
-		return 0;
-	fi
+	_pam_flag_disabled && return 0
 
 	dodir /etc/pam.d
-	pamdfile=${D}/etc/pam.d/$2
-	echo -e "# File autogenerated by pamd_mimic in pam eclass\n\n" >> \
-		$pamdfile
+	local pamdfile="${ED}/etc/pam.d/$2"
+	echo -e "# File autogenerated by pamd_mimic in pam eclass\n\n" \
+		>> "${pamdfile}" || die
 
-	originalstack=$1
-	authlevels="auth account password session"
+	local authlevels="auth account password session"
 
-	mimic="\tsubstack\t\t${originalstack}"
+	local mimic="\tsubstack\t\t$1"
 
 	shift; shift
 
 	while [[ -n $1 ]]; do
 		has $1 ${authlevels} || die "unknown level type"
 
-		echo -e "$1${mimic}" >> ${pamdfile}
+		echo -e "$1${mimic}" >> "${pamdfile}" || die
 
 		shift
 	done
@@ -204,7 +197,7 @@ pamd_mimic() {
 cleanpamd() {
 	while [[ -n $1 ]]; do
 		if ! has_version sys-libs/pam; then
-			sed -i -e '/pam_shells\|pam_console/s:^:#:' "${D}/etc/pam.d/$1" || die
+			sed -i -e '/pam_shells\|pam_console/s:^:#:' "${ED}/etc/pam.d/$1" || die
 		fi
 
 		shift


^ permalink raw reply related	[flat|nested] 6131+ messages in thread

* [gentoo-commits] repo/gentoo:master commit in: eclass/
@ 2023-08-02  6:54 Florian Schmaus
  0 siblings, 0 replies; 6131+ messages in thread
From: Florian Schmaus @ 2023-08-02  6:54 UTC (permalink / raw
  To: gentoo-commits

commit:     c14e804bc7c25da759a30ea2c0e1f6de2029f48a
Author:     Florian Schmaus <flow <AT> gentoo <DOT> org>
AuthorDate: Wed Aug  2 06:51:17 2023 +0000
Commit:     Florian Schmaus <flow <AT> gentoo <DOT> org>
CommitDate: Wed Aug  2 06:54:09 2023 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=c14e804b

shell-completion.eclass: fix eclass header

The order of eclass tags is relevant. @MAINTAINER and @AUTHOR must come
right after @ECLASS, as otherwise, tools like eclass-to-manpage will not
be able to process the eclass. In the case of shell-completion.eclass,
this causes eclass-to-manpage to report:

    error:7: shell-completion.eclass: unknown keyword @AUTHOR:

Fixes: d5e1f736c92d ("shell-completion.eclass: new eclass, migrated from ::guru")
Signed-off-by: Florian Schmaus <flow <AT> gentoo.org>

 eclass/shell-completion.eclass | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/eclass/shell-completion.eclass b/eclass/shell-completion.eclass
index debfb8ecd26f..d582028847b4 100644
--- a/eclass/shell-completion.eclass
+++ b/eclass/shell-completion.eclass
@@ -2,13 +2,13 @@
 # Distributed under the terms of the GNU General Public License v2
 
 # @ECLASS: shell-completion.eclass
-# @SUPPORTED_EAPIS: 8
-# @PROVIDES: bash-completion-r1
-# @AUTHOR:
-# Alfred Wingate <parona@protonmail.com>
 # @MAINTAINER:
 # Jonas Frei <freijon@pm.me>
 # Florian Schmaus <flow@gentoo.org>
+# @AUTHOR:
+# Alfred Wingate <parona@protonmail.com>
+# @SUPPORTED_EAPIS: 8
+# @PROVIDES: bash-completion-r1
 # @BLURB: a few quick functions to install various shell completion files
 # @DESCRIPTION:
 # This eclass provides a standardised way to install shell completions


^ permalink raw reply related	[flat|nested] 6131+ messages in thread

* [gentoo-commits] repo/gentoo:master commit in: eclass/
@ 2023-08-02 18:22 Sam James
  0 siblings, 0 replies; 6131+ messages in thread
From: Sam James @ 2023-08-02 18:22 UTC (permalink / raw
  To: gentoo-commits

commit:     56bf65eee17557f8c673aa4238f5744ab2794e49
Author:     James Le Cuirot <chewi <AT> gentoo <DOT> org>
AuthorDate: Sat Jul 29 19:06:09 2023 +0000
Commit:     Sam James <sam <AT> gentoo <DOT> org>
CommitDate: Wed Aug  2 18:21:34 2023 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=56bf65ee

python-utils-r1.eclass: Fix shebangs using ${EPYTHON}, not ${PYTHON}

${PYTHON} points to BROOT's Python because it's usually used for calling
Python during the build. This value will be wrong at runtime after
building cross-prefix.

Signed-off-by: James Le Cuirot <chewi <AT> gentoo.org>
Signed-off-by: Sam James <sam <AT> gentoo.org>

 eclass/python-utils-r1.eclass | 4 +---
 1 file changed, 1 insertion(+), 3 deletions(-)

diff --git a/eclass/python-utils-r1.eclass b/eclass/python-utils-r1.eclass
index 56b1b81edd2e..2555ce12d066 100644
--- a/eclass/python-utils-r1.eclass
+++ b/eclass/python-utils-r1.eclass
@@ -1023,8 +1023,6 @@ python_fix_shebang() {
 	debug-print-function ${FUNCNAME} "${@}"
 
 	[[ ${EPYTHON} ]] || die "${FUNCNAME}: EPYTHON unset (pkg_setup not called?)"
-	local PYTHON
-	_python_export "${EPYTHON}" PYTHON
 
 	local force quiet
 	while [[ ${@} ]]; do
@@ -1097,7 +1095,7 @@ python_fix_shebang() {
 			if [[ ! ${error} ]]; then
 				debug-print "${FUNCNAME}: in file ${f#${D%/}}"
 				debug-print "${FUNCNAME}: rewriting shebang: ${shebang}"
-				sed -i -e "1s@${from}@#!${PYTHON}@" "${f}" || die
+				sed -i -e "1s@${from}@#!${EPREFIX}/usr/bin/${EPYTHON}@" "${f}" || die
 				any_fixed=1
 			else
 				eerror "The file has incompatible shebang:"


^ permalink raw reply related	[flat|nested] 6131+ messages in thread

* [gentoo-commits] repo/gentoo:master commit in: eclass/
@ 2023-08-02 18:22 Sam James
  0 siblings, 0 replies; 6131+ messages in thread
From: Sam James @ 2023-08-02 18:22 UTC (permalink / raw
  To: gentoo-commits

commit:     9e4dc068a3066434bfbfa3a0f979ec5d6d8020eb
Author:     James Le Cuirot <chewi <AT> gentoo <DOT> org>
AuthorDate: Sat Jul 29 19:01:46 2023 +0000
Commit:     Sam James <sam <AT> gentoo <DOT> org>
CommitDate: Wed Aug  2 18:21:34 2023 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=9e4dc068

python-utils-r1.eclass: Remove old EAPI hack for exporting PYTHON

This eclass is EAPI 7+ now, so we can assume that BROOT is available.
This was broken anyway because it seems that Portage doesn't set BROOT
when it's empty.

Signed-off-by: James Le Cuirot <chewi <AT> gentoo.org>
Signed-off-by: Sam James <sam <AT> gentoo.org>

 eclass/python-utils-r1.eclass | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/eclass/python-utils-r1.eclass b/eclass/python-utils-r1.eclass
index a883135eaa41..56b1b81edd2e 100644
--- a/eclass/python-utils-r1.eclass
+++ b/eclass/python-utils-r1.eclass
@@ -338,7 +338,7 @@ _python_export() {
 				debug-print "${FUNCNAME}: EPYTHON = ${EPYTHON}"
 				;;
 			PYTHON)
-				export PYTHON=${BROOT-${EPREFIX}}/usr/bin/${impl}
+				export PYTHON=${BROOT}/usr/bin/${impl}
 				debug-print "${FUNCNAME}: PYTHON = ${PYTHON}"
 				;;
 			PYTHON_SITEDIR)


^ permalink raw reply related	[flat|nested] 6131+ messages in thread

* [gentoo-commits] repo/gentoo:master commit in: eclass/
@ 2023-08-03 15:43 Michał Górny
  0 siblings, 0 replies; 6131+ messages in thread
From: Michał Górny @ 2023-08-03 15:43 UTC (permalink / raw
  To: gentoo-commits

commit:     18b95b4c5f671f875b4d048e2c085be4794e849b
Author:     Michał Górny <mgorny <AT> gentoo <DOT> org>
AuthorDate: Thu Aug  3 09:15:36 2023 +0000
Commit:     Michał Górny <mgorny <AT> gentoo <DOT> org>
CommitDate: Thu Aug  3 15:42:58 2023 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=18b95b4c

llvm.org.eclass: Remove 17.x snapshots

Signed-off-by: Michał Górny <mgorny <AT> gentoo.org>

 eclass/llvm.org.eclass | 3 ---
 1 file changed, 3 deletions(-)

diff --git a/eclass/llvm.org.eclass b/eclass/llvm.org.eclass
index a3c268dfef80..1d74cb193052 100644
--- a/eclass/llvm.org.eclass
+++ b/eclass/llvm.org.eclass
@@ -72,9 +72,6 @@ if [[ -z ${_LLVM_SOURCE_TYPE+1} ]]; then
 			_LLVM_SOURCE_TYPE=snapshot
 
 			case ${PV} in
-				17.0.0_pre20230722)
-					EGIT_COMMIT=5f1a388a11ae67c2e5d7a4d1fe45e369a393c572
-					;;
 				*)
 					die "Unknown snapshot: ${PV}"
 					;;


^ permalink raw reply related	[flat|nested] 6131+ messages in thread

* [gentoo-commits] repo/gentoo:master commit in: eclass/
@ 2023-08-03 15:43 Michał Górny
  0 siblings, 0 replies; 6131+ messages in thread
From: Michał Górny @ 2023-08-03 15:43 UTC (permalink / raw
  To: gentoo-commits

commit:     88b5a34c279f674d984da9008edb469bbf870168
Author:     Michał Górny <mgorny <AT> gentoo <DOT> org>
AuthorDate: Thu Aug  3 09:20:52 2023 +0000
Commit:     Michał Górny <mgorny <AT> gentoo <DOT> org>
CommitDate: Thu Aug  3 15:42:58 2023 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=88b5a34c

llvm.org.eclass: Add 18.0.0_pre20230803 snapshot

Signed-off-by: Michał Górny <mgorny <AT> gentoo.org>

 eclass/llvm.org.eclass | 3 +++
 1 file changed, 3 insertions(+)

diff --git a/eclass/llvm.org.eclass b/eclass/llvm.org.eclass
index 1d74cb193052..f3f2d1c1b0c9 100644
--- a/eclass/llvm.org.eclass
+++ b/eclass/llvm.org.eclass
@@ -72,6 +72,9 @@ if [[ -z ${_LLVM_SOURCE_TYPE+1} ]]; then
 			_LLVM_SOURCE_TYPE=snapshot
 
 			case ${PV} in
+				18.0.0_pre20230803)
+					EGIT_COMMIT=c4bb3e073548cf436d5fa0406e3ae75e94684dec
+					;;
 				*)
 					die "Unknown snapshot: ${PV}"
 					;;


^ permalink raw reply related	[flat|nested] 6131+ messages in thread

* [gentoo-commits] repo/gentoo:master commit in: eclass/
@ 2023-08-03 19:37 Sam James
  0 siblings, 0 replies; 6131+ messages in thread
From: Sam James @ 2023-08-03 19:37 UTC (permalink / raw
  To: gentoo-commits

commit:     cbd5dd00c039540165c2ee817ab6085d35d3b463
Author:     Sam James <sam <AT> gentoo <DOT> org>
AuthorDate: Thu Aug  3 19:37:25 2023 +0000
Commit:     Sam James <sam <AT> gentoo <DOT> org>
CommitDate: Thu Aug  3 19:37:25 2023 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=cbd5dd00

toolchain.eclass: cleanup more obsolete cruft

Followup to a606b978be638005c9b832a733d087dbc97ae6d0.

Signed-off-by: Sam James <sam <AT> gentoo.org>

 eclass/toolchain.eclass | 28 +++++++++-------------------
 1 file changed, 9 insertions(+), 19 deletions(-)

diff --git a/eclass/toolchain.eclass b/eclass/toolchain.eclass
index edd4c89bb00a..cf6cb158a3b3 100644
--- a/eclass/toolchain.eclass
+++ b/eclass/toolchain.eclass
@@ -614,14 +614,11 @@ toolchain_src_prepare() {
 		done
 	fi
 
-	# >=gcc-4
-	if [[ -x contrib/gcc_update ]] ; then
-		einfo "Touching generated files"
-		./contrib/gcc_update --touch | \
-			while read f ; do
-				einfo "  ${f%%...}"
-			done
-	fi
+	einfo "Touching generated files"
+	./contrib/gcc_update --touch | \
+		while read f ; do
+			einfo "  ${f%%...}"
+		done
 }
 
 do_gcc_gentoo_patches() {
@@ -742,16 +739,10 @@ setup_multilib_osdirnames() {
 	config+="/t-linux64"
 
 	local sed_args=()
-	if tc_version_is_at_least 4.6 ; then
-		sed_args+=( -e 's:$[(]call if_multiarch[^)]*[)]::g' )
-	fi
+	sed_args+=( -e 's:$[(]call if_multiarch[^)]*[)]::g' )
 	if [[ ${SYMLINK_LIB} == "yes" ]] ; then
 		einfo "Updating multilib directories to be: ${libdirs}"
-		if tc_version_is_at_least 4.6.4 || tc_version_is_at_least 4.7 ; then
-			sed_args+=( -e '/^MULTILIB_OSDIRNAMES.*lib32/s:[$][(]if.*):../lib32:' )
-		else
-			sed_args+=( -e "/^MULTILIB_OSDIRNAMES/s:=.*:= ${libdirs}:" )
-		fi
+		sed_args+=( -e '/^MULTILIB_OSDIRNAMES.*lib32/s:[$][(]if.*):../lib32:' )
 	else
 		einfo "Using upstream multilib; disabling lib32 autodetection"
 		sed_args+=( -r -e 's:[$][(]if.*,(.*)[)]:\1:' )
@@ -869,8 +860,7 @@ toolchain_src_configure() {
 			# - After discussing in #gcc, we concluded that =yes,extra,rtl makes
 			#   more sense when a user explicitly requests USE=debug. If rtl is too slow,
 			#   we can change this to yes,extra.
-			local off=$(tc_version_is_at_least 4.0 && echo release || echo no)
-			confgcc+=( --enable-checking="${GCC_CHECKS_LIST:-$(usex debug yes,extra,rtl ${off})}" )
+			confgcc+=( --enable-checking="${GCC_CHECKS_LIST:-$(usex debug yes,extra,rtl release)}" )
 		fi
 	fi
 
@@ -1879,7 +1869,7 @@ toolchain_src_install() {
 	if ! is_crosscompile; then
 		# Rename the main go binaries as we don't want to clobber dev-lang/go
 		# when gcc-config runs. bug #567806
-		if tc_version_is_at_least 5 && is_go ; then
+		if is_go ; then
 			for x in go gofmt; do
 				mv ${x} ${x}-${GCCMAJOR} || die
 			done


^ permalink raw reply related	[flat|nested] 6131+ messages in thread

* [gentoo-commits] repo/gentoo:master commit in: eclass/
@ 2023-08-04  2:05 Sam James
  0 siblings, 0 replies; 6131+ messages in thread
From: Sam James @ 2023-08-04  2:05 UTC (permalink / raw
  To: gentoo-commits

commit:     5b03a882f4fae447bf9d0a5e568ce91c9548e232
Author:     Sam James <sam <AT> gentoo <DOT> org>
AuthorDate: Fri Aug  4 02:03:12 2023 +0000
Commit:     Sam James <sam <AT> gentoo <DOT> org>
CommitDate: Fri Aug  4 02:05:01 2023 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=5b03a882

toolchain.eclass: pass --disable-dependency-tracking, --disable-silent-rules

We already do this for gdb and binutils, do the same for gcc. Portage/econf only greps
the top-level configure which has neither of these, but the subconfigure dirs
do.

There's been problems in the past upstream here, see e.g. https://gcc.gnu.org/PR55930,
but seems fine now.

Signed-off-by: Sam James <sam <AT> gentoo.org>

 eclass/toolchain.eclass | 11 +++++++++++
 1 file changed, 11 insertions(+)

diff --git a/eclass/toolchain.eclass b/eclass/toolchain.eclass
index cf6cb158a3b3..9f626c5bfc77 100644
--- a/eclass/toolchain.eclass
+++ b/eclass/toolchain.eclass
@@ -791,8 +791,19 @@ toolchain_src_configure() {
 		--mandir="${DATAPATH}/man"
 		--infodir="${DATAPATH}/info"
 		--with-gxx-include-dir="${STDCXX_INCDIR}"
+
+		# portage's econf() does not detect presence of --d-s-r
+		# because it greps only top-level ./configure. But not
+		# libiberty's or gcc's configure.
+		--disable-silent-rules
 	)
 
+	if tc_version_is_at_least 10 ; then
+		confgcc+=(
+			--disable-dependency-tracking
+		)
+	fi
+
 	# Stick the python scripts in their own slotted directory (bug #279252)
 	#
 	#  --with-python-dir=DIR


^ permalink raw reply related	[flat|nested] 6131+ messages in thread

* [gentoo-commits] repo/gentoo:master commit in: eclass/
@ 2023-08-06  6:42 Michał Górny
  0 siblings, 0 replies; 6131+ messages in thread
From: Michał Górny @ 2023-08-06  6:42 UTC (permalink / raw
  To: gentoo-commits

commit:     cf582a6d842973915d1cec5c05a8b4c311b78288
Author:     Michał Górny <mgorny <AT> gentoo <DOT> org>
AuthorDate: Sat Aug  5 06:59:39 2023 +0000
Commit:     Michał Górny <mgorny <AT> gentoo <DOT> org>
CommitDate: Sun Aug  6 06:42:27 2023 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=cf582a6d

python-utils-r1.eclass: Check for occluded packages before testing

Add a check for installed packages being occluded by the working
directory when calling epytest and eunittest.  This is primarily meant
to detect C extensions being missed.

Signed-off-by: Michał Górny <mgorny <AT> gentoo.org>
Closes: https://github.com/gentoo/gentoo/pull/32181
Signed-off-by: Michał Górny <mgorny <AT> gentoo.org>

 eclass/python-utils-r1.eclass | 51 +++++++++++++++++++++++++++++++++++++++++++
 1 file changed, 51 insertions(+)

diff --git a/eclass/python-utils-r1.eclass b/eclass/python-utils-r1.eclass
index 2555ce12d066..27157a003ab2 100644
--- a/eclass/python-utils-r1.eclass
+++ b/eclass/python-utils-r1.eclass
@@ -1231,6 +1231,55 @@ _python_check_EPYTHON() {
 	fi
 }
 
+# @FUNCTION: _python_check_occluded_packages
+# @INTERNAL
+# @DESCRIPTION:
+# Check if the current directory does not contain any incomplete
+# package sources that would block installed packages from being used
+# (and effectively e.g. make it impossible to load compiled extensions).
+_python_check_occluded_packages() {
+	debug-print-function ${FUNCNAME} "${@}"
+
+	# DO NOT ENABLE THIS unless you're going to check for false
+	# positives before filing bugs.
+	[[ ! ${PYTHON_EXPERIMENTAL_QA} ]] && return
+
+	type -P diff &>/dev/null || return
+	[[ -z ${BUILD_DIR} || ! -d ${BUILD_DIR}/install ]] && return
+
+	local sitedir="${BUILD_DIR}/install$(python_get_sitedir)"
+	# avoid unnecessarily checking if we are inside install dir
+	[[ ${sitedir} -ef . ]] && return
+
+	local f fn diff
+	for f in "${sitedir}"/*/; do
+		f=${f%/}
+		fn=${f##*/}
+
+		# skip metadata directories
+		[[ ${fn} == *.dist-info || ${fn} == *.egg-info ]] && continue
+
+		if [[ -d ${fn} ]]; then
+			diff=$(diff -dupr -x "__pycache__" "${fn}" "${sitedir}/${fn}")
+			if [[ -n ${diff} ]]; then
+				eqawarn "The directory ${fn} occludes package installed for ${EPYTHON}."
+				echo
+				echo ">>> Diff:"
+				echo "${diff}"
+				echo "<<< End-of-diff"
+				echo
+
+				if [[ ! ${_PYTHON_WARNED_OCCLUDED_PACKAGES} ]]; then
+					eqawarn "The complete build log includes diffs."
+					eqawarn "For more information on occluded packages, please see:"
+					eqawarn "https://projects.gentoo.org/python/guide/test.html#importerrors-for-c-extensions"
+					_PYTHON_WARNED_OCCLUDED_PACKAGES=1
+				fi
+			fi
+		fi
+	done
+}
+
 # @VARIABLE: EPYTEST_DESELECT
 # @DEFAULT_UNSET
 # @DESCRIPTION:
@@ -1261,6 +1310,7 @@ epytest() {
 	debug-print-function ${FUNCNAME} "${@}"
 
 	_python_check_EPYTHON
+	_python_check_occluded_packages
 
 	local color
 	case ${NOCOLOR} in
@@ -1345,6 +1395,7 @@ eunittest() {
 	debug-print-function ${FUNCNAME} "${@}"
 
 	_python_check_EPYTHON
+	_python_check_occluded_packages
 
 	# unittest fails with "no tests" correctly since Python 3.12
 	local runner=unittest


^ permalink raw reply related	[flat|nested] 6131+ messages in thread

* [gentoo-commits] repo/gentoo:master commit in: eclass/
@ 2023-08-07  3:01 Michał Górny
  0 siblings, 0 replies; 6131+ messages in thread
From: Michał Górny @ 2023-08-07  3:01 UTC (permalink / raw
  To: gentoo-commits

commit:     5abc2cc2f9838d89fd29c31a996ca92f60fdfdf2
Author:     Oskari Pirhonen <xxc3ncoredxx <AT> gmail <DOT> com>
AuthorDate: Sun Jul 30 20:35:59 2023 +0000
Commit:     Michał Górny <mgorny <AT> gentoo <DOT> org>
CommitDate: Mon Aug  7 03:01:16 2023 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=5abc2cc2

verify-sig.eclass: replace app-crypt with sec-keys

Update the description and example to use the new sec-keys/ category
instead of the old app-crypt/ for openpgp-keys-* packages.

Signed-off-by: Oskari Pirhonen <xxc3ncoredxx <AT> gmail.com>
Closes: https://github.com/gentoo/gentoo/pull/32111
Signed-off-by: Michał Górny <mgorny <AT> gentoo.org>

 eclass/verify-sig.eclass | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/eclass/verify-sig.eclass b/eclass/verify-sig.eclass
index 6472e995e827..d99dc3461858 100644
--- a/eclass/verify-sig.eclass
+++ b/eclass/verify-sig.eclass
@@ -16,7 +16,7 @@
 # the developer's work.
 #
 # To use the eclass, start by packaging the upstream's key
-# as app-crypt/openpgp-keys-*.  Then inherit the eclass, add detached
+# as sec-keys/openpgp-keys-*.  Then inherit the eclass, add detached
 # signatures to SRC_URI and set VERIFY_SIG_OPENPGP_KEY_PATH.  The eclass
 # provides verify-sig USE flag to toggle the verification.
 #
@@ -35,7 +35,7 @@
 # SRC_URI="https://example.org/${P}.tar.gz
 #   verify-sig? ( https://example.org/${P}.tar.gz.sig )"
 # BDEPEND="
-#   verify-sig? ( app-crypt/openpgp-keys-example )"
+#   verify-sig? ( sec-keys/openpgp-keys-example )"
 #
 # VERIFY_SIG_OPENPGP_KEY_PATH=${BROOT}/usr/share/openpgp-keys/example.asc
 # @CODE


^ permalink raw reply related	[flat|nested] 6131+ messages in thread

* [gentoo-commits] repo/gentoo:master commit in: eclass/
@ 2023-08-07 12:10 James Le Cuirot
  0 siblings, 0 replies; 6131+ messages in thread
From: James Le Cuirot @ 2023-08-07 12:10 UTC (permalink / raw
  To: gentoo-commits

commit:     01e4a638c3decc74baa52975043bb4af89ae2c70
Author:     James Le Cuirot <chewi <AT> gentoo <DOT> org>
AuthorDate: Mon Aug  7 11:59:34 2023 +0000
Commit:     James Le Cuirot <chewi <AT> gentoo <DOT> org>
CommitDate: Mon Aug  7 12:09:48 2023 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=01e4a638

Revert "python-utils-r1.eclass: Remove old EAPI hack for exporting PYTHON"

This reverts commit 9e4dc068a3066434bfbfa3a0f979ec5d6d8020eb. It fixed
cross-prefix but inadvertently broke regular prefix. Both were
ultimately affected by the same PMS + Portage bug where BROOT was not
set in pkg_preinst. This has now been fixed, but regular prefix users
need to be able to update Portage without hitting the issue.
Cross-prefix users are safe because the BROOT Portage can be updated
without hitting the issue.

Closes: https://bugs.gentoo.org/911797
Signed-off-by: James Le Cuirot <chewi <AT> gentoo.org>

 eclass/python-utils-r1.eclass | 4 +++-
 1 file changed, 3 insertions(+), 1 deletion(-)

diff --git a/eclass/python-utils-r1.eclass b/eclass/python-utils-r1.eclass
index 27157a003ab2..690b8ba8c79b 100644
--- a/eclass/python-utils-r1.eclass
+++ b/eclass/python-utils-r1.eclass
@@ -338,7 +338,9 @@ _python_export() {
 				debug-print "${FUNCNAME}: EPYTHON = ${EPYTHON}"
 				;;
 			PYTHON)
-				export PYTHON=${BROOT}/usr/bin/${impl}
+				# Under EAPI 7+, this should just use ${BROOT}, but Portage
+				# <3.0.50 was buggy, and prefix users need this to update.
+				export PYTHON=${BROOT-${EPREFIX}}/usr/bin/${impl}
 				debug-print "${FUNCNAME}: PYTHON = ${PYTHON}"
 				;;
 			PYTHON_SITEDIR)


^ permalink raw reply related	[flat|nested] 6131+ messages in thread

* [gentoo-commits] repo/gentoo:master commit in: eclass/
@ 2023-08-08  9:07 Michał Górny
  0 siblings, 0 replies; 6131+ messages in thread
From: Michał Górny @ 2023-08-08  9:07 UTC (permalink / raw
  To: gentoo-commits

commit:     bafc7b5a1fc937b08a67be7c628f225674a3303d
Author:     Michał Górny <mgorny <AT> gentoo <DOT> org>
AuthorDate: Sun Aug  6 13:05:52 2023 +0000
Commit:     Michał Górny <mgorny <AT> gentoo <DOT> org>
CommitDate: Tue Aug  8 09:07:14 2023 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=bafc7b5a

python-utils-r1.eclass: Eliminate false positives from occluded check

Modify the occluded package check to unidirectionally check for
additional files in installed package directory.  This eliminates false
positives when the source directory contains additional files,
in particular C sources.

This change also eliminates the dependency on diff(1), in favor
of comm(1).  As a side effect, we no longer compare .py files for
equality but that shouldn't be such a big deal.

Closes: https://github.com/gentoo/gentoo/pull/32195
Signed-off-by: Michał Górny <mgorny <AT> gentoo.org>

 eclass/python-utils-r1.eclass | 29 ++++++++++++++++++++---------
 1 file changed, 20 insertions(+), 9 deletions(-)

diff --git a/eclass/python-utils-r1.eclass b/eclass/python-utils-r1.eclass
index 690b8ba8c79b..2fffd6d56bf5 100644
--- a/eclass/python-utils-r1.eclass
+++ b/eclass/python-utils-r1.eclass
@@ -1246,14 +1246,13 @@ _python_check_occluded_packages() {
 	# positives before filing bugs.
 	[[ ! ${PYTHON_EXPERIMENTAL_QA} ]] && return
 
-	type -P diff &>/dev/null || return
 	[[ -z ${BUILD_DIR} || ! -d ${BUILD_DIR}/install ]] && return
 
 	local sitedir="${BUILD_DIR}/install$(python_get_sitedir)"
 	# avoid unnecessarily checking if we are inside install dir
 	[[ ${sitedir} -ef . ]] && return
 
-	local f fn diff
+	local f fn diff l
 	for f in "${sitedir}"/*/; do
 		f=${f%/}
 		fn=${f##*/}
@@ -1262,17 +1261,29 @@ _python_check_occluded_packages() {
 		[[ ${fn} == *.dist-info || ${fn} == *.egg-info ]] && continue
 
 		if [[ -d ${fn} ]]; then
-			diff=$(diff -dupr -x "__pycache__" "${fn}" "${sitedir}/${fn}")
+			diff=$(
+				comm -1 -3 <(
+					find "${fn}" -type f -not -path '*/__pycache__/*' |
+						sort
+					assert
+				) <(
+					cd "${sitedir}" &&
+						find "${fn}" -type f -not -path '*/__pycache__/*' |
+						sort
+					assert
+				)
+			)
+
 			if [[ -n ${diff} ]]; then
 				eqawarn "The directory ${fn} occludes package installed for ${EPYTHON}."
-				echo
-				echo ">>> Diff:"
-				echo "${diff}"
-				echo "<<< End-of-diff"
-				echo
+				eqawarn "The installed package includes additional files:"
+				eqawarn
+				while IFS= read -r l; do
+					eqawarn "    ${l}"
+				done <<<"${diff}"
+				eqawarn
 
 				if [[ ! ${_PYTHON_WARNED_OCCLUDED_PACKAGES} ]]; then
-					eqawarn "The complete build log includes diffs."
 					eqawarn "For more information on occluded packages, please see:"
 					eqawarn "https://projects.gentoo.org/python/guide/test.html#importerrors-for-c-extensions"
 					_PYTHON_WARNED_OCCLUDED_PACKAGES=1


^ permalink raw reply related	[flat|nested] 6131+ messages in thread

* [gentoo-commits] repo/gentoo:master commit in: eclass/
@ 2023-08-08 14:26 Mike Gilbert
  0 siblings, 0 replies; 6131+ messages in thread
From: Mike Gilbert @ 2023-08-08 14:26 UTC (permalink / raw
  To: gentoo-commits

commit:     de0312d2a8172ff01f6c3c5fb5e1a099cf321fb8
Author:     Mike Gilbert <floppym <AT> gentoo <DOT> org>
AuthorDate: Tue Aug  8 14:24:52 2023 +0000
Commit:     Mike Gilbert <floppym <AT> gentoo <DOT> org>
CommitDate: Tue Aug  8 14:24:52 2023 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=de0312d2

vim-spell.eclass: drop EPREFIX from VIM_SPELL_DIRECTORY

This variable is passed to insinto, which already addes EPREFIX.

Closes: https://bugs.gentoo.org/911850
Signed-off-by: Mike Gilbert <floppym <AT> gentoo.org>

 eclass/vim-spell.eclass | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/eclass/vim-spell.eclass b/eclass/vim-spell.eclass
index 1a241d2ba0d1..855518d23e5b 100644
--- a/eclass/vim-spell.eclass
+++ b/eclass/vim-spell.eclass
@@ -92,7 +92,7 @@ SLOT="0"
 # @INTERNAL
 # @DESCRIPTION:
 # This variable defines the path to Vim spell files.
-: "${VIM_SPELL_DIRECTORY:="${EPREFIX}/usr/share/vim/vimfiles/spell/"}"
+: "${VIM_SPELL_DIRECTORY:=/usr/share/vim/vimfiles/spell}"
 
 # @ECLASS_VARIABLE: DESCRIPTION
 # @DESCRIPTION:


^ permalink raw reply related	[flat|nested] 6131+ messages in thread

* [gentoo-commits] repo/gentoo:master commit in: eclass/
@ 2023-08-10 17:49 Michał Górny
  0 siblings, 0 replies; 6131+ messages in thread
From: Michał Górny @ 2023-08-10 17:49 UTC (permalink / raw
  To: gentoo-commits

commit:     40b3073709b1445c4ef328cd8110797949ac1b04
Author:     Michał Górny <mgorny <AT> gentoo <DOT> org>
AuthorDate: Thu Aug 10 12:53:13 2023 +0000
Commit:     Michał Górny <mgorny <AT> gentoo <DOT> org>
CommitDate: Thu Aug 10 17:49:31 2023 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=40b30737

llvm.org.eclass: Add 18.0.0_pre20230810 snapshot

Signed-off-by: Michał Górny <mgorny <AT> gentoo.org>

 eclass/llvm.org.eclass | 3 +++
 1 file changed, 3 insertions(+)

diff --git a/eclass/llvm.org.eclass b/eclass/llvm.org.eclass
index f3f2d1c1b0c9..c83f5725e301 100644
--- a/eclass/llvm.org.eclass
+++ b/eclass/llvm.org.eclass
@@ -72,6 +72,9 @@ if [[ -z ${_LLVM_SOURCE_TYPE+1} ]]; then
 			_LLVM_SOURCE_TYPE=snapshot
 
 			case ${PV} in
+				18.0.0_pre20230810)
+					EGIT_COMMIT=7d259b36d2e8148d13087844e6494ad3a5c63edf
+					;;
 				18.0.0_pre20230803)
 					EGIT_COMMIT=c4bb3e073548cf436d5fa0406e3ae75e94684dec
 					;;


^ permalink raw reply related	[flat|nested] 6131+ messages in thread

* [gentoo-commits] repo/gentoo:master commit in: eclass/
@ 2023-08-13  5:22 Hans de Graaff
  0 siblings, 0 replies; 6131+ messages in thread
From: Hans de Graaff @ 2023-08-13  5:22 UTC (permalink / raw
  To: gentoo-commits

commit:     58a7641982763e9317841f2631f556c75c727868
Author:     Hans de Graaff <graaff <AT> gentoo <DOT> org>
AuthorDate: Sat Aug 12 18:57:39 2023 +0000
Commit:     Hans de Graaff <graaff <AT> gentoo <DOT> org>
CommitDate: Sun Aug 13 05:22:43 2023 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=58a76419

eclass/ruby-fakegem.eclass: always avoid minitest plugins

Minitest will by default scan for any plugin installed by any gem and
register it. This has been a source of test failures when a plugin can
no longer be initialized for some reason.

Many ebuilds already set the environment variable for this, but we never
want autoloading so turn this off in the eclass instead.

Signed-off-by: Hans de Graaff <graaff <AT> gentoo.org>

 eclass/ruby-fakegem.eclass | 9 ++++++---
 1 file changed, 6 insertions(+), 3 deletions(-)

diff --git a/eclass/ruby-fakegem.eclass b/eclass/ruby-fakegem.eclass
index db3db300c023..40ff76ce900e 100644
--- a/eclass/ruby-fakegem.eclass
+++ b/eclass/ruby-fakegem.eclass
@@ -585,9 +585,12 @@ each_fakegem_test() {
 # @DESCRIPTION:
 # Run the tests for this package.
 if [[ ${RUBY_FAKEGEM_RECIPE_TEST} != none ]]; then
-		each_ruby_test() {
-			each_fakegem_test
-		}
+	# Avoid autoloading all minitest plugins present in any gem.
+	export MT_NO_PLUGINS=true
+
+	each_ruby_test() {
+		each_fakegem_test
+	}
 fi
 
 # @FUNCTION: ruby_fakegem_extensions_installed


^ permalink raw reply related	[flat|nested] 6131+ messages in thread

* [gentoo-commits] repo/gentoo:master commit in: eclass/
@ 2023-08-14 21:15 Michael Orlitzky
  0 siblings, 0 replies; 6131+ messages in thread
From: Michael Orlitzky @ 2023-08-14 21:15 UTC (permalink / raw
  To: gentoo-commits

commit:     af4e7e9610124cd568b9634d6b6bb0e68cafae6c
Author:     Michael Orlitzky <mjo <AT> gentoo <DOT> org>
AuthorDate: Mon Aug 14 18:40:06 2023 +0000
Commit:     Michael Orlitzky <mjo <AT> gentoo <DOT> org>
CommitDate: Mon Aug 14 21:14:10 2023 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=af4e7e96

netsurf.eclass: add myself as maintainer; fix spaces -> tabs

Signed-off-by: Michael Orlitzky <mjo <AT> gentoo.org>

 eclass/netsurf.eclass | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/eclass/netsurf.eclass b/eclass/netsurf.eclass
index 293f439e9715..f027b88b4965 100644
--- a/eclass/netsurf.eclass
+++ b/eclass/netsurf.eclass
@@ -3,15 +3,15 @@
 
 # @ECLASS: netsurf.eclass
 # @MAINTAINER:
-# maintainer-needed@gentoo.org
+# mjo@gentoo.org
 # @SUPPORTED_EAPIS: 7
 # @BLURB: Handle buildsystem of www.netsurf-browser.org components
 # @DESCRIPTION:
 # Handle settings build environment for netsurf build system
 
 case ${EAPI} in
-    7) ;;
-    *) die "${ECLASS}: EAPI ${EAPI:-0} not supported" ;;
+	7) ;;
+	*) die "${ECLASS}: EAPI ${EAPI:-0} not supported" ;;
 esac
 
 inherit toolchain-funcs


^ permalink raw reply related	[flat|nested] 6131+ messages in thread

* [gentoo-commits] repo/gentoo:master commit in: eclass/
@ 2023-08-14 21:15 Michael Orlitzky
  0 siblings, 0 replies; 6131+ messages in thread
From: Michael Orlitzky @ 2023-08-14 21:15 UTC (permalink / raw
  To: gentoo-commits

commit:     187edbb4abe395cda4a01817f11b78d2c70a0dc1
Author:     Michael Orlitzky <mjo <AT> gentoo <DOT> org>
AuthorDate: Mon Aug 14 18:40:57 2023 +0000
Commit:     Michael Orlitzky <mjo <AT> gentoo <DOT> org>
CommitDate: Mon Aug 14 21:14:10 2023 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=187edbb4

netsurf.eclass: support EAPI=8

This eclass provides one function that sets some environment variables,
nothing to worry about.

Signed-off-by: Michael Orlitzky <mjo <AT> gentoo.org>

 eclass/netsurf.eclass | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/eclass/netsurf.eclass b/eclass/netsurf.eclass
index f027b88b4965..b69c93d87ca3 100644
--- a/eclass/netsurf.eclass
+++ b/eclass/netsurf.eclass
@@ -4,13 +4,13 @@
 # @ECLASS: netsurf.eclass
 # @MAINTAINER:
 # mjo@gentoo.org
-# @SUPPORTED_EAPIS: 7
+# @SUPPORTED_EAPIS: 7 8
 # @BLURB: Handle buildsystem of www.netsurf-browser.org components
 # @DESCRIPTION:
 # Handle settings build environment for netsurf build system
 
 case ${EAPI} in
-	7) ;;
+	7|8) ;;
 	*) die "${ECLASS}: EAPI ${EAPI:-0} not supported" ;;
 esac
 


^ permalink raw reply related	[flat|nested] 6131+ messages in thread

* [gentoo-commits] repo/gentoo:master commit in: eclass/
@ 2023-08-17  6:22 Sam James
  0 siblings, 0 replies; 6131+ messages in thread
From: Sam James @ 2023-08-17  6:22 UTC (permalink / raw
  To: gentoo-commits

commit:     3998ffc8566711b727a119108f2245ab6def45b4
Author:     Oz Tiram <oz.tiram <AT> gmail <DOT> com>
AuthorDate: Sat Aug 12 06:01:41 2023 +0000
Commit:     Sam James <sam <AT> gentoo <DOT> org>
CommitDate: Thu Aug 17 06:22:36 2023 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=3998ffc8

mate.eclass, mate-desktop.org.eclass: add EAPI 8

These eclasses are based on gnome2 eclass which supports
EAPI 8 for a while now.

Signed-off-by: Oz Tiram <oz.tiram <AT> gmail.com>
Signed-off-by: Sam James <sam <AT> gentoo.org>

 eclass/mate-desktop.org.eclass | 4 ++--
 eclass/mate.eclass             | 4 ++--
 2 files changed, 4 insertions(+), 4 deletions(-)

diff --git a/eclass/mate-desktop.org.eclass b/eclass/mate-desktop.org.eclass
index 0dd77aa19a3e..28d704395b9a 100644
--- a/eclass/mate-desktop.org.eclass
+++ b/eclass/mate-desktop.org.eclass
@@ -6,14 +6,14 @@
 # mate@gentoo.org
 # @AUTHOR:
 # Authors: NP-Hardass <NP-Hardass@gentoo.org> based upon the gnome.org eclass.
-# @SUPPORTED_EAPIS: 7
+# @SUPPORTED_EAPIS: 7 8
 # @BLURB: Helper eclass for mate-desktop.org hosted archives
 # @DESCRIPTION:
 # Provide a default SRC_URI and EGIT_REPO_URI for MATE packages as well as
 # exporting some useful values like the MATE_BRANCH
 
 case ${EAPI} in
-	7) ;;
+	7|8) ;;
 	*) die "${ECLASS}: EAPI ${EAPI:-0} not supported" ;;
 esac
 

diff --git a/eclass/mate.eclass b/eclass/mate.eclass
index e8290c69e25a..b6c3aa55fb19 100644
--- a/eclass/mate.eclass
+++ b/eclass/mate.eclass
@@ -7,7 +7,7 @@
 # @AUTHOR:
 # Authors: NP-Hardass <NP-Hardass@gentoo.org> based upon the gnome2
 # and autotools-utils eclasses
-# @SUPPORTED_EAPIS: 7
+# @SUPPORTED_EAPIS: 7 8
 # @PROVIDES: mate-desktop.org
 # @BLURB: Provides phases for MATE based packages.
 # @DESCRIPTION:
@@ -16,7 +16,7 @@
 # fact that MATE is a GNOME fork. For additional functions, see gnome2-utils.eclass.
 
 case ${EAPI} in
-	7) ;;
+	7|8) ;;
 	*) die "${ECLASS}: EAPI ${EAPI:-0} not supported" ;;
 esac
 


^ permalink raw reply related	[flat|nested] 6131+ messages in thread

* [gentoo-commits] repo/gentoo:master commit in: eclass/
@ 2023-08-17  6:22 Sam James
  0 siblings, 0 replies; 6131+ messages in thread
From: Sam James @ 2023-08-17  6:22 UTC (permalink / raw
  To: gentoo-commits

commit:     c221e8a705f65ba93929bd09b3b006135f7db0eb
Author:     Sam James <sam <AT> gentoo <DOT> org>
AuthorDate: Thu Aug 17 06:21:58 2023 +0000
Commit:     Sam James <sam <AT> gentoo <DOT> org>
CommitDate: Thu Aug 17 06:22:39 2023 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=c221e8a7

mate.eclass: use BDEPEND for mate-common

autotools.eclass will check BROOT.

Signed-off-by: Sam James <sam <AT> gentoo.org>

 eclass/mate.eclass | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/eclass/mate.eclass b/eclass/mate.eclass
index b6c3aa55fb19..d9158a79d611 100644
--- a/eclass/mate.eclass
+++ b/eclass/mate.eclass
@@ -38,7 +38,7 @@ GNOME2_LA_PUNT="${MATE_LA_PUNT}"
 inherit gnome2 autotools mate-desktop.org
 
 # Autotools requires our MATE m4 files
-DEPEND=">=mate-base/mate-common-${MATE_BRANCH}"
+BDEPEND=">=mate-base/mate-common-${MATE_BRANCH}"
 
 # @FUNCTION: mate_py_cond_func_wrap
 # @DESCRIPTION:


^ permalink raw reply related	[flat|nested] 6131+ messages in thread

* [gentoo-commits] repo/gentoo:master commit in: eclass/
@ 2023-08-18  1:31 Sam James
  0 siblings, 0 replies; 6131+ messages in thread
From: Sam James @ 2023-08-18  1:31 UTC (permalink / raw
  To: gentoo-commits

commit:     9cd89e7d13a529ad439a9d8abae615943c08e78e
Author:     Sam James <sam <AT> gentoo <DOT> org>
AuthorDate: Thu Aug 17 03:07:35 2023 +0000
Commit:     Sam James <sam <AT> gentoo <DOT> org>
CommitDate: Fri Aug 18 01:30:15 2023 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=9cd89e7d

toolchain.eclass: downgrade znver4 to znver3 for <12.3

Closes: https://bugs.gentoo.org/912292
Signed-off-by: Sam James <sam <AT> gentoo.org>

 eclass/toolchain.eclass | 1 +
 1 file changed, 1 insertion(+)

diff --git a/eclass/toolchain.eclass b/eclass/toolchain.eclass
index 9f626c5bfc77..6a88676b750d 100644
--- a/eclass/toolchain.eclass
+++ b/eclass/toolchain.eclass
@@ -1395,6 +1395,7 @@ downgrade_arch_flags() {
 
 	# "added" "arch" "replacement"
 	local archlist=(
+		12.3 znver4 znver3
 		10 znver3 znver2
 		9 znver2 znver1
 		4.9 bdver4 bdver3


^ permalink raw reply related	[flat|nested] 6131+ messages in thread

* [gentoo-commits] repo/gentoo:master commit in: eclass/
@ 2023-08-18  1:31 Sam James
  0 siblings, 0 replies; 6131+ messages in thread
From: Sam James @ 2023-08-18  1:31 UTC (permalink / raw
  To: gentoo-commits

commit:     b540f017cacb9d8c293648dcb1ab209d43d1ca79
Author:     Sam James <sam <AT> gentoo <DOT> org>
AuthorDate: Thu Aug 17 03:18:19 2023 +0000
Commit:     Sam James <sam <AT> gentoo <DOT> org>
CommitDate: Fri Aug 18 01:30:16 2023 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=b540f017

flag-o-matic.eclass: update _filter-hardened

_filter-hardened is used by filter-flags to negate defaults, e.g. it makes
filter-flags -fstack-protector correctly then disable -fstack-protector as well
if the toolchain enables SSP by default.

Modernise the tests it uses with the tc-enables-* functions rather than
just gcc-specs-*. We haven't done hardening via specs for ages.

Signed-off-by: Sam James <sam <AT> gentoo.org>

 eclass/flag-o-matic.eclass | 26 ++++++++++++++++++++------
 1 file changed, 20 insertions(+), 6 deletions(-)

diff --git a/eclass/flag-o-matic.eclass b/eclass/flag-o-matic.eclass
index 0558e639b981..7ea29334bba8 100644
--- a/eclass/flag-o-matic.eclass
+++ b/eclass/flag-o-matic.eclass
@@ -147,7 +147,10 @@ _filter-hardened() {
 			# not -fPIC or -fpic, but too many places filter -fPIC without
 			# thinking about -fPIE.
 			-fPIC|-fpic|-fPIE|-fpie|-Wl,pie|-pie)
-				gcc-specs-pie || continue
+				if ! gcc-specs-pie && ! tc-enables-pie ; then
+					continue
+				fi
+
 				if ! is-flagq -nopie && ! is-flagq -no-pie ; then
 					# Support older Gentoo form first (-nopie) before falling
 					# back to the official gcc-6+ form (-no-pie).
@@ -158,15 +161,26 @@ _filter-hardened() {
 					fi
 				fi
 				;;
+
 			-fstack-protector)
-				gcc-specs-ssp || continue
-				is-flagq -fno-stack-protector || append-flags $(test-flags -fno-stack-protector);;
+				if ! gcc-specs-ssp && ! tc-enables-ssp ; then
+					continue
+				fi
+
+				is-flagq -fno-stack-protector || append-flags $(test-flags -fno-stack-protector)
+				;;
 			-fstack-protector-all)
-				gcc-specs-ssp-to-all || continue
-				is-flagq -fno-stack-protector-all || append-flags $(test-flags -fno-stack-protector-all);;
+				if ! gcc-specs-ssp-to-all && ! tc-enables-ssp-all ; then
+					continue
+				fi
+
+				is-flagq -fno-stack-protector-all || append-flags $(test-flags -fno-stack-protector-all)
+				;;
 			-fno-strict-overflow)
 				gcc-specs-nostrict || continue
-				is-flagq -fstrict-overflow || append-flags $(test-flags -fstrict-overflow);;
+
+				is-flagq -fstrict-overflow || append-flags $(test-flags -fstrict-overflow)
+				;;
 		esac
 	done
 }


^ permalink raw reply related	[flat|nested] 6131+ messages in thread

* [gentoo-commits] repo/gentoo:master commit in: eclass/
@ 2023-08-18  1:31 Sam James
  0 siblings, 0 replies; 6131+ messages in thread
From: Sam James @ 2023-08-18  1:31 UTC (permalink / raw
  To: gentoo-commits

commit:     bc7f9e5b77e202ba568eaaf0f6a5638e5c0f6f23
Author:     Sam James <sam <AT> gentoo <DOT> org>
AuthorDate: Thu Aug 17 03:21:13 2023 +0000
Commit:     Sam James <sam <AT> gentoo <DOT> org>
CommitDate: Fri Aug 18 01:30:46 2023 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=bc7f9e5b

flag-o-matic.eclass: handle C++ assertions and FORTIFY_SOURCE in _filter-hardened

Signed-off-by: Sam James <sam <AT> gentoo.org>

 eclass/flag-o-matic.eclass | 10 ++++++++++
 1 file changed, 10 insertions(+)

diff --git a/eclass/flag-o-matic.eclass b/eclass/flag-o-matic.eclass
index 70d39d034388..b4c27bf89d92 100644
--- a/eclass/flag-o-matic.eclass
+++ b/eclass/flag-o-matic.eclass
@@ -181,6 +181,16 @@ _filter-hardened() {
 
 				is-flagq -fstrict-overflow || append-flags $(test-flags -fstrict-overflow)
 				;;
+			-D_GLIBCXX_ASSERTIONS|-D_LIBCPP_ENABLE_ASSERTIONS|-D_LIBCPP_ENABLE_HARDENED_MODE)
+				tc-enables-cxx-assertions || continue
+
+				append-cppflags -U_GLIBCXX_ASSERTIONS -U_LIBCPP_ENABLE_ASSERTIONS -U_LIBCPP_ENABLE_HARDENED_MODE
+				;;
+			-D_FORTIFY_SOURCE=*)
+				tc-enables-fortify-source || continue
+
+				append-cppflags -U_FORTIFY_SOURCE
+				;;
 		esac
 	done
 }


^ permalink raw reply related	[flat|nested] 6131+ messages in thread

* [gentoo-commits] repo/gentoo:master commit in: eclass/
@ 2023-08-18  1:31 Sam James
  0 siblings, 0 replies; 6131+ messages in thread
From: Sam James @ 2023-08-18  1:31 UTC (permalink / raw
  To: gentoo-commits

commit:     d5568f773d763bcfcaa50577553a3721c7b9eb83
Author:     Sam James <sam <AT> gentoo <DOT> org>
AuthorDate: Thu Aug 17 03:20:57 2023 +0000
Commit:     Sam James <sam <AT> gentoo <DOT> org>
CommitDate: Fri Aug 18 01:30:39 2023 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=d5568f77

flag-o-matic.eclass: recognize -fstack-protector-strong in _filter-hardened

Signed-off-by: Sam James <sam <AT> gentoo.org>

 eclass/flag-o-matic.eclass | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/eclass/flag-o-matic.eclass b/eclass/flag-o-matic.eclass
index 7ea29334bba8..70d39d034388 100644
--- a/eclass/flag-o-matic.eclass
+++ b/eclass/flag-o-matic.eclass
@@ -162,8 +162,8 @@ _filter-hardened() {
 				fi
 				;;
 
-			-fstack-protector)
-				if ! gcc-specs-ssp && ! tc-enables-ssp ; then
+			-fstack-protector|-fstack-protector-strong)
+				if ! gcc-specs-ssp && ! tc-enables-ssp && ! tc-enables-ssp-strong ; then
 					continue
 				fi
 


^ permalink raw reply related	[flat|nested] 6131+ messages in thread

* [gentoo-commits] repo/gentoo:master commit in: eclass/
@ 2023-08-18  1:31 Sam James
  0 siblings, 0 replies; 6131+ messages in thread
From: Sam James @ 2023-08-18  1:31 UTC (permalink / raw
  To: gentoo-commits

commit:     1dd3378347f15c27b82237443f3a4825b4e70b3d
Author:     Sam James <sam <AT> gentoo <DOT> org>
AuthorDate: Thu Aug 17 03:17:05 2023 +0000
Commit:     Sam James <sam <AT> gentoo <DOT> org>
CommitDate: Fri Aug 18 01:30:15 2023 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=1dd33783

toolchain-funcs.eclass: tc-enables-fortify-source: update for newer libcxx

Newer libcxx uses _LIBCPP_ENABLE_HARDENED_MODE instead of _LIBCPP_ENABLE_ASSERTIONS
which is now deprecated.

Bug: https://bugs.gentoo.org/912223
Signed-off-by: Sam James <sam <AT> gentoo.org>

 eclass/toolchain-funcs.eclass | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/eclass/toolchain-funcs.eclass b/eclass/toolchain-funcs.eclass
index e28f6148ddc1..556bbac35307 100644
--- a/eclass/toolchain-funcs.eclass
+++ b/eclass/toolchain-funcs.eclass
@@ -963,9 +963,9 @@ gcc-specs-stack-check() {
 # @DESCRIPTION:
 # Return truth if the current compiler enables assertions in the C++ standard
 # library. For libstdc++, this is -D_GLIBCXX_ASSERTIONS, and for libcxx/libc++,
-# this is -D_LIBCPP_ENABLE_ASSERTIONS.
+# this is -D_LIBCPP_ENABLE_ASSERTIONS (deprecated) or -D_LIBCPP_ENABLE_HARDENED_MODE.
 tc-enables-cxx-assertions() {
-	tc-cpp-is-true "defined(_GLIBCXX_ASSERTIONS) || defined(_LIBCPP_ENABLE_ASSERTIONS)" ${CPPFLAGS} ${CXXFLAGS}
+	tc-cpp-is-true "defined(_GLIBCXX_ASSERTIONS) || defined(_LIBCPP_ENABLE_ASSERTIONS) || defined(_LIBCPP_ENABLE_HARDENED_MODE)" ${CPPFLAGS} ${CXXFLAGS}
 }
 
 # @FUNCTION: tc-enables-pie


^ permalink raw reply related	[flat|nested] 6131+ messages in thread

* [gentoo-commits] repo/gentoo:master commit in: eclass/
@ 2023-08-19 18:28 Michał Górny
  0 siblings, 0 replies; 6131+ messages in thread
From: Michał Górny @ 2023-08-19 18:28 UTC (permalink / raw
  To: gentoo-commits

commit:     54d6fdbd179f158f4b9e0e21b1b03ff1ae46f404
Author:     James Le Cuirot <chewi <AT> gentoo <DOT> org>
AuthorDate: Wed Aug 16 12:16:33 2023 +0000
Commit:     Michał Górny <mgorny <AT> gentoo <DOT> org>
CommitDate: Sat Aug 19 18:28:13 2023 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=54d6fdbd

python-utils-r1.eclass: Fix PYTHON_SITEDIR/INCLUDEDIR for cross-prefix

We dynamically determine Python's SITEDIR and INCLUDEDIR using the build
host's Python. This breaks down when the build host's prefix differs
from the target host's prefix, so chop off the former and prepend the
latter.

This assumes that each Python implementation is always installed using
the same scheme. Meson already makes this assumption, and gpep517 makes
a similar assumption to determine Python's stdlib location.

We could improve on this and determine these locations using SYSROOT's
sysconfigdata file, like gpep517 does, but this seems needlessly
complex. We would need to take this approach for PYTHON_LIBPATH and
PYTHON_CONFIG, but these are only used by handful of packages.

${BROOT-${EPREFIX}} is needed rather than plain ${BROOT} for the same
reason we need it for PYTHON, namely that Portage <3.0.50 was buggy.

Signed-off-by: James Le Cuirot <chewi <AT> gentoo.org>
Signed-off-by: Michał Górny <mgorny <AT> gentoo.org>

 eclass/python-utils-r1.eclass | 2 ++
 1 file changed, 2 insertions(+)

diff --git a/eclass/python-utils-r1.eclass b/eclass/python-utils-r1.eclass
index 2fffd6d56bf5..f9c6d161d3f3 100644
--- a/eclass/python-utils-r1.eclass
+++ b/eclass/python-utils-r1.eclass
@@ -351,6 +351,7 @@ _python_export() {
 						print(sysconfig.get_path("purelib"))
 					EOF
 				)
+				PYTHON_SITEDIR=${EPREFIX}${PYTHON_SITEDIR#"${BROOT-${EPREFIX}}"}
 				export PYTHON_SITEDIR
 				debug-print "${FUNCNAME}: PYTHON_SITEDIR = ${PYTHON_SITEDIR}"
 				;;
@@ -362,6 +363,7 @@ _python_export() {
 						print(sysconfig.get_path("platinclude"))
 					EOF
 				)
+				PYTHON_INCLUDEDIR=${ESYSROOT}${PYTHON_INCLUDEDIR#"${BROOT-${EPREFIX}}"}
 				export PYTHON_INCLUDEDIR
 				debug-print "${FUNCNAME}: PYTHON_INCLUDEDIR = ${PYTHON_INCLUDEDIR}"
 


^ permalink raw reply related	[flat|nested] 6131+ messages in thread

* [gentoo-commits] repo/gentoo:master commit in: eclass/
@ 2023-08-19 18:28 Michał Górny
  0 siblings, 0 replies; 6131+ messages in thread
From: Michał Górny @ 2023-08-19 18:28 UTC (permalink / raw
  To: gentoo-commits

commit:     bea2580bad608f1084d0768bfa6255d110851dba
Author:     Michał Górny <mgorny <AT> gentoo <DOT> org>
AuthorDate: Sat Aug 19 18:25:15 2023 +0000
Commit:     Michał Górny <mgorny <AT> gentoo <DOT> org>
CommitDate: Sat Aug 19 18:28:11 2023 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=bea2580b

python-r1.eclass: Expand `use doc` check in example for readability

Signed-off-by: Michał Górny <mgorny <AT> gentoo.org>

 eclass/python-r1.eclass | 3 ++-
 1 file changed, 2 insertions(+), 1 deletion(-)

diff --git a/eclass/python-r1.eclass b/eclass/python-r1.eclass
index 303737e41589..fbc6082a1d92 100644
--- a/eclass/python-r1.eclass
+++ b/eclass/python-r1.eclass
@@ -692,7 +692,8 @@ python_foreach_impl() {
 #	$(python_gen_any_dep 'dev-python/epydoc[${PYTHON_USEDEP}]' 'python2*') )"
 #
 # python_check_deps() {
-# 	use !doc || python_has_version "dev-python/epydoc[${PYTHON_USEDEP}]"
+# 	! use doc && return 0
+# 	python_has_version "dev-python/epydoc[${PYTHON_USEDEP}]"
 # }
 #
 # src_compile() {


^ permalink raw reply related	[flat|nested] 6131+ messages in thread

* [gentoo-commits] repo/gentoo:master commit in: eclass/
@ 2023-08-19 18:28 Michał Górny
  0 siblings, 0 replies; 6131+ messages in thread
From: Michał Górny @ 2023-08-19 18:28 UTC (permalink / raw
  To: gentoo-commits

commit:     5c73e17393a246d5101ca6392d199ece9af2180b
Author:     Benda Xu <heroxbd <AT> gentoo <DOT> org>
AuthorDate: Thu Aug 17 06:07:10 2023 +0000
Commit:     Michał Górny <mgorny <AT> gentoo <DOT> org>
CommitDate: Sat Aug 19 18:28:12 2023 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=5c73e173

distutils-r1.eclass: append scikit-build-core to documentation.

To complete 5b29e5b1a393c21db9974de5c2d01e6dc482d4b9.

Signed-off-by: Benda Xu <heroxbd <AT> gentoo.org>
Closes: https://github.com/gentoo/gentoo/pull/32354
Signed-off-by: Michał Górny <mgorny <AT> gentoo.org>

 eclass/distutils-r1.eclass | 2 ++
 1 file changed, 2 insertions(+)

diff --git a/eclass/distutils-r1.eclass b/eclass/distutils-r1.eclass
index 658d26f2a440..91de144e1110 100644
--- a/eclass/distutils-r1.eclass
+++ b/eclass/distutils-r1.eclass
@@ -129,6 +129,8 @@ esac
 #
 # - poetry - poetry-core backend
 #
+# - scikit-build-core - scikit-build-core backend
+#
 # - setuptools - distutils or setuptools (incl. legacy mode)
 #
 # - sip - sipbuild backend


^ permalink raw reply related	[flat|nested] 6131+ messages in thread

* [gentoo-commits] repo/gentoo:master commit in: eclass/
@ 2023-08-19 18:28 Michał Górny
  0 siblings, 0 replies; 6131+ messages in thread
From: Michał Górny @ 2023-08-19 18:28 UTC (permalink / raw
  To: gentoo-commits

commit:     f80b0acf7f78971b601aabb913e067a0dde70268
Author:     Matt Whitlock <gentoo <AT> mattwhitlock <DOT> name>
AuthorDate: Fri Mar 18 21:44:05 2022 +0000
Commit:     Michał Górny <mgorny <AT> gentoo <DOT> org>
CommitDate: Sat Aug 19 18:28:11 2023 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=f80b0acf

python{,-any}-r1.eclass: use python_has_version in examples

The python_check_deps() examples given in the documentation of several
functions and variables in python-r1.eclass and python-any-r1.eclass are
incorrect. The default behavior of has_version() is to check the
*runtime* system (RDEPEND), but python_check_deps() is meant to check
that the *build* system (BDEPEND) has a suitable Python environment. The
examples fail to do this and thus likely are leading developers to write
incorrect python_check_deps() functions in their ebuilds. Thankfully,
python-utils-r1.eclass supplies a python_has_version() function that
defaults to checking the build system and implements some other
enhancements that make it nicer for use in python_check_deps(). Change
the examples to use python_has_version.

Closes: https://bugs.gentoo.org/835462
Signed-off-by: Matt Whitlock <gentoo <AT> mattwhitlock.name>
Signed-off-by: Michał Górny <mgorny <AT> gentoo.org>

 eclass/python-any-r1.eclass |  6 +++---
 eclass/python-r1.eclass     | 10 +++++-----
 2 files changed, 8 insertions(+), 8 deletions(-)

diff --git a/eclass/python-any-r1.eclass b/eclass/python-any-r1.eclass
index 4e2e12e228ad..a21df8e89498 100644
--- a/eclass/python-any-r1.eclass
+++ b/eclass/python-any-r1.eclass
@@ -221,9 +221,9 @@ unset -f _python_any_set_globals
 #		dev-python/baz[${PYTHON_USEDEP}] )')"
 #
 # python_check_deps() {
-#	python_has_version "dev-python/foo[${PYTHON_SINGLE_USEDEP}]" \
-#		&& { python_has_version "dev-python/bar[${PYTHON_USEDEP}]" \
-#			|| python_has_version "dev-python/baz[${PYTHON_USEDEP}]"; }
+# 	python_has_version "dev-python/foo[${PYTHON_SINGLE_USEDEP}]" &&
+# 		{ python_has_version "dev-python/bar[${PYTHON_USEDEP}]" ||
+# 			python_has_version "dev-python/baz[${PYTHON_USEDEP}]"; }
 # }
 # @CODE
 #

diff --git a/eclass/python-r1.eclass b/eclass/python-r1.eclass
index b816e3b6f855..303737e41589 100644
--- a/eclass/python-r1.eclass
+++ b/eclass/python-r1.eclass
@@ -156,7 +156,7 @@ inherit multibuild python-utils-r1
 # Example use:
 # @CODE
 # python_check_deps() {
-# 	has_version "dev-python/bar[${PYTHON_SINGLE_USEDEP}]"
+# 	python_has_version "dev-python/bar[${PYTHON_SINGLE_USEDEP}]"
 # }
 # @CODE
 #
@@ -474,9 +474,9 @@ python_gen_impl_dep() {
 #		dev-python/baz[${PYTHON_USEDEP}] )' -2)"
 #
 # python_check_deps() {
-#	has_version "dev-python/foo[${PYTHON_SINGLE_USEDEP}]" \
-#		&& { has_version "dev-python/bar[${PYTHON_USEDEP}]" \
-#			|| has_version "dev-python/baz[${PYTHON_USEDEP}]"; }
+# 	python_has_version "dev-python/foo[${PYTHON_SINGLE_USEDEP}]" &&
+# 		{ python_has_version "dev-python/bar[${PYTHON_USEDEP}]" ||
+# 			python_has_version "dev-python/baz[${PYTHON_USEDEP}]"; }
 # }
 #
 # src_compile() {
@@ -692,7 +692,7 @@ python_foreach_impl() {
 #	$(python_gen_any_dep 'dev-python/epydoc[${PYTHON_USEDEP}]' 'python2*') )"
 #
 # python_check_deps() {
-#	has_version "dev-python/epydoc[${PYTHON_USEDEP}]"
+# 	use !doc || python_has_version "dev-python/epydoc[${PYTHON_USEDEP}]"
 # }
 #
 # src_compile() {


^ permalink raw reply related	[flat|nested] 6131+ messages in thread

* [gentoo-commits] repo/gentoo:master commit in: eclass/
@ 2023-08-20 12:02 Michał Górny
  0 siblings, 0 replies; 6131+ messages in thread
From: Michał Górny @ 2023-08-20 12:02 UTC (permalink / raw
  To: gentoo-commits

commit:     334ede8833626292d8c11d148b5ed83cf89bbdf9
Author:     Michał Górny <mgorny <AT> gentoo <DOT> org>
AuthorDate: Sun Aug 20 12:01:02 2023 +0000
Commit:     Michał Górny <mgorny <AT> gentoo <DOT> org>
CommitDate: Sun Aug 20 12:02:26 2023 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=334ede88

llvm.org.eclass: Add 18.0.0_pre20230820 snapshot

Signed-off-by: Michał Górny <mgorny <AT> gentoo.org>

 eclass/llvm.org.eclass | 3 +++
 1 file changed, 3 insertions(+)

diff --git a/eclass/llvm.org.eclass b/eclass/llvm.org.eclass
index c83f5725e301..e2d83df1485e 100644
--- a/eclass/llvm.org.eclass
+++ b/eclass/llvm.org.eclass
@@ -72,6 +72,9 @@ if [[ -z ${_LLVM_SOURCE_TYPE+1} ]]; then
 			_LLVM_SOURCE_TYPE=snapshot
 
 			case ${PV} in
+				18.0.0_pre20230820)
+					EGIT_COMMIT=fe42682e7818d44cbe19f98ef34caa4e414aa937
+					;;
 				18.0.0_pre20230810)
 					EGIT_COMMIT=7d259b36d2e8148d13087844e6494ad3a5c63edf
 					;;


^ permalink raw reply related	[flat|nested] 6131+ messages in thread

* [gentoo-commits] repo/gentoo:master commit in: eclass/
@ 2023-08-20 15:46 Michał Górny
  0 siblings, 0 replies; 6131+ messages in thread
From: Michał Górny @ 2023-08-20 15:46 UTC (permalink / raw
  To: gentoo-commits

commit:     bcfd48957adc57003821b6801eac84a46139298b
Author:     Boris Staletic <boris.staletic <AT> protonmail <DOT> com>
AuthorDate: Thu Aug 17 17:05:40 2023 +0000
Commit:     Michał Górny <mgorny <AT> gentoo <DOT> org>
CommitDate: Sun Aug 20 15:46:45 2023 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=bcfd4895

kernel-build.class: Allow usage with module-less kernel configs

With CONFIG_MODULES not set to either y or m, kernel-build.eclass runs
into two issues:

1. Modules.symvers does not get generated. doins build/Module.symvers
   thus fails.
2. kernel.release exists,
   but in ${WORKDIR}/build/include/config/kernel.release
   while kernel-build_src_install() seems to expect to to find it
   in ${PWD}/include/config.

Closes: https://bugs.gentoo.org/904694
Signed-off-by: Boris Staletic <boris.staletic <AT> protonmail.com>
Closes: https://github.com/gentoo/gentoo/pull/32358
Signed-off-by: Michał Górny <mgorny <AT> gentoo.org>

 eclass/kernel-build.eclass | 10 +++++++++-
 1 file changed, 9 insertions(+), 1 deletion(-)

diff --git a/eclass/kernel-build.eclass b/eclass/kernel-build.eclass
index 276a08a104e0..49462df7d518 100644
--- a/eclass/kernel-build.eclass
+++ b/eclass/kernel-build.eclass
@@ -291,10 +291,18 @@ kernel-build_src_install() {
 		')' -delete || die
 	rm modprep/source || die
 	cp -p -R modprep/. "${ED}${kernel_dir}"/ || die
+	# If CONFIG_MODULES=y, then kernel.release will be found in modprep as well, but not
+	# in case of CONFIG_MODULES is not set.
+	# The one in build is exactly the same as the one in modprep, but the one in build
+	# always exists, so it can just be copied unconditionally.
+	cp "${WORKDIR}/build/include/config/kernel.release" \
+		"${ED}${kernel_dir}/include/config/" || die
 
 	# install the kernel and files needed for module builds
 	insinto "${kernel_dir}"
-	doins build/{System.map,Module.symvers}
+	doins build/System.map
+	# build/Module.symvers does not exist if CONFIG_MODULES is not set.
+	[[ -f build/Module.symvers ]] && doins build/Module.symvers
 	local image_path=$(dist-kernel_get_image_path)
 	cp -p "build/${image_path}" "${ED}${kernel_dir}/${image_path}" || die
 


^ permalink raw reply related	[flat|nested] 6131+ messages in thread

* [gentoo-commits] repo/gentoo:master commit in: eclass/
@ 2023-08-21  8:39 Andrew Ammerlaan
  0 siblings, 0 replies; 6131+ messages in thread
From: Andrew Ammerlaan @ 2023-08-21  8:39 UTC (permalink / raw
  To: gentoo-commits

commit:     72bea0951c0c1fb0019855a0219126690415409a
Author:     Violet Purcell <vimproved <AT> inventati <DOT> org>
AuthorDate: Sat Aug 12 20:59:14 2023 +0000
Commit:     Andrew Ammerlaan <andrewammerlaan <AT> gentoo <DOT> org>
CommitDate: Mon Aug 21 08:38:26 2023 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=72bea095

kernel-build.eclass: Fix separate private and public module signing keys

The kernel expects CONFIG_MODULE_SIG_KEY to be either a pkcs11 URI
containing refences to both a private and public key, or a path to a PEM
file containing both the private and public keys. However, currently the
kernel build will fail if MODULES_SIGNING_KEY is set to a PEM file
containing only the private key. This commit adds a step in
kernel-build_merge_configs that concatenates MODULES_SIGNING_KEY and
MODULES_SIGNING_CERT into ${T}/kernel_key.pem if both files exist and
are not the same path. It then sets MODULES_SIGNING_KEY to
${T}/kernel_key.pem. This should fix building with separate private and
public module signing keys.

Signed-off-by: Violet Purcell <vimproved <AT> inventati.org>
Closes: https://github.com/gentoo/gentoo/pull/32275
Signed-off-by: Andrew Ammerlaan <andrewammerlaan <AT> gentoo.org>

 eclass/kernel-build.eclass | 18 +++++++++++++++++-
 1 file changed, 17 insertions(+), 1 deletion(-)

diff --git a/eclass/kernel-build.eclass b/eclass/kernel-build.eclass
index 49462df7d518..8cf7222dc8ab 100644
--- a/eclass/kernel-build.eclass
+++ b/eclass/kernel-build.eclass
@@ -57,7 +57,8 @@ IUSE="+strip"
 # @DESCRIPTION:
 # If set to a non-null value, adds IUSE=modules-sign and required
 # logic to manipulate the kernel config while respecting the
-# MODULES_SIGN_HASH and MODULES_SIGN_KEY user variables.
+# MODULES_SIGN_HASH, MODULES_SIGN_CERT, and MODULES_SIGN_KEY  user
+# variables.
 
 # @ECLASS_VARIABLE: MODULES_SIGN_HASH
 # @USER_VARIABLE
@@ -89,6 +90,14 @@ IUSE="+strip"
 #
 # Default if unset: certs/signing_key.pem
 
+# @ECLASS_VARIABLE: MODULES_SIGN_CERT
+# @USER_VARIABLE
+# @DEFAULT_UNSET
+# @DESCRIPTION:
+# Used with USE=modules-sign.  Can be set to the path of the public
+# key in PEM format to use. Must be specified if MODULES_SIGN_KEY
+# is set to a path of a file that only contains the private key.
+
 if [[ ${KERNEL_IUSE_MODULES_SIGN} ]]; then
 	IUSE+=" modules-sign"
 	REQUIRED_USE="secureboot? ( modules-sign )"
@@ -402,6 +411,13 @@ kernel-build_merge_configs() {
 				CONFIG_MODULE_SIG_FORCE=y
 				CONFIG_MODULE_SIG_${MODULES_SIGN_HASH^^}=y
 			EOF
+			if [[ -e ${MODULES_SIGN_KEY} && -e ${MODULES_SIGN_CERT} &&
+				${MODULES_SIGN_KEY} != ${MODULES_SIGN_CERT} &&
+				${MODULES_SIGN_KEY} != pkcs11:* ]]
+			then
+				cat "${MODULES_SIGN_CERT}" "${MODULES_SIGN_KEY}" > "${T}/kernel_key.pem" || die
+				MODULES_SIGN_KEY="${T}/kernel_key.pem"
+			fi
 			if [[ ${MODULES_SIGN_KEY} == pkcs11:* || -e ${MODULES_SIGN_KEY} ]]; then
 				echo "CONFIG_MODULE_SIG_KEY=\"${MODULES_SIGN_KEY}\"" \
 					>> "${WORKDIR}/modules-sign.config"


^ permalink raw reply related	[flat|nested] 6131+ messages in thread

* [gentoo-commits] repo/gentoo:master commit in: eclass/
@ 2023-08-21  8:39 Andrew Ammerlaan
  0 siblings, 0 replies; 6131+ messages in thread
From: Andrew Ammerlaan @ 2023-08-21  8:39 UTC (permalink / raw
  To: gentoo-commits

commit:     8655aba9e210295c110c1748a3b10cb10a6694c7
Author:     Andrew Ammerlaan <andrewammerlaan <AT> gentoo <DOT> org>
AuthorDate: Mon Aug 21 06:53:29 2023 +0000
Commit:     Andrew Ammerlaan <andrewammerlaan <AT> gentoo <DOT> org>
CommitDate: Mon Aug 21 08:38:30 2023 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=8655aba9

kernel-build.eclass: depend on openssl with USE=modules-sign

Signed-off-by: Andrew Ammerlaan <andrewammerlaan <AT> gentoo.org>

 eclass/kernel-build.eclass | 3 +++
 1 file changed, 3 insertions(+)

diff --git a/eclass/kernel-build.eclass b/eclass/kernel-build.eclass
index 8cf7222dc8ab..d498dd2e705b 100644
--- a/eclass/kernel-build.eclass
+++ b/eclass/kernel-build.eclass
@@ -101,6 +101,9 @@ IUSE="+strip"
 if [[ ${KERNEL_IUSE_MODULES_SIGN} ]]; then
 	IUSE+=" modules-sign"
 	REQUIRED_USE="secureboot? ( modules-sign )"
+	BDEPEND+="
+		modules-sign? ( dev-libs/openssl )
+	"
 fi
 
 # @FUNCTION: kernel-build_pkg_setup


^ permalink raw reply related	[flat|nested] 6131+ messages in thread

* [gentoo-commits] repo/gentoo:master commit in: eclass/
@ 2023-08-22 13:27 Andrew Ammerlaan
  0 siblings, 0 replies; 6131+ messages in thread
From: Andrew Ammerlaan @ 2023-08-22 13:27 UTC (permalink / raw
  To: gentoo-commits

commit:     298769e6384287ff1a39fd8659dd1a37101ee47b
Author:     Andrew Ammerlaan <andrewammerlaan <AT> gentoo <DOT> org>
AuthorDate: Tue Aug 22 13:24:09 2023 +0000
Commit:     Andrew Ammerlaan <andrewammerlaan <AT> gentoo <DOT> org>
CommitDate: Tue Aug 22 13:24:09 2023 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=298769e6

kernel-build.eclass: error out early if signing key not readable

Signed-off-by: Andrew Ammerlaan <andrewammerlaan <AT> gentoo.org>

 eclass/kernel-build.eclass | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/eclass/kernel-build.eclass b/eclass/kernel-build.eclass
index d498dd2e705b..5b324e036c5f 100644
--- a/eclass/kernel-build.eclass
+++ b/eclass/kernel-build.eclass
@@ -421,11 +421,11 @@ kernel-build_merge_configs() {
 				cat "${MODULES_SIGN_CERT}" "${MODULES_SIGN_KEY}" > "${T}/kernel_key.pem" || die
 				MODULES_SIGN_KEY="${T}/kernel_key.pem"
 			fi
-			if [[ ${MODULES_SIGN_KEY} == pkcs11:* || -e ${MODULES_SIGN_KEY} ]]; then
+			if [[ ${MODULES_SIGN_KEY} == pkcs11:* || -r ${MODULES_SIGN_KEY} ]]; then
 				echo "CONFIG_MODULE_SIG_KEY=\"${MODULES_SIGN_KEY}\"" \
 					>> "${WORKDIR}/modules-sign.config"
 			elif [[ -n ${MODULES_SIGN_KEY} ]]; then
-				die "MODULES_SIGN_KEY=${MODULES_SIGN_KEY} not found!"
+				die "MODULES_SIGN_KEY=${MODULES_SIGN_KEY} not found or not readable!"
 			fi
 			merge_configs+=( "${WORKDIR}/modules-sign.config" )
 		fi


^ permalink raw reply related	[flat|nested] 6131+ messages in thread

* [gentoo-commits] repo/gentoo:master commit in: eclass/
@ 2023-08-22 13:27 Andrew Ammerlaan
  0 siblings, 0 replies; 6131+ messages in thread
From: Andrew Ammerlaan @ 2023-08-22 13:27 UTC (permalink / raw
  To: gentoo-commits

commit:     e95be81e9a35b261c0e59272fbfd0108239f9ca3
Author:     Andrew Ammerlaan <andrewammerlaan <AT> gentoo <DOT> org>
AuthorDate: Tue Aug 22 13:27:24 2023 +0000
Commit:     Andrew Ammerlaan <andrewammerlaan <AT> gentoo <DOT> org>
CommitDate: Tue Aug 22 13:27:24 2023 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=e95be81e

secureboot.eclass: error out early if signing key not readable

Signed-off-by: Andrew Ammerlaan <andrewammerlaan <AT> gentoo.org>

 eclass/secureboot.eclass | 10 +++++-----
 1 file changed, 5 insertions(+), 5 deletions(-)

diff --git a/eclass/secureboot.eclass b/eclass/secureboot.eclass
index 477722a83bb3..383fe7cc3afa 100644
--- a/eclass/secureboot.eclass
+++ b/eclass/secureboot.eclass
@@ -52,7 +52,7 @@ BDEPEND="secureboot? ( app-crypt/sbsigntools )"
 # @DESCRIPTION:
 # Used with USE=secureboot.  Should be set to the path of the private
 # key in PEM format to use, or a PKCS#11 URI.
-#
+
 # @ECLASS_VARIABLE: SECUREBOOT_SIGN_CERT
 # @USER_VARIABLE
 # @DEFAULT_UNSET
@@ -75,11 +75,11 @@ _secureboot_die_if_unset() {
 	if [[ -z ${SECUREBOOT_SIGN_KEY} || -z ${SECUREBOOT_SIGN_CERT} ]]; then
 		die "USE=secureboot enabled but SECUREBOOT_SIGN_KEY and/or SECUREBOOT_SIGN_CERT not set."
 	fi
-	if [[ ! ${SECUREBOOT_SIGN_KEY} == pkcs11:* && ! -f ${SECUREBOOT_SIGN_KEY} ]]; then
-		die "SECUREBOOT_SIGN_KEY=${SECUREBOOT_SIGN_KEY} not found"
+	if [[ ! ${SECUREBOOT_SIGN_KEY} == pkcs11:* && ! -r ${SECUREBOOT_SIGN_KEY} ]]; then
+		die "SECUREBOOT_SIGN_KEY=${SECUREBOOT_SIGN_KEY} not found or not readable!"
 	fi
-	if [[ ! -f ${SECUREBOOT_SIGN_CERT} ]];then
-		die "SECUREBOOT_SIGN_CERT=${SECUREBOOT_SIGN_CERT} not found"
+	if [[ ! -r ${SECUREBOOT_SIGN_CERT} ]]; then
+		die "SECUREBOOT_SIGN_CERT=${SECUREBOOT_SIGN_CERT} not found or not readable!"
 	fi
 }
 


^ permalink raw reply related	[flat|nested] 6131+ messages in thread

* [gentoo-commits] repo/gentoo:master commit in: eclass/
@ 2023-08-22 17:12 Sam James
  0 siblings, 0 replies; 6131+ messages in thread
From: Sam James @ 2023-08-22 17:12 UTC (permalink / raw
  To: gentoo-commits

commit:     e105854611974017415af6199d521b78f1134ff4
Author:     Sam James <sam <AT> gentoo <DOT> org>
AuthorDate: Tue Aug 22 17:11:34 2023 +0000
Commit:     Sam James <sam <AT> gentoo <DOT> org>
CommitDate: Tue Aug 22 17:11:34 2023 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=e1058546

check-reqs.eclass: clarify failed requirements error

Explicitly suggest lower MAKEOPTS jobs and/or adding swap for bad RAM
amount.

Signed-off-by: Sam James <sam <AT> gentoo.org>

 eclass/check-reqs.eclass | 8 +++++---
 1 file changed, 5 insertions(+), 3 deletions(-)

diff --git a/eclass/check-reqs.eclass b/eclass/check-reqs.eclass
index f6409e9a02c5..fac2f4553d74 100644
--- a/eclass/check-reqs.eclass
+++ b/eclass/check-reqs.eclass
@@ -291,9 +291,11 @@ _check-reqs_output() {
 	[[ ${EBUILD_PHASE} == "pretend" && -z ${CHECKREQS_DONOTHING} ]] && msg="eerror"
 	if [[ -n ${CHECKREQS_FAILED} ]]; then
 		${msg}
-		${msg} "Space constraints set in the ebuild were not met!"
-		${msg} "The build will most probably fail, you should enhance the space"
-		${msg} "as per failed tests."
+		${msg} "Memory or space constraints set in the ebuild were not met!"
+		${msg} "The build will most probably fail, you should:"
+		${msg} "- enhance the memory (reduce MAKEOPTS, add swap), or"
+		${msg} "- add more space"
+		${msg} "as required depending on the failed tests."
 		${msg}
 
 		[[ ${EBUILD_PHASE} == "pretend" && -z ${CHECKREQS_DONOTHING} ]] && \


^ permalink raw reply related	[flat|nested] 6131+ messages in thread

* [gentoo-commits] repo/gentoo:master commit in: eclass/
@ 2023-08-22 17:12 Sam James
  0 siblings, 0 replies; 6131+ messages in thread
From: Sam James @ 2023-08-22 17:12 UTC (permalink / raw
  To: gentoo-commits

commit:     84b8266d0423caa790474e031d5def9ad4b8bd0e
Author:     Alfred Persson Forsberg <cat <AT> catcream <DOT> org>
AuthorDate: Wed Aug 24 02:16:50 2022 +0000
Commit:     Sam James <sam <AT> gentoo <DOT> org>
CommitDate: Tue Aug 22 17:08:39 2023 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=84b8266d

cmake.eclass: add CMAKE_SKIP_TESTS

Signed-off-by: Alfred Persson Forsberg <cat <AT> catcream.org>
Closes: https://github.com/gentoo/gentoo/pull/27052
Signed-off-by: Sam James <sam <AT> gentoo.org>

 eclass/cmake.eclass | 7 +++++++
 1 file changed, 7 insertions(+)

diff --git a/eclass/cmake.eclass b/eclass/cmake.eclass
index 16b3e300ccae..fb3f9b6352be 100644
--- a/eclass/cmake.eclass
+++ b/eclass/cmake.eclass
@@ -125,6 +125,12 @@ fi
 # read-only. This is a user flag and should under _no circumstances_ be set in
 # the ebuild. Helps in improving QA of build systems that write to source tree.
 
+# @ECLASS_VARIABLE: CMAKE_SKIP_TESTS
+# @USER_VARIABLE
+# @DEFAULT_UNSET
+# @DESCRIPTION:
+# Array of tests that should be skipped when running CTest.
+
 [[ ${CMAKE_MIN_VERSION} ]] && die "CMAKE_MIN_VERSION is banned; if necessary, set BDEPEND=\">=dev-util/cmake-${CMAKE_MIN_VERSION}\" directly"
 [[ ${CMAKE_BUILD_DIR} ]] && die "The ebuild must be migrated to BUILD_DIR"
 [[ ${CMAKE_REMOVE_MODULES} ]] && die "CMAKE_REMOVE_MODULES is banned, set CMAKE_REMOVE_MODULES_LIST array instead"
@@ -681,6 +687,7 @@ cmake_src_test() {
 	[[ -e CTestTestfile.cmake ]] || { echo "No tests found. Skipping."; return 0 ; }
 
 	[[ -n ${TEST_VERBOSE} ]] && myctestargs+=( --extra-verbose --output-on-failure )
+	[[ -n ${CMAKE_SKIP_TESTS} ]] && myctestargs+=( -E '('$( IFS='|'; echo "${CMAKE_SKIP_TESTS[*]}")')'  )
 
 	set -- ctest -j "$(makeopts_jobs "${MAKEOPTS}" 999)" \
 		--test-load "$(makeopts_loadavg)" "${myctestargs[@]}" "$@"


^ permalink raw reply related	[flat|nested] 6131+ messages in thread

* [gentoo-commits] repo/gentoo:master commit in: eclass/
@ 2023-08-22 18:04 Sam James
  0 siblings, 0 replies; 6131+ messages in thread
From: Sam James @ 2023-08-22 18:04 UTC (permalink / raw
  To: gentoo-commits

commit:     6472469a0333ea9088e815c0741c2dfb200987b5
Author:     Alfred Persson Forsberg <cat <AT> catcream <DOT> org>
AuthorDate: Tue Aug  1 22:32:35 2023 +0000
Commit:     Sam James <sam <AT> gentoo <DOT> org>
CommitDate: Tue Aug 22 18:03:37 2023 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=6472469a

kernel-2.eclass: Use cross.eclass for figuring out CTARGET

Use crossdev.eclass instead of manually parsing category. This makes it
automatically support LLVM/Clang crossdev.

Signed-off-by: Alfred Persson Forsberg <cat <AT> catcream.org>
Signed-off-by: Sam James <sam <AT> gentoo.org>

 eclass/kernel-2.eclass | 7 +------
 1 file changed, 1 insertion(+), 6 deletions(-)

diff --git a/eclass/kernel-2.eclass b/eclass/kernel-2.eclass
index bdeabb9fc2dc..dc9ed25e8b60 100644
--- a/eclass/kernel-2.eclass
+++ b/eclass/kernel-2.eclass
@@ -281,7 +281,7 @@
 # If you do change them, there is a chance that we will not fix resulting bugs;
 # that of course does not mean we're not willing to help.
 
-inherit estack multiprocessing toolchain-funcs
+inherit crossdev estack multiprocessing toolchain-funcs
 
 case ${EAPI} in
 	7|8) ;;
@@ -293,11 +293,6 @@ esac
 # I will remove it when I come up with something more reasonable.
 [[ ${PROFILE_ARCH} == ppc64 ]] && CHOST="powerpc64-${CHOST#*-}"
 
-export CTARGET=${CTARGET:-${CHOST}}
-if [[ ${CTARGET} == ${CHOST} && ${CATEGORY/cross-} != ${CATEGORY} ]]; then
-	export CTARGET=${CATEGORY/cross-}
-fi
-
 HOMEPAGE="https://www.kernel.org/ https://wiki.gentoo.org/wiki/Kernel ${HOMEPAGE}"
 : "${LICENSE:="GPL-2"}"
 


^ permalink raw reply related	[flat|nested] 6131+ messages in thread

* [gentoo-commits] repo/gentoo:master commit in: eclass/
@ 2023-08-22 18:04 Sam James
  0 siblings, 0 replies; 6131+ messages in thread
From: Sam James @ 2023-08-22 18:04 UTC (permalink / raw
  To: gentoo-commits

commit:     00ee14eab35e0dad294da8efe1c9f6606c3e4794
Author:     Alfred Persson Forsberg <cat <AT> catcream <DOT> org>
AuthorDate: Tue Aug  1 22:14:15 2023 +0000
Commit:     Sam James <sam <AT> gentoo <DOT> org>
CommitDate: Tue Aug 22 18:03:36 2023 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=00ee14ea

crossdev.eclass: new eclass

This eclass includes convenience wrappers for use in ebuilds used by the
Crossdev tool. Mostly to avoid duplicating code for checking category
and setting CTARGET in ebuilds.

Signed-off-by: Alfred Persson Forsberg <cat <AT> catcream.org>
Signed-off-by: Sam James <sam <AT> gentoo.org>

 eclass/crossdev.eclass | 77 ++++++++++++++++++++++++++++++++++++++++++++++++++
 1 file changed, 77 insertions(+)

diff --git a/eclass/crossdev.eclass b/eclass/crossdev.eclass
new file mode 100644
index 000000000000..d6c99e4f32b7
--- /dev/null
+++ b/eclass/crossdev.eclass
@@ -0,0 +1,77 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+# @ECLASS: crossdev.eclass
+# @MAINTAINER:
+# cat@catcream.org
+# @AUTHOR:
+# Alfred Persson Forsberg <cat@catcream.org> (21 Jul 2023)
+# @SUPPORTED_EAPIS: 7 8
+# @BLURB: Convenience wrappers for packages used by the Crossdev tool.
+
+inherit toolchain-funcs
+
+case ${EAPI} in
+	7|8) ;;
+	*) die "${ECLASS}: EAPI ${EAPI:-0} not supported" ;;
+esac
+
+if [[ -z ${_CROSSDEV_ECLASS} ]]; then
+_CROSSDEV_ECLASS=1
+
+# @ECLASS_VARIABLE: _CROSS_CATEGORY_PREFIX
+# @INTERNAL
+# @DESCRIPTION:
+# This variable specifies the category prefix for a Crossdev
+# package. For GCC Crossdev it is "cross-", and for LLVM it is
+# "cross_llvm-"
+_CROSS_CATEGORY_PREFIX=""
+
+# @ECLASS_VARIABLE: _IS_CROSSPKG_LLVM
+# @INTERNAL
+# @DESCRIPTION:
+# Is true if the package is in a LLVM Crossdev category, otherwise false
+_IS_CROSSPKG_LLVM=0
+if [[ ${CATEGORY} == cross_llvm-* ]] ; then
+	_IS_CROSSPKG_LLVM=1
+	_CROSS_CATEGORY_PREFIX="cross_llvm-"
+fi
+
+# @ECLASS_VARIABLE: _IS_CROSSPKG_GCC
+# @INTERNAL
+# @DESCRIPTION:
+# Is true if the package is in a GCC Crossdev category, otherwise false
+_IS_CROSSPKG_GCC=0
+if [[ ${CATEGORY} == cross-* ]] ; then
+	_IS_CROSSPKG_GCC=1
+	_CROSS_CATEGORY_PREFIX="cross-"
+fi
+
+# @ECLASS_VARIABLE: _IS_CROSSPKG
+# @INTERNAL
+# @DESCRIPTION:
+# Is true if the package is in a any Crossdev category, otherwise false
+[[ ${_IS_CROSSPKG_LLVM} == 1 || ${_IS_CROSSPKG_GCC} == 1 ]] && _IS_CROSSPKG=1
+
+# Default CBUILD and CTARGET to CHOST if unset.
+export CBUILD=${CBUILD:-${CHOST}}
+export CTARGET=${CTARGET:-${CHOST}}
+
+if [[ ${CTARGET} == ${CHOST} ]] ; then
+	# cross-aarch64-gentoo-linux-musl -> aarch64-gentoo-linux-musl
+	[[ ${_IS_CROSSPKG} == 1 ]] && export CTARGET=${CATEGORY#${_CROSS_CATEGORY_PREFIX}}
+fi
+
+# @FUNCTION: target_is_not_host
+# @RETURN: Shell true if we're targeting an triple other than host
+target_is_not_host() {
+	 [[ ${CHOST} != ${CTARGET} ]]
+}
+
+# @FUNCTION: is_crosspkg
+# @RETURN: Shell true if package belongs to any crossdev category
+is_crosspkg() {
+	 [[ ${_IS_CROSSPKG} == 1 ]]
+}
+
+fi


^ permalink raw reply related	[flat|nested] 6131+ messages in thread

* [gentoo-commits] repo/gentoo:master commit in: eclass/
@ 2023-08-23  7:36 Michał Górny
  0 siblings, 0 replies; 6131+ messages in thread
From: Michał Górny @ 2023-08-23  7:36 UTC (permalink / raw
  To: gentoo-commits

commit:     603009a23553544f5dbd280ebd33d0d789db87b3
Author:     Michał Górny <mgorny <AT> gentoo <DOT> org>
AuthorDate: Wed Aug 23 06:50:27 2023 +0000
Commit:     Michał Górny <mgorny <AT> gentoo <DOT> org>
CommitDate: Wed Aug 23 07:36:24 2023 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=603009a2

cmake.eclass: Remove duplicate eninja call from cmake_build

Signed-off-by: Michał Górny <mgorny <AT> gentoo.org>

 eclass/cmake.eclass | 1 -
 1 file changed, 1 deletion(-)

diff --git a/eclass/cmake.eclass b/eclass/cmake.eclass
index fb3f9b6352be..d0f6d0b4bd91 100644
--- a/eclass/cmake.eclass
+++ b/eclass/cmake.eclass
@@ -661,7 +661,6 @@ cmake_build() {
 				OFF) NINJA_VERBOSE=OFF eninja "$@" ;;
 				*) eninja "$@" ;;
 			esac
-			eninja "$@"
 			;;
 	esac
 


^ permalink raw reply related	[flat|nested] 6131+ messages in thread

* [gentoo-commits] repo/gentoo:master commit in: eclass/
@ 2023-08-25  9:12 Andrew Ammerlaan
  0 siblings, 0 replies; 6131+ messages in thread
From: Andrew Ammerlaan @ 2023-08-25  9:12 UTC (permalink / raw
  To: gentoo-commits

commit:     db04534a538f2980e1d48dfbec7a8d4143c75d0a
Author:     Andrew Ammerlaan <andrewammerlaan <AT> gentoo <DOT> org>
AuthorDate: Fri Aug 25 09:10:10 2023 +0000
Commit:     Andrew Ammerlaan <andrewammerlaan <AT> gentoo <DOT> org>
CommitDate: Fri Aug 25 09:12:16 2023 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=db04534a

docs.eclass: fix sphinx/mkdocs docs building in pep517 mode

This patch copies the sphinx-build logic from python-utils-r1.eclass to use
'python -m mkdocs' instead of plain 'mkdocs' whenever possible. This fixes
building mkdocs themes in pep517 mode where the very themes we are installing
would otherwise be unavailable for building the documentation.

Closes: https://bugs.gentoo.org/878047
Closes: https://bugs.gentoo.org/877823
Signed-off-by: Andrew Ammerlaan <andrewammerlaan <AT> gentoo.org>

 eclass/docs.eclass | 28 +++++++++++++++++++++++-----
 1 file changed, 23 insertions(+), 5 deletions(-)

diff --git a/eclass/docs.eclass b/eclass/docs.eclass
index 1aa4937a6363..bd2f252eff55 100644
--- a/eclass/docs.eclass
+++ b/eclass/docs.eclass
@@ -269,8 +269,18 @@ sphinx_compile() {
 	sed -i -e 's:^intersphinx_mapping:disabled_&:' \
 		"${DOCS_DIR}"/conf.py || die
 	# not all packages include the Makefile in pypi tarball
-	sphinx-build -b html -d "${DOCS_OUTDIR}"/_build/doctrees "${DOCS_DIR}" \
-	"${DOCS_OUTDIR}" || die "${FUNCNAME}: sphinx-build failed"
+	local command=( "${EPYTHON}" -m sphinx.cmd.build )
+	if ! "${EPYTHON}" -c "import sphinx.cmd.build" 2>/dev/null; then
+		command=( sphinx-build )
+	fi
+	command+=(
+		-b html
+		-d "${DOCS_OUTDIR}"/_build/doctrees
+		"${DOCS_DIR}"
+		"${DOCS_OUTDIR}"
+	)
+	echo "${command[@]}" >&2
+	"${command[@]}" || die "${FUNCNAME}: sphinx-build failed"
 
 	HTML_DOCS+=( "${DOCS_OUTDIR}" )
 
@@ -316,9 +326,17 @@ mkdocs_compile() {
 	[[ -f ${mkdocsyml} ]] ||
 		die "${FUNCNAME}: ${mkdocsyml} not found, DOCS_DIR=${DOCS_DIR} wrong"
 
-	pushd "${DOCS_DIR}" || die
-	mkdocs build -d "${DOCS_OUTDIR}" || die "${FUNCNAME}: mkdocs build failed"
-	popd || die
+	pushd "${DOCS_DIR}" >/dev/null || die
+	local command=( "${EPYTHON}" -m mkdocs build )
+	if ! "${EPYTHON}" -c "import mkdocs" 2>/dev/null; then
+		command=( mkdocs build )
+	fi
+	command+=(
+		-d "${DOCS_OUTDIR}"
+	)
+	echo "${command[@]}" >&2
+	"${command[@]}" || die "${FUNCNAME}: mkdocs build failed"
+	popd >/dev/null || die
 
 	# remove generated .gz variants
 	# mkdocs currently has no option to disable this


^ permalink raw reply related	[flat|nested] 6131+ messages in thread

* [gentoo-commits] repo/gentoo:master commit in: eclass/
@ 2023-08-25 19:17 Michał Górny
  0 siblings, 0 replies; 6131+ messages in thread
From: Michał Górny @ 2023-08-25 19:17 UTC (permalink / raw
  To: gentoo-commits

commit:     2e4da7a0faa7071fda7f12eaa87eac72d861cf95
Author:     Michał Górny <mgorny <AT> gentoo <DOT> org>
AuthorDate: Fri Aug 25 18:25:40 2023 +0000
Commit:     Michał Górny <mgorny <AT> gentoo <DOT> org>
CommitDate: Fri Aug 25 19:17:22 2023 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=2e4da7a0

llvm.org.eclass: Add 18.0.0_pre20230825 snapshot

Signed-off-by: Michał Górny <mgorny <AT> gentoo.org>

 eclass/llvm.org.eclass | 3 +++
 1 file changed, 3 insertions(+)

diff --git a/eclass/llvm.org.eclass b/eclass/llvm.org.eclass
index e2d83df1485e..b620557c7a61 100644
--- a/eclass/llvm.org.eclass
+++ b/eclass/llvm.org.eclass
@@ -72,6 +72,9 @@ if [[ -z ${_LLVM_SOURCE_TYPE+1} ]]; then
 			_LLVM_SOURCE_TYPE=snapshot
 
 			case ${PV} in
+				18.0.0_pre20230825)
+					EGIT_COMMIT=e3373c6c83d3855adb78f1952a3bf0398baf359e
+					;;
 				18.0.0_pre20230820)
 					EGIT_COMMIT=fe42682e7818d44cbe19f98ef34caa4e414aa937
 					;;


^ permalink raw reply related	[flat|nested] 6131+ messages in thread

* [gentoo-commits] repo/gentoo:master commit in: eclass/
@ 2023-08-26  6:52 Ulrich Müller
  0 siblings, 0 replies; 6131+ messages in thread
From: Ulrich Müller @ 2023-08-26  6:52 UTC (permalink / raw
  To: gentoo-commits

commit:     80edf9c26c6f38e624e55a81eede57cd7c476ddb
Author:     Ulrich Müller <ulm <AT> gentoo <DOT> org>
AuthorDate: Sat Aug 26 06:51:00 2023 +0000
Commit:     Ulrich Müller <ulm <AT> gentoo <DOT> org>
CommitDate: Sat Aug 26 06:51:06 2023 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=80edf9c2

elisp-common.eclass: Rewrap lines in eclass documentation

No changes of the text.

Signed-off-by: Ulrich Müller <ulm <AT> gentoo.org>

 eclass/elisp-common.eclass | 56 +++++++++++++++++++++++++---------------------
 1 file changed, 30 insertions(+), 26 deletions(-)

diff --git a/eclass/elisp-common.eclass b/eclass/elisp-common.eclass
index ef24622d405e..a40c9f63007d 100644
--- a/eclass/elisp-common.eclass
+++ b/eclass/elisp-common.eclass
@@ -351,8 +351,8 @@ elisp-make-autoload-file() {
 # @FUNCTION: elisp-org-export-to
 # @USAGE: <export file type> <Org file path>
 # @DESCRIPTION:
-# Use Emacs Org "export-to" functions to convert a given Org file to a picked
-# format.
+# Use Emacs Org "export-to" functions to convert a given Org file to a
+# picked format.
 #
 # Example:
 # @CODE
@@ -386,12 +386,13 @@ elisp-org-export-to() {
 # @DESCRIPTION:
 # Run ELisp package tests using the "buttercup" test runner.
 #
-# The option "test-subdirectory" may be given any number of times, it should
-# be given as though it was passed to Emacs or the test tool, not as a string.
+# The option "test-subdirectory" may be given any number of times,
+# it should be given as though it was passed to Emacs or the test tool,
+# not as a string.
 #
 # The options "test-subdirectory" and "test-runner-opts" are optional,
-# but if "test-runner-opts" needs to be provided also "test-subdirectory" has
-# to be specified.
+# but if "test-runner-opts" needs to be provided also "test-subdirectory"
+# has to be specified.
 
 elisp-test-buttercup() {
 	debug-print-function ${FUNCNAME} "$@"
@@ -415,12 +416,13 @@ elisp-test-buttercup() {
 # @DESCRIPTION:
 # Run ELisp package tests using the "ert-runner" test runner.
 #
-# The option "test-subdirectory" may be given any number of times, it should
-# be given as though it was passed to Emacs or the test tool, not as a string.
+# The option "test-subdirectory" may be given any number of times,
+# it should be given as though it was passed to Emacs or the test tool,
+# not as a string.
 #
 # The options "test-subdirectory" and "test-runner-opts" are optional,
-# but if "test-runner-opts" needs to be provided also "test-subdirectory" has
-# to be specified.
+# but if "test-runner-opts" needs to be provided also "test-subdirectory"
+# has to be specified.
 
 elisp-test-ert-runner() {
 	debug-print-function ${FUNCNAME} "$@"
@@ -445,12 +447,13 @@ elisp-test-ert-runner() {
 # @DESCRIPTION:
 # Run ELisp package tests using "ert", the Emacs's built-in test runner.
 #
-# The option "test-subdirectory" may be given any number of times, it should
-# be given as though it was passed to Emacs or the test tool, not as a string.
+# The option "test-subdirectory" may be given any number of times,
+# it should be given as though it was passed to Emacs or the test tool,
+# not as a string.
 #
 # The options "test-subdirectory" and "test-runner-opts" are optional,
-# but if "test-runner-opts" needs to be provided also "test-subdirectory" has
-# to be specified.
+# but if "test-runner-opts" needs to be provided also "test-subdirectory"
+# has to be specified.
 
 elisp-test-ert() {
 	debug-print-function ${FUNCNAME} "$@"
@@ -482,8 +485,8 @@ elisp-test-ert() {
 # @FUNCTION: elisp-enable-tests
 # @USAGE: [--optional] <test-runner> [test-runner-options] ...
 # @DESCRIPTION:
-# Set up IUSE, RESTRICT, BDEPEND and test runner function for running tests
-# with the specified test runner.
+# Set up IUSE, RESTRICT, BDEPEND and test runner function for running
+# tests with the specified test runner.
 #
 # The test-runner argument must be one of:
 #
@@ -493,18 +496,19 @@ elisp-test-ert() {
 #
 # - ert: for built-in GNU Emacs test utility
 #
-# If the "--optional" flag is passed (before specifying the test runner),
-# then it is assumed that the ELisp package is a part of some project that
-# optionally enables GNU Emacs support.
-# This will correctly set up the test and Emacs dependencies.
+# If the "--optional" flag is passed (before specifying the test
+# runner), then it is assumed that the ELisp package is a part of some
+# some project that optionally enables GNU Emacs support.  This will
+# correctly set up the test and Emacs dependencies.
 #
-# Notice that the fist option passed to the "test-runner" is the directory
-# and the rest are miscellaneous options applicable to that given runner.
+# Notice that the fist option passed to the "test-runner" is the
+# directory and the rest are miscellaneous options applicable to that
+# given runner.
 #
-# This function has to be called post inherit, specifically after "IUSE",
-# "RESTRICT" and "BDEPEND" variables are assigned.
-# It is advised to place this call right before (re)defining a given ebuild's
-# phases.
+# This function has to be called post inherit, specifically after
+# "IUSE", "RESTRICT" and "BDEPEND" variables are assigned.
+# It is advised to place this call right before (re)defining a given
+# ebuild's phases.
 #
 # Example:
 # @CODE


^ permalink raw reply related	[flat|nested] 6131+ messages in thread

* [gentoo-commits] repo/gentoo:master commit in: eclass/
@ 2023-08-26  6:52 Ulrich Müller
  0 siblings, 0 replies; 6131+ messages in thread
From: Ulrich Müller @ 2023-08-26  6:52 UTC (permalink / raw
  To: gentoo-commits

commit:     9ad1e2555ee67d4cd7dfc538f09f37b1eecc5566
Author:     Maciej Barć <xgqt <AT> gentoo <DOT> org>
AuthorDate: Tue Aug 22 13:48:26 2023 +0000
Commit:     Ulrich Müller <ulm <AT> gentoo <DOT> org>
CommitDate: Sat Aug 26 06:51:06 2023 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=9ad1e255

eclass/elisp-common.eclass: add elisp-org-export-to

Signed-off-by: Maciej Barć <xgqt <AT> gentoo.org>
Signed-off-by: Ulrich Müller <ulm <AT> gentoo.org>

 eclass/elisp-common.eclass | 33 +++++++++++++++++++++++++++++++++
 1 file changed, 33 insertions(+)

diff --git a/eclass/elisp-common.eclass b/eclass/elisp-common.eclass
index 03e47d931f44..ef24622d405e 100644
--- a/eclass/elisp-common.eclass
+++ b/eclass/elisp-common.eclass
@@ -348,6 +348,39 @@ elisp-make-autoload-file() {
 	eend $? "elisp-make-autoload-file: batch-update-autoloads failed" || die
 }
 
+# @FUNCTION: elisp-org-export-to
+# @USAGE: <export file type> <Org file path>
+# @DESCRIPTION:
+# Use Emacs Org "export-to" functions to convert a given Org file to a picked
+# format.
+#
+# Example:
+# @CODE
+# 	elisp-org-export-to texinfo README.org
+# 	mv README.texi ${PN}.texi || die
+# @CODE
+
+elisp-org-export-to() {
+	local export_format="${1}"
+	local org_file_path="${2}"
+
+	local export_group
+	case ${export_format} in
+		info) export_group=texinfo ;;  # Straight to ".info".
+		markdown) export_group=md ;;
+		pdf) export_group=latex ;;
+		*) export_group=${export_format} ;;
+	esac
+
+	# export_format = texinfo    =>  org-texinfo-export-to-texinfo
+	# export_format = pdf        =>  org-latex-export-to-pdf
+
+	local export_function=org-${export_group}-export-to-${export_format}
+
+	${EMACS} ${EMACSFLAGS} "${org_file_path}" -f "${export_function}" \
+		|| die "Org export to ${export_format} failed"
+}
+
 # @FUNCTION: elisp-test-buttercup
 # @USAGE: [test-subdirectory] [test-runner-opts] ...
 # @DESCRIPTION:


^ permalink raw reply related	[flat|nested] 6131+ messages in thread

* [gentoo-commits] repo/gentoo:master commit in: eclass/
@ 2023-08-26  6:52 Ulrich Müller
  0 siblings, 0 replies; 6131+ messages in thread
From: Ulrich Müller @ 2023-08-26  6:52 UTC (permalink / raw
  To: gentoo-commits

commit:     6b71af98697861a9ad1934195ea4ab3c2b93bba8
Author:     Ulrich Müller <ulm <AT> gentoo <DOT> org>
AuthorDate: Mon Aug 21 18:33:16 2023 +0000
Commit:     Ulrich Müller <ulm <AT> gentoo <DOT> org>
CommitDate: Sat Aug 26 06:51:05 2023 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=6b71af98

elisp-common.eclass: Document sed script in elisp-site-file-install

Even though it is a simple one-liner, some people find it difficult
to read.

Signed-off-by: Ulrich Müller <ulm <AT> gentoo.org>

 eclass/elisp-common.eclass | 10 ++++++++--
 1 file changed, 8 insertions(+), 2 deletions(-)

diff --git a/eclass/elisp-common.eclass b/eclass/elisp-common.eclass
index 1958b4a07e18..03e47d931f44 100644
--- a/eclass/elisp-common.eclass
+++ b/eclass/elisp-common.eclass
@@ -590,7 +590,13 @@ elisp-modules-install() {
 
 elisp-site-file-install() {
 	local sf="${1##*/}" my_pn="${2:-${PN}}" modules ret
-	local header=";;; ${PN} site-lisp configuration"
+	local add_header="1 {
+		# Find first non-empty line
+		:x; /^\$/ { n; bx; }
+		# Insert a header, unless we already look at one
+		/^;.*${PN}/I! s/^/;;; ${PN} site-lisp configuration\n\n/
+		1 s/^/\n/
+	}"
 
 	[[ ${sf} == [0-9][0-9]*-gentoo*.el ]] \
 		|| ewarn "elisp-site-file-install: bad name of site-init file"
@@ -599,7 +605,7 @@ elisp-site-file-install() {
 	ebegin "Installing site initialisation file for GNU Emacs"
 	[[ $1 == "${sf}" ]] || cp "$1" "${sf}"
 	modules=${EMACSMODULES//@libdir@/$(get_libdir)}
-	sed -i -e "1{:x;/^\$/{n;bx;};/^;.*${PN}/I!s:^:${header}\n\n:;1s:^:\n:;}" \
+	sed -i -e "${add_header}" \
 		-e "s:@SITELISP@:${EPREFIX}${SITELISP}/${my_pn}:g" \
 		-e "s:@SITEETC@:${EPREFIX}${SITEETC}/${my_pn}:g" \
 		-e "s:@EMACSMODULES@:${EPREFIX}${modules}/${my_pn}:g;\$q" "${sf}"


^ permalink raw reply related	[flat|nested] 6131+ messages in thread

* [gentoo-commits] repo/gentoo:master commit in: eclass/
@ 2023-08-26 15:22 Ulrich Müller
  0 siblings, 0 replies; 6131+ messages in thread
From: Ulrich Müller @ 2023-08-26 15:22 UTC (permalink / raw
  To: gentoo-commits

commit:     0da55ff6f4be98d9f9443c987fb7ee641f3ddeb2
Author:     Ulrich Müller <ulm <AT> gentoo <DOT> org>
AuthorDate: Sat Aug 26 15:20:29 2023 +0000
Commit:     Ulrich Müller <ulm <AT> gentoo <DOT> org>
CommitDate: Sat Aug 26 15:22:11 2023 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=0da55ff6

elisp-common.eclass: Fix typo in comment

Signed-off-by: Ulrich Müller <ulm <AT> gentoo.org>

 eclass/elisp-common.eclass | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/eclass/elisp-common.eclass b/eclass/elisp-common.eclass
index a40c9f63007d..72dbb97f33e5 100644
--- a/eclass/elisp-common.eclass
+++ b/eclass/elisp-common.eclass
@@ -501,7 +501,7 @@ elisp-test-ert() {
 # some project that optionally enables GNU Emacs support.  This will
 # correctly set up the test and Emacs dependencies.
 #
-# Notice that the fist option passed to the "test-runner" is the
+# Notice that the first option passed to the "test-runner" is the
 # directory and the rest are miscellaneous options applicable to that
 # given runner.
 #


^ permalink raw reply related	[flat|nested] 6131+ messages in thread

* [gentoo-commits] repo/gentoo:master commit in: eclass/
@ 2023-08-27 18:04 Andrew Ammerlaan
  0 siblings, 0 replies; 6131+ messages in thread
From: Andrew Ammerlaan @ 2023-08-27 18:04 UTC (permalink / raw
  To: gentoo-commits

commit:     5b526a23565920557fcfaae55ed79c4392e712c0
Author:     Andrew Ammerlaan <andrewammerlaan <AT> gentoo <DOT> org>
AuthorDate: Sat Aug 26 18:03:16 2023 +0000
Commit:     Andrew Ammerlaan <andrewammerlaan <AT> gentoo <DOT> org>
CommitDate: Sun Aug 27 18:04:31 2023 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=5b526a23

kernel-install.eclass: enforce signed modules in test with USE=modules-sign

This only has effect when building the gpkg for gentoo-kernel-bin which
overrides CONFIG_MODULE_SIG_FORCE. To ensure that the module signing
was successful we instruct the kernel to reject modules with an invalid
signature.

This has no effect on other kernel packages which already have
CONFIG_MODULE_SIG_FORCE=y.

Signed-off-by: Andrew Ammerlaan <andrewammerlaan <AT> gentoo.org>
Closes: https://github.com/gentoo/gentoo/pull/32463
Signed-off-by: Andrew Ammerlaan <andrewammerlaan <AT> gentoo.org>

 eclass/kernel-install.eclass | 4 ++++
 1 file changed, 4 insertions(+)

diff --git a/eclass/kernel-install.eclass b/eclass/kernel-install.eclass
index 62fbb1dab049..c1b9798a9ff9 100644
--- a/eclass/kernel-install.eclass
+++ b/eclass/kernel-install.eclass
@@ -301,6 +301,10 @@ kernel-install_test() {
 			;;
 	esac
 
+	if [[ ${KERNEL_IUSE_MODULES_SIGN} ]]; then
+		use modules-sign && qemu_extra_append+=" module.sig_enforce=1"
+	fi
+
 	cat > run.sh <<-EOF || die
 		#!/bin/sh
 		exec qemu-system-${qemu_arch} \


^ permalink raw reply related	[flat|nested] 6131+ messages in thread

* [gentoo-commits] repo/gentoo:master commit in: eclass/
@ 2023-08-27 19:36 Andrew Ammerlaan
  0 siblings, 0 replies; 6131+ messages in thread
From: Andrew Ammerlaan @ 2023-08-27 19:36 UTC (permalink / raw
  To: gentoo-commits

commit:     a740d65d10a325c3a5977036eb9f410e452db925
Author:     Andrew Ammerlaan <andrewammerlaan <AT> gentoo <DOT> org>
AuthorDate: Sat Aug 26 19:26:46 2023 +0000
Commit:     Andrew Ammerlaan <andrewammerlaan <AT> gentoo <DOT> org>
CommitDate: Sun Aug 27 19:36:06 2023 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=a740d65d

kernel-build.eclass: sign the kernel image earlier in src_install

By signing it in src_install instead of pkg_postinst the signed version is
included in any generated binpkg. This is useful for enabling secureboot
on machines that do not have the secureboot private key available.

This change makes it possible to distribute a signed kernel image in
sys-kernel/gentoo-kernel-bin.

Note, UKIs are always generated locally, so if UKIs are used these will still
have to be signed in pkg_postinst and therefore the private key is still
required on all systems with USE=secureboot and uefi=yes in dracut.conf.

Signed-off-by: Andrew Ammerlaan <andrewammerlaan <AT> gentoo.org>

 eclass/kernel-build.eclass | 5 +++++
 1 file changed, 5 insertions(+)

diff --git a/eclass/kernel-build.eclass b/eclass/kernel-build.eclass
index 5b324e036c5f..ca105ee1f133 100644
--- a/eclass/kernel-build.eclass
+++ b/eclass/kernel-build.eclass
@@ -33,6 +33,7 @@ if [[ ${KERNEL_IUSE_MODULES_SIGN} ]]; then
 	# If we have enabled module signing IUSE
 	# then we can also enable secureboot IUSE
 	KERNEL_IUSE_SECUREBOOT=1
+	inherit secureboot
 fi
 
 inherit multiprocessing python-any-r1 savedconfig toolchain-funcs kernel-install
@@ -348,6 +349,10 @@ kernel-build_src_install() {
 	dosym "../../../${kernel_dir}" "/lib/modules/${module_ver}/build"
 	dosym "../../../${kernel_dir}" "/lib/modules/${module_ver}/source"
 
+	if [[ ${KERNEL_IUSE_SECUREBOOT} ]]; then
+		secureboot_sign_efi_file "${ED}${kernel_dir}/${image_path}"
+	fi
+
 	# unset to at least be out of the environment file in, e.g. shared binpkgs
 	unset KBUILD_SIGN_PIN
 


^ permalink raw reply related	[flat|nested] 6131+ messages in thread

* [gentoo-commits] repo/gentoo:master commit in: eclass/
@ 2023-08-27 19:36 Andrew Ammerlaan
  0 siblings, 0 replies; 6131+ messages in thread
From: Andrew Ammerlaan @ 2023-08-27 19:36 UTC (permalink / raw
  To: gentoo-commits

commit:     bc63496c267e26bb88db956fa818f4ec3775fac6
Author:     Andrew Ammerlaan <andrewammerlaan <AT> gentoo <DOT> org>
AuthorDate: Sun Aug 27 16:24:08 2023 +0000
Commit:     Andrew Ammerlaan <andrewammerlaan <AT> gentoo <DOT> org>
CommitDate: Sun Aug 27 19:36:05 2023 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=bc63496c

secureboot.eclass: secureboot_sign_efi_file allow call with 1 arg

Use the input file as the output file if it is not specified.

Signed-off-by: Andrew Ammerlaan <andrewammerlaan <AT> gentoo.org>

sb-fix

Signed-off-by: Andrew Ammerlaan <andrewammerlaan <AT> gentoo.org>

 eclass/secureboot.eclass | 8 +++++---
 1 file changed, 5 insertions(+), 3 deletions(-)

diff --git a/eclass/secureboot.eclass b/eclass/secureboot.eclass
index 383fe7cc3afa..a9ba514cb7a0 100644
--- a/eclass/secureboot.eclass
+++ b/eclass/secureboot.eclass
@@ -98,16 +98,18 @@ secureboot_pkg_setup() {
 }
 
 # @FUNCTION: secureboot_sign_efi_file
-# @USAGE: <input file> <output file>
+# @USAGE: <input file> [<output file>]
 # @DESCRIPTION:
 # Sign a file using sbsign and the requested key/certificate.
-# If the file is already signed with our key then skip.
+# If the file is already signed with our key then the file is skipped.
+# If no output file is specified the output file will be the same
+# as the input file, i.e. the file will be overwritten.
 secureboot_sign_efi_file() {
 	debug-print-function ${FUNCNAME[0]} "${@}"
 	use secureboot || return
 
 	local input_file=${1}
-	local output_file=${2}
+	local output_file=${2:-${1}}
 
 	_secureboot_die_if_unset
 


^ permalink raw reply related	[flat|nested] 6131+ messages in thread

* [gentoo-commits] repo/gentoo:master commit in: eclass/
@ 2023-08-27 19:36 Andrew Ammerlaan
  0 siblings, 0 replies; 6131+ messages in thread
From: Andrew Ammerlaan @ 2023-08-27 19:36 UTC (permalink / raw
  To: gentoo-commits

commit:     64eda769f895dc374fdc5e51d0c7cc4d3ffbe1dd
Author:     Andrew Ammerlaan <andrewammerlaan <AT> gentoo <DOT> org>
AuthorDate: Sat Aug 26 19:32:07 2023 +0000
Commit:     Andrew Ammerlaan <andrewammerlaan <AT> gentoo <DOT> org>
CommitDate: Sun Aug 27 19:36:07 2023 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=64eda769

dist-kernel-utils.eclass: only sign image if it is a UKI

If we are not using UKIs we don't have to do anything since the kernel image
was already signed in kernel-build.eclass.

Signed-off-by: Andrew Ammerlaan <andrewammerlaan <AT> gentoo.org>
Closes: https://github.com/gentoo/gentoo/pull/32464
Signed-off-by: Andrew Ammerlaan <andrewammerlaan <AT> gentoo.org>

 eclass/dist-kernel-utils.eclass | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/eclass/dist-kernel-utils.eclass b/eclass/dist-kernel-utils.eclass
index 6903183b6efb..b2e9df6746e3 100644
--- a/eclass/dist-kernel-utils.eclass
+++ b/eclass/dist-kernel-utils.eclass
@@ -131,11 +131,11 @@ dist-kernel_install_kernel() {
 		done
 		shopt -u nullglob
 		export KERNEL_INSTALL_PLUGINS="${KERNEL_INSTALL_PLUGINS} ${plugins[@]}"
-	fi
 
-	if [[ ${KERNEL_IUSE_SECUREBOOT} ]]; then
-		# Kernel-install requires uki's are named uki.efi, sign in-place
-		secureboot_sign_efi_file "${image}" "${image}"
+		if [[ ${KERNEL_IUSE_SECUREBOOT} ]]; then
+			# Ensure the uki is signed if dracut hasn't already done so.
+			secureboot_sign_efi_file "${image}"
+		fi
 	fi
 
 	ebegin "Installing the kernel via installkernel"


^ permalink raw reply related	[flat|nested] 6131+ messages in thread

* [gentoo-commits] repo/gentoo:master commit in: eclass/
@ 2023-08-27 20:26 Sam James
  0 siblings, 0 replies; 6131+ messages in thread
From: Sam James @ 2023-08-27 20:26 UTC (permalink / raw
  To: gentoo-commits

commit:     21c41570673c156af3780b11cfbdf8cf42b3974d
Author:     Sam James <sam <AT> gentoo <DOT> org>
AuthorDate: Sat Aug 26 17:52:19 2023 +0000
Commit:     Sam James <sam <AT> gentoo <DOT> org>
CommitDate: Sun Aug 27 20:26:13 2023 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=21c41570

tree-sitter-grammar.eclass: force use of local parser.h

There shouldn't be a system-wide copy of parser.h and upstream plan on
dropping this from dev-libs/tree-sitter as it can cause issues if there's
a mismatch between the version used for the bundled generated parser
vs the header used to build the library.

Force use of the correct one in the dist tarball at src/tree_sitter/parser.h
instead. Drop the dependency on dev-libs/tree-sitter given we were only depending
on it for this header.

Bug: https://github.com/tree-sitter/tree-sitter-bash/issues/199
Bug: https://bugs.gentoo.org/912716
Signed-off-by: Sam James <sam <AT> gentoo.org>

 eclass/tree-sitter-grammar.eclass | 9 ++++-----
 1 file changed, 4 insertions(+), 5 deletions(-)

diff --git a/eclass/tree-sitter-grammar.eclass b/eclass/tree-sitter-grammar.eclass
index e74d18653b8a..b2563220cfc2 100644
--- a/eclass/tree-sitter-grammar.eclass
+++ b/eclass/tree-sitter-grammar.eclass
@@ -24,9 +24,6 @@ SRC_URI="https://github.com/tree-sitter/${PN}/archive/${TS_PV:-v${PV}}.tar.gz
 	-> ${P}.tar.gz"
 S="${WORKDIR}"/${PN}-${TS_PV:-${PV}}/src
 
-# Needed for tree_sitter/parser.h
-DEPEND="dev-libs/tree-sitter"
-
 BDEPEND+=" test? ( dev-util/tree-sitter-cli )"
 IUSE+=" test"
 RESTRICT+=" !test? ( test )"
@@ -61,8 +58,10 @@ tree-sitter-grammar_src_compile() {
 	# or scanner.cc.
 
 	tc-export CC CXX
-	export CFLAGS="${CFLAGS} -fPIC"
-	export CXXFLAGS="${CXXFLAGS} -fPIC"
+	# We want to use the bundled parser.h, not anything lurking on the system, hence -I
+	# See https://github.com/tree-sitter/tree-sitter-bash/issues/199#issuecomment-1694416505
+	export CFLAGS="${CFLAGS} -fPIC -I. -Itree_sitter"
+	export CXXFLAGS="${CXXFLAGS} -fPIC -I. -Itree_sitter"
 
 	local objects=( parser.o )
 	if [[ -f "${S}"/scanner.c || -f "${S}"/scanner.cc ]]; then


^ permalink raw reply related	[flat|nested] 6131+ messages in thread

* [gentoo-commits] repo/gentoo:master commit in: eclass/
@ 2023-08-28  6:54 WANG Xuerui
  0 siblings, 0 replies; 6131+ messages in thread
From: WANG Xuerui @ 2023-08-28  6:54 UTC (permalink / raw
  To: gentoo-commits

commit:     f66c64d25bc04fc2ef3bd3cba6a8fbc48f42be9f
Author:     WANG Xuerui <xen0n <AT> gentoo <DOT> org>
AuthorDate: Sat Aug 26 07:31:50 2023 +0000
Commit:     WANG Xuerui <xen0n <AT> gentoo <DOT> org>
CommitDate: Mon Aug 28 06:51:52 2023 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=f66c64d2

rust-toolchain.eclass: exclude mips from SRC_URI for versions >= 1.72.0

Upstream dropped the mips*-linux-gnu* targets to Tier 3, so until the
situation is resolved there will not be prebuilt binaries from upstream.

Signed-off-by: WANG Xuerui <xen0n <AT> gentoo.org>

 eclass/rust-toolchain.eclass | 28 +++++++++++++++++-----------
 1 file changed, 17 insertions(+), 11 deletions(-)

diff --git a/eclass/rust-toolchain.eclass b/eclass/rust-toolchain.eclass
index f4451f743596..5824a48734f9 100644
--- a/eclass/rust-toolchain.eclass
+++ b/eclass/rust-toolchain.eclass
@@ -122,16 +122,6 @@ rust_all_arch_uris()
 		elibc_glibc? ( $(rust_arch_uri aarch64-unknown-linux-gnu  "$@") )
 		elibc_musl?  ( $(rust_arch_uri aarch64-unknown-linux-musl "$@") )
 	)
-	mips? (
-		abi_mips_o32? (
-			big-endian?  ( $(rust_arch_uri mips-unknown-linux-gnu   "$@") )
-			!big-endian? ( $(rust_arch_uri mipsel-unknown-linux-gnu "$@") )
-		)
-		abi_mips_n64? (
-			big-endian?  ( $(rust_arch_uri mips64-unknown-linux-gnuabi64   "$@") )
-			!big-endian? ( $(rust_arch_uri mips64el-unknown-linux-gnuabi64 "$@") )
-		)
-	)
 	ppc? ( $(rust_arch_uri powerpc-unknown-linux-gnu "$@") )
 	ppc64? (
 		big-endian?  ( $(rust_arch_uri powerpc64-unknown-linux-gnu   "$@") )
@@ -145,7 +135,23 @@ rust_all_arch_uris()
 	# NOTE: Merge this into the block above after every <1.71.0 version is
 	# gone from tree.
 	local arg_version="${1##*-}"
-	if ver_test "${arg_version:-$PV}" -ge 1.71.0; then
+	arg_version="${arg_version:-$PV}"
+	if ver_test "${arg_version}" -ge 1.71.0; then
 		echo "loong? ( $(rust_arch_uri loongarch64-unknown-linux-gnu "$@") )"
 	fi
+
+	# until https://github.com/rust-lang/rust/pull/113274 is resolved, there
+	# will not be upstream-built mips artifacts
+	if ver_test "${arg_version}" -lt 1.72.0; then
+		echo "mips? (
+			abi_mips_o32? (
+				big-endian?  ( $(rust_arch_uri mips-unknown-linux-gnu   "$@") )
+				!big-endian? ( $(rust_arch_uri mipsel-unknown-linux-gnu "$@") )
+			)
+			abi_mips_n64? (
+				big-endian?  ( $(rust_arch_uri mips64-unknown-linux-gnuabi64   "$@") )
+				!big-endian? ( $(rust_arch_uri mips64el-unknown-linux-gnuabi64 "$@") )
+			)
+		)"
+	fi
 }


^ permalink raw reply related	[flat|nested] 6131+ messages in thread

* [gentoo-commits] repo/gentoo:master commit in: eclass/
@ 2023-08-29  2:11 Sam James
  0 siblings, 0 replies; 6131+ messages in thread
From: Sam James @ 2023-08-29  2:11 UTC (permalink / raw
  To: gentoo-commits

commit:     c5f2fe5daab92a94070cfc41acb543941818c96b
Author:     Alfred Persson Forsberg <cat <AT> catcream <DOT> org>
AuthorDate: Mon Aug 28 22:04:49 2023 +0000
Commit:     Sam James <sam <AT> gentoo <DOT> org>
CommitDate: Tue Aug 29 02:09:00 2023 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=c5f2fe5d

kernel-2.eclass: move ppc64 hack before crossdev inherit

Closes: https://bugs.gentoo.org/913127
Signed-off-by: Alfred Persson Forsberg <cat <AT> catcream.org>
Closes: https://github.com/gentoo/gentoo/pull/32501
Signed-off-by: Sam James <sam <AT> gentoo.org>

 eclass/kernel-2.eclass | 12 +++++++-----
 1 file changed, 7 insertions(+), 5 deletions(-)

diff --git a/eclass/kernel-2.eclass b/eclass/kernel-2.eclass
index dc9ed25e8b60..7b77b64de90f 100644
--- a/eclass/kernel-2.eclass
+++ b/eclass/kernel-2.eclass
@@ -281,6 +281,13 @@
 # If you do change them, there is a chance that we will not fix resulting bugs;
 # that of course does not mean we're not willing to help.
 
+# Added by Daniel Ostrow <dostrow@gentoo.org>
+# This is an ugly hack to get around an issue with a 32-bit userland on ppc64.
+# I will remove it when I come up with something more reasonable.
+# Alfred Persson Forsberg <cat@catcream.org>
+# Moved this above inherit as crossdev.eclass uses CHOST internally.
+[[ ${PROFILE_ARCH} == ppc64 ]] && CHOST="powerpc64-${CHOST#*-}"
+
 inherit crossdev estack multiprocessing toolchain-funcs
 
 case ${EAPI} in
@@ -288,11 +295,6 @@ case ${EAPI} in
 	*) die "${ECLASS}: EAPI ${EAPI:-0} not supported" ;;
 esac
 
-# Added by Daniel Ostrow <dostrow@gentoo.org>
-# This is an ugly hack to get around an issue with a 32-bit userland on ppc64.
-# I will remove it when I come up with something more reasonable.
-[[ ${PROFILE_ARCH} == ppc64 ]] && CHOST="powerpc64-${CHOST#*-}"
-
 HOMEPAGE="https://www.kernel.org/ https://wiki.gentoo.org/wiki/Kernel ${HOMEPAGE}"
 : "${LICENSE:="GPL-2"}"
 


^ permalink raw reply related	[flat|nested] 6131+ messages in thread

* [gentoo-commits] repo/gentoo:master commit in: eclass/
@ 2023-08-29 11:20 Michał Górny
  0 siblings, 0 replies; 6131+ messages in thread
From: Michał Górny @ 2023-08-29 11:20 UTC (permalink / raw
  To: gentoo-commits

commit:     9eb9c38441aacd1b214fc8988ca79052419c4abc
Author:     Michał Górny <mgorny <AT> gentoo <DOT> org>
AuthorDate: Tue Aug 29 05:48:46 2023 +0000
Commit:     Michał Górny <mgorny <AT> gentoo <DOT> org>
CommitDate: Tue Aug 29 11:20:07 2023 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=9eb9c384

llvm.org.eclass: Remove old snapshot support

Signed-off-by: Michał Górny <mgorny <AT> gentoo.org>

 eclass/llvm.org.eclass | 9 ---------
 1 file changed, 9 deletions(-)

diff --git a/eclass/llvm.org.eclass b/eclass/llvm.org.eclass
index b620557c7a61..d240330adb46 100644
--- a/eclass/llvm.org.eclass
+++ b/eclass/llvm.org.eclass
@@ -75,15 +75,6 @@ if [[ -z ${_LLVM_SOURCE_TYPE+1} ]]; then
 				18.0.0_pre20230825)
 					EGIT_COMMIT=e3373c6c83d3855adb78f1952a3bf0398baf359e
 					;;
-				18.0.0_pre20230820)
-					EGIT_COMMIT=fe42682e7818d44cbe19f98ef34caa4e414aa937
-					;;
-				18.0.0_pre20230810)
-					EGIT_COMMIT=7d259b36d2e8148d13087844e6494ad3a5c63edf
-					;;
-				18.0.0_pre20230803)
-					EGIT_COMMIT=c4bb3e073548cf436d5fa0406e3ae75e94684dec
-					;;
 				*)
 					die "Unknown snapshot: ${PV}"
 					;;


^ permalink raw reply related	[flat|nested] 6131+ messages in thread

* [gentoo-commits] repo/gentoo:master commit in: eclass/
@ 2023-08-29 11:20 Michał Górny
  0 siblings, 0 replies; 6131+ messages in thread
From: Michał Górny @ 2023-08-29 11:20 UTC (permalink / raw
  To: gentoo-commits

commit:     50de03a2ca52ab72bb39e3c09cf46407044df9d7
Author:     Michał Górny <mgorny <AT> gentoo <DOT> org>
AuthorDate: Tue Aug 29 10:49:18 2023 +0000
Commit:     Michał Górny <mgorny <AT> gentoo <DOT> org>
CommitDate: Tue Aug 29 11:20:10 2023 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=50de03a2

llvm.org.eclass: Add 18.0.0_pre20230829 snapshot

Signed-off-by: Michał Górny <mgorny <AT> gentoo.org>

 eclass/llvm.org.eclass | 3 +++
 1 file changed, 3 insertions(+)

diff --git a/eclass/llvm.org.eclass b/eclass/llvm.org.eclass
index d240330adb46..7d4765b31ac8 100644
--- a/eclass/llvm.org.eclass
+++ b/eclass/llvm.org.eclass
@@ -72,6 +72,9 @@ if [[ -z ${_LLVM_SOURCE_TYPE+1} ]]; then
 			_LLVM_SOURCE_TYPE=snapshot
 
 			case ${PV} in
+				18.0.0_pre20230829)
+					EGIT_COMMIT=f6259d9b9a546dbfa5bc2f29313c6edd6c701177
+					;;
 				18.0.0_pre20230825)
 					EGIT_COMMIT=e3373c6c83d3855adb78f1952a3bf0398baf359e
 					;;


^ permalink raw reply related	[flat|nested] 6131+ messages in thread

* [gentoo-commits] repo/gentoo:master commit in: eclass/
@ 2023-08-29 15:44 Ulrich Müller
  0 siblings, 0 replies; 6131+ messages in thread
From: Ulrich Müller @ 2023-08-29 15:44 UTC (permalink / raw
  To: gentoo-commits

commit:     39c5ef0fe227a4781d1b2ea79ac6f336ec64f879
Author:     Ulrich Müller <ulm <AT> gentoo <DOT> org>
AuthorDate: Sat Aug 26 08:58:44 2023 +0000
Commit:     Ulrich Müller <ulm <AT> gentoo <DOT> org>
CommitDate: Tue Aug 29 15:42:43 2023 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=39c5ef0f

eutils.eclass: Drop EAPI 7

Remove placeholders for emktemp, path_exists and use_if_iuse, which are
all non-functional since more than one year.

Signed-off-by: Ulrich Müller <ulm <AT> gentoo.org>

 eclass/eutils.eclass | 26 ++------------------------
 1 file changed, 2 insertions(+), 24 deletions(-)

diff --git a/eclass/eutils.eclass b/eclass/eutils.eclass
index 3b6a90fecb81..b48c18f97904 100644
--- a/eclass/eutils.eclass
+++ b/eclass/eutils.eclass
@@ -1,10 +1,10 @@
-# Copyright 1999-2022 Gentoo Authors
+# Copyright 1999-2023 Gentoo Authors
 # Distributed under the terms of the GNU General Public License v2
 
 # @ECLASS: eutils.eclass
 # @MAINTAINER:
 # base-system@gentoo.org
-# @SUPPORTED_EAPIS: 6 7
+# @SUPPORTED_EAPIS: 6
 # @BLURB: many extra (but common) functions that are used in ebuilds
 # @DEPRECATED: native package manager functions, more specific eclasses
 
@@ -15,28 +15,6 @@ _EUTILS_ECLASS=1
 case ${EAPI} in
 	6) inherit desktop edos2unix epatch eqawarn estack ltprune multilib \
 			preserve-libs strip-linguas toolchain-funcs vcs-clean wrapper ;;
-	7) inherit edos2unix strip-linguas wrapper ;;
 	*) die "${ECLASS}: EAPI ${EAPI:-0} not supported" ;;
 esac
-
-emktemp() {
-	eerror "emktemp has been removed."
-	eerror "Create a temporary file in \${T} instead."
-	die "emktemp is banned"
-}
-
-path_exists() {
-	eerror "path_exists has been removed.  Please see the following post"
-	eerror "for a replacement snippet:"
-	eerror "https://blogs.gentoo.org/mgorny/2018/08/09/inlining-path_exists/"
-	die "path_exists is banned"
-}
-
-use_if_iuse() {
-	eerror "use_if_iuse has been removed."
-	eerror "Define it as a local function, or inline it:"
-	eerror "    in_iuse foo && use foo"
-	die "use_if_iuse is banned"
-}
-
 fi


^ permalink raw reply related	[flat|nested] 6131+ messages in thread

* [gentoo-commits] repo/gentoo:master commit in: eclass/
@ 2023-09-02 17:34 Michał Górny
  0 siblings, 0 replies; 6131+ messages in thread
From: Michał Górny @ 2023-09-02 17:34 UTC (permalink / raw
  To: gentoo-commits

commit:     e2b8c79419c258224a91807e30d57b075703f115
Author:     Andrew Ammerlaan <andrewammerlaan <AT> gentoo <DOT> org>
AuthorDate: Wed Aug 30 16:38:43 2023 +0000
Commit:     Michał Górny <mgorny <AT> gentoo <DOT> org>
CommitDate: Sat Sep  2 17:34:34 2023 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=e2b8c794

kernel-build.eclass: fix kernel image signing on arm64 and riscv

Arm64/riscv have no compressed kernel support. With CONFIG_EFI_ZBOOT enabled
the build system will build a bootable image with its own compressor that we
can then sign. With CONFIG_EFI_ZBOOT disabled we end up with a compressed
kernel image that must be uncompressed before signing and requires the
bootloader to uncompress it before it can boot.

Signed-off-by: Andrew Ammerlaan <andrewammerlaan <AT> gentoo.org>
Signed-off-by: Michał Górny <mgorny <AT> gentoo.org>

 eclass/kernel-build.eclass | 14 ++++++++++++++
 1 file changed, 14 insertions(+)

diff --git a/eclass/kernel-build.eclass b/eclass/kernel-build.eclass
index ca105ee1f133..0c40e8033fe2 100644
--- a/eclass/kernel-build.eclass
+++ b/eclass/kernel-build.eclass
@@ -436,6 +436,20 @@ kernel-build_merge_configs() {
 		fi
 	fi
 
+	if [[ ${KERNEL_IUSE_SECUREBOOT} ]]; then
+		if use secureboot; then
+			# This only effects arm64 and riscv where the bootable image may
+			# contain its own decompressor (zboot). If enabled we get a
+			# sign-able efi file.
+			cat <<-EOF > "${WORKDIR}/secureboot.config" || die
+				## Enable zboot for signing
+				CONFIG_EFI_ZBOOT=y
+			EOF
+
+			merge_configs+=( "${WORKDIR}/secureboot.config" )
+		fi
+	fi
+
 	if [[ ${#user_configs[@]} -gt 0 ]]; then
 		elog "User config files are being applied:"
 		local x


^ permalink raw reply related	[flat|nested] 6131+ messages in thread

* [gentoo-commits] repo/gentoo:master commit in: eclass/
@ 2023-09-02 17:34 Michał Górny
  0 siblings, 0 replies; 6131+ messages in thread
From: Michał Górny @ 2023-09-02 17:34 UTC (permalink / raw
  To: gentoo-commits

commit:     661829cb3563d6fde27ac540fc1b42d64ef02541
Author:     Andrew Ammerlaan <andrewammerlaan <AT> gentoo <DOT> org>
AuthorDate: Thu Aug 31 09:03:03 2023 +0000
Commit:     Michał Górny <mgorny <AT> gentoo <DOT> org>
CommitDate: Sat Sep  2 17:34:35 2023 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=661829cb

dist-kernel-utils.eclass: support CONFIG_EFI_ZBOOT with USE=secureboot

This config options changes the name of the final image

Closes: https://bugs.gentoo.org/897684
Signed-off-by: Andrew Ammerlaan <andrewammerlaan <AT> gentoo.org>
Closes: https://github.com/gentoo/gentoo/pull/32532
Signed-off-by: Michał Górny <mgorny <AT> gentoo.org>

 eclass/dist-kernel-utils.eclass | 11 ++++++-----
 1 file changed, 6 insertions(+), 5 deletions(-)

diff --git a/eclass/dist-kernel-utils.eclass b/eclass/dist-kernel-utils.eclass
index b2e9df6746e3..1a55424a97ef 100644
--- a/eclass/dist-kernel-utils.eclass
+++ b/eclass/dist-kernel-utils.eclass
@@ -71,8 +71,12 @@ dist-kernel_get_image_path() {
 		amd64|x86)
 			echo arch/x86/boot/bzImage
 			;;
-		arm64)
-			echo arch/arm64/boot/Image.gz
+		arm64|riscv)
+			if [[ ${KERNEL_IUSE_SECUREBOOT} ]] && use secureboot; then
+				echo arch/${ARCH}/boot/vmlinuz.efi
+			else
+				echo arch/${ARCH}/boot/Image.gz
+			fi
 			;;
 		arm)
 			echo arch/arm/boot/zImage
@@ -83,9 +87,6 @@ dist-kernel_get_image_path() {
 			# substitutions in the code
 			echo ./vmlinux
 			;;
-		riscv)
-			echo arch/riscv/boot/Image.gz
-			;;
 		*)
 			die "${FUNCNAME}: unsupported ARCH=${ARCH}"
 			;;


^ permalink raw reply related	[flat|nested] 6131+ messages in thread

* [gentoo-commits] repo/gentoo:master commit in: eclass/
@ 2023-09-04 13:14 Michał Górny
  0 siblings, 0 replies; 6131+ messages in thread
From: Michał Górny @ 2023-09-04 13:14 UTC (permalink / raw
  To: gentoo-commits

commit:     f51bb35a3d1ea823b04d92c0c4492a38225eb75d
Author:     Andrew Ammerlaan <andrewammerlaan <AT> gentoo <DOT> org>
AuthorDate: Sun Sep  3 18:19:37 2023 +0000
Commit:     Michał Górny <mgorny <AT> gentoo <DOT> org>
CommitDate: Mon Sep  4 13:14:16 2023 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=f51bb35a

kernel-build.eclass: set KERNEL_EFI_ZBOOT if enabled in .config

With this changes we now also support enabling CONFIG_EFI_ZBOOT
in user /etc/kernel/config.d settings.

Closes: https://bugs.gentoo.org/897684
Signed-off-by: Andrew Ammerlaan <andrewammerlaan <AT> gentoo.org>
Signed-off-by: Michał Górny <mgorny <AT> gentoo.org>

 eclass/kernel-build.eclass | 6 ++++++
 1 file changed, 6 insertions(+)

diff --git a/eclass/kernel-build.eclass b/eclass/kernel-build.eclass
index 0c40e8033fe2..0618d495f343 100644
--- a/eclass/kernel-build.eclass
+++ b/eclass/kernel-build.eclass
@@ -461,6 +461,12 @@ kernel-build_merge_configs() {
 
 	./scripts/kconfig/merge_config.sh -m -r \
 		.config "${merge_configs[@]}"  || die
+
+	# If this is set by USE=secureboot or user config this will have an effect
+	# on the name of the output image. Set this variable to track this setting.
+	if grep -q "CONFIG_EFI_ZBOOT=y" .config; then
+		KERNEL_EFI_ZBOOT=1
+	fi
 }
 
 fi


^ permalink raw reply related	[flat|nested] 6131+ messages in thread

* [gentoo-commits] repo/gentoo:master commit in: eclass/
@ 2023-09-04 13:14 Michał Górny
  0 siblings, 0 replies; 6131+ messages in thread
From: Michał Górny @ 2023-09-04 13:14 UTC (permalink / raw
  To: gentoo-commits

commit:     d9d7c8c96d867b6f8ea49e849160e8836d385814
Author:     Andrew Ammerlaan <andrewammerlaan <AT> gentoo <DOT> org>
AuthorDate: Sun Sep  3 18:18:27 2023 +0000
Commit:     Michał Górny <mgorny <AT> gentoo <DOT> org>
CommitDate: Mon Sep  4 13:14:15 2023 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=d9d7c8c9

dist-kernel-utils.eclass: introduce KERNEL_EFI_ZBOOT

This new variable will track if CONFIG_EFI_ZBOOT is enabled or not

Closes: https://bugs.gentoo.org/897684
Signed-off-by: Andrew Ammerlaan <andrewammerlaan <AT> gentoo.org>
Signed-off-by: Michał Górny <mgorny <AT> gentoo.org>

 eclass/dist-kernel-utils.eclass | 9 ++++++++-
 1 file changed, 8 insertions(+), 1 deletion(-)

diff --git a/eclass/dist-kernel-utils.eclass b/eclass/dist-kernel-utils.eclass
index 1a55424a97ef..67ae2f7b510d 100644
--- a/eclass/dist-kernel-utils.eclass
+++ b/eclass/dist-kernel-utils.eclass
@@ -19,6 +19,13 @@
 # If set to a non-null value, inherits secureboot.eclass
 # and allows signing of generated kernel images.
 
+# @ECLASS_VARIABLE: KERNEL_EFI_ZBOOT
+# @DEFAULT_UNSET
+# @DESCRIPTION:
+# If set to a non-null value, it is assumed the kernel was built with
+# CONFIG_EFI_ZBOOT enabled. This effects the name of the kernel image on
+# arm64 and riscv. Mainly useful for sys-kernel/gentoo-kernel-bin.
+
 if [[ ! ${_DIST_KERNEL_UTILS} ]]; then
 
 case ${EAPI} in
@@ -72,7 +79,7 @@ dist-kernel_get_image_path() {
 			echo arch/x86/boot/bzImage
 			;;
 		arm64|riscv)
-			if [[ ${KERNEL_IUSE_SECUREBOOT} ]] && use secureboot; then
+			if [[ ${KERNEL_EFI_ZBOOT} ]]; then
 				echo arch/${ARCH}/boot/vmlinuz.efi
 			else
 				echo arch/${ARCH}/boot/Image.gz


^ permalink raw reply related	[flat|nested] 6131+ messages in thread

* [gentoo-commits] repo/gentoo:master commit in: eclass/
@ 2023-09-05 13:05 Ionen Wolkens
  0 siblings, 0 replies; 6131+ messages in thread
From: Ionen Wolkens @ 2023-09-05 13:05 UTC (permalink / raw
  To: gentoo-commits

commit:     cf33741bdf6abad9af948cffcbb7e185ce737180
Author:     Ionen Wolkens <ionen <AT> gentoo <DOT> org>
AuthorDate: Sat Sep  2 06:02:07 2023 +0000
Commit:     Ionen Wolkens <ionen <AT> gentoo <DOT> org>
CommitDate: Tue Sep  5 13:01:11 2023 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=cf33741b

qt6-build.eclass: move filter-lto to src_prepare

While it feels more right in configure (along with match_cpu_flags),
sometime need to check/use compiler flags in src_configure and it is
troublesome if not modified until call the eclass' src_configure.

Signed-off-by: Ionen Wolkens <ionen <AT> gentoo.org>

 eclass/qt6-build.eclass | 22 +++++++++++-----------
 1 file changed, 11 insertions(+), 11 deletions(-)

diff --git a/eclass/qt6-build.eclass b/eclass/qt6-build.eclass
index 8db83524d5e3..187427dd04da 100644
--- a/eclass/qt6-build.eclass
+++ b/eclass/qt6-build.eclass
@@ -109,6 +109,17 @@ qt6-build_src_prepare() {
 
 	_qt6-build_prepare_env
 	_qt6-build_match_cpu_flags
+
+	# LTO cause test failures in several components (e.g. qtcharts,
+	# multimedia, scxml, wayland, webchannel, ...).
+	#
+	# Exact extent/causes unknown, but for some related-sounding bugs:
+	# https://bugreports.qt.io/browse/QTBUG-112332
+	# https://bugreports.qt.io/browse/QTBUG-115731
+	#
+	# Does not manifest itself with clang:16 (did with gcc-13.2.0), but
+	# still assumed to be generally unsafe either way in current state.
+	filter-lto
 }
 
 # @FUNCTION: qt6-build_src_configure
@@ -136,17 +147,6 @@ qt6-build_src_configure() {
 		-DQT_USE_DEFAULT_CMAKE_OPTIMIZATION_FLAGS=ON
 	)
 
-	# LTO cause test failures in several components (e.g. qtcharts,
-	# multimedia, scxml, wayland, webchannel, ...).
-	#
-	# Exact extent/causes unknown, but for some related-sounding bugs:
-	# https://bugreports.qt.io/browse/QTBUG-112332
-	# https://bugreports.qt.io/browse/QTBUG-115731
-	#
-	# Does not manifest itself with clang:16 (did with gcc-13.2.0), but
-	# still assumed to be generally unsafe either way in current state.
-	filter-lto
-
 	cmake_src_configure
 }
 


^ permalink raw reply related	[flat|nested] 6131+ messages in thread

* [gentoo-commits] repo/gentoo:master commit in: eclass/
@ 2023-09-05 13:05 Ionen Wolkens
  0 siblings, 0 replies; 6131+ messages in thread
From: Ionen Wolkens @ 2023-09-05 13:05 UTC (permalink / raw
  To: gentoo-commits

commit:     47709089ee12235f32005aa2295aec843164af16
Author:     Ionen Wolkens <ionen <AT> gentoo <DOT> org>
AuthorDate: Sat Sep  2 00:04:21 2023 +0000
Commit:     Ionen Wolkens <ionen <AT> gentoo <DOT> org>
CommitDate: Tue Sep  5 13:01:11 2023 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=47709089

qt6-build.eclass: workaround mismatching cpu flags sets

qsimd_p.h tries determine if x86-64-v3 or v4 sets supported by the
compiler+flags seem complete, and errors out if not. This works out
rather badly on Gentoo, even -march=native can fail with some hard.

With qsimd_p.h being a private header this only affects dev-qt/*
packages, but fwics still need to fix all of dev-qt/* at once given
they are going to be using private bits from qtbase.

Debated a few options for this:

1. Patch headers (like old fix from bug #898644), but just not setting
   e.g. __haswell__ is not enough when __AVX2__ still confuses some
   code. Then unsetting these without going through the compiler leads
   to left over macros and more confusion. Besides... changing system
   headers behavior (why is __AVX2__ undef with -mavx2!?) only in
   distros tend to end in disaster.

2. Detect issues in qtbase ebuild, then disable x86intrin altogether
   if needed (carries over to other modules) + warn users (aka figure
   it out yourself). Not really great, users may also end up
   mismatching flags between dev-qt/ to fix this and then run into
   issues anyway.

3. Backport the next (wip/unmerged) upstream fix[1] but wait, looks
   like we are currently still playing whack-a-mole:
#  if defined(__AVX2__)
// List of features present with -march=x86-64-v3 and not architecturally
// implied by __AVX2__
#    define ARCH_HASWELL_MACROS     \
    (__AVX2__ && __BMI__ && __BMI2__ && __F16C__ \
     && __FMA__ && __LZCNT__ && __POPCNT__)
#    if ARCH_HASWELL_MACROS == 0
#      error "Please enable all x86-64-v3 extensions; <snip>
    ...so -mno-avx2 -mfma (bug #908420) is fine, older (bug #898644)
    is too, but if for any reason (VMs, buggy hardware, or the machine
    without F16C from bug #910419) anything else is disabled, then the
    issue is still there and may in fact trigger more than before.

4. Similarly to #2, detect issues but in the eclass. Then append
   -mno-* as needed to flags. Not too bad but passing -mno-*
   leads us to bug #913400.

5. Based on users flags, pick highest usable -march=x86-64-v* and
   strip everything else (or strip -march too...). Messy and think
   users wouldn't be happy about this. It would be what upstream
   likely wants us to do though, and causes no further problems.

Ultimately went with #4 for now, bug #913400 needs fixing either way.
- missing from set in #3 += -mno-avx2 (until #3, also -mno-fma)
- missing the AVX512* checked in qsimd_h += -mno-avx512*
(then let compiler disable features that depend on these)

Not great but better than doing nothing, no-op for non-affected users.

[1] https://codereview.qt-project.org/c/qt/qtbase/+/498799

Bug: https://bugs.gentoo.org/898644
Bug: https://bugs.gentoo.org/913400
Closes: https://bugs.gentoo.org/908420
Signed-off-by: Ionen Wolkens <ionen <AT> gentoo.org>

 eclass/qt6-build.eclass | 35 ++++++++++++++++++++++++++++++++++-
 1 file changed, 34 insertions(+), 1 deletion(-)

diff --git a/eclass/qt6-build.eclass b/eclass/qt6-build.eclass
index f6ed180a6979..8db83524d5e3 100644
--- a/eclass/qt6-build.eclass
+++ b/eclass/qt6-build.eclass
@@ -21,7 +21,7 @@ _QT6_BUILD_ECLASS=1
 [[ ${CATEGORY} != dev-qt ]] &&
 	die "${ECLASS} is only to be used for building Qt6"
 
-inherit cmake flag-o-matic
+inherit cmake flag-o-matic toolchain-funcs
 
 # @ECLASS_VARIABLE: QT6_MODULE
 # @PRE_INHERIT
@@ -108,6 +108,7 @@ qt6-build_src_prepare() {
 	fi
 
 	_qt6-build_prepare_env
+	_qt6-build_match_cpu_flags
 }
 
 # @FUNCTION: qt6-build_src_configure
@@ -235,6 +236,38 @@ _qt6-build_create_user_facing_links() {
 	done < "${BUILD_DIR}"/user_facing_tool_links.txt || die
 }
 
+# @FUNCTION: _qt6-build_match_cpu_flags
+# @INTERNAL
+# @DESCRIPTION:
+# Try to adjust -m* cpu CXXFLAGS so that they match a configuration
+# accepted by Qt's headers, see bug #908420.
+_qt6-build_match_cpu_flags() {
+	use amd64 || use x86 || return 0
+
+	local flags=() intrin intrins
+	while IFS=' ' read -ra intrins; do
+		[[ ${intrins[*]} == *=[^_]* && ${intrins[*]} == *=_* ]] &&
+			for intrin in "${intrins[@]}"; do
+				[[ ${intrin} == *?=[^_]* ]] && flags+=(-mno-${intrin%=*})
+			done
+	done < <(
+		# TODO: review if can drop fma= matching after QTBUG-116357
+		$(tc-getCXX) -E -P ${CXXFLAGS} ${CPPFLAGS} - <<-EOF | tail -n 2
+			#if defined(__GNUC__) && (defined(__x86_64__) || defined(__i386__))
+			#include <x86intrin.h>
+			#endif
+			avx2=__AVX2__ =__BMI__ =__BMI2__ =__F16C__ fma=__FMA__ =__LZCNT__ =__POPCNT__
+			avx512f=__AVX512F__ avx512bw=__AVX512BW__ avx512cd=__AVX512CD__ avx512dq=__AVX512DQ__ avx512vl=__AVX512VL__
+		EOF
+		assert
+	)
+
+	if (( ${#flags[@]} )); then
+		einfo "Adjusting CXXFLAGS for https://bugs.gentoo.org/908420 with: ${flags[*]}"
+		append-cxxflags "${flags[@]}"
+	fi
+}
+
 # @FUNCTION: _qt6-build_prepare_env
 # @INTERNAL
 # @DESCRIPTION:


^ permalink raw reply related	[flat|nested] 6131+ messages in thread

* [gentoo-commits] repo/gentoo:master commit in: eclass/
@ 2023-09-05 13:05 Ionen Wolkens
  0 siblings, 0 replies; 6131+ messages in thread
From: Ionen Wolkens @ 2023-09-05 13:05 UTC (permalink / raw
  To: gentoo-commits

commit:     c2d1b889127af2b11559f0ac3c41313058a4969a
Author:     Ionen Wolkens <ionen <AT> gentoo <DOT> org>
AuthorDate: Mon Sep  4 00:45:10 2023 +0000
Commit:     Ionen Wolkens <ionen <AT> gentoo <DOT> org>
CommitDate: Tue Sep  5 13:01:13 2023 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=c2d1b889

qt6-build.eclass: switch examples dir to /usr/lib*/qt6/examples

This is used to install compiled test executables (not source
examples or similar), meant to be executed from qtcreator
(not that I've tried it).

We do not install examples (yet), so no need to worry about files
or qtbase remembering a bad path.

Looking at other distros (at least those that do not set this to
a docdir like we were and there are many), putting this under
lib/*qt6/ alongside qt6/bin seems to be the typical choice.

For actual source code examples, Qt has opted to not support installing
these anymore (QTBUG-86302) so we'd have to doins -r ourselves either
way, likely like normal docs unless something expects to find these in
the Qt examples dir.

Bug: https://bugs.gentoo.org/881433
Signed-off-by: Ionen Wolkens <ionen <AT> gentoo.org>

 eclass/qt6-build.eclass | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/eclass/qt6-build.eclass b/eclass/qt6-build.eclass
index 0fa3091f8106..7978a25f8eac 100644
--- a/eclass/qt6-build.eclass
+++ b/eclass/qt6-build.eclass
@@ -283,7 +283,7 @@ _qt6-build_prepare_env() {
 
 	readonly QT6_BINDIR=${QT6_ARCHDATADIR}/bin
 	readonly QT6_DOCDIR=${QT6_PREFIX}/share/qt6-doc
-	readonly QT6_EXAMPLESDIR=${QT6_DATADIR}/examples
+	readonly QT6_EXAMPLESDIR=${QT6_ARCHDATADIR}/examples
 	readonly QT6_HEADERDIR=${QT6_PREFIX}/include/qt6
 	readonly QT6_IMPORTDIR=${QT6_ARCHDATADIR}/imports
 	readonly QT6_LIBEXECDIR=${QT6_ARCHDATADIR}/libexec


^ permalink raw reply related	[flat|nested] 6131+ messages in thread

* [gentoo-commits] repo/gentoo:master commit in: eclass/
@ 2023-09-05 13:05 Ionen Wolkens
  0 siblings, 0 replies; 6131+ messages in thread
From: Ionen Wolkens @ 2023-09-05 13:05 UTC (permalink / raw
  To: gentoo-commits

commit:     6497f4c54b22ec759ef4ec7453afe29af0c44211
Author:     Ionen Wolkens <ionen <AT> gentoo <DOT> org>
AuthorDate: Tue Sep  5 02:30:59 2023 +0000
Commit:     Ionen Wolkens <ionen <AT> gentoo <DOT> org>
CommitDate: Tue Sep  5 13:01:13 2023 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=6497f4c5

qt6-build.eclass: skip filter-lto if custom-cflags exists

Do not think this is particularly useful, but it is to avoid
false advertising when IUSE exists. As usual anyone enabling
this is on their own.

Signed-off-by: Ionen Wolkens <ionen <AT> gentoo.org>

 eclass/qt6-build.eclass | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/eclass/qt6-build.eclass b/eclass/qt6-build.eclass
index 187427dd04da..0fa3091f8106 100644
--- a/eclass/qt6-build.eclass
+++ b/eclass/qt6-build.eclass
@@ -119,7 +119,7 @@ qt6-build_src_prepare() {
 	#
 	# Does not manifest itself with clang:16 (did with gcc-13.2.0), but
 	# still assumed to be generally unsafe either way in current state.
-	filter-lto
+	in_iuse custom-cflags && use custom-cflags || filter-lto
 }
 
 # @FUNCTION: qt6-build_src_configure


^ permalink raw reply related	[flat|nested] 6131+ messages in thread

* [gentoo-commits] repo/gentoo:master commit in: eclass/
@ 2023-09-05 13:05 Ionen Wolkens
  0 siblings, 0 replies; 6131+ messages in thread
From: Ionen Wolkens @ 2023-09-05 13:05 UTC (permalink / raw
  To: gentoo-commits

commit:     ed1caa33d0a89959c8edd0a3e8495ce0ff0ad022
Author:     Ionen Wolkens <ionen <AT> gentoo <DOT> org>
AuthorDate: Mon Sep  4 02:32:39 2023 +0000
Commit:     Ionen Wolkens <ionen <AT> gentoo <DOT> org>
CommitDate: Tue Sep  5 13:01:13 2023 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=ed1caa33

qt6-build.eclass: re-arrange QT6_BUILD_TYPE, add pre-release

If add _beta and _rc odds are will not want them keyworded by
default, but == release will keyword them all the same so need
something different. If do want to keyword or match both for
one reason or another, can still do == *release.

Re-arranged to avoid repeating SRC_URI/QT6_P/S/etc... albeit it does
make it a bit less clear (then again there's not much going on there).
Also lets us merge the inherit block from below and inherit earlier
for less SRC_URI+S inherit environment pollution.

Also document QT6_BUILD_TYPE for EclassDocMissingVar.

Signed-off-by: Ionen Wolkens <ionen <AT> gentoo.org>

 eclass/qt6-build.eclass | 54 ++++++++++++++++++++++++-------------------------
 1 file changed, 26 insertions(+), 28 deletions(-)

diff --git a/eclass/qt6-build.eclass b/eclass/qt6-build.eclass
index 7978a25f8eac..11e9844346a4 100644
--- a/eclass/qt6-build.eclass
+++ b/eclass/qt6-build.eclass
@@ -30,41 +30,39 @@ inherit cmake flag-o-matic toolchain-funcs
 # Used for SRC_URI and EGIT_REPO_URI.
 : "${QT6_MODULE:=${PN}}"
 
-case ${PV} in
-	6.9999)
-		# git dev branch
-		readonly QT6_BUILD_TYPE=live
-		EGIT_BRANCH=dev
-		;;
-	6.*.9999)
-		# git stable branch
-		readonly QT6_BUILD_TYPE=live
-		EGIT_BRANCH=${PV%.9999}
-		;;
-	*_alpha*|*_beta*|*_rc*)
-		# development release
-		readonly QT6_BUILD_TYPE=release
-		QT6_P=${QT6_MODULE}-everywhere-src-${PV/_/-}
-		SRC_URI="https://download.qt.io/development_releases/qt/${PV%.*}/${PV/_/-}/submodules/${QT6_P}.tar.xz"
-		S=${WORKDIR}/${QT6_P}
-		;;
-	*)
-		# official stable release
-		readonly QT6_BUILD_TYPE=release
-		QT6_P=${QT6_MODULE}-everywhere-src-${PV}
-		SRC_URI="https://download.qt.io/official_releases/qt/${PV%.*}/${PV}/submodules/${QT6_P}.tar.xz"
-		S=${WORKDIR}/${QT6_P}
-		;;
-esac
-unset QT6_P
+# @ECLASS_VARIABLE: QT6_BUILD_TYPE
+# @DESCRIPTION:
+# Read only variable set based on PV to one of:
+#  - release: official 6.x.x releases
+#  - pre-release: development 6.x.x_rc/beta/alpha releases
+#  - live: *.9999 (dev branch), 6.x.9999 (stable branch)
 
-if [[ ${QT6_BUILD_TYPE} == live ]]; then
+if [[ ${PV} == *.9999 ]]; then
 	inherit git-r3
 	EGIT_REPO_URI=(
 		"https://code.qt.io/qt/${QT6_MODULE}.git"
 		"https://github.com/qt/${QT6_MODULE}.git"
 	)
+
+	QT6_BUILD_TYPE=live
+	EGIT_BRANCH=dev
+	[[ ${PV} == 6.*.9999 ]] && EGIT_BRANCH=${PV%.9999}
+else
+	QT6_BUILD_TYPE=release
+	_QT6_SRC=official
+
+	if [[ ${PV} == *_@(alpha|beta|rc)* ]]; then
+		QT6_BUILD_TYPE=pre-release
+		_QT6_SRC=development
+	fi
+
+	_QT6_P=${QT6_MODULE}-everywhere-src-${PV/_/-}
+	SRC_URI="https://download.qt.io/${_QT6_SRC}_releases/qt/${PV%.*}/${PV/_/-}/submodules/${_QT6_P}.tar.xz"
+	S=${WORKDIR}/${_QT6_P}
+
+	unset _QT6_P _QT6_SRC
 fi
+readonly QT6_BUILD_TYPE
 
 HOMEPAGE="https://www.qt.io/"
 LICENSE="|| ( GPL-2 GPL-3 LGPL-3 ) FDL-1.3"


^ permalink raw reply related	[flat|nested] 6131+ messages in thread

* [gentoo-commits] repo/gentoo:master commit in: eclass/
@ 2023-09-05 19:58 Michał Górny
  0 siblings, 0 replies; 6131+ messages in thread
From: Michał Górny @ 2023-09-05 19:58 UTC (permalink / raw
  To: gentoo-commits

commit:     7be943845774aa9e052e2d16241991a3abb9d8d6
Author:     Michał Górny <mgorny <AT> gentoo <DOT> org>
AuthorDate: Tue Sep  5 18:36:37 2023 +0000
Commit:     Michał Górny <mgorny <AT> gentoo <DOT> org>
CommitDate: Tue Sep  5 19:58:30 2023 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=7be94384

llvm.org.eclass: Fix handling patchset with only one component

Fix the irrelevant patch removal logic not to invoke rm(1) with no
arguments if the patchset contains only patches for the current
component.

Signed-off-by: Michał Górny <mgorny <AT> gentoo.org>

 eclass/llvm.org.eclass | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/eclass/llvm.org.eclass b/eclass/llvm.org.eclass
index 7d4765b31ac8..ba75866507e2 100644
--- a/eclass/llvm.org.eclass
+++ b/eclass/llvm.org.eclass
@@ -378,7 +378,7 @@ llvm.org_src_unpack() {
 		local IFS='|'
 		grep -E -r -L "^Gentoo-Component:.*(${components[*]})" \
 			"${WORKDIR}/llvm-gentoo-patchset-${LLVM_PATCHSET}" |
-			xargs rm
+			xargs -r rm
 		local status=( "${PIPESTATUS[@]}" )
 		[[ ${status[1]} -ne 0 ]] && die "rm failed"
 		[[ ${status[0]} -ne 0 ]] &&


^ permalink raw reply related	[flat|nested] 6131+ messages in thread

* [gentoo-commits] repo/gentoo:master commit in: eclass/
@ 2023-09-06 18:13 Michał Górny
  0 siblings, 0 replies; 6131+ messages in thread
From: Michał Górny @ 2023-09-06 18:13 UTC (permalink / raw
  To: gentoo-commits

commit:     b93f866a47b220f031e2d5d6ddb78f0c4860450a
Author:     Michał Górny <mgorny <AT> gentoo <DOT> org>
AuthorDate: Wed Sep  6 17:56:20 2023 +0000
Commit:     Michał Górny <mgorny <AT> gentoo <DOT> org>
CommitDate: Wed Sep  6 18:12:47 2023 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=b93f866a

llvm.org.eclass: Add 18.0.0_pre20230906 snapshot

Signed-off-by: Michał Górny <mgorny <AT> gentoo.org>

 eclass/llvm.org.eclass | 3 +++
 1 file changed, 3 insertions(+)

diff --git a/eclass/llvm.org.eclass b/eclass/llvm.org.eclass
index ba75866507e2..e69ef14c0e62 100644
--- a/eclass/llvm.org.eclass
+++ b/eclass/llvm.org.eclass
@@ -72,6 +72,9 @@ if [[ -z ${_LLVM_SOURCE_TYPE+1} ]]; then
 			_LLVM_SOURCE_TYPE=snapshot
 
 			case ${PV} in
+				18.0.0_pre20230906)
+					EGIT_COMMIT=7e5809e7e7bc9a828427b6540a51d45884d8bbbb
+					;;
 				18.0.0_pre20230829)
 					EGIT_COMMIT=f6259d9b9a546dbfa5bc2f29313c6edd6c701177
 					;;


^ permalink raw reply related	[flat|nested] 6131+ messages in thread

* [gentoo-commits] repo/gentoo:master commit in: eclass/
@ 2023-09-07 10:03 Ionen Wolkens
  0 siblings, 0 replies; 6131+ messages in thread
From: Ionen Wolkens @ 2023-09-07 10:03 UTC (permalink / raw
  To: gentoo-commits

commit:     75ae2f8d64e3fad9a1df5ff611ccbce3d4290e3b
Author:     Ionen Wolkens <ionen <AT> gentoo <DOT> org>
AuthorDate: Wed Sep  6 21:48:01 2023 +0000
Commit:     Ionen Wolkens <ionen <AT> gentoo <DOT> org>
CommitDate: Thu Sep  7 10:01:35 2023 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=75ae2f8d

qt6-build.eclass: abort build rather than skip on deps issues

Does not cover everything, there are some more "custom" checks
that may either abort or skip. This is for the generic top
level one that is the same across all of dev-qt/*:6

Afaik none of these should be able to trigger right now, but
not impossible been overlooking if it just been skipped.

Skipping+succeeding on tinderboxes that use minimal dependencies
may especially lead to confusing issues without this.

Signed-off-by: Ionen Wolkens <ionen <AT> gentoo.org>

 eclass/qt6-build.eclass | 6 ++++++
 1 file changed, 6 insertions(+)

diff --git a/eclass/qt6-build.eclass b/eclass/qt6-build.eclass
index 11e9844346a4..e4992ba58078 100644
--- a/eclass/qt6-build.eclass
+++ b/eclass/qt6-build.eclass
@@ -98,6 +98,12 @@ qt6-build_src_unpack() {
 qt6-build_src_prepare() {
 	cmake_src_prepare
 
+	if [[ -e CMakeLists.txt ]]; then
+		# build may be skipped entirely and install nothing without errors
+		# if checking for a major dependency/condition failed
+		sed -i '/message(NOTICE.*Skipping/s/NOTICE/ERROR/' CMakeLists.txt || die
+	fi
+
 	if in_iuse test && use test && [[ -e tests/auto/CMakeLists.txt ]]; then
 		# upstream seems to install before running tests, and cmake
 		# subdir that is present in about half of the Qt6 components


^ permalink raw reply related	[flat|nested] 6131+ messages in thread

* [gentoo-commits] repo/gentoo:master commit in: eclass/
@ 2023-09-07 10:22 Ionen Wolkens
  0 siblings, 0 replies; 6131+ messages in thread
From: Ionen Wolkens @ 2023-09-07 10:22 UTC (permalink / raw
  To: gentoo-commits

commit:     aab025c20d538aa417c8456bf8fcb0c5f3d3e2ab
Author:     Ionen Wolkens <ionen <AT> gentoo <DOT> org>
AuthorDate: Thu Sep  7 10:19:44 2023 +0000
Commit:     Ionen Wolkens <ionen <AT> gentoo <DOT> org>
CommitDate: Thu Sep  7 10:22:11 2023 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=aab025c2

qt6-build.eclass: error harder

Oops.

Signed-off-by: Ionen Wolkens <ionen <AT> gentoo.org>

 eclass/qt6-build.eclass | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/eclass/qt6-build.eclass b/eclass/qt6-build.eclass
index e4992ba58078..0b4ea6a58ce6 100644
--- a/eclass/qt6-build.eclass
+++ b/eclass/qt6-build.eclass
@@ -101,7 +101,7 @@ qt6-build_src_prepare() {
 	if [[ -e CMakeLists.txt ]]; then
 		# build may be skipped entirely and install nothing without errors
 		# if checking for a major dependency/condition failed
-		sed -i '/message(NOTICE.*Skipping/s/NOTICE/ERROR/' CMakeLists.txt || die
+		sed -i '/message(NOTICE.*Skipping/s/NOTICE/FATAL_ERROR/' CMakeLists.txt || die
 	fi
 
 	if in_iuse test && use test && [[ -e tests/auto/CMakeLists.txt ]]; then


^ permalink raw reply related	[flat|nested] 6131+ messages in thread

* [gentoo-commits] repo/gentoo:master commit in: eclass/
@ 2023-09-07 22:16 Ionen Wolkens
  0 siblings, 0 replies; 6131+ messages in thread
From: Ionen Wolkens @ 2023-09-07 22:16 UTC (permalink / raw
  To: gentoo-commits

commit:     6dbf85f4b67761b08c539adf4f25a50c96865a52
Author:     Ionen Wolkens <ionen <AT> gentoo <DOT> org>
AuthorDate: Thu Sep  7 22:10:40 2023 +0000
Commit:     Ionen Wolkens <ionen <AT> gentoo <DOT> org>
CommitDate: Thu Sep  7 22:16:30 2023 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=6dbf85f4

qt6-build.eclass: more aggressively disable cpu flags mismatch

Closes: https://bugs.gentoo.org/913843
Signed-off-by: Ionen Wolkens <ionen <AT> gentoo.org>

 eclass/qt6-build.eclass | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/eclass/qt6-build.eclass b/eclass/qt6-build.eclass
index 0b4ea6a58ce6..28f8d904065d 100644
--- a/eclass/qt6-build.eclass
+++ b/eclass/qt6-build.eclass
@@ -252,7 +252,7 @@ _qt6-build_match_cpu_flags() {
 	while IFS=' ' read -ra intrins; do
 		[[ ${intrins[*]} == *=[^_]* && ${intrins[*]} == *=_* ]] &&
 			for intrin in "${intrins[@]}"; do
-				[[ ${intrin} == *?=[^_]* ]] && flags+=(-mno-${intrin%=*})
+				[[ ${intrin} == *?=* ]] && flags+=( -mno-${intrin%=*} )
 			done
 	done < <(
 		# TODO: review if can drop fma= matching after QTBUG-116357


^ permalink raw reply related	[flat|nested] 6131+ messages in thread

* [gentoo-commits] repo/gentoo:master commit in: eclass/
@ 2023-09-09  6:59 Joonas Niilola
  0 siblings, 0 replies; 6131+ messages in thread
From: Joonas Niilola @ 2023-09-09  6:59 UTC (permalink / raw
  To: gentoo-commits

commit:     9f63d64501b0d4ea9129edede77305dfb034b420
Author:     Myckel Habets <gentoo-bugs <AT> habets-dobben <DOT> nl>
AuthorDate: Fri Sep  8 10:02:12 2023 +0000
Commit:     Joonas Niilola <juippis <AT> gentoo <DOT> org>
CommitDate: Sat Sep  9 06:59:31 2023 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=9f63d645

eclass: remove obsolete python2.7 code from mozcoreconf-v6.eclass

Closes: https://bugs.gentoo.org/698980
Signed-off-by: Myckel Habets <gentoo-bugs <AT> habets-dobben.nl>
Closes: https://github.com/gentoo/gentoo/pull/32682
Signed-off-by: Joonas Niilola <juippis <AT> gentoo.org>

 eclass/mozcoreconf-v6.eclass | 7 -------
 1 file changed, 7 deletions(-)

diff --git a/eclass/mozcoreconf-v6.eclass b/eclass/mozcoreconf-v6.eclass
index 90d9d9b25b0c..71dbc6802d71 100644
--- a/eclass/mozcoreconf-v6.eclass
+++ b/eclass/mozcoreconf-v6.eclass
@@ -26,7 +26,6 @@ _MOZCORECONF_V6_ECLASS=1
 inherit toolchain-funcs flag-o-matic python-any-r1
 
 BDEPEND="virtual/pkgconfig
-	dev-lang/python:2.7[ncurses,sqlite,ssl,threads(+)]
 	${PYTHON_DEPS}"
 
 IUSE="${IUSE} custom-cflags custom-optimization"
@@ -99,12 +98,6 @@ moz_pkgsetup() {
 	export QA_CONFIGURE_OPTIONS=".*"
 
 	python-any-r1_pkg_setup
-	# workaround to set python3 into PYTHON3 until mozilla doesn't need py2
-	if [[ "${PYTHON_COMPAT[@]}" != "${PYTHON_COMPAT[@]#python3*}" ]]; then
-		export PYTHON3=${PYTHON}
-		export PYTHON=python2.7
-		export EPYTHON="${EPREFIX}"/usr/bin/python2.7
-	fi
 }
 
 # @FUNCTION: mozconfig_init


^ permalink raw reply related	[flat|nested] 6131+ messages in thread

* [gentoo-commits] repo/gentoo:master commit in: eclass/
@ 2023-09-09 16:22 Ionen Wolkens
  0 siblings, 0 replies; 6131+ messages in thread
From: Ionen Wolkens @ 2023-09-09 16:22 UTC (permalink / raw
  To: gentoo-commits

commit:     2e9af2864981c8243b1097324a2a187ae4455199
Author:     Ionen Wolkens <ionen <AT> gentoo <DOT> org>
AuthorDate: Thu Sep  7 10:53:40 2023 +0000
Commit:     Ionen Wolkens <ionen <AT> gentoo <DOT> org>
CommitDate: Sat Sep  9 16:06:31 2023 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=2e9af286

qt6-build.eclass: minor style & comments adjustments

wrt skip->error comment, shortened partially for correctness. Most
packages still fail either way due to `ninja install` having nothing
to do (unless some files did get registered for install anyway). Albeit
still want this to error during configure when required conditions are
not met either way.

Signed-off-by: Ionen Wolkens <ionen <AT> gentoo.org>

 eclass/qt6-build.eclass | 15 +++++++--------
 1 file changed, 7 insertions(+), 8 deletions(-)

diff --git a/eclass/qt6-build.eclass b/eclass/qt6-build.eclass
index 28f8d904065d..9de740708a6f 100644
--- a/eclass/qt6-build.eclass
+++ b/eclass/qt6-build.eclass
@@ -99,15 +99,14 @@ qt6-build_src_prepare() {
 	cmake_src_prepare
 
 	if [[ -e CMakeLists.txt ]]; then
-		# build may be skipped entirely and install nothing without errors
-		# if checking for a major dependency/condition failed
-		sed -i '/message(NOTICE.*Skipping/s/NOTICE/FATAL_ERROR/' CMakeLists.txt || die
+		# throw an error rather than skip if *required* conditions are not met
+		sed -e '/message(NOTICE.*Skipping/s/NOTICE/FATAL_ERROR/' \
+			-i CMakeLists.txt || die
 	fi
 
 	if in_iuse test && use test && [[ -e tests/auto/CMakeLists.txt ]]; then
-		# upstream seems to install before running tests, and cmake
-		# subdir that is present in about half of the Qt6 components
-		# cause a dependency on itself and sometimes install test junk
+		# .cmake files tests causing a self-dependency in many modules,
+		# and that sometimes install additional test junk
 		sed -i '/add_subdirectory(cmake)/d' tests/auto/CMakeLists.txt || die
 	fi
 
@@ -251,8 +250,8 @@ _qt6-build_match_cpu_flags() {
 	local flags=() intrin intrins
 	while IFS=' ' read -ra intrins; do
 		[[ ${intrins[*]} == *=[^_]* && ${intrins[*]} == *=_* ]] &&
-			for intrin in "${intrins[@]}"; do
-				[[ ${intrin} == *?=* ]] && flags+=( -mno-${intrin%=*} )
+			for intrin in "${intrins[@]%=*}"; do
+				[[ ${intrin} ]] && flags+=( -mno-${intrin} )
 			done
 	done < <(
 		# TODO: review if can drop fma= matching after QTBUG-116357


^ permalink raw reply related	[flat|nested] 6131+ messages in thread

* [gentoo-commits] repo/gentoo:master commit in: eclass/
@ 2023-09-09 16:22 Ionen Wolkens
  0 siblings, 0 replies; 6131+ messages in thread
From: Ionen Wolkens @ 2023-09-09 16:22 UTC (permalink / raw
  To: gentoo-commits

commit:     2a205ba6fc12dd66ddf5c4f3e7b8143d2b71ca5e
Author:     Ionen Wolkens <ionen <AT> gentoo <DOT> org>
AuthorDate: Thu Sep  7 21:35:21 2023 +0000
Commit:     Ionen Wolkens <ionen <AT> gentoo <DOT> org>
CommitDate: Sat Sep  9 16:06:31 2023 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=2a205ba6

qt6-build.eclass: pass eclass' cmakeargs before the ebuild's

To allow ebuilds to override default options if ever needed.

wrt == *a*, not super necessary but still checked given this avoids
picking up a mycmakeargs that may be set in the environment (arrays
are always from ebuilds).

Signed-off-by: Ionen Wolkens <ionen <AT> gentoo.org>

 eclass/qt6-build.eclass | 14 +++++++-------
 1 file changed, 7 insertions(+), 7 deletions(-)

diff --git a/eclass/qt6-build.eclass b/eclass/qt6-build.eclass
index 9de740708a6f..64cbfd296061 100644
--- a/eclass/qt6-build.eclass
+++ b/eclass/qt6-build.eclass
@@ -135,13 +135,7 @@ qt6-build_src_configure() {
 		return
 	fi
 
-	if [[ ${mycmakeargs@a} == *a* ]]; then
-		local mycmakeargs=("${mycmakeargs[@]}")
-	else
-		local mycmakeargs=()
-	fi
-
-	mycmakeargs+=(
+	local defaultcmakeargs=(
 		# see _qt6-build_create_user_facing_links
 		-DINSTALL_PUBLICBINDIR="${QT6_PREFIX}"/bin
 		# note that if qtbase was built with tests, this is default ON
@@ -150,6 +144,12 @@ qt6-build_src_configure() {
 		-DQT_USE_DEFAULT_CMAKE_OPTIMIZATION_FLAGS=ON
 	)
 
+	if [[ ${mycmakeargs@a} == *a* ]]; then
+		local mycmakeargs=("${defaultcmakeargs[@]}" "${mycmakeargs[@]}")
+	else
+		local mycmakeargs=("${defaultcmakeargs[@]}")
+	fi
+
 	cmake_src_configure
 }
 


^ permalink raw reply related	[flat|nested] 6131+ messages in thread

* [gentoo-commits] repo/gentoo:master commit in: eclass/
@ 2023-09-09 16:22 Ionen Wolkens
  0 siblings, 0 replies; 6131+ messages in thread
From: Ionen Wolkens @ 2023-09-09 16:22 UTC (permalink / raw
  To: gentoo-commits

commit:     f31f050dc8174a9031d41c5d7b5c52fc43dc0915
Author:     Ionen Wolkens <ionen <AT> gentoo <DOT> org>
AuthorDate: Sat Sep  9 07:17:46 2023 +0000
Commit:     Ionen Wolkens <ionen <AT> gentoo <DOT> org>
CommitDate: Sat Sep  9 16:06:32 2023 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=f31f050d

Revert "qt6-build.eclass: switch examples dir to /usr/lib*/qt6/examples"

This reverts commit c2d1b889127af2b11559f0ac3c41313058a4969a.

See bug #881433, turns out probably should not build examples.
So old location makes more sense if we are only going to install
sources in it.

Note does mean qtbase will need to be rebuilt before start using
that location though (unused currently).

Bug: https://bugs.gentoo.org/881433
Signed-off-by: Ionen Wolkens <ionen <AT> gentoo.org>

 eclass/qt6-build.eclass | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/eclass/qt6-build.eclass b/eclass/qt6-build.eclass
index 64cbfd296061..c96bc0c1c3c3 100644
--- a/eclass/qt6-build.eclass
+++ b/eclass/qt6-build.eclass
@@ -286,7 +286,7 @@ _qt6-build_prepare_env() {
 
 	readonly QT6_BINDIR=${QT6_ARCHDATADIR}/bin
 	readonly QT6_DOCDIR=${QT6_PREFIX}/share/qt6-doc
-	readonly QT6_EXAMPLESDIR=${QT6_ARCHDATADIR}/examples
+	readonly QT6_EXAMPLESDIR=${QT6_DATADIR}/examples
 	readonly QT6_HEADERDIR=${QT6_PREFIX}/include/qt6
 	readonly QT6_IMPORTDIR=${QT6_ARCHDATADIR}/imports
 	readonly QT6_LIBEXECDIR=${QT6_ARCHDATADIR}/libexec


^ permalink raw reply related	[flat|nested] 6131+ messages in thread

* [gentoo-commits] repo/gentoo:master commit in: eclass/
@ 2023-09-11 11:20 Ionen Wolkens
  0 siblings, 0 replies; 6131+ messages in thread
From: Ionen Wolkens @ 2023-09-11 11:20 UTC (permalink / raw
  To: gentoo-commits

commit:     ea4681213ddbaae1ba1d9fb204d7cc50aa882abd
Author:     Ionen Wolkens <ionen <AT> gentoo <DOT> org>
AuthorDate: Mon Sep 11 11:18:44 2023 +0000
Commit:     Ionen Wolkens <ionen <AT> gentoo <DOT> org>
CommitDate: Mon Sep 11 11:20:15 2023 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=ea468121

cmake.eclass: remove USER_VARIABLE from CMAKE_SKIP_TESTS

This is an array, and users cannot even set arrays through
the environment.

Must have been a copy/paste oversight (skipping ML review).

Signed-off-by: Ionen Wolkens <ionen <AT> gentoo.org>

 eclass/cmake.eclass | 1 -
 1 file changed, 1 deletion(-)

diff --git a/eclass/cmake.eclass b/eclass/cmake.eclass
index d0f6d0b4bd91..bbab6a8af1ff 100644
--- a/eclass/cmake.eclass
+++ b/eclass/cmake.eclass
@@ -126,7 +126,6 @@ fi
 # the ebuild. Helps in improving QA of build systems that write to source tree.
 
 # @ECLASS_VARIABLE: CMAKE_SKIP_TESTS
-# @USER_VARIABLE
 # @DEFAULT_UNSET
 # @DESCRIPTION:
 # Array of tests that should be skipped when running CTest.


^ permalink raw reply related	[flat|nested] 6131+ messages in thread

* [gentoo-commits] repo/gentoo:master commit in: eclass/
@ 2023-09-11 21:20 Ionen Wolkens
  0 siblings, 0 replies; 6131+ messages in thread
From: Ionen Wolkens @ 2023-09-11 21:20 UTC (permalink / raw
  To: gentoo-commits

commit:     c44376c0b7aab810ab1e9e1d27063f422f4bd5ab
Author:     Ionen Wolkens <ionen <AT> gentoo <DOT> org>
AuthorDate: Mon Sep 11 11:02:28 2023 +0000
Commit:     Ionen Wolkens <ionen <AT> gentoo <DOT> org>
CommitDate: Mon Sep 11 21:05:46 2023 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=c44376c0

qt6-build.eclass: include patch version in subslot for >=6.5.3

This matches Qt5 which had been doing the same.

While working on qt-creator bump, noticed that it broke with
qtquick3d-6.5.9999, which turned out because of changes in
private APIs that will land in 6.5.3. In other words, it is
going to need a rebuild when that lands but current SLOT=0/6.5
do not allow this. This could be a one-off issue but let's
stay safer when private APIs are abused.

This also keeps the 9999 in live subslot, so switching
between live and releases will trigger rebuilds too.

Signed-off-by: Ionen Wolkens <ionen <AT> gentoo.org>

 eclass/qt6-build.eclass | 6 +++++-
 1 file changed, 5 insertions(+), 1 deletion(-)

diff --git a/eclass/qt6-build.eclass b/eclass/qt6-build.eclass
index c96bc0c1c3c3..2990b41a9e95 100644
--- a/eclass/qt6-build.eclass
+++ b/eclass/qt6-build.eclass
@@ -66,7 +66,11 @@ readonly QT6_BUILD_TYPE
 
 HOMEPAGE="https://www.qt.io/"
 LICENSE="|| ( GPL-2 GPL-3 LGPL-3 ) FDL-1.3"
-SLOT=6/${PV%.*}
+if ver_test ${PV} -ge 6.5.3; then
+	SLOT=6/${PV%%_*}
+else
+	SLOT=6/${PV%.*} # TODO: remove this after <6.5.3 is gone
+fi
 
 if [[ ${PN} != qttranslations ]]; then
 	IUSE="test"


^ permalink raw reply related	[flat|nested] 6131+ messages in thread

* [gentoo-commits] repo/gentoo:master commit in: eclass/
@ 2023-09-12  7:46 James Le Cuirot
  0 siblings, 0 replies; 6131+ messages in thread
From: James Le Cuirot @ 2023-09-12  7:46 UTC (permalink / raw
  To: gentoo-commits

commit:     8385562ce1a2ada550150ec14b20e4b14aadf840
Author:     James Le Cuirot <chewi <AT> gentoo <DOT> org>
AuthorDate: Fri Aug 25 21:15:06 2023 +0000
Commit:     James Le Cuirot <chewi <AT> gentoo <DOT> org>
CommitDate: Tue Sep 12 07:45:32 2023 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=8385562c

python-utils-r1.eclass: Redo cross-prefix support using sysconfig

We recently supported cross-prefix by rewriting PYTHON_SITEDIR and
PYTHON_INCLUDEDIR from BROOT to EPREFIX. We now know that you can get
sysconfig to use EPREFIX in the first place, which is cleaner.

Signed-off-by: James Le Cuirot <chewi <AT> gentoo.org>

 eclass/python-utils-r1.eclass | 14 ++++++--------
 1 file changed, 6 insertions(+), 8 deletions(-)

diff --git a/eclass/python-utils-r1.eclass b/eclass/python-utils-r1.eclass
index f9c6d161d3f3..bd30c1203180 100644
--- a/eclass/python-utils-r1.eclass
+++ b/eclass/python-utils-r1.eclass
@@ -346,24 +346,22 @@ _python_export() {
 			PYTHON_SITEDIR)
 				[[ -n ${PYTHON} ]] || die "PYTHON needs to be set for ${var} to be exported, or requested before it"
 				PYTHON_SITEDIR=$(
-					"${PYTHON}" - <<-EOF || die
-						import sysconfig
-						print(sysconfig.get_path("purelib"))
+					"${PYTHON}" - "${EPREFIX}/usr" <<-EOF || die
+						import sys, sysconfig
+						print(sysconfig.get_path("purelib", vars={"base": sys.argv[1]}))
 					EOF
 				)
-				PYTHON_SITEDIR=${EPREFIX}${PYTHON_SITEDIR#"${BROOT-${EPREFIX}}"}
 				export PYTHON_SITEDIR
 				debug-print "${FUNCNAME}: PYTHON_SITEDIR = ${PYTHON_SITEDIR}"
 				;;
 			PYTHON_INCLUDEDIR)
 				[[ -n ${PYTHON} ]] || die "PYTHON needs to be set for ${var} to be exported, or requested before it"
 				PYTHON_INCLUDEDIR=$(
-					"${PYTHON}" - <<-EOF || die
-						import sysconfig
-						print(sysconfig.get_path("platinclude"))
+					"${PYTHON}" - "${ESYSROOT}/usr" <<-EOF || die
+						import sys, sysconfig
+						print(sysconfig.get_path("platinclude", vars={"installed_platbase": sys.argv[1]}))
 					EOF
 				)
-				PYTHON_INCLUDEDIR=${ESYSROOT}${PYTHON_INCLUDEDIR#"${BROOT-${EPREFIX}}"}
 				export PYTHON_INCLUDEDIR
 				debug-print "${FUNCNAME}: PYTHON_INCLUDEDIR = ${PYTHON_INCLUDEDIR}"
 


^ permalink raw reply related	[flat|nested] 6131+ messages in thread

* [gentoo-commits] repo/gentoo:master commit in: eclass/
@ 2023-09-14  2:10 Sam James
  0 siblings, 0 replies; 6131+ messages in thread
From: Sam James @ 2023-09-14  2:10 UTC (permalink / raw
  To: gentoo-commits

commit:     879a314c68b25ae8149a8d9d8bb80fb7bf04fb8b
Author:     Sam James <sam <AT> gentoo <DOT> org>
AuthorDate: Wed Sep 13 20:58:33 2023 +0000
Commit:     Sam James <sam <AT> gentoo <DOT> org>
CommitDate: Thu Sep 14 02:09:10 2023 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=879a314c

kernel-build.eclass: pass INSTALL_MOD_STRIP in src_test

Thanks-to: Andrew Ammerlaan <andrewammerlaan <AT> gentoo.org>
Signed-off-by: Sam James <sam <AT> gentoo.org>

 eclass/kernel-build.eclass | 10 +++++++++-
 1 file changed, 9 insertions(+), 1 deletion(-)

diff --git a/eclass/kernel-build.eclass b/eclass/kernel-build.eclass
index 0618d495f343..01cd184f41c0 100644
--- a/eclass/kernel-build.eclass
+++ b/eclass/kernel-build.eclass
@@ -224,8 +224,16 @@ kernel-build_src_test() {
 		targets+=( dtbs_install )
 	fi
 
+	# Use the kernel build system to strip, this ensures the modules
+	# are stripped *before* they are signed or compressed.
+	local strip_args
+	if use strip; then
+		strip_args="--strip-unneeded"
+	fi
+
 	emake O="${WORKDIR}"/build "${MAKEARGS[@]}" \
-		INSTALL_MOD_PATH="${T}" "${targets[@]}"
+		INSTALL_MOD_PATH="${T}" INSTALL_MOD_STRIP="${strip_args}" \
+		"${targets[@]}"
 
 	local dir_ver=${PV}${KV_LOCALVERSION}
 	local relfile=${WORKDIR}/build/include/config/kernel.release


^ permalink raw reply related	[flat|nested] 6131+ messages in thread

* [gentoo-commits] repo/gentoo:master commit in: eclass/
@ 2023-09-14  5:30 Michał Górny
  0 siblings, 0 replies; 6131+ messages in thread
From: Michał Górny @ 2023-09-14  5:30 UTC (permalink / raw
  To: gentoo-commits

commit:     9ee6cf6c1f64d7cd7214353d0a71fde1d8daea5b
Author:     Arthur Zamarin <arthurzam <AT> gentoo <DOT> org>
AuthorDate: Sat Sep  9 19:21:18 2023 +0000
Commit:     Michał Górny <mgorny <AT> gentoo <DOT> org>
CommitDate: Thu Sep 14 05:30:07 2023 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=9ee6cf6c

kernel-2.eclass: fix Unquoted Variable

Signed-off-by: Arthur Zamarin <arthurzam <AT> gentoo.org>
Signed-off-by: Michał Górny <mgorny <AT> gentoo.org>

 eclass/kernel-2.eclass | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/eclass/kernel-2.eclass b/eclass/kernel-2.eclass
index 7b77b64de90f..8bab2b482cf7 100644
--- a/eclass/kernel-2.eclass
+++ b/eclass/kernel-2.eclass
@@ -877,7 +877,7 @@ install_sources() {
 	dodir /usr/src
 	einfo ">>> Copying sources ..."
 
-	file="$(find ${WORKDIR} -iname "docs" -type d)"
+	file="$(find "${WORKDIR}" -iname "docs" -type d)"
 	if [[ -n ${file} ]]; then
 		for file in $(find ${file} -type f); do
 			echo "${file//*docs\/}" >> "${S}"/patches.txt


^ permalink raw reply related	[flat|nested] 6131+ messages in thread

* [gentoo-commits] repo/gentoo:master commit in: eclass/
@ 2023-09-14  5:30 Michał Górny
  0 siblings, 0 replies; 6131+ messages in thread
From: Michał Górny @ 2023-09-14  5:30 UTC (permalink / raw
  To: gentoo-commits

commit:     d22771ab30903e3c9e4cc910595efc0502d0c06a
Author:     Arthur Zamarin <arthurzam <AT> gentoo <DOT> org>
AuthorDate: Sat Sep  9 19:21:14 2023 +0000
Commit:     Michał Górny <mgorny <AT> gentoo <DOT> org>
CommitDate: Thu Sep 14 05:30:06 2023 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=d22771ab

java-utils-2.eclass: fix Unquoted Variable

Signed-off-by: Arthur Zamarin <arthurzam <AT> gentoo.org>
Signed-off-by: Michał Górny <mgorny <AT> gentoo.org>

 eclass/java-utils-2.eclass | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/eclass/java-utils-2.eclass b/eclass/java-utils-2.eclass
index 463d364caee9..ee5d68c8a78c 100644
--- a/eclass/java-utils-2.eclass
+++ b/eclass/java-utils-2.eclass
@@ -577,7 +577,7 @@ java-pkg_regso() {
 			java-pkg_append_ JAVA_PKG_LIBRARY "/${target_dir#${D}}"
 		# Check the path of the lib relative to ${D}
 		elif [[ -e "${D}${lib}" ]]; then
-			target_dir="$(java-pkg_expand_dir_ ${D}${lib})"
+			target_dir="$(java-pkg_expand_dir_ "${D}${lib}")"
 			java-pkg_append_ JAVA_PKG_LIBRARY "${target_dir}"
 		else
 			die "${lib} does not exist"
@@ -924,7 +924,7 @@ java-pkg_recordjavadoc()
 	debug-print-function ${FUNCNAME} $*
 	# the find statement is important
 	# as some packages include multiple trees of javadoc
-	JAVADOC_PATH="$(find ${D}/usr/share/doc/ -name allclasses-frame.html -printf '%h:')"
+	JAVADOC_PATH="$(find "${D}"/usr/share/doc/ -name allclasses-frame.html -printf '%h:')"
 	# remove $D - TODO: check this is ok with all cases of the above
 	JAVADOC_PATH="${JAVADOC_PATH//${D}}"
 	if [[ -n "${JAVADOC_PATH}" ]] ; then


^ permalink raw reply related	[flat|nested] 6131+ messages in thread

* [gentoo-commits] repo/gentoo:master commit in: eclass/
@ 2023-09-14  5:30 Michał Górny
  0 siblings, 0 replies; 6131+ messages in thread
From: Michał Górny @ 2023-09-14  5:30 UTC (permalink / raw
  To: gentoo-commits

commit:     1ea4db56f74e154b3b9ed9c244a92e2dc31005c2
Author:     Arthur Zamarin <arthurzam <AT> gentoo <DOT> org>
AuthorDate: Sat Sep  9 19:20:50 2023 +0000
Commit:     Michał Górny <mgorny <AT> gentoo <DOT> org>
CommitDate: Thu Sep 14 05:30:05 2023 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=1ea4db56

cuda.eclass: fix Unquoted Variable

Signed-off-by: Arthur Zamarin <arthurzam <AT> gentoo.org>
Signed-off-by: Michał Górny <mgorny <AT> gentoo.org>

 eclass/cuda.eclass | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/eclass/cuda.eclass b/eclass/cuda.eclass
index 5f3f0c3af37d..4b5f1a3294ef 100644
--- a/eclass/cuda.eclass
+++ b/eclass/cuda.eclass
@@ -81,7 +81,7 @@ cuda_gccdir() {
 	# Try the current gcc version first
 	ver=$(gcc-version)
 	if [[ -n "${ver}" ]] && [[ ${vers} =~ ${ver} ]]; then
-		dirs=( ${EPREFIX}/usr/*pc-linux-gnu/gcc-bin/${ver%.*}*/ )
+		dirs=( "${EPREFIX}"/usr/*pc-linux-gnu/gcc-bin/${ver%.*}*/ )
 		gcc_bindir="${dirs[${#dirs[@]}-1]}"
 	fi
 
@@ -90,14 +90,14 @@ cuda_gccdir() {
 		ver=$(ver_cut 1-2 "${ver##*sys-devel/gcc-}")
 
 		if [[ -n "${ver}" ]] && [[ ${vers} =~ ${ver} ]]; then
-			dirs=( ${EPREFIX}/usr/*pc-linux-gnu/gcc-bin/${ver%.*}*/ )
+			dirs=( "${EPREFIX}"/usr/*pc-linux-gnu/gcc-bin/${ver%.*}*/ )
 			gcc_bindir="${dirs[${#dirs[@]}-1]}"
 		fi
 	fi
 
 	for ver in ${vers}; do
 		if has_version "=sys-devel/gcc-${ver}*"; then
-			dirs=( ${EPREFIX}/usr/*pc-linux-gnu/gcc-bin/${ver%.*}*/ )
+			dirs=( "${EPREFIX}"/usr/*pc-linux-gnu/gcc-bin/${ver%.*}*/ )
 			gcc_bindir="${dirs[${#dirs[@]}-1]}"
 		fi
 	done


^ permalink raw reply related	[flat|nested] 6131+ messages in thread

* [gentoo-commits] repo/gentoo:master commit in: eclass/
@ 2023-09-14  5:30 Michał Górny
  0 siblings, 0 replies; 6131+ messages in thread
From: Michał Górny @ 2023-09-14  5:30 UTC (permalink / raw
  To: gentoo-commits

commit:     e22c514afa6a6c6991bdd28e87254355d5d90bad
Author:     Arthur Zamarin <arthurzam <AT> gentoo <DOT> org>
AuthorDate: Sat Sep  9 19:21:23 2023 +0000
Commit:     Michał Górny <mgorny <AT> gentoo <DOT> org>
CommitDate: Thu Sep 14 05:30:08 2023 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=e22c514a

perl-module.eclass: fix Unquoted Variable

Signed-off-by: Arthur Zamarin <arthurzam <AT> gentoo.org>
Closes: https://github.com/gentoo/gentoo/pull/32703
Signed-off-by: Michał Górny <mgorny <AT> gentoo.org>

 eclass/perl-module.eclass | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/eclass/perl-module.eclass b/eclass/perl-module.eclass
index 35f85a813fc7..e2b66e3b6f7d 100644
--- a/eclass/perl-module.eclass
+++ b/eclass/perl-module.eclass
@@ -254,7 +254,7 @@ perl-module_src_configure() {
 	elif [[ -f Makefile.PL ]] ; then
 		einfo "Using ExtUtils::MakeMaker"
 		set -- \
-			PREFIX=${EPREFIX}/usr \
+			PREFIX="${EPREFIX}"/usr \
 			INSTALLDIRS=vendor \
 			INSTALLMAN3DIR='none' \
 			DESTDIR="${D}" \


^ permalink raw reply related	[flat|nested] 6131+ messages in thread

* [gentoo-commits] repo/gentoo:master commit in: eclass/
@ 2023-09-14  5:30 Michał Górny
  0 siblings, 0 replies; 6131+ messages in thread
From: Michał Górny @ 2023-09-14  5:30 UTC (permalink / raw
  To: gentoo-commits

commit:     597762f0cd480abcd18792f519db370a6c249e25
Author:     Eli Schwartz <eschwartz93 <AT> gmail <DOT> com>
AuthorDate: Mon Sep 11 02:18:37 2023 +0000
Commit:     Michał Górny <mgorny <AT> gentoo <DOT> org>
CommitDate: Thu Sep 14 05:30:08 2023 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=597762f0

distutils-r1.eclass: teach setuptools to respect (some) build options

Previously, setup.py was handled by:

- manually passing makejobs, with a heuristic to guess whether it was a
  time saver to do so.
- rm -rf'ing the build directory in between python versions to prevent
  cross-version contamination

This is because in PEP 517 mode, it doesn't accept build options
specific to a setuptools phase. So a crude hack is to just build_ext
twice, once explicitly and once internally as part of bdist_wheel, and
pray that in the latter case it detects that there's nothing to do.
Unfortunately, sometimes build_ext does NOT detect that there is nothing
to do -- e.g. for codegen tools such as mypyc, that produce *.c files
which are different every time you try building. As for build
directories, those were given up on as hopeless.

There's a better hack which is to set a magic environment variable for a
setup.cfg file which is parsed additionally to the one provided by the
project. It can contain additional settings, such as the build-base and
parallelism, which means that bdist_wheel intrinsically builds
extensions in parallel the only time it is called. And we can set the
output directory for all build artifacts to outside of the source tree,
so it is no longer necessary to delete them (which among other things,
makes debugging difficult).

This is similar to .pydistutils.cfg, but is processed later and can be
in arbitrary locations. Since we store it in the per-impl build
directory we don't need to wipe it after using it to avoid leakage.

Signed-off-by: Eli Schwartz <eschwartz93 <AT> gmail.com>
Signed-off-by: Michał Górny <mgorny <AT> gentoo.org>

 eclass/distutils-r1.eclass | 48 ++++++++++------------------------------------
 1 file changed, 10 insertions(+), 38 deletions(-)

diff --git a/eclass/distutils-r1.eclass b/eclass/distutils-r1.eclass
index 91de144e1110..56afcdc5bcb8 100644
--- a/eclass/distutils-r1.eclass
+++ b/eclass/distutils-r1.eclass
@@ -1461,12 +1461,6 @@ distutils_pep517_install() {
 	[[ -n ${wheel} ]] || die "No wheel name returned"
 
 	distutils_wheel_install "${root}" "${WHEEL_BUILD_DIR}/${wheel}"
-
-	# clean the build tree; otherwise we may end up with PyPy3
-	# extensions duplicated into CPython dists
-	if [[ ${DISTUTILS_USE_PEP517:-setuptools} == setuptools ]]; then
-		rm -rf build || die
-	fi
 }
 
 # @FUNCTION: distutils-r1_python_compile
@@ -1478,9 +1472,6 @@ distutils_pep517_install() {
 #
 # If DISTUTILS_USE_PEP517 is set to any other value, builds a wheel
 # using the PEP517 backend and installs it into ${BUILD_DIR}/install.
-# May additionally call build_ext prior to that when using setuptools
-# and the eclass detects a potential benefit from parallel extension
-# builds.
 #
 # In legacy mode, runs 'esetup.py build'. Any parameters passed to this
 # function will be appended to setup.py invocation, i.e. passed
@@ -1495,40 +1486,21 @@ distutils-r1_python_compile() {
 			# call setup.py build when using setuptools (either via PEP517
 			# or in legacy mode)
 
-			if [[ ${DISTUTILS_USE_PEP517} ]]; then
-				if [[ -d build ]]; then
-					eqawarn "A 'build' directory exists already.  Artifacts from this directory may"
-					eqawarn "be picked up by setuptools when building for another interpreter."
-					eqawarn "Please remove this directory prior to building."
-				fi
-			else
-				_distutils-r1_copy_egg_info
-			fi
-
 			# distutils is parallel-capable since py3.5
 			local jobs=$(makeopts_jobs "${MAKEOPTS} ${*}")
 
 			if [[ ${DISTUTILS_USE_PEP517} ]]; then
-				# issue build_ext only if it looks like we have at least
-				# two source files to build; setuptools is expensive
-				# to start and parallel builds can only benefit us if we're
-				# compiling at least two files
-				#
-				# see extension.py for list of suffixes
-				# .pyx is added for Cython
-				#
-				# esetup.py does not respect SYSROOT, so skip it there
-				if [[ -z ${SYSROOT} && ${DISTUTILS_EXT} && 1 -ne ${jobs}
-					&& 2 -eq $(
-						find '(' -name '*.c' -o -name '*.cc' -o -name '*.cpp' \
-							-o -name '*.cxx' -o -name '*.c++' -o -name '*.m' \
-							-o -name '*.mm' -o -name '*.pyx' ')' -printf '\n' |
-							head -n 2 | wc -l
-					)
-				]]; then
-					esetup.py build_ext -j "${jobs}" "${@}"
-				fi
+				mkdir -p "${BUILD_DIR}" || die
+				local -x DIST_EXTRA_CONFIG="${BUILD_DIR}/extra-setup.cfg"
+				cat > "${DIST_EXTRA_CONFIG}" <<-EOF || die
+					[build]
+					build_base = ${BUILD_DIR}/build
+
+					[build_ext]
+					parallel = ${jobs}
+				EOF
 			else
+				_distutils-r1_copy_egg_info
 				esetup.py build -j "${jobs}" "${@}"
 			fi
 			;;


^ permalink raw reply related	[flat|nested] 6131+ messages in thread

* [gentoo-commits] repo/gentoo:master commit in: eclass/
@ 2023-09-14  5:30 Michał Górny
  0 siblings, 0 replies; 6131+ messages in thread
From: Michał Górny @ 2023-09-14  5:30 UTC (permalink / raw
  To: gentoo-commits

commit:     92b2cb6c698e07ed49f7cb997df0e3824a65d49e
Author:     Michał Górny <mgorny <AT> gentoo <DOT> org>
AuthorDate: Fri Sep  8 10:09:44 2023 +0000
Commit:     Michał Górny <mgorny <AT> gentoo <DOT> org>
CommitDate: Thu Sep 14 05:30:12 2023 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=92b2cb6c

verify-sig.eclass: Fix list formatting for VERIFY_SIG_METHOD

Thanks to ulm for reporting.

Signed-off-by: Michał Górny <mgorny <AT> gentoo.org>

 eclass/verify-sig.eclass | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/eclass/verify-sig.eclass b/eclass/verify-sig.eclass
index 010361bfbc98..49557b633c87 100644
--- a/eclass/verify-sig.eclass
+++ b/eclass/verify-sig.eclass
@@ -55,8 +55,8 @@ IUSE="verify-sig"
 # @DESCRIPTION:
 # Signature verification method to use.  The allowed value are:
 #
-# - openpgp -- verify PGP signatures using app-crypt/gnupg (the default)
-# - signify -- verify signatures with Ed25519 public key using app-crypt/signify
+#  - openpgp -- verify PGP signatures using app-crypt/gnupg (the default)
+#  - signify -- verify signatures with Ed25519 public key using app-crypt/signify
 : "${VERIFY_SIG_METHOD:=openpgp}"
 
 case ${VERIFY_SIG_METHOD} in


^ permalink raw reply related	[flat|nested] 6131+ messages in thread

* [gentoo-commits] repo/gentoo:master commit in: eclass/
@ 2023-09-14  5:30 Michał Górny
  0 siblings, 0 replies; 6131+ messages in thread
From: Michał Górny @ 2023-09-14  5:30 UTC (permalink / raw
  To: gentoo-commits

commit:     93a87f4f59eb62356f2d2cc45c6cb252cf865e11
Author:     Eli Schwartz <eschwartz93 <AT> gmail <DOT> com>
AuthorDate: Tue Sep 12 11:03:23 2023 +0000
Commit:     Michał Górny <mgorny <AT> gentoo <DOT> org>
CommitDate: Thu Sep 14 05:30:09 2023 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=93a87f4f

python-utils-r1.eclass: unconditionally warn on occluded packages in cwd

If the current directory masks packages that would be installed and
contains different contents, it can cause testing issues that otherwise
go unnoticed. This warning can stop being experimental and opt-in

Suggested-by: Michał Górny <mgorny <AT> gentoo.org>
Signed-off-by: Eli Schwartz <eschwartz93 <AT> gmail.com>
Closes: https://github.com/gentoo/gentoo/pull/32729
Signed-off-by: Michał Górny <mgorny <AT> gentoo.org>

 eclass/python-utils-r1.eclass | 4 ----
 1 file changed, 4 deletions(-)

diff --git a/eclass/python-utils-r1.eclass b/eclass/python-utils-r1.eclass
index bd30c1203180..50aeabae1c17 100644
--- a/eclass/python-utils-r1.eclass
+++ b/eclass/python-utils-r1.eclass
@@ -1242,10 +1242,6 @@ _python_check_EPYTHON() {
 _python_check_occluded_packages() {
 	debug-print-function ${FUNCNAME} "${@}"
 
-	# DO NOT ENABLE THIS unless you're going to check for false
-	# positives before filing bugs.
-	[[ ! ${PYTHON_EXPERIMENTAL_QA} ]] && return
-
 	[[ -z ${BUILD_DIR} || ! -d ${BUILD_DIR}/install ]] && return
 
 	local sitedir="${BUILD_DIR}/install$(python_get_sitedir)"


^ permalink raw reply related	[flat|nested] 6131+ messages in thread

* [gentoo-commits] repo/gentoo:master commit in: eclass/
@ 2023-09-14 20:43 Ionen Wolkens
  0 siblings, 0 replies; 6131+ messages in thread
From: Ionen Wolkens @ 2023-09-14 20:43 UTC (permalink / raw
  To: gentoo-commits

commit:     d863cc9d8ea3722e0ecd6c17e89d88830b45f4fb
Author:     Ionen Wolkens <ionen <AT> gentoo <DOT> org>
AuthorDate: Wed Sep 13 12:58:55 2023 +0000
Commit:     Ionen Wolkens <ionen <AT> gentoo <DOT> org>
CommitDate: Thu Sep 14 20:39:35 2023 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=d863cc9d

qt6-build.eclass: skip matching fma in 6.5.3+

Should no longer hard fail if lack AVX2 while have FMA, however it does
(still) require to disable AVX2 if lacking anything else for any reason
(e.g. broken VMs, oddball hardware, perhaps even users intentionally
disabling a feature because they have a problem with it).

Generally few users should see their flags modified.

Feel the ideal would be for upstream to simply not use features that
are disabled rather than error about an incomplete set, or just not
use AVX2 if incomplete.

Bug: https://bugs.gentoo.org/898644
Bug: https://bugs.gentoo.org/908420
Bug: https://bugs.gentoo.org/913843
Signed-off-by: Ionen Wolkens <ionen <AT> gentoo.org>

 eclass/qt6-build.eclass | 5 +++--
 1 file changed, 3 insertions(+), 2 deletions(-)

diff --git a/eclass/qt6-build.eclass b/eclass/qt6-build.eclass
index 2990b41a9e95..18f317e32e16 100644
--- a/eclass/qt6-build.eclass
+++ b/eclass/qt6-build.eclass
@@ -258,12 +258,13 @@ _qt6-build_match_cpu_flags() {
 				[[ ${intrin} ]] && flags+=( -mno-${intrin} )
 			done
 	done < <(
-		# TODO: review if can drop fma= matching after QTBUG-116357
+		# TODO: drop ver_test and ${fma} when <6.5.3 is gone
+		ver_test ${PV} -ge 6.5.3 && fma= || fma=fma
 		$(tc-getCXX) -E -P ${CXXFLAGS} ${CPPFLAGS} - <<-EOF | tail -n 2
 			#if defined(__GNUC__) && (defined(__x86_64__) || defined(__i386__))
 			#include <x86intrin.h>
 			#endif
-			avx2=__AVX2__ =__BMI__ =__BMI2__ =__F16C__ fma=__FMA__ =__LZCNT__ =__POPCNT__
+			avx2=__AVX2__ =__BMI__ =__BMI2__ =__F16C__ ${fma}=__FMA__ =__LZCNT__ =__POPCNT__
 			avx512f=__AVX512F__ avx512bw=__AVX512BW__ avx512cd=__AVX512CD__ avx512dq=__AVX512DQ__ avx512vl=__AVX512VL__
 		EOF
 		assert


^ permalink raw reply related	[flat|nested] 6131+ messages in thread

* [gentoo-commits] repo/gentoo:master commit in: eclass/
@ 2023-09-15 20:49 Maciej Barć
  0 siblings, 0 replies; 6131+ messages in thread
From: Maciej Barć @ 2023-09-15 20:49 UTC (permalink / raw
  To: gentoo-commits

commit:     a87a7aaecdff4dd41209ec2e467ebd5aab61494e
Author:     Maciej Barć <xgqt <AT> gentoo <DOT> org>
AuthorDate: Fri Sep 15 14:32:25 2023 +0000
Commit:     Maciej Barć <xgqt <AT> gentoo <DOT> org>
CommitDate: Fri Sep 15 20:46:59 2023 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=a87a7aae

eclass/nuget.eclass: add new nuget eclass

common functions and variables for handling .NET NuGets

Bug: https://bugs.gentoo.org/900597
Bug: https://github.com/gentoo/gentoo/pull/32109
Signed-off-by: Maciej Barć <xgqt <AT> gentoo.org>

 eclass/nuget.eclass | 197 ++++++++++++++++++++++++++++++++++++++++++++++++++++
 1 file changed, 197 insertions(+)

diff --git a/eclass/nuget.eclass b/eclass/nuget.eclass
new file mode 100644
index 000000000000..8ac81497f523
--- /dev/null
+++ b/eclass/nuget.eclass
@@ -0,0 +1,197 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+# @ECLASS: nuget.eclass
+# @MAINTAINER:
+# Gentoo Dotnet project <dotnet@gentoo.org>
+# @AUTHOR:
+# Anna Figueiredo Gomes <navi@vlhl.dev>
+# Maciej Barć <xgqt@gentoo.org>
+# @SUPPORTED_EAPIS: 8
+# @BLURB: common functions and variables for handling .NET NuGets
+# @DESCRIPTION:
+# This eclass is designed to provide support for .NET NuGet's ".nupkg" files.
+# It is used to handle NuGets installation and usage.
+# "dotnet-pkg" and "dotnet-pkg-utils" inherit this eclass.
+#
+# This eclass does not export any phase functions, for that see
+# the "dotnet-pkg" eclass.
+
+case ${EAPI} in
+	8) ;;
+	*) die "${ECLASS}: EAPI ${EAPI:-0} not supported" ;;
+esac
+
+if [[ -z ${_NUGET_ECLASS} ]] ; then
+_NUGET_ECLASS=1
+
+# @ECLASS_VARIABLE: NUGET_SYSTEM_NUGETS
+# @DESCRIPTION:
+# Location of the system NuGet packages directory.
+readonly NUGET_SYSTEM_NUGETS=/opt/dotnet-nugets
+
+# @ECLASS_VARIABLE: NUGET_APIS
+# @PRE_INHERIT
+# @DESCRIPTION:
+# NuGet API URLs to use for precompiled NuGet package ".nupkg" downloads.
+# Set this variable pre-inherit.
+#
+# Defaults to an array of one item:
+# "https://api.nuget.org/v3-flatcontainer"
+#
+# Example:
+# @CODE
+# NUGET_APIS+=( "https://api.nuget.org/v3-flatcontainer" )
+# inherit nuget
+# SRC_URI="https://example.com/example.tar.xz"
+# SRC_URI+=" ${NUGET_URIS} "
+# @CODE
+if [[ -z "${NUGET_APIS}" ]] ; then
+	NUGET_APIS=( "https://api.nuget.org/v3-flatcontainer" )
+fi
+
+# @ECLASS_VARIABLE: NUGET_PACKAGES
+# @DEFAULT_UNSET
+# @PRE_INHERIT
+# @DESCRIPTION:
+# Path from where NuGets will be restored from.
+# This is a special variable that modifies the behavior of "dotnet".
+#
+# Defaults to ${T}/nugets for use with "NUGETS" but may be set to a custom
+# location to, for example, restore NuGets extracted from a prepared archive.
+# Do not set this variable in conjunction with non-empty "NUGETS".
+if [[ -n "${NUGETS}" || -z "${NUGET_PACKAGES}" ]] ; then
+	NUGET_PACKAGES="${T}"/nugets
+fi
+export NUGET_PACKAGES
+
+# @ECLASS_VARIABLE: NUGETS
+# @DEFAULT_UNSET
+# @PRE_INHERIT
+# @DESCRIPTION:
+# String containing all NuGet packages that need to be downloaded.
+#
+# Used by "_nuget_uris".
+#
+# Example:
+# @CODE
+# NUGETS="
+#	ImGui.NET@1.87.2
+#	Config.Net@4.19.0
+# "
+#
+# inherit dotnet-pkg
+#
+# ...
+#
+# SRC_URI+=" ${NUGET_URIS} "
+# @CODE
+
+# @ECLASS_VARIABLE: NUGET_URIS
+# @OUTPUT_VARIABLE
+# @DESCRIPTION:
+# List of URIs to put in SRC_URI created from NUGETS variable.
+
+# @FUNCTION: _nuget_set_nuget_uris
+# @USAGE: <nugets>
+# @DESCRIPTION:
+# Generates the URIs to put in SRC_URI to help fetch dependencies.
+# Constructs a list of NuGets from its arguments.
+# The value is set as "NUGET_URIS".
+_nuget_set_nuget_uris() {
+	local nugets="${1}"
+
+	NUGET_URIS=""
+
+	local nuget
+	local name version
+	local nuget_api url
+	for nuget in ${nugets} ; do
+		name="${nuget%@*}"
+		version="${nuget##*@}"
+
+		for nuget_api in "${NUGET_APIS[@]}" ; do
+			case ${nuget_api%/} in
+				*/v2 )
+					url="${nuget_api}/package/${name}/${version}
+							-> ${name}.${version}.nupkg"
+					;;
+				* )
+					url="${nuget_api}/${name}/${version}/${name}.${version}.nupkg"
+					;;
+			esac
+
+			NUGET_URIS+="${url} "
+		done
+	done
+}
+
+_nuget_set_nuget_uris "${NUGETS}"
+
+# @FUNCTION: nuget_link
+# @USAGE: <nuget-path>
+# @DESCRIPTION:
+# Link a specified NuGet package at "nuget-path" to the "NUGET_PACKAGES"
+# directory.
+#
+# Example:
+# @CODE
+# nuget_link "${DISTDIR}"/pkg.0.nupkg
+# @CODE
+#
+# This function is used inside "dotnet-pkg_src_unpack"
+# from the "dotnet-pkg" eclass.
+nuget_link() {
+	[[ -z "${1}" ]] && die "${FUNCNAME[0]}: no nuget path given"
+
+	mkdir -p "${NUGET_PACKAGES}" || die
+
+	local nuget_name="${1##*/}"
+
+	if [[ -f "${NUGET_PACKAGES}/${nuget_name}" ]] ; then
+		eqawarn "QA Notice: \"${nuget_name}\" already exists, not linking it"
+	else
+		ln -s "${1}" "${NUGET_PACKAGES}/${nuget_name}" || die
+	fi
+}
+
+# @FUNCTION: nuget_link-system-nugets
+# @DESCRIPTION:
+# Link all system NuGet packages to the "NUGET_PACKAGES" directory.
+#
+# Example:
+# @CODE
+# src_unpack() {
+#     nuget_link-system-nugets
+#     default
+# }
+# @CODE
+#
+# This function is used inside "dotnet-pkg_src_unpack"
+# from the "dotnet-pkg" eclass.
+nuget_link-system-nugets() {
+	local runtime_nuget
+	for runtime_nuget in "${EPREFIX}${NUGET_SYSTEM_NUGETS}"/*.nupkg ; do
+		if [[ -f "${runtime_nuget}" ]] ; then
+			nuget_link "${runtime_nuget}"
+		fi
+	done
+}
+
+# @FUNCTION: nuget_donuget
+# @USAGE: <nuget-path> ...
+# @DESCRIPTION:
+# Install NuGet package(s) at "nuget-path" to the system nugets directory.
+#
+# Example:
+# @CODE
+# src_install() {
+#     nuget_donuget my-pkg.nupkg
+# }
+# @CODE
+nuget_donuget() {
+	insinto "${NUGET_SYSTEM_NUGETS}"
+	doins "${@}"
+}
+
+fi


^ permalink raw reply related	[flat|nested] 6131+ messages in thread

* [gentoo-commits] repo/gentoo:master commit in: eclass/
@ 2023-09-15 20:49 Maciej Barć
  0 siblings, 0 replies; 6131+ messages in thread
From: Maciej Barć @ 2023-09-15 20:49 UTC (permalink / raw
  To: gentoo-commits

commit:     33953bf9dd7aef94ab2d5862cb003765d749566f
Author:     Maciej Barć <xgqt <AT> gentoo <DOT> org>
AuthorDate: Fri Sep 15 14:46:52 2023 +0000
Commit:     Maciej Barć <xgqt <AT> gentoo <DOT> org>
CommitDate: Fri Sep 15 20:46:59 2023 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=33953bf9

eclass/dotnet-pkg-base.eclass: add new dotnet-pkg-base eclass

common functions and variables for builds using .NET SDK

Bug: https://bugs.gentoo.org/900597
Bug: https://github.com/gentoo/gentoo/pull/32109
Signed-off-by: Maciej Barć <xgqt <AT> gentoo.org>

 eclass/dotnet-pkg-base.eclass | 628 ++++++++++++++++++++++++++++++++++++++++++
 1 file changed, 628 insertions(+)

diff --git a/eclass/dotnet-pkg-base.eclass b/eclass/dotnet-pkg-base.eclass
new file mode 100644
index 000000000000..c7f2e031daec
--- /dev/null
+++ b/eclass/dotnet-pkg-base.eclass
@@ -0,0 +1,628 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+# @ECLASS: dotnet-pkg-base.eclass
+# @MAINTAINER:
+# Gentoo Dotnet project <dotnet@gentoo.org>
+# @AUTHOR:
+# Anna Figueiredo Gomes <navi@vlhl.dev>
+# Maciej Barć <xgqt@gentoo.org>
+# @SUPPORTED_EAPIS: 8
+# @PROVIDES: nuget
+# @BLURB: common functions and variables for builds using .NET SDK
+# @DESCRIPTION:
+# This eclass is designed to provide required ebuild definitions for .NET
+# packages. Beware that in addition to Gentoo-specific concepts also terms that
+# should be known to people familiar with the .NET ecosystem are used through
+# this one and similar eclasses.
+#
+# In ebuilds for software that only utilizes the .NET SDK, without special
+# cases, the "dotnet-pkg.eclass" is probably better suited.
+#
+# This eclass does not export any phase functions, for that see
+# the "dotnet-pkg" eclass.
+
+case ${EAPI} in
+	8) ;;
+	*) die "${ECLASS}: EAPI ${EAPI:-0} not supported" ;;
+esac
+
+if [[ -z ${_DOTNET_PKG_BASE_ECLASS} ]] ; then
+_DOTNET_PKG_BASE_ECLASS=1
+
+inherit edo multiprocessing nuget
+
+# @ECLASS_VARIABLE: DOTNET_PKG_COMPAT
+# @REQUIRED
+# @PRE_INHERIT
+# @DESCRIPTION:
+# Allows to choose a slot for dotnet.
+#
+# Most .NET packages will lock onto one supported .NET major version.
+# DOTNET_PKG_COMPAT should specify which version was chosen by package upstream.
+# In case multiple .NET versions are specified in the project, then the highest
+# should be picked by the maintainer.
+
+# @ECLASS_VARIABLE: DOTNET_PKG_RDEPS
+# @DESCRIPTION:
+# Populated with important dependencies on .NET ecosystem packages for running
+# .NET packages.
+#
+# "DOTNET_PKG_RDEPS" should appear (or conditionally appear) in "RDEPEND".
+DOTNET_PKG_RDEPS=""
+
+# @ECLASS_VARIABLE: DOTNET_PKG_BDEPS
+# @DESCRIPTION:
+# Populated with important dependencies on .NET ecosystem packages for building
+# .NET packages.
+#
+# "DOTNET_PKG_BDEPS" should appear (or conditionally appear) in "BDEPEND".
+DOTNET_PKG_BDEPS=""
+
+# Have this guard to be sure that *DEPS are not added to
+# the "dev-dotnet/dotnet-runtime-nugets" package dependencies.
+if [[ ${CATEGORY}/${PN} != dev-dotnet/dotnet-runtime-nugets ]] ; then
+	if [[ -z ${DOTNET_PKG_COMPAT} ]] ; then
+		die "${ECLASS}: DOTNET_PKG_COMPAT not set"
+	fi
+
+	DOTNET_PKG_RDEPS+=" virtual/dotnet-sdk:${DOTNET_PKG_COMPAT} "
+	DOTNET_PKG_BDEPS+=" ${DOTNET_PKG_RDEPS} "
+
+	# Special package "dev-dotnet/csharp-gentoodotnetinfo" used for information
+	# gathering, example for usage see the "dotnet-pkg-base_info" function.
+	if [[ ${CATEGORY}/${PN} != dev-dotnet/csharp-gentoodotnetinfo ]] ; then
+		DOTNET_PKG_BDEPS+=" dev-dotnet/csharp-gentoodotnetinfo "
+	fi
+
+	IUSE+=" debug "
+fi
+
+# Needed otherwise the binaries may break.
+RESTRICT+=" strip "
+
+# Everything is built by "dotnet".
+QA_PREBUILT=".*"
+
+# Special .NET SDK environment variables.
+# Setting them either prevents annoying information from being generated
+# or stops services that may interfere with a clean package build.
+export DOTNET_CLI_TELEMETRY_OPTOUT=1
+export DOTNET_NOLOGO=1
+export DOTNET_SKIP_FIRST_TIME_EXPERIENCE=1
+export MSBUILDDISABLENODEREUSE=1
+export POWERSHELL_TELEMETRY_OPTOUT=1
+export POWERSHELL_UPDATECHECK=0
+# Overwrite selected MSBuild properties ("-p:XYZ").
+export UseSharedCompilation=false
+
+# @ECLASS_VARIABLE: DOTNET_PKG_RUNTIME
+# @DEFAULT_UNSET
+# @DESCRIPTION:
+# Sets the runtime used to build a package.
+#
+# This variable is set automatically by the "dotnet-pkg-base_setup" function.
+
+# @ECLASS_VARIABLE: DOTNET_PKG_EXECUTABLE
+# @DEFAULT_UNSET
+# @DESCRIPTION:
+# Sets path of a "dotnet" executable.
+#
+# This variable is set automatically by the "dotnet-pkg-base_setup" function.
+
+# @ECLASS_VARIABLE: DOTNET_PKG_CONFIGURATION
+# @DEFAULT_UNSET
+# @DESCRIPTION:
+# Configuration value passed to "dotnet" in the compile phase.
+# Is either Debug or Release, depending on the "debug" USE flag.
+#
+# This variable is set automatically by the "dotnet-pkg-base_setup" function.
+
+# @ECLASS_VARIABLE: DOTNET_PKG_OUTPUT
+# @DEFAULT_UNSET
+# @DESCRIPTION:
+# Path of the output directory, where the package artifacts are placed during
+# the building of packages with "dotnet-pkg-base_build" function.
+#
+# This variable is set automatically by the "dotnet-pkg-base_setup" function.
+
+# @VARIABLE: _DOTNET_PKG_LAUNCHERDEST
+# @INTERNAL
+# @DESCRIPTION:
+# Sets the path that .NET launchers are installed into by
+# the "dotnet-pkg-base_dolauncher" function.
+#
+# The function "dotnet-pkg-base_launcherinto" is able to manipulate this
+# variable.
+#
+# Defaults to "/usr/bin".
+_DOTNET_PKG_LAUNCHERDEST=/usr/bin
+
+# @VARIABLE: _DOTNET_PKG_LAUNCHERVARS
+# @INTERNAL
+# @DESCRIPTION:
+# Sets additional variables for .NET launchers created by
+# the "dotnet-pkg-base_dolauncher" function.
+#
+# The function "dotnet-pkg-base_append_launchervar" is able to manipulate this
+# variable.
+#
+# Defaults to a empty array.
+_DOTNET_PKG_LAUNCHERVARS=()
+
+# @FUNCTION: dotnet-pkg-base_get-configuration
+# @DESCRIPTION:
+# Return .NET configuration type of the current package.
+#
+# It is advised to refer to the "DOTNET_PKG_CONFIGURATION" variable instead of
+# calling this function if necessary.
+#
+# Used by "dotnet-pkg-base_setup".
+dotnet-pkg-base_get-configuration() {
+	if in_iuse debug && use debug ; then
+		echo Debug
+	else
+		echo Release
+	fi
+}
+
+# @FUNCTION: dotnet-pkg-base_get-output
+# @USAGE: <name>
+# @DESCRIPTION:
+# Return a specially constructed name of a directory for output of
+# "dotnet build" artifacts ("--output" flag, see "dotnet-pkg-base_build").
+#
+# It is very rare that a maintainer would use this function in an ebuild.
+#
+# This function is used inside "dotnet-pkg-base_setup".
+dotnet-pkg-base_get-output() {
+	debug-print-function "${FUNCNAME[0]}" "${@}"
+
+	[[ -z ${DOTNET_PKG_CONFIGURATION} ]] &&
+		die "${FUNCNAME[0]}: DOTNET_PKG_CONFIGURATION is not set."
+
+	echo "${WORKDIR}/${1}_net${DOTNET_PKG_COMPAT}_${DOTNET_PKG_CONFIGURATION}"
+}
+
+# @FUNCTION: dotnet-pkg-base_get-runtime
+# @DESCRIPTION:
+# Return the .NET runtime used for the current package.
+#
+# Used by "dotnet-pkg-base_setup".
+dotnet-pkg-base_get-runtime() {
+	local libc
+	libc="$(usex elibc_musl "-musl" "")"
+
+	if use amd64 ; then
+		echo "linux${libc}-x64"
+	elif use x86 ; then
+		echo "linux${libc}-x86"
+	elif use arm ; then
+		echo "linux${libc}-arm"
+	elif use arm64 ; then
+		echo "linux${libc}-arm64"
+	else
+		die "${FUNCNAME[0]}: Unsupported architecture: ${ARCH}"
+	fi
+}
+
+# @FUNCTION: dotnet-pkg-base_setup
+# @DESCRIPTION:
+# Sets up "DOTNET_PKG_EXECUTABLE" variable for later use in "edotnet".
+# Also sets up "DOTNET_PKG_CONFIGURATION" and "DOTNET_PKG_OUTPUT"
+# for "dotnet-pkg_src_configure" and "dotnet-pkg_src_compile".
+#
+# This functions should be called by "pkg_setup".
+#
+# Used by "dotnet-pkg_pkg_setup" from the "dotnet-pkg" eclass.
+dotnet-pkg-base_setup() {
+	local dotnet_compat_impl
+	local dotnet_compat_impl_path
+	for dotnet_compat_impl in dotnet{,-bin}-${DOTNET_PKG_COMPAT} ; do
+		dotnet_compat_impl_path="$(type -P "${dotnet_compat_impl}")"
+
+		if [[ -n ${dotnet_compat_impl_path} ]] ; then
+			DOTNET_PKG_EXECUTABLE=${dotnet_compat_impl}
+			DOTNET_PKG_EXECUTABLE_PATH="${dotnet_compat_impl_path}"
+
+			break
+		fi
+	done
+
+	# Link "DOTNET_PKG_EXECUTABLE" to "dotnet" only for the package build.
+	local dotnet_spoof_path="${T}"/dotnet_spoof/${DOTNET_PKG_COMPAT}
+	mkdir -p "${dotnet_spoof_path}" || die
+	ln -s "${DOTNET_PKG_EXECUTABLE_PATH}" "${dotnet_spoof_path}"/dotnet || die
+	export PATH="${dotnet_spoof_path}:${PATH}"
+
+	einfo "Using dotnet SDK \"${DOTNET_PKG_EXECUTABLE}\" from \"${DOTNET_PKG_EXECUTABLE_PATH}\"."
+
+	# The picked "DOTNET_PKG_EXECUTABLE" should set "DOTNET_ROOT" internally
+	# and not rely upon this environment variable.
+	unset DOTNET_ROOT
+
+	# Unset .NET and NuGet directories.
+	unset DOTNET_DATA
+	unset NUGET_DATA
+
+	DOTNET_PKG_RUNTIME="$(dotnet-pkg-base_get-runtime)"
+	DOTNET_PKG_CONFIGURATION="$(dotnet-pkg-base_get-configuration)"
+	DOTNET_PKG_OUTPUT="$(dotnet-pkg-base_get-output "${P}")"
+}
+
+# @FUNCTION: dotnet-pkg-base_remove-global-json
+# @USAGE: [directory]
+# @DESCRIPTION:
+# Remove the "global.json" if it exists.
+# The file in question might lock target package to a specified .NET
+# version, which might be unnecessary (as it is in most cases).
+#
+# Optional "directory" argument defaults to the current directory path.
+#
+# Used by "dotnet-pkg_src_prepare" from the "dotnet-pkg" eclass.
+dotnet-pkg-base_remove-global-json() {
+	debug-print-function "${FUNCNAME[0]}" "${@}"
+
+	local file="${1:-.}"/global.json
+
+	if [[ -f "${file}" ]] ; then
+		ebegin "Removing the global.json file"
+		rm "${file}"
+		eend ${?} || die "${FUNCNAME[0]}: failed to remove ${file}"
+	fi
+}
+
+# @FUNCTION: edotnet
+# @USAGE: <command> [args...]
+# @DESCRIPTION:
+# Call dotnet, passing the supplied arguments.
+edotnet() {
+	debug-print-function "${FUNCNAME[0]}" "${@}"
+
+	if [[ -z ${DOTNET_PKG_EXECUTABLE} ]] ; then
+	   die "${FUNCNAME[0]}: DOTNET_PKG_EXECUTABLE not set. Was dotnet-pkg-base_setup called?"
+	fi
+
+	edo "${DOTNET_PKG_EXECUTABLE}" "${@}"
+}
+
+# @FUNCTION: dotnet-pkg-base_info
+# @DESCRIPTION:
+# Show information about current .NET SDK that is being used.
+#
+# Depends upon the "gentoo-dotnet-info" program installed by
+# the "dev-dotnet/csharp-gentoodotnetinfo" package.
+#
+# Used by "dotnet-pkg_src_configure" from the "dotnet-pkg" eclass.
+dotnet-pkg-base_info() {
+	if [[ ${CATEGORY}/${PN} == dev-dotnet/csharp-gentoodotnetinfo ]] ; then
+		debug-print-function "${FUNCNAME[0]}: ${P} is a special package, skipping dotnet-pkg-base_info"
+	elif command -v gentoo-dotnet-info >/dev/null ; then
+		gentoo-dotnet-info || die "${FUNCNAME[0]}: failed to execute gentoo-dotnet-info"
+	else
+		ewarn "${FUNCNAME[0]}: gentoo-dotnet-info not available"
+	fi
+}
+
+# @FUNCTION: dotnet-pkg-base_foreach-solution
+# @USAGE: <function> [directory]
+# @DESCRIPTION:
+# Execute a function for each solution file (.sln) in a specified directory.
+# This function may yield no real results because solutions are discovered
+# automatically.
+#
+# Optional "directory" argument defaults to the current directory path.
+#
+# Used by "dotnet-pkg_src_configure" from the "dotnet-pkg" eclass.
+dotnet-pkg-base_foreach-solution() {
+	debug-print-function "${FUNCNAME[0]}" "${@}"
+
+	local dotnet_solution
+	local dotnet_solution_name
+	while read -r dotnet_solution ; do
+		dotnet_solution_name="$(basename "${dotnet_solution}")"
+
+		ebegin "Running \"${1}\" for solution: \"${dotnet_solution_name}\""
+		"${1}" "${dotnet_solution}"
+		eend $? "${FUNCNAME[0]}: failed for solution: \"${dotnet_solution}\"" || die
+	done < <(find "${2:-.}" -maxdepth 1 -type f -name "*.sln")
+}
+
+# @FUNCTION: dotnet-pkg-base_restore
+# @USAGE: [directory] [args] ...
+# @DESCRIPTION:
+# Restore the package using "dotnet restore" in a specified directory.
+#
+# Optional "directory" argument defaults to the current directory path.
+#
+# Additionally any number of "args" maybe be given, they are appended to
+# the "dotnet" command invocation.
+#
+# Used by "dotnet-pkg_src_configure" from the "dotnet-pkg" eclass.
+dotnet-pkg-base_restore() {
+	debug-print-function "${FUNCNAME[0]}" "${@}"
+
+	local directory
+	if [[ "${1}" ]] ; then
+		directory="${1}"
+		shift
+	else
+		directory="$(pwd)"
+	fi
+
+	local -a restore_args=(
+		--runtime "${DOTNET_PKG_RUNTIME}"
+		--source "${NUGET_PACKAGES}"
+		-maxCpuCount:$(makeopts_jobs)
+		"${@}"
+	)
+
+	edotnet restore "${restore_args[@]}" "${directory}"
+}
+
+# @FUNCTION: dotnet-pkg-base_restore_tools
+# @USAGE: [config-file] [args] ...
+# @DESCRIPTION:
+# Restore dotnet tools for a project in the current directory.
+#
+# Optional "config-file" argument is used to specify a file for the
+# "--configfile" option which records what tools should be restored.
+#
+# Additionally any number of "args" maybe be given, they are appended to
+# the "dotnet" command invocation.
+dotnet-pkg-base_restore_tools() {
+	debug-print-function "${FUNCNAME[0]}" "${@}"
+
+	local -a tool_restore_args=(
+		--add-source "${NUGET_PACKAGES}"
+	)
+
+	if [[ "${1}" ]] ; then
+		tool_restore_args+=( --configfile "${1}" )
+		shift
+	fi
+
+	tool_restore_args+=( "${@}" )
+
+	edotnet tool restore "${tool_restore_args[@]}"
+}
+
+# @FUNCTION: dotnet-pkg-base_build
+# @USAGE: [directory] [args] ...
+# @DESCRIPTION:
+# Build the package using "dotnet build" in a specified directory.
+#
+# Optional "directory" argument defaults to the current directory path.
+#
+# Additionally any number of "args" maybe be given, they are appended to
+# the "dotnet" command invocation.
+#
+# Used by "dotnet-pkg_src_compile" from the "dotnet-pkg" eclass.
+dotnet-pkg-base_build() {
+	debug-print-function "${FUNCNAME[0]}" "${@}"
+
+	local directory
+	if [[ "${1}" ]] ; then
+		directory="${1}"
+		shift
+	else
+		directory="$(pwd)"
+	fi
+
+	local -a build_args=(
+		--configuration "${DOTNET_PKG_CONFIGURATION}"
+		--no-restore
+		--no-self-contained
+		--output "${DOTNET_PKG_OUTPUT}"
+		--runtime "${DOTNET_PKG_RUNTIME}"
+		-maxCpuCount:$(makeopts_jobs)
+		"${@}"
+	)
+
+	if ! use debug ; then
+		build_args+=(
+			-p:StripSymbols=true
+			-p:NativeDebugSymbols=false
+		)
+	fi
+
+	edotnet build "${build_args[@]}" "${directory}"
+}
+
+# @FUNCTION: dotnet-pkg-base_test
+# @USAGE: [directory] [args] ...
+# @DESCRIPTION:
+# Test the package using "dotnet test" in a specified directory.
+#
+# Optional "directory" argument defaults to the current directory path.
+#
+# Additionally any number of "args" maybe be given, they are appended to
+# the "dotnet" command invocation.
+#
+# Used by "dotnet-pkg_src_test" from the "dotnet-pkg" eclass.
+dotnet-pkg-base_test() {
+	debug-print-function "${FUNCNAME[0]}" "${@}"
+
+	local directory
+	if [[ "${1}" ]] ; then
+		directory="${1}"
+		shift
+	else
+		directory="$(pwd)"
+	fi
+
+	local -a test_args=(
+		--configuration "${DOTNET_PKG_CONFIGURATION}"
+		--no-restore
+		-maxCpuCount:$(makeopts_jobs)
+		"${@}"
+	)
+
+	edotnet test "${test_args[@]}" "${directory}"
+}
+
+# @FUNCTION: dotnet-pkg-base_install
+# @USAGE: [directory]
+# @DESCRIPTION:
+# Install the contents of "DOTNET_PKG_OUTPUT" into a directory, defaults to
+# "/usr/share/${P}".
+#
+# Installation directory is relative to "ED".
+dotnet-pkg-base_install() {
+	debug-print-function "${FUNCNAME[0]}" "${@}"
+
+	local installation_directory="${1:-/usr/share/${P}}"
+
+	dodir "${installation_directory}"
+	cp -r "${DOTNET_PKG_OUTPUT}"/* "${ED}/${installation_directory}/" || die
+}
+
+# @FUNCTION: dotnet-pkg-base_launcherinto
+# @USAGE: <directory>
+# @DESCRIPTION:
+# Changes the path .NET launchers are installed into via subsequent
+# "dotnet-pkg-base_dolauncher" calls.
+#
+# For more info see the "_DOTNET_PKG_LAUNCHERDEST" variable.
+dotnet-pkg-base_launcherinto() {
+	debug-print-function "${FUNCNAME[0]}" "${@}"
+
+	[[ -z ${1} ]] && die "${FUNCNAME[0]}: no directory specified"
+
+	_DOTNET_PKG_LAUNCHERDEST="${1}"
+}
+
+# @FUNCTION: dotnet-pkg-base_append_launchervar
+# @USAGE: <variable-setting>
+# @DESCRIPTION:
+# Appends a given variable setting to the "_DOTNET_PKG_LAUNCHERVARS".
+#
+# WARNING: This functions modifies a global variable permanently!
+# This means that all launchers created in subsequent
+# "dotnet-pkg-base_dolauncher" calls of a given package will have
+# the given variable set.
+#
+# Example:
+# @CODE
+# dotnet-pkg-base_append_launchervar "DOTNET_EnableAlternateStackCheck=1"
+# @CODE
+#
+# For more info see the "_DOTNET_PKG_LAUNCHERVARS" variable.
+dotnet-pkg-base_append_launchervar() {
+	debug-print-function "${FUNCNAME[0]}" "${@}"
+
+	[[ -z ${1} ]] && die "${FUNCNAME[0]}: no variable setting specified"
+
+	_DOTNET_PKG_LAUNCHERVARS+=( "${1}" )
+}
+
+# @FUNCTION: dotnet-pkg-base_dolauncher
+# @USAGE: <executable-path> [filename]
+# @DESCRIPTION:
+# Make a wrapper script to launch an executable built from a .NET package.
+#
+# If no file name is given, the `basename` of the executable is used.
+#
+# Parameters:
+# ${1} - path of the executable to launch,
+# ${2} - filename of launcher to create (optional).
+#
+# Example:
+# @CODE
+# dotnet-pkg-base_install
+# dotnet-pkg-base_dolauncher /usr/share/${P}/${PN^}
+# @CODE
+#
+# The path is prepended by "EPREFIX".
+dotnet-pkg-base_dolauncher() {
+	debug-print-function "${FUNCNAME[0]}" "${@}"
+
+	local executable_path executable_name
+
+	if [[ "${1}" ]] ; then
+		local executable_path="${1}"
+		shift
+	else
+		die "${FUNCNAME[0]}: No executable path given."
+	fi
+
+	if [[ ${#} -eq 0 ]] ; then
+		executable_name="$(basename "${executable_path}")"
+	else
+		executable_name="${1}"
+		shift
+	fi
+
+	local executable_target="${T}/${executable_name}"
+
+	cat <<-EOF > "${executable_target}" || die
+	#!/bin/sh
+
+	# Launcher script for ${executable_path} (${executable_name}),
+	# created from package "${CATEGORY}/${P}",
+	# compatible with dotnet version ${DOTNET_PKG_COMPAT}.
+
+	for __dotnet_root in \\
+		${EPREFIX}/usr/$(get_libdir)/dotnet-sdk-${DOTNET_PKG_COMPAT} \\
+		${EPREFIX}/opt/dotnet-sdk-bin-${DOTNET_PKG_COMPAT} ; do
+		[ -d \${__dotnet_root} ] && break
+	done
+
+	DOTNET_ROOT="\${__dotnet_root}"
+	export DOTNET_ROOT
+
+	$(for var in "${_DOTNET_PKG_LAUNCHERVARS[@]}" ; do
+		echo "${var}"
+		echo "export ${var%%=*}"
+	done)
+
+	exec "${EPREFIX}${executable_path}" "\${@}"
+	EOF
+
+	exeinto "${_DOTNET_PKG_LAUNCHERDEST}"
+	doexe "${executable_target}"
+}
+
+# @FUNCTION: dotnet-pkg-base_dolauncher_portable
+# @USAGE: <dll-path> <filename>
+# @DESCRIPTION:
+# Make a wrapper script to launch a .NET DLL file built from a .NET package.
+#
+# Parameters:
+# ${1} - path of the DLL to launch,
+# ${2} - filename of launcher to create.
+#
+# Example:
+# @CODE
+# dotnet-pkg-base_dolauncher_portable \
+#     /usr/share/${P}/GentooDotnetInfo.dll gentoo-dotnet-info
+# @CODE
+#
+# The path is prepended by "EPREFIX".
+dotnet-pkg-base_dolauncher_portable() {
+	debug-print-function "${FUNCNAME[0]}" "${@}"
+
+	local dll_path="${1}"
+	local executable_name="${2}"
+	local executable_target="${T}/${executable_name}"
+
+	cat <<-EOF > "${executable_target}" || die
+	#!/bin/sh
+
+	# Launcher script for ${dll_path} (${executable_name}),
+	# created from package "${CATEGORY}/${P}",
+	# compatible with any dotnet version, built on ${DOTNET_PKG_COMPAT}.
+
+	$(for var in "${_DOTNET_PKG_LAUNCHERVARS[@]}" ; do
+		echo "${var}"
+		echo "export ${var%%=*}"
+	done)
+
+	exec dotnet exec "${EPREFIX}${dll_path}" "\${@}"
+	EOF
+
+	exeinto "${_DOTNET_PKG_LAUNCHERDEST}"
+	doexe "${executable_target}"
+}
+
+fi


^ permalink raw reply related	[flat|nested] 6131+ messages in thread

* [gentoo-commits] repo/gentoo:master commit in: eclass/
@ 2023-09-15 20:49 Maciej Barć
  0 siblings, 0 replies; 6131+ messages in thread
From: Maciej Barć @ 2023-09-15 20:49 UTC (permalink / raw
  To: gentoo-commits

commit:     fd3d39616f2a7ff01ce9f692d14d17a6b4d1a08e
Author:     Maciej Barć <xgqt <AT> gentoo <DOT> org>
AuthorDate: Fri Sep 15 14:49:48 2023 +0000
Commit:     Maciej Barć <xgqt <AT> gentoo <DOT> org>
CommitDate: Fri Sep 15 20:47:00 2023 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=fd3d3961

eclass/dotnet-pkg.eclass: add new dotnet-pkg eclass

common functions and variables for .NET packages

Bug: https://bugs.gentoo.org/900597
Bug: https://github.com/gentoo/gentoo/pull/32109
Signed-off-by: Maciej Barć <xgqt <AT> gentoo.org>

 eclass/dotnet-pkg.eclass | 263 +++++++++++++++++++++++++++++++++++++++++++++++
 1 file changed, 263 insertions(+)

diff --git a/eclass/dotnet-pkg.eclass b/eclass/dotnet-pkg.eclass
new file mode 100644
index 000000000000..05886af8554f
--- /dev/null
+++ b/eclass/dotnet-pkg.eclass
@@ -0,0 +1,263 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+# @ECLASS: dotnet-pkg.eclass
+# @MAINTAINER:
+# Gentoo Dotnet project <dotnet@gentoo.org>
+# @AUTHOR:
+# Anna Figueiredo Gomes <navi@vlhl.dev>
+# Maciej Barć <xgqt@gentoo.org>
+# @SUPPORTED_EAPIS: 8
+# @PROVIDES: dotnet-pkg-base nuget
+# @BLURB: common functions and variables for .NET packages
+# @DESCRIPTION:
+# This eclass is designed to help with building and installing packages that
+# use the .NET SDK.
+# It provides the required phase functions and special variables that make
+# it easier to write ebuilds for .NET packages.
+# If you do not use the exported phase functions, then consider using
+# the "dotnet-pkg-base.eclass" instead.
+#
+# .NET SDK is a open-source framework from Microsoft, it is a cross-platform
+# successor to .NET Framework.
+#
+# .NET packages require proper inspection before packaging:
+# - the compatible .NET SDK version has to be declared,
+#   this can be done by inspecting the package's "*.proj" files,
+#   unlike JAVA, .NET packages tend to lock onto one exact selected .NET SDK
+#   version, so building with other .NET versions will be mostly unsupported,
+# - Nugets, packages' .NET dependencies, which are similar to JAVA's JARs,
+#   have to be listed using either the "NUGETS" variable or bundled inside
+#   a "prebuilt" archive, in second case also the "NUGET_PACKAGES" variable
+#   has to be explicitly set.
+# - the main project file (*.proj) that builds the project has to be specified
+#   by the "DOTNET_PROJECT" variable.
+
+case ${EAPI} in
+	8) ;;
+	*) die "${ECLASS}: EAPI ${EAPI:-0} not supported" ;;
+esac
+
+if [[ -z ${_DOTNET_PKG_ECLASS} ]] ; then
+_DOTNET_PKG_ECLASS=1
+
+inherit dotnet-pkg-base
+
+# Append to "RDEPEND" and "BDEPEND" "DOTNET_PKG_RDEPS" and "DOTNET_PKG_BDEPS"
+# generated by "dotnet-pkg-base" eclass.
+RDEPEND+=" ${DOTNET_PKG_RDEPS} "
+BDEPEND+=" ${DOTNET_PKG_BDEPS} "
+
+# @ECLASS_VARIABLE: DOTNET_PKG_PROJECTS
+# @DEFAULT_UNSET
+# @DESCRIPTION:
+# Path to the main .NET project files (".csproj", ".fsproj", ".vbproj")
+# used by default by "dotnet-pkg_src_compile" phase function.
+#
+# In .NET version 6.0 and lower it was possible to build a project solution
+# (".sln") immediately with output to a specified directory ("--output DIR"),
+# but versions >= 7.0 deprecated this behavior. This means that
+# "dotnet-pkg-base_build" will fail when pointed to a solution or a directory
+# containing a solution file.
+#
+# It is up to the maintainer if this variable is set before inheriting
+# "dotnet-pkg-base" eclass, but it is advised that it is set after
+# the variable "${S}" is set, it should also integrate with it
+# (see the example below).
+#
+# Example:
+# @CODE
+# SRC_URI="..."
+# S="${WORKDIR}/${P}/src"
+#
+# LICENSE="MIT"
+# SLOT="0"
+# KEYWORDS="~amd64"
+#
+# DOTNET_PKG_PROJECTS=( "${S}/DotnetProject" )
+#
+# src_prepare() {
+#     ...
+# @CODE
+
+# @ECLASS_VARIABLE: DOTNET_PKG_RESTORE_EXTRA_ARGS
+# @DESCRIPTION:
+# Extra arguments to pass to the package restore, in the "src_configure" phase.
+#
+# This is passed only when restoring the specified "DOTNET_PROJECT".
+# Other project restorers do not use this variable.
+#
+# It is up to the maintainer if this variable is set before inheriting
+# "dotnet-pkg.eclass", but it is advised that it is set after the variable
+# "DOTNET_PROJECT" (from "dotnet-pkg-base" eclass) is set.
+#
+# Default value is an empty array.
+#
+# For more info see the "DOTNET_PROJECT" variable and "dotnet-pkg_src_configure".
+DOTNET_PKG_RESTORE_EXTRA_ARGS=()
+
+# @ECLASS_VARIABLE: DOTNET_PKG_BUILD_EXTRA_ARGS
+# @DESCRIPTION:
+# Extra arguments to pass to the package build, in the "src_compile" phase.
+#
+# This is passed only when building the specified "DOTNET_PROJECT".
+# Other project builds do not use this variable.
+#
+# It is up to the maintainer if this variable is set before inheriting
+# "dotnet-pkg.eclass", but it is advised that it is set after the variable
+# "DOTNET_PROJECT" (from "dotnet-pkg-base" eclass) is set.
+#
+# Default value is an empty array.
+#
+# Example:
+# @CODE
+# DOTNET_PKG_BUILD_EXTRA_ARGS=( -p:WarningLevel=0 )
+# @CODE
+#
+# For more info see the "DOTNET_PROJECT" variable and "dotnet-pkg_src_compile".
+DOTNET_PKG_BUILD_EXTRA_ARGS=()
+
+# @FUNCTION: dotnet-pkg_pkg_setup
+# @DESCRIPTION:
+# Default "pkg_setup" for the "dotnet-pkg" eclass.
+# Pre-build configuration and checks.
+#
+# Calls "dotnet-pkg-base_pkg_setup".
+dotnet-pkg_pkg_setup() {
+	[[ ${MERGE_TYPE} != binary ]] && dotnet-pkg-base_setup
+}
+
+# @FUNCTION: dotnet-pkg_src_unpack
+# @DESCRIPTION:
+# Default "src_unpack" for the "dotnet-pkg" eclass.
+# Unpack the package sources.
+#
+# Includes a special exception for nugets (".nupkg" files) - they are instead
+# copied into the "NUGET_PACKAGES" directory.
+dotnet-pkg_src_unpack() {
+	nuget_link-system-nugets
+
+	local archive
+	for archive in ${A} ; do
+		case "${archive}" in
+			*.nupkg )
+				nuget_link "${DISTDIR}/${archive}"
+				;;
+			* )
+				unpack "${archive}"
+				;;
+		esac
+	done
+}
+
+# @FUNCTION: dotnet-pkg_src_prepare
+# @DESCRIPTION:
+# Default "src_prepare" for the "dotnet-pkg" eclass.
+# Prepare the package sources.
+#
+# Run "dotnet-pkg-base_remove-global-json".
+dotnet-pkg_src_prepare() {
+	dotnet-pkg-base_remove-global-json
+
+	default
+}
+
+# @FUNCTION: dotnet-pkg_foreach-project
+# @USAGE: <args> ...
+# @DESCRIPTION:
+# Run a specified command for each project listed inside the "DOTNET_PKG_PROJECTS"
+# variable.
+#
+# Used by "dotnet-pkg_src_configure" and "dotnet-pkg_src_compile".
+dotnet-pkg_foreach-project() {
+	debug-print-function "${FUNCNAME[0]}" "${@}"
+
+	local dotnet_project
+	for dotnet_project in "${DOTNET_PKG_PROJECTS[@]}" ; do
+		ebegin "Running \"${*}\" for project: \"${dotnet_project##*/}\""
+		"${@}" "${dotnet_project}"
+		eend $? "${FUNCNAME[0]}: failed for project: \"${dotnet_project}\"" || die
+	done
+}
+
+# @FUNCTION: dotnet-pkg_src_configure
+# @DESCRIPTION:
+# Default "src_configure" for the "dotnet-pkg" eclass.
+# Configure the package.
+#
+# First show information about current .NET SDK that is being used,
+# then restore the project file specified by "DOTNET_PROJECT",
+# afterwards restore any found solutions.
+dotnet-pkg_src_configure() {
+	dotnet-pkg-base_info
+
+	dotnet-pkg_foreach-project \
+		dotnet-pkg-base_restore "${DOTNET_PKG_RESTORE_EXTRA_ARGS[@]}"
+
+	dotnet-pkg-base_foreach-solution dotnet-pkg-base_restore "$(pwd)"
+}
+
+# @FUNCTION: dotnet-pkg_src_compile
+# @DESCRIPTION:
+# Default "src_compile" for the "dotnet-pkg" eclass.
+# Build the package.
+#
+# Build the package using "dotnet build" in the directory specified by either
+# "DOTNET_PROJECT" or "S" (temporary build directory) variables.
+#
+# For more info see: "DOTNET_PROJECT" variable
+# and "dotnet-pkg-base_get-project" function.
+dotnet-pkg_src_compile() {
+	dotnet-pkg_foreach-project \
+		dotnet-pkg-base_build "${DOTNET_PKG_BUILD_EXTRA_ARGS[@]}"
+}
+
+# @FUNCTION: dotnet-pkg_src_test
+# @DESCRIPTION:
+# Default "src_test" for the "dotnet-pkg" eclass.
+# Test the package.
+#
+# Test the package by testing any found solutions.
+#
+# It is very likely that this function will either not execute any tests or
+# will execute wrong or incomplete test suite. Maintainers should inspect if
+# any and/or correct tests are ran.
+dotnet-pkg_src_test() {
+	dotnet-pkg-base_foreach-solution dotnet-pkg-base_test "$(pwd)"
+}
+
+# @FUNCTION: dotnet-pkg_src_install
+# @DESCRIPTION:
+# Default "src_install" for the "dotnet-pkg" eclass.
+# Install the package.
+#
+# This is the default package install:
+#   - install the compiled .NET package artifacts,
+#	  for more info see "dotnet-pkg-base_install" and "DOTNET_PKG_OUTPUT",
+#   - create launcher from the .NET package directory to "/usr/bin",
+#     phase will detect to choose either executable with capital letter
+#     (common among .NET packages) or not,
+#   - call "einstalldocs".
+#
+# It is very likely that this function is either insufficient or has to be
+# redefined in a ebuild.
+dotnet-pkg_src_install() {
+	dotnet-pkg-base_install
+
+	# /usr/bin/Nake -> /usr/share/nake-3.0.0/Nake
+	if [[ -f "${D}/usr/share/${P}/${PN^}" ]] ; then
+		dotnet-pkg-base_dolauncher "/usr/share/${P}/${PN^}"
+
+		# Create a compatibility symlink and also for ease of use from CLI.
+		dosym -r "/usr/bin/${PN^}" "/usr/bin/${PN}"
+
+	elif [[ -f "${D}/usr/share/${P}/${PN}" ]] ; then
+		dotnet-pkg-base_dolauncher "/usr/share/${P}/${PN}"
+	fi
+
+	einstalldocs
+}
+
+fi
+
+EXPORT_FUNCTIONS pkg_setup src_unpack src_prepare src_configure src_compile src_test src_install


^ permalink raw reply related	[flat|nested] 6131+ messages in thread

* [gentoo-commits] repo/gentoo:master commit in: eclass/
@ 2023-09-16  7:44 Florian Schmaus
  0 siblings, 0 replies; 6131+ messages in thread
From: Florian Schmaus @ 2023-09-16  7:44 UTC (permalink / raw
  To: gentoo-commits

commit:     0a8a487f6ea6713400505929f0b335db009d7e87
Author:     Volkmar W. Pogatzki <gentoo <AT> pogatzki <DOT> net>
AuthorDate: Sun Mar 12 18:09:23 2023 +0000
Commit:     Florian Schmaus <flow <AT> gentoo <DOT> org>
CommitDate: Sat Sep 16 07:44:10 2023 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=0a8a487f

java-utils-2.eclass: fix EclassDocMissingFunc

Closes: https://bugs.gentoo.org/900509
Signed-off-by: Volkmar W. Pogatzki <gentoo <AT> pogatzki.net>
Closes: https://github.com/gentoo/gentoo/pull/30078
Signed-off-by: Florian Schmaus <flow <AT> gentoo.org>

 eclass/java-utils-2.eclass | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/eclass/java-utils-2.eclass b/eclass/java-utils-2.eclass
index ee5d68c8a78c..92e02e3085b1 100644
--- a/eclass/java-utils-2.eclass
+++ b/eclass/java-utils-2.eclass
@@ -2390,7 +2390,7 @@ java-pkg_init-compiler_() {
 
 }
 
-# @FUNCTION: init_paths_
+# @FUNCTION: java-pkg_init_paths_
 # @INTERNAL
 # @DESCRIPTION:
 # Initializes some variables that will be used. These variables are mostly used


^ permalink raw reply related	[flat|nested] 6131+ messages in thread

* [gentoo-commits] repo/gentoo:master commit in: eclass/
@ 2023-09-16  9:43 Sam James
  0 siblings, 0 replies; 6131+ messages in thread
From: Sam James @ 2023-09-16  9:43 UTC (permalink / raw
  To: gentoo-commits

commit:     9e9067d309e8b9f8a73b2312d409883f348b0ea5
Author:     Sam James <sam <AT> gentoo <DOT> org>
AuthorDate: Thu Sep 14 02:38:13 2023 +0000
Commit:     Sam James <sam <AT> gentoo <DOT> org>
CommitDate: Sat Sep 16 09:43:05 2023 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=9e9067d3

verify-sig.eclass: minisig support

Closes: https://bugs.gentoo.org/783066
Signed-off-by: Sam James <sam <AT> gentoo.org>

 eclass/verify-sig.eclass | 17 +++++++++++++++--
 1 file changed, 15 insertions(+), 2 deletions(-)

diff --git a/eclass/verify-sig.eclass b/eclass/verify-sig.eclass
index 49557b633c87..bb847bb80cc6 100644
--- a/eclass/verify-sig.eclass
+++ b/eclass/verify-sig.eclass
@@ -55,17 +55,22 @@ IUSE="verify-sig"
 # @DESCRIPTION:
 # Signature verification method to use.  The allowed value are:
 #
+#  - minisig -- verify signatures with (base64) Ed25519 public key using app-crypt/minisign
 #  - openpgp -- verify PGP signatures using app-crypt/gnupg (the default)
 #  - signify -- verify signatures with Ed25519 public key using app-crypt/signify
 : "${VERIFY_SIG_METHOD:=openpgp}"
 
 case ${VERIFY_SIG_METHOD} in
+	minisig)
+		BDEPEND="verify-sig? ( app-crypt/minisign )"
+		;;
 	openpgp)
 		BDEPEND="
 			verify-sig? (
 				app-crypt/gnupg
 				>=app-portage/gemato-16
-			)"
+			)
+		"
 		;;
 	signify)
 		BDEPEND="verify-sig? ( app-crypt/signify )"
@@ -139,6 +144,10 @@ verify-sig_verify_detached() {
 	[[ ${file} == - ]] && filename='(stdin)'
 	einfo "Verifying ${filename} ..."
 	case ${VERIFY_SIG_METHOD} in
+		minisig)
+			minisign -V -P "$(<"${key}")" -x "${sig}" -m "${file}" ||
+				die "minisig signature verification failed"
+			;;
 		openpgp)
 			# gpg can't handle very long TMPDIR
 			# https://bugs.gentoo.org/854492
@@ -198,6 +207,10 @@ verify-sig_verify_message() {
 	[[ ${file} == - ]] && filename='(stdin)'
 	einfo "Verifying ${filename} ..."
 	case ${VERIFY_SIG_METHOD} in
+		minisig)
+			minisign -V -P "$(<"${key}")" -x "${sig}" -o "${output_file}" -m "${file}" ||
+				die "minisig signature verification failed"
+			;;
 		openpgp)
 			# gpg can't handle very long TMPDIR
 			# https://bugs.gentoo.org/854492
@@ -356,7 +369,7 @@ verify-sig_src_unpack() {
 		# find all distfiles and signatures, and combine them
 		for f in ${A}; do
 			found=
-			for suffix in .asc .sig; do
+			for suffix in .asc .sig .minisig; do
 				if [[ ${f} == *${suffix} ]]; then
 					signatures+=( "${f}" )
 					found=sig


^ permalink raw reply related	[flat|nested] 6131+ messages in thread

* [gentoo-commits] repo/gentoo:master commit in: eclass/
@ 2023-09-18  9:50 Sam James
  0 siblings, 0 replies; 6131+ messages in thread
From: Sam James @ 2023-09-18  9:50 UTC (permalink / raw
  To: gentoo-commits

commit:     683d8b60b0038619e9d57012939330e63fea1614
Author:     George Burgess IV <gbiv <AT> google <DOT> com>
AuthorDate: Mon Apr 10 19:59:43 2023 +0000
Commit:     Sam James <sam <AT> gentoo <DOT> org>
CommitDate: Mon Sep 18 09:48:23 2023 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=683d8b60

bazel.eclass: add support for a custom bazel

Multiple bazel packages can be installed side-by-side through version
suffixes, e.g., `/usr/bin/bazel-5`, `/usr/bin/bazel-6`, etc. These can
be easily simultaneously supported with an eclass param.

Signed-off-by: George Burgess IV <gbiv <AT> google.com>
Closes: https://github.com/gentoo/gentoo/pull/30544
Signed-off-by: Sam James <sam <AT> gentoo.org>

 eclass/bazel.eclass | 9 ++++++++-
 1 file changed, 8 insertions(+), 1 deletion(-)

diff --git a/eclass/bazel.eclass b/eclass/bazel.eclass
index 8897ea175a84..1cba19485442 100644
--- a/eclass/bazel.eclass
+++ b/eclass/bazel.eclass
@@ -27,6 +27,13 @@ if [[ ${CATEGORY}/${PN} != "dev-util/bazel" ]]; then
 	BDEPEND=">=dev-util/bazel-0.20"
 fi
 
+# @ECLASS_VARIABLE: BAZEL_BINARY
+# @DESCRIPTION:
+# The program to invoke for bazel. Defaults to `bazel`. Useful if you have
+# multiple bazel installations on your machine that differ in verson suffix,
+# e.g., `bazel-5`, `bazel-6`.
+BAZEL_BINARY="${BAZEL_BINARY:-bazel}"
+
 # @FUNCTION: bazel_get_flags
 # @DESCRIPTION:
 # Obtain and print the bazel flags for target and host *FLAGS.
@@ -138,7 +145,7 @@ ebazel() {
 	output_base="${output_base%/}-bazel-base"
 	mkdir -p "${output_base}" || die
 
-	set -- bazel --bazelrc="${T}/bazelrc" --output_base="${output_base}" ${@}
+	set -- "${BAZEL_BINARY}" --bazelrc="${T}/bazelrc" --output_base="${output_base}" ${@}
 	echo "${*}" >&2
 	"${@}" || die "ebazel failed"
 }


^ permalink raw reply related	[flat|nested] 6131+ messages in thread

* [gentoo-commits] repo/gentoo:master commit in: eclass/
@ 2023-09-18  9:52 Sam James
  0 siblings, 0 replies; 6131+ messages in thread
From: Sam James @ 2023-09-18  9:52 UTC (permalink / raw
  To: gentoo-commits

commit:     cf98ec303ee474f22ecf750e82666fd6f96971da
Author:     Sam James <sam <AT> gentoo <DOT> org>
AuthorDate: Mon Sep 18 09:50:37 2023 +0000
Commit:     Sam James <sam <AT> gentoo <DOT> org>
CommitDate: Mon Sep 18 09:50:37 2023 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=cf98ec30

bazel.eclass: fix copyright

Signed-off-by: Sam James <sam <AT> gentoo.org>

 eclass/bazel.eclass | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/eclass/bazel.eclass b/eclass/bazel.eclass
index 1cba19485442..9d4dfd881d2b 100644
--- a/eclass/bazel.eclass
+++ b/eclass/bazel.eclass
@@ -1,4 +1,4 @@
-# Copyright 1999-2022 Gentoo Authors
+# Copyright 1999-2023 Gentoo Authors
 # Distributed under the terms of the GNU General Public License v2
 
 # @ECLASS: bazel.eclass


^ permalink raw reply related	[flat|nested] 6131+ messages in thread

* [gentoo-commits] repo/gentoo:master commit in: eclass/
@ 2023-09-19 11:12 Miroslav Šulc
  0 siblings, 0 replies; 6131+ messages in thread
From: Miroslav Šulc @ 2023-09-19 11:12 UTC (permalink / raw
  To: gentoo-commits

commit:     63183912631f6741a157c59629aa8bb700fb8874
Author:     Volkmar W. Pogatzki <gentoo <AT> pogatzki <DOT> net>
AuthorDate: Thu Sep  7 07:45:30 2023 +0000
Commit:     Miroslav Šulc <fordfrog <AT> gentoo <DOT> org>
CommitDate: Tue Sep 19 11:04:48 2023 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=63183912

java-pkg-simple.eclass: respect SLOT="0" in JAVA_LAUNCHER_FILENAME

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

 eclass/java-pkg-simple.eclass | 6 +++++-
 1 file changed, 5 insertions(+), 1 deletion(-)

diff --git a/eclass/java-pkg-simple.eclass b/eclass/java-pkg-simple.eclass
index 77038c708256..14650ea7e8d3 100644
--- a/eclass/java-pkg-simple.eclass
+++ b/eclass/java-pkg-simple.eclass
@@ -162,7 +162,11 @@ fi
 # If ${JAVA_MAIN_CLASS} is set, we will create a launcher to
 # execute the jar, and ${JAVA_LAUNCHER_FILENAME} will be the
 # name of the script.
-: "${JAVA_LAUNCHER_FILENAME:=${PN}-${SLOT}}"
+if [[ ${SLOT} = 0 ]]; then
+	: "${JAVA_LAUNCHER_FILENAME:=${PN}}"
+else
+	: "${JAVA_LAUNCHER_FILENAME:=${PN}-${SLOT}}"
+fi
 
 # @ECLASS_VARIABLE: JAVA_TESTING_FRAMEWORKS
 # @DEFAULT_UNSET


^ permalink raw reply related	[flat|nested] 6131+ messages in thread

* [gentoo-commits] repo/gentoo:master commit in: eclass/
@ 2023-09-19 11:15 Sam James
  0 siblings, 0 replies; 6131+ messages in thread
From: Sam James @ 2023-09-19 11:15 UTC (permalink / raw
  To: gentoo-commits

commit:     c0762f060531bd146d6abe93b97e86cb68df04cb
Author:     Sam James <sam <AT> gentoo <DOT> org>
AuthorDate: Sat Sep 16 09:40:53 2023 +0000
Commit:     Sam James <sam <AT> gentoo <DOT> org>
CommitDate: Tue Sep 19 11:15:31 2023 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=c0762f06

perl-module.eclass: disable Canary::Stability

Canary::Stability emits very vocal warnings about "unsupported" Perl versions
even if they're fine in reality. It's not worth scaring our users over.

See https://metacpan.org/pod/Canary::Stability#ENVIRONMENT-VARIABLES.

Signed-off-by: Sam James <sam <AT> gentoo.org>

 eclass/perl-module.eclass | 2 ++
 1 file changed, 2 insertions(+)

diff --git a/eclass/perl-module.eclass b/eclass/perl-module.eclass
index 83f94865e021..c9b690992f22 100644
--- a/eclass/perl-module.eclass
+++ b/eclass/perl-module.eclass
@@ -220,6 +220,8 @@ perl-module_src_configure() {
 	[[ -z ${pm_echovar} ]] && export PERL_MM_USE_DEFAULT=1
 	# Disable ExtUtils::AutoInstall from prompting
 	export PERL_EXTUTILS_AUTOINSTALL="--skipdeps"
+	# Noisy and not really appropriate to show to the user in a PM
+	export PERL_CANARY_STABILITY_DISABLE=1
 
 	if [[ $(declare -p myconf 2>&-) != "declare -a myconf="* ]]; then
 		local myconf_local=(${myconf})


^ permalink raw reply related	[flat|nested] 6131+ messages in thread

* [gentoo-commits] repo/gentoo:master commit in: eclass/
@ 2023-09-19 11:15 Sam James
  0 siblings, 0 replies; 6131+ messages in thread
From: Sam James @ 2023-09-19 11:15 UTC (permalink / raw
  To: gentoo-commits

commit:     ffa678b96f88ec7be12cd57237ead3849ac9c453
Author:     Sam James <sam <AT> gentoo <DOT> org>
AuthorDate: Sat Sep 16 09:39:27 2023 +0000
Commit:     Sam James <sam <AT> gentoo <DOT> org>
CommitDate: Tue Sep 19 11:15:31 2023 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=ffa678b9

perl-module.eclass: set NONINTERACTIVE_TESTING=1

See https://www.perlmonks.org/?node_id=1225311

I did consider the others, but:
* AUTOMATES_TESTING appears inappropriate for us, as it affects
  exit codes and might mask failures if configuration is wrong.
* EXTENDED_TESTING is something we could consider if we had
  some way to opt-in to expensive tests.

so just set NONINTERACTIVE_TESTING=1 for now, not the others mentioned
in the link.

Signed-off-by: Sam James <sam <AT> gentoo.org>

 eclass/perl-module.eclass | 7 +++++++
 1 file changed, 7 insertions(+)

diff --git a/eclass/perl-module.eclass b/eclass/perl-module.eclass
index e2b66e3b6f7d..83f94865e021 100644
--- a/eclass/perl-module.eclass
+++ b/eclass/perl-module.eclass
@@ -358,6 +358,13 @@ perl-module_src_test() {
 		export NO_NETWORK_TESTING=1
 	fi
 
+	# See https://www.perlmonks.org/?node_id=1225311
+	# * AUTOMATES_TESTING appears inappropriate for us, as it affects
+	# exit codes and might mask failures if configuration is wrong.
+	# * EXTENDED_TESTING is something we could consider if we had
+	# some way to opt-in to expensive tests.
+	export NONINTERACTIVE_TESTING=1
+
 	case ${EAPI} in
 		7)
 			;;


^ permalink raw reply related	[flat|nested] 6131+ messages in thread

* [gentoo-commits] repo/gentoo:master commit in: eclass/
@ 2023-09-19 19:47 Michał Górny
  0 siblings, 0 replies; 6131+ messages in thread
From: Michał Górny @ 2023-09-19 19:47 UTC (permalink / raw
  To: gentoo-commits

commit:     60043a41f94198cf0d03e605db721bf3e8f427bb
Author:     Michał Górny <mgorny <AT> gentoo <DOT> org>
AuthorDate: Tue Sep 19 19:37:31 2023 +0000
Commit:     Michał Górny <mgorny <AT> gentoo <DOT> org>
CommitDate: Tue Sep 19 19:47:06 2023 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=60043a41

llvm.org.eclass: Set manpages for 17.0.1

Signed-off-by: Michał Górny <mgorny <AT> gentoo.org>

 eclass/llvm.org.eclass | 3 +++
 1 file changed, 3 insertions(+)

diff --git a/eclass/llvm.org.eclass b/eclass/llvm.org.eclass
index e69ef14c0e62..23a8ab29c644 100644
--- a/eclass/llvm.org.eclass
+++ b/eclass/llvm.org.eclass
@@ -449,6 +449,9 @@ llvm_manpage_get_dist() {
 			16*)
 				echo "llvm-16.0.4-manpages.tar.bz2"
 				;;
+			17*)
+				echo "llvm-17.0.1-manpages.tar.bz2"
+				;;
 		esac
 	fi
 }


^ permalink raw reply related	[flat|nested] 6131+ messages in thread

* [gentoo-commits] repo/gentoo:master commit in: eclass/
@ 2023-09-23  6:31 Hans de Graaff
  0 siblings, 0 replies; 6131+ messages in thread
From: Hans de Graaff @ 2023-09-23  6:31 UTC (permalink / raw
  To: gentoo-commits

commit:     330877b0d98143a64eb4fb7b9c33840741dade4a
Author:     Hans de Graaff <graaff <AT> gentoo <DOT> org>
AuthorDate: Sat Sep 23 06:28:27 2023 +0000
Commit:     Hans de Graaff <graaff <AT> gentoo <DOT> org>
CommitDate: Sat Sep 23 06:28:27 2023 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=330877b0

eclass/ruby-utils.eclass: drop ruby30 from preferences

Signed-off-by: Hans de Graaff <graaff <AT> gentoo.org>

 eclass/ruby-utils.eclass | 6 +-----
 1 file changed, 1 insertion(+), 5 deletions(-)

diff --git a/eclass/ruby-utils.eclass b/eclass/ruby-utils.eclass
index 8a2b7720c951..48d701a3ebc7 100644
--- a/eclass/ruby-utils.eclass
+++ b/eclass/ruby-utils.eclass
@@ -22,7 +22,6 @@ esac
 
 if [[ ! ${_RUBY_UTILS} ]]; then
 
-
 # @ECLASS_VARIABLE: RUBY_TARGETS_PREFERENCE
 # @INTERNAL
 # @DESCRIPTION:
@@ -33,12 +32,11 @@ if [[ ! ${_RUBY_UTILS} ]]; then
 # provide for a better first installation experience.
 
 # All stable RUBY_TARGETS
-RUBY_TARGETS_PREFERENCE="ruby31 ruby30 "
+RUBY_TARGETS_PREFERENCE="ruby31 "
 
 # All other active ruby targets
 RUBY_TARGETS_PREFERENCE+="ruby32"
 
-
 _ruby_implementation_depend() {
 	local rubypn=
 	local rubyslot=
@@ -66,7 +64,5 @@ _ruby_implementation_depend() {
 	echo "$2${rubypn}$3${rubyslot}"
 }
 
-
-
 _RUBY_UTILS=1
 fi


^ permalink raw reply related	[flat|nested] 6131+ messages in thread

* [gentoo-commits] repo/gentoo:master commit in: eclass/
@ 2023-09-23  6:31 Hans de Graaff
  0 siblings, 0 replies; 6131+ messages in thread
From: Hans de Graaff @ 2023-09-23  6:31 UTC (permalink / raw
  To: gentoo-commits

commit:     579cfece94c35b2c8a0183118400269d9143fc3c
Author:     Hans de Graaff <graaff <AT> gentoo <DOT> org>
AuthorDate: Sat Sep 23 06:29:56 2023 +0000
Commit:     Hans de Graaff <graaff <AT> gentoo <DOT> org>
CommitDate: Sat Sep 23 06:29:56 2023 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=579cfece

eclass/ruby-ng.eclass: add ruby30 to removed implementations

Signed-off-by: Hans de Graaff <graaff <AT> gentoo.org>

 eclass/ruby-ng.eclass | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/eclass/ruby-ng.eclass b/eclass/ruby-ng.eclass
index 5cea44101593..d80ae96dd40b 100644
--- a/eclass/ruby-ng.eclass
+++ b/eclass/ruby-ng.eclass
@@ -111,7 +111,7 @@ _ruby_get_all_impls() {
 	for i in ${USE_RUBY}; do
 		case ${i} in
 			# removed implementations
-			ruby19|ruby2[0-7]|jruby)
+			ruby19|ruby2[0-7]|ruby30|jruby)
 				;;
 			*)
 				found_valid_impl=1


^ permalink raw reply related	[flat|nested] 6131+ messages in thread

* [gentoo-commits] repo/gentoo:master commit in: eclass/
@ 2023-09-25  2:07 Sam James
  0 siblings, 0 replies; 6131+ messages in thread
From: Sam James @ 2023-09-25  2:07 UTC (permalink / raw
  To: gentoo-commits

commit:     6302dd47e23ee32cfcb446355704ba8bc61b668e
Author:     Sam James <sam <AT> gentoo <DOT> org>
AuthorDate: Mon Sep 25 00:05:20 2023 +0000
Commit:     Sam James <sam <AT> gentoo <DOT> org>
CommitDate: Mon Sep 25 02:06:51 2023 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=6302dd47

toolchain.eclass: fix should_we_gcc_config for major-version slotting

Reported by the-horo on IRC.

For example, with slot as major version:
```
$ gcc-config -c x86_64-pc-linux-gnu
x86_64-pc-linux-gnu-13
$ gcc-config -S x86_64-pc-linux-gnu-13
x86_64-pc-linux-gnu 13
```
so we're indeed comparing 13 with 13.2 and hence we decide to run gcc-config
unnecessarily because we think it's a major version change.

Fix that by taking into account tc_use_major_version_only and comparing
based on GCCMAJOR for that case.

Bug: https://bugs.gentoo.org/865835
Bug: https://bugs.gentoo.org/873505
Reported-by: the-horo
Closes: https://github.com/gentoo/gentoo/pull/33042
Signed-off-by: Sam James <sam <AT> gentoo.org>

 eclass/toolchain.eclass | 4 +++-
 1 file changed, 3 insertions(+), 1 deletion(-)

diff --git a/eclass/toolchain.eclass b/eclass/toolchain.eclass
index 6a88676b750d..d93068619cf9 100644
--- a/eclass/toolchain.eclass
+++ b/eclass/toolchain.eclass
@@ -2244,7 +2244,9 @@ should_we_gcc_config() {
 
 	local curr_branch_ver=$(ver_cut 1-2 ${curr_config_ver})
 
-	if [[ ${curr_branch_ver} == ${GCC_BRANCH_VER} ]] ; then
+	if tc_use_major_version_only && [[ ${curr_config_ver} == ${GCCMAJOR} ]] ; then
+		return 0
+	elif ! tc_use_major_version_only && [[ ${curr_branch_ver} == ${GCC_BRANCH_VER} ]] ; then
 		return 0
 	else
 		# If we're installing a genuinely different compiler version,


^ permalink raw reply related	[flat|nested] 6131+ messages in thread

* [gentoo-commits] repo/gentoo:master commit in: eclass/
@ 2023-09-25 18:45 Michał Górny
  0 siblings, 0 replies; 6131+ messages in thread
From: Michał Górny @ 2023-09-25 18:45 UTC (permalink / raw
  To: gentoo-commits

commit:     88fdc3ceab6a73c12979038c28a4f56484281ce5
Author:     Michał Górny <mgorny <AT> gentoo <DOT> org>
AuthorDate: Mon Sep 25 18:43:39 2023 +0000
Commit:     Michał Górny <mgorny <AT> gentoo <DOT> org>
CommitDate: Mon Sep 25 18:43:39 2023 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=88fdc3ce

llvm.org.eclass: Add 18.0.0_pre20230925 snapshot

Signed-off-by: Michał Górny <mgorny <AT> gentoo.org>

 eclass/llvm.org.eclass | 3 +++
 1 file changed, 3 insertions(+)

diff --git a/eclass/llvm.org.eclass b/eclass/llvm.org.eclass
index 23a8ab29c644..5efa80ce67e8 100644
--- a/eclass/llvm.org.eclass
+++ b/eclass/llvm.org.eclass
@@ -72,6 +72,9 @@ if [[ -z ${_LLVM_SOURCE_TYPE+1} ]]; then
 			_LLVM_SOURCE_TYPE=snapshot
 
 			case ${PV} in
+				18.0.0_pre20230925)
+					EGIT_COMMIT=f5cb9cb59d7c9c6ac3d5c41c677f68c9b75d34a3
+					;;
 				18.0.0_pre20230906)
 					EGIT_COMMIT=7e5809e7e7bc9a828427b6540a51d45884d8bbbb
 					;;


^ permalink raw reply related	[flat|nested] 6131+ messages in thread

* [gentoo-commits] repo/gentoo:master commit in: eclass/
@ 2023-09-26 12:24 Ionen Wolkens
  0 siblings, 0 replies; 6131+ messages in thread
From: Ionen Wolkens @ 2023-09-26 12:24 UTC (permalink / raw
  To: gentoo-commits

commit:     9b5862db4e20b79ff05a35834c870f0c91817cf5
Author:     Ionen Wolkens <ionen <AT> gentoo <DOT> org>
AuthorDate: Tue Sep 26 12:15:47 2023 +0000
Commit:     Ionen Wolkens <ionen <AT> gentoo <DOT> org>
CommitDate: Tue Sep 26 12:23:08 2023 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=9b5862db

qt6-build.eclass: triple qtest function timeout

May help prevent flaky failures under load. Could increase further
if ever a problem on some arches (beyond 1500 would be meaningless
without also passing bigger --timeout to ctest).

Also align exports and drop kinda unnecessary comment.

Closes: https://bugs.gentoo.org/914737
Signed-off-by: Ionen Wolkens <ionen <AT> gentoo.org>

 eclass/qt6-build.eclass | 3 +--
 1 file changed, 1 insertion(+), 2 deletions(-)

diff --git a/eclass/qt6-build.eclass b/eclass/qt6-build.eclass
index 18f317e32e16..35a710b86545 100644
--- a/eclass/qt6-build.eclass
+++ b/eclass/qt6-build.eclass
@@ -162,9 +162,8 @@ qt6-build_src_configure() {
 # @DESCRIPTION:
 # Run cmake_src_test and handle anything else generic as-needed.
 qt6-build_src_test() {
-	# helps a few tests but is not always respected
 	local -x QML_IMPORT_PATH=${BUILD_DIR}${QT6_QMLDIR#"${QT6_PREFIX}"}
-
+	local -x QTEST_FUNCTION_TIMEOUT=900000 #914737
 	local -x QT_QPA_PLATFORM=offscreen
 
 	# TODO?: CMAKE_SKIP_TESTS skips a whole group of tests and, when


^ permalink raw reply related	[flat|nested] 6131+ messages in thread

* [gentoo-commits] repo/gentoo:master commit in: eclass/
@ 2023-09-27  5:28 Sam James
  0 siblings, 0 replies; 6131+ messages in thread
From: Sam James @ 2023-09-27  5:28 UTC (permalink / raw
  To: gentoo-commits

commit:     2be63f3ff46248581cf1922f2992bfb52b2d11fb
Author:     Sam James <sam <AT> gentoo <DOT> org>
AuthorDate: Wed Sep 27 05:28:18 2023 +0000
Commit:     Sam James <sam <AT> gentoo <DOT> org>
CommitDate: Wed Sep 27 05:28:18 2023 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=2be63f3f

perl-module.eclass: fix typo in comment

Fixes: ffa678b96f88ec7be12cd57237ead3849ac9c453
Signed-off-by: Sam James <sam <AT> gentoo.org>

 eclass/perl-module.eclass | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/eclass/perl-module.eclass b/eclass/perl-module.eclass
index c9b690992f22..32cd603c7be5 100644
--- a/eclass/perl-module.eclass
+++ b/eclass/perl-module.eclass
@@ -361,7 +361,7 @@ perl-module_src_test() {
 	fi
 
 	# See https://www.perlmonks.org/?node_id=1225311
-	# * AUTOMATES_TESTING appears inappropriate for us, as it affects
+	# * AUTOMATED_TESTING appears inappropriate for us, as it affects
 	# exit codes and might mask failures if configuration is wrong.
 	# * EXTENDED_TESTING is something we could consider if we had
 	# some way to opt-in to expensive tests.


^ permalink raw reply related	[flat|nested] 6131+ messages in thread

* [gentoo-commits] repo/gentoo:master commit in: eclass/
@ 2023-09-27  6:58 Miroslav Šulc
  0 siblings, 0 replies; 6131+ messages in thread
From: Miroslav Šulc @ 2023-09-27  6:58 UTC (permalink / raw
  To: gentoo-commits

commit:     46a0d7d3899ca90d1fc9a81a288d915ccdc3ebf8
Author:     Volkmar W. Pogatzki <gentoo <AT> pogatzki <DOT> net>
AuthorDate: Mon May 15 09:55:47 2023 +0000
Commit:     Miroslav Šulc <fordfrog <AT> gentoo <DOT> org>
CommitDate: Wed Sep 27 06:57:55 2023 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=46a0d7d3

java-pkg-simple.eclass: improve test selection for multi-jar packages

There was a problem with multi-jar packages cumulating tests. Test
classes were repeatedly run for all subsequent test runs.

With this patch we ensure that classes=target/test-classes is really
empty before compilation.

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

 eclass/java-pkg-simple.eclass | 4 +++-
 1 file changed, 3 insertions(+), 1 deletion(-)

diff --git a/eclass/java-pkg-simple.eclass b/eclass/java-pkg-simple.eclass
index 555d956d93d8..e50344c32acb 100644
--- a/eclass/java-pkg-simple.eclass
+++ b/eclass/java-pkg-simple.eclass
@@ -501,6 +501,9 @@ java-pkg-simple_src_test() {
 		return
 	fi
 
+	# https://bugs.gentoo.org/906311
+	rm -rf ${classes} || die
+
 	# create the target directory
 	mkdir -p ${classes} || die "Could not create target directory for testing"
 
@@ -519,7 +522,6 @@ java-pkg-simple_src_test() {
 		find "${JAVA_TEST_SRC_DIR[@]}" -name \*.java > ${test_sources}
 	fi
 
-
 	# compile
 	if [[ -s ${test_sources} ]]; then
 		if [[ -n ${moduleinfo} ]] || [[ java-pkg_get-target -lt 9 ]]; then


^ permalink raw reply related	[flat|nested] 6131+ messages in thread

* [gentoo-commits] repo/gentoo:master commit in: eclass/
@ 2023-09-27  6:58 Miroslav Šulc
  0 siblings, 0 replies; 6131+ messages in thread
From: Miroslav Šulc @ 2023-09-27  6:58 UTC (permalink / raw
  To: gentoo-commits

commit:     0733594d8ff5e3fdd2b7617c36fdd2c761c66666
Author:     Volkmar W. Pogatzki <gentoo <AT> pogatzki <DOT> net>
AuthorDate: Sun May 14 07:39:19 2023 +0000
Commit:     Miroslav Šulc <fordfrog <AT> gentoo <DOT> org>
CommitDate: Wed Sep 27 06:57:51 2023 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=0733594d

Revert "java-pkg-simple.eclass: improve test selection for multi-jar packages"

This reverts commit 3eb0cfe339e79270446731b8f27bdc1b060d023b.

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

 eclass/java-pkg-simple.eclass | 28 +++++++++++++---------------
 1 file changed, 13 insertions(+), 15 deletions(-)

diff --git a/eclass/java-pkg-simple.eclass b/eclass/java-pkg-simple.eclass
index 14650ea7e8d3..555d956d93d8 100644
--- a/eclass/java-pkg-simple.eclass
+++ b/eclass/java-pkg-simple.eclass
@@ -555,21 +555,19 @@ java-pkg-simple_src_test() {
 	if [[ -n ${JAVA_TEST_RUN_ONLY} ]]; then
 		tests_to_run="${JAVA_TEST_RUN_ONLY[@]}"
 	else
-		pushd "${JAVA_TEST_SRC_DIR}" > /dev/null || die
-			tests_to_run=$(find * -type f\
-				\( -name "*Test.java"\
-				-o -name "Test*.java"\
-				-o -name "*Tests.java"\
-				-o -name "*TestCase.java" \)\
-				! -name "*Abstract*"\
-				! -name "*BaseTest*"\
-				! -name "*TestTypes*"\
-				! -name "*TestUtils*"\
-				! -name "*\$*")
-			tests_to_run=${tests_to_run//"${classes}"\/}
-			tests_to_run=${tests_to_run//.java}
-			tests_to_run=${tests_to_run//\//.}
-		popd > /dev/null || die
+		tests_to_run=$(find "${classes}" -type f\
+			\( -name "*Test.class"\
+			-o -name "Test*.class"\
+			-o -name "*Tests.class"\
+			-o -name "*TestCase.class" \)\
+			! -name "*Abstract*"\
+			! -name "*BaseTest*"\
+			! -name "*TestTypes*"\
+			! -name "*TestUtils*"\
+			! -name "*\$*")
+		tests_to_run=${tests_to_run//"${classes}"\/}
+		tests_to_run=${tests_to_run//.class}
+		tests_to_run=${tests_to_run//\//.}
 
 		# exclude extra test classes, usually corner cases
 		# that the code above cannot handle


^ permalink raw reply related	[flat|nested] 6131+ messages in thread

* [gentoo-commits] repo/gentoo:master commit in: eclass/
@ 2023-09-27  9:12 Michał Górny
  0 siblings, 0 replies; 6131+ messages in thread
From: Michał Górny @ 2023-09-27  9:12 UTC (permalink / raw
  To: gentoo-commits

commit:     59d389e33aef580b4d5ae2aa9acde86dc0081042
Author:     Alexey Sokolov <alexey+gentoo <AT> asokolov <DOT> org>
AuthorDate: Fri Sep 15 07:29:55 2023 +0000
Commit:     Michał Górny <mgorny <AT> gentoo <DOT> org>
CommitDate: Wed Sep 27 09:12:32 2023 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=59d389e3

llvm.eclass: add option to skip llvm_pkg_setup

To be used during prefix bootstrap using LLVM toolchain. Without this,
several LLVM packages don't build.

Bug: https://bugs.gentoo.org/758167
Signed-off-by: Alexey Sokolov <alexey+gentoo <AT> asokolov.org>
Signed-off-by: Michał Górny <mgorny <AT> gentoo.org>

 eclass/llvm.eclass | 11 +++++++++++
 1 file changed, 11 insertions(+)

diff --git a/eclass/llvm.eclass b/eclass/llvm.eclass
index 8198650aad9a..57faa48819db 100644
--- a/eclass/llvm.eclass
+++ b/eclass/llvm.eclass
@@ -80,6 +80,13 @@ DEPEND="!!sys-devel/llvm:0"
 # Correct values of LLVM slots, newest first.
 declare -g -r _LLVM_KNOWN_SLOTS=( {18..8} )
 
+# @ECLASS_VARIABLE: LLVM_ECLASS_SKIP_PKG_SETUP
+# @INTERNAL
+# @DESCRIPTION:
+# If set to a non-empty value, llvm_pkg_setup will not perform LLVM version
+# check, nor set PATH.  Useful for bootstrap-prefix.sh, where AppleClang has
+# unparseable version numbers, which are irrelevant anyway.
+
 # @FUNCTION: get_llvm_slot
 # @USAGE: [-b|-d] [<max_slot>]
 # @DESCRIPTION:
@@ -242,6 +249,10 @@ llvm_fix_tool_path() {
 llvm_pkg_setup() {
 	debug-print-function ${FUNCNAME} "${@}"
 
+	if [[ ${LLVM_ECLASS_SKIP_PKG_SETUP} ]]; then
+		return
+	fi
+
 	if [[ ${MERGE_TYPE} != binary ]]; then
 		LLVM_SLOT=$(get_llvm_slot "${LLVM_MAX_SLOT}")
 


^ permalink raw reply related	[flat|nested] 6131+ messages in thread

* [gentoo-commits] repo/gentoo:master commit in: eclass/
@ 2023-09-28  8:22 Miroslav Šulc
  0 siblings, 0 replies; 6131+ messages in thread
From: Miroslav Šulc @ 2023-09-28  8:22 UTC (permalink / raw
  To: gentoo-commits

commit:     5be5420448da8d12d8033b76f0157a5a021b54eb
Author:     Volkmar W. Pogatzki <gentoo <AT> pogatzki <DOT> net>
AuthorDate: Sun Sep 17 16:19:35 2023 +0000
Commit:     Miroslav Šulc <fordfrog <AT> gentoo <DOT> org>
CommitDate: Thu Sep 28 08:21:57 2023 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=5be54204

java-pkg-opt-2.eclass: drop EAPI 6

Signed-off-by: Volkmar W. Pogatzki <gentoo <AT> pogatzki.net>
Closes: https://github.com/gentoo/gentoo/pull/32888
Signed-off-by: Miroslav Šulc <fordfrog <AT> gentoo.org>

 eclass/java-pkg-opt-2.eclass | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/eclass/java-pkg-opt-2.eclass b/eclass/java-pkg-opt-2.eclass
index 3a4b25ec2f0c..0caba1d40e07 100644
--- a/eclass/java-pkg-opt-2.eclass
+++ b/eclass/java-pkg-opt-2.eclass
@@ -6,7 +6,7 @@
 # java@gentoo.org
 # @AUTHOR:
 # Thomas Matthijs <axxo@gentoo.org>
-# @SUPPORTED_EAPIS: 6 7 8
+# @SUPPORTED_EAPIS: 7 8
 # @PROVIDES: java-utils-2
 # @BLURB: Eclass for package with optional Java support
 # @DESCRIPTION:
@@ -14,7 +14,7 @@
 # support.
 
 case ${EAPI:-0} in
-	[678]) ;;
+	[78]) ;;
 	*) die "${ECLASS}: EAPI ${EAPI:-0} not supported" ;;
 esac
 
@@ -50,7 +50,7 @@ java-pkg-opt-2_pkg_setup() {
 java-pkg-opt-2_src_prepare() {
 	use ${JAVA_PKG_OPT_USE} && java-utils-2_src_prepare
 	case "${EAPI:-0}" in
-		[678]) use ${JAVA_PKG_OPT_USE} || eapply_user ;;
+		[78]) use ${JAVA_PKG_OPT_USE} || eapply_user ;;
 	esac
 }
 


^ permalink raw reply related	[flat|nested] 6131+ messages in thread

* [gentoo-commits] repo/gentoo:master commit in: eclass/
@ 2023-09-28 15:51 Hans de Graaff
  0 siblings, 0 replies; 6131+ messages in thread
From: Hans de Graaff @ 2023-09-28 15:51 UTC (permalink / raw
  To: gentoo-commits

commit:     cf61e72bf2286399797f87cab4e45aa2d7b7e92e
Author:     Hans de Graaff <graaff <AT> gentoo <DOT> org>
AuthorDate: Sun Sep 24 08:28:53 2023 +0000
Commit:     Hans de Graaff <graaff <AT> gentoo <DOT> org>
CommitDate: Thu Sep 28 15:50:40 2023 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=cf61e72b

eclass/depend.apache: drop support for EAPI 0-5

Signed-off-by: Hans de Graaff <graaff <AT> gentoo.org>

 eclass/depend.apache.eclass | 60 +++++++++------------------------------------
 1 file changed, 12 insertions(+), 48 deletions(-)

diff --git a/eclass/depend.apache.eclass b/eclass/depend.apache.eclass
index 51410265bbc5..4dc3f68daabc 100644
--- a/eclass/depend.apache.eclass
+++ b/eclass/depend.apache.eclass
@@ -1,10 +1,10 @@
-# Copyright 1999-2021 Gentoo Authors
+# Copyright 1999-2023 Gentoo Authors
 # Distributed under the terms of the GNU General Public License v2
 
 # @ECLASS: depend.apache.eclass
 # @MAINTAINER:
 # apache-bugs@gentoo.org
-# @SUPPORTED_EAPIS: 0 2 3 4 5 6 7
+# @SUPPORTED_EAPIS: 6 7
 # @BLURB: Functions to allow ebuilds to depend on apache
 # @DESCRIPTION:
 # This eclass handles depending on apache in a sane way and provides information
@@ -41,9 +41,6 @@
 # @CODE
 
 case ${EAPI:-0} in
-	0|2|3|4|5)
-		inherit multilib
-		;;
 	6|7)
 		;;
 	*)
@@ -78,8 +75,7 @@ esac
 # @ECLASS_VARIABLE: APACHE_BASEDIR
 # @DESCRIPTION:
 # Path to the server root directory.
-# This variable is set by the want/need_apache functions (EAPI=0 through 5)
-# or depend.apache_pkg_setup (EAPI=6 and later).
+# This variable is set by depend.apache_pkg_setup.
 
 # @ECLASS_VARIABLE: APACHE_CONFDIR
 # @DESCRIPTION:
@@ -99,8 +95,7 @@ esac
 # @ECLASS_VARIABLE: APACHE_MODULESDIR
 # @DESCRIPTION:
 # Path where we install modules.
-# This variable is set by the want/need_apache functions (EAPI=0 through 5)
-# or depend.apache_pkg_setup (EAPI=6 and later).
+# This variable is set by depend.apache_pkg_setup.
 
 # @ECLASS_VARIABLE: APACHE_DEPEND
 # @DESCRIPTION:
@@ -140,12 +135,6 @@ _init_apache2() {
 	APACHE_CONFDIR="/etc/apache2"
 	APACHE_MODULES_CONFDIR="${APACHE_CONFDIR}/modules.d"
 	APACHE_VHOSTS_CONFDIR="${APACHE_CONFDIR}/vhosts.d"
-
-	case ${EAPI:-0} in
-		0|2|3|4|5)
-			_init_apache2_late
-			;;
-	esac
 }
 
 _init_apache2_late() {
@@ -177,27 +166,14 @@ depend.apache_pkg_setup() {
 
 	local myiuse=${1:-apache2}
 
-	case ${EAPI:-0} in
-		0|2|3|4|5)
-			if has ${myiuse} ${IUSE}; then
-				if use ${myiuse}; then
-					_init_apache2
-				else
-					_init_no_apache
-				fi
-			fi
-			;;
-		*)
-			if in_iuse ${myiuse}; then
-				if use ${myiuse}; then
-					_init_apache2
-					_init_apache2_late
-				else
-					_init_no_apache
-				fi
-			fi
-			;;
-	esac
+	if in_iuse ${myiuse}; then
+		if use ${myiuse}; then
+			_init_apache2
+			_init_apache2_late
+		else
+			_init_no_apache
+		fi
+	fi
 }
 
 # @FUNCTION: want_apache
@@ -327,12 +303,6 @@ has_apache() {
 has_apache_threads() {
 	debug-print-function $FUNCNAME $*
 
-	case ${EAPI:-0} in
-		0|1)
-			die "depend.apache.eclass: has_apache_threads is not supported for EAPI=${EAPI:-0}"
-			;;
-	esac
-
 	if ! has_version 'www-servers/apache[threads]'; then
 		return
 	fi
@@ -356,12 +326,6 @@ has_apache_threads() {
 has_apache_threads_in() {
 	debug-print-function $FUNCNAME $*
 
-	case ${EAPI:-0} in
-		0|1)
-			die "depend.apache.eclass: has_apache_threads_in is not supported for EAPI=${EAPI:-0}"
-			;;
-	esac
-
 	if ! has_version 'www-servers/apache[threads]'; then
 		return
 	fi


^ permalink raw reply related	[flat|nested] 6131+ messages in thread

* [gentoo-commits] repo/gentoo:master commit in: eclass/
@ 2023-09-30  7:58 Miroslav Šulc
  0 siblings, 0 replies; 6131+ messages in thread
From: Miroslav Šulc @ 2023-09-30  7:58 UTC (permalink / raw
  To: gentoo-commits

commit:     55d84c375638dfa400d980600e820db1f36d6ae8
Author:     Volkmar W. Pogatzki <gentoo <AT> pogatzki <DOT> net>
AuthorDate: Fri Sep 29 08:24:41 2023 +0000
Commit:     Miroslav Šulc <fordfrog <AT> gentoo <DOT> org>
CommitDate: Sat Sep 30 07:58:25 2023 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=55d84c37

java-pkg-simple.eclass: drop EAPI 6

Signed-off-by: Volkmar W. Pogatzki <gentoo <AT> pogatzki.net>
Closes: https://github.com/gentoo/gentoo/pull/33123
Signed-off-by: Miroslav Šulc <fordfrog <AT> gentoo.org>

 eclass/java-pkg-simple.eclass | 3 +--
 1 file changed, 1 insertion(+), 2 deletions(-)

diff --git a/eclass/java-pkg-simple.eclass b/eclass/java-pkg-simple.eclass
index e50344c32acb..02200f10cb8d 100644
--- a/eclass/java-pkg-simple.eclass
+++ b/eclass/java-pkg-simple.eclass
@@ -6,7 +6,7 @@
 # java@gentoo.org
 # @AUTHOR:
 # Java maintainers <java@gentoo.org>
-# @SUPPORTED_EAPIS: 6 7 8
+# @SUPPORTED_EAPIS: 7 8
 # @BLURB: Eclass for packaging Java software with ease.
 # @DESCRIPTION:
 # This class is intended to build pure Java packages from Java sources
@@ -17,7 +17,6 @@
 # directory before calling the src_compile function of this eclass.
 
 case ${EAPI} in
-	6) inherit eqawarn ;;
 	7|8) ;;
 	*) die "${ECLASS}: EAPI ${EAPI:-0} not supported" ;;
 esac


^ permalink raw reply related	[flat|nested] 6131+ messages in thread

* [gentoo-commits] repo/gentoo:master commit in: eclass/
@ 2023-09-30  9:38 Sam James
  0 siblings, 0 replies; 6131+ messages in thread
From: Sam James @ 2023-09-30  9:38 UTC (permalink / raw
  To: gentoo-commits

commit:     612556c3f23ac08ac76187a81fe3f0cc6acc4a9f
Author:     Sam James <sam <AT> gentoo <DOT> org>
AuthorDate: Fri Sep 29 01:02:21 2023 +0000
Commit:     Sam James <sam <AT> gentoo <DOT> org>
CommitDate: Sat Sep 30 09:38:41 2023 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=612556c3

toolchain.eclass: tidy up USE=jit build

* Pass --disable-fixincludes for newer GCCs for USE=jit (still need to try
disable it in general when we can, but we had to turn it on for a bit because
of newer glibc) as it's pointless there.

* Disable a bunch of other options for the JIT build, imported from my local
  script for bisecting GCC.

* While at it, use an array for the configure args for the JIT build and just
use emake -C.

Signed-off-by: Sam James <sam <AT> gentoo.org>

 eclass/toolchain.eclass | 52 ++++++++++++++++++++++++++++++++++---------------
 1 file changed, 36 insertions(+), 16 deletions(-)

diff --git a/eclass/toolchain.eclass b/eclass/toolchain.eclass
index 90a6098445f5..90576f2067ea 100644
--- a/eclass/toolchain.eclass
+++ b/eclass/toolchain.eclass
@@ -1354,20 +1354,43 @@ toolchain_src_configure() {
 	if is_jit ; then
 		einfo "Configuring JIT gcc"
 
+		local confgcc_jit=(
+			"${confgcc[@]}"
+
+			--disable-analyzer
+			--disable-bootstrap
+			--disable-cet
+			--disable-default-pie
+			--disable-default-ssp
+			--disable-gcov
+			--disable-libada
+			--disable-libatomic
+			--disable-libgomp
+			--disable-libitm
+			--disable-libquadmath
+			--disable-libsanitizer
+			--disable-libssp
+			--disable-libstdcxx-pch
+			--disable-libvtv
+			--disable-lto
+			--disable-nls
+			--disable-objc-gc
+			--disable-systemtap
+			--enable-host-shared
+			--enable-languages=jit
+			--without-isl
+			--without-zstd
+			--with-system-zlib
+		)
+
+		if tc_version_is_at_least 13.1 ; then
+			confgcc_jit+=( --disable-fixincludes )
+		fi
+
 		mkdir -p "${WORKDIR}"/build-jit || die
 		pushd "${WORKDIR}"/build-jit > /dev/null || die
-		CONFIG_SHELL="${gcc_shell}" edo "${gcc_shell}" "${S}"/configure \
-				"${confgcc[@]}" \
-				--disable-libada \
-				--disable-libsanitizer \
-				--disable-libvtv \
-				--disable-libgomp \
-				--disable-libquadmath \
-				--disable-libatomic \
-				--disable-lto \
-				--disable-bootstrap \
-				--enable-host-shared \
-				--enable-languages=jit
+
+		CONFIG_SHELL="${gcc_shell}" edo "${gcc_shell}" "${S}"/configure "${confgcc_jit[@]}"
 		popd > /dev/null || die
 	fi
 
@@ -1701,11 +1724,8 @@ gcc_do_make() {
 
 	if is_jit ; then
 		# TODO: docs for jit?
-		pushd "${WORKDIR}"/build-jit > /dev/null || die
-
 		einfo "Building JIT"
-		emake "${emakeargs[@]}"
-		popd > /dev/null || die
+		emake -C "${WORKDIR}"/build-jit "${emakeargs[@]}"
 	fi
 
 	einfo "Compiling ${PN} (${GCC_MAKE_TARGET})..."


^ permalink raw reply related	[flat|nested] 6131+ messages in thread

* [gentoo-commits] repo/gentoo:master commit in: eclass/
@ 2023-09-30  9:38 Sam James
  0 siblings, 0 replies; 6131+ messages in thread
From: Sam James @ 2023-09-30  9:38 UTC (permalink / raw
  To: gentoo-commits

commit:     bb2d045c02a6ca647ef3280f4987cbc0d14e5a7e
Author:     Sam James <sam <AT> gentoo <DOT> org>
AuthorDate: Thu Sep 28 23:27:06 2023 +0000
Commit:     Sam James <sam <AT> gentoo <DOT> org>
CommitDate: Sat Sep 30 09:38:40 2023 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=bb2d045c

toolchain.eclass: rework bootstrapping logic

* Build stage1 compiler with user's CFLAGS. This consistently ends up
  saving at least 15 minutes for me on a fast amd64 machine and should save
  more on slower machines and architectures.

  There's only any risk here if the host compiler is ancient/very buggy and
  even then, you get a failed bootstrap later on. The GCC developers, per the
  linked bug, end up using STAGE1_CFLAGS="-O2" anyway to speed up the process
  so it's not like this is untested at all.

  mattst88 actually brought this up.. 10 years ago (bug #477548). Let's try
  make that right now.

* Respect LDFLAGS for target libraries for native builds. Not touching this
  for cross builds, at least for now, as it's a bit more delicate.

  (Unfortunately, we have to put a hack in here for now until we can fix
  multilib.eclass - see bug #914881).

Bug: https://gcc.gnu.org/PR111619
Bug: https://bugs.gentoo.org/914881
Closes: https://bugs.gentoo.org/477548
Closes: https://bugs.gentoo.org/831423
Closes: https://bugs.gentoo.org/840392
Apologies-to: Matt Turner <mattst88 <AT> gentoo.org>
Signed-off-by: Sam James <sam <AT> gentoo.org>

 eclass/toolchain.eclass | 52 +++++++++++++++++++++++++++++++++----------------
 1 file changed, 35 insertions(+), 17 deletions(-)

diff --git a/eclass/toolchain.eclass b/eclass/toolchain.eclass
index d93068619cf9..a145e74d5521 100644
--- a/eclass/toolchain.eclass
+++ b/eclass/toolchain.eclass
@@ -1647,19 +1647,48 @@ gcc_do_make() {
 		fi
 	fi
 
-	if [[ ${GCC_MAKE_TARGET} == "all" ]] ; then
-		STAGE1_CFLAGS=${STAGE1_CFLAGS-"${CFLAGS}"}
-	fi
+	local emakeargs=(
+		LDFLAGS="${LDFLAGS}"
+		LIBPATH="${LIBPATH}"
+	)
 
 	if is_crosscompile; then
 		# In 3.4, BOOT_CFLAGS is never used on a crosscompile...
 		# but I'll leave this in anyways as someone might have had
 		# some reason for putting it in here... --eradicator
 		BOOT_CFLAGS=${BOOT_CFLAGS-"-O2"}
+		emakeargs+=( BOOT_CFLAGS="${BOOT_CFLAGS}" )
 	else
-		# we only want to use the system's CFLAGS if not building a
+		# XXX: Hack for bug #914881, clean this up when fixed and go back
+		# to just calling get_abi_LDFLAGS as before.
+		local abi_ldflags="$(get_abi_LDFLAGS ${TARGET_DEFAULT_ABI})"
+		printf -v abi_ldflags -- "-Wl,%s " ${abi_ldflags}
+
+		# If the host compiler is too old, let's use -O0 per the upstream
+		# default to be safe (to avoid a bootstrap comparison failure later).
+		#
+		# The last known issues are with < GCC 4.9 or so, but it's easier
+		# to keep this bound somewhat fresh just to avoid problems. Ultimately,
+		# using not-O0 is just a build-time speed improvement anyway.
+		if tc-is-gcc && ver_test $(gcc-fullversion) -lt 10 ; then
+			STAGE1_CFLAGS="-O0"
+		fi
+
+		# We only want to use the system's CFLAGS if not building a
 		# cross-compiler.
+		STAGE1_CFLAGS=${STAGE1_CFLAGS-"$(get_abi_CFLAGS ${TARGET_DEFAULT_ABI}) ${CFLAGS}"}
+		STAGE1_LDFLAGS=${STAGE1_LDFLAGS-"${abi_ldflags} ${LDFLAGS}"}
 		BOOT_CFLAGS=${BOOT_CFLAGS-"$(get_abi_CFLAGS ${TARGET_DEFAULT_ABI}) ${CFLAGS}"}
+		BOOT_LDFLAGS=${BOOT_LDFLAGS-"${abi_ldflags} ${LDFLAGS}"}
+		LDFLAGS_FOR_TARGET="${LDFLAGS_FOR_TARGET:-${LDFLAGS}}"
+
+		emakeargs+=(
+			STAGE1_CFLAGS="${STAGE1_CFLAGS}"
+			STAGE1_LDFLAGS="${STAGE1_LDFLAGS}"
+			BOOT_CFLAGS="${BOOT_CFLAGS}"
+			BOOT_LDFLAGS="${BOOT_LDFLAGS}"
+			LDFLAGS_FOR_TARGET="${LDFLAGS_FOR_TARGET}"
+		)
 	fi
 
 	if is_jit ; then
@@ -1667,24 +1696,13 @@ gcc_do_make() {
 		pushd "${WORKDIR}"/build-jit > /dev/null || die
 
 		einfo "Building JIT"
-		emake \
-			LDFLAGS="${LDFLAGS}" \
-			STAGE1_CFLAGS="${STAGE1_CFLAGS}" \
-			LIBPATH="${LIBPATH}" \
-			BOOT_CFLAGS="${BOOT_CFLAGS}"
+		emake "${emakeargs[@]}"
 		popd > /dev/null || die
 	fi
 
 	einfo "Compiling ${PN} (${GCC_MAKE_TARGET})..."
-
 	pushd "${WORKDIR}"/build >/dev/null || die
-
-	emake \
-		LDFLAGS="${LDFLAGS}" \
-		STAGE1_CFLAGS="${STAGE1_CFLAGS}" \
-		LIBPATH="${LIBPATH}" \
-		BOOT_CFLAGS="${BOOT_CFLAGS}" \
-		${GCC_MAKE_TARGET}
+	emake "${emakeargs[@]}" ${GCC_MAKE_TARGET}
 
 	if is_ada; then
 		# Without these links, it is not getting the good compiler


^ permalink raw reply related	[flat|nested] 6131+ messages in thread

* [gentoo-commits] repo/gentoo:master commit in: eclass/
@ 2023-09-30  9:38 Sam James
  0 siblings, 0 replies; 6131+ messages in thread
From: Sam James @ 2023-09-30  9:38 UTC (permalink / raw
  To: gentoo-commits

commit:     5f54fc59c91393781a4fdace7e2cdc27f9651d15
Author:     Sam James <sam <AT> gentoo <DOT> org>
AuthorDate: Fri Sep 29 00:44:16 2023 +0000
Commit:     Sam James <sam <AT> gentoo <DOT> org>
CommitDate: Sat Sep 30 09:38:40 2023 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=5f54fc59

toolchain.eclass: support bootstrap-O3

Upstream are fine with bootstrapping with -O3, so don't strip it out if the user
set it, even with USE=-custom-cflags.

Signed-off-by: Sam James <sam <AT> gentoo.org>

 eclass/toolchain.eclass | 22 +++++++++++++++-------
 1 file changed, 15 insertions(+), 7 deletions(-)

diff --git a/eclass/toolchain.eclass b/eclass/toolchain.eclass
index a145e74d5521..90a6098445f5 100644
--- a/eclass/toolchain.eclass
+++ b/eclass/toolchain.eclass
@@ -753,6 +753,9 @@ setup_multilib_osdirnames() {
 #---->> src_configure <<----
 
 toolchain_src_configure() {
+	BUILD_CONFIG_TARGETS=()
+	is-flagq '-O3' && BUILD_CONFIG_TARGETS+=( bootstrap-O3 )
+
 	downgrade_arch_flags
 	gcc_do_filter_flags
 
@@ -772,8 +775,6 @@ toolchain_src_configure() {
 
 	local confgcc=( --host=${CHOST} )
 
-	local build_config_targets=()
-
 	if is_crosscompile || tc-is-cross-compiler ; then
 		# Straight from the GCC install doc:
 		# "GCC has code to correctly determine the correct value for target
@@ -898,11 +899,11 @@ toolchain_src_configure() {
 
 	# Build compiler itself using LTO
 	if tc_version_is_at_least 9.1 && _tc_use_if_iuse lto ; then
-		build_config_targets+=( bootstrap-lto )
+		BUILD_CONFIG_TARGETS+=( bootstrap-lto )
 	fi
 
 	if tc_version_is_at_least 12 && _tc_use_if_iuse cet ; then
-		build_config_targets+=( bootstrap-cet )
+		BUILD_CONFIG_TARGETS+=( bootstrap-cet )
 	fi
 
 	# Support to disable PCH when building libstdcxx
@@ -1321,9 +1322,9 @@ toolchain_src_configure() {
 
 	confgcc+=( "$@" ${EXTRA_ECONF} )
 
-	if ! is_crosscompile && ! tc-is-cross-compiler && [[ -n ${build_config_targets} ]] ; then
+	if ! is_crosscompile && ! tc-is-cross-compiler && [[ -n ${BUILD_CONFIG_TARGETS} ]] ; then
 		# e.g. ./configure --with-build-config='bootstrap-lto bootstrap-cet'
-		confgcc+=( --with-build-config="${build_config_targets[*]}" )
+		confgcc+=( --with-build-config="${BUILD_CONFIG_TARGETS[*]}" )
 	fi
 
 	# Nothing wrong with a good dose of verbosity
@@ -1501,7 +1502,14 @@ gcc_do_filter_flags() {
 
 		# Lock gcc at -O2; we want to be conservative here.
 		filter-flags '-O?'
-		append-flags -O2
+
+		# We allow -O3 given it's a supported option upstream.
+		# Only add -O2 if we're not doing -O3.
+		if [[ ${BUILD_CONFIG_TARGETS[@]} == *bootstrap-O3* ]] ; then
+			append-flags '-O3'
+		else
+			append-flags '-O2'
+		fi
 	fi
 
 	# Please use USE=lto instead (bug #906007).


^ permalink raw reply related	[flat|nested] 6131+ messages in thread

* [gentoo-commits] repo/gentoo:master commit in: eclass/
@ 2023-09-30 10:34 Sam James
  0 siblings, 0 replies; 6131+ messages in thread
From: Sam James @ 2023-09-30 10:34 UTC (permalink / raw
  To: gentoo-commits

commit:     7a1590d2e910c2a6d48aad377c34cf104cc486cb
Author:     Sam James <sam <AT> gentoo <DOT> org>
AuthorDate: Sat Sep 30 10:33:58 2023 +0000
Commit:     Sam James <sam <AT> gentoo <DOT> org>
CommitDate: Sat Sep 30 10:34:07 2023 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=7a1590d2

toolchain.eclass: handle ABIs with no multilib flags

Signed-off-by: Sam James <sam <AT> gentoo.org>

 eclass/toolchain.eclass | 4 +++-
 1 file changed, 3 insertions(+), 1 deletion(-)

diff --git a/eclass/toolchain.eclass b/eclass/toolchain.eclass
index 90576f2067ea..8df8b506b0b1 100644
--- a/eclass/toolchain.eclass
+++ b/eclass/toolchain.eclass
@@ -1693,7 +1693,9 @@ gcc_do_make() {
 		# XXX: Hack for bug #914881, clean this up when fixed and go back
 		# to just calling get_abi_LDFLAGS as before.
 		local abi_ldflags="$(get_abi_LDFLAGS ${TARGET_DEFAULT_ABI})"
-		printf -v abi_ldflags -- "-Wl,%s " ${abi_ldflags}
+		if [[ -n ${abi_ldflags} ]] ; then
+			printf -v abi_ldflags -- "-Wl,%s " ${abi_ldflags}
+		fi
 
 		# If the host compiler is too old, let's use -O0 per the upstream
 		# default to be safe (to avoid a bootstrap comparison failure later).


^ permalink raw reply related	[flat|nested] 6131+ messages in thread

* [gentoo-commits] repo/gentoo:master commit in: eclass/
@ 2023-10-01  7:27 Sam James
  0 siblings, 0 replies; 6131+ messages in thread
From: Sam James @ 2023-10-01  7:27 UTC (permalink / raw
  To: gentoo-commits

commit:     266937413dc4d234073f4cbc314c86cd22b913c5
Author:     Petr Vaněk <arkamar <AT> atlas <DOT> cz>
AuthorDate: Sun Sep 17 11:11:41 2023 +0000
Commit:     Sam James <sam <AT> gentoo <DOT> org>
CommitDate: Sun Oct  1 07:15:41 2023 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=26693741

toolchain-funcs.eclass: Remove outdated reference to tc-has-openmp

tc-has-openmp function was deprecated in commit 9bc832c6d39b
("toolchain-funcs.eclass: deprecate tc-has-openmp") and later removed in
commit eb970274d283 ("toolchain-funcs.eclass: remove tc-has-openmp").
Due to this, the reference to it in the tc-check-openmp function has
become redundant and is therefore removed.

Signed-off-by: Petr Vaněk <arkamar <AT> atlas.cz>
Closes: https://github.com/gentoo/gentoo/pull/32903
Signed-off-by: Sam James <sam <AT> gentoo.org>

 eclass/toolchain-funcs.eclass | 4 +---
 1 file changed, 1 insertion(+), 3 deletions(-)

diff --git a/eclass/toolchain-funcs.eclass b/eclass/toolchain-funcs.eclass
index 556bbac35307..8398ee004a7d 100644
--- a/eclass/toolchain-funcs.eclass
+++ b/eclass/toolchain-funcs.eclass
@@ -576,9 +576,7 @@ _tc-has-openmp() {
 # @DESCRIPTION:
 # Test for OpenMP support with the current compiler and error out with
 # a clear error message, telling the user how to rectify the missing
-# OpenMP support that has been requested by the ebuild. Using this function
-# to test for OpenMP support should be preferred over tc-has-openmp and
-# printing a custom message, as it presents a uniform interface to the user.
+# OpenMP support that has been requested by the ebuild.
 #
 # You should test for any necessary OpenMP support in pkg_pretend in order to
 # warn the user of required toolchain changes.  You must still check for OpenMP


^ permalink raw reply related	[flat|nested] 6131+ messages in thread

* [gentoo-commits] repo/gentoo:master commit in: eclass/
@ 2023-10-01  9:28 Andrew Ammerlaan
  0 siblings, 0 replies; 6131+ messages in thread
From: Andrew Ammerlaan @ 2023-10-01  9:28 UTC (permalink / raw
  To: gentoo-commits

commit:     151c847ec2fd8417433af2d8b0ceed5b786d6ce0
Author:     Andrew Ammerlaan <andrewammerlaan <AT> gentoo <DOT> org>
AuthorDate: Fri Sep 15 05:53:56 2023 +0000
Commit:     Andrew Ammerlaan <andrewammerlaan <AT> gentoo <DOT> org>
CommitDate: Sun Oct  1 09:27:18 2023 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=151c847e

kernel-build.eclass: drop obsolete if use secureboot statement

CONFIG_EFI_ZBOOT (among other things) is now set by secureboot.config in
GENTOO_CONFIG version g9 and up.

All {gentoo,vanilla}-kernel versions with "KERNEL_IUSE_MODULES_SIGN=1" and
GENTOO_CONFIG_VER<9 have been removed.

Signed-off-by: Andrew Ammerlaan <andrewammerlaan <AT> gentoo.org>
Closes: https://github.com/gentoo/gentoo/pull/32793
Signed-off-by: Andrew Ammerlaan <andrewammerlaan <AT> gentoo.org>

 eclass/kernel-build.eclass | 14 --------------
 1 file changed, 14 deletions(-)

diff --git a/eclass/kernel-build.eclass b/eclass/kernel-build.eclass
index 01cd184f41c0..4f7e4d047739 100644
--- a/eclass/kernel-build.eclass
+++ b/eclass/kernel-build.eclass
@@ -444,20 +444,6 @@ kernel-build_merge_configs() {
 		fi
 	fi
 
-	if [[ ${KERNEL_IUSE_SECUREBOOT} ]]; then
-		if use secureboot; then
-			# This only effects arm64 and riscv where the bootable image may
-			# contain its own decompressor (zboot). If enabled we get a
-			# sign-able efi file.
-			cat <<-EOF > "${WORKDIR}/secureboot.config" || die
-				## Enable zboot for signing
-				CONFIG_EFI_ZBOOT=y
-			EOF
-
-			merge_configs+=( "${WORKDIR}/secureboot.config" )
-		fi
-	fi
-
 	if [[ ${#user_configs[@]} -gt 0 ]]; then
 		elog "User config files are being applied:"
 		local x


^ permalink raw reply related	[flat|nested] 6131+ messages in thread

* [gentoo-commits] repo/gentoo:master commit in: eclass/
@ 2023-10-01 18:16 Mike Gilbert
  0 siblings, 0 replies; 6131+ messages in thread
From: Mike Gilbert @ 2023-10-01 18:16 UTC (permalink / raw
  To: gentoo-commits

commit:     866faf07e36ba85b4c1cce2ac642eb5b7b041f57
Author:     Florian Schmaus <flow <AT> gentoo <DOT> org>
AuthorDate: Wed Sep 27 14:08:05 2023 +0000
Commit:     Mike Gilbert <floppym <AT> gentoo <DOT> org>
CommitDate: Sun Oct  1 18:16:06 2023 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=866faf07

systemd.eclass: add systemd_install_dropin

Closes: https://bugs.gentoo.org/876658
Signed-off-by: Florian Schmaus <flow <AT> gentoo.org>
Closes: https://github.com/gentoo/gentoo/pull/33089
Signed-off-by: Mike Gilbert <floppym <AT> gentoo.org>

 eclass/systemd.eclass | 44 +++++++++++++++++++++++++++++++++++++++++++-
 1 file changed, 43 insertions(+), 1 deletion(-)

diff --git a/eclass/systemd.eclass b/eclass/systemd.eclass
index fbed387e0ca0..03d6a82fd310 100644
--- a/eclass/systemd.eclass
+++ b/eclass/systemd.eclass
@@ -1,4 +1,4 @@
-# Copyright 2011-2022 Gentoo Authors
+# Copyright 2011-2023 Gentoo Authors
 # Distributed under the terms of the GNU General Public License v2
 
 # @ECLASS: systemd.eclass
@@ -227,6 +227,48 @@ systemd_install_serviced() {
 	)
 }
 
+# @FUNCTION: systemd_install_dropin
+# @USAGE: [--user] <unit> <conf-file>
+# @DESCRIPTION:
+# Install <conf-file> as the dropin file <unit>.d/00gentoo.conf,
+# overriding the settings of <unit>.
+# Defaults to system unit dropins, unless --user is provided,
+# which causes the dropin to be installed for user units.
+# The required argument <conf-file> may be '-', in which case the
+# file is read from stdin and <unit> must also be specified.
+# @EXAMPLE:
+# systemd_install_dropin foo.service "${FILESDIR}/foo.service.conf"
+# systemd_install_dropin foo.service - <<-EOF
+# 	[Service]
+# 	RestartSec=120
+# EOF
+systemd_install_dropin() {
+	debug-print-function ${FUNCNAME} "${@}"
+
+	local basedir
+	if [[ $# -ge 1 ]] && [[ $1 == "--user" ]]; then
+		basedir=$(_systemd_unprefix systemd_get_userunitdir)
+		shift 1
+	else
+		basedir=$(_systemd_unprefix systemd_get_systemunitdir)
+	fi
+
+	local unit=${1}
+	local src=${2}
+
+	[[ ${unit} ]] || die "No unit specified"
+	[[ ${src} ]] || die "No conf file specified"
+
+	# avoid potentially common mistake
+	[[ ${unit} == *.d ]] && die "Unit ${unit} must not have .d suffix"
+
+	(
+		insopts -m 0644
+		insinto "${basedir}/${unit}".d
+		newins "${src}" 00gentoo.conf
+	)
+}
+
 # @FUNCTION: systemd_enable_service
 # @USAGE: <target> <service>
 # @DESCRIPTION:


^ permalink raw reply related	[flat|nested] 6131+ messages in thread

* [gentoo-commits] repo/gentoo:master commit in: eclass/
@ 2023-10-02 17:51 Michał Górny
  0 siblings, 0 replies; 6131+ messages in thread
From: Michał Górny @ 2023-10-02 17:51 UTC (permalink / raw
  To: gentoo-commits

commit:     20b1f4a8ad8ccc2acad0f9042dedd07b12779b7b
Author:     Michał Górny <mgorny <AT> gentoo <DOT> org>
AuthorDate: Mon Oct  2 15:32:09 2023 +0000
Commit:     Michał Górny <mgorny <AT> gentoo <DOT> org>
CommitDate: Mon Oct  2 17:51:05 2023 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=20b1f4a8

llvm.org.eclass: Remove support for old snapshots

Signed-off-by: Michał Górny <mgorny <AT> gentoo.org>

 eclass/llvm.org.eclass | 9 ---------
 1 file changed, 9 deletions(-)

diff --git a/eclass/llvm.org.eclass b/eclass/llvm.org.eclass
index 5efa80ce67e8..c04d4063a593 100644
--- a/eclass/llvm.org.eclass
+++ b/eclass/llvm.org.eclass
@@ -75,15 +75,6 @@ if [[ -z ${_LLVM_SOURCE_TYPE+1} ]]; then
 				18.0.0_pre20230925)
 					EGIT_COMMIT=f5cb9cb59d7c9c6ac3d5c41c677f68c9b75d34a3
 					;;
-				18.0.0_pre20230906)
-					EGIT_COMMIT=7e5809e7e7bc9a828427b6540a51d45884d8bbbb
-					;;
-				18.0.0_pre20230829)
-					EGIT_COMMIT=f6259d9b9a546dbfa5bc2f29313c6edd6c701177
-					;;
-				18.0.0_pre20230825)
-					EGIT_COMMIT=e3373c6c83d3855adb78f1952a3bf0398baf359e
-					;;
 				*)
 					die "Unknown snapshot: ${PV}"
 					;;


^ permalink raw reply related	[flat|nested] 6131+ messages in thread

* [gentoo-commits] repo/gentoo:master commit in: eclass/
@ 2023-10-02 19:39 Michał Górny
  0 siblings, 0 replies; 6131+ messages in thread
From: Michał Górny @ 2023-10-02 19:39 UTC (permalink / raw
  To: gentoo-commits

commit:     c479d45b860795c981dc0aa2803b6fb1a5962304
Author:     Michał Górny <mgorny <AT> gentoo <DOT> org>
AuthorDate: Mon Oct  2 18:27:44 2023 +0000
Commit:     Michał Górny <mgorny <AT> gentoo <DOT> org>
CommitDate: Mon Oct  2 19:39:16 2023 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=c479d45b

llvm.org.eclass: Add 18.0.0_pre20231002 snapshot

Signed-off-by: Michał Górny <mgorny <AT> gentoo.org>

 eclass/llvm.org.eclass | 3 +++
 1 file changed, 3 insertions(+)

diff --git a/eclass/llvm.org.eclass b/eclass/llvm.org.eclass
index c04d4063a593..a43cef51ef81 100644
--- a/eclass/llvm.org.eclass
+++ b/eclass/llvm.org.eclass
@@ -72,6 +72,9 @@ if [[ -z ${_LLVM_SOURCE_TYPE+1} ]]; then
 			_LLVM_SOURCE_TYPE=snapshot
 
 			case ${PV} in
+				18.0.0_pre20231002)
+					EGIT_COMMIT=39fec5457c0925bd39f67f63fe17391584e08258
+					;;
 				18.0.0_pre20230925)
 					EGIT_COMMIT=f5cb9cb59d7c9c6ac3d5c41c677f68c9b75d34a3
 					;;


^ permalink raw reply related	[flat|nested] 6131+ messages in thread

* [gentoo-commits] repo/gentoo:master commit in: eclass/
@ 2023-10-05 11:12 Sam James
  0 siblings, 0 replies; 6131+ messages in thread
From: Sam James @ 2023-10-05 11:12 UTC (permalink / raw
  To: gentoo-commits

commit:     6510a7093f6ab76c7541de9dc1d0a1a56c711748
Author:     Sam James <sam <AT> gentoo <DOT> org>
AuthorDate: Thu Oct  5 11:08:47 2023 +0000
Commit:     Sam James <sam <AT> gentoo <DOT> org>
CommitDate: Thu Oct  5 11:11:58 2023 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=6510a709

flag-o-matic.eclass: allow -mbranch-protection=*

Newer arm64 HW has this.

Signed-off-by: Sam James <sam <AT> gentoo.org>

 eclass/flag-o-matic.eclass | 1 +
 1 file changed, 1 insertion(+)

diff --git a/eclass/flag-o-matic.eclass b/eclass/flag-o-matic.eclass
index 5e523974d25c..bf4a8397c5d1 100644
--- a/eclass/flag-o-matic.eclass
+++ b/eclass/flag-o-matic.eclass
@@ -61,6 +61,7 @@ _setup-allowed-flags() {
 		-mindirect-branch-register
 		'-mfunction-return=*'
 		-mretpoline
+		'-mbranch-protection=*'
 
 		# Misc
 		-fno-unit-at-a-time -fno-strict-overflow


^ permalink raw reply related	[flat|nested] 6131+ messages in thread

* [gentoo-commits] repo/gentoo:master commit in: eclass/
@ 2023-10-05 11:12 Sam James
  0 siblings, 0 replies; 6131+ messages in thread
From: Sam James @ 2023-10-05 11:12 UTC (permalink / raw
  To: gentoo-commits

commit:     1a315332a1dac8afb0cbd3b6125e1d387e15ac20
Author:     Sam James <sam <AT> gentoo <DOT> org>
AuthorDate: Thu Oct  5 11:07:26 2023 +0000
Commit:     Sam James <sam <AT> gentoo <DOT> org>
CommitDate: Thu Oct  5 11:11:34 2023 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=1a315332

flag-o-matic.eclass: allow -mno-omit-leaf-frame-pointer

Just like -fno-omit-frame-pointer.

Signed-off-by: Sam James <sam <AT> gentoo.org>

 eclass/flag-o-matic.eclass | 1 +
 1 file changed, 1 insertion(+)

diff --git a/eclass/flag-o-matic.eclass b/eclass/flag-o-matic.eclass
index b4c27bf89d92..5e523974d25c 100644
--- a/eclass/flag-o-matic.eclass
+++ b/eclass/flag-o-matic.eclass
@@ -95,6 +95,7 @@ _setup-allowed-flags() {
 		'-fno-stack-protector*' '-fabi-version=*'
 		-fno-strict-aliasing -fno-bounds-check -fno-bounds-checking -fstrict-overflow
 		-fno-omit-frame-pointer '-fno-builtin*'
+		-mno-omit-leaf-frame-pointer
 	)
 	ALLOWED_FLAGS+=(
 		'-mregparm=*' -mno-app-regs -mapp-regs -mno-mmx -mno-sse


^ permalink raw reply related	[flat|nested] 6131+ messages in thread

* [gentoo-commits] repo/gentoo:master commit in: eclass/
@ 2023-10-05 11:12 Sam James
  0 siblings, 0 replies; 6131+ messages in thread
From: Sam James @ 2023-10-05 11:12 UTC (permalink / raw
  To: gentoo-commits

commit:     cc7061ee5e3bfd1a7a1bcbdc44f1bd1d69fda495
Author:     Sam James <sam <AT> gentoo <DOT> org>
AuthorDate: Thu Oct  5 11:11:10 2023 +0000
Commit:     Sam James <sam <AT> gentoo <DOT> org>
CommitDate: Thu Oct  5 11:12:29 2023 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=cc7061ee

flag-o-matic.eclass: allow --unwindlib/--rtlib/--stdlib too

We may want to gate these just for Clang but they (at least --stdlib) affect
ABI so we shouldn't be filtering these.

Signed-off-by: Sam James <sam <AT> gentoo.org>

 eclass/flag-o-matic.eclass | 6 ++++++
 1 file changed, 6 insertions(+)

diff --git a/eclass/flag-o-matic.eclass b/eclass/flag-o-matic.eclass
index bf4a8397c5d1..c0b042d5348d 100644
--- a/eclass/flag-o-matic.eclass
+++ b/eclass/flag-o-matic.eclass
@@ -134,6 +134,12 @@ _setup-allowed-flags() {
 		# binaries: bug #677852
 		-mstackrealign
 	)
+	ALLOWED_FLAGS+=(
+		# Clang-only
+		'--unwindlib=*'
+		'--rtlib=*'
+		'--stdlib=*'
+	)
 }
 
 # @FUNCTION: _filter-hardened


^ permalink raw reply related	[flat|nested] 6131+ messages in thread

* [gentoo-commits] repo/gentoo:master commit in: eclass/
@ 2023-10-08 10:03 Hans de Graaff
  0 siblings, 0 replies; 6131+ messages in thread
From: Hans de Graaff @ 2023-10-08 10:03 UTC (permalink / raw
  To: gentoo-commits

commit:     20ea5b285d0dc12a7649e5bda5cc9c871cc0bad0
Author:     Hans de Graaff <graaff <AT> gentoo <DOT> org>
AuthorDate: Fri Sep 29 06:32:20 2023 +0000
Commit:     Hans de Graaff <graaff <AT> gentoo <DOT> org>
CommitDate: Sun Oct  8 10:03:29 2023 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=20ea5b28

eclass/depend.apache: enable EAPI 8

Bug: https://bugs.gentoo.org/914200

Signed-off-by: Hans de Graaff <graaff <AT> gentoo.org>

 eclass/depend.apache.eclass | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/eclass/depend.apache.eclass b/eclass/depend.apache.eclass
index 4d1ca573611b..8f0469931d2c 100644
--- a/eclass/depend.apache.eclass
+++ b/eclass/depend.apache.eclass
@@ -4,7 +4,7 @@
 # @ECLASS: depend.apache.eclass
 # @MAINTAINER:
 # apache-bugs@gentoo.org
-# @SUPPORTED_EAPIS: 6 7
+# @SUPPORTED_EAPIS: 6 7 8
 # @BLURB: Functions to allow ebuilds to depend on apache
 # @DESCRIPTION:
 # This eclass handles depending on apache in a sane way and provides information
@@ -41,7 +41,7 @@
 # @CODE
 
 case ${EAPI:-0} in
-	6|7)
+	6|7|8)
 		;;
 	*)
 		die "EAPI=${EAPI} is not supported by depend.apache.eclass"


^ permalink raw reply related	[flat|nested] 6131+ messages in thread

* [gentoo-commits] repo/gentoo:master commit in: eclass/
@ 2023-10-08 10:03 Hans de Graaff
  0 siblings, 0 replies; 6131+ messages in thread
From: Hans de Graaff @ 2023-10-08 10:03 UTC (permalink / raw
  To: gentoo-commits

commit:     0dcaafc4c96820046d5c3afd7c3da7d148cc4e5b
Author:     Hans de Graaff <graaff <AT> gentoo <DOT> org>
AuthorDate: Fri Sep 29 06:24:29 2023 +0000
Commit:     Hans de Graaff <graaff <AT> gentoo <DOT> org>
CommitDate: Sun Oct  8 10:03:22 2023 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=0dcaafc4

eclass/depend.apache: deprecate apache 2.2 methods

www-servers/apache-2.2 has been removed in 2019.

Signed-off-by: Hans de Graaff <graaff <AT> gentoo.org>

 eclass/depend.apache.eclass | 30 ++++++++++++++++++++++--------
 1 file changed, 22 insertions(+), 8 deletions(-)

diff --git a/eclass/depend.apache.eclass b/eclass/depend.apache.eclass
index 4dc3f68daabc..4d1ca573611b 100644
--- a/eclass/depend.apache.eclass
+++ b/eclass/depend.apache.eclass
@@ -109,7 +109,7 @@ APACHE2_DEPEND="=www-servers/apache-2*"
 
 # @ECLASS_VARIABLE: APACHE2_2_DEPEND
 # @DESCRIPTION:
-# Dependencies for Apache 2.2.x
+# Dependencies for Apache 2.2.x. Deprecated and removed in EAPI 8.
 APACHE2_2_DEPEND="=www-servers/apache-2.2*"
 
 # @ECLASS_VARIABLE: APACHE2_4_DEPEND
@@ -215,10 +215,17 @@ want_apache2() {
 want_apache2_2() {
 	debug-print-function $FUNCNAME $*
 
-	local myiuse=${1:-apache2}
-	IUSE="${IUSE} ${myiuse}"
-	DEPEND="${DEPEND} ${myiuse}? ( ${APACHE2_2_DEPEND} )"
-	RDEPEND="${RDEPEND} ${myiuse}? ( ${APACHE2_2_DEPEND} )"
+	case ${EAPI:-0} in
+		6|7)
+			local myiuse=${1:-apache2}
+			IUSE="${IUSE} ${myiuse}"
+			DEPEND="${DEPEND} ${myiuse}? ( ${APACHE2_2_DEPEND} )"
+			RDEPEND="${RDEPEND} ${myiuse}? ( ${APACHE2_2_DEPEND} )"
+			;;
+		*)
+			errror "want-apache2_2 is no longer supported in EAPI 8"
+			;;
+	esac
 }
 
 # @FUNCTION: want_apache2_4
@@ -263,9 +270,16 @@ need_apache2() {
 need_apache2_2() {
 	debug-print-function $FUNCNAME $*
 
-	DEPEND="${DEPEND} ${APACHE2_2_DEPEND}"
-	RDEPEND="${RDEPEND} ${APACHE2_2_DEPEND}"
-	_init_apache2
+	case ${EAPI:-0} in
+		6|7)
+			DEPEND="${DEPEND} ${APACHE2_2_DEPEND}"
+			RDEPEND="${RDEPEND} ${APACHE2_2_DEPEND}"
+			_init_apache2
+			;;
+		*)
+			error "need_apache2-2 is no longer supported in EAPI 8"
+			;;
+	esac
 }
 
 # @FUNCTION: need_apache2_4


^ permalink raw reply related	[flat|nested] 6131+ messages in thread

* [gentoo-commits] repo/gentoo:master commit in: eclass/
@ 2023-10-08 10:03 Hans de Graaff
  0 siblings, 0 replies; 6131+ messages in thread
From: Hans de Graaff @ 2023-10-08 10:03 UTC (permalink / raw
  To: gentoo-commits

commit:     fdf47ff7281a39aa2964729eac21450d19d24340
Author:     Hans de Graaff <graaff <AT> gentoo <DOT> org>
AuthorDate: Fri Sep 29 06:38:47 2023 +0000
Commit:     Hans de Graaff <graaff <AT> gentoo <DOT> org>
CommitDate: Sun Oct  8 10:03:34 2023 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=fdf47ff7

eclass/apache-module.eclass: enable EAPI 8

Closes: https://bugs.gentoo.org/914200
Signed-off-by: Hans de Graaff <graaff <AT> gentoo.org>

 eclass/apache-module.eclass | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/eclass/apache-module.eclass b/eclass/apache-module.eclass
index 8074aff5ddcb..5a84ffedf71a 100644
--- a/eclass/apache-module.eclass
+++ b/eclass/apache-module.eclass
@@ -4,7 +4,7 @@
 # @ECLASS: apache-module.eclass
 # @MAINTAINER:
 # apache-bugs@gentoo.org
-# @SUPPORTED_EAPIS: 6 7
+# @SUPPORTED_EAPIS: 6 7 8
 # @BLURB: Provides a common set of functions for apache modules
 # @DESCRIPTION:
 # This eclass handles apache modules in a sane way.
@@ -45,7 +45,7 @@
 # @CODE
 
 case ${EAPI} in
-	6|7) ;;
+	6|7|8) ;;
 	*) die "${ECLASS}: EAPI ${EAPI:-0} not supported" ;;
 esac
 


^ permalink raw reply related	[flat|nested] 6131+ messages in thread

* [gentoo-commits] repo/gentoo:master commit in: eclass/
@ 2023-10-09 10:54 Florian Schmaus
  0 siblings, 0 replies; 6131+ messages in thread
From: Florian Schmaus @ 2023-10-09 10:54 UTC (permalink / raw
  To: gentoo-commits

commit:     7bdd7fed54b73d349c5bd4f9b81e3e3d4544bf56
Author:     Florian Schmaus <flow <AT> gentoo <DOT> org>
AuthorDate: Sun Aug 20 11:09:30 2023 +0000
Commit:     Florian Schmaus <flow <AT> gentoo <DOT> org>
CommitDate: Mon Oct  9 10:54:06 2023 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=7bdd7fed

ninja-utils.eclass: use get_makeopts_{jobs,loadavg}

Signed-off-by: Florian Schmaus <flow <AT> gentoo.org>

 eclass/ninja-utils.eclass | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/eclass/ninja-utils.eclass b/eclass/ninja-utils.eclass
index 5a211e81131d..859938cb3047 100644
--- a/eclass/ninja-utils.eclass
+++ b/eclass/ninja-utils.eclass
@@ -72,7 +72,7 @@ esac
 # Get the value of NINJAOPTS, inferring them from MAKEOPTS if unset.
 get_NINJAOPTS() {
 	if [[ -z ${NINJAOPTS+set} ]]; then
-		NINJAOPTS="-j$(makeopts_jobs "${MAKEOPTS}" 999) -l$(makeopts_loadavg "${MAKEOPTS}" 0)"
+		NINJAOPTS="-j$(get_makeopts_jobs 999) -l$(get_makeopts_loadavg 0)"
 	fi
 	echo "${NINJAOPTS}"
 }


^ permalink raw reply related	[flat|nested] 6131+ messages in thread

* [gentoo-commits] repo/gentoo:master commit in: eclass/
@ 2023-10-09 10:54 Florian Schmaus
  0 siblings, 0 replies; 6131+ messages in thread
From: Florian Schmaus @ 2023-10-09 10:54 UTC (permalink / raw
  To: gentoo-commits

commit:     85eb4cfe2f740d281b497787c544889c87fabb1f
Author:     Florian Schmaus <flow <AT> gentoo <DOT> org>
AuthorDate: Sun Aug 20 11:09:42 2023 +0000
Commit:     Florian Schmaus <flow <AT> gentoo <DOT> org>
CommitDate: Mon Oct  9 10:54:07 2023 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=85eb4cfe

meson.eclass: use get_makeopts_{jobs,loadavg}

Signed-off-by: Florian Schmaus <flow <AT> gentoo.org>
Closes: https://github.com/gentoo/gentoo/pull/32385

 eclass/meson.eclass | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/eclass/meson.eclass b/eclass/meson.eclass
index 5aff3eb58930..4757f3fa5eef 100644
--- a/eclass/meson.eclass
+++ b/eclass/meson.eclass
@@ -388,8 +388,8 @@ meson_src_compile() {
 
 	local mesoncompileargs=(
 		-C "${BUILD_DIR}"
-		--jobs "$(makeopts_jobs "${MAKEOPTS}" 0)"
-		--load-average "$(makeopts_loadavg "${MAKEOPTS}" 0)"
+		--jobs "$(get_makeopts_jobs 0)"
+		--load-average "$(get_makeopts_loadavg 0)"
 	)
 
 	case ${MESON_VERBOSE} in


^ permalink raw reply related	[flat|nested] 6131+ messages in thread

* [gentoo-commits] repo/gentoo:master commit in: eclass/
@ 2023-10-09 20:28 James Le Cuirot
  0 siblings, 0 replies; 6131+ messages in thread
From: James Le Cuirot @ 2023-10-09 20:28 UTC (permalink / raw
  To: gentoo-commits

commit:     a0a74e8c5395551d3e878e701529bcc3e901c85f
Author:     James Le Cuirot <chewi <AT> gentoo <DOT> org>
AuthorDate: Wed Sep 27 21:29:33 2023 +0000
Commit:     James Le Cuirot <chewi <AT> gentoo <DOT> org>
CommitDate: Mon Oct  9 20:25:19 2023 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=a0a74e8c

distutils-r1.eclass: Make use of gpep517's new build-wheel --prefix arg

This fixes cross-prefix installations.

Signed-off-by: James Le Cuirot <chewi <AT> gentoo.org>

 eclass/distutils-r1.eclass | 3 ++-
 1 file changed, 2 insertions(+), 1 deletion(-)

diff --git a/eclass/distutils-r1.eclass b/eclass/distutils-r1.eclass
index 56afcdc5bcb8..1cc91110dccf 100644
--- a/eclass/distutils-r1.eclass
+++ b/eclass/distutils-r1.eclass
@@ -210,7 +210,7 @@ _distutils_set_globals() {
 		fi
 
 		bdep='
-			>=dev-python/gpep517-13[${PYTHON_USEDEP}]
+			>=dev-python/gpep517-15[${PYTHON_USEDEP}]
 		'
 		case ${DISTUTILS_USE_PEP517} in
 			flit)
@@ -1444,6 +1444,7 @@ distutils_pep517_install() {
 	einfo "  Building the wheel for ${PWD#${WORKDIR}/} via ${build_backend}"
 	local cmd=(
 		gpep517 build-wheel
+			--prefix="${EPREFIX}/usr"
 			--backend "${build_backend}"
 			--output-fd 3
 			--wheel-dir "${WHEEL_BUILD_DIR}"


^ permalink raw reply related	[flat|nested] 6131+ messages in thread

* [gentoo-commits] repo/gentoo:master commit in: eclass/
@ 2023-10-12 15:52 Maciej Barć
  0 siblings, 0 replies; 6131+ messages in thread
From: Maciej Barć @ 2023-10-12 15:52 UTC (permalink / raw
  To: gentoo-commits

commit:     5029c6a4dd5faabea84022b34daa71ff7771daab
Author:     Maciej Barć <xgqt <AT> gentoo <DOT> org>
AuthorDate: Thu Oct  5 19:10:15 2023 +0000
Commit:     Maciej Barć <xgqt <AT> gentoo <DOT> org>
CommitDate: Thu Oct 12 15:52:26 2023 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=5029c6a4

eclass/dotnet-pkg*: remove unnecessary auto-append of project dir

Also reorder dotnet-pkg-base_foreach-solution argument positions.

Signed-off-by: Maciej Barć <xgqt <AT> gentoo.org>

 eclass/dotnet-pkg-base.eclass | 56 ++++++++++++++++++-------------------------
 eclass/dotnet-pkg.eclass      |  6 +++--
 2 files changed, 27 insertions(+), 35 deletions(-)

diff --git a/eclass/dotnet-pkg-base.eclass b/eclass/dotnet-pkg-base.eclass
index c7f2e031daec..e2659a829e19 100644
--- a/eclass/dotnet-pkg-base.eclass
+++ b/eclass/dotnet-pkg-base.eclass
@@ -305,35 +305,37 @@ dotnet-pkg-base_info() {
 }
 
 # @FUNCTION: dotnet-pkg-base_foreach-solution
-# @USAGE: <function> [directory]
+# @USAGE: <directory> <args> ...
 # @DESCRIPTION:
 # Execute a function for each solution file (.sln) in a specified directory.
 # This function may yield no real results because solutions are discovered
 # automatically.
 #
-# Optional "directory" argument defaults to the current directory path.
-#
-# Used by "dotnet-pkg_src_configure" from the "dotnet-pkg" eclass.
+# Used by "dotnet-pkg_src_configure" and "dotnet-pkg_src_test" from
+# the "dotnet-pkg" eclass.
 dotnet-pkg-base_foreach-solution() {
 	debug-print-function "${FUNCNAME[0]}" "${@}"
 
+	local directory="${1}"
+	shift
+
 	local dotnet_solution
 	local dotnet_solution_name
 	while read -r dotnet_solution ; do
 		dotnet_solution_name="$(basename "${dotnet_solution}")"
 
-		ebegin "Running \"${1}\" for solution: \"${dotnet_solution_name}\""
-		"${1}" "${dotnet_solution}"
+		ebegin "Running \"${@}\" for solution: \"${dotnet_solution_name}\""
+		"${@}" "${dotnet_solution}"
 		eend $? "${FUNCNAME[0]}: failed for solution: \"${dotnet_solution}\"" || die
-	done < <(find "${2:-.}" -maxdepth 1 -type f -name "*.sln")
+	done < <(find "${directory}" -maxdepth 1 -type f -name "*.sln")
 }
 
 # @FUNCTION: dotnet-pkg-base_restore
-# @USAGE: [directory] [args] ...
+# @USAGE: [args] ...
 # @DESCRIPTION:
-# Restore the package using "dotnet restore" in a specified directory.
-#
-# Optional "directory" argument defaults to the current directory path.
+# Restore the package using "dotnet restore".
+# Restore is performed in current directory unless a different directory is
+# passed via "args".
 #
 # Additionally any number of "args" maybe be given, they are appended to
 # the "dotnet" command invocation.
@@ -342,14 +344,6 @@ dotnet-pkg-base_foreach-solution() {
 dotnet-pkg-base_restore() {
 	debug-print-function "${FUNCNAME[0]}" "${@}"
 
-	local directory
-	if [[ "${1}" ]] ; then
-		directory="${1}"
-		shift
-	else
-		directory="$(pwd)"
-	fi
-
 	local -a restore_args=(
 		--runtime "${DOTNET_PKG_RUNTIME}"
 		--source "${NUGET_PACKAGES}"
@@ -357,7 +351,7 @@ dotnet-pkg-base_restore() {
 		"${@}"
 	)
 
-	edotnet restore "${restore_args[@]}" "${directory}"
+	edotnet restore "${restore_args[@]}"
 }
 
 # @FUNCTION: dotnet-pkg-base_restore_tools
@@ -388,11 +382,11 @@ dotnet-pkg-base_restore_tools() {
 }
 
 # @FUNCTION: dotnet-pkg-base_build
-# @USAGE: [directory] [args] ...
+# @USAGE: [args] ...
 # @DESCRIPTION:
 # Build the package using "dotnet build" in a specified directory.
-#
-# Optional "directory" argument defaults to the current directory path.
+# Build is performed in current directory unless a different directory is
+# passed via "args".
 #
 # Additionally any number of "args" maybe be given, they are appended to
 # the "dotnet" command invocation.
@@ -401,14 +395,6 @@ dotnet-pkg-base_restore_tools() {
 dotnet-pkg-base_build() {
 	debug-print-function "${FUNCNAME[0]}" "${@}"
 
-	local directory
-	if [[ "${1}" ]] ; then
-		directory="${1}"
-		shift
-	else
-		directory="$(pwd)"
-	fi
-
 	local -a build_args=(
 		--configuration "${DOTNET_PKG_CONFIGURATION}"
 		--no-restore
@@ -416,7 +402,6 @@ dotnet-pkg-base_build() {
 		--output "${DOTNET_PKG_OUTPUT}"
 		--runtime "${DOTNET_PKG_RUNTIME}"
 		-maxCpuCount:$(makeopts_jobs)
-		"${@}"
 	)
 
 	if ! use debug ; then
@@ -426,7 +411,12 @@ dotnet-pkg-base_build() {
 		)
 	fi
 
-	edotnet build "${build_args[@]}" "${directory}"
+	# And append "args" at the end.
+	build_args+=(
+		"${@}"
+	)
+
+	edotnet build "${build_args[@]}"
 }
 
 # @FUNCTION: dotnet-pkg-base_test

diff --git a/eclass/dotnet-pkg.eclass b/eclass/dotnet-pkg.eclass
index 05886af8554f..201daf1ecce3 100644
--- a/eclass/dotnet-pkg.eclass
+++ b/eclass/dotnet-pkg.eclass
@@ -194,7 +194,9 @@ dotnet-pkg_src_configure() {
 	dotnet-pkg_foreach-project \
 		dotnet-pkg-base_restore "${DOTNET_PKG_RESTORE_EXTRA_ARGS[@]}"
 
-	dotnet-pkg-base_foreach-solution dotnet-pkg-base_restore "$(pwd)"
+	dotnet-pkg-base_foreach-solution \
+		"$(pwd)" \
+		dotnet-pkg-base_restore "${DOTNET_PKG_RESTORE_EXTRA_ARGS[@]}"
 }
 
 # @FUNCTION: dotnet-pkg_src_compile
@@ -223,7 +225,7 @@ dotnet-pkg_src_compile() {
 # will execute wrong or incomplete test suite. Maintainers should inspect if
 # any and/or correct tests are ran.
 dotnet-pkg_src_test() {
-	dotnet-pkg-base_foreach-solution dotnet-pkg-base_test "$(pwd)"
+	dotnet-pkg-base_foreach-solution "$(pwd)" dotnet-pkg-base_test
 }
 
 # @FUNCTION: dotnet-pkg_src_install


^ permalink raw reply related	[flat|nested] 6131+ messages in thread

* [gentoo-commits] repo/gentoo:master commit in: eclass/
@ 2023-10-12 15:52 Maciej Barć
  0 siblings, 0 replies; 6131+ messages in thread
From: Maciej Barć @ 2023-10-12 15:52 UTC (permalink / raw
  To: gentoo-commits

commit:     e794e1d12b483a574811fa94081e35270ff7b84d
Author:     Maciej Barć <xgqt <AT> gentoo <DOT> org>
AuthorDate: Thu Oct 12 08:23:36 2023 +0000
Commit:     Maciej Barć <xgqt <AT> gentoo <DOT> org>
CommitDate: Thu Oct 12 15:52:27 2023 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=e794e1d1

eclass/dotnet-pkg.eclass: update eclass variable docs

Signed-off-by: Maciej Barć <xgqt <AT> gentoo.org>

 eclass/dotnet-pkg.eclass | 15 +++++++--------
 1 file changed, 7 insertions(+), 8 deletions(-)

diff --git a/eclass/dotnet-pkg.eclass b/eclass/dotnet-pkg.eclass
index 86ec2e5a7fc1..9d78f463be77 100644
--- a/eclass/dotnet-pkg.eclass
+++ b/eclass/dotnet-pkg.eclass
@@ -60,10 +60,9 @@ BDEPEND+=" ${DOTNET_PKG_BDEPS} "
 # "dotnet-pkg-base_build" will fail when pointed to a solution or a directory
 # containing a solution file.
 #
-# It is up to the maintainer if this variable is set before inheriting
-# "dotnet-pkg-base" eclass, but it is advised that it is set after
-# the variable "${S}" is set, it should also integrate with it
-# (see the example below).
+# This variable should be set after inheriting "dotnet-pkg.eclass",
+# it is also advised that it is set after the variable "${S}" is set.
+# "DOTNET_PKG_PROJECTS" can integrate with "S" (see the example below).
 #
 # Example:
 # @CODE
@@ -87,8 +86,8 @@ BDEPEND+=" ${DOTNET_PKG_BDEPS} "
 # This is passed only when restoring the specified "DOTNET_PROJECT".
 # Other project restorers do not use this variable.
 #
-# It is up to the maintainer if this variable is set before inheriting
-# "dotnet-pkg.eclass", but it is advised that it is set after the variable
+# This variable should be set after inheriting "dotnet-pkg.eclass",
+# it is also advised that it is set after the variable
 # "DOTNET_PROJECT" (from "dotnet-pkg-base" eclass) is set.
 #
 # Default value is an empty array.
@@ -103,8 +102,8 @@ DOTNET_PKG_RESTORE_EXTRA_ARGS=()
 # This is passed only when building the specified "DOTNET_PROJECT".
 # Other project builds do not use this variable.
 #
-# It is up to the maintainer if this variable is set before inheriting
-# "dotnet-pkg.eclass", but it is advised that it is set after the variable
+# This variable should be set after inheriting "dotnet-pkg.eclass",
+# it is also advised that it is set after the variable
 # "DOTNET_PROJECT" (from "dotnet-pkg-base" eclass) is set.
 #
 # Default value is an empty array.


^ permalink raw reply related	[flat|nested] 6131+ messages in thread

* [gentoo-commits] repo/gentoo:master commit in: eclass/
@ 2023-10-12 15:52 Maciej Barć
  0 siblings, 0 replies; 6131+ messages in thread
From: Maciej Barć @ 2023-10-12 15:52 UTC (permalink / raw
  To: gentoo-commits

commit:     dbceb10a20c60ebea3dfce9062932cbc22526741
Author:     Maciej Barć <xgqt <AT> gentoo <DOT> org>
AuthorDate: Thu Oct  5 19:10:16 2023 +0000
Commit:     Maciej Barć <xgqt <AT> gentoo <DOT> org>
CommitDate: Thu Oct 12 15:52:27 2023 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=dbceb10a

eclass/dotnet-pkg-base.eclass: clarify test, quotes in dolauncher

Signed-off-by: Maciej Barć <xgqt <AT> gentoo.org>

 eclass/dotnet-pkg-base.eclass | 12 ++++++------
 1 file changed, 6 insertions(+), 6 deletions(-)

diff --git a/eclass/dotnet-pkg-base.eclass b/eclass/dotnet-pkg-base.eclass
index e2659a829e19..5b2d6e2dd2c1 100644
--- a/eclass/dotnet-pkg-base.eclass
+++ b/eclass/dotnet-pkg-base.eclass
@@ -371,7 +371,7 @@ dotnet-pkg-base_restore_tools() {
 		--add-source "${NUGET_PACKAGES}"
 	)
 
-	if [[ "${1}" ]] ; then
+	if [[ -n "${1}" ]] ; then
 		tool_restore_args+=( --configfile "${1}" )
 		shift
 	fi
@@ -434,7 +434,7 @@ dotnet-pkg-base_test() {
 	debug-print-function "${FUNCNAME[0]}" "${@}"
 
 	local directory
-	if [[ "${1}" ]] ; then
+	if [[ -n "${1}" ]] ; then
 		directory="${1}"
 		shift
 	else
@@ -529,7 +529,7 @@ dotnet-pkg-base_dolauncher() {
 
 	local executable_path executable_name
 
-	if [[ "${1}" ]] ; then
+	if [[ -n "${1}" ]] ; then
 		local executable_path="${1}"
 		shift
 	else
@@ -553,9 +553,9 @@ dotnet-pkg-base_dolauncher() {
 	# compatible with dotnet version ${DOTNET_PKG_COMPAT}.
 
 	for __dotnet_root in \\
-		${EPREFIX}/usr/$(get_libdir)/dotnet-sdk-${DOTNET_PKG_COMPAT} \\
-		${EPREFIX}/opt/dotnet-sdk-bin-${DOTNET_PKG_COMPAT} ; do
-		[ -d \${__dotnet_root} ] && break
+		"${EPREFIX}/usr/$(get_libdir)/dotnet-sdk-${DOTNET_PKG_COMPAT}" \\
+		"${EPREFIX}/opt/dotnet-sdk-bin-${DOTNET_PKG_COMPAT}" ; do
+		[ -d "\${__dotnet_root}" ] && break
 	done
 
 	DOTNET_ROOT="\${__dotnet_root}"


^ permalink raw reply related	[flat|nested] 6131+ messages in thread

* [gentoo-commits] repo/gentoo:master commit in: eclass/
@ 2023-10-12 15:52 Maciej Barć
  0 siblings, 0 replies; 6131+ messages in thread
From: Maciej Barć @ 2023-10-12 15:52 UTC (permalink / raw
  To: gentoo-commits

commit:     69c1235be04773be58562441bb0f12f1e80b34c0
Author:     Maciej Barć <xgqt <AT> gentoo <DOT> org>
AuthorDate: Thu Oct  5 19:10:17 2023 +0000
Commit:     Maciej Barć <xgqt <AT> gentoo <DOT> org>
CommitDate: Thu Oct 12 15:52:27 2023 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=69c1235b

eclass/nuget.eclass: add special NUGET_API case for Gentoo devs' hosting

Signed-off-by: Maciej Barć <xgqt <AT> gentoo.org>

 eclass/nuget.eclass | 3 +++
 1 file changed, 3 insertions(+)

diff --git a/eclass/nuget.eclass b/eclass/nuget.eclass
index 8ac81497f523..445dcdccd331 100644
--- a/eclass/nuget.eclass
+++ b/eclass/nuget.eclass
@@ -112,6 +112,9 @@ _nuget_set_nuget_uris() {
 
 		for nuget_api in "${NUGET_APIS[@]}" ; do
 			case ${nuget_api%/} in
+				*dev.gentoo.org/~* )
+					url="${nuget_api}/${name}.${version}.nupkg"
+					;;
 				*/v2 )
 					url="${nuget_api}/package/${name}/${version}
 							-> ${name}.${version}.nupkg"


^ permalink raw reply related	[flat|nested] 6131+ messages in thread

* [gentoo-commits] repo/gentoo:master commit in: eclass/
@ 2023-10-12 15:52 Maciej Barć
  0 siblings, 0 replies; 6131+ messages in thread
From: Maciej Barć @ 2023-10-12 15:52 UTC (permalink / raw
  To: gentoo-commits

commit:     aacf18af0892739127048628e6c8ea11f26fc4d2
Author:     Maciej Barć <xgqt <AT> gentoo <DOT> org>
AuthorDate: Thu Oct 12 08:18:57 2023 +0000
Commit:     Maciej Barć <xgqt <AT> gentoo <DOT> org>
CommitDate: Thu Oct 12 15:52:27 2023 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=aacf18af

eclass/dotnet-pkg.eclass: add DOTNET_PKG_TEST_EXTRA_ARGS

Extra arguments to pass to the package test, in the "src_test" phase.

Signed-off-by: Maciej Barć <xgqt <AT> gentoo.org>

 eclass/dotnet-pkg.eclass | 26 +++++++++++++++++++++++++-
 1 file changed, 25 insertions(+), 1 deletion(-)

diff --git a/eclass/dotnet-pkg.eclass b/eclass/dotnet-pkg.eclass
index b4f0c053d69a..86ec2e5a7fc1 100644
--- a/eclass/dotnet-pkg.eclass
+++ b/eclass/dotnet-pkg.eclass
@@ -117,6 +117,28 @@ DOTNET_PKG_RESTORE_EXTRA_ARGS=()
 # For more info see the "DOTNET_PROJECT" variable and "dotnet-pkg_src_compile".
 DOTNET_PKG_BUILD_EXTRA_ARGS=()
 
+# @ECLASS_VARIABLE: DOTNET_PKG_TEST_EXTRA_ARGS
+# @DESCRIPTION:
+# Extra arguments to pass to the package test, in the "src_test" phase.
+#
+# This is passed only when testing found ".sln" solution files
+# (see also "dotnet-pkg-base_foreach-solution").
+# Other project builds do not use this variable.
+#
+# This variable should be set after inheriting "dotnet-pkg.eclass",
+# it is also advised that it is set after the variable
+# "DOTNET_PROJECT" (from "dotnet-pkg-base" eclass) is set.
+#
+# Default value is an empty array.
+#
+# Example:
+# @CODE
+# DOTNET_PKG_TEST_EXTRA_ARGS=( -p:RollForward=Major )
+# @CODE
+#
+# For more info see the "DOTNET_PROJECT" variable and "dotnet-pkg_src_test".
+DOTNET_PKG_TEST_EXTRA_ARGS=()
+
 # @FUNCTION: dotnet-pkg_pkg_setup
 # @DESCRIPTION:
 # Default "pkg_setup" for the "dotnet-pkg" eclass.
@@ -215,7 +237,9 @@ dotnet-pkg_src_compile() {
 # will execute wrong or incomplete test suite. Maintainers should inspect if
 # any and/or correct tests are ran.
 dotnet-pkg_src_test() {
-	dotnet-pkg-base_foreach-solution "$(pwd)" dotnet-pkg-base_test
+	dotnet-pkg-base_foreach-solution \
+		"$(pwd)" \
+		dotnet-pkg-base_test "${DOTNET_PKG_TEST_EXTRA_ARGS[@]}"
 }
 
 # @FUNCTION: dotnet-pkg_src_install


^ permalink raw reply related	[flat|nested] 6131+ messages in thread

* [gentoo-commits] repo/gentoo:master commit in: eclass/
@ 2023-10-12 15:52 Maciej Barć
  0 siblings, 0 replies; 6131+ messages in thread
From: Maciej Barć @ 2023-10-12 15:52 UTC (permalink / raw
  To: gentoo-commits

commit:     ded71238070e9894083d2775677cbecf6b07da4e
Author:     Maciej Barć <xgqt <AT> gentoo <DOT> org>
AuthorDate: Thu Oct  5 19:10:18 2023 +0000
Commit:     Maciej Barć <xgqt <AT> gentoo <DOT> org>
CommitDate: Thu Oct 12 15:52:27 2023 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=ded71238

eclass/nuget.eclass: partition dotnet-pkg_src_unpack

This enables easier usage of "nuget_link-nuget-archives"
in some special cases.

Signed-off-by: Maciej Barć <xgqt <AT> gentoo.org>

 eclass/dotnet-pkg.eclass | 14 ++------------
 eclass/nuget.eclass      | 45 +++++++++++++++++++++++++++++++++++++++++++++
 2 files changed, 47 insertions(+), 12 deletions(-)

diff --git a/eclass/dotnet-pkg.eclass b/eclass/dotnet-pkg.eclass
index 201daf1ecce3..b4f0c053d69a 100644
--- a/eclass/dotnet-pkg.eclass
+++ b/eclass/dotnet-pkg.eclass
@@ -136,18 +136,8 @@ dotnet-pkg_pkg_setup() {
 # copied into the "NUGET_PACKAGES" directory.
 dotnet-pkg_src_unpack() {
 	nuget_link-system-nugets
-
-	local archive
-	for archive in ${A} ; do
-		case "${archive}" in
-			*.nupkg )
-				nuget_link "${DISTDIR}/${archive}"
-				;;
-			* )
-				unpack "${archive}"
-				;;
-		esac
-	done
+	nuget_link-nuget-archives
+	nuget_unpack-non-nuget-archives
 }
 
 # @FUNCTION: dotnet-pkg_src_prepare

diff --git a/eclass/nuget.eclass b/eclass/nuget.eclass
index 445dcdccd331..669e21300ef2 100644
--- a/eclass/nuget.eclass
+++ b/eclass/nuget.eclass
@@ -181,6 +181,51 @@ nuget_link-system-nugets() {
 	done
 }
 
+# @FUNCTION: nuget_link-nuget-archives
+# @DESCRIPTION:
+# Link NuGet packages from package source files to the "NUGET_PACKAGES"
+# directory.
+#
+# This is a complementary function to "nuget_unpack-non-nuget-archives".
+#
+# This function is used inside "dotnet-pkg_src_unpack"
+# from the "dotnet-pkg" eclass.
+nuget_link-nuget-archives() {
+	local archive
+	for archive in ${A} ; do
+		case "${archive}" in
+			*.nupkg )
+				nuget_link "${DISTDIR}/${archive}"
+				;;
+			* )
+				:
+				;;
+		esac
+	done
+}
+
+# @FUNCTION: nuget_unpack-non-nuget-archives
+# @DESCRIPTION:
+# Unpack all from package source files that are not NuGet packages.
+#
+# This is a complementary function to "nuget_link-nuget-archives".
+#
+# This function is used inside "dotnet-pkg_src_unpack"
+# from the "dotnet-pkg" eclass.
+nuget_unpack-non-nuget-archives() {
+	local archive
+	for archive in ${A} ; do
+		case "${archive}" in
+			*.nupkg )
+				:
+				;;
+			* )
+				unpack "${archive}"
+				;;
+		esac
+	done
+}
+
 # @FUNCTION: nuget_donuget
 # @USAGE: <nuget-path> ...
 # @DESCRIPTION:


^ permalink raw reply related	[flat|nested] 6131+ messages in thread

* [gentoo-commits] repo/gentoo:master commit in: eclass/
@ 2023-10-13 16:15 Michał Górny
  0 siblings, 0 replies; 6131+ messages in thread
From: Michał Górny @ 2023-10-13 16:15 UTC (permalink / raw
  To: gentoo-commits

commit:     a5e6c642711d4ceafb22caf7dce25f39f2815230
Author:     Michał Górny <mgorny <AT> gentoo <DOT> org>
AuthorDate: Fri Oct 13 15:50:07 2023 +0000
Commit:     Michał Górny <mgorny <AT> gentoo <DOT> org>
CommitDate: Fri Oct 13 15:50:07 2023 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=a5e6c642

llvm.org.eclass: Add 18.0.0_pre20231013 snapshot

Signed-off-by: Michał Górny <mgorny <AT> gentoo.org>

 eclass/llvm.org.eclass | 3 +++
 1 file changed, 3 insertions(+)

diff --git a/eclass/llvm.org.eclass b/eclass/llvm.org.eclass
index a43cef51ef81..9bffc118f265 100644
--- a/eclass/llvm.org.eclass
+++ b/eclass/llvm.org.eclass
@@ -72,6 +72,9 @@ if [[ -z ${_LLVM_SOURCE_TYPE+1} ]]; then
 			_LLVM_SOURCE_TYPE=snapshot
 
 			case ${PV} in
+				18.0.0_pre20231013)
+					EGIT_COMMIT=5d35273a32d239b7407338e13ed71b59174d6536
+					;;
 				18.0.0_pre20231002)
 					EGIT_COMMIT=39fec5457c0925bd39f67f63fe17391584e08258
 					;;


^ permalink raw reply related	[flat|nested] 6131+ messages in thread

* [gentoo-commits] repo/gentoo:master commit in: eclass/
@ 2023-10-13 16:34 Ionen Wolkens
  0 siblings, 0 replies; 6131+ messages in thread
From: Ionen Wolkens @ 2023-10-13 16:34 UTC (permalink / raw
  To: gentoo-commits

commit:     5dbe5492e36a97ee169ed1490d8281691f9cc7dd
Author:     Ionen Wolkens <ionen <AT> gentoo <DOT> org>
AuthorDate: Fri Oct 13 16:32:28 2023 +0000
Commit:     Ionen Wolkens <ionen <AT> gentoo <DOT> org>
CommitDate: Fri Oct 13 16:34:23 2023 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=5dbe5492

qt6-build.eclass: extend avx2/fma mismatch workaround to 6.6.0

6.6.0 is lacking qsimd_p.h changes that 6.5.3 had, will be in 6.6.1.

Closes: https://bugs.gentoo.org/915691
Signed-off-by: Ionen Wolkens <ionen <AT> gentoo.org>

 eclass/qt6-build.eclass | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/eclass/qt6-build.eclass b/eclass/qt6-build.eclass
index 35a710b86545..6f002bc799ad 100644
--- a/eclass/qt6-build.eclass
+++ b/eclass/qt6-build.eclass
@@ -257,8 +257,8 @@ _qt6-build_match_cpu_flags() {
 				[[ ${intrin} ]] && flags+=( -mno-${intrin} )
 			done
 	done < <(
-		# TODO: drop ver_test and ${fma} when <6.5.3 is gone
-		ver_test ${PV} -ge 6.5.3 && fma= || fma=fma
+		# TODO: drop ver_test and ${fma} when <6.5.3 and 6.6.0 are gone
+		ver_test ${PV} -ge 6.5.3 && ver_test ${PV} -ne 6.6.0 && fma= || fma=fma
 		$(tc-getCXX) -E -P ${CXXFLAGS} ${CPPFLAGS} - <<-EOF | tail -n 2
 			#if defined(__GNUC__) && (defined(__x86_64__) || defined(__i386__))
 			#include <x86intrin.h>


^ permalink raw reply related	[flat|nested] 6131+ messages in thread

* [gentoo-commits] repo/gentoo:master commit in: eclass/
@ 2023-10-15 15:23 Sam James
  0 siblings, 0 replies; 6131+ messages in thread
From: Sam James @ 2023-10-15 15:23 UTC (permalink / raw
  To: gentoo-commits

commit:     adb049350a5d4b15b5ee19739d9f2baed83f6acf
Author:     Alfred Wingate <parona <AT> protonmail <DOT> com>
AuthorDate: Wed Oct 11 12:30:44 2023 +0000
Commit:     Sam James <sam <AT> gentoo <DOT> org>
CommitDate: Sun Oct 15 15:22:41 2023 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=adb04935

qt5-build.eclass: workaround undefined qt_version_tag (LLD 17)

Bug: https://bugreports.qt.io/browse/QTBUG-111514
Bug: https://bugs.gentoo.org/915203
Signed-off-by: Alfred Wingate <parona <AT> protonmail.com>
Closes: https://github.com/gentoo/gentoo/pull/33302
Signed-off-by: Sam James <sam <AT> gentoo.org>

 eclass/qt5-build.eclass | 6 ++++++
 1 file changed, 6 insertions(+)

diff --git a/eclass/qt5-build.eclass b/eclass/qt5-build.eclass
index 5e23d793915a..e9cb2f50fd3a 100644
--- a/eclass/qt5-build.eclass
+++ b/eclass/qt5-build.eclass
@@ -231,6 +231,12 @@ qt5-build_src_configure() {
 		qt5_tools_configure
 	fi
 
+	# Workaround for bug #915203
+	# Upstream: https://bugreports.qt.io/browse/QTBUG-111514
+	if [[ ${PN} != qtcore ]]; then
+		append-ldflags -Wl,--undefined-version
+	fi
+
 	qt5_foreach_target_subdir qt5_qmake
 }
 


^ permalink raw reply related	[flat|nested] 6131+ messages in thread

* [gentoo-commits] repo/gentoo:master commit in: eclass/
@ 2023-10-16  9:26 Sam James
  0 siblings, 0 replies; 6131+ messages in thread
From: Sam James @ 2023-10-16  9:26 UTC (permalink / raw
  To: gentoo-commits

commit:     6a4601492180cce23233e15762156e3682147936
Author:     Matoro Mahri <matoro <AT> users <DOT> noreply <DOT> github <DOT> com>
AuthorDate: Sat Oct 14 22:53:53 2023 +0000
Commit:     Sam James <sam <AT> gentoo <DOT> org>
CommitDate: Mon Oct 16 09:26:14 2023 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=6a460149

perl-module.eclass: extend DIST_TEST="do" to cover make-based tests

For packages using make to run tests rather than Test::Harness,
DIST_TEST="do" is ineffective at disabling parallelization.  This forces
-j1 on these packages when set.

Bug: https://bugs.gentoo.org/909051
Signed-off-by: Matoro Mahri <matoro <AT> users.noreply.github.com>
Closes: https://github.com/gentoo/gentoo/pull/33354
Signed-off-by: Sam James <sam <AT> gentoo.org>

 eclass/perl-module.eclass | 7 ++++++-
 1 file changed, 6 insertions(+), 1 deletion(-)

diff --git a/eclass/perl-module.eclass b/eclass/perl-module.eclass
index 32cd603c7be5..7bb02abed8c5 100644
--- a/eclass/perl-module.eclass
+++ b/eclass/perl-module.eclass
@@ -335,6 +335,7 @@ perl-module_src_test() {
 
 	local my_test_control
 	local my_test_verbose
+	local my_test_makeopts
 
 	[[ -n "${DIST_TEST_OVERRIDE}" ]] && ewarn "DIST_TEST_OVERRIDE is set to ${DIST_TEST_OVERRIDE}"
 	my_test_control=${DIST_TEST_OVERRIDE:-${DIST_TEST:-do parallel}}
@@ -344,6 +345,10 @@ perl-module_src_test() {
 		return 0
 	fi
 
+	if has 'do' ${my_test_control} && ! has 'parallel' ${my_test_control} ; then
+		my_test_makeopts="-j1"
+	fi
+
 	if has verbose ${my_test_control} ; then
 		my_test_verbose=1
 	else
@@ -383,7 +388,7 @@ perl-module_src_test() {
 	if [[ -f Build ]] ; then
 		./Build test verbose=${my_test_verbose} || die "test failed"
 	elif [[ -f Makefile ]] ; then
-		emake test TEST_VERBOSE=${my_test_verbose}
+		emake ${my_test_makeopts} test TEST_VERBOSE=${my_test_verbose}
 	fi
 }
 


^ permalink raw reply related	[flat|nested] 6131+ messages in thread

* [gentoo-commits] repo/gentoo:master commit in: eclass/
@ 2023-10-18  6:44 Sam James
  0 siblings, 0 replies; 6131+ messages in thread
From: Sam James @ 2023-10-18  6:44 UTC (permalink / raw
  To: gentoo-commits

commit:     a18de479c55e6a3f1a2400a1ddebef3eaad1ab30
Author:     Sam James <sam <AT> gentoo <DOT> org>
AuthorDate: Wed Oct 18 06:43:45 2023 +0000
Commit:     Sam James <sam <AT> gentoo <DOT> org>
CommitDate: Wed Oct 18 06:44:13 2023 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=a18de479

qt5-build.eclass: guard -Wl,--undefined-version with tc-ld-is-lld

Older binutils doesn't support this flag, so just guard it to make life
easier for people.

Bug: https://bugs.gentoo.org/915203
Signed-off-by: Sam James <sam <AT> gentoo.org>

 eclass/qt5-build.eclass | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/eclass/qt5-build.eclass b/eclass/qt5-build.eclass
index e9cb2f50fd3a..db333767fae6 100644
--- a/eclass/qt5-build.eclass
+++ b/eclass/qt5-build.eclass
@@ -233,7 +233,7 @@ qt5-build_src_configure() {
 
 	# Workaround for bug #915203
 	# Upstream: https://bugreports.qt.io/browse/QTBUG-111514
-	if [[ ${PN} != qtcore ]]; then
+	if [[ ${PN} != qtcore ]] && tc-ld-is-lld ; then
 		append-ldflags -Wl,--undefined-version
 	fi
 


^ permalink raw reply related	[flat|nested] 6131+ messages in thread

* [gentoo-commits] repo/gentoo:master commit in: eclass/
@ 2023-10-18  7:50 Miroslav Šulc
  0 siblings, 0 replies; 6131+ messages in thread
From: Miroslav Šulc @ 2023-10-18  7:50 UTC (permalink / raw
  To: gentoo-commits

commit:     5f231202e9ad571835518f33075340ee2f60c7d8
Author:     Volkmar W. Pogatzki <gentoo <AT> pogatzki <DOT> net>
AuthorDate: Mon Oct  9 17:57:42 2023 +0000
Commit:     Miroslav Šulc <fordfrog <AT> gentoo <DOT> org>
CommitDate: Wed Oct 18 07:46:32 2023 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=5f231202

java-pkg-simple.eclass: avoid removal of generated test classes

Solution of bug #906311 removes all test classes at beginning of
src_test() including test classes generated from the ebuild.
With this commit generated test classes will be copied from the new
generated-test directory into target/test-classes.

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

 eclass/java-pkg-simple.eclass | 5 +++++
 1 file changed, 5 insertions(+)

diff --git a/eclass/java-pkg-simple.eclass b/eclass/java-pkg-simple.eclass
index 02200f10cb8d..98affc522295 100644
--- a/eclass/java-pkg-simple.eclass
+++ b/eclass/java-pkg-simple.eclass
@@ -506,6 +506,11 @@ java-pkg-simple_src_test() {
 	# create the target directory
 	mkdir -p ${classes} || die "Could not create target directory for testing"
 
+	# generated test classes should get generated into "generated-test" directory
+	if [[ -d generated-test ]]; then
+		cp -r generated-test/* "${classes}" || die "cannot copy generated test classes"
+	fi
+
 	# get classpath
 	classpath="${classes}:${JAVA_JAR_FILENAME}"
 	java-pkg-simple_getclasspath


^ permalink raw reply related	[flat|nested] 6131+ messages in thread

* [gentoo-commits] repo/gentoo:master commit in: eclass/
@ 2023-10-18  7:50 Miroslav Šulc
  0 siblings, 0 replies; 6131+ messages in thread
From: Miroslav Šulc @ 2023-10-18  7:50 UTC (permalink / raw
  To: gentoo-commits

commit:     9ad2683b86538e21a2d7411fa71058ac534c23de
Author:     Volkmar W. Pogatzki <gentoo <AT> pogatzki <DOT> net>
AuthorDate: Wed Mar  1 19:52:59 2023 +0000
Commit:     Miroslav Šulc <fordfrog <AT> gentoo <DOT> org>
CommitDate: Wed Oct 18 07:46:32 2023 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=9ad2683b

java-utils-2.eclass: avoid reverse dependency for dev-java/testng

This change depends on the correlating change on the
java-pkg-simple.eclass.

For testing dev-java/testng before having it installed it is not
possible to use java-pkg_getjars. This change adds a condition so
that this case uses the freshly compiled testng.jar.

Signed-off-by: Volkmar W. Pogatzki <gentoo <AT> pogatzki.net>
Closes: https://github.com/gentoo/gentoo/pull/29733
Signed-off-by: Miroslav Šulc <fordfrog <AT> gentoo.org>

 eclass/java-utils-2.eclass | 6 +++++-
 1 file changed, 5 insertions(+), 1 deletion(-)

diff --git a/eclass/java-utils-2.eclass b/eclass/java-utils-2.eclass
index 1efb655acf71..fd1f708b86b4 100644
--- a/eclass/java-utils-2.eclass
+++ b/eclass/java-utils-2.eclass
@@ -1892,7 +1892,11 @@ etestng() {
 	debug-print-function ${FUNCNAME} $*
 
 	local runner=org.testng.TestNG
-	local cp=$(java-pkg_getjars --with-dependencies testng)
+	if [[ ${PN} != testng ]]; then
+		local cp=$(java-pkg_getjars --with-dependencies testng)
+	else
+		local cp=testng.jar
+	fi
 	local tests
 
 	if [[ ${1} = -cp || ${1} = -classpath ]]; then


^ permalink raw reply related	[flat|nested] 6131+ messages in thread

* [gentoo-commits] repo/gentoo:master commit in: eclass/
@ 2023-10-18  7:50 Miroslav Šulc
  0 siblings, 0 replies; 6131+ messages in thread
From: Miroslav Šulc @ 2023-10-18  7:50 UTC (permalink / raw
  To: gentoo-commits

commit:     1a221212ce4d283e10fe68964bcf9ea86638b51e
Author:     Volkmar W. Pogatzki <gentoo <AT> pogatzki <DOT> net>
AuthorDate: Wed Mar  1 19:18:23 2023 +0000
Commit:     Miroslav Šulc <fordfrog <AT> gentoo <DOT> org>
CommitDate: Wed Oct 18 07:46:32 2023 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=1a221212

java-pkg-simple.eclass: avoid reverse dependency for dev-java/testng

Presently, when using testng in JAVA_TESTING_FRAMEWORKS, it gets added
to test dependencies. Emerging dev-java/testng with USE=test would lead
to a reverse dependency on itself.

This change allows emerging / testing testng with the ebuild specifying
JAVA_TESTING_FRAMEWORKS="testng" without such reverse dependency.

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

 eclass/java-pkg-simple.eclass | 3 ++-
 1 file changed, 2 insertions(+), 1 deletion(-)

diff --git a/eclass/java-pkg-simple.eclass b/eclass/java-pkg-simple.eclass
index 98affc522295..ea4833727ea1 100644
--- a/eclass/java-pkg-simple.eclass
+++ b/eclass/java-pkg-simple.eclass
@@ -46,7 +46,8 @@ if has test ${JAVA_PKG_IUSE}; then
 				test_deps+=" amd64? ( dev-util/pkgdiff
 					dev-util/japi-compliance-checker )";;
 			testng)
-				test_deps+=" dev-java/testng:0";;
+				[[ ${PN} != testng ]] && \
+					test_deps+=" dev-java/testng:0";;
 		esac
 	done
 	[[ ${test_deps} ]] && DEPEND="test? ( ${test_deps} )"


^ permalink raw reply related	[flat|nested] 6131+ messages in thread

* [gentoo-commits] repo/gentoo:master commit in: eclass/
@ 2023-10-18  7:50 Miroslav Šulc
  0 siblings, 0 replies; 6131+ messages in thread
From: Miroslav Šulc @ 2023-10-18  7:50 UTC (permalink / raw
  To: gentoo-commits

commit:     95fbb322960db274e981b5632dc9a01e540ee8f6
Author:     Volkmar W. Pogatzki <gentoo <AT> pogatzki <DOT> net>
AuthorDate: Mon Feb 27 12:26:24 2023 +0000
Commit:     Miroslav Šulc <fordfrog <AT> gentoo <DOT> org>
CommitDate: Wed Oct 18 07:46:32 2023 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=95fbb322

java-utils-2.eclass: allow etestng to run testng.xml

The etestng function is presently limited to running test classes and
has no option for running testng.xml files. Using testng.xml in an
ebuild requires manual coding in src_test().

This change adds a switch to the etestng function which allows running
default src_test() with either testng.xml files or test classes.

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

 eclass/java-utils-2.eclass | 9 +++++++--
 1 file changed, 7 insertions(+), 2 deletions(-)

diff --git a/eclass/java-utils-2.eclass b/eclass/java-utils-2.eclass
index 92e02e3085b1..1efb655acf71 100644
--- a/eclass/java-utils-2.eclass
+++ b/eclass/java-utils-2.eclass
@@ -1886,7 +1886,7 @@ ejunit4() {
 # @CODE
 # $1 - -cp or -classpath
 # $2 - the classpath passed to it
-# $@ - test classes for testng to run.
+# $@ - test classes or testng.xml for testng to run.
 # @CODE
 etestng() {
 	debug-print-function ${FUNCNAME} $*
@@ -1910,6 +1910,7 @@ etestng() {
 		-cp ${cp}
 		-Djava.io.tmpdir="${T}"
 		-Djava.awt.headless=true
+		-Dtest.resources.dir="${JAVA_TEST_RESOURCE_DIRS}"
 		${JAVA_TEST_EXTRA_ARGS[@]}
 		${runner}
 		${JAVA_TEST_RUNNER_EXTRA_ARGS[@]}
@@ -1922,7 +1923,11 @@ etestng() {
 		)
 	fi
 
-	args+=( -testclass ${tests} )
+	if [[ "${test%.xml}" == "${test}" ]]; then
+		args+=( -testclass ${tests} )
+	else
+		args+=( ${tests%,} )
+	fi
 
 	debug-print "java ${args[@]}"
 	java ${args[@]} || die "Running TestNG failed."


^ permalink raw reply related	[flat|nested] 6131+ messages in thread

* [gentoo-commits] repo/gentoo:master commit in: eclass/
@ 2023-10-18 12:11 Florian Schmaus
  0 siblings, 0 replies; 6131+ messages in thread
From: Florian Schmaus @ 2023-10-18 12:11 UTC (permalink / raw
  To: gentoo-commits

commit:     83b08b7d9434e5829ddaee08562790a2d939fa99
Author:     Florian Schmaus <flow <AT> gentoo <DOT> org>
AuthorDate: Tue Oct 17 12:38:00 2023 +0000
Commit:     Florian Schmaus <flow <AT> gentoo <DOT> org>
CommitDate: Wed Oct 18 12:10:37 2023 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=83b08b7d

webapp.eclass: optimize webapp_serverowned() and inline webapp_strip_*()

Some ebuilds invoke webapp_serverowned() with -R, causing the eclass to
iterate over a large set of files. Within the iteration's body the
eclass forks multiple times to invoke the webapp_strip, which is very
inefficient and causes a huge slowdown.

This optimizes webapp_serverowned() by replacing the iteration and call
to the "strip" functions with a single equivalent invocation of find
to iterates all the files.

Furthermore, all remaining invocations of webapp_strip_*() are inlined.

Closes: https://bugs.gentoo.org/781860
Signed-off-by: Florian Schmaus <flow <AT> gentoo.org>

 eclass/webapp.eclass | 40 ++++++++++++++++------------------------
 1 file changed, 16 insertions(+), 24 deletions(-)

diff --git a/eclass/webapp.eclass b/eclass/webapp.eclass
index 8bd8e2aef03e..5b091c84851f 100644
--- a/eclass/webapp.eclass
+++ b/eclass/webapp.eclass
@@ -96,21 +96,6 @@ webapp_check_installedat() {
 	${WEBAPP_CONFIG} --show-installed -h localhost -d "${INSTALL_DIR}" 2> /dev/null
 }
 
-webapp_strip_appdir() {
-	debug-print-function $FUNCNAME $*
-	echo "${1#${MY_APPDIR}/}"
-}
-
-webapp_strip_d() {
-	debug-print-function $FUNCNAME $*
-	echo "${1#${D}}"
-}
-
-webapp_strip_cwd() {
-	debug-print-function $FUNCNAME $*
-	echo "${1/#.\///}"
-}
-
 webapp_getinstalltype() {
 	debug-print-function $FUNCNAME $*
 
@@ -195,8 +180,11 @@ webapp_configfile() {
 	for m in "$@"; do
 		webapp_checkfileexists "${m}" "${D}"
 
-		local my_file="$(webapp_strip_appdir "${m}")"
-		my_file="$(webapp_strip_cwd "${my_file}")"
+		local my_file
+		# Strip appdir
+		my_file="${m#${MY_APPDIR}/}"
+		# Strip cwd
+		my_file="${my_file/#.\///}"
 
 		elog "(config) ${my_file}"
 		echo "${my_file}" >> "${D}/${WA_CONFIGLIST}"
@@ -249,8 +237,11 @@ _webapp_serverowned() {
 	debug-print-function $FUNCNAME $*
 
 	webapp_checkfileexists "${1}" "${D}"
-	local my_file="$(webapp_strip_appdir "${1}")"
-	my_file="$(webapp_strip_cwd "${my_file}")"
+	local my_file
+	# Strip appdir
+	my_file="${1#${MY_APPDIR}/}"
+	# Strip cwd
+	my_file="${my_file/#.\///}"
 
 	echo "${my_file}" >> "${D}/${WA_SOLIST}"
 }
@@ -264,14 +255,15 @@ _webapp_serverowned() {
 webapp_serverowned() {
 	debug-print-function $FUNCNAME $*
 
-	local a m
+	local m
 	if [[ "${1}" == "-R" ]]; then
 		shift
 		for m in "$@"; do
-			find "${D}${m}" | while read a; do
-				a=$(webapp_strip_d "${a}")
-				_webapp_serverowned "${a}"
-			done
+			pushd "${D}${MY_APPDIR}" > /dev/null || die
+			# Strip appdir
+			m="${m#${MY_APPDIR}/}"
+			find "${m}" >> "${D}/${WA_SOLIST}" || die
+			popd > /dev/null || die
 		done
 	else
 		for m in "$@"; do


^ permalink raw reply related	[flat|nested] 6131+ messages in thread

* [gentoo-commits] repo/gentoo:master commit in: eclass/
@ 2023-10-19 12:21 Hans de Graaff
  0 siblings, 0 replies; 6131+ messages in thread
From: Hans de Graaff @ 2023-10-19 12:21 UTC (permalink / raw
  To: gentoo-commits

commit:     93dc2a4eef424f91fcd56711972b597c28e798ca
Author:     Hans de Graaff <graaff <AT> gentoo <DOT> org>
AuthorDate: Thu Oct 19 12:06:30 2023 +0000
Commit:     Hans de Graaff <graaff <AT> gentoo <DOT> org>
CommitDate: Thu Oct 19 12:21:04 2023 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=93dc2a4e

apache-2.eclass: update rustls-ffi minimal version

This version matches the requirement for apache 2.0.48 and is also
compatible with apache 2.0.47.

Signed-off-by: Hans de Graaff <graaff <AT> gentoo.org>

 eclass/apache-2.eclass | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/eclass/apache-2.eclass b/eclass/apache-2.eclass
index 5ff17fd8d228..4da2e151fed2 100644
--- a/eclass/apache-2.eclass
+++ b/eclass/apache-2.eclass
@@ -162,7 +162,7 @@ RDEPEND="
 	apache2_modules_session_crypto? (
 		dev-libs/apr-util[openssl]
 	)
-	apache2_modules_tls? ( net-libs/rustls-ffi:= )
+	apache2_modules_tls? ( >=net-libs/rustls-ffi-0.9.2:= )
 	gdbm? ( sys-libs/gdbm:= )
 	ldap? ( net-nds/openldap:= )
 	selinux? ( sec-policy/selinux-apache )


^ permalink raw reply related	[flat|nested] 6131+ messages in thread

* [gentoo-commits] repo/gentoo:master commit in: eclass/
@ 2023-10-19 18:10 Mike Pagano
  0 siblings, 0 replies; 6131+ messages in thread
From: Mike Pagano @ 2023-10-19 18:10 UTC (permalink / raw
  To: gentoo-commits

commit:     73b4fb45a86e8918529e29ee61e6a54e9034a064
Author:     Mike Pagano <mpagano <AT> gentoo <DOT> org>
AuthorDate: Thu Oct 19 18:10:22 2023 +0000
Commit:     Mike Pagano <mpagano <AT> gentoo <DOT> org>
CommitDate: Thu Oct 19 18:10:22 2023 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=73b4fb45

kernel-2.eclass: Allow ebuilds to set their own SLOT

Signed-off-by: Mike Pagano <mpagano <AT> gentoo.org>

 eclass/kernel-2.eclass | 3 +--
 1 file changed, 1 insertion(+), 2 deletions(-)

diff --git a/eclass/kernel-2.eclass b/eclass/kernel-2.eclass
index 8bab2b482cf7..5ecd97c173ff 100644
--- a/eclass/kernel-2.eclass
+++ b/eclass/kernel-2.eclass
@@ -304,7 +304,6 @@ RESTRICT="binchecks strip"
 # set LINUX_HOSTCFLAGS if not already set
 : "${LINUX_HOSTCFLAGS:="-Wall -Wstrict-prototypes -Os -fomit-frame-pointer -I${S}/include"}"
 
-
 # @FUNCTION: debug-print-kernel2-variables
 # @USAGE:
 # @DESCRIPTION:
@@ -665,7 +664,7 @@ if [[ ${ETYPE} == sources ]]; then
 		virtual/pkgconfig
 	)"
 
-	SLOT="${PVR}"
+	SLOT=${SLOT:=${PVR}}
 	DESCRIPTION="Sources based on the Linux Kernel"
 	IUSE="symlink build"
 


^ permalink raw reply related	[flat|nested] 6131+ messages in thread

* [gentoo-commits] repo/gentoo:master commit in: eclass/
@ 2023-10-19 18:22 Miroslav Šulc
  0 siblings, 0 replies; 6131+ messages in thread
From: Miroslav Šulc @ 2023-10-19 18:22 UTC (permalink / raw
  To: gentoo-commits

commit:     0912295778c330339aa22de4e7635d3f26b983d4
Author:     Volkmar W. Pogatzki <gentoo <AT> pogatzki <DOT> net>
AuthorDate: Wed Oct 18 09:37:15 2023 +0000
Commit:     Miroslav Šulc <fordfrog <AT> gentoo <DOT> org>
CommitDate: Thu Oct 19 18:20:26 2023 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=09122957

java-pkg-simple.eclass: improve description of "generated-test"

Signed-off-by: Volkmar W. Pogatzki <gentoo <AT> pogatzki.net>
Closes: https://github.com/gentoo/gentoo/pull/33389
Signed-off-by: Miroslav Šulc <fordfrog <AT> gentoo.org>

 eclass/java-pkg-simple.eclass | 9 ++++++---
 1 file changed, 6 insertions(+), 3 deletions(-)

diff --git a/eclass/java-pkg-simple.eclass b/eclass/java-pkg-simple.eclass
index ea4833727ea1..d37ea93e0269 100644
--- a/eclass/java-pkg-simple.eclass
+++ b/eclass/java-pkg-simple.eclass
@@ -485,8 +485,10 @@ java-pkg-simple_src_install() {
 # @FUNCTION: java-pkg-simple_src_test
 # @DESCRIPTION:
 # src_test for simple single java jar file.
-# It will perform test with frameworks that are defined in
-# ${JAVA_TESTING_FRAMEWORKS}.
+# It will compile test classes from test sources using ejavac and perform tests
+# with frameworks that are defined in ${JAVA_TESTING_FRAMEWORKS}.
+# test-classes compiled with alternative compilers like groovyc need to be placed
+# in the "generated-test" directory.
 java-pkg-simple_src_test() {
 	local test_sources=test_sources.lst classes=target/test-classes moduleinfo
 	local tests_to_run classpath
@@ -502,12 +504,13 @@ java-pkg-simple_src_test() {
 	fi
 
 	# https://bugs.gentoo.org/906311
+	# This will remove target/test-classes. Do not put any test-classes there manually.
 	rm -rf ${classes} || die
 
 	# create the target directory
 	mkdir -p ${classes} || die "Could not create target directory for testing"
 
-	# generated test classes should get generated into "generated-test" directory
+	# generated test classes should get compiled into "generated-test" directory
 	if [[ -d generated-test ]]; then
 		cp -r generated-test/* "${classes}" || die "cannot copy generated test classes"
 	fi


^ permalink raw reply related	[flat|nested] 6131+ messages in thread

* [gentoo-commits] repo/gentoo:master commit in: eclass/
@ 2023-10-19 18:22 Miroslav Šulc
  0 siblings, 0 replies; 6131+ messages in thread
From: Miroslav Šulc @ 2023-10-19 18:22 UTC (permalink / raw
  To: gentoo-commits

commit:     79bda3c19d4c3dfd16891f93dcce917df5a2a52d
Author:     Miroslav Šulc <fordfrog <AT> gentoo <DOT> org>
AuthorDate: Thu Oct 19 18:22:45 2023 +0000
Commit:     Miroslav Šulc <fordfrog <AT> gentoo <DOT> org>
CommitDate: Thu Oct 19 18:22:45 2023 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=79bda3c1

java-pkg-simple.eclass: improved description

Signed-off-by: Miroslav Šulc <fordfrog <AT> gentoo.org>

 eclass/java-pkg-simple.eclass | 3 ++-
 1 file changed, 2 insertions(+), 1 deletion(-)

diff --git a/eclass/java-pkg-simple.eclass b/eclass/java-pkg-simple.eclass
index d37ea93e0269..143efa707751 100644
--- a/eclass/java-pkg-simple.eclass
+++ b/eclass/java-pkg-simple.eclass
@@ -488,7 +488,8 @@ java-pkg-simple_src_install() {
 # It will compile test classes from test sources using ejavac and perform tests
 # with frameworks that are defined in ${JAVA_TESTING_FRAMEWORKS}.
 # test-classes compiled with alternative compilers like groovyc need to be placed
-# in the "generated-test" directory.
+# in the "generated-test" directory as content of this directory is preserved,
+# whereas content of target/test-classes is removed.
 java-pkg-simple_src_test() {
 	local test_sources=test_sources.lst classes=target/test-classes moduleinfo
 	local tests_to_run classpath


^ permalink raw reply related	[flat|nested] 6131+ messages in thread

* [gentoo-commits] repo/gentoo:master commit in: eclass/
@ 2023-10-19 19:50 Michał Górny
  0 siblings, 0 replies; 6131+ messages in thread
From: Michał Górny @ 2023-10-19 19:50 UTC (permalink / raw
  To: gentoo-commits

commit:     8cabef1ed2e020e18a17c42997c5fe073ed9ffb3
Author:     Michał Górny <mgorny <AT> gentoo <DOT> org>
AuthorDate: Thu Oct 19 18:52:15 2023 +0000
Commit:     Michał Górny <mgorny <AT> gentoo <DOT> org>
CommitDate: Thu Oct 19 19:50:19 2023 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=8cabef1e

llvm.org.eclass: Add 18.0.0_pre20231019 snapshot

Signed-off-by: Michał Górny <mgorny <AT> gentoo.org>

 eclass/llvm.org.eclass | 3 +++
 1 file changed, 3 insertions(+)

diff --git a/eclass/llvm.org.eclass b/eclass/llvm.org.eclass
index 91ab4ca76b77..b1071c15aba0 100644
--- a/eclass/llvm.org.eclass
+++ b/eclass/llvm.org.eclass
@@ -72,6 +72,9 @@ if [[ -z ${_LLVM_SOURCE_TYPE+1} ]]; then
 			_LLVM_SOURCE_TYPE=snapshot
 
 			case ${PV} in
+				18.0.0_pre20231019)
+					EGIT_COMMIT=e6e90840708099425b7b69dd053634ff25d4907f
+					;;
 				18.0.0_pre20231013)
 					EGIT_COMMIT=5d35273a32d239b7407338e13ed71b59174d6536
 					;;


^ permalink raw reply related	[flat|nested] 6131+ messages in thread

* [gentoo-commits] repo/gentoo:master commit in: eclass/
@ 2023-10-19 19:50 Michał Górny
  0 siblings, 0 replies; 6131+ messages in thread
From: Michał Górny @ 2023-10-19 19:50 UTC (permalink / raw
  To: gentoo-commits

commit:     ceda2784e17618d1669c074f1189c04fa36a8ed9
Author:     Michał Górny <mgorny <AT> gentoo <DOT> org>
AuthorDate: Thu Oct 19 15:15:16 2023 +0000
Commit:     Michał Górny <mgorny <AT> gentoo <DOT> org>
CommitDate: Thu Oct 19 19:50:17 2023 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=ceda2784

llvm.org.eclass: Remove old snapshots

Signed-off-by: Michał Górny <mgorny <AT> gentoo.org>

 eclass/llvm.org.eclass | 6 ------
 1 file changed, 6 deletions(-)

diff --git a/eclass/llvm.org.eclass b/eclass/llvm.org.eclass
index 9bffc118f265..91ab4ca76b77 100644
--- a/eclass/llvm.org.eclass
+++ b/eclass/llvm.org.eclass
@@ -75,12 +75,6 @@ if [[ -z ${_LLVM_SOURCE_TYPE+1} ]]; then
 				18.0.0_pre20231013)
 					EGIT_COMMIT=5d35273a32d239b7407338e13ed71b59174d6536
 					;;
-				18.0.0_pre20231002)
-					EGIT_COMMIT=39fec5457c0925bd39f67f63fe17391584e08258
-					;;
-				18.0.0_pre20230925)
-					EGIT_COMMIT=f5cb9cb59d7c9c6ac3d5c41c677f68c9b75d34a3
-					;;
 				*)
 					die "Unknown snapshot: ${PV}"
 					;;


^ permalink raw reply related	[flat|nested] 6131+ messages in thread

* [gentoo-commits] repo/gentoo:master commit in: eclass/
@ 2023-10-20 20:07 Matt Turner
  0 siblings, 0 replies; 6131+ messages in thread
From: Matt Turner @ 2023-10-20 20:07 UTC (permalink / raw
  To: gentoo-commits

commit:     c06c0d7fe31a4810a799676607c1b116c50d07b7
Author:     Matt Turner <mattst88 <AT> gentoo <DOT> org>
AuthorDate: Fri Oct 20 20:00:38 2023 +0000
Commit:     Matt Turner <mattst88 <AT> gentoo <DOT> org>
CommitDate: Fri Oct 20 20:07:47 2023 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=c06c0d7f

xorg-3.eclass: Fetch xcb-util-* distfiles from lib/

Signed-off-by: Matt Turner <mattst88 <AT> gentoo.org>

 eclass/xorg-3.eclass | 1 -
 1 file changed, 1 deletion(-)

diff --git a/eclass/xorg-3.eclass b/eclass/xorg-3.eclass
index e0b26acca0b0..a9825fc31132 100644
--- a/eclass/xorg-3.eclass
+++ b/eclass/xorg-3.eclass
@@ -93,7 +93,6 @@ if [[ ${XORG_MODULE} == auto ]]; then
 		x11-misc/*|x11-themes/*) XORG_MODULE=util/    ;;
 		x11-base/*)              XORG_MODULE=xserver/ ;;
 		x11-drivers/*)           XORG_MODULE=driver/  ;;
-		x11-libs/xcb-util-*)     XORG_MODULE=xcb/     ;;
 		x11-libs/*)              XORG_MODULE=lib/     ;;
 		*)                       XORG_MODULE=         ;;
 	esac


^ permalink raw reply related	[flat|nested] 6131+ messages in thread

* [gentoo-commits] repo/gentoo:master commit in: eclass/
@ 2023-10-21 16:59 Sam James
  0 siblings, 0 replies; 6131+ messages in thread
From: Sam James @ 2023-10-21 16:59 UTC (permalink / raw
  To: gentoo-commits

commit:     8dc7a7e2b4735a778b02fd89cb056f22381458e5
Author:     Sam James <sam <AT> gentoo <DOT> org>
AuthorDate: Sat Oct 21 16:58:46 2023 +0000
Commit:     Sam James <sam <AT> gentoo <DOT> org>
CommitDate: Sat Oct 21 16:59:18 2023 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=8dc7a7e2

flag-o-matic.eclass: allow hardened compare/control flow flags

Signed-off-by: Sam James <sam <AT> gentoo.org>

 eclass/flag-o-matic.eclass | 4 ++++
 1 file changed, 4 insertions(+)

diff --git a/eclass/flag-o-matic.eclass b/eclass/flag-o-matic.eclass
index c0b042d5348d..0c56ac5b6bf4 100644
--- a/eclass/flag-o-matic.eclass
+++ b/eclass/flag-o-matic.eclass
@@ -56,6 +56,10 @@ _setup-allowed-flags() {
 		'-fcf-protection=*'
 		-fbounds-check -fbounds-checking
 		-fno-PIE -fno-pie -nopie -no-pie
+		-fharden-compares -fharden-conditional-branches
+		-fharden-control-flow-redundancy -fhardcfr-skip-leaf
+		-fhardcfr-check-exceptions -fhardcfr-check-returning-calls
+		'-fhardcfr-check-noreturn-calls=*'
 		# Spectre mitigations, bug #646076
 		'-mindirect-branch=*'
 		-mindirect-branch-register


^ permalink raw reply related	[flat|nested] 6131+ messages in thread

* [gentoo-commits] repo/gentoo:master commit in: eclass/
@ 2023-10-21 17:06 Sam James
  0 siblings, 0 replies; 6131+ messages in thread
From: Sam James @ 2023-10-21 17:06 UTC (permalink / raw
  To: gentoo-commits

commit:     eb7bf2ea4b01fd24f0e0549fa1fad87fd5f2d83a
Author:     Sam James <sam <AT> gentoo <DOT> org>
AuthorDate: Sat Oct 21 17:05:18 2023 +0000
Commit:     Sam James <sam <AT> gentoo <DOT> org>
CommitDate: Sat Oct 21 17:06:13 2023 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=eb7bf2ea

flag-o-matic.eclass: add -mpreferred-stack-boundary=*, -mincoming-stack-boundary=*

Wine may use this and it's in the same league as -mstackrealign in that
it affects ABI.

Signed-off-by: Sam James <sam <AT> gentoo.org>

 eclass/flag-o-matic.eclass | 2 ++
 1 file changed, 2 insertions(+)

diff --git a/eclass/flag-o-matic.eclass b/eclass/flag-o-matic.eclass
index 0c56ac5b6bf4..a899afdb4f18 100644
--- a/eclass/flag-o-matic.eclass
+++ b/eclass/flag-o-matic.eclass
@@ -137,6 +137,8 @@ _setup-allowed-flags() {
 		# Allow explicit stack realignment to run non-conformant
 		# binaries: bug #677852
 		-mstackrealign
+		'-mpreferred-stack-boundary=*'
+		'-mincoming-stack-boundary=*'
 	)
 	ALLOWED_FLAGS+=(
 		# Clang-only


^ permalink raw reply related	[flat|nested] 6131+ messages in thread

* [gentoo-commits] repo/gentoo:master commit in: eclass/
@ 2023-10-21 17:46 Sam James
  0 siblings, 0 replies; 6131+ messages in thread
From: Sam James @ 2023-10-21 17:46 UTC (permalink / raw
  To: gentoo-commits

commit:     e0c3236a6e73fe4cec5361d0f998b438d8152563
Author:     Sam James <sam <AT> gentoo <DOT> org>
AuthorDate: Sat Oct 21 17:27:48 2023 +0000
Commit:     Sam James <sam <AT> gentoo <DOT> org>
CommitDate: Sat Oct 21 17:27:48 2023 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=e0c3236a

flag-o-matic.eclass: add '-mharden-sls=*'

Spectre-style mitigation.

Signed-off-by: Sam James <sam <AT> gentoo.org>

 eclass/flag-o-matic.eclass | 1 +
 1 file changed, 1 insertion(+)

diff --git a/eclass/flag-o-matic.eclass b/eclass/flag-o-matic.eclass
index a899afdb4f18..d7c1fce4b208 100644
--- a/eclass/flag-o-matic.eclass
+++ b/eclass/flag-o-matic.eclass
@@ -65,6 +65,7 @@ _setup-allowed-flags() {
 		-mindirect-branch-register
 		'-mfunction-return=*'
 		-mretpoline
+		'-mharden-sls=*'
 		'-mbranch-protection=*'
 
 		# Misc


^ permalink raw reply related	[flat|nested] 6131+ messages in thread

* [gentoo-commits] repo/gentoo:master commit in: eclass/
@ 2023-10-21 17:46 Sam James
  0 siblings, 0 replies; 6131+ messages in thread
From: Sam James @ 2023-10-21 17:46 UTC (permalink / raw
  To: gentoo-commits

commit:     b81724af911b1c7f0473cd850ab29c74733c5f30
Author:     Sam James <sam <AT> gentoo <DOT> org>
AuthorDate: Sat Oct 21 17:32:38 2023 +0000
Commit:     Sam James <sam <AT> gentoo <DOT> org>
CommitDate: Sat Oct 21 17:32:43 2023 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=b81724af

flag-o-matic.eclass: add '-mfpmath=*'

We set this for x86 multilib profiles.

Signed-off-by: Sam James <sam <AT> gentoo.org>

 eclass/flag-o-matic.eclass | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/eclass/flag-o-matic.eclass b/eclass/flag-o-matic.eclass
index d7c1fce4b208..382573b80679 100644
--- a/eclass/flag-o-matic.eclass
+++ b/eclass/flag-o-matic.eclass
@@ -47,7 +47,7 @@ setup-allowed-flags() {
 # Note: shell globs and character lists are allowed
 _setup-allowed-flags() {
 	ALLOWED_FLAGS=(
-		-pipe -O '-O[123szg]' '-mcpu=*' '-march=*' '-mtune=*'
+		-pipe -O '-O[123szg]' '-mcpu=*' '-march=*' '-mtune=*' '-mfpmath=*'
 		-flto '-flto=*' -fno-lto
 
 		# Hardening flags


^ permalink raw reply related	[flat|nested] 6131+ messages in thread

* [gentoo-commits] repo/gentoo:master commit in: eclass/
@ 2023-10-22  9:49 Ulrich Müller
  0 siblings, 0 replies; 6131+ messages in thread
From: Ulrich Müller @ 2023-10-22  9:49 UTC (permalink / raw
  To: gentoo-commits

commit:     2ab9bda58e464656cdf1e31b7e8b293cf1ec0caf
Author:     Ulrich Müller <ulm <AT> gentoo <DOT> org>
AuthorDate: Sun Oct 22 09:47:46 2023 +0000
Commit:     Ulrich Müller <ulm <AT> gentoo <DOT> org>
CommitDate: Sun Oct 22 09:47:46 2023 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=2ab9bda5

elisp-common.eclass: Set no-native-compile in generated files

Signed-off-by: Ulrich Müller <ulm <AT> gentoo.org>

 eclass/elisp-common.eclass | 2 ++
 1 file changed, 2 insertions(+)

diff --git a/eclass/elisp-common.eclass b/eclass/elisp-common.eclass
index 72dbb97f33e5..bab7250a6818 100644
--- a/eclass/elisp-common.eclass
+++ b/eclass/elisp-common.eclass
@@ -333,6 +333,7 @@ elisp-make-autoload-file() {
 	;; Local ${null}Variables:
 	;; version-control: never
 	;; no-byte-compile: t
+	;; no-native-compile: t
 	;; no-update-autoloads: t
 	;; End:
 
@@ -725,6 +726,7 @@ elisp-site-regen() {
 
 	;; Local ${null}Variables:
 	;; no-byte-compile: t
+	;; no-native-compile: t
 	;; buffer-read-only: t
 	;; End:
 


^ permalink raw reply related	[flat|nested] 6131+ messages in thread

* [gentoo-commits] repo/gentoo:master commit in: eclass/
@ 2023-10-22 19:14 Michał Górny
  0 siblings, 0 replies; 6131+ messages in thread
From: Michał Górny @ 2023-10-22 19:14 UTC (permalink / raw
  To: gentoo-commits

commit:     b35c6163b14dcb9553f908b07a8f6920769a7b38
Author:     Michał Górny <mgorny <AT> gentoo <DOT> org>
AuthorDate: Thu Oct 19 17:41:01 2023 +0000
Commit:     Michał Górny <mgorny <AT> gentoo <DOT> org>
CommitDate: Sun Oct 22 19:14:41 2023 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=b35c6163

python-utils-r1.eclass: Disable pytest-plus by default

Disable the intrusive dev-python/pytest-plus plugin by default as it
is breaking random test suites.

Signed-off-by: Michał Górny <mgorny <AT> gentoo.org>

 eclass/python-utils-r1.eclass | 3 ++-
 1 file changed, 2 insertions(+), 1 deletion(-)

diff --git a/eclass/python-utils-r1.eclass b/eclass/python-utils-r1.eclass
index 50aeabae1c17..dc6645332703 100644
--- a/eclass/python-utils-r1.eclass
+++ b/eclass/python-utils-r1.eclass
@@ -1366,7 +1366,8 @@ epytest() {
 		# not to have DISPLAY at all, causing crashes sometimes
 		# and causing us to miss missing virtualx usage
 		-p no:xvfb
-		# tavern is intrusive and breaks test suites of various packages
+		# intrusive packages that break random test suites
+		-p no:plus
 		-p no:tavern
 	)
 	local x


^ permalink raw reply related	[flat|nested] 6131+ messages in thread

* [gentoo-commits] repo/gentoo:master commit in: eclass/
@ 2023-10-22 19:14 Michał Górny
  0 siblings, 0 replies; 6131+ messages in thread
From: Michał Górny @ 2023-10-22 19:14 UTC (permalink / raw
  To: gentoo-commits

commit:     d383331bd93780571c7ba9443039d80c08fa35f6
Author:     Michał Górny <mgorny <AT> gentoo <DOT> org>
AuthorDate: Sun Oct 22 18:46:10 2023 +0000
Commit:     Michał Górny <mgorny <AT> gentoo <DOT> org>
CommitDate: Sun Oct 22 19:14:42 2023 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=d383331b

python-utils-r1.eclass: Disable pytest-describe by default

Signed-off-by: Michał Górny <mgorny <AT> gentoo.org>

 eclass/python-utils-r1.eclass | 1 +
 1 file changed, 1 insertion(+)

diff --git a/eclass/python-utils-r1.eclass b/eclass/python-utils-r1.eclass
index dc6645332703..4a538f9942f6 100644
--- a/eclass/python-utils-r1.eclass
+++ b/eclass/python-utils-r1.eclass
@@ -1367,6 +1367,7 @@ epytest() {
 		# and causing us to miss missing virtualx usage
 		-p no:xvfb
 		# intrusive packages that break random test suites
+		-p no:pytest-describe
 		-p no:plus
 		-p no:tavern
 	)


^ permalink raw reply related	[flat|nested] 6131+ messages in thread

* [gentoo-commits] repo/gentoo:master commit in: eclass/
@ 2023-10-23  8:36 Florian Schmaus
  0 siblings, 0 replies; 6131+ messages in thread
From: Florian Schmaus @ 2023-10-23  8:36 UTC (permalink / raw
  To: gentoo-commits

commit:     7c9bacebd7254491a72e633b523feacfec72d5ec
Author:     Florian Schmaus <flow <AT> gentoo <DOT> org>
AuthorDate: Mon Oct 23 08:34:55 2023 +0000
Commit:     Florian Schmaus <flow <AT> gentoo <DOT> org>
CommitDate: Mon Oct 23 08:34:55 2023 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=7c9baceb

ghc-package.eclass: fix "unknown keyword @AUTHOR:" eclass-to-manpage error

AUTHOR has to be before SUPPORTED_EAPIS, otherwise eclass-to-manpage
reports:

ghc-package.eclass:
   error:8: ghc-package.eclass: unknown keyword @AUTHOR:

Fixes: 356bdc36a6bd ("ghc-package.eclass: Sync from ::haskell")
Signed-off-by: Florian Schmaus <flow <AT> gentoo.org>

 eclass/ghc-package.eclass | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/eclass/ghc-package.eclass b/eclass/ghc-package.eclass
index 5bd51c0f41ac..66a14ca971ba 100644
--- a/eclass/ghc-package.eclass
+++ b/eclass/ghc-package.eclass
@@ -1,12 +1,12 @@
-# Copyright 1999-2022 Gentoo Authors
+# Copyright 1999-2023 Gentoo Authors
 # Distributed under the terms of the GNU General Public License v2
 
 # @ECLASS: ghc-package.eclass
 # @MAINTAINER:
 # "Gentoo's Haskell Language team" <haskell@gentoo.org>
-# @SUPPORTED_EAPIS: 6 7 8
 # @AUTHOR:
 # Original Author: Andres Loeh <kosmikus@gentoo.org>
+# @SUPPORTED_EAPIS: 6 7 8
 # @BLURB: This eclass helps with the Glasgow Haskell Compiler's package configuration utility.
 # @DESCRIPTION:
 # Helper eclass to handle ghc installation/upgrade/deinstallation process.


^ permalink raw reply related	[flat|nested] 6131+ messages in thread

* [gentoo-commits] repo/gentoo:master commit in: eclass/
@ 2023-10-26  0:41 Marek Szuba
  0 siblings, 0 replies; 6131+ messages in thread
From: Marek Szuba @ 2023-10-26  0:41 UTC (permalink / raw
  To: gentoo-commits

commit:     bca9c5de6eca0699684850600f3725eb131dfd65
Author:     Marek Szuba <marecki <AT> gentoo <DOT> org>
AuthorDate: Thu Oct 26 00:39:43 2023 +0000
Commit:     Marek Szuba <marecki <AT> gentoo <DOT> org>
CommitDate: Thu Oct 26 00:39:43 2023 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=bca9c5de

cmake.eclass: do not mention media-gfx/gmic in comments, it no longer uses CMake

Signed-off-by: Marek Szuba <marecki <AT> gentoo.org>

 eclass/cmake.eclass | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/eclass/cmake.eclass b/eclass/cmake.eclass
index bbab6a8af1ff..10749e9a2f31 100644
--- a/eclass/cmake.eclass
+++ b/eclass/cmake.eclass
@@ -364,7 +364,7 @@ cmake_src_prepare() {
 	if [[ ${EAPI} == 7 ]]; then
 		pushd "${S}" > /dev/null || die # workaround from cmake-utils
 		# in EAPI-8, we use current working directory instead, bug #704524
-		# esp. test with 'special' pkgs like: app-arch/brotli, media-gfx/gmic, net-libs/quiche
+		# esp. test with 'special' pkgs like: app-arch/brotli, net-libs/quiche
 	fi
 	_cmake_check_build_dir
 


^ permalink raw reply related	[flat|nested] 6131+ messages in thread

* [gentoo-commits] repo/gentoo:master commit in: eclass/
@ 2023-10-26  2:10 Michał Górny
  0 siblings, 0 replies; 6131+ messages in thread
From: Michał Górny @ 2023-10-26  2:10 UTC (permalink / raw
  To: gentoo-commits

commit:     7c702a1f77d8cdaaf7eb62c95b9bdeda501dce66
Author:     Michał Górny <mgorny <AT> gentoo <DOT> org>
AuthorDate: Wed Oct 25 18:57:30 2023 +0000
Commit:     Michał Górny <mgorny <AT> gentoo <DOT> org>
CommitDate: Thu Oct 26 02:10:27 2023 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=7c702a1f

llvm.org.eclass: Add 18.0.0_pre20231025 snapshot

Signed-off-by: Michał Górny <mgorny <AT> gentoo.org>

 eclass/llvm.org.eclass | 3 +++
 1 file changed, 3 insertions(+)

diff --git a/eclass/llvm.org.eclass b/eclass/llvm.org.eclass
index b1071c15aba0..ed37d1c2f563 100644
--- a/eclass/llvm.org.eclass
+++ b/eclass/llvm.org.eclass
@@ -72,6 +72,9 @@ if [[ -z ${_LLVM_SOURCE_TYPE+1} ]]; then
 			_LLVM_SOURCE_TYPE=snapshot
 
 			case ${PV} in
+				18.0.0_pre20231025)
+					EGIT_COMMIT=a7700985577694d6cc2498833f27b4fb5eeaf252
+					;;
 				18.0.0_pre20231019)
 					EGIT_COMMIT=e6e90840708099425b7b69dd053634ff25d4907f
 					;;


^ permalink raw reply related	[flat|nested] 6131+ messages in thread

* [gentoo-commits] repo/gentoo:master commit in: eclass/
@ 2023-10-26 16:48 Sam James
  0 siblings, 0 replies; 6131+ messages in thread
From: Sam James @ 2023-10-26 16:48 UTC (permalink / raw
  To: gentoo-commits

commit:     e51546df7ff0b4f452c0f4291de23fa083f3fa76
Author:     Sam James <sam <AT> gentoo <DOT> org>
AuthorDate: Thu Oct 26 16:46:27 2023 +0000
Commit:     Sam James <sam <AT> gentoo <DOT> org>
CommitDate: Thu Oct 26 16:47:26 2023 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=e51546df

toolchain.eclass: pass -fno-control-flow-redundancy, filter flags for older compilers too

If we're *building* an older GCC, then these flags won't be supported later
on during the boostrap process, so filter them out.

Also, pass -fno-control-flow-redundancy given it makes the compiler unbearably
slow (on a 3950x, it went from 2.5hours for pgo+lto+checking to 6+ hours) and it
doesn't really benefit us there anyway.

Signed-off-by: Sam James <sam <AT> gentoo.org>

 eclass/toolchain.eclass | 12 ++++++++++++
 1 file changed, 12 insertions(+)

diff --git a/eclass/toolchain.eclass b/eclass/toolchain.eclass
index 8df8b506b0b1..4fd884f5f0bc 100644
--- a/eclass/toolchain.eclass
+++ b/eclass/toolchain.eclass
@@ -1535,6 +1535,18 @@ gcc_do_filter_flags() {
 		fi
 	fi
 
+
+	if ver_test -lt 13.6 ; then
+		# These aren't supported by the just-built compiler either.
+		filter-flags -fharden-compares -fharden-conditional-branches \
+			-fharden-control-flow-redundancy -fhardcfr-skip-leaf \
+			-fhardcfr-check-exceptions -fhardcfr-check-returning-calls \
+			'-fhardcfr-check-noreturn-calls=*'
+	fi
+
+	# Makes things painfully slow and no real beenfit for the compiler.
+	append-flags $(test-flags-CC -fno-harden-control-flow-redundancy)
+
 	# Please use USE=lto instead (bug #906007).
 	filter-lto
 


^ permalink raw reply related	[flat|nested] 6131+ messages in thread

* [gentoo-commits] repo/gentoo:master commit in: eclass/
@ 2023-10-26 21:55 Sam James
  0 siblings, 0 replies; 6131+ messages in thread
From: Sam James @ 2023-10-26 21:55 UTC (permalink / raw
  To: gentoo-commits

commit:     7b8bd09d4c674fdbf253b1997930ebcc2f958936
Author:     Sam James <sam <AT> gentoo <DOT> org>
AuthorDate: Thu Oct 26 21:54:43 2023 +0000
Commit:     Sam James <sam <AT> gentoo <DOT> org>
CommitDate: Thu Oct 26 21:54:54 2023 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=7b8bd09d

flag-o-matic.eclass: allow -fno-harden-control-flow-redundancy too

Signed-off-by: Sam James <sam <AT> gentoo.org>

 eclass/flag-o-matic.eclass | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/eclass/flag-o-matic.eclass b/eclass/flag-o-matic.eclass
index 382573b80679..58a14178f38a 100644
--- a/eclass/flag-o-matic.eclass
+++ b/eclass/flag-o-matic.eclass
@@ -57,8 +57,8 @@ _setup-allowed-flags() {
 		-fbounds-check -fbounds-checking
 		-fno-PIE -fno-pie -nopie -no-pie
 		-fharden-compares -fharden-conditional-branches
-		-fharden-control-flow-redundancy -fhardcfr-skip-leaf
-		-fhardcfr-check-exceptions -fhardcfr-check-returning-calls
+		-fharden-control-flow-redundancy -fno-harden-control-flow-redundancy
+		-fhardcfr-skip-leaf -fhardcfr-check-exceptions -fhardcfr-check-returning-calls
 		'-fhardcfr-check-noreturn-calls=*'
 		# Spectre mitigations, bug #646076
 		'-mindirect-branch=*'


^ permalink raw reply related	[flat|nested] 6131+ messages in thread

* [gentoo-commits] repo/gentoo:master commit in: eclass/
@ 2023-10-27  3:33 Sam James
  0 siblings, 0 replies; 6131+ messages in thread
From: Sam James @ 2023-10-27  3:33 UTC (permalink / raw
  To: gentoo-commits

commit:     52f4e8653f56ce713659dfe7880b5c272cc5a817
Author:     Sam James <sam <AT> gentoo <DOT> org>
AuthorDate: Fri Oct 27 03:33:15 2023 +0000
Commit:     Sam James <sam <AT> gentoo <DOT> org>
CommitDate: Fri Oct 27 03:33:15 2023 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=52f4e865

toolchain.eclass: only pass -fno-harden-control-flow-redundancy for new enough GCC too

Even if it's OK for the stage1 compiler, it may not be later.

Signed-off-by: Sam James <sam <AT> gentoo.org>

 eclass/toolchain.eclass | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/eclass/toolchain.eclass b/eclass/toolchain.eclass
index b2d5a62165a6..bf5e5127036f 100644
--- a/eclass/toolchain.eclass
+++ b/eclass/toolchain.eclass
@@ -1542,11 +1542,11 @@ gcc_do_filter_flags() {
 			-fharden-control-flow-redundancy -fno-harden-control-flow-redundancy \
 			-fhardcfr-skip-leaf -fhardcfr-check-exceptions \
 			-fhardcfr-check-returning-calls '-fhardcfr-check-noreturn-calls=*'
+	else
+		# Makes things painfully slow and no real benefit for the compiler.
+		append-flags $(test-flags-CC -fno-harden-control-flow-redundancy)
 	fi
 
-	# Makes things painfully slow and no real beenfit for the compiler.
-	append-flags $(test-flags-CC -fno-harden-control-flow-redundancy)
-
 	# Please use USE=lto instead (bug #906007).
 	filter-lto
 


^ permalink raw reply related	[flat|nested] 6131+ messages in thread

* [gentoo-commits] repo/gentoo:master commit in: eclass/
@ 2023-10-29  3:53 Sam James
  0 siblings, 0 replies; 6131+ messages in thread
From: Sam James @ 2023-10-29  3:53 UTC (permalink / raw
  To: gentoo-commits

commit:     da57ae50e3100762a8791a9d5eaaf8e088866e9c
Author:     Matoro Mahri <matoro_gentoo <AT> matoro <DOT> tk>
AuthorDate: Sun Oct 29 03:00:49 2023 +0000
Commit:     Sam James <sam <AT> gentoo <DOT> org>
CommitDate: Sun Oct 29 03:52:11 2023 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=da57ae50

toolchain-funcs.eclass: add detection for arc

ARC is bi-endian.  Assumes ARCH=arc.  No plans to add profiles or
keywords to official tree.

Signed-off-by: Matoro Mahri <matoro_gentoo <AT> matoro.tk>
Closes: https://github.com/gentoo/gentoo/pull/33554
Signed-off-by: Sam James <sam <AT> gentoo.org>

 eclass/toolchain-funcs.eclass | 3 +++
 1 file changed, 3 insertions(+)

diff --git a/eclass/toolchain-funcs.eclass b/eclass/toolchain-funcs.eclass
index 8398ee004a7d..4559894ca04a 100644
--- a/eclass/toolchain-funcs.eclass
+++ b/eclass/toolchain-funcs.eclass
@@ -648,6 +648,7 @@ tc-ninja_magic_to_arch() {
 	case ${host} in
 		aarch64*)	echo arm64;;
 		alpha*)		echo alpha;;
+		arc*)		echo arc;;
 		arm*)		echo arm;;
 		avr*)		_tc_echo_kernel_alias avr32 avr;;
 		bfin*)		_tc_echo_kernel_alias blackfin bfin;;
@@ -736,6 +737,8 @@ tc-endian() {
 		aarch64*be)	echo big;;
 		aarch64)	echo little;;
 		alpha*)		echo little;;
+		arc*b*)		echo big;;
+		arc*)		echo little;;
 		arm*b*)		echo big;;
 		arm*)		echo little;;
 		cris*)		echo little;;


^ permalink raw reply related	[flat|nested] 6131+ messages in thread

* [gentoo-commits] repo/gentoo:master commit in: eclass/
@ 2023-10-30 18:55 Mike Gilbert
  0 siblings, 0 replies; 6131+ messages in thread
From: Mike Gilbert @ 2023-10-30 18:55 UTC (permalink / raw
  To: gentoo-commits

commit:     ba4ac01d12927b6d4ae155fc2f765e572ee76909
Author:     Mike Gilbert <floppym <AT> gentoo <DOT> org>
AuthorDate: Mon Oct 30 18:54:08 2023 +0000
Commit:     Mike Gilbert <floppym <AT> gentoo <DOT> org>
CommitDate: Mon Oct 30 18:54:08 2023 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=ba4ac01d

meson.eclass: depend on >=dev-util/meson-1.2.1

Bug: https://bugs.gentoo.org/916536
Signed-off-by: Mike Gilbert <floppym <AT> gentoo.org>

 eclass/meson.eclass | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/eclass/meson.eclass b/eclass/meson.eclass
index 4757f3fa5eef..c33f4ea208a7 100644
--- a/eclass/meson.eclass
+++ b/eclass/meson.eclass
@@ -43,7 +43,7 @@ _MESON_ECLASS=1
 
 inherit multiprocessing ninja-utils python-utils-r1 toolchain-funcs
 
-BDEPEND=">=dev-util/meson-0.62.2
+BDEPEND=">=dev-util/meson-1.2.1
 	${NINJA_DEPEND}
 	dev-util/meson-format-array
 "


^ permalink raw reply related	[flat|nested] 6131+ messages in thread

* [gentoo-commits] repo/gentoo:master commit in: eclass/
@ 2023-10-31 19:55 Mike Gilbert
  0 siblings, 0 replies; 6131+ messages in thread
From: Mike Gilbert @ 2023-10-31 19:55 UTC (permalink / raw
  To: gentoo-commits

commit:     ae2c13bac13880dac42851e25968073d99238391
Author:     Mike Gilbert <floppym <AT> gentoo <DOT> org>
AuthorDate: Tue Oct 31 18:03:30 2023 +0000
Commit:     Mike Gilbert <floppym <AT> gentoo <DOT> org>
CommitDate: Tue Oct 31 19:55:07 2023 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=ae2c13ba

verify-sig.eclass: prepend BROOT to VERIFY_SIG_OPENPGP_KEY_PATH

PMS does not allow use of BROOT in global scope, so move the BROOT logic
into the relevant functions.

Signed-off-by: Mike Gilbert <floppym <AT> gentoo.org>

 eclass/verify-sig.eclass | 37 +++++++++++++++++++++++++++----------
 1 file changed, 27 insertions(+), 10 deletions(-)

diff --git a/eclass/verify-sig.eclass b/eclass/verify-sig.eclass
index bb847bb80cc6..0397152fd628 100644
--- a/eclass/verify-sig.eclass
+++ b/eclass/verify-sig.eclass
@@ -87,6 +87,8 @@ esac
 # when using default src_unpack.  Alternatively, the key path can be
 # passed directly to the verification functions.
 #
+# The value of BROOT will be prepended to this path automatically.
+#
 # NB: this variable is also used for non-OpenPGP signatures.  The name
 # contains "OPENPGP" for historical reasons.
 
@@ -119,10 +121,15 @@ esac
 verify-sig_verify_detached() {
 	local file=${1}
 	local sig=${2}
-	local key=${3:-${VERIFY_SIG_OPENPGP_KEY_PATH}}
+	local key=${3}
 
-	[[ -n ${key} ]] ||
-		die "${FUNCNAME}: no key passed and VERIFY_SIG_OPENPGP_KEY_PATH unset"
+	if [[ -z ${key} ]]; then
+		if [[ -z ${VERIFY_SIG_OPENPGP_KEY_PATH} ]]; then
+			die "${FUNCNAME}: no key passed and VERIFY_SIG_OPENPGP_KEY_PATH unset"
+		else
+			key="${BROOT}${VERIFY_SIG_OPENPGP_KEY_PATH}"
+		fi
+	fi
 
 	local extra_args=()
 	[[ ${VERIFY_SIG_OPENPGP_KEY_REFRESH} == yes ]] || extra_args+=( -R )
@@ -182,10 +189,15 @@ verify-sig_verify_detached() {
 verify-sig_verify_message() {
 	local file=${1}
 	local output_file=${2}
-	local key=${3:-${VERIFY_SIG_OPENPGP_KEY_PATH}}
+	local key=${3}
 
-	[[ -n ${key} ]] ||
-		die "${FUNCNAME}: no key passed and VERIFY_SIG_OPENPGP_KEY_PATH unset"
+	if [[ -z ${key} ]]; then
+		if [[ -z ${VERIFY_SIG_OPENPGP_KEY_PATH} ]]; then
+			die "${FUNCNAME}: no key passed and VERIFY_SIG_OPENPGP_KEY_PATH unset"
+		else
+			key="${BROOT}${VERIFY_SIG_OPENPGP_KEY_PATH}"
+		fi
+	fi
 
 	local extra_args=()
 	[[ ${VERIFY_SIG_OPENPGP_KEY_REFRESH} == yes ]] || extra_args+=( -R )
@@ -313,7 +325,7 @@ _gpg_verify_signed_checksums() {
 	local checksum_file=${1}
 	local algo=${2}
 	local files=${3}
-	local key=${4:-${VERIFY_SIG_OPENPGP_KEY_PATH}}
+	local key=${4}
 
 	verify-sig_verify_unsigned_checksums - "${algo}" "${files}" < <(
 		verify-sig_verify_message "${checksum_file}" - "${key}"
@@ -336,10 +348,15 @@ verify-sig_verify_signed_checksums() {
 	local algo=${2}
 	local files=()
 	read -r -d '' -a files <<<"${3}"
-	local key=${4:-${VERIFY_SIG_OPENPGP_KEY_PATH}}
+	local key=${4}
 
-	[[ -n ${key} ]] ||
-		die "${FUNCNAME}: no key passed and VERIFY_SIG_OPENPGP_KEY_PATH unset"
+	if [[ -z ${key} ]]; then
+		if [[ -z ${VERIFY_SIG_OPENPGP_KEY_PATH} ]]; then
+			die "${FUNCNAME}: no key passed and VERIFY_SIG_OPENPGP_KEY_PATH unset"
+		else
+			key="${BROOT}${VERIFY_SIG_OPENPGP_KEY_PATH}"
+		fi
+	fi
 
 	case ${VERIFY_SIG_METHOD} in
 		openpgp)


^ permalink raw reply related	[flat|nested] 6131+ messages in thread

* [gentoo-commits] repo/gentoo:master commit in: eclass/
@ 2023-11-01  8:11 Ionen Wolkens
  0 siblings, 0 replies; 6131+ messages in thread
From: Ionen Wolkens @ 2023-11-01  8:11 UTC (permalink / raw
  To: gentoo-commits

commit:     017bff0a540eab67bd9657d4455f13a62dbcca28
Author:     Ionen Wolkens <ionen <AT> gentoo <DOT> org>
AuthorDate: Wed Nov  1 08:07:13 2023 +0000
Commit:     Ionen Wolkens <ionen <AT> gentoo <DOT> org>
CommitDate: Wed Nov  1 08:10:42 2023 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=017bff0a

linux-mod-r1.eclass: fix DEPMOD override for kernel 6.6

Not necessary, but also change STRIP while at it for parity.

Closes: https://bugs.gentoo.org/916587
Signed-off-by: Ionen Wolkens <ionen <AT> gentoo.org>

 eclass/linux-mod-r1.eclass | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/eclass/linux-mod-r1.eclass b/eclass/linux-mod-r1.eclass
index 2a3dde6a3101..858fb0628070 100644
--- a/eclass/linux-mod-r1.eclass
+++ b/eclass/linux-mod-r1.eclass
@@ -1161,8 +1161,8 @@ _modules_set_makeargs() {
 		# eclass handle strip, sign, compress, and depmod (CONFIG_ should
 		# have no impact on building, only used by Makefile.modinst)
 		CONFIG_MODULE_{SIG_ALL,COMPRESS_{GZIP,XZ,ZSTD}}=
-		DEPMOD=:
-		STRIP=:
+		DEPMOD=true #916587
+		STRIP=true
 	)
 
 	if [[ ! ${MODULES_I_WANT_FULL_CONTROL} ]]; then


^ permalink raw reply related	[flat|nested] 6131+ messages in thread

* [gentoo-commits] repo/gentoo:master commit in: eclass/
@ 2023-11-04 17:51 Mike Gilbert
  0 siblings, 0 replies; 6131+ messages in thread
From: Mike Gilbert @ 2023-11-04 17:51 UTC (permalink / raw
  To: gentoo-commits

commit:     3dae41abc9ea4c6d642ece7ce5bc54c0548b56a5
Author:     Mike Gilbert <floppym <AT> gentoo <DOT> org>
AuthorDate: Thu Nov  2 15:04:07 2023 +0000
Commit:     Mike Gilbert <floppym <AT> gentoo <DOT> org>
CommitDate: Sat Nov  4 17:25:56 2023 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=3dae41ab

toolchain-funcs.eclass: tc-ld-force-bfd: unset LD before calling tc-getLD

The previous logic would fail with common values of LD set by the user:

LD="ld.lld" -> LD="ld.lld.bfd"
LD="ld.gold" -> LD="ld.gold.bfd"
LD="mold" -> LD="mold.bfd"

It makes more sense to ignore the user's LD setting and use the default
value given by tc-getLD.

If the user doesn't have binutils installed, the "type -P" check will still
fail and LD will be unaltered.

Signed-off-by: Mike Gilbert <floppym <AT> gentoo.org>

 eclass/toolchain-funcs.eclass | 7 +++----
 1 file changed, 3 insertions(+), 4 deletions(-)

diff --git a/eclass/toolchain-funcs.eclass b/eclass/toolchain-funcs.eclass
index 4559894ca04a..8fef764ad597 100644
--- a/eclass/toolchain-funcs.eclass
+++ b/eclass/toolchain-funcs.eclass
@@ -534,10 +534,9 @@ tc-ld-force-bfd() {
 	ewarn "Forcing usage of the BFD linker"
 
 	# Set up LD to point directly to bfd if it's available.
-	local ld=$(tc-getLD "$@")
-	# We need to extract the first word in case there are flags appended
-	# to its value (like multilib), bug #545218.
-	local bfd_ld="${ld%% *}.bfd"
+	# Unset LD first so we get the default value from tc-getLD.
+	local ld=$(unset LD; tc-getLD "$@")
+	local bfd_ld="${ld}.bfd"
 	local path_ld=$(type -P "${bfd_ld}" 2>/dev/null)
 	[[ -e ${path_ld} ]] && export LD=${bfd_ld}
 


^ permalink raw reply related	[flat|nested] 6131+ messages in thread

* [gentoo-commits] repo/gentoo:master commit in: eclass/
@ 2023-11-07  5:29 Michał Górny
  0 siblings, 0 replies; 6131+ messages in thread
From: Michał Górny @ 2023-11-07  5:29 UTC (permalink / raw
  To: gentoo-commits

commit:     fbdeb1cb0ac8c9f4ee68f501485f2a4124bb05bd
Author:     Michał Górny <mgorny <AT> gentoo <DOT> org>
AuthorDate: Fri Nov  3 19:04:33 2023 +0000
Commit:     Michał Górny <mgorny <AT> gentoo <DOT> org>
CommitDate: Tue Nov  7 05:29:05 2023 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=fbdeb1cb

distutils-r1.eclass: Refactor `d_e_t unittest` (NFC)

Signed-off-by: Michał Górny <mgorny <AT> gentoo.org>

 eclass/distutils-r1.eclass | 17 ++++++++---------
 1 file changed, 8 insertions(+), 9 deletions(-)

diff --git a/eclass/distutils-r1.eclass b/eclass/distutils-r1.eclass
index 1cc91110dccf..9dd091921391 100644
--- a/eclass/distutils-r1.eclass
+++ b/eclass/distutils-r1.eclass
@@ -608,6 +608,8 @@ distutils_enable_tests() {
 	esac
 
 	[[ ${#} -eq 1 ]] || die "${FUNCNAME} takes exactly one argument: test-runner"
+
+	local test_deps=${RDEPEND}
 	local test_pkg
 	case ${1} in
 		nose)
@@ -619,7 +621,12 @@ distutils_enable_tests() {
 		setup.py)
 			;;
 		unittest)
-			# dep handled below
+			# unittest-or-fail is needed in py<3.12
+			test_deps+="
+				$(python_gen_cond_dep '
+					dev-python/unittest-or-fail[${PYTHON_USEDEP}]
+				' 3.10 3.11)
+			"
 			;;
 		*)
 			die "${FUNCNAME}: unsupported argument: ${1}"
@@ -628,7 +635,6 @@ distutils_enable_tests() {
 	_DISTUTILS_TEST_RUNNER=${1}
 	python_test() { distutils-r1_python_test; }
 
-	local test_deps=${RDEPEND}
 	if [[ -n ${test_pkg} ]]; then
 		if [[ ! ${DISTUTILS_SINGLE_IMPL} ]]; then
 			test_deps+=" ${test_pkg}[${PYTHON_USEDEP}]"
@@ -637,13 +643,6 @@ distutils_enable_tests() {
 				${test_pkg}[\${PYTHON_USEDEP}]
 			")"
 		fi
-	elif [[ ${1} == unittest ]]; then
-		# unittest-or-fail is needed in py<3.12
-		test_deps+="
-			$(python_gen_cond_dep '
-				dev-python/unittest-or-fail[${PYTHON_USEDEP}]
-			' 3.{9..11})
-		"
 	fi
 	if [[ -n ${test_deps} ]]; then
 		IUSE+=" test"


^ permalink raw reply related	[flat|nested] 6131+ messages in thread

* [gentoo-commits] repo/gentoo:master commit in: eclass/
@ 2023-11-07  5:29 Michał Górny
  0 siblings, 0 replies; 6131+ messages in thread
From: Michał Górny @ 2023-11-07  5:29 UTC (permalink / raw
  To: gentoo-commits

commit:     5ac206714e6c2a6424c974477fe2ae8e5108da64
Author:     Michał Górny <mgorny <AT> gentoo <DOT> org>
AuthorDate: Fri Nov  3 19:10:27 2023 +0000
Commit:     Michał Górny <mgorny <AT> gentoo <DOT> org>
CommitDate: Tue Nov  7 05:29:06 2023 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=5ac20671

distutils-r1.eclass: Refactor d_e_t to permit multiple test packages

Signed-off-by: Michał Górny <mgorny <AT> gentoo.org>

 eclass/distutils-r1.eclass | 12 ++++++------
 1 file changed, 6 insertions(+), 6 deletions(-)

diff --git a/eclass/distutils-r1.eclass b/eclass/distutils-r1.eclass
index 9dd091921391..3d69911d9209 100644
--- a/eclass/distutils-r1.eclass
+++ b/eclass/distutils-r1.eclass
@@ -610,13 +610,13 @@ distutils_enable_tests() {
 	[[ ${#} -eq 1 ]] || die "${FUNCNAME} takes exactly one argument: test-runner"
 
 	local test_deps=${RDEPEND}
-	local test_pkg
+	local test_pkgs
 	case ${1} in
 		nose)
-			test_pkg=">=dev-python/nose-1.3.7_p20221026"
+			test_pkgs='>=dev-python/nose-1.3.7_p20221026[${PYTHON_USEDEP}]'
 			;;
 		pytest)
-			test_pkg=">=dev-python/pytest-7.3.1"
+			test_pkgs='>=dev-python/pytest-7.3.1[${PYTHON_USEDEP}]'
 			;;
 		setup.py)
 			;;
@@ -635,12 +635,12 @@ distutils_enable_tests() {
 	_DISTUTILS_TEST_RUNNER=${1}
 	python_test() { distutils-r1_python_test; }
 
-	if [[ -n ${test_pkg} ]]; then
+	if [[ -n ${test_pkgs} ]]; then
 		if [[ ! ${DISTUTILS_SINGLE_IMPL} ]]; then
-			test_deps+=" ${test_pkg}[${PYTHON_USEDEP}]"
+			test_deps+=" ${test_pkgs//'${PYTHON_USEDEP}'/${PYTHON_USEDEP}}"
 		else
 			test_deps+=" $(python_gen_cond_dep "
-				${test_pkg}[\${PYTHON_USEDEP}]
+				${test_pkgs}
 			")"
 		fi
 	fi


^ permalink raw reply related	[flat|nested] 6131+ messages in thread

* [gentoo-commits] repo/gentoo:master commit in: eclass/
@ 2023-11-07  5:29 Michał Górny
  0 siblings, 0 replies; 6131+ messages in thread
From: Michał Górny @ 2023-11-07  5:29 UTC (permalink / raw
  To: gentoo-commits

commit:     efb3420408bcf988abe78f92ab8aa93069dba566
Author:     Michał Górny <mgorny <AT> gentoo <DOT> org>
AuthorDate: Fri Nov  3 19:16:30 2023 +0000
Commit:     Michał Górny <mgorny <AT> gentoo <DOT> org>
CommitDate: Tue Nov  7 05:29:07 2023 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=efb34204

distutils-r1.eclass: Add pytest-xdist dep if EPYTEST_XDIST is set

Make `distutils_enable_tests pytest` automatically add
the `dev-python/pytest-xdist` dependency if `EPYTEST_XDIST` is set.

Signed-off-by: Michał Górny <mgorny <AT> gentoo.org>

 eclass/distutils-r1.eclass    | 3 +++
 eclass/python-utils-r1.eclass | 4 +++-
 2 files changed, 6 insertions(+), 1 deletion(-)

diff --git a/eclass/distutils-r1.eclass b/eclass/distutils-r1.eclass
index 3d69911d9209..3d756eaad556 100644
--- a/eclass/distutils-r1.eclass
+++ b/eclass/distutils-r1.eclass
@@ -617,6 +617,9 @@ distutils_enable_tests() {
 			;;
 		pytest)
 			test_pkgs='>=dev-python/pytest-7.3.1[${PYTHON_USEDEP}]'
+			if [[ ${EPYTEST_XDIST} ]]; then
+				test_pkgs+=' dev-python/pytest-xdist[${PYTHON_USEDEP}]'
+			fi
 			;;
 		setup.py)
 			;;

diff --git a/eclass/python-utils-r1.eclass b/eclass/python-utils-r1.eclass
index 48963728cc2f..80abe974f9df 100644
--- a/eclass/python-utils-r1.eclass
+++ b/eclass/python-utils-r1.eclass
@@ -1311,7 +1311,9 @@ _python_check_occluded_packages() {
 # @DEFAULT_UNSET
 # @DESCRIPTION:
 # If set to a non-empty value, enables running tests in parallel
-# via pytest-xdist plugin.
+# via pytest-xdist plugin.  If this variable is set prior to calling
+# distutils_enable_tests in distutils-r1, a test dependency
+# on dev-python/pytest-xdist is added automatically.
 
 # @ECLASS_VARIABLE: EPYTEST_JOBS
 # @USER_VARIABLE


^ permalink raw reply related	[flat|nested] 6131+ messages in thread

* [gentoo-commits] repo/gentoo:master commit in: eclass/
@ 2023-11-07  5:29 Michał Górny
  0 siblings, 0 replies; 6131+ messages in thread
From: Michał Górny @ 2023-11-07  5:29 UTC (permalink / raw
  To: gentoo-commits

commit:     186cdb9d71af03645861ff0cc08ded5eff5fd0c0
Author:     Michał Górny <mgorny <AT> gentoo <DOT> org>
AuthorDate: Fri Nov  3 19:13:31 2023 +0000
Commit:     Michał Górny <mgorny <AT> gentoo <DOT> org>
CommitDate: Tue Nov  7 05:29:06 2023 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=186cdb9d

python-utils-r1.eclass: Add EPYTEST_XDIST for epytest

Add an `EPYTEST_XDIST` variable that can be used to enable running
the test suite in parallel via the dev-python/pytest-xdist plugin.
This also includes user-facing `EPYTEST_JOBS` to control the job count
independently of `MAKEOPTS`.

Signed-off-by: Michał Górny <mgorny <AT> gentoo.org>

 eclass/python-utils-r1.eclass | 29 +++++++++++++++++++++++++++++
 1 file changed, 29 insertions(+)

diff --git a/eclass/python-utils-r1.eclass b/eclass/python-utils-r1.eclass
index 4a538f9942f6..48963728cc2f 100644
--- a/eclass/python-utils-r1.eclass
+++ b/eclass/python-utils-r1.eclass
@@ -1307,6 +1307,19 @@ _python_check_occluded_packages() {
 # parameter, when calling epytest.  The listed files will be entirely
 # skipped from test collection.
 
+# @ECLASS_VARIABLE: EPYTEST_XDIST
+# @DEFAULT_UNSET
+# @DESCRIPTION:
+# If set to a non-empty value, enables running tests in parallel
+# via pytest-xdist plugin.
+
+# @ECLASS_VARIABLE: EPYTEST_JOBS
+# @USER_VARIABLE
+# @DEFAULT_UNSET
+# @DESCRIPTION:
+# Specifies the number of jobs for parallel (pytest-xdist) test runs.
+# When unset, defaults to -j from MAKEOPTS, or the current nproc.
+
 # @FUNCTION: epytest
 # @USAGE: [<args>...]
 # @DESCRIPTION:
@@ -1371,6 +1384,22 @@ epytest() {
 		-p no:plus
 		-p no:tavern
 	)
+
+	if [[ ${EPYTEST_XDIST} ]]; then
+		local jobs=${EPYTEST_JOBS:-$(makeopts_jobs)}
+		if [[ ${jobs} -gt 1 ]]; then
+			args+=(
+				# explicitly enable the plugin, in case the ebuild was using
+				# PYTEST_DISABLE_PLUGIN_AUTOLOAD=1
+				-p xdist
+				-n "${jobs}"
+				# worksteal ensures that workers don't end up idle when heavy
+				# jobs are unevenly distributed
+				--dist=worksteal
+			)
+		fi
+	fi
+
 	local x
 	for x in "${EPYTEST_DESELECT[@]}"; do
 		args+=( --deselect "${x}" )


^ permalink raw reply related	[flat|nested] 6131+ messages in thread

* [gentoo-commits] repo/gentoo:master commit in: eclass/
@ 2023-11-08  1:50 Sam James
  0 siblings, 0 replies; 6131+ messages in thread
From: Sam James @ 2023-11-08  1:50 UTC (permalink / raw
  To: gentoo-commits

commit:     ab24188fb10cedfd69188118ee2f85a6c89211fa
Author:     Sam James <sam <AT> gentoo <DOT> org>
AuthorDate: Tue Nov  7 21:41:25 2023 +0000
Commit:     Sam James <sam <AT> gentoo <DOT> org>
CommitDate: Wed Nov  8 01:49:42 2023 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=ab24188f

toolchain.eclass: filter -Walloc-size for < GCC 14

New in GCC 14.

Signed-off-by: Sam James <sam <AT> gentoo.org>

 eclass/toolchain.eclass | 3 +++
 1 file changed, 3 insertions(+)

diff --git a/eclass/toolchain.eclass b/eclass/toolchain.eclass
index bf5e5127036f..ac8b90c8c58a 100644
--- a/eclass/toolchain.eclass
+++ b/eclass/toolchain.eclass
@@ -1542,6 +1542,9 @@ gcc_do_filter_flags() {
 			-fharden-control-flow-redundancy -fno-harden-control-flow-redundancy \
 			-fhardcfr-skip-leaf -fhardcfr-check-exceptions \
 			-fhardcfr-check-returning-calls '-fhardcfr-check-noreturn-calls=*'
+
+		# New in GCC 14.
+		filter-flags -Walloc-size
 	else
 		# Makes things painfully slow and no real benefit for the compiler.
 		append-flags $(test-flags-CC -fno-harden-control-flow-redundancy)


^ permalink raw reply related	[flat|nested] 6131+ messages in thread

* [gentoo-commits] repo/gentoo:master commit in: eclass/
@ 2023-11-08  7:39 Ulrich Müller
  0 siblings, 0 replies; 6131+ messages in thread
From: Ulrich Müller @ 2023-11-08  7:39 UTC (permalink / raw
  To: gentoo-commits

commit:     9756ed4ebc19571b30cb985b2151c811373edf35
Author:     Ulrich Müller <ulm <AT> gentoo <DOT> org>
AuthorDate: Mon Oct 23 19:56:05 2023 +0000
Commit:     Ulrich Müller <ulm <AT> gentoo <DOT> org>
CommitDate: Wed Nov  8 07:39:44 2023 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=9756ed4e

acct-user.eclass: Warn when the user is removed from a group

Acked-by: Mike Gilbert <floppym <AT> gentoo.org>
Signed-off-by: Ulrich Müller <ulm <AT> gentoo.org>

 eclass/acct-user.eclass | 16 ++++++++++++++++
 1 file changed, 16 insertions(+)

diff --git a/eclass/acct-user.eclass b/eclass/acct-user.eclass
index f658aa0eabc3..66a4d6667888 100644
--- a/eclass/acct-user.eclass
+++ b/eclass/acct-user.eclass
@@ -431,6 +431,22 @@ acct-user_pkg_postinst() {
 		opts+=( --prefix "${ROOT}" )
 	fi
 
+	local g old_groups del_groups=""
+	old_groups=$(egetgroups "${ACCT_USER_NAME}")
+	for g in ${old_groups//,/ }; do
+		has "${g}" "${groups[@]}" || del_groups+="${del_groups:+, }${g}"
+	done
+	if [[ -n ${del_groups} ]]; then
+		local override_name=${ACCT_USER_NAME^^}
+		override_name=${override_name//-/_}
+		ewarn "Removing user ${ACCT_USER_NAME} from group(s): ${del_groups}"
+		ewarn "To retain the user's group membership in the local system"
+		ewarn "config, override with ACCT_USER_${override_name}_GROUPS or"
+		ewarn "ACCT_USER_${override_name}_GROUPS_ADD in make.conf."
+		ewarn "Documentation reference:"
+		ewarn "https://wiki.gentoo.org/wiki/Practical_guide_to_the_GLEP_81_migration#Override_user_groups"
+	fi
+
 	elog "Updating user ${ACCT_USER_NAME}"
 	# usermod outputs a warning if unlocking the account would result in an
 	# empty password. Hide stderr in a text file and display it if usermod fails.


^ permalink raw reply related	[flat|nested] 6131+ messages in thread

* [gentoo-commits] repo/gentoo:master commit in: eclass/
@ 2023-11-09  2:00 Sam James
  0 siblings, 0 replies; 6131+ messages in thread
From: Sam James @ 2023-11-09  2:00 UTC (permalink / raw
  To: gentoo-commits

commit:     b7bc44f3b35169406f0c54f86fd45c8f5d02deeb
Author:     Sam James <sam <AT> gentoo <DOT> org>
AuthorDate: Thu Nov  9 01:58:18 2023 +0000
Commit:     Sam James <sam <AT> gentoo <DOT> org>
CommitDate: Thu Nov  9 01:59:31 2023 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=b7bc44f3

toolchain.eclass: restore graphite for USE=jit minimal build

graphite (isl) might be used for the just-built GCC. It's easier to just
respect USE=graphite for the USE=jit minimal build in case the user passes some
graphite flags rather than try strip them out.

(The build would fail otherwise as the just-built GCC, even with --disable-bootstrap
for the JIT build, would be invoked as ./xgcc ... -fgraphite-identity ... and
error out in configure.)

Reported by ano on IRC.

Signed-off-by: Sam James <sam <AT> gentoo.org>

 eclass/toolchain.eclass | 5 ++++-
 1 file changed, 4 insertions(+), 1 deletion(-)

diff --git a/eclass/toolchain.eclass b/eclass/toolchain.eclass
index ac8b90c8c58a..60769c93877f 100644
--- a/eclass/toolchain.eclass
+++ b/eclass/toolchain.eclass
@@ -1378,7 +1378,10 @@ toolchain_src_configure() {
 			--disable-systemtap
 			--enable-host-shared
 			--enable-languages=jit
-			--without-isl
+			# Might be used for the just-built GCC. Easier to just
+			# respect USE=graphite here in case the user passes some
+			# graphite flags rather than try strip them out.
+			$(use_with graphite isl)
 			--without-zstd
 			--with-system-zlib
 		)


^ permalink raw reply related	[flat|nested] 6131+ messages in thread

* [gentoo-commits] repo/gentoo:master commit in: eclass/
@ 2023-11-10 10:33 Michał Górny
  0 siblings, 0 replies; 6131+ messages in thread
From: Michał Górny @ 2023-11-10 10:33 UTC (permalink / raw
  To: gentoo-commits

commit:     b60c234d49ac880d249c5c457790f1233985ad3e
Author:     Siddhanth Rathod <xsiddhanthrathod <AT> gmail <DOT> com>
AuthorDate: Sat Sep 30 08:27:33 2023 +0000
Commit:     Michał Górny <mgorny <AT> gentoo <DOT> org>
CommitDate: Fri Nov 10 10:31:25 2023 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=b60c234d

git-r3.eclass: Inroducing EVCS_STORE_DIRS var

ebuilds which calls git-r3_fetch multiple times for diffrent repos.
While EGIT_DIR stores a single repo path,
mapping all repos to such packages is currently unfeasible.
Introducing EVCS_STORE_DIRS to address this limitation.

See-Also: https://github.com/gentoo/gentoolkit/pull/33
Signed-off-by: Siddhanth Rathod <xsiddhanthrathod <AT> gmail.com>
Closes: https://github.com/gentoo/gentoo/pull/33133
Signed-off-by: Michał Górny <mgorny <AT> gentoo.org>

 eclass/git-r3.eclass | 10 ++++++++++
 1 file changed, 10 insertions(+)

diff --git a/eclass/git-r3.eclass b/eclass/git-r3.eclass
index 83c5ab590c39..a08845364296 100644
--- a/eclass/git-r3.eclass
+++ b/eclass/git-r3.eclass
@@ -120,6 +120,14 @@ fi
 # usage.
 : "${EGIT_LFS_CLONE_TYPE:=shallow}"
 
+# @ECLASS_VARIABLE: EVCS_STORE_DIRS
+# @OUTPUT_VARIABLE
+# @DESCRIPTION:
+# Record of names of all the repositories directories being cloned in the git3_src.
+# This is useful in the case of ebuild that fetch multiple repos and
+# it would be used by eclean to clean them up.
+EVCS_STORE_DIRS=()
+
 # @ECLASS_VARIABLE: EGIT3_STORE_DIR
 # @USER_VARIABLE
 # @DEFAULT_UNSET
@@ -360,6 +368,8 @@ _git-r3_set_gitdir() {
 
 	GIT_DIR=${EGIT3_STORE_DIR}/${repo_name}
 
+	EVCS_STORE_DIRS+=( "${GIT_DIR}" )
+
 	if [[ ! -d ${EGIT3_STORE_DIR} && ! ${EVCS_OFFLINE} ]]; then
 		(
 			addwrite /


^ permalink raw reply related	[flat|nested] 6131+ messages in thread

* [gentoo-commits] repo/gentoo:master commit in: eclass/
@ 2023-11-10 12:17 Andrew Ammerlaan
  0 siblings, 0 replies; 6131+ messages in thread
From: Andrew Ammerlaan @ 2023-11-10 12:17 UTC (permalink / raw
  To: gentoo-commits

commit:     ddd1fba307a8488dac469ecb6931988c7eeef61d
Author:     Andrew Ammerlaan <andrewammerlaan <AT> gentoo <DOT> org>
AuthorDate: Wed Nov  8 13:25:40 2023 +0000
Commit:     Andrew Ammerlaan <andrewammerlaan <AT> gentoo <DOT> org>
CommitDate: Fri Nov 10 12:17:29 2023 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=ddd1fba3

dist-kernel-utils.eclass: drop workaround skipping dracut kernel-install

We have bumped the minimal version of dracut to 059-r4, this version
contains the fixes to the kernel-install plugin we need to prevent
the plugin from running again if the system is using uki's.

Signed-off-by: Andrew Ammerlaan <andrewammerlaan <AT> gentoo.org>

 eclass/dist-kernel-utils.eclass | 14 --------------
 1 file changed, 14 deletions(-)

diff --git a/eclass/dist-kernel-utils.eclass b/eclass/dist-kernel-utils.eclass
index 67ae2f7b510d..d455c88ebee1 100644
--- a/eclass/dist-kernel-utils.eclass
+++ b/eclass/dist-kernel-utils.eclass
@@ -125,20 +125,6 @@ dist-kernel_install_kernel() {
 		# install the combined executable in place of kernel
 		image=${initrd%/*}/uki.efi
 		mv "${initrd}" "${image}" || die
-		# We moved the generated initrd, prevent dracut from running again
-		# https://github.com/dracutdevs/dracut/pull/2405
-		shopt -s nullglob
-		local plugins=()
-		for file in "${EROOT}"/etc/kernel/install.d/*.install; do
-			plugins+=( "${file}" )
-		done
-		for file in "${EROOT}"/usr/lib/kernel/install.d/*.install; do
-			if ! has "${file##*/}" 50-dracut.install 51-dracut-rescue.install "${plugins[@]##*/}"; then
-					plugins+=( "${file}" )
-			fi
-		done
-		shopt -u nullglob
-		export KERNEL_INSTALL_PLUGINS="${KERNEL_INSTALL_PLUGINS} ${plugins[@]}"
 
 		if [[ ${KERNEL_IUSE_SECUREBOOT} ]]; then
 			# Ensure the uki is signed if dracut hasn't already done so.


^ permalink raw reply related	[flat|nested] 6131+ messages in thread

* [gentoo-commits] repo/gentoo:master commit in: eclass/
@ 2023-11-10 12:17 Andrew Ammerlaan
  0 siblings, 0 replies; 6131+ messages in thread
From: Andrew Ammerlaan @ 2023-11-10 12:17 UTC (permalink / raw
  To: gentoo-commits

commit:     d80fe79de48fcc28b91532281c7c8cf31b0fc320
Author:     Andrew Ammerlaan <andrewammerlaan <AT> gentoo <DOT> org>
AuthorDate: Wed Nov  8 13:24:25 2023 +0000
Commit:     Andrew Ammerlaan <andrewammerlaan <AT> gentoo <DOT> org>
CommitDate: Fri Nov 10 12:17:28 2023 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=d80fe79d

kernel-install.eclass: bump minimal dracut version

059-r4 contains the fixes to the kernel-install plugin that we need
to be able to drop a workaround in dist-kernel-utils.eclass

Signed-off-by: Andrew Ammerlaan <andrewammerlaan <AT> gentoo.org>

 eclass/kernel-install.eclass | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/eclass/kernel-install.eclass b/eclass/kernel-install.eclass
index 03638cd2c57b..ea6ba3569a17 100644
--- a/eclass/kernel-install.eclass
+++ b/eclass/kernel-install.eclass
@@ -52,7 +52,7 @@ IDEPEND="
 		sys-kernel/installkernel-gentoo
 		sys-kernel/installkernel-systemd
 	)
-	initramfs? ( >=sys-kernel/dracut-049-r3 )"
+	initramfs? ( >=sys-kernel/dracut-059-r4 )"
 # needed by objtool that is installed along with the kernel and used
 # to build external modules
 # NB: linux-mod.eclass also adds this dep but it's cleaner to have


^ permalink raw reply related	[flat|nested] 6131+ messages in thread

* [gentoo-commits] repo/gentoo:master commit in: eclass/
@ 2023-11-10 16:20 Pacho Ramos
  0 siblings, 0 replies; 6131+ messages in thread
From: Pacho Ramos @ 2023-11-10 16:20 UTC (permalink / raw
  To: gentoo-commits

commit:     97921642449a363c481b768e631adbda9b888e78
Author:     Pacho Ramos <pacho <AT> gentoo <DOT> org>
AuthorDate: Fri Nov 10 14:23:28 2023 +0000
Commit:     Pacho Ramos <pacho <AT> gentoo <DOT> org>
CommitDate: Fri Nov 10 16:19:32 2023 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=97921642

cuda.eclass: fix typo

Signed-off-by: Pacho Ramos <pacho <AT> gentoo.org>

 eclass/cuda.eclass | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/eclass/cuda.eclass b/eclass/cuda.eclass
index 4b5f1a3294ef..e54560197a8f 100644
--- a/eclass/cuda.eclass
+++ b/eclass/cuda.eclass
@@ -10,7 +10,7 @@
 # This eclass contains functions to be used with cuda package. Currently it is
 # setting and/or sanitizing NVCCFLAGS, the compiler flags for nvcc. This is
 # automatically done and exported in src_prepare() or manually by calling
-# cuda_sanatize.
+# cuda_sanitize.
 # @EXAMPLE:
 # inherit cuda
 


^ permalink raw reply related	[flat|nested] 6131+ messages in thread

* [gentoo-commits] repo/gentoo:master commit in: eclass/
@ 2023-11-11 10:36 Michał Górny
  0 siblings, 0 replies; 6131+ messages in thread
From: Michał Górny @ 2023-11-11 10:36 UTC (permalink / raw
  To: gentoo-commits

commit:     1e2a60df78a92177ffe5ad587ff552ed3f4644d5
Author:     Michał Górny <mgorny <AT> gentoo <DOT> org>
AuthorDate: Sat Nov 11 09:24:20 2023 +0000
Commit:     Michał Górny <mgorny <AT> gentoo <DOT> org>
CommitDate: Sat Nov 11 10:36:31 2023 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=1e2a60df

llvm.org.eclass: Remove support for old snapshots

Signed-off-by: Michał Górny <mgorny <AT> gentoo.org>

 eclass/llvm.org.eclass | 9 ---------
 1 file changed, 9 deletions(-)

diff --git a/eclass/llvm.org.eclass b/eclass/llvm.org.eclass
index c22fb243bffc..822fd1e4188c 100644
--- a/eclass/llvm.org.eclass
+++ b/eclass/llvm.org.eclass
@@ -75,15 +75,6 @@ if [[ -z ${_LLVM_SOURCE_TYPE+1} ]]; then
 				18.0.0_pre20231104)
 					EGIT_COMMIT=83888a5404d46667647fe36d6fa510d075ed57ea
 					;;
-				18.0.0_pre20231025)
-					EGIT_COMMIT=a7700985577694d6cc2498833f27b4fb5eeaf252
-					;;
-				18.0.0_pre20231019)
-					EGIT_COMMIT=e6e90840708099425b7b69dd053634ff25d4907f
-					;;
-				18.0.0_pre20231013)
-					EGIT_COMMIT=5d35273a32d239b7407338e13ed71b59174d6536
-					;;
 				*)
 					die "Unknown snapshot: ${PV}"
 					;;


^ permalink raw reply related	[flat|nested] 6131+ messages in thread

* [gentoo-commits] repo/gentoo:master commit in: eclass/
@ 2023-11-11 20:23 Michał Górny
  0 siblings, 0 replies; 6131+ messages in thread
From: Michał Górny @ 2023-11-11 20:23 UTC (permalink / raw
  To: gentoo-commits

commit:     ffa2a8dd27f6f4431d1845d8f5608c2a5f25b6c2
Author:     Michał Górny <mgorny <AT> gentoo <DOT> org>
AuthorDate: Sat Nov 11 20:15:57 2023 +0000
Commit:     Michał Górny <mgorny <AT> gentoo <DOT> org>
CommitDate: Sat Nov 11 20:23:32 2023 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=ffa2a8dd

llvm.org.eclass: Add 18.0.0_pre20231111 snapshot

Signed-off-by: Michał Górny <mgorny <AT> gentoo.org>

 eclass/llvm.org.eclass | 3 +++
 1 file changed, 3 insertions(+)

diff --git a/eclass/llvm.org.eclass b/eclass/llvm.org.eclass
index 822fd1e4188c..54a2427c6b4d 100644
--- a/eclass/llvm.org.eclass
+++ b/eclass/llvm.org.eclass
@@ -72,6 +72,9 @@ if [[ -z ${_LLVM_SOURCE_TYPE+1} ]]; then
 			_LLVM_SOURCE_TYPE=snapshot
 
 			case ${PV} in
+				18.0.0_pre20231111)
+					EGIT_COMMIT=167b598648dfcee2f23426bfa972e53f8ac16722
+					;;
 				18.0.0_pre20231104)
 					EGIT_COMMIT=83888a5404d46667647fe36d6fa510d075ed57ea
 					;;


^ permalink raw reply related	[flat|nested] 6131+ messages in thread

* [gentoo-commits] repo/gentoo:master commit in: eclass/
@ 2023-11-13 17:33 Maciej Barć
  0 siblings, 0 replies; 6131+ messages in thread
From: Maciej Barć @ 2023-11-13 17:33 UTC (permalink / raw
  To: gentoo-commits

commit:     7ce5961c15c7758c07469d080f2adf0c571598f2
Author:     Maciej Barć <xgqt <AT> gentoo <DOT> org>
AuthorDate: Sat Nov  4 21:04:03 2023 +0000
Commit:     Maciej Barć <xgqt <AT> gentoo <DOT> org>
CommitDate: Mon Nov 13 17:33:53 2023 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=7ce5961c

eclass/dotnet-pkg-base.eclass: remove DOTNET_DATA and NUGET_DATA

they do not influence .NET build

Signed-off-by: Maciej Barć <xgqt <AT> gentoo.org>

 eclass/dotnet-pkg-base.eclass | 4 ----
 1 file changed, 4 deletions(-)

diff --git a/eclass/dotnet-pkg-base.eclass b/eclass/dotnet-pkg-base.eclass
index 9b070d9c2d59..1a9d311208e2 100644
--- a/eclass/dotnet-pkg-base.eclass
+++ b/eclass/dotnet-pkg-base.eclass
@@ -245,10 +245,6 @@ dotnet-pkg-base_setup() {
 	# and not rely upon this environment variable.
 	unset DOTNET_ROOT
 
-	# Unset .NET and NuGet directories.
-	unset DOTNET_DATA
-	unset NUGET_DATA
-
 	DOTNET_PKG_RUNTIME="$(dotnet-pkg-base_get-runtime)"
 	DOTNET_PKG_CONFIGURATION="$(dotnet-pkg-base_get-configuration)"
 	DOTNET_PKG_OUTPUT="$(dotnet-pkg-base_get-output "${P}")"


^ permalink raw reply related	[flat|nested] 6131+ messages in thread

* [gentoo-commits] repo/gentoo:master commit in: eclass/
@ 2023-11-13 17:33 Maciej Barć
  0 siblings, 0 replies; 6131+ messages in thread
From: Maciej Barć @ 2023-11-13 17:33 UTC (permalink / raw
  To: gentoo-commits

commit:     8b7940421b07f3823e0e16a3c19ef84ccd78d285
Author:     Maciej Barć <xgqt <AT> gentoo <DOT> org>
AuthorDate: Sat Nov  4 21:01:39 2023 +0000
Commit:     Maciej Barć <xgqt <AT> gentoo <DOT> org>
CommitDate: Mon Nov 13 17:33:53 2023 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=8b794042

eclass/dotnet-pkg-base.eclass: mark OUTPUT_VARIABLEs

Signed-off-by: Maciej Barć <xgqt <AT> gentoo.org>

 eclass/dotnet-pkg-base.eclass | 6 ++++++
 1 file changed, 6 insertions(+)

diff --git a/eclass/dotnet-pkg-base.eclass b/eclass/dotnet-pkg-base.eclass
index 35beacfebcb1..9b070d9c2d59 100644
--- a/eclass/dotnet-pkg-base.eclass
+++ b/eclass/dotnet-pkg-base.eclass
@@ -44,6 +44,7 @@ inherit edo multiprocessing nuget
 # should be picked by the maintainer.
 
 # @ECLASS_VARIABLE: DOTNET_PKG_RDEPS
+# @OUTPUT_VARIABLE
 # @DESCRIPTION:
 # Populated with important dependencies on .NET ecosystem packages for running
 # .NET packages.
@@ -52,6 +53,7 @@ inherit edo multiprocessing nuget
 DOTNET_PKG_RDEPS=""
 
 # @ECLASS_VARIABLE: DOTNET_PKG_BDEPS
+# @OUTPUT_VARIABLE
 # @DESCRIPTION:
 # Populated with important dependencies on .NET ecosystem packages for building
 # .NET packages.
@@ -98,6 +100,7 @@ export UseSharedCompilation=false
 
 # @ECLASS_VARIABLE: DOTNET_PKG_RUNTIME
 # @DEFAULT_UNSET
+# @OUTPUT_VARIABLE
 # @DESCRIPTION:
 # Sets the runtime used to build a package.
 #
@@ -105,6 +108,7 @@ export UseSharedCompilation=false
 
 # @ECLASS_VARIABLE: DOTNET_PKG_EXECUTABLE
 # @DEFAULT_UNSET
+# @OUTPUT_VARIABLE
 # @DESCRIPTION:
 # Sets path of a "dotnet" executable.
 #
@@ -112,6 +116,7 @@ export UseSharedCompilation=false
 
 # @ECLASS_VARIABLE: DOTNET_PKG_CONFIGURATION
 # @DEFAULT_UNSET
+# @OUTPUT_VARIABLE
 # @DESCRIPTION:
 # Configuration value passed to "dotnet" in the compile phase.
 # Is either Debug or Release, depending on the "debug" USE flag.
@@ -120,6 +125,7 @@ export UseSharedCompilation=false
 
 # @ECLASS_VARIABLE: DOTNET_PKG_OUTPUT
 # @DEFAULT_UNSET
+# @OUTPUT_VARIABLE
 # @DESCRIPTION:
 # Path of the output directory, where the package artifacts are placed during
 # the building of packages with "dotnet-pkg-base_build" function.


^ permalink raw reply related	[flat|nested] 6131+ messages in thread

* [gentoo-commits] repo/gentoo:master commit in: eclass/
@ 2023-11-13 17:33 Maciej Barć
  0 siblings, 0 replies; 6131+ messages in thread
From: Maciej Barć @ 2023-11-13 17:33 UTC (permalink / raw
  To: gentoo-commits

commit:     6f8948665ab00d073621c9d8091f33e7dc78f638
Author:     Maciej Barć <xgqt <AT> gentoo <DOT> org>
AuthorDate: Sat Nov  4 20:54:59 2023 +0000
Commit:     Maciej Barć <xgqt <AT> gentoo <DOT> org>
CommitDate: Mon Nov 13 17:33:53 2023 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=6f894866

eclass/dotnet-pkg-base.eclass: remove DOTNET_PKG_EXECUTABLE_PATH

Signed-off-by: Maciej Barć <xgqt <AT> gentoo.org>

 eclass/dotnet-pkg-base.eclass | 10 ++++------
 1 file changed, 4 insertions(+), 6 deletions(-)

diff --git a/eclass/dotnet-pkg-base.eclass b/eclass/dotnet-pkg-base.eclass
index 5b2d6e2dd2c1..35beacfebcb1 100644
--- a/eclass/dotnet-pkg-base.eclass
+++ b/eclass/dotnet-pkg-base.eclass
@@ -222,20 +222,18 @@ dotnet-pkg-base_setup() {
 		dotnet_compat_impl_path="$(type -P "${dotnet_compat_impl}")"
 
 		if [[ -n ${dotnet_compat_impl_path} ]] ; then
-			DOTNET_PKG_EXECUTABLE=${dotnet_compat_impl}
-			DOTNET_PKG_EXECUTABLE_PATH="${dotnet_compat_impl_path}"
-
+			DOTNET_PKG_EXECUTABLE="${dotnet_compat_impl}"
 			break
 		fi
 	done
 
 	# Link "DOTNET_PKG_EXECUTABLE" to "dotnet" only for the package build.
-	local dotnet_spoof_path="${T}"/dotnet_spoof/${DOTNET_PKG_COMPAT}
+	local dotnet_spoof_path="${T}/dotnet_spoof/${DOTNET_PKG_COMPAT}"
 	mkdir -p "${dotnet_spoof_path}" || die
-	ln -s "${DOTNET_PKG_EXECUTABLE_PATH}" "${dotnet_spoof_path}"/dotnet || die
+	ln -s "${dotnet_compat_impl_path}" "${dotnet_spoof_path}/dotnet" || die
 	export PATH="${dotnet_spoof_path}:${PATH}"
 
-	einfo "Using dotnet SDK \"${DOTNET_PKG_EXECUTABLE}\" from \"${DOTNET_PKG_EXECUTABLE_PATH}\"."
+	einfo "Using dotnet SDK \"${DOTNET_PKG_EXECUTABLE}\" from \"${dotnet_compat_impl_path}\"."
 
 	# The picked "DOTNET_PKG_EXECUTABLE" should set "DOTNET_ROOT" internally
 	# and not rely upon this environment variable.


^ permalink raw reply related	[flat|nested] 6131+ messages in thread

* [gentoo-commits] repo/gentoo:master commit in: eclass/
@ 2023-11-13 21:11 Andreas Sturmlechner
  0 siblings, 0 replies; 6131+ messages in thread
From: Andreas Sturmlechner @ 2023-11-13 21:11 UTC (permalink / raw
  To: gentoo-commits

commit:     ed6e244887545bd2f538cd308b6b1c3b00dc8b47
Author:     Andreas Sturmlechner <asturm <AT> gentoo <DOT> org>
AuthorDate: Sun Nov 12 10:10:15 2023 +0000
Commit:     Andreas Sturmlechner <asturm <AT> gentoo <DOT> org>
CommitDate: Mon Nov 13 21:10:22 2023 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=ed6e2448

ecm.eclass: Raise baseline Frameworks version (KFMIN) to 5.106.0

In ecm.eclass, this only affects BDEPENDs, and in practise every ebuild
making use of KFMIN in RDEPEND will set their own minimum pre-inherit.

Many KDE packages already require 5.101 at a minimum for new API and
porting away from deprecated.

Signed-off-by: Andreas Sturmlechner <asturm <AT> gentoo.org>

 eclass/ecm.eclass | 5 ++---
 1 file changed, 2 insertions(+), 3 deletions(-)

diff --git a/eclass/ecm.eclass b/eclass/ecm.eclass
index 76e20b0e3148..0331273faae1 100644
--- a/eclass/ecm.eclass
+++ b/eclass/ecm.eclass
@@ -147,13 +147,12 @@ fi
 # @DEFAULT_UNSET
 # @DESCRIPTION:
 # Minimum version of Frameworks to require. Default value for kde-frameworks
-# is ${PV} and 5.82.0 baseline for everything else. This is not going to be
-# changed unless we also bump EAPI, which usually implies (rev-)bumping.
+# is ${PV} and 5.106.0 baseline for everything else.
 # Version will also be used to differentiate between KF5/Qt5 and KF6/Qt6.
 if [[ ${CATEGORY} = kde-frameworks ]]; then
 	: "${KFMIN:=$(ver_cut 1-2)}"
 fi
-: "${KFMIN:=5.82.0}"
+: "${KFMIN:=5.106.0}"
 
 # @ECLASS_VARIABLE: KFSLOT
 # @INTERNAL


^ permalink raw reply related	[flat|nested] 6131+ messages in thread

* [gentoo-commits] repo/gentoo:master commit in: eclass/
@ 2023-11-13 22:15 James Le Cuirot
  0 siblings, 0 replies; 6131+ messages in thread
From: James Le Cuirot @ 2023-11-13 22:15 UTC (permalink / raw
  To: gentoo-commits

commit:     f70ca0aa2b8c06f679e05a1b0a9509af6b5ae87a
Author:     James Le Cuirot <chewi <AT> gentoo <DOT> org>
AuthorDate: Sat Nov  4 23:31:57 2023 +0000
Commit:     James Le Cuirot <chewi <AT> gentoo <DOT> org>
CommitDate: Mon Nov 13 22:12:47 2023 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=f70ca0aa

toolchain-funcs.eclass: Add functions to get pointer size in bytes

tc-get-ptr-size for CHOST and tc-get-build-ptr-size for CBUILD.

Closes: https://bugs.gentoo.org/328401
Signed-off-by: James Le Cuirot <chewi <AT> gentoo.org>

 eclass/toolchain-funcs.eclass | 14 ++++++++++++++
 1 file changed, 14 insertions(+)

diff --git a/eclass/toolchain-funcs.eclass b/eclass/toolchain-funcs.eclass
index 8fef764ad597..5da93063866b 100644
--- a/eclass/toolchain-funcs.eclass
+++ b/eclass/toolchain-funcs.eclass
@@ -1216,4 +1216,18 @@ tc-get-c-rtlib() {
 	return 0
 }
 
+# @FUNCTION: tc-get-ptr-size
+# @RETURN: Size of a pointer in bytes for CHOST (e.g. 4 or 8).
+tc-get-ptr-size() {
+	$(tc-getCPP) -P - <<< __SIZEOF_POINTER__ ||
+		die "Could not determine CHOST pointer size"
+}
+
+# @FUNCTION: tc-get-build-ptr-size
+# @RETURN: Size of a pointer in bytes for CBUILD (e.g. 4 or 8).
+tc-get-build-ptr-size() {
+	$(tc-getBUILD_CPP) -P - <<< __SIZEOF_POINTER__ ||
+		die "Could not determine CBUILD pointer size"
+}
+
 fi


^ permalink raw reply related	[flat|nested] 6131+ messages in thread

* [gentoo-commits] repo/gentoo:master commit in: eclass/
@ 2023-11-14 14:11 Florian Schmaus
  0 siblings, 0 replies; 6131+ messages in thread
From: Florian Schmaus @ 2023-11-14 14:11 UTC (permalink / raw
  To: gentoo-commits

commit:     725274b578ca59a164f7837fcc546e4559ad7286
Author:     Florian Schmaus <flow <AT> gentoo <DOT> org>
AuthorDate: Tue Nov 14 11:35:46 2023 +0000
Commit:     Florian Schmaus <flow <AT> gentoo <DOT> org>
CommitDate: Tue Nov 14 14:11:27 2023 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=725274b5

java-utils-2.eclass: record LIBDIR in package.env

Bug: https://bugs.gentoo.org/917326
Closes: https://github.com/gentoo/gentoo/pull/33821
Signed-off-by: Florian Schmaus <flow <AT> gentoo.org>

 eclass/java-utils-2.eclass | 3 +++
 1 file changed, 3 insertions(+)

diff --git a/eclass/java-utils-2.eclass b/eclass/java-utils-2.eclass
index fd1f708b86b4..129402b256d5 100644
--- a/eclass/java-utils-2.eclass
+++ b/eclass/java-utils-2.eclass
@@ -2451,6 +2451,9 @@ java-pkg_do_write_() {
 		echo "SLOT=\"${SLOT}\""
 		echo "CATEGORY=\"${CATEGORY}\""
 		echo "PVR=\"${PVR}\""
+		# Record LIBDIR so that gjl can set java.library.path
+		# accordingly. Bug #917326.
+		echo "LIBDIR=\"$(get_libdir)\""
 
 		[[ -n "${JAVA_PKG_CLASSPATH}" ]] && echo "CLASSPATH=\"${JAVA_PKG_CLASSPATH}\""
 		[[ -n "${JAVA_PKG_LIBRARY}" ]] && echo "LIBRARY_PATH=\"${JAVA_PKG_LIBRARY}\""


^ permalink raw reply related	[flat|nested] 6131+ messages in thread

* [gentoo-commits] repo/gentoo:master commit in: eclass/
@ 2023-11-18  9:19 Andrew Ammerlaan
  0 siblings, 0 replies; 6131+ messages in thread
From: Andrew Ammerlaan @ 2023-11-18  9:19 UTC (permalink / raw
  To: gentoo-commits

commit:     6a2b9c9cfb171e48f45073315e58a6fa360608f6
Author:     Andrew Ammerlaan <andrewammerlaan <AT> gentoo <DOT> org>
AuthorDate: Wed Nov 15 19:00:15 2023 +0000
Commit:     Andrew Ammerlaan <andrewammerlaan <AT> gentoo <DOT> org>
CommitDate: Sat Nov 18 09:19:12 2023 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=6a2b9c9c

kernel-install.eclass: also cleanup uki.efi in postrm

Nowadays the name of the unified kernel image is always uki.efi,
not initrd.uefi.

Signed-off-by: Andrew Ammerlaan <andrewammerlaan <AT> gentoo.org>

 eclass/kernel-install.eclass | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/eclass/kernel-install.eclass b/eclass/kernel-install.eclass
index ea6ba3569a17..a0eceae8280b 100644
--- a/eclass/kernel-install.eclass
+++ b/eclass/kernel-install.eclass
@@ -510,7 +510,7 @@ kernel-install_pkg_postrm() {
 		local kernel_dir=${EROOT}/usr/src/linux-${dir_ver}
 		local image_path=$(dist-kernel_get_image_path)
 		ebegin "Removing initramfs"
-		rm -f "${kernel_dir}/${image_path%/*}"/initrd{,.uefi} &&
+		rm -f "${kernel_dir}/${image_path%/*}"/{initrd,uki.efi} &&
 			find "${kernel_dir}" -depth -type d -empty -delete
 		eend ${?}
 	fi


^ permalink raw reply related	[flat|nested] 6131+ messages in thread

* [gentoo-commits] repo/gentoo:master commit in: eclass/
@ 2023-11-18  9:19 Andrew Ammerlaan
  0 siblings, 0 replies; 6131+ messages in thread
From: Andrew Ammerlaan @ 2023-11-18  9:19 UTC (permalink / raw
  To: gentoo-commits

commit:     0e1de47b7638be1dc913c291d7d147a839c7a21b
Author:     Andrew Ammerlaan <andrewammerlaan <AT> gentoo <DOT> org>
AuthorDate: Wed Nov 15 19:31:26 2023 +0000
Commit:     Andrew Ammerlaan <andrewammerlaan <AT> gentoo <DOT> org>
CommitDate: Sat Nov 18 09:19:16 2023 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=0e1de47b

dist-kernel-utils.eclass: set arch to kernel for installation

Some kernel-install plugins may require locating files in the
installed kernel source tree, on e.g. amd64 they will fail to do
so if we do not use tc-arch-kernel.

sys-kernel/dkms' kernel-install plugin is an example of a
plugin that requires this fix.

Signed-off-by: Andrew Ammerlaan <andrewammerlaan <AT> gentoo.org>

 eclass/dist-kernel-utils.eclass | 4 +++-
 1 file changed, 3 insertions(+), 1 deletion(-)

diff --git a/eclass/dist-kernel-utils.eclass b/eclass/dist-kernel-utils.eclass
index d455c88ebee1..76a2f8d48cdf 100644
--- a/eclass/dist-kernel-utils.eclass
+++ b/eclass/dist-kernel-utils.eclass
@@ -33,6 +33,8 @@ case ${EAPI} in
 	*) die "${ECLASS}: EAPI ${EAPI:-0} not supported" ;;
 esac
 
+inherit toolchain-funcs
+
 if [[ ${KERNEL_IUSE_SECUREBOOT} ]]; then
 	inherit secureboot
 fi
@@ -135,7 +137,7 @@ dist-kernel_install_kernel() {
 	ebegin "Installing the kernel via installkernel"
 	# note: .config is taken relatively to System.map;
 	# initrd relatively to bzImage
-	installkernel "${version}" "${image}" "${map}"
+	ARCH=$(tc-arch-kernel) installkernel "${version}" "${image}" "${map}"
 	eend ${?} || die -n "Installing the kernel failed"
 }
 


^ permalink raw reply related	[flat|nested] 6131+ messages in thread

* [gentoo-commits] repo/gentoo:master commit in: eclass/
@ 2023-11-19 11:10 Michał Górny
  0 siblings, 0 replies; 6131+ messages in thread
From: Michał Górny @ 2023-11-19 11:10 UTC (permalink / raw
  To: gentoo-commits

commit:     42a8beff5c20c96a315eefbc411dbeaaf2b4d242
Author:     Michał Górny <mgorny <AT> gentoo <DOT> org>
AuthorDate: Sun Nov 19 09:45:13 2023 +0000
Commit:     Michał Górny <mgorny <AT> gentoo <DOT> org>
CommitDate: Sun Nov 19 11:10:00 2023 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=42a8beff

llvm.org.eclass: Add 18.0.0_pre20231119 snapshot

Signed-off-by: Michał Górny <mgorny <AT> gentoo.org>

 eclass/llvm.org.eclass | 3 +++
 1 file changed, 3 insertions(+)

diff --git a/eclass/llvm.org.eclass b/eclass/llvm.org.eclass
index 54a2427c6b4d..ad6c35848bc4 100644
--- a/eclass/llvm.org.eclass
+++ b/eclass/llvm.org.eclass
@@ -72,6 +72,9 @@ if [[ -z ${_LLVM_SOURCE_TYPE+1} ]]; then
 			_LLVM_SOURCE_TYPE=snapshot
 
 			case ${PV} in
+				18.0.0_pre20231119)
+					EGIT_COMMIT=5237193b87721134541f228e28edfd544a9c8ac8
+					;;
 				18.0.0_pre20231111)
 					EGIT_COMMIT=167b598648dfcee2f23426bfa972e53f8ac16722
 					;;


^ permalink raw reply related	[flat|nested] 6131+ messages in thread

* [gentoo-commits] repo/gentoo:master commit in: eclass/
@ 2023-11-19 16:01 Michał Górny
  0 siblings, 0 replies; 6131+ messages in thread
From: Michał Górny @ 2023-11-19 16:01 UTC (permalink / raw
  To: gentoo-commits

commit:     a50f2ca09542794bf87e9f3a518d88fecdc0a2fe
Author:     Michał Górny <mgorny <AT> gentoo <DOT> org>
AuthorDate: Sat Nov 18 15:52:00 2023 +0000
Commit:     Michał Górny <mgorny <AT> gentoo <DOT> org>
CommitDate: Sun Nov 19 16:01:13 2023 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=a50f2ca0

python-utils-r1.eclass: Do not pass `-p xdist` w/ PYTEST_PLUGINS

Fix `epytest` with `EPYTEST_XDIST` not to pass a duplicate `-p xdist`
when `xdist.plugin` is already present in `PYTEST_PLUGINS`.  Otherwise,
pytest will fail due to the plugin being loaded twice.

Signed-off-by: Michał Górny <mgorny <AT> gentoo.org>

 eclass/python-utils-r1.eclass | 10 +++++++---
 1 file changed, 7 insertions(+), 3 deletions(-)

diff --git a/eclass/python-utils-r1.eclass b/eclass/python-utils-r1.eclass
index 80abe974f9df..1de4f325de33 100644
--- a/eclass/python-utils-r1.eclass
+++ b/eclass/python-utils-r1.eclass
@@ -1390,10 +1390,14 @@ epytest() {
 	if [[ ${EPYTEST_XDIST} ]]; then
 		local jobs=${EPYTEST_JOBS:-$(makeopts_jobs)}
 		if [[ ${jobs} -gt 1 ]]; then
+			if [[ ${PYTEST_PLUGINS} != *xdist.plugin* ]]; then
+				args+=(
+					# explicitly enable the plugin, in case the ebuild was
+					# using PYTEST_DISABLE_PLUGIN_AUTOLOAD=1
+					-p xdist
+				)
+			fi
 			args+=(
-				# explicitly enable the plugin, in case the ebuild was using
-				# PYTEST_DISABLE_PLUGIN_AUTOLOAD=1
-				-p xdist
 				-n "${jobs}"
 				# worksteal ensures that workers don't end up idle when heavy
 				# jobs are unevenly distributed


^ permalink raw reply related	[flat|nested] 6131+ messages in thread

* [gentoo-commits] repo/gentoo:master commit in: eclass/
@ 2023-11-19 16:01 Michał Górny
  0 siblings, 0 replies; 6131+ messages in thread
From: Michał Górny @ 2023-11-19 16:01 UTC (permalink / raw
  To: gentoo-commits

commit:     2e9c80d0b20108082ee81e5c07b3779a6ddb9074
Author:     Michał Górny <mgorny <AT> gentoo <DOT> org>
AuthorDate: Sat Nov 18 16:01:32 2023 +0000
Commit:     Michał Górny <mgorny <AT> gentoo <DOT> org>
CommitDate: Sun Nov 19 16:01:14 2023 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=2e9c80d0

distutils-r1.eclass: Silence pydevd warnings

Set `PYDEVD_DISABLE_FILE_VALIDATION` to silence warnings about frozen
modules from dev-python/pydevd.

Signed-off-by: Michał Górny <mgorny <AT> gentoo.org>
Closes: https://github.com/gentoo/gentoo/pull/33888
Signed-off-by: Michał Górny <mgorny <AT> gentoo.org>

 eclass/distutils-r1.eclass | 3 +++
 1 file changed, 3 insertions(+)

diff --git a/eclass/distutils-r1.eclass b/eclass/distutils-r1.eclass
index 3d756eaad556..0a7b18e4a1a4 100644
--- a/eclass/distutils-r1.eclass
+++ b/eclass/distutils-r1.eclass
@@ -1813,6 +1813,9 @@ distutils-r1_run_phase() {
 		local -x CYTHON_FORCE_REGEN=1
 	fi
 
+	# silence warnings when pydevd is loaded on Python 3.11+
+	local -x PYDEVD_DISABLE_FILE_VALIDATION=1
+
 	# Rust extensions are incompatible with C/C++ LTO compiler
 	# see e.g. https://bugs.gentoo.org/910220
 	if has cargo ${INHERITED}; then


^ permalink raw reply related	[flat|nested] 6131+ messages in thread

* [gentoo-commits] repo/gentoo:master commit in: eclass/
@ 2023-11-19 16:01 Michał Górny
  0 siblings, 0 replies; 6131+ messages in thread
From: Michał Górny @ 2023-11-19 16:01 UTC (permalink / raw
  To: gentoo-commits

commit:     171a72e48ca08dd7d5f1a0f9c00d5a3297db1239
Author:     Michał Górny <mgorny <AT> gentoo <DOT> org>
AuthorDate: Sat Nov 18 15:55:11 2023 +0000
Commit:     Michał Górny <mgorny <AT> gentoo <DOT> org>
CommitDate: Sun Nov 19 16:01:14 2023 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=171a72e4

python-utils-r1.eclass: Do not pass `-p no:*` w/ no autoloading

Modify `epytest` not to pass our plethora of `-p no:*` arguments
when `PYTEST_DISABLE_PLUGIN_AUTOLOAD` is set.  This is NFC since
the plugins wouldn't be loaded anyway.

Signed-off-by: Michał Górny <mgorny <AT> gentoo.org>

 eclass/python-utils-r1.eclass | 51 ++++++++++++++++++++++++-------------------
 1 file changed, 28 insertions(+), 23 deletions(-)

diff --git a/eclass/python-utils-r1.eclass b/eclass/python-utils-r1.eclass
index 1de4f325de33..394f64a5d139 100644
--- a/eclass/python-utils-r1.eclass
+++ b/eclass/python-utils-r1.eclass
@@ -1362,31 +1362,36 @@ epytest() {
 		# count is more precise when we're dealing with a large number
 		# of tests
 		-o console_output_style=count
-		# disable the undesirable-dependency plugins by default to
-		# trigger missing argument strips.  strip options that require
-		# them from config files.  enable them explicitly via "-p ..."
-		# if you *really* need them.
-		-p no:cov
-		-p no:flake8
-		-p no:flakes
-		-p no:pylint
-		# sterilize pytest-markdown as it runs code snippets from all
-		# *.md files found without any warning
-		-p no:markdown
-		# pytest-sugar undoes everything that's good about pytest output
-		# and makes it hard to read logs
-		-p no:sugar
-		# pytest-xvfb automatically spawns Xvfb for every test suite,
-		# effectively forcing it even when we'd prefer the tests
-		# not to have DISPLAY at all, causing crashes sometimes
-		# and causing us to miss missing virtualx usage
-		-p no:xvfb
-		# intrusive packages that break random test suites
-		-p no:pytest-describe
-		-p no:plus
-		-p no:tavern
 	)
 
+	if [[ ! ${PYTEST_DISABLE_PLUGIN_AUTOLOAD} ]]; then
+		args+=(
+			# disable the undesirable-dependency plugins by default to
+			# trigger missing argument strips.  strip options that require
+			# them from config files.  enable them explicitly via "-p ..."
+			# if you *really* need them.
+			-p no:cov
+			-p no:flake8
+			-p no:flakes
+			-p no:pylint
+			# sterilize pytest-markdown as it runs code snippets from all
+			# *.md files found without any warning
+			-p no:markdown
+			# pytest-sugar undoes everything that's good about pytest output
+			# and makes it hard to read logs
+			-p no:sugar
+			# pytest-xvfb automatically spawns Xvfb for every test suite,
+			# effectively forcing it even when we'd prefer the tests
+			# not to have DISPLAY at all, causing crashes sometimes
+			# and causing us to miss missing virtualx usage
+			-p no:xvfb
+			# intrusive packages that break random test suites
+			-p no:pytest-describe
+			-p no:plus
+			-p no:tavern
+		)
+	fi
+
 	if [[ ${EPYTEST_XDIST} ]]; then
 		local jobs=${EPYTEST_JOBS:-$(makeopts_jobs)}
 		if [[ ${jobs} -gt 1 ]]; then


^ permalink raw reply related	[flat|nested] 6131+ messages in thread

* [gentoo-commits] repo/gentoo:master commit in: eclass/
@ 2023-11-20 23:27 James Le Cuirot
  0 siblings, 0 replies; 6131+ messages in thread
From: James Le Cuirot @ 2023-11-20 23:27 UTC (permalink / raw
  To: gentoo-commits

commit:     878d04daaf34765e6224e58139a9c45921d7a0c3
Author:     Thilo Fromm <thilo.alexander <AT> gmail <DOT> com>
AuthorDate: Wed Nov  8 07:34:35 2023 +0000
Commit:     James Le Cuirot <chewi <AT> gentoo <DOT> org>
CommitDate: Mon Nov 20 23:25:22 2023 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=878d04da

eclass/go-env.eclass: add helper to set compile env

This change adds a helper function to explicitly set CC, CXX, and
GOARCH, and carrying over CFLAGS, LDFLAGS and friends to CGO
equivalents, to provide a minimal sane compile environment for Go.
It enables Go builds to play nice with crossdev's wrappers for
emerge/ebuild etc. Previously, Go ebuilds emitted binaries for the host
architecture.

For example, when running on an x86_64 host:
   emerge-aarch64-cross-linux-gnu foo
will now correctly emerge Go package "foo" for aarch64 instead of
x86_64.

The eclass provides a single helper function
    go-env_set_compile_environment()
intended to be called by other Go eclasses in an early build stage.
Ebuilds may also explicitly call this function.

Signed-off-by: Thilo Fromm <thilo.alexander <AT> gmail.com>
Signed-off-by: James Le Cuirot <chewi <AT> gentoo.org>

 eclass/go-env.eclass | 48 ++++++++++++++++++++++++++++++++++++++++++++++++
 1 file changed, 48 insertions(+)

diff --git a/eclass/go-env.eclass b/eclass/go-env.eclass
new file mode 100644
index 000000000000..ba4f6c3fbb59
--- /dev/null
+++ b/eclass/go-env.eclass
@@ -0,0 +1,48 @@
+# Copyright 2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+# @ECLASS: go-env.eclass
+# @MAINTAINER:
+# Flatcar Linux Maintainers <infra@flatcar-linux.org>
+# @AUTHOR:
+# Flatcar Linux Maintainers <infra@flatcar-linux.org>
+# @BLURB: Helper eclass for setting the Go compile environment. Required for cross-compiling.
+# @DESCRIPTION:
+# This eclass includes a helper function for setting the compile environment for Go ebuilds.
+# Intended to be called by other Go eclasses in an early build stage, e.g. src_unpack.
+
+if [[ -z ${_GO_ENV_ECLASS} ]]; then
+_GO_ENV_ECLASS=1
+
+inherit toolchain-funcs
+
+# @FUNCTION: go-env_set_compile_environment
+# @DESCRIPTION:
+# Set up basic compile environment: CC, CXX, and GOARCH.
+# Also carry over CFLAGS, LDFLAGS and friends.
+# Required for cross-compiling with crossdev.
+# If not set, host defaults will be used and the resulting binaries are host arch.
+# (e.g. "emerge-aarch64-cross-linux-gnu foo" run on x86_64 will emerge "foo" for x86_64
+#  instead of aarch64)
+go-env_set_compile_environment() {
+	local arch="$(tc-arch)"
+	case "${arch}" in
+		x86)	GOARCH="386" ;;
+		x64-*)	GOARCH="amd64" ;;
+		ppc64)	if [[ "$(tc-endian)" == "big" ]] ; then
+					GOARCH="ppc64"
+				else
+					GOARCH="ppc64le"
+				fi ;;
+			*)	GOARCH="${arch}" ;;
+	esac
+
+	tc-export CC CXX
+	export GOARCH
+	export CGO_CFLAGS="${CGO_CFLAGS:-$CFLAGS}"
+	export CGO_CPPFLAGS="${CGO_CPPFLAGS:-$CPPFLAGS}"
+	export CGO_CXXFLAGS="${CGO_CXXFLAGS:-$CXXFLAGS}"
+	export CGO_LDFLAGS="${CGO_LDFLAGS:-$LDFLAGS}"
+}
+
+fi


^ permalink raw reply related	[flat|nested] 6131+ messages in thread

* [gentoo-commits] repo/gentoo:master commit in: eclass/
@ 2023-11-20 23:27 James Le Cuirot
  0 siblings, 0 replies; 6131+ messages in thread
From: James Le Cuirot @ 2023-11-20 23:27 UTC (permalink / raw
  To: gentoo-commits

commit:     069fa0125f971af844000efa820a8940ceb2d497
Author:     Thilo Fromm <thilo.alexander <AT> gmail <DOT> com>
AuthorDate: Wed Nov  8 07:39:22 2023 +0000
Commit:     James Le Cuirot <chewi <AT> gentoo <DOT> org>
CommitDate: Mon Nov 20 23:25:29 2023 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=069fa012

eclass/golang-vcs-snapshot.eclass: set up compile env

This change calls go-env_set_compile_environment in
golang-vcs-snapshot's src_unpack to set up a sane compile environment
early in the go build process. This un-breaks cross compiling of all
golang ebuilds that inherit golang-vcs-snapshot.

Signed-off-by: Thilo Fromm <thilo.alexander <AT> gmail.com>
Signed-off-by: James Le Cuirot <chewi <AT> gentoo.org>

 eclass/golang-vcs-snapshot.eclass | 5 ++++-
 1 file changed, 4 insertions(+), 1 deletion(-)

diff --git a/eclass/golang-vcs-snapshot.eclass b/eclass/golang-vcs-snapshot.eclass
index 9c199bbbd8c5..d34b8a6e913d 100644
--- a/eclass/golang-vcs-snapshot.eclass
+++ b/eclass/golang-vcs-snapshot.eclass
@@ -52,7 +52,7 @@ esac
 if [[ -z ${_GOLANG_VCS_SNAPSHOT_ECLASS} ]]; then
 _GOLANG_VCS_SNAPSHOT_ECLASS=1
 
-inherit golang-base
+inherit golang-base go-env
 
 # @ECLASS_VARIABLE: EGO_VENDOR
 # @DESCRIPTION:
@@ -92,6 +92,7 @@ _golang-vcs-snapshot_dovendor() {
 # @FUNCTION: golang-vcs-snapshot_src_unpack
 # @DESCRIPTION:
 # Extract the first archive from ${A} to the appropriate location for GOPATH.
+# Set compile env via go-env.
 golang-vcs-snapshot_src_unpack() {
 	local lib vendor_path x
 	ego_pn_check
@@ -117,6 +118,8 @@ golang-vcs-snapshot_src_unpack() {
 			fi
 		done
 	fi
+
+	go-env_set_compile_environment
 }
 
 fi


^ permalink raw reply related	[flat|nested] 6131+ messages in thread

* [gentoo-commits] repo/gentoo:master commit in: eclass/
@ 2023-11-20 23:27 James Le Cuirot
  0 siblings, 0 replies; 6131+ messages in thread
From: James Le Cuirot @ 2023-11-20 23:27 UTC (permalink / raw
  To: gentoo-commits

commit:     e398c855e3475c1fb5f3ac6a6e0553116dac83f8
Author:     Thilo Fromm <thilo.alexander <AT> gmail <DOT> com>
AuthorDate: Wed Nov  8 07:36:23 2023 +0000
Commit:     James Le Cuirot <chewi <AT> gentoo <DOT> org>
CommitDate: Mon Nov 20 23:25:25 2023 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=e398c855

eclass/go-module.eclass: export compile env in src_unpack

This change calls go-env_set_compile_environment in go-module's
src_unpack to set up a sane compile environment early in the go build
process. This un-breaks cross compiling of all golang ebuilds that
inherit go-module.

Signed-off-by: Thilo Fromm <thilo.alexander <AT> gmail.com>
Signed-off-by: James Le Cuirot <chewi <AT> gentoo.org>

 eclass/go-module.eclass | 5 ++++-
 1 file changed, 4 insertions(+), 1 deletion(-)

diff --git a/eclass/go-module.eclass b/eclass/go-module.eclass
index 6c58d7f26f07..701d36e012e2 100644
--- a/eclass/go-module.eclass
+++ b/eclass/go-module.eclass
@@ -68,7 +68,7 @@ esac
 if [[ -z ${_GO_MODULE_ECLASS} ]]; then
 _GO_MODULE_ECLASS=1
 
-inherit multiprocessing toolchain-funcs
+inherit multiprocessing toolchain-funcs go-env
 
 if [[ ! ${GO_OPTIONAL} ]]; then
 	BDEPEND=">=dev-lang/go-1.18"
@@ -363,6 +363,7 @@ go-module_setup_proxy() {
 #    local go proxy.  This mode is deprecated.
 # 2. Otherwise, if EGO_VENDOR is set, bail out, as this functionality was removed.
 # 3. Otherwise, call 'ego mod verify' and then do a normal unpack.
+# Set compile env via go-env.
 go-module_src_unpack() {
 	if use amd64 || use arm || use arm64 ||
 		( use ppc64 && [[ $(tc-endian) == "little" ]] ) || use s390 || use x86; then
@@ -386,6 +387,8 @@ go-module_src_unpack() {
 			${nf} ego mod verify
 		fi
 	fi
+
+	go-env_set_compile_environment
 }
 
 # @FUNCTION: _go-module_src_unpack_gosum


^ permalink raw reply related	[flat|nested] 6131+ messages in thread

* [gentoo-commits] repo/gentoo:master commit in: eclass/
@ 2023-11-20 23:27 James Le Cuirot
  0 siblings, 0 replies; 6131+ messages in thread
From: James Le Cuirot @ 2023-11-20 23:27 UTC (permalink / raw
  To: gentoo-commits

commit:     0c931a2c3681542cb692c990fe2df2a185cb65ec
Author:     Thilo Fromm <thilo.alexander <AT> gmail <DOT> com>
AuthorDate: Wed Nov  8 07:40:50 2023 +0000
Commit:     James Le Cuirot <chewi <AT> gentoo <DOT> org>
CommitDate: Mon Nov 20 23:25:32 2023 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=0c931a2c

eclass/golang-vcs.eclass: set up compile env

This change calls go-env_set_compile_environment in golang-vcs's
src_unpack to set up a sane compile environment early in the go build
process. This un-breaks cross compiling of all golang ebuilds that
inherit golang-vcs.

Signed-off-by: Thilo Fromm <thilo.alexander <AT> gmail.com>
Closes: https://github.com/gentoo/gentoo/pull/33539
Signed-off-by: James Le Cuirot <chewi <AT> gentoo.org>

 eclass/golang-vcs.eclass | 5 ++++-
 1 file changed, 4 insertions(+), 1 deletion(-)

diff --git a/eclass/golang-vcs.eclass b/eclass/golang-vcs.eclass
index 7558db4776cb..6f7a837bc15f 100644
--- a/eclass/golang-vcs.eclass
+++ b/eclass/golang-vcs.eclass
@@ -20,7 +20,7 @@ esac
 if [[ -z ${_GOLANG_VCS_ECLASS} ]]; then
 _GOLANG_VCS_ECLASS=1
 
-inherit estack golang-base
+inherit estack golang-base go-env
 
 PROPERTIES+=" live"
 
@@ -63,6 +63,7 @@ PROPERTIES+=" live"
 # @INTERNAL
 # @DESCRIPTION:
 # Create EGO_STORE_DIR if necessary.
+# Set compile env via go-env.
 _golang-vcs_env_setup() {
 	debug-print-function ${FUNCNAME} "$@"
 
@@ -84,6 +85,8 @@ _golang-vcs_env_setup() {
 	mkdir -p "${WORKDIR}/${P}/src" ||
 		die "${ECLASS}: unable to create ${WORKDIR}/${P}"
 	return 0
+
+	go-env_set_compile_environment
 }
 
 # @FUNCTION: _golang-vcs_fetch


^ permalink raw reply related	[flat|nested] 6131+ messages in thread

* [gentoo-commits] repo/gentoo:master commit in: eclass/
@ 2023-11-21 20:43 Sam James
  0 siblings, 0 replies; 6131+ messages in thread
From: Sam James @ 2023-11-21 20:43 UTC (permalink / raw
  To: gentoo-commits

commit:     fad75a344cbaada57ae490c3e8f88cdd5b35dadc
Author:     Sam James <sam <AT> gentoo <DOT> org>
AuthorDate: Tue Nov 21 20:40:27 2023 +0000
Commit:     Sam James <sam <AT> gentoo <DOT> org>
CommitDate: Tue Nov 21 20:40:44 2023 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=fad75a34

flag-o-matic.eclass: allow -mfix-r5900 errata flag for MIPS

Reported by immolo.

Signed-off-by: Sam James <sam <AT> gentoo.org>

 eclass/flag-o-matic.eclass | 3 ++-
 1 file changed, 2 insertions(+), 1 deletion(-)

diff --git a/eclass/flag-o-matic.eclass b/eclass/flag-o-matic.eclass
index 58a14178f38a..6540f59aa960 100644
--- a/eclass/flag-o-matic.eclass
+++ b/eclass/flag-o-matic.eclass
@@ -115,7 +115,8 @@ _setup-allowed-flags() {
 		-mlittle-endian -mbig-endian -EL -EB -fPIC -mlive-g0 '-mcmodel=*'
 		-mstack-bias -mno-stack-bias -msecure-plt '-m*-toc' '-mfloat-abi=*'
 		-mfix-r4000 -mno-fix-r4000 -mfix-r4400 -mno-fix-r4400
-		-mfix-rm7000 -mno-fix-rm7000 -mfix-r10000 -mno-fix-r10000
+		-mfix-rm7000 -mno-fix-rm7000 -mfix-r9500 -mno-fix-r9500
+		-mfix-r10000 -mno-fix-r10000
 		'-mr10k-cache-barrier=*' -mthumb -marm
 
 		# needed for arm64 (and in particular SCS)


^ permalink raw reply related	[flat|nested] 6131+ messages in thread

* [gentoo-commits] repo/gentoo:master commit in: eclass/
@ 2023-11-21 20:51 Sam James
  0 siblings, 0 replies; 6131+ messages in thread
From: Sam James @ 2023-11-21 20:51 UTC (permalink / raw
  To: gentoo-commits

commit:     cf366abd1bd50a33755734bbfb8c0e8a49a5480e
Author:     Sam James <sam <AT> gentoo <DOT> org>
AuthorDate: Tue Nov 21 20:47:49 2023 +0000
Commit:     Sam James <sam <AT> gentoo <DOT> org>
CommitDate: Tue Nov 21 20:51:47 2023 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=cf366abd

flag-o-matic.eclass: allow further MIPS errata flags

* We were missing 24k, r5900, vr4120, vr4130, sb1 [0].

* Chuck in -Wa,-mfix-loongson2f-nop while at it. The topic of -Wa,* is an interesting
  one, as we currently allow -Wl,*, so we should probably do the same for the assembler,
  but punt that to another time.

Note that we use r5900 and -Wa,-mfix-loongson2f-nop for building stages...

Prompted by discussion with immolo (see also fad75a344cbaada57ae490c3e8f88cdd5b35dadc).

[0] https://gcc.gnu.org/onlinedocs/gcc/MIPS-Options.html#index-mfix-24k (and below)

Signed-off-by: Sam James <sam <AT> gentoo.org>

 eclass/flag-o-matic.eclass | 12 +++++++++---
 1 file changed, 9 insertions(+), 3 deletions(-)

diff --git a/eclass/flag-o-matic.eclass b/eclass/flag-o-matic.eclass
index 6540f59aa960..d377568327e6 100644
--- a/eclass/flag-o-matic.eclass
+++ b/eclass/flag-o-matic.eclass
@@ -89,7 +89,7 @@ _setup-allowed-flags() {
 		'-fdiagnostics*' '-fplugin*'
 		'-W*' -w
 
-		# CPPFLAGS and LDFLAGS
+		# CPPFLAGS and LDFLAGS (TODO: Allow -Wa,*?)
 		'-[DUILR]*' '-Wl,*'
 
 		# Linker choice flag
@@ -114,9 +114,15 @@ _setup-allowed-flags() {
 		-mno-faster-structs -mfaster-structs -m32 -m64 -mx32 '-mabi=*'
 		-mlittle-endian -mbig-endian -EL -EB -fPIC -mlive-g0 '-mcmodel=*'
 		-mstack-bias -mno-stack-bias -msecure-plt '-m*-toc' '-mfloat-abi=*'
-		-mfix-r4000 -mno-fix-r4000 -mfix-r4400 -mno-fix-r4400
+
+		# MIPS errata
+		-mfix-24k -mno-fix-24k -mfix-r4000 -mno-fix-r4000
+		-mfix-r4400 -mno-fix-r4400 -mfix-r5900 -mno-fix-r5900
 		-mfix-rm7000 -mno-fix-rm7000 -mfix-r9500 -mno-fix-r9500
-		-mfix-r10000 -mno-fix-r10000
+		-mfix-r10000 -mno-fix-r10000 -mfix-vr4120 -mno-fix-vr4120
+		-mfix-vr4130 -mfix-sb1 -mno-fix-sb1
+		'-Wa,-mfix-loongson2f-nop'
+
 		'-mr10k-cache-barrier=*' -mthumb -marm
 
 		# needed for arm64 (and in particular SCS)


^ permalink raw reply related	[flat|nested] 6131+ messages in thread

* [gentoo-commits] repo/gentoo:master commit in: eclass/
@ 2023-11-22  0:00 Sam James
  0 siblings, 0 replies; 6131+ messages in thread
From: Sam James @ 2023-11-22  0:00 UTC (permalink / raw
  To: gentoo-commits

commit:     5bc696cb73b16a50be83fede86c06282d0abe963
Author:     Sam James <sam <AT> gentoo <DOT> org>
AuthorDate: Sun Jul 16 22:20:05 2023 +0000
Commit:     Sam James <sam <AT> gentoo <DOT> org>
CommitDate: Wed Nov 22 00:00:05 2023 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=5bc696cb

toolchain-autoconf.eclass: handle different PN

Prepare for autoconf-vanilla.

Signed-off-by: Sam James <sam <AT> gentoo.org>

 eclass/toolchain-autoconf.eclass | 7 +++++--
 1 file changed, 5 insertions(+), 2 deletions(-)

diff --git a/eclass/toolchain-autoconf.eclass b/eclass/toolchain-autoconf.eclass
index ed8d5ff1412a..0211d810f6a2 100644
--- a/eclass/toolchain-autoconf.eclass
+++ b/eclass/toolchain-autoconf.eclass
@@ -30,7 +30,7 @@ _TOOLCHAIN_AUTOCONF_ECLASS=1
 # @ECLASS_VARIABLE: TC_AUTOCONF_INFOPATH
 # @DESCRIPTION:
 # Where to install info files if not slotting.
-TC_AUTOCONF_INFOPATH="${EPREFIX}/usr/share/autoconf-${PV}/info"
+TC_AUTOCONF_INFOPATH="${EPREFIX}/usr/share/${P}/info"
 
 toolchain-autoconf_src_prepare() {
 	find -name Makefile.in -exec sed -i '/^pkgdatadir/s:$:-@VERSION@:' {} + || die
@@ -40,8 +40,11 @@ toolchain-autoconf_src_prepare() {
 toolchain-autoconf_src_configure() {
 	# Disable Emacs in the build system since it is in a separate package.
 	export EMACS=no
+
+	MY_P="${P#autoconf-}"
+
 	local myconf=(
-		--program-suffix="-${PV}"
+		--program-suffix="-${MY_P}"
 	)
 	if [[ -z "${TC_AUTOCONF_BREAK_INFOS}" && "${SLOT}" != 0 ]]; then
 		myconf+=(


^ permalink raw reply related	[flat|nested] 6131+ messages in thread

* [gentoo-commits] repo/gentoo:master commit in: eclass/
@ 2023-11-22  0:00 Sam James
  0 siblings, 0 replies; 6131+ messages in thread
From: Sam James @ 2023-11-22  0:00 UTC (permalink / raw
  To: gentoo-commits

commit:     3d997445c447437251b9271a71af89548b7307bb
Author:     Sam James <sam <AT> gentoo <DOT> org>
AuthorDate: Sun Jul 16 22:33:19 2023 +0000
Commit:     Sam James <sam <AT> gentoo <DOT> org>
CommitDate: Wed Nov 22 00:00:06 2023 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=3d997445

toolchain-autoconf.eclass: accept arguments for src_configure

Signed-off-by: Sam James <sam <AT> gentoo.org>

 eclass/toolchain-autoconf.eclass | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/eclass/toolchain-autoconf.eclass b/eclass/toolchain-autoconf.eclass
index 0211d810f6a2..b2c3a4884282 100644
--- a/eclass/toolchain-autoconf.eclass
+++ b/eclass/toolchain-autoconf.eclass
@@ -51,7 +51,7 @@ toolchain-autoconf_src_configure() {
 			--infodir="${TC_AUTOCONF_INFOPATH}"
 		)
 	fi
-	econf "${myconf[@]}" || die
+	econf "${myconf[@]}" "${@}" || die
 	# econf updates config.{sub,guess} which forces the manpages
 	# to be regenerated which we dont want to do #146621
 	touch man/*.1


^ permalink raw reply related	[flat|nested] 6131+ messages in thread

* [gentoo-commits] repo/gentoo:master commit in: eclass/
@ 2023-11-22  0:00 Sam James
  0 siblings, 0 replies; 6131+ messages in thread
From: Sam James @ 2023-11-22  0:00 UTC (permalink / raw
  To: gentoo-commits

commit:     3090afd2a0f41d9183f2dbb580df7df9c6e3a0e3
Author:     Arsen Arsenović <arsen <AT> gentoo <DOT> org>
AuthorDate: Sat Nov  4 00:40:38 2023 +0000
Commit:     Sam James <sam <AT> gentoo <DOT> org>
CommitDate: Wed Nov 22 00:00:06 2023 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=3090afd2

toolchain-autoconf.eclass: Add TC_AUTOCONF_ENVPREFIX

This variable allows packages like autoconf-vanilla to adjust their
priority in env.d concatenation.

Signed-off-by: Arsen Arsenović <arsen <AT> gentoo.org>
Signed-off-by: Sam James <sam <AT> gentoo.org>

 eclass/toolchain-autoconf.eclass | 9 ++++++++-
 1 file changed, 8 insertions(+), 1 deletion(-)

diff --git a/eclass/toolchain-autoconf.eclass b/eclass/toolchain-autoconf.eclass
index b2c3a4884282..137f0efac159 100644
--- a/eclass/toolchain-autoconf.eclass
+++ b/eclass/toolchain-autoconf.eclass
@@ -32,6 +32,13 @@ _TOOLCHAIN_AUTOCONF_ECLASS=1
 # Where to install info files if not slotting.
 TC_AUTOCONF_INFOPATH="${EPREFIX}/usr/share/${P}/info"
 
+# @ECLASS_VARIABLE: TC_AUTOCONF_ENVPREFIX
+# @DESCRIPTION:
+# Prefix number for env.d files produced by this eclass.  Defaults to
+# 06.  Note that the generated env.d filename format is
+# "${TC_AUTOCONF_ENVPREFIX}${PN}$((99999-(major*1000+minor)))"
+: "${TC_AUTOCONF_ENVPREFIX:=06}"
+
 toolchain-autoconf_src_prepare() {
 	find -name Makefile.in -exec sed -i '/^pkgdatadir/s:$:-@VERSION@:' {} + || die
 	default
@@ -98,7 +105,7 @@ toolchain-autoconf_src_install() {
 		local major="$(ver_cut 1)"
 		local minor="$(ver_cut 2)"
 		local idx="$((99999-(major*1000+minor)))"
-		newenvd - "06autoconf${idx}" <<-EOF
+		newenvd - "${TC_AUTOCONF_ENVPREFIX}${PN}${idx}" <<-EOF
 		INFOPATH="${TC_AUTOCONF_INFOPATH}"
 		EOF
 


^ permalink raw reply related	[flat|nested] 6131+ messages in thread

* [gentoo-commits] repo/gentoo:master commit in: eclass/
@ 2023-11-23 15:02 Michał Górny
  0 siblings, 0 replies; 6131+ messages in thread
From: Michał Górny @ 2023-11-23 15:02 UTC (permalink / raw
  To: gentoo-commits

commit:     d66f119323ca954a35946b9f3eeeaae0c6c69d0b
Author:     Michał Górny <mgorny <AT> gentoo <DOT> org>
AuthorDate: Thu Nov 23 14:55:18 2023 +0000
Commit:     Michał Górny <mgorny <AT> gentoo <DOT> org>
CommitDate: Thu Nov 23 14:57:11 2023 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=d66f1193

multibuild.eclass: Fix passing return value from variants

Move the misplaced return value saving into the variant loop, so that
any non-successful return code is saved (as intended) rather than just
the last one.

Signed-off-by: Michał Górny <mgorny <AT> gentoo.org>

 eclass/multibuild.eclass | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/eclass/multibuild.eclass b/eclass/multibuild.eclass
index d8a5862731bf..f15d3327c7dd 100644
--- a/eclass/multibuild.eclass
+++ b/eclass/multibuild.eclass
@@ -129,8 +129,8 @@ multibuild_foreach_variant() {
 		_multibuild_run "${@}" \
 			> >(exec tee -a "${T}/build-${MULTIBUILD_ID}.log") 2>&1
 		lret=${?}
+		[[ ${ret} -eq 0 && ${lret} -ne 0 ]] && ret=${lret}
 	done
-	[[ ${ret} -eq 0 && ${lret} -ne 0 ]] && ret=${lret}
 
 	return ${ret}
 }


^ permalink raw reply related	[flat|nested] 6131+ messages in thread

* [gentoo-commits] repo/gentoo:master commit in: eclass/
@ 2023-11-24 16:26 Sam James
  0 siblings, 0 replies; 6131+ messages in thread
From: Sam James @ 2023-11-24 16:26 UTC (permalink / raw
  To: gentoo-commits

commit:     0061d784248dc29adc92c7881d2854deb6cc12e1
Author:     WANG Xuerui <xen0n <AT> gentoo <DOT> org>
AuthorDate: Thu Nov 23 08:04:18 2023 +0000
Commit:     Sam James <sam <AT> gentoo <DOT> org>
CommitDate: Fri Nov 24 16:26:14 2023 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=0061d784

go-env.eclass: unify GOARCH mapping logic with dev-lang/go

Previously the eclass featured its own GOARCH mapping, that took care
of less cases than the dev-lang/go ebuild did, and broke Go packages on
arches like loong (GOARCH=loong64), mips (4 GOARCHes supported in total)
or riscv (GOARCH=riscv64).

This patch adds a copy of the go_arch() helper from dev-lang/go to the
eclass and switches the go-env_set_compile_environment() function to use
that, to fix the problem at hand.

Fixes: 878d04daaf34765e6224e58139a9c45921d7a0c3
Closes: https://bugs.gentoo.org/917750
Signed-off-by: WANG Xuerui <xen0n <AT> gentoo.org>
Signed-off-by: Sam James <sam <AT> gentoo.org>

 eclass/go-env.eclass | 40 ++++++++++++++++++++++++++--------------
 1 file changed, 26 insertions(+), 14 deletions(-)

diff --git a/eclass/go-env.eclass b/eclass/go-env.eclass
index ba4f6c3fbb59..08e3cf498a70 100644
--- a/eclass/go-env.eclass
+++ b/eclass/go-env.eclass
@@ -8,7 +8,7 @@
 # Flatcar Linux Maintainers <infra@flatcar-linux.org>
 # @BLURB: Helper eclass for setting the Go compile environment. Required for cross-compiling.
 # @DESCRIPTION:
-# This eclass includes a helper function for setting the compile environment for Go ebuilds.
+# This eclass includes helper functions for setting the compile environment for Go ebuilds.
 # Intended to be called by other Go eclasses in an early build stage, e.g. src_unpack.
 
 if [[ -z ${_GO_ENV_ECLASS} ]]; then
@@ -25,24 +25,36 @@ inherit toolchain-funcs
 # (e.g. "emerge-aarch64-cross-linux-gnu foo" run on x86_64 will emerge "foo" for x86_64
 #  instead of aarch64)
 go-env_set_compile_environment() {
-	local arch="$(tc-arch)"
-	case "${arch}" in
-		x86)	GOARCH="386" ;;
-		x64-*)	GOARCH="amd64" ;;
-		ppc64)	if [[ "$(tc-endian)" == "big" ]] ; then
-					GOARCH="ppc64"
-				else
-					GOARCH="ppc64le"
-				fi ;;
-			*)	GOARCH="${arch}" ;;
-	esac
-
 	tc-export CC CXX
-	export GOARCH
+
+	export GOARCH="$(go-env_goarch)"
 	export CGO_CFLAGS="${CGO_CFLAGS:-$CFLAGS}"
 	export CGO_CPPFLAGS="${CGO_CPPFLAGS:-$CPPFLAGS}"
 	export CGO_CXXFLAGS="${CGO_CXXFLAGS:-$CXXFLAGS}"
 	export CGO_LDFLAGS="${CGO_LDFLAGS:-$LDFLAGS}"
 }
 
+# @FUNCTION: go-env_goarch
+# @USAGE: [toolchain prefix]
+# @DESCRIPTION:
+# Returns the appropriate GOARCH setting for the target architecture.
+go-env_goarch() {
+	# By chance most portage arch names match Go
+	local tc_arch=$(tc-arch $@)
+	case "${tc_arch}" in
+		x86)	echo 386;;
+		x64-*)	echo amd64;;
+		loong)	echo loong64;;
+		mips) if use abi_mips_o32; then
+				[[ $(tc-endian $@) = big ]] && echo mips || echo mipsle
+			elif use abi_mips_n64; then
+				[[ $(tc-endian $@) = big ]] && echo mips64 || echo mips64le
+			fi ;;
+		ppc64) [[ $(tc-endian $@) = big ]] && echo ppc64 || echo ppc64le ;;
+		riscv) echo riscv64 ;;
+		s390) echo s390x ;;
+		*)		echo "${tc_arch}";;
+	esac
+}
+
 fi


^ permalink raw reply related	[flat|nested] 6131+ messages in thread

* [gentoo-commits] repo/gentoo:master commit in: eclass/
@ 2023-11-24 16:26 Sam James
  0 siblings, 0 replies; 6131+ messages in thread
From: Sam James @ 2023-11-24 16:26 UTC (permalink / raw
  To: gentoo-commits

commit:     64224abbe06824d47c554dced4149b51f3cebe91
Author:     WANG Xuerui <xen0n <AT> gentoo <DOT> org>
AuthorDate: Thu Nov 23 08:28:54 2023 +0000
Commit:     Sam James <sam <AT> gentoo <DOT> org>
CommitDate: Fri Nov 24 16:26:15 2023 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=64224abb

go-env.eclass: also set GOARM & GO386 when applicable

This is necessary for the build artifact to conform to the configured
ISA level and features on those arches. The logic is also taken from
the dev-lang/go ebuild.

Signed-off-by: WANG Xuerui <xen0n <AT> gentoo.org>
Closes: https://github.com/gentoo/gentoo/pull/33941
Signed-off-by: Sam James <sam <AT> gentoo.org>

 eclass/go-env.eclass | 21 +++++++++++++++++++++
 1 file changed, 21 insertions(+)

diff --git a/eclass/go-env.eclass b/eclass/go-env.eclass
index 08e3cf498a70..4bc8c4b15c65 100644
--- a/eclass/go-env.eclass
+++ b/eclass/go-env.eclass
@@ -19,6 +19,8 @@ inherit toolchain-funcs
 # @FUNCTION: go-env_set_compile_environment
 # @DESCRIPTION:
 # Set up basic compile environment: CC, CXX, and GOARCH.
+# Necessary platform-specific settings such as GOARM or GO386 are also set
+# according to the Portage configuration when building for those architectures.
 # Also carry over CFLAGS, LDFLAGS and friends.
 # Required for cross-compiling with crossdev.
 # If not set, host defaults will be used and the resulting binaries are host arch.
@@ -28,6 +30,9 @@ go-env_set_compile_environment() {
 	tc-export CC CXX
 
 	export GOARCH="$(go-env_goarch)"
+	use arm && export GOARM=$(go-env_goarm)
+	use x86 && export GO386=$(usex cpu_flags_x86_sse2 '' 'softfloat')
+
 	export CGO_CFLAGS="${CGO_CFLAGS:-$CFLAGS}"
 	export CGO_CPPFLAGS="${CGO_CPPFLAGS:-$CPPFLAGS}"
 	export CGO_CXXFLAGS="${CGO_CXXFLAGS:-$CXXFLAGS}"
@@ -57,4 +62,20 @@ go-env_goarch() {
 	esac
 }
 
+# @FUNCTION: go-env_goarm
+# @USAGE: [CHOST-value]
+# @DESCRIPTION:
+# Returns the appropriate GOARM setting for the CHOST given, or the default
+# CHOST.
+go-env_goarm() {
+	case "${1:-${CHOST}}" in
+		armv5*)	echo 5;;
+		armv6*)	echo 6;;
+		armv7*)	echo 7;;
+		*)
+			die "unknown GOARM for ${1:-${CHOST}}"
+			;;
+	esac
+}
+
 fi


^ permalink raw reply related	[flat|nested] 6131+ messages in thread

* [gentoo-commits] repo/gentoo:master commit in: eclass/
@ 2023-11-24 17:17 Sam James
  0 siblings, 0 replies; 6131+ messages in thread
From: Sam James @ 2023-11-24 17:17 UTC (permalink / raw
  To: gentoo-commits

commit:     5718f8440197298e0aa1df2a88a66057d2cdaf83
Author:     Sam James <sam <AT> gentoo <DOT> org>
AuthorDate: Fri Nov 24 17:16:35 2023 +0000
Commit:     Sam James <sam <AT> gentoo <DOT> org>
CommitDate: Fri Nov 24 17:16:35 2023 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=5718f844

Revert "go-env.eclass: also set GOARM & GO386 when applicable"

This reverts commit 64224abbe06824d47c554dced4149b51f3cebe91.

Ionen raises on the ML that this won't work unless cpu_flags_x86_sse2 is in IUSE,
so revert for now until can figure that bit out.

Signed-off-by: Sam James <sam <AT> gentoo.org>

 eclass/go-env.eclass | 21 ---------------------
 1 file changed, 21 deletions(-)

diff --git a/eclass/go-env.eclass b/eclass/go-env.eclass
index 4bc8c4b15c65..08e3cf498a70 100644
--- a/eclass/go-env.eclass
+++ b/eclass/go-env.eclass
@@ -19,8 +19,6 @@ inherit toolchain-funcs
 # @FUNCTION: go-env_set_compile_environment
 # @DESCRIPTION:
 # Set up basic compile environment: CC, CXX, and GOARCH.
-# Necessary platform-specific settings such as GOARM or GO386 are also set
-# according to the Portage configuration when building for those architectures.
 # Also carry over CFLAGS, LDFLAGS and friends.
 # Required for cross-compiling with crossdev.
 # If not set, host defaults will be used and the resulting binaries are host arch.
@@ -30,9 +28,6 @@ go-env_set_compile_environment() {
 	tc-export CC CXX
 
 	export GOARCH="$(go-env_goarch)"
-	use arm && export GOARM=$(go-env_goarm)
-	use x86 && export GO386=$(usex cpu_flags_x86_sse2 '' 'softfloat')
-
 	export CGO_CFLAGS="${CGO_CFLAGS:-$CFLAGS}"
 	export CGO_CPPFLAGS="${CGO_CPPFLAGS:-$CPPFLAGS}"
 	export CGO_CXXFLAGS="${CGO_CXXFLAGS:-$CXXFLAGS}"
@@ -62,20 +57,4 @@ go-env_goarch() {
 	esac
 }
 
-# @FUNCTION: go-env_goarm
-# @USAGE: [CHOST-value]
-# @DESCRIPTION:
-# Returns the appropriate GOARM setting for the CHOST given, or the default
-# CHOST.
-go-env_goarm() {
-	case "${1:-${CHOST}}" in
-		armv5*)	echo 5;;
-		armv6*)	echo 6;;
-		armv7*)	echo 7;;
-		*)
-			die "unknown GOARM for ${1:-${CHOST}}"
-			;;
-	esac
-}
-
 fi


^ permalink raw reply related	[flat|nested] 6131+ messages in thread

* [gentoo-commits] repo/gentoo:master commit in: eclass/
@ 2023-11-24 18:35 Sam James
  0 siblings, 0 replies; 6131+ messages in thread
From: Sam James @ 2023-11-24 18:35 UTC (permalink / raw
  To: gentoo-commits

commit:     6f6e58bd266a7e82f2eff29703a5a819b20ce8f7
Author:     Sam James <sam <AT> gentoo <DOT> org>
AuthorDate: Fri Nov 24 17:42:25 2023 +0000
Commit:     Sam James <sam <AT> gentoo <DOT> org>
CommitDate: Fri Nov 24 18:35:04 2023 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=6f6e58bd

go-env.eclass: fix GO386 handling

Go 1.16 dropped explicit support for 386 FP and relies on software
emulation instead in the absence of SSE2.

* First, check if cpu_flags_x86_sse2 is used in the ebuild. If it is and it's
enabled, then act in SSE2 mode.

* If not, fall back to checking whether the compiler has __SSE2__ defined via
e.g. -march in CFLAGS.

* Failing that, use softfloat mode.

Fixes the issue mentioned in 5718f8440197298e0aa1df2a88a66057d2cdaf83 (where
we tried to use a USE flag which isn't implicit).

Signed-off-by: Sam James <sam <AT> gentoo.org>

 eclass/go-env.eclass | 23 ++++++++++++++++++++++-
 1 file changed, 22 insertions(+), 1 deletion(-)

diff --git a/eclass/go-env.eclass b/eclass/go-env.eclass
index 4bc8c4b15c65..1f950db06930 100644
--- a/eclass/go-env.eclass
+++ b/eclass/go-env.eclass
@@ -31,7 +31,7 @@ go-env_set_compile_environment() {
 
 	export GOARCH="$(go-env_goarch)"
 	use arm && export GOARM=$(go-env_goarm)
-	use x86 && export GO386=$(usex cpu_flags_x86_sse2 '' 'softfloat')
+	use x86 && export GO386=$(go-env_go386)
 
 	export CGO_CFLAGS="${CGO_CFLAGS:-$CFLAGS}"
 	export CGO_CPPFLAGS="${CGO_CPPFLAGS:-$CPPFLAGS}"
@@ -62,6 +62,27 @@ go-env_goarch() {
 	esac
 }
 
+# @FUNCTION: go-env_go386
+# @DESCRIPTION:
+# Returns the appropriate GO386 setting for the CFLAGS in use.
+go-env_go386() {
+	# Piggy-back off any existing CPU_FLAGS_X86 usage in the ebuild if
+	# it's there.
+	if in_iuse cpu_flags_x86_sse2 && use cpu_flags_x86_sse2 ; then
+		echo 'sse2'
+		return
+	fi
+
+	if tc-cpp-is-true "defined(__SSE2__)" ${CFLAGS} ${CXXFLAGS} ; then
+		echo 'sse2'
+		return
+	fi
+
+	# Go 1.16 dropped explicit support for 386 FP and relies on software
+	# emulation instead in the absence of SSE2.
+	echo 'softfloat'
+}
+
 # @FUNCTION: go-env_goarm
 # @USAGE: [CHOST-value]
 # @DESCRIPTION:


^ permalink raw reply related	[flat|nested] 6131+ messages in thread

* [gentoo-commits] repo/gentoo:master commit in: eclass/
@ 2023-11-24 18:35 Sam James
  0 siblings, 0 replies; 6131+ messages in thread
From: Sam James @ 2023-11-24 18:35 UTC (permalink / raw
  To: gentoo-commits

commit:     6a3a1e6a613329f2a4ea88a2fffee0134da780e9
Author:     Sam James <sam <AT> gentoo <DOT> org>
AuthorDate: Fri Nov 24 17:22:58 2023 +0000
Commit:     Sam James <sam <AT> gentoo <DOT> org>
CommitDate: Fri Nov 24 17:44:36 2023 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=6a3a1e6a

go-env.eclass: Reapply "also set GOARM & GO386 when applicable"

This reverts commit 5718f8440197298e0aa1df2a88a66057d2cdaf83.

Reverted because of the issue mentioned in 5718f8440197298e0aa1df2a88a66057d2cdaf83
to not leave things broken while investigating a fix.

Reapplying and fixing it up in a followup.

Signed-off-by: Sam James <sam <AT> gentoo.org>

 eclass/go-env.eclass | 21 +++++++++++++++++++++
 1 file changed, 21 insertions(+)

diff --git a/eclass/go-env.eclass b/eclass/go-env.eclass
index 08e3cf498a70..4bc8c4b15c65 100644
--- a/eclass/go-env.eclass
+++ b/eclass/go-env.eclass
@@ -19,6 +19,8 @@ inherit toolchain-funcs
 # @FUNCTION: go-env_set_compile_environment
 # @DESCRIPTION:
 # Set up basic compile environment: CC, CXX, and GOARCH.
+# Necessary platform-specific settings such as GOARM or GO386 are also set
+# according to the Portage configuration when building for those architectures.
 # Also carry over CFLAGS, LDFLAGS and friends.
 # Required for cross-compiling with crossdev.
 # If not set, host defaults will be used and the resulting binaries are host arch.
@@ -28,6 +30,9 @@ go-env_set_compile_environment() {
 	tc-export CC CXX
 
 	export GOARCH="$(go-env_goarch)"
+	use arm && export GOARM=$(go-env_goarm)
+	use x86 && export GO386=$(usex cpu_flags_x86_sse2 '' 'softfloat')
+
 	export CGO_CFLAGS="${CGO_CFLAGS:-$CFLAGS}"
 	export CGO_CPPFLAGS="${CGO_CPPFLAGS:-$CPPFLAGS}"
 	export CGO_CXXFLAGS="${CGO_CXXFLAGS:-$CXXFLAGS}"
@@ -57,4 +62,20 @@ go-env_goarch() {
 	esac
 }
 
+# @FUNCTION: go-env_goarm
+# @USAGE: [CHOST-value]
+# @DESCRIPTION:
+# Returns the appropriate GOARM setting for the CHOST given, or the default
+# CHOST.
+go-env_goarm() {
+	case "${1:-${CHOST}}" in
+		armv5*)	echo 5;;
+		armv6*)	echo 6;;
+		armv7*)	echo 7;;
+		*)
+			die "unknown GOARM for ${1:-${CHOST}}"
+			;;
+	esac
+}
+
 fi


^ permalink raw reply related	[flat|nested] 6131+ messages in thread

* [gentoo-commits] repo/gentoo:master commit in: eclass/
@ 2023-11-25 11:21 Michał Górny
  0 siblings, 0 replies; 6131+ messages in thread
From: Michał Górny @ 2023-11-25 11:21 UTC (permalink / raw
  To: gentoo-commits

commit:     f17e0cfb20597df1591656bbe68b8643c1d50813
Author:     Michał Górny <mgorny <AT> gentoo <DOT> org>
AuthorDate: Sat Nov 25 11:19:52 2023 +0000
Commit:     Michał Górny <mgorny <AT> gentoo <DOT> org>
CommitDate: Sat Nov 25 11:21:14 2023 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=f17e0cfb

llvm.org.eclass: Remove old snapshots

Signed-off-by: Michał Górny <mgorny <AT> gentoo.org>

 eclass/llvm.org.eclass | 6 ------
 1 file changed, 6 deletions(-)

diff --git a/eclass/llvm.org.eclass b/eclass/llvm.org.eclass
index ad6c35848bc4..9f702697a846 100644
--- a/eclass/llvm.org.eclass
+++ b/eclass/llvm.org.eclass
@@ -75,12 +75,6 @@ if [[ -z ${_LLVM_SOURCE_TYPE+1} ]]; then
 				18.0.0_pre20231119)
 					EGIT_COMMIT=5237193b87721134541f228e28edfd544a9c8ac8
 					;;
-				18.0.0_pre20231111)
-					EGIT_COMMIT=167b598648dfcee2f23426bfa972e53f8ac16722
-					;;
-				18.0.0_pre20231104)
-					EGIT_COMMIT=83888a5404d46667647fe36d6fa510d075ed57ea
-					;;
 				*)
 					die "Unknown snapshot: ${PV}"
 					;;


^ permalink raw reply related	[flat|nested] 6131+ messages in thread

* [gentoo-commits] repo/gentoo:master commit in: eclass/
@ 2023-11-25 23:34 Andreas Sturmlechner
  0 siblings, 0 replies; 6131+ messages in thread
From: Andreas Sturmlechner @ 2023-11-25 23:34 UTC (permalink / raw
  To: gentoo-commits

commit:     5c3bfa331387b445ac36c3fe71ec6c956e9ffe6c
Author:     Andreas Sturmlechner <asturm <AT> gentoo <DOT> org>
AuthorDate: Sun Dec 11 17:57:31 2022 +0000
Commit:     Andreas Sturmlechner <asturm <AT> gentoo <DOT> org>
CommitDate: Sat Nov 25 23:33:24 2023 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=5c3bfa33

frameworks.kde.org.eclass: Support KF6, set ECM to SLOT=0

Define SLOT=6 properly for >=5.240, excluding 5.9999

git master was set to 5.240 for KF6 ports, unstable KF6 releases use
numbers 5.245 and above.

Signed-off-by: Andreas Sturmlechner <asturm <AT> gentoo.org>

 eclass/frameworks.kde.org.eclass | 15 +++++++++++++--
 1 file changed, 13 insertions(+), 2 deletions(-)

diff --git a/eclass/frameworks.kde.org.eclass b/eclass/frameworks.kde.org.eclass
index af8e7b86f5a2..5d54b736c91b 100644
--- a/eclass/frameworks.kde.org.eclass
+++ b/eclass/frameworks.kde.org.eclass
@@ -35,8 +35,19 @@ inherit kde.org
 
 HOMEPAGE="https://develop.kde.org/products/frameworks/"
 
-SLOT=5/${PV}
-[[ ${KDE_BUILD_TYPE} == release ]] && SLOT=$(ver_cut 1)/$(ver_cut 1-2)
+SLOT=6
+if [[ ${PV} == 5.9999 ]] || ver_test ${PV} -lt 5.240; then
+	SLOT=5
+fi
+if [[ ${PN} == extra-cmake-modules ]]; then
+	SLOT=0
+else
+	if [[ ${KDE_BUILD_TYPE} == release ]]; then
+		SLOT=${SLOT}/$(ver_cut 1-2)
+	else
+		SLOT=${SLOT}/9999
+	fi
+fi
 
 # @ECLASS_VARIABLE: KDE_ORG_SCHEDULE_URI
 # @INTERNAL


^ permalink raw reply related	[flat|nested] 6131+ messages in thread

* [gentoo-commits] repo/gentoo:master commit in: eclass/
@ 2023-11-25 23:34 Andreas Sturmlechner
  0 siblings, 0 replies; 6131+ messages in thread
From: Andreas Sturmlechner @ 2023-11-25 23:34 UTC (permalink / raw
  To: gentoo-commits

commit:     cbe4689429d7ad1e6e28d24faafab9ec5ade7b4f
Author:     Andreas Sturmlechner <asturm <AT> gentoo <DOT> org>
AuthorDate: Wed Nov 15 21:04:07 2023 +0000
Commit:     Andreas Sturmlechner <asturm <AT> gentoo <DOT> org>
CommitDate: Sat Nov 25 23:33:25 2023 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=cbe46894

ecm.eclass: Relax kde-frameworks/extra-cmake-modules SLOT dep to :*

We do not need to pin to 0 right away to let overlays catch up.

Signed-off-by: Andreas Sturmlechner <asturm <AT> gentoo.org>

 eclass/ecm.eclass | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/eclass/ecm.eclass b/eclass/ecm.eclass
index b58a38be027f..3c102d669caf 100644
--- a/eclass/ecm.eclass
+++ b/eclass/ecm.eclass
@@ -276,7 +276,7 @@ esac
 
 BDEPEND+="
 	dev-libs/libpcre2:*
-	>=kde-frameworks/extra-cmake-modules-${KFMIN}:${KFSLOT}
+	>=kde-frameworks/extra-cmake-modules-${KFMIN}:*
 "
 RDEPEND+=" >=kde-frameworks/kf-env-4"
 if [[ ${_KFSLOT} == 6 ]]; then


^ permalink raw reply related	[flat|nested] 6131+ messages in thread

* [gentoo-commits] repo/gentoo:master commit in: eclass/
@ 2023-11-25 23:34 Andreas Sturmlechner
  0 siblings, 0 replies; 6131+ messages in thread
From: Andreas Sturmlechner @ 2023-11-25 23:34 UTC (permalink / raw
  To: gentoo-commits

commit:     3c980b4f715ca6f362e2e1c47f2c6cc26fe300f2
Author:     Andreas Sturmlechner <asturm <AT> gentoo <DOT> org>
AuthorDate: Sun Jan  8 11:11:15 2023 +0000
Commit:     Andreas Sturmlechner <asturm <AT> gentoo <DOT> org>
CommitDate: Sat Nov 25 23:33:24 2023 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=3c980b4f

frameworks.kde.org.eclass: Switch 5.9999 to kf5 branch

See also:
https://mail.kde.org/pipermail/kde-frameworks-devel/2023-January/123124.html

Signed-off-by: Andreas Sturmlechner <asturm <AT> gentoo.org>

 eclass/frameworks.kde.org.eclass | 43 ++++++++++++++++++++++++----------------
 1 file changed, 26 insertions(+), 17 deletions(-)

diff --git a/eclass/frameworks.kde.org.eclass b/eclass/frameworks.kde.org.eclass
index 5201464a76c8..af8e7b86f5a2 100644
--- a/eclass/frameworks.kde.org.eclass
+++ b/eclass/frameworks.kde.org.eclass
@@ -50,23 +50,32 @@ KDE_ORG_SCHEDULE_URI+="/Frameworks"
 # Helper variable to construct release group specific SRC_URI.
 _KDE_SRC_URI="mirror://kde/"
 
-if [[ ${KDE_BUILD_TYPE} != live && -z ${KDE_ORG_COMMIT} ]]; then
-	_KDE_SRC_URI+="stable/frameworks/$(ver_cut 1-2)/"
-	case ${KDE_ORG_NAME} in
-		kdelibs4support | \
-		kdesignerplugin | \
-		kdewebkit | \
-		khtml | \
-		kjs | \
-		kjsembed | \
-		kmediaplayer | \
-		kross | \
-		kxmlrpcclient)
-			_KDE_SRC_URI+="portingAids/"
-			;;
-	esac
+case ${KDE_BUILD_TYPE} in
+	live)
+		if [[ ${PV} == 5.9999 ]]; then
+			EGIT_BRANCH="kf5"
+		fi
+		;;
+	*)
+		if [[ -z ${KDE_ORG_COMMIT} ]]; then
+			_KDE_SRC_URI+="stable/frameworks/$(ver_cut 1-2)/"
+			case ${KDE_ORG_NAME} in
+				kdelibs4support | \
+				kdesignerplugin | \
+				kdewebkit | \
+				khtml | \
+				kjs | \
+				kjsembed | \
+				kmediaplayer | \
+				kross | \
+				kxmlrpcclient)
+					_KDE_SRC_URI+="portingAids/"
+					;;
+			esac
 
-	SRC_URI="${_KDE_SRC_URI}${KDE_ORG_NAME}-${PV}.tar.xz"
-fi
+			SRC_URI="${_KDE_SRC_URI}${KDE_ORG_NAME}-${PV}.tar.xz"
+		fi
+		;;
+esac
 
 fi


^ permalink raw reply related	[flat|nested] 6131+ messages in thread

* [gentoo-commits] repo/gentoo:master commit in: eclass/
@ 2023-11-25 23:34 Andreas Sturmlechner
  0 siblings, 0 replies; 6131+ messages in thread
From: Andreas Sturmlechner @ 2023-11-25 23:34 UTC (permalink / raw
  To: gentoo-commits

commit:     ca48f7c92ccdddb4d65e094d5e8e19102e3413f3
Author:     Andreas Sturmlechner <asturm <AT> gentoo <DOT> org>
AuthorDate: Sun Nov 19 12:28:03 2023 +0000
Commit:     Andreas Sturmlechner <asturm <AT> gentoo <DOT> org>
CommitDate: Sat Nov 25 23:33:24 2023 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=ca48f7c9

ecm.eclass: Use _KFSLOT to aptly configure KF5/KF6 based packages

Signed-off-by: Andreas Sturmlechner <asturm <AT> gentoo.org>

 eclass/ecm.eclass | 46 +++++++++++++++++++++++++---------------------
 1 file changed, 25 insertions(+), 21 deletions(-)

diff --git a/eclass/ecm.eclass b/eclass/ecm.eclass
index 46cc53afd5cb..b58a38be027f 100644
--- a/eclass/ecm.eclass
+++ b/eclass/ecm.eclass
@@ -87,26 +87,27 @@ fi
 # Will accept "true", "false", "optional", "forceoptional". If set to "false",
 # do nothing.
 # Otherwise, add "+handbook" to IUSE, add the appropriate dependency, and let
-# KF5DocTools generate and install the handbook from docbook file(s) found in
-# ECM_HANDBOOK_DIR. However if !handbook, disable build of ECM_HANDBOOK_DIR
-# in CMakeLists.txt.
-# If set to "optional", build with -DCMAKE_DISABLE_FIND_PACKAGE_KF5DocTools=ON
-# when !handbook. In case package requires KF5KDELibs4Support, see next:
-# If set to "forceoptional", remove a KF5DocTools dependency from the root
-# CMakeLists.txt in addition to the above.
+# KF${_KFSLOT}DocTools generate and install the handbook from doc