[gentoo-commits] repo/gentoo:master commit in: eclass/tests/

2024-09-18 Thread Sam James
commit: 0e3fcf7b631e7afe04af8ac80bae2759d222d2de
Author: Sam James  gentoo  org>
AuthorDate: Thu Sep 19 04:12:46 2024 +
Commit: Sam James  gentoo  org>
CommitDate: Thu Sep 19 04:13:46 2024 +
URL:https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=0e3fcf7b

eclass/tests: fix toolchain.sh tests by dropping old GCC support

eb49d171430cc2baffbf9d37493a78cc02b33fe2 dropped old GCC support but
the tests weren't updated.

Closes: https://bugs.gentoo.org/939817
Fixes: eb49d171430cc2baffbf9d37493a78cc02b33fe2
Signed-off-by: Sam James  gentoo.org>

 eclass/tests/toolchain.sh | 17 -
 1 file changed, 17 deletions(-)

diff --git a/eclass/tests/toolchain.sh b/eclass/tests/toolchain.sh
index 6f8df5b4fc4a..1ba2e6b1f29d 100755
--- a/eclass/tests/toolchain.sh
+++ b/eclass/tests/toolchain.sh
@@ -49,10 +49,6 @@ test_downgrade_arch_flags 4.5 "-march=core2"  
"-march=haswell"
 test_downgrade_arch_flags 4.4 "-march=core2"  "-march=haswell"
 test_downgrade_arch_flags 4.3 "-march=core2"  "-march=haswell"
 test_downgrade_arch_flags 4.2 "-march=nocona" "-march=haswell"
-test_downgrade_arch_flags 4.1 "-march=nocona" "-march=haswell"
-test_downgrade_arch_flags 4.0 "-march=nocona" "-march=haswell"
-test_downgrade_arch_flags 3.4 "-march=nocona" "-march=haswell"
-test_downgrade_arch_flags 3.3 "-march=nocona" "-march=haswell"
 
 test_downgrade_arch_flags 4.9 "-march=bdver4" "-march=bdver4"
 test_downgrade_arch_flags 4.8 "-march=bdver3" "-march=bdver4"
@@ -62,31 +58,18 @@ test_downgrade_arch_flags 4.5 "-march=amdfam10"   
"-march=bdver4"
 test_downgrade_arch_flags 4.4 "-march=amdfam10"   "-march=bdver4"
 test_downgrade_arch_flags 4.3 "-march=amdfam10"   "-march=bdver4"
 test_downgrade_arch_flags 4.2 "-march=k8" "-march=bdver4"
-test_downgrade_arch_flags 4.1 "-march=k8" "-march=bdver4"
-test_downgrade_arch_flags 4.0 "-march=k8" "-march=bdver4"
-test_downgrade_arch_flags 3.4 "-march=k8" "-march=bdver4"
-test_downgrade_arch_flags 3.3 "-march=x86-64" "-march=bdver4"
-
-test_downgrade_arch_flags 3.4 "-march=c3-2"   "-march=c3-2"
-test_downgrade_arch_flags 3.3 "-march=c3" "-march=c3-2"
 
 test_downgrade_arch_flags 4.5 "-march=garbage""-march=garbage"
 
 test_downgrade_arch_flags 10  "-mtune=intel"  "-mtune=intel"
 test_downgrade_arch_flags 4.9 "-mtune=intel"  "-mtune=intel"
 test_downgrade_arch_flags 4.8 "-mtune=generic""-mtune=intel"
-test_downgrade_arch_flags 3.4 ""  "-mtune=generic"
-test_downgrade_arch_flags 3.4 ""  "-mtune=x86-64"
-test_downgrade_arch_flags 3.3 ""  "-mtune=anything"
 
 test_downgrade_arch_flags 4.5 "-march=amdfam10 -mtune=generic" "-march=btver2 
-mtune=generic"
-test_downgrade_arch_flags 3.3 "-march=k6-2"   "-march=geode 
-mtune=barcelona"
-test_downgrade_arch_flags 3.4 "-march=k8" "-march=btver2 
-mtune=generic"
 
 test_downgrade_arch_flags 10  "-march=native" "-march=native"
 test_downgrade_arch_flags 8   "-march=znver1" "-march=znver2"
 test_downgrade_arch_flags 4.2 "-march=native" "-march=native"
-test_downgrade_arch_flags 4.1 "-march=nocona" "-march=native"
 test_downgrade_arch_flags 9   "-march=znver2" "-march=znver3"
 
 test_downgrade_arch_flags 10  "-march=foo -mno-sha -mno-rtm -mno-avx2 -mno-avx 
-mno-sse4.1" "-march=foo -mno-sha -mno-rtm -mno-avx2 -mno-avx -mno-sse4.1"



[gentoo-commits] repo/gentoo:master commit in: eclass/tests/

2024-09-18 Thread Sam James
commit: 3f3bfeac6adc6b4e9db50b1204c1a398523c55b1
Author: Sam James  gentoo  org>
AuthorDate: Wed Sep 18 15:49:34 2024 +
Commit: Sam James  gentoo  org>
CommitDate: Wed Sep 18 15:49:34 2024 +
URL:https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=3f3bfeac

Revert "eclass/tests/toolchain.sh: declare PYTHON_COMPAT"

This reverts commit 992fc2954c2281285bc50156ba12d310a1b434e1.

This should no longer be necessary now that tests are opt-in
with TOOLCHAIN_HAS_TESTS.

Bug: https://bugs.gentoo.org/859157
Signed-off-by: Sam James  gentoo.org>

 eclass/tests/toolchain.sh | 2 --
 1 file changed, 2 deletions(-)

diff --git a/eclass/tests/toolchain.sh b/eclass/tests/toolchain.sh
index 2e48c3443493..6f8df5b4fc4a 100755
--- a/eclass/tests/toolchain.sh
+++ b/eclass/tests/toolchain.sh
@@ -11,8 +11,6 @@ PR=r0
 source tests-common.sh || exit
 source version-funcs.sh || exit
 
-PYTHON_COMPAT=( python3_{10..13} )
-
 EAPI=7 inherit toolchain
 
 # Ignore actually running version of gcc and fake new version



[gentoo-commits] repo/gentoo:master commit in: eclass/tests/

2024-09-18 Thread Sam James
commit: 992fc2954c2281285bc50156ba12d310a1b434e1
Author: Petr Vaněk  gentoo  org>
AuthorDate: Wed Sep 18 11:30:12 2024 +
Commit: Sam James  gentoo  org>
CommitDate: Wed Sep 18 15:49:09 2024 +
URL:https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=992fc295

eclass/tests/toolchain.sh: declare PYTHON_COMPAT

toolchain.sh test script requires PYTHON_COMPAT array since commit
1d93a491096f ("toolchain.eclass: rework tests more") otherwise it dies
with

 die: PYTHON_COMPAT not declared.

error.

Bug: https://bugs.gentoo.org/859157
Signed-off-by: Petr Vaněk  gentoo.org>
Signed-off-by: Sam James  gentoo.org>

 eclass/tests/toolchain.sh | 2 ++
 1 file changed, 2 insertions(+)

diff --git a/eclass/tests/toolchain.sh b/eclass/tests/toolchain.sh
index 6f8df5b4fc4a..2e48c3443493 100755
--- a/eclass/tests/toolchain.sh
+++ b/eclass/tests/toolchain.sh
@@ -11,6 +11,8 @@ PR=r0
 source tests-common.sh || exit
 source version-funcs.sh || exit
 
+PYTHON_COMPAT=( python3_{10..13} )
+
 EAPI=7 inherit toolchain
 
 # Ignore actually running version of gcc and fake new version



[gentoo-commits] repo/gentoo:master commit in: eclass/

2024-09-18 Thread Sam James
commit: e9971cf188e6578ebdd68af6785a59ab5615abbf
Author: Sam James  gentoo  org>
AuthorDate: Wed Sep 18 15:42:39 2024 +
Commit: Sam James  gentoo  org>
CommitDate: Wed Sep 18 15:49:26 2024 +
URL:https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=e9971cf1

toolchain.eclass: make tests opt-in per-ebuild

In 1d93a491096f1cc0234fcf44458bfec142c213bb, we kind of introduced a
timebomb to all GCC ebuilds.

Switch to making it opt-in by setting TOOLCHAIN_HAS_TESTS in ebuilds
which want to use validate_failures.py. It hasn't been tested and may
not even work with gnat-gpl and kgcc64 so it doesn't make sense
to have it by default, especially for gnat-gpl which is now just
a bootstrap package anyway.

Bug: https://bugs.gentoo.org/934124
Signed-off-by: Sam James  gentoo.org>

 eclass/toolchain.eclass | 22 --
 1 file changed, 16 insertions(+), 6 deletions(-)

diff --git a/eclass/toolchain.eclass b/eclass/toolchain.eclass
index c03312be43ad..a545f730ada7 100644
--- a/eclass/toolchain.eclass
+++ b/eclass/toolchain.eclass
@@ -22,7 +22,9 @@ _TOOLCHAIN_ECLASS=1
 DESCRIPTION="The GNU Compiler Collection"
 HOMEPAGE="https://gcc.gnu.org/";
 
-inherit edo flag-o-matic gnuconfig libtool multilib pax-utils python-any-r1 
toolchain-funcs prefix
+inherit edo flag-o-matic gnuconfig libtool multilib pax-utils toolchain-funcs 
prefix
+
+[[ -n ${TOOLCHAIN_HAS_TESTS} ]] && inherit python-any-r1
 
 tc_is_live() {
[[ ${PV} == ** ]]
@@ -143,6 +145,12 @@ tc_version_is_between() {
 # @DESCRIPTION:
 # Indicate the developer who hosts the patchset for an ebuild.
 
+# @ECLASS_VARIABLE: TOOLCHAIN_HAS_TESTS
+# @DEFAULT_UNSET
+# @DESCRIPTION:
+# Controls whether python-any-r1 is inherited and validate_failures.py
+# is used.
+
 # @ECLASS_VARIABLE: GCC_PV
 # @INTERNAL
 # @DESCRIPTION:
@@ -273,6 +281,7 @@ 
STDCXX_INCDIR=${TOOLCHAIN_STDCXX_INCDIR:-${LIBPATH}/include/g++-v${GCC_BRANCH_VE
 LICENSE="GPL-3+ LGPL-3+ || ( GPL-3+ libgcc libstdc++ 
gcc-runtime-library-exception-3.1 ) FDL-1.3+"
 IUSE="test vanilla +nls"
 RESTRICT="!test? ( test )"
+[[ -z ${TOOLCHAIN_HAS_TESTS} ]] && RESTRICT+=" test"
 
 TC_FEATURES=()
 
@@ -537,7 +546,8 @@ get_gcc_src_uri() {
[[ -n ${MUSL_VER} ]] && \
GCC_SRC_URI+=" $(gentoo_urls 
gcc-${MUSL_GCC_VER}-musl-patches-${MUSL_VER}.tar.${TOOLCHAIN_PATCH_SUFFIX})"
 
-   GCC_SRC_URI+=" test? ( 
https://gitweb.gentoo.org/proj/gcc-patches.git/plain/scripts/testsuite-management/validate_failures.py?id=${GCC_VALIDATE_FAILURES_VERSION}
 -> gcc-validate-failures-${GCC_VALIDATE_FAILURES_VERSION}.py )"
+   [[ -n ${TOOLCHAIN_HAS_TESTS} ]] && \
+   GCC_SRC_URI+=" test? ( 
https://gitweb.gentoo.org/proj/gcc-patches.git/plain/scripts/testsuite-management/validate_failures.py?id=${GCC_VALIDATE_FAILURES_VERSION}
 -> gcc-validate-failures-${GCC_VALIDATE_FAILURES_VERSION}.py )"
 
echo "${GCC_SRC_URI}"
 }
@@ -569,7 +579,7 @@ toolchain_pkg_setup() {
# more legible.
MAKEOPTS="--output-sync=line ${MAKEOPTS}"
 
-   use test && python-any-r1_pkg_setup
+   [[ -n ${TOOLCHAIN_HAS_TESTS} ]] && use test && python-any-r1_pkg_setup
 }
 
 #>> src_unpack <<
@@ -633,7 +643,7 @@ toolchain_src_prepare() {
tc_enable_hardened_gcc
fi
 
-   if use test ; then
+   if [[ -n ${TOOLCHAIN_HAS_TESTS} ]] && use test ; then
cp 
"${DISTDIR}"/gcc-validate-failures-${GCC_VALIDATE_FAILURES_VERSION}.py 
"${T}"/validate_failures.py || die
chmod +x "${T}"/validate_failures.py || die
fi
@@ -2275,7 +2285,7 @@ toolchain_src_install() {
pax-mark -r "${ED}/libexec/gcc/${CTARGET}/${GCC_CONFIG_VER}/cc1"
pax-mark -r "${ED}/libexec/gcc/${CTARGET}/${GCC_CONFIG_VER}/cc1plus"
 
-   if use test ; then
+   if [[ -n ${TOOLCHAIN_HAS_TESTS} ]] && use test ; then
mkdir "${T}"/test-results || die
cd "${WORKDIR}"/build || die
find . -name \*.sum -exec cp --parents -v {} 
"${T}"/test-results \; || die
@@ -2434,7 +2444,7 @@ create_revdep_rebuild_entry() {
 #>> pkg_pre* <<
 
 toolchain_pkg_preinst() {
-   if [[ ${MERGE_TYPE} != binary ]] && use test ; then
+   if [[ -n ${TOOLCHAIN_HAS_TESTS} && ${MERGE_TYPE} != binary ]] && use 
test ; then
# Install as orphaned to allow comparison across more versions 
even
# after unmerged. Also useful for historical records and 
tracking
# down regressions a while after they first appeared, but were 
only



[gentoo-commits] repo/gentoo:master commit in: eclass/

2024-09-17 Thread Michał Górny
commit: 2b795499a41a01b1c06190d4f537693c01d43c04
Author: Michał Górny  gentoo  org>
AuthorDate: Tue Sep 17 09:56:36 2024 +
Commit: Michał Górny  gentoo  org>
CommitDate: Tue Sep 17 12:12:46 2024 +
URL:https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=2b795499

llvm.org.eclass: Add 20.0.0_pre20240917 snapshot

Signed-off-by: Michał Górny  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 f8953ec11826..7f7edd6fb652 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
+   20.0.0_pre20240917)
+   
EGIT_COMMIT=41f1b467a29d2ca4e35df37c3aa79a0a8c04bc4f
+   ;;
20.0.0_pre20240910)

EGIT_COMMIT=bece0d7517bd0a036dc8a319514e4a8a5c497dee
;;



[gentoo-commits] repo/gentoo:master commit in: eclass/

2024-09-17 Thread Andrew Ammerlaan
commit: d50ed41dd6702054d5c8fd7ae86722e9c410f84c
Author: Andrew Ammerlaan  gentoo  org>
AuthorDate: Tue Sep 17 10:45:55 2024 +
Commit: Andrew Ammerlaan  gentoo  org>
CommitDate: Tue Sep 17 11:51:22 2024 +
URL:https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=d50ed41d

kernel-install.eclass: fix gentoo-kernel-bin with llvm-objcopy

We ship the kernel in gentoo-kernel-bin in the form of an UKI, using
objcopy we extract from this the kernel image (and if desired the
generic initramfs).

However, llvm-objcopy does not properly handle the -O argument and as a
result the extracted kernel image is of the same file type as the UKI
(i.e. a PE32+ executable) instead of a regular kernel image. This causes
issues in bootloader such as grub which differentiate between loading
a normal kernel image and loading an EFI executable (such as an UKI).
And also causes the signature verification to fail since the kernel
image is bigger then it should be due to the additional headers.

Using the --dump-section argument instead resolves this problem.

See-also: https://github.com/llvm/llvm-project/issues/108946
Signed-off-by: Andrew Ammerlaan  gentoo.org>
Closes: https://github.com/gentoo/gentoo/pull/38643
Signed-off-by: Andrew Ammerlaan  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 930640188c26..dc337c7862fd 100644
--- a/eclass/kernel-install.eclass
+++ b/eclass/kernel-install.eclass
@@ -650,7 +650,7 @@ kernel-install_extract_from_uki() {
local uki=${2}
local out=${3}
 
-   $(tc-getOBJCOPY) -O binary "-j.${extract_type}" "${uki}" "${out}" ||
+   $(tc-getOBJCOPY) "${uki}" --dump-section ".${extract_type}=${out}" ||
die "Failed to extract ${extract_type}"
chmod 644 "${out}" || die
 }



[gentoo-commits] repo/gentoo:master commit in: eclass/

2024-09-12 Thread Sam James
commit: 1aa40c5365c0333421d0187a2d9896e910662159
Author: Sam James  gentoo  org>
AuthorDate: Thu Sep 12 22:05:41 2024 +
Commit: Sam James  gentoo  org>
CommitDate: Thu Sep 12 22:08:10 2024 +
URL:https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=1aa40c53

mozcoreconf-v6.eclass: drop ia64 support

For toolchain eclasses we usually keep generic stuff like this
for e.g. cross but there's no benefit to leaving it in non-toolchain
eclasses like this.

Signed-off-by: Sam James  gentoo.org>

 eclass/mozcoreconf-v6.eclass | 8 ++--
 1 file changed, 2 insertions(+), 6 deletions(-)

diff --git a/eclass/mozcoreconf-v6.eclass b/eclass/mozcoreconf-v6.eclass
index 71dbc6802d71..e7cf85fca24a 100644
--- a/eclass/mozcoreconf-v6.eclass
+++ b/eclass/mozcoreconf-v6.eclass
@@ -1,4 +1,4 @@
-# Copyright 1999-2023 Gentoo Authors
+# Copyright 1999-2024 Gentoo Authors
 # Distributed under the terms of the GNU General Public License v2
 
 # @ECLASS: mozcoreconf-v6.eclass
@@ -157,7 +157,7 @@ mozconfig_init() {
mozconfig_annotate "less than -O2 causes a segfault on x86" 
--enable-optimize=-O2
elif [[ ${ARCH} == arm ]] && [[ $(gcc-major-version) -ge 6 ]]; then
mozconfig_annotate "less than -O2 causes a breakage on arm with 
gcc-6" --enable-optimize=-O2
-   elif use custom-optimization || [[ ${ARCH} =~ (alpha|ia64) ]]; then
+   elif use custom-optimization || [[ ${ARCH} == alpha ]]; then
# Set optimization level based on CFLAGS
if is-flag -O0; then
mozconfig_annotate "from CFLAGS" --enable-optimize=-O0
@@ -204,10 +204,6 @@ mozconfig_init() {
# operation
append-flags -fPIC -mieee
;;
-   ia64)
-   # Historically we have needed to add this manually for 64-bit
-   append-flags -fPIC
-   ;;
esac
 
# We need to append flags for gcc-6 support



[gentoo-commits] repo/gentoo:master commit in: eclass/

2024-09-11 Thread Sam James
commit: d99053c9327d72eb0e13de964b0b79355caebc5b
Author: Sam James  gentoo  org>
AuthorDate: Wed Sep 11 22:17:22 2024 +
Commit: Sam James  gentoo  org>
CommitDate: Wed Sep 11 22:20:19 2024 +
URL:https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=d99053c9

toolchain.eclass: depend on sys-devel/binutils:*

GCC doesn't build in Gentoo at least without GNU Binutils. It is possible
but it requires some work. It's not clear to me if some of that work
needs to happen in LLVM upstream too (see below).

In commits 7011340a0f13dcada6f3be48054957035bc6e01a and
a7c27596827072f586dc07e6d53531ecb2c7cd6e, I tried to get things building
with Clang's assembler but didn't get it over the line. I think I remember
Arfrever and I coming up with a few later drafts (?) on IRC in #gentoo-hardened
but I didn't commit any of it as it didn't work in the end anyway.

But see https://briancallahan.net/blog/20240122.html which tackles at least
one of the issues I ended up hitting before.

In any case, add the dependency for now to keep things working.

Closes: https://bugs.gentoo.org/936271
Signed-off-by: Sam James  gentoo.org>

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

diff --git a/eclass/toolchain.eclass b/eclass/toolchain.eclass
index ac236f3127f9..c03312be43ad 100644
--- a/eclass/toolchain.eclass
+++ b/eclass/toolchain.eclass
@@ -353,6 +353,7 @@ fi
 
 BDEPEND="
app-alternatives/yacc
+   sys-devel/binutils:*
>=sys-devel/flex-2.5.4
nls? ( sys-devel/gettext )
test? (



[gentoo-commits] repo/gentoo:master commit in: eclass/

2024-09-10 Thread Miroslav Šulc
commit: b4de2efc298df6cee8c443bb5a1b6ae999a19592
Author: Volkmar W. Pogatzki  pogatzki  net>
AuthorDate: Tue Sep 10 07:59:21 2024 +
Commit: Miroslav Šulc  gentoo  org>
CommitDate: Tue Sep 10 19:11:19 2024 +
URL:https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=b4de2efc

java-utils-2.eclass: remove unused eclass fuction use_doc

Signed-off-by: Volkmar W. Pogatzki  pogatzki.net>
Closes: https://github.com/gentoo/gentoo/pull/38544
Signed-off-by: Miroslav Šulc  gentoo.org>

 eclass/java-utils-2.eclass | 24 
 1 file changed, 24 deletions(-)

diff --git a/eclass/java-utils-2.eclass b/eclass/java-utils-2.eclass
index 481c9b7df081..43d9b749ba3d 100644
--- a/eclass/java-utils-2.eclass
+++ b/eclass/java-utils-2.eclass
@@ -2254,30 +2254,6 @@ java-pkg_force-compiler() {
JAVA_PKG_FORCE_COMPILER="$@"
 }
 
-# @FUNCTION: use_doc
-# @DEPRECATED: none
-# @DESCRIPTION:
-#
-# Helper function for getting ant to build javadocs. If the user has USE=doc,
-# then 'javadoc' or the argument are returned. Otherwise, there is no return.
-#
-# The output of this should be passed to ant.
-# @CODE
-# Parameters:
-# $@ - Option value to return. Defaults to 'javadoc'
-#
-# Examples:
-# build javadocs by calling 'javadoc' target
-#  eant $(use_doc)
-#
-# build javadocs by calling 'apidoc' target
-#  eant $(use_doc apidoc)
-# @CODE
-# @RETURN string - Name of the target to create javadocs
-use_doc() {
-   use doc && echo ${@:-javadoc}
-}
-
 
 # @FUNCTION: java-pkg_init
 # @INTERNAL



[gentoo-commits] repo/gentoo:master commit in: eclass/

2024-09-10 Thread Michał Górny
commit: 76e7b39353e5e726f4ecebf2e723f4dc071b94e9
Author: Michał Górny  gentoo  org>
AuthorDate: Tue Sep 10 11:45:08 2024 +
Commit: Michał Górny  gentoo  org>
CommitDate: Tue Sep 10 12:58:41 2024 +
URL:https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=76e7b393

llvm.org.eclass: Add 20.0.0_pre20240910 snapshot

Signed-off-by: Michał Górny  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 fe805382115b..f8953ec11826 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
+   20.0.0_pre20240910)
+   
EGIT_COMMIT=bece0d7517bd0a036dc8a319514e4a8a5c497dee
+   ;;
20.0.0_pre20240830)

EGIT_COMMIT=5500e21942f7047344b6fee62d3e08c0ba2f9182
;;



[gentoo-commits] repo/gentoo:master commit in: eclass/

2024-09-10 Thread Michał Górny
commit: f362cfe39056fe0277b71b045d0a753fdaad82b7
Author: Michał Górny  gentoo  org>
AuthorDate: Tue Sep 10 07:12:27 2024 +
Commit: Michał Górny  gentoo  org>
CommitDate: Tue Sep 10 08:54:21 2024 +
URL:https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=f362cfe3

llvm.org.eclass: Remove old snapshot list

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

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

diff --git a/eclass/llvm.org.eclass b/eclass/llvm.org.eclass
index da943081b9bf..fe805382115b 100644
--- a/eclass/llvm.org.eclass
+++ b/eclass/llvm.org.eclass
@@ -75,18 +75,6 @@ if [[ -z ${_LLVM_SOURCE_TYPE+1} ]]; then
20.0.0_pre20240830)

EGIT_COMMIT=5500e21942f7047344b6fee62d3e08c0ba2f9182
;;
-   20.0.0_pre20240822)
-   
EGIT_COMMIT=503907dc505db1e439e7061113bf84dd105f2e35
-   ;;
-   20.0.0_pre20240815)
-   
EGIT_COMMIT=db8ef6188cbbe2125e6d60bdef77a535105772df
-   ;;
-   20.0.0_pre20240808)
-   
EGIT_COMMIT=fd7d7882e7fa5a38d4bfde426120d4663718beb4
-   ;;
-   20.0.0_pre20240801)
-   
EGIT_COMMIT=130c135689ec12ab78c53645808524a8d28f7cae
-   ;;
*)
die "Unknown snapshot: ${PV}"
;;



[gentoo-commits] repo/gentoo:master commit in: eclass/

2024-09-09 Thread Miroslav Šulc
commit: d9c0273228e50613d354bdf6bf5a91caa8eb919f
Author: Volkmar W. Pogatzki  pogatzki  net>
AuthorDate: Mon Sep  9 08:21:19 2024 +
Commit: Miroslav Šulc  gentoo  org>
CommitDate: Tue Sep 10 06:40:42 2024 +
URL:https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=d9c02732

java-utils-2.eclass: mark function use_doc as deprecated

Signed-off-by: Volkmar W. Pogatzki  pogatzki.net>
Closes: https://github.com/gentoo/gentoo/pull/37338
Signed-off-by: Miroslav Šulc  gentoo.org>

 eclass/java-utils-2.eclass | 1 +
 1 file changed, 1 insertion(+)

diff --git a/eclass/java-utils-2.eclass b/eclass/java-utils-2.eclass
index 6bf6b7788aa5..481c9b7df081 100644
--- a/eclass/java-utils-2.eclass
+++ b/eclass/java-utils-2.eclass
@@ -2255,6 +2255,7 @@ java-pkg_force-compiler() {
 }
 
 # @FUNCTION: use_doc
+# @DEPRECATED: none
 # @DESCRIPTION:
 #
 # Helper function for getting ant to build javadocs. If the user has USE=doc,



[gentoo-commits] repo/gentoo:master commit in: eclass/

2024-09-09 Thread Sam James
commit: e2c865d8b5507755d6ad9c63e3b4b8ccbb5d6cd7
Author: Sv. Lockal  gmail  com>
AuthorDate: Tue Jul 30 23:14:55 2024 +
Commit: Sam James  gentoo  org>
CommitDate: Mon Sep  9 18:15:10 2024 +
URL:https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=e2c865d8

rocm.eclass: add rocm_use_hipcc function and update example accordingly

Bug: https://bugs.gentoo.org/936099
Signed-off-by: Sv. Lockal  gmail.com>
Signed-off-by: Sam James  gentoo.org>

 eclass/rocm.eclass | 40 ++--
 1 file changed, 34 insertions(+), 6 deletions(-)

diff --git a/eclass/rocm.eclass b/eclass/rocm.eclass
index 7039455dec6b..cf501d5a8861 100644
--- a/eclass/rocm.eclass
+++ b/eclass/rocm.eclass
@@ -15,9 +15,13 @@
 # edit USE flag to control which GPU architecture to compile. Using
 # ${ROCM_USEDEP} can ensure coherence among dependencies. Ebuilds can call the
 # function get_amdgpu_flag to translate activated target to GPU compile flags,
-# passing it to configuration. Function check_amdgpu can help ebuild ensure
+# passing it to configuration. Function rocm_use_hipcc switches active compiler
+# to hipcc and cleans incompatible flags (useful for users with gcc-only flags
+# in /etc/portage/make.conf). Function check_amdgpu can help ebuild ensure
 # read and write permissions to GPU device in src_test phase, throwing friendly
-# error message if unavailable.
+# error message if unavailable. However src_configure in general should not
+# access any AMDGPU devices. If it does, it usually means that CMakeLists.txt
+# ignores AMDGPU_TARGETS in favor of autodetected GPU, which is not desired.
 #
 # @EXAMPLE:
 # Example ebuild for ROCm library in https://github.com/ROCmSoftwarePlatform
@@ -39,14 +43,12 @@
 # "
 #
 # src_configure() {
-# # avoid sandbox violation
-# addpredict /dev/kfd
-# addpredict /dev/dri/
+# rocm_use_hipcc
 # local mycmakeargs=(
 # -DAMDGPU_TARGETS="$(get_amdgpu_flags)"
 # -DBUILD_CLIENTS_TESTS=$(usex test ON OFF)
 # )
-# CXX=hipcc cmake_src_configure
+# cmake_src_configure
 # }
 #
 # src_test() {
@@ -90,6 +92,8 @@ esac
 if [[ ! ${_ROCM_ECLASS} ]]; then
 _ROCM_ECLASS=1
 
+inherit flag-o-matic
+
 # @ECLASS_VARIABLE: ROCM_VERSION
 # @REQUIRED
 # @PRE_INHERIT
@@ -231,3 +235,27 @@ check_amdgpu() {
 }
 
 fi
+
+# @FUNCTION: rocm_use_hipcc
+# @USAGE: rocm_use_hipcc
+# @DESCRIPTION:
+# switch active C and C++ compilers to hipcc, clean unsupported flags and 
setup ROCM_TARGET_LST file.
+rocm_use_hipcc() {
+   # During the configuration stage, CMake tests whether the compiler is 
able to compile a simple program.
+   # Since CMake checker does not specify --offload-arch=, hipcc 
enumerates devices using four methods
+   # until it finds at least one device. Last way is by accessing them 
(via rocminfo).
+   # To prevent potential sandbox violations, we set the ROCM_TARGET_LST 
variable (which is checked first).
+   local target_lst="${T}"/gentoo_rocm_target.lst
+   if [[ "${AMDGPU_TARGETS[@]}" = "" ]]; then
+   # Expected no GPU code; still need to calm down sandbox
+   echo "gfx000" > "${target_lst}" || die
+   else
+   printf "%s\n" ${AMDGPU_TARGETS[@]} > "${target_lst}" || die
+   fi
+   export ROCM_TARGET_LST="${target_lst}"
+
+   # Export updated CC and CXX. Note that CC is needed even if no C code 
used,
+   # as CMake checks that C compiler can compile a simple test program.
+   export CC=hipcc CXX=hipcc
+   strip-unsupported-flags
+}



[gentoo-commits] repo/gentoo:master commit in: eclass/

2024-09-08 Thread Sam James
commit: 47d7fb1a65af001085f973704dfeed320111ab6b
Author: Sam James  gentoo  org>
AuthorDate: Sat Sep  7 21:39:15 2024 +
Commit: Sam James  gentoo  org>
CommitDate: Sun Sep  8 18:21:28 2024 +
URL:https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=47d7fb1a

xdg-utils.eclass: add global-scope ewarn for deprecated < EAPI 7

Signed-off-by: Sam James  gentoo.org>

 eclass/xdg-utils.eclass | 8 ++--
 1 file changed, 6 insertions(+), 2 deletions(-)

diff --git a/eclass/xdg-utils.eclass b/eclass/xdg-utils.eclass
index 34535a129e33..84f88eee18fc 100644
--- a/eclass/xdg-utils.eclass
+++ b/eclass/xdg-utils.eclass
@@ -1,4 +1,4 @@
-# Copyright 2004-2023 Gentoo Authors
+# Copyright 2004-2024 Gentoo Authors
 # Distributed under the terms of the GNU General Public License v2
 
 # @ECLASS: xdg-utils.eclass
@@ -18,7 +18,11 @@
 #  * XDG mime information database management
 
 case ${EAPI} in
-   5|6|7|8) ;;
+   5|6)
+   ewarn "${CATEGORY}/${PF}: ebuild uses ${ECLASS} with deprecated 
EAPI ${EAPI}!"
+   ewarn "${CATEGORY}/${PF}: Support will be removed on 
2024-10-08. Please port to newer EAPI."
+   ;;
+   7|8) ;;
*) die "${ECLASS}: EAPI ${EAPI:-0} not supported" ;;
 esac
 



[gentoo-commits] repo/gentoo:master commit in: eclass/

2024-09-08 Thread Sam James
commit: 001d4ff8cf4b01897276841e706a78eeb119a4c5
Author: Sam James  gentoo  org>
AuthorDate: Sat Sep  7 21:38:46 2024 +
Commit: Sam James  gentoo  org>
CommitDate: Sun Sep  8 18:21:23 2024 +
URL:https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=001d4ff8

udev.eclass: add global-scope ewarn for deprecated < EAPI 7

Signed-off-by: Sam James  gentoo.org>

 eclass/udev.eclass | 14 +-
 1 file changed, 9 insertions(+), 5 deletions(-)

diff --git a/eclass/udev.eclass b/eclass/udev.eclass
index ac94f98221aa..7fd99cbba8b0 100644
--- a/eclass/udev.eclass
+++ b/eclass/udev.eclass
@@ -1,4 +1,4 @@
-# Copyright 1999-2022 Gentoo Authors
+# Copyright 1999-2024 Gentoo Authors
 # Distributed under the terms of the GNU General Public License v2
 
 # @ECLASS: udev.eclass
@@ -36,14 +36,18 @@
 # }
 # @CODE
 
+if [[ -z ${_UDEV_ECLASS} ]]; then
+_UDEV_ECLASS=1
+
 case ${EAPI} in
-   5|6|7|8) ;;
+   6)
+   ewarn "${CATEGORY}/${PF}: ebuild uses ${ECLASS} with deprecated 
EAPI ${EAPI}!"
+   ewarn "${CATEGORY}/${PF}: Support will be removed on 
2024-10-08. Please port to newer EAPI."
+   ;;
+   7|8) ;;
*) die "${ECLASS}: EAPI ${EAPI:-0} not supported" ;;
 esac
 
-if [[ -z ${_UDEV_ECLASS} ]]; then
-_UDEV_ECLASS=1
-
 inherit toolchain-funcs
 
 if [[ ${EAPI} == [56] ]]; then



[gentoo-commits] repo/gentoo:master commit in: eclass/

2024-09-08 Thread Sam James
commit: 1177526dad936922685cd77c0bd05474a8407462
Author: Sam James  gentoo  org>
AuthorDate: Sat Sep  7 21:39:01 2024 +
Commit: Sam James  gentoo  org>
CommitDate: Sun Sep  8 18:21:25 2024 +
URL:https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=1177526d

vim-spell.eclass: add global-scope ewarn for deprecated < EAPI 7

Signed-off-by: Sam James  gentoo.org>

 eclass/vim-spell.eclass | 12 
 1 file changed, 8 insertions(+), 4 deletions(-)

diff --git a/eclass/vim-spell.eclass b/eclass/vim-spell.eclass
index 607771ae8035..57bcb0dc8021 100644
--- a/eclass/vim-spell.eclass
+++ b/eclass/vim-spell.eclass
@@ -62,14 +62,18 @@
 # spell files. It's best to let upstream know if you've generated spell files
 # for another language rather than keeping them Gentoo-specific.
 
+if [[ -z ${_VIM_SPELL_ECLASS} ]] ; then
+_VIM_SPELL_ECLASS=1
+
 case ${EAPI} in
-   6|7|8) ;;
+   6)
+   ewarn "${CATEGORY}/${PF}: ebuild uses ${ECLASS} with deprecated 
EAPI ${EAPI}!"
+   ewarn "${CATEGORY}/${PF}: Support will be removed on 
2024-10-08. Please port to newer EAPI."
+   ;;
+   7|8) ;;
*) die "${ECLASS}: EAPI ${EAPI:-0} not supported" ;;
 esac
 
-if [[ -z ${_VIM_SPELL_ECLASS} ]] ; then
-_VIM_SPELL_ECLASS=1
-
 SRC_URI="mirror://gentoo/${P}.tar.bz2"
 SLOT="0"
 



[gentoo-commits] repo/gentoo:master commit in: eclass/

2024-09-08 Thread Sam James
commit: 93c765a9b349be736f86cb6ca823d8cf6220a335
Author: Sam James  gentoo  org>
AuthorDate: Sat Sep  7 21:39:09 2024 +
Commit: Sam James  gentoo  org>
CommitDate: Sun Sep  8 18:21:27 2024 +
URL:https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=93c765a9

wrapper.eclass: add global-scope ewarn for deprecated < EAPI 7

Signed-off-by: Sam James  gentoo.org>

 eclass/wrapper.eclass | 16 ++--
 1 file changed, 10 insertions(+), 6 deletions(-)

diff --git a/eclass/wrapper.eclass b/eclass/wrapper.eclass
index 8d3d273d81c6..a62bb51d0fe7 100644
--- a/eclass/wrapper.eclass
+++ b/eclass/wrapper.eclass
@@ -1,4 +1,4 @@
-# Copyright 1999-2022 Gentoo Authors
+# Copyright 1999-2024 Gentoo Authors
 # Distributed under the terms of the GNU General Public License v2
 
 # @ECLASS: wrapper.eclass
@@ -7,15 +7,19 @@
 # @SUPPORTED_EAPIS: 5 6 7 8
 # @BLURB: create a shell wrapper script
 
+if [[ -z ${_WRAPPER_ECLASS} ]]; then
+_WRAPPER_ECLASS=1
+
 case ${EAPI} in
-   5|6|7|8) ;;
+   5|6)
+   ewarn "${CATEGORY}/${PF}: ebuild uses ${ECLASS} with deprecated 
EAPI ${EAPI}!"
+   ewarn "${CATEGORY}/${PF}: Support will be removed on 
2024-10-08. Please port to newer EAPI."
+   ;;
+   7|8) ;;
*) die "${ECLASS}: EAPI ${EAPI:-0} not supported" ;;
 esac
 
-if [[ -z ${_WRAPPER_ECLASS} ]]; then
-_WRAPPER_ECLASS=1
-
-# @FUNCTION: make_wrapper
+# FUNCTION: make_wrapper
 # @USAGE:   [chdir] [libpaths] [installpath]
 # @DESCRIPTION:
 # Create a shell wrapper script named wrapper in installpath



[gentoo-commits] repo/gentoo:master commit in: eclass/

2024-09-08 Thread Sam James
commit: 08cb1492fe62e8f15aa0d546db59ba27ec7a5ab3
Author: James Le Cuirot  gentoo  org>
AuthorDate: Sat Aug 31 13:18:39 2024 +
Commit: Sam James  gentoo  org>
CommitDate: Sun Sep  8 18:21:29 2024 +
URL:https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=08cb1492

distutils-r1.eclass: Don't run cargo_env unless cargo_gen_config has run

Normally, failing to run cargo_gen_config results in an error, but that
is unhelpful for ebuilds with optional Cargo support.

Closes: https://bugs.gentoo.org/938764
Signed-off-by: James Le Cuirot  gentoo.org>
Signed-off-by: Michał Górny  gentoo.org>
Closes: https://github.com/gentoo/gentoo/pull/38041
Signed-off-by: Sam James  gentoo.org>

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

diff --git a/eclass/distutils-r1.eclass b/eclass/distutils-r1.eclass
index 39705c5c3c84..5a6ebdcede8a 100644
--- a/eclass/distutils-r1.eclass
+++ b/eclass/distutils-r1.eclass
@@ -1253,7 +1253,9 @@ distutils_pep517_install() {
fi
 
local cmd=() config_settings=
-   has cargo ${INHERITED} && cmd+=( cargo_env )
+   if has cargo ${INHERITED} && [[ ${_CARGO_GEN_CONFIG_HAS_RUN} ]]; then
+   cmd+=( cargo_env )
+   fi
 
case ${DISTUTILS_USE_PEP517} in
maturin)



[gentoo-commits] repo/gentoo:master commit in: eclass/

2024-09-08 Thread Sam James
commit: 0641762abe1deeec8ff4802ac726a1ce63d786aa
Author: Sam James  gentoo  org>
AuthorDate: Sat Sep  7 21:38:56 2024 +
Commit: Sam James  gentoo  org>
CommitDate: Sun Sep  8 18:21:24 2024 +
URL:https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=0641762a

vim-doc.eclass: add global-scope ewarn for deprecated < EAPI 7

Signed-off-by: Sam James  gentoo.org>

 eclass/vim-doc.eclass | 12 
 1 file changed, 8 insertions(+), 4 deletions(-)

diff --git a/eclass/vim-doc.eclass b/eclass/vim-doc.eclass
index 119ce793071d..f20f7397cf65 100644
--- a/eclass/vim-doc.eclass
+++ b/eclass/vim-doc.eclass
@@ -1,4 +1,4 @@
-# Copyright 1999-2022 Gentoo Authors
+# Copyright 1999-2024 Gentoo Authors
 # Distributed under the terms of the GNU General Public License v2
 
 # @ECLASS: vim-doc.eclass
@@ -16,13 +16,17 @@
 # DEPEND in vim-plugin or by whatever version of vim is being
 # installed by the eclass.
 
+if [[ ! ${_VIM_DOC_ECLASS} ]] ; then
+
 case ${EAPI} in
-   6|7|8) ;;
+   6)
+   ewarn "${CATEGORY}/${PF}: ebuild uses ${ECLASS} with deprecated 
EAPI ${EAPI}!"
+   ewarn "${CATEGORY}/${PF}: Support will be removed on 
2024-10-08. Please port to newer EAPI."
+   ;;
+   7|8) ;;
*) die "${ECLASS}: EAPI ${EAPI:-0} not supported" ;;
 esac
 
-if [[ ! ${_VIM_DOC_ECLASS} ]] ; then
-
 # @FUNCTION: update_vim_helptags
 # @USAGE:
 # @DESCRIPTION:



[gentoo-commits] repo/gentoo:master commit in: eclass/

2024-09-08 Thread Sam James
commit: fda83fc093d3e82a6357e55a62de07b43635
Author: Sam James  gentoo  org>
AuthorDate: Sat Sep  7 21:39:13 2024 +
Commit: Sam James  gentoo  org>
CommitDate: Sun Sep  8 18:21:27 2024 +
URL:https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=fda83fc0

xdg.eclass: add global-scope ewarn for deprecated < EAPI 7

Signed-off-by: Sam James  gentoo.org>

 eclass/xdg.eclass | 14 +-
 1 file changed, 9 insertions(+), 5 deletions(-)

diff --git a/eclass/xdg.eclass b/eclass/xdg.eclass
index 14c56047af45..6af4b91875fc 100644
--- a/eclass/xdg.eclass
+++ b/eclass/xdg.eclass
@@ -1,4 +1,4 @@
-# Copyright 1999-2023 Gentoo Authors
+# Copyright 1999-2024 Gentoo Authors
 # Distributed under the terms of the GNU General Public License v2
 
 # @ECLASS: xdg.eclass
@@ -13,14 +13,18 @@
 # Utility eclass to update the desktop, icon and shared mime info as laid
 # out in the freedesktop specs & implementations
 
+if [[ -z ${_XDG_ECLASS} ]]; then
+_XDG_ECLASS=1
+
 case ${EAPI} in
-   6|7|8) ;;
+   6)
+   ewarn "${CATEGORY}/${PF}: ebuild uses ${ECLASS} with deprecated 
EAPI ${EAPI}!"
+   ewarn "${CATEGORY}/${PF}: Support will be removed on 
2024-10-08. Please port to newer EAPI."
+   ;;
+   7|8) ;;
*) die "${ECLASS}: EAPI ${EAPI:-0} not supported" ;;
 esac
 
-if [[ -z ${_XDG_ECLASS} ]]; then
-_XDG_ECLASS=1
-
 inherit xdg-utils
 
 # Avoid dependency loop as both depend on glib-2



[gentoo-commits] repo/gentoo:master commit in: eclass/

2024-09-08 Thread Sam James
commit: 2ba4a06b94b1b3c679c964eb4fc8ee5cdd47adaf
Author: Sam James  gentoo  org>
AuthorDate: Sat Sep  7 21:38:59 2024 +
Commit: Sam James  gentoo  org>
CommitDate: Sun Sep  8 18:21:24 2024 +
URL:https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=2ba4a06b

vim-plugin.eclass: add global-scope ewarn for deprecated < EAPI 7

Signed-off-by: Sam James  gentoo.org>

 eclass/vim-plugin.eclass | 14 +-
 1 file changed, 9 insertions(+), 5 deletions(-)

diff --git a/eclass/vim-plugin.eclass b/eclass/vim-plugin.eclass
index ee4f1b6e0f81..b2ae0cb9e4c3 100644
--- a/eclass/vim-plugin.eclass
+++ b/eclass/vim-plugin.eclass
@@ -1,4 +1,4 @@
-# Copyright 1999-2023 Gentoo Authors
+# Copyright 1999-2024 Gentoo Authors
 # Distributed under the terms of the GNU General Public License v2
 
 # @ECLASS: vim-plugin.eclass
@@ -12,14 +12,18 @@
 # which is read automatically by vim.  The only exception is
 # documentation, for which we make a special case via vim-doc.eclass.
 
+if [[ -z ${_VIM_PLUGIN_ECLASS} ]]; then
+_VIM_PLUGIN_ECLASS=1
+
 case ${EAPI} in
-   6|7|8) ;;
+   6)
+   ewarn "${CATEGORY}/${PF}: ebuild uses ${ECLASS} with deprecated 
EAPI ${EAPI}!"
+   ewarn "${CATEGORY}/${PF}: Support will be removed on 
2024-10-08. Please port to newer EAPI."
+   ;;
+   7|8) ;;
*) die "${ECLASS}: EAPI ${EAPI:-0} not supported" ;;
 esac
 
-if [[ -z ${_VIM_PLUGIN_ECLASS} ]]; then
-_VIM_PLUGIN_ECLASS=1
-
 inherit vim-doc
 
 [[ ${EAPI} != [67] ]] && _DEFINE_VIM_PLUGIN_SRC_PREPARE=true



[gentoo-commits] repo/gentoo:master commit in: eclass/

2024-09-08 Thread Sam James
commit: 9b9de22b1f07676b7501e320563841207a69db32
Author: Sam James  gentoo  org>
AuthorDate: Sat Sep  7 21:39:04 2024 +
Commit: Sam James  gentoo  org>
CommitDate: Sun Sep  8 18:21:26 2024 +
URL:https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=9b9de22b

virtualx.eclass: add global-scope ewarn for deprecated < EAPI 7

Signed-off-by: Sam James  gentoo.org>

 eclass/virtualx.eclass | 14 +-
 1 file changed, 9 insertions(+), 5 deletions(-)

diff --git a/eclass/virtualx.eclass b/eclass/virtualx.eclass
index f7318eafc59e..07d303899582 100644
--- a/eclass/virtualx.eclass
+++ b/eclass/virtualx.eclass
@@ -1,4 +1,4 @@
-# Copyright 1999-2023 Gentoo Authors
+# Copyright 1999-2024 Gentoo Authors
 # Distributed under the terms of the GNU General Public License v2
 
 # @ECLASS: virtualx.eclass
@@ -9,14 +9,18 @@
 # @SUPPORTED_EAPIS: 6 7 8
 # @BLURB: This eclass can be used for packages that need a working X 
environment to build.
 
+if [[ -z ${_VIRTUALX_ECLASS} ]]; then
+_VIRTUALX_ECLASS=1
+
 case ${EAPI} in
-   6|7|8) ;;
+   6)
+   ewarn "${CATEGORY}/${PF}: ebuild uses ${ECLASS} with deprecated 
EAPI ${EAPI}!"
+   ewarn "${CATEGORY}/${PF}: Support will be removed on 
2024-10-08. Please port to newer EAPI."
+   ;;
+   7|8) ;;
*) die "${ECLASS}: EAPI ${EAPI:-0} not supported" ;;
 esac
 
-if [[ -z ${_VIRTUALX_ECLASS} ]]; then
-_VIRTUALX_ECLASS=1
-
 # @ECLASS_VARIABLE: VIRTUALX_REQUIRED
 # @PRE_INHERIT
 # @DESCRIPTION:



[gentoo-commits] repo/gentoo:master commit in: eclass/

2024-09-08 Thread Sam James
commit: 31705da10b8165380b2eb7b21da4cffd7d3a1621
Author: Michał Górny  gentoo  org>
AuthorDate: Sat Aug 10 05:33:33 2024 +
Commit: Sam James  gentoo  org>
CommitDate: Sun Sep  8 18:21:29 2024 +
URL:https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=31705da1

distutils-r1.eclass: Allow .jar files in sitedir

Closes: https://bugs.gentoo.org/937642
Signed-off-by: Michał Górny  gentoo.org>
Signed-off-by: Sam James  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 0f9dc8d14d5e..39705c5c3c84 100644
--- a/eclass/distutils-r1.eclass
+++ b/eclass/distutils-r1.eclass
@@ -2109,8 +2109,10 @@ _distutils-r1_post_python_install() {
local strays=()
local p
mapfile -d $'\0' -t strays < <(
+   # jar for jpype, https://bugs.gentoo.org/937642
find "${sitedir}" -maxdepth 1 -type f '!' '(' \
-name '*.egg-info' -o \
+   -name '*.jar' -o \
-name '*.pth' -o \
-name '*.py' -o \
-name '*.pyi' -o \



[gentoo-commits] repo/gentoo:master commit in: eclass/

2024-09-08 Thread Sam James
commit: 9624aabd7852cde30d5c4392c5b05d51921f1a7a
Author: Sam James  gentoo  org>
AuthorDate: Sat Sep  7 21:38:39 2024 +
Commit: Sam James  gentoo  org>
CommitDate: Sun Sep  8 18:21:21 2024 +
URL:https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=9624aabd

tmpfiles.eclass: add global-scope ewarn for deprecated < EAPI 7

Signed-off-by: Sam James  gentoo.org>

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

diff --git a/eclass/tmpfiles.eclass b/eclass/tmpfiles.eclass
index 39650401a6a0..63889a275fef 100644
--- a/eclass/tmpfiles.eclass
+++ b/eclass/tmpfiles.eclass
@@ -1,4 +1,4 @@
-# Copyright 2016-2022 Gentoo Authors
+# Copyright 2016-2024 Gentoo Authors
 # Distributed under the terms of the GNU General Public License v2
 
 # @ECLASS: tmpfiles.eclass
@@ -55,9 +55,13 @@
 if [[ -z ${_TMPFILES_ECLASS} ]]; then
 _TMPFILES_ECLASS=1
 
-case "${EAPI}" in
-5|6|7|8) ;;
-*) die "API is undefined for EAPI ${EAPI}" ;;
+case ${EAPI} in
+   5|6)
+   ewarn "${CATEGORY}/${PF}: ebuild uses ${ECLASS} with deprecated 
EAPI ${EAPI}!"
+   ewarn "${CATEGORY}/${PF}: Support will be removed on 
2024-10-08. Please port to newer EAPI."
+   ;;
+   7|8) ;;
+   *) die "${ECLASS}: EAPI ${EAPI:-0} not supported" ;;
 esac
 
 # @ECLASS_VARIABLE: TMPFILES_OPTIONAL



[gentoo-commits] repo/gentoo:master commit in: eclass/

2024-09-08 Thread Sam James
commit: 8e4a8408904a21168ed94c8ca7b7320c265e66ee
Author: Sam James  gentoo  org>
AuthorDate: Sat Sep  7 21:38:14 2024 +
Commit: Sam James  gentoo  org>
CommitDate: Sun Sep  8 18:21:19 2024 +
URL:https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=8e4a8408

ruby-fakegem.eclass: add global-scope ewarn for deprecated < EAPI 7

Signed-off-by: Sam James  gentoo.org>

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

diff --git a/eclass/ruby-fakegem.eclass b/eclass/ruby-fakegem.eclass
index 40ff76ce900e..04099a82ef4f 100644
--- a/eclass/ruby-fakegem.eclass
+++ b/eclass/ruby-fakegem.eclass
@@ -1,4 +1,4 @@
-# Copyright 1999-2023 Gentoo Authors
+# Copyright 1999-2024 Gentoo Authors
 # Distributed under the terms of the GNU General Public License v2
 
 # @ECLASS: ruby-fakegem.eclass
@@ -139,7 +139,11 @@ RUBY_FAKEGEM_BINDIR="${RUBY_FAKEGEM_BINDIR-bin}"
 RUBY_FAKEGEM_EXTENSION_LIBDIR="${RUBY_FAKEGEM_EXTENSION_LIBDIR-lib}"
 
 case ${EAPI} in
-   5|6|7|8) ;;
+   6)
+   ewarn "${CATEGORY}/${PF}: ebuild uses ${ECLASS} with deprecated 
EAPI ${EAPI}!"
+   ewarn "${CATEGORY}/${PF}: Support will be removed on 
2024-10-08. Please port to newer EAPI."
+   ;;
+   7|8) ;;
*) die "${ECLASS}: EAPI ${EAPI:-0} not supported" ;;
 esac
 



[gentoo-commits] repo/gentoo:master commit in: eclass/

2024-09-08 Thread Sam James
commit: f5ef210074c1b8c5ea29c8b4cb64ccab6f48628b
Author: Sam James  gentoo  org>
AuthorDate: Sat Sep  7 21:38:32 2024 +
Commit: Sam James  gentoo  org>
CommitDate: Sun Sep  8 18:21:20 2024 +
URL:https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=f5ef2100

strip-linguas.eclass: add global-scope ewarn for deprecated < EAPI 7

Signed-off-by: Sam James  gentoo.org>

 eclass/strip-linguas.eclass | 16 ++--
 1 file changed, 10 insertions(+), 6 deletions(-)

diff --git a/eclass/strip-linguas.eclass b/eclass/strip-linguas.eclass
index 718341b4a626..b31f414c87c3 100644
--- a/eclass/strip-linguas.eclass
+++ b/eclass/strip-linguas.eclass
@@ -1,4 +1,4 @@
-# Copyright 2004-2021 Gentoo Authors
+# Copyright 2004-2024 Gentoo Authors
 # Distributed under the terms of the GNU General Public License v2
 
 # @ECLASS: strip-linguas.eclass
@@ -9,15 +9,19 @@
 # @SUPPORTED_EAPIS: 5 6 7 8
 # @BLURB: convenience function for LINGUAS support
 
+if [[ -z ${_STRIP_LINGUAS_ECLASS} ]]; then
+_STRIP_LINGUAS_ECLASS=1
+
 case ${EAPI} in
-   5|6|7|8) ;;
+   5|6)
+   ewarn "${CATEGORY}/${PF}: ebuild uses ${ECLASS} with deprecated 
EAPI ${EAPI}!"
+   ewarn "${CATEGORY}/${PF}: Support will be removed on 
2024-10-08. Please port to newer EAPI."
+   ;;
+   7|8) ;;
*) die "${ECLASS}: EAPI ${EAPI:-0} not supported" ;;
 esac
 
-if [[ -z ${_STRIP_LINGUAS_ECLASS} ]]; then
-_STRIP_LINGUAS_ECLASS=1
-
-# @FUNCTION: strip-linguas
+# FUNCTION: strip-linguas
 # @USAGE: [|<-i|-u> ]
 # @DESCRIPTION:
 # Make sure that LINGUAS only contains languages that a package can



[gentoo-commits] repo/gentoo:master commit in: eclass/

2024-09-08 Thread Sam James
commit: 2adde4478398749f442fd67d72fd631b8138ea1a
Author: Sam James  gentoo  org>
AuthorDate: Sat Sep  7 21:38:35 2024 +
Commit: Sam James  gentoo  org>
CommitDate: Sun Sep  8 18:21:21 2024 +
URL:https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=2adde447

systemd.eclass: add global-scope ewarn for deprecated < EAPI 7

Signed-off-by: Sam James  gentoo.org>

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

diff --git a/eclass/systemd.eclass b/eclass/systemd.eclass
index 03d6a82fd310..a5f0decde1e3 100644
--- a/eclass/systemd.eclass
+++ b/eclass/systemd.eclass
@@ -1,4 +1,4 @@
-# Copyright 2011-2023 Gentoo Authors
+# Copyright 2011-2024 Gentoo Authors
 # Distributed under the terms of the GNU General Public License v2
 
 # @ECLASS: systemd.eclass
@@ -25,7 +25,11 @@
 # @CODE
 
 case ${EAPI} in
-   5|6|7|8) ;;
+   6)
+   ewarn "${CATEGORY}/${PF}: ebuild uses ${ECLASS} with deprecated 
EAPI ${EAPI}!"
+   ewarn "${CATEGORY}/${PF}: Support will be removed on 
2024-10-08. Please port to newer EAPI."
+   ;;
+   7|8) ;;
*) die "${ECLASS}: EAPI ${EAPI:-0} not supported" ;;
 esac
 



[gentoo-commits] repo/gentoo:master commit in: eclass/

2024-09-08 Thread Sam James
commit: 3a9d3b4238e7706d8f2f3d5d652faae69091a9ad
Author: Sam James  gentoo  org>
AuthorDate: Sat Sep  7 21:38:42 2024 +
Commit: Sam James  gentoo  org>
CommitDate: Sun Sep  8 18:21:22 2024 +
URL:https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=3a9d3b42

toolchain-funcs.eclass: add global-scope ewarn for deprecated < EAPI 7

Signed-off-by: Sam James  gentoo.org>

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

diff --git a/eclass/toolchain-funcs.eclass b/eclass/toolchain-funcs.eclass
index 5e36fa275dcd..66819996ea33 100644
--- a/eclass/toolchain-funcs.eclass
+++ b/eclass/toolchain-funcs.eclass
@@ -13,14 +13,18 @@
 # in such a way that you can rely on the function always returning
 # something sane.
 
+if [[ -z ${_TOOLCHAIN_FUNCS_ECLASS} ]]; then
+_TOOLCHAIN_FUNCS_ECLASS=1
+
 case ${EAPI} in
-   6|7|8) ;;
+   6)
+   ewarn "${CATEGORY}/${PF}: ebuild uses ${ECLASS} with deprecated 
EAPI ${EAPI}!"
+   ewarn "${CATEGORY}/${PF}: Support will be removed on 
2024-10-08. Please port to newer EAPI."
+   ;;
+   7|8) ;;
*) die "${ECLASS}: EAPI ${EAPI:-0} not supported" ;;
 esac
 
-if [[ -z ${_TOOLCHAIN_FUNCS_ECLASS} ]]; then
-_TOOLCHAIN_FUNCS_ECLASS=1
-
 inherit multilib
 
 # tc-getPROG   [tuple]



[gentoo-commits] repo/gentoo:master commit in: eclass/

2024-09-08 Thread Sam James
commit: cf14792ae9471b1d95ee93ecc5de35922654e5cc
Author: Sam James  gentoo  org>
AuthorDate: Sat Sep  7 21:38:17 2024 +
Commit: Sam James  gentoo  org>
CommitDate: Sun Sep  8 18:21:19 2024 +
URL:https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=cf14792a

ruby-ng.eclass: add global-scope ewarn for deprecated < EAPI 7

Signed-off-by: Sam James  gentoo.org>

 eclass/ruby-ng.eclass | 8 ++--
 1 file changed, 6 insertions(+), 2 deletions(-)

diff --git a/eclass/ruby-ng.eclass b/eclass/ruby-ng.eclass
index d80ae96dd40b..2ef6d2247435 100644
--- a/eclass/ruby-ng.eclass
+++ b/eclass/ruby-ng.eclass
@@ -1,4 +1,4 @@
-# Copyright 1999-2023 Gentoo Authors
+# Copyright 1999-2024 Gentoo Authors
 # Distributed under the terms of the GNU General Public License v2
 
 # @ECLASS: ruby-ng.eclass
@@ -67,7 +67,11 @@
 # passed to "grep -E" to remove reporting of these shared objects.
 
 case ${EAPI} in
-   6|7|8) ;;
+   6)
+   ewarn "${CATEGORY}/${PF}: ebuild uses ${ECLASS} with deprecated 
EAPI ${EAPI}!"
+   ewarn "${CATEGORY}/${PF}: Support will be removed on 
2024-10-08. Please port to newer EAPI."
+   ;;
+   7|8) ;;
*) die "${ECLASS}: EAPI ${EAPI:-0} not supported" ;;
 esac
 



[gentoo-commits] repo/gentoo:master commit in: eclass/

2024-09-08 Thread Sam James
commit: 2580b25033cac0b63d1195449b2a7dfeb7d0d22d
Author: Sam James  gentoo  org>
AuthorDate: Sat Sep  7 21:37:56 2024 +
Commit: Sam James  gentoo  org>
CommitDate: Sun Sep  8 18:21:17 2024 +
URL:https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=2580b250

prefix.eclass: add global-scope ewarn for deprecated < EAPI 7

Signed-off-by: Sam James  gentoo.org>

 eclass/prefix.eclass | 16 ++--
 1 file changed, 10 insertions(+), 6 deletions(-)

diff --git a/eclass/prefix.eclass b/eclass/prefix.eclass
index 8d50d0ba7b6e..e968e8ae8bac 100644
--- a/eclass/prefix.eclass
+++ b/eclass/prefix.eclass
@@ -1,4 +1,4 @@
-# Copyright 1999-2021 Gentoo Authors
+# Copyright 1999-2024 Gentoo Authors
 # Distributed under the terms of the GNU General Public License v2
 
 # @ECLASS: prefix.eclass
@@ -12,14 +12,18 @@
 # located somewhere in the filesystem.  Prefix ebuilds require
 # additional functions and variables which are defined by this eclass.
 
-case ${EAPI:-0} in
-   [5678]) ;;
-   *) die "${ECLASS}: EAPI ${EAPI:-0} not supported" ;;
-esac
-
 if [[ -z ${_PREFIX_ECLASS} ]]; then
 _PREFIX_ECLASS=1
 
+case ${EAPI} in
+   5|6)
+   ewarn "${CATEGORY}/${PF}: ebuild uses ${ECLASS} with deprecated 
EAPI ${EAPI}!"
+   ewarn "${CATEGORY}/${PF}: Support will be removed on 
2024-10-08. Please port to newer EAPI."
+   ;;
+   7|8) ;;
+   *) die "${ECLASS}: EAPI ${EAPI:-0} not supported" ;;
+esac
+
 # @ECLASS_VARIABLE: EPREFIX
 # @DESCRIPTION:
 # The offset prefix of a Gentoo Prefix installation.  When Gentoo Prefix



[gentoo-commits] repo/gentoo:master commit in: eclass/

2024-09-08 Thread Sam James
commit: 1a99e837bd683a50583c7a6a83bae5ad918cec74
Author: Sam James  gentoo  org>
AuthorDate: Sat Sep  7 21:38:08 2024 +
Commit: Sam James  gentoo  org>
CommitDate: Sun Sep  8 18:21:18 2024 +
URL:https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=1a99e837

readme.gentoo-r1.eclass: add global-scope ewarn for deprecated < EAPI 7

Signed-off-by: Sam James  gentoo.org>

 eclass/readme.gentoo-r1.eclass | 6 +-
 1 file changed, 5 insertions(+), 1 deletion(-)

diff --git a/eclass/readme.gentoo-r1.eclass b/eclass/readme.gentoo-r1.eclass
index 48023d9c049f..3d2d8244687c 100644
--- a/eclass/readme.gentoo-r1.eclass
+++ b/eclass/readme.gentoo-r1.eclass
@@ -21,7 +21,11 @@ if [[ -z ${_README_GENTOO_ECLASS} ]]; then
 _README_GENTOO_ECLASS=1
 
 case ${EAPI} in
-   6|7|8) ;;
+   6)
+   ewarn "${CATEGORY}/${PF}: ebuild uses ${ECLASS} with deprecated 
EAPI ${EAPI}!"
+   ewarn "${CATEGORY}/${PF}: Support will be removed on 
2024-10-08. Please port to newer EAPI."
+   ;;
+   7|8) ;;
*) die "${ECLASS}: EAPI ${EAPI:-0} not supported" ;;
 esac
 



[gentoo-commits] repo/gentoo:master commit in: eclass/

2024-09-08 Thread Sam James
commit: fabfe377fe7451c3a1f62d5e5cda837c63a583e2
Author: Sam James  gentoo  org>
AuthorDate: Sat Sep  7 21:38:21 2024 +
Commit: Sam James  gentoo  org>
CommitDate: Sun Sep  8 18:21:20 2024 +
URL:https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=fabfe377

ruby-utils.eclass: add global-scope ewarn for deprecated < EAPI 7

Signed-off-by: Sam James  gentoo.org>

 eclass/ruby-utils.eclass | 14 +-
 1 file changed, 9 insertions(+), 5 deletions(-)

diff --git a/eclass/ruby-utils.eclass b/eclass/ruby-utils.eclass
index 789f57ce25f6..48a25114b396 100644
--- a/eclass/ruby-utils.eclass
+++ b/eclass/ruby-utils.eclass
@@ -1,4 +1,4 @@
-# Copyright 1999-2023 Gentoo Authors
+# Copyright 1999-2024 Gentoo Authors
 # Distributed under the terms of the GNU General Public License v2
 
 # @ECLASS: ruby-utils.eclass
@@ -15,13 +15,17 @@
 # This eclass does not set any metadata variables nor export any phase
 # functions. It can be inherited safely.
 
-case ${EAPI:-0} in
-   [5678]) ;;
+if [[ ! ${_RUBY_UTILS} ]]; then
+
+case ${EAPI} in
+   5|6)
+   ewarn "${CATEGORY}/${PF}: ebuild uses ${ECLASS} with deprecated 
EAPI ${EAPI}!"
+   ewarn "${CATEGORY}/${PF}: Support will be removed on 
2024-10-08. Please port to newer EAPI."
+   ;;
+   7|8) ;;
*) die "${ECLASS}: EAPI ${EAPI:-0} not supported" ;;
 esac
 
-if [[ ! ${_RUBY_UTILS} ]]; then
-
 # @ECLASS_VARIABLE: RUBY_TARGETS_PREFERENCE
 # @INTERNAL
 # @DESCRIPTION:



[gentoo-commits] repo/gentoo:master commit in: eclass/

2024-09-08 Thread Sam James
commit: 4d90c2033b85e64c3b6be717a930be84f629f35c
Author: Sam James  gentoo  org>
AuthorDate: Sat Sep  7 21:37:52 2024 +
Commit: Sam James  gentoo  org>
CommitDate: Sun Sep  8 18:21:16 2024 +
URL:https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=4d90c203

portability.eclass: add global-scope ewarn for deprecated < EAPI 7

Signed-off-by: Sam James  gentoo.org>

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

diff --git a/eclass/portability.eclass b/eclass/portability.eclass
index 78da440e22dd..926ac8b8b825 100644
--- a/eclass/portability.eclass
+++ b/eclass/portability.eclass
@@ -9,14 +9,18 @@
 # @SUPPORTED_EAPIS: 6 7 8
 # @BLURB: This eclass is created to avoid using non-portable GNUisms inside 
ebuilds
 
+if [[ -z ${_PORTABILITY_ECLASS} ]]; then
+_PORTABILITY_ECLASS=1
+
 case ${EAPI} in
-   6|7|8) ;;
+   6)
+   ewarn "${CATEGORY}/${PF}: ebuild uses ${ECLASS} with deprecated 
EAPI ${EAPI}!"
+   ewarn "${CATEGORY}/${PF}: Support will be removed on 
2024-10-08. Please port to newer EAPI."
+   ;;
+   7|8) ;;
*) die "${ECLASS}: EAPI ${EAPI:-0} not supported" ;;
 esac
 
-if [[ -z ${_PORTABILITY_ECLASS} ]]; then
-_PORTABILITY_ECLASS=1
-
 # @FUNCTION: treecopy
 # @USAGE:  [orig2 orig3 ] 
 # @DESCRIPTION:



[gentoo-commits] repo/gentoo:master commit in: eclass/

2024-09-08 Thread Sam James
commit: e2bb16305d903272dcef1e902d0e7b3ec87dd87b
Author: Sam James  gentoo  org>
AuthorDate: Sat Sep  7 21:37:59 2024 +
Commit: Sam James  gentoo  org>
CommitDate: Sun Sep  8 18:21:18 2024 +
URL:https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=e2bb1630

preserve-libs.eclass: add global-scope ewarn for deprecated < EAPI 7

Signed-off-by: Sam James  gentoo.org>

 eclass/preserve-libs.eclass | 14 +-
 1 file changed, 9 insertions(+), 5 deletions(-)

diff --git a/eclass/preserve-libs.eclass b/eclass/preserve-libs.eclass
index 35c65ef4436f..38571447b945 100644
--- a/eclass/preserve-libs.eclass
+++ b/eclass/preserve-libs.eclass
@@ -1,4 +1,4 @@
-# Copyright 1999-2023 Gentoo Authors
+# Copyright 1999-2024 Gentoo Authors
 # Distributed under the terms of the GNU General Public License v2
 
 # @ECLASS: preserve-libs.eclass
@@ -7,14 +7,18 @@
 # @SUPPORTED_EAPIS: 5 6 7 8
 # @BLURB: preserve libraries after SONAME changes
 
+if [[ -z ${_PRESERVE_LIBS_ECLASS} ]]; then
+_PRESERVE_LIBS_ECLASS=1
+
 case ${EAPI} in
-   5|6|7|8) ;;
+   5|6)
+   ewarn "${CATEGORY}/${PF}: ebuild uses ${ECLASS} with deprecated 
EAPI ${EAPI}!"
+   ewarn "${CATEGORY}/${PF}: Support will be removed on 
2024-10-08. Please port to newer EAPI."
+   ;;
+   7|8) ;;
*) die "${ECLASS}: EAPI ${EAPI:-0} not supported" ;;
 esac
 
-if [[ -z ${_PRESERVE_LIBS_ECLASS} ]]; then
-_PRESERVE_LIBS_ECLASS=1
-
 # @FUNCTION: preserve_old_lib
 # @USAGE:  [more libs]
 # @DESCRIPTION:



[gentoo-commits] repo/gentoo:master commit in: eclass/

2024-09-08 Thread Sam James
commit: 107c548f56cfcfc133e10918dfc175bf6d9128c3
Author: Sam James  gentoo  org>
AuthorDate: Sat Sep  7 21:37:48 2024 +
Commit: Sam James  gentoo  org>
CommitDate: Sun Sep  8 18:21:16 2024 +
URL:https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=107c548f

php-pear-r2.eclass: add global-scope ewarn for deprecated < EAPI 7

Signed-off-by: Sam James  gentoo.org>

 eclass/php-pear-r2.eclass | 14 +-
 1 file changed, 9 insertions(+), 5 deletions(-)

diff --git a/eclass/php-pear-r2.eclass b/eclass/php-pear-r2.eclass
index 9882c7dcc700..567aa9a8144f 100644
--- a/eclass/php-pear-r2.eclass
+++ b/eclass/php-pear-r2.eclass
@@ -1,4 +1,4 @@
-# Copyright 1999-2023 Gentoo Authors
+# Copyright 1999-2024 Gentoo Authors
 # Distributed under the terms of the GNU General Public License v2
 
 # @ECLASS: php-pear-r2.eclass
@@ -14,14 +14,18 @@
 # Note that this eclass doesn't handle dependencies of PEAR packages
 # on purpose; please use (R)DEPEND to define them correctly!
 
+if [[ -z ${_PHP_PEAR_R2_ECLASS} ]]; then
+_PHP_PEAR_R2_ECLASS=1
+
 case ${EAPI} in
-   6|7|8) ;;
+   6)
+   ewarn "${CATEGORY}/${PF}: ebuild uses ${ECLASS} with deprecated 
EAPI ${EAPI}!"
+   ewarn "${CATEGORY}/${PF}: Support will be removed on 
2024-10-08. Please port to newer EAPI."
+   ;;
+   7|8) ;;
*) die "${ECLASS}: EAPI ${EAPI:-0} not supported" ;;
 esac
 
-if [[ -z ${_PHP_PEAR_R2_ECLASS} ]]; then
-_PHP_PEAR_R2_ECLASS=1
-
 RDEPEND=">=dev-php/pear-1.8.1"
 [[ ${EAPI} != [67] ]] && IDEPEND=">=dev-php/pear-1.8.1"
 



[gentoo-commits] repo/gentoo:master commit in: eclass/

2024-09-08 Thread Sam James
commit: 75c1c9c04acf63c2c7ed1d8bf62609a654754758
Author: Sam James  gentoo  org>
AuthorDate: Sat Sep  7 21:37:43 2024 +
Commit: Sam James  gentoo  org>
CommitDate: Sun Sep  8 18:21:15 2024 +
URL:https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=75c1c9c0

perl-functions.eclass: add global-scope ewarn for deprecated < EAPI 7

Signed-off-by: Sam James  gentoo.org>

 eclass/perl-functions.eclass | 11 ++-
 1 file changed, 6 insertions(+), 5 deletions(-)

diff --git a/eclass/perl-functions.eclass b/eclass/perl-functions.eclass
index 142fdeb8cfbd..d2b6cfb85f73 100644
--- a/eclass/perl-functions.eclass
+++ b/eclass/perl-functions.eclass
@@ -1,4 +1,4 @@
-# Copyright 1999-2022 Gentoo Authors
+# Copyright 1999-2024 Gentoo Authors
 # Distributed under the terms of the GNU General Public License v2
 
 # @ECLASS: perl-functions.eclass
@@ -17,11 +17,12 @@
 # global scope.
 
 case ${EAPI} in
-   7|8)
-   ;;
-   *)
-   die "${ECLASS}: EAPI ${EAPI:-0} not supported"
+   6)
+   ewarn "${CATEGORY}/${PF}: ebuild uses ${ECLASS} with deprecated 
EAPI ${EAPI}!"
+   ewarn "${CATEGORY}/${PF}: Support will be removed on 
2024-10-08. Please port to newer EAPI."
;;
+   7|8) ;;
+   *) die "${ECLASS}: EAPI ${EAPI:-0} not supported" ;;
 esac
 
 [[ ${CATEGORY} == "perl-core" ]] && inherit alternatives



[gentoo-commits] repo/gentoo:master commit in: eclass/

2024-09-07 Thread Sam James
commit: 19cfcafa125dbbe389fc84e4f89cc851df6baa46
Author: Sam James  gentoo  org>
AuthorDate: Sat Sep  7 18:23:03 2024 +
Commit: Sam James  gentoo  org>
CommitDate: Sat Sep  7 18:23:03 2024 +
URL:https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=19cfcafa

kernel-build.eclass: localise 'target'

Fixes: c3f4e3f788e2d5973ce49293fe20354b20576426
Signed-off-by: Sam James  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 93523629de41..ce87fd72acdd 100644
--- a/eclass/kernel-build.eclass
+++ b/eclass/kernel-build.eclass
@@ -302,6 +302,7 @@ kernel-build_src_compile() {
targets+=( ctf )
fi
 
+   local target
for target in "${targets[@]}" ; do
emake O="${WORKDIR}"/build "${MAKEARGS[@]}" "${target}"
done
@@ -327,6 +328,7 @@ kernel-build_src_test() {
strip_args="--strip-unneeded"
fi
 
+   local target
for target in "${targets[@]}" ; do
emake O="${WORKDIR}"/build "${MAKEARGS[@]}" \
INSTALL_MOD_PATH="${T}" 
INSTALL_MOD_STRIP="${strip_args}" \
@@ -375,6 +377,7 @@ kernel-build_src_install() {
)
fi
 
+   local target
for target in "${targets[@]}" ; do
emake O="${WORKDIR}"/build "${MAKEARGS[@]}" \
INSTALL_MOD_PATH="${ED}" 
INSTALL_MOD_STRIP="${strip_args}" \



[gentoo-commits] repo/gentoo:master commit in: eclass/

2024-09-07 Thread Sam James
commit: c3f4e3f788e2d5973ce49293fe20354b20576426
Author: Sam James  gentoo  org>
AuthorDate: Sat Sep  7 16:22:45 2024 +
Commit: Sam James  gentoo  org>
CommitDate: Sat Sep  7 18:21:32 2024 +
URL:https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=c3f4e3f7

kernel-build.eclass: call ctf targets serially

Workaround for install + ctf_install not working in parallel for now
(have reported this).

Signed-off-by: Sam James  gentoo.org>

 eclass/kernel-build.eclass | 20 +---
 1 file changed, 13 insertions(+), 7 deletions(-)

diff --git a/eclass/kernel-build.eclass b/eclass/kernel-build.eclass
index 91c962d671ab..93523629de41 100644
--- a/eclass/kernel-build.eclass
+++ b/eclass/kernel-build.eclass
@@ -302,7 +302,9 @@ kernel-build_src_compile() {
targets+=( ctf )
fi
 
-   emake O="${WORKDIR}"/build "${MAKEARGS[@]}" "${targets[@]}"
+   for target in "${targets[@]}" ; do
+   emake O="${WORKDIR}"/build "${MAKEARGS[@]}" "${target}"
+   done
 }
 
 # @FUNCTION: kernel-build_src_test
@@ -325,9 +327,11 @@ kernel-build_src_test() {
strip_args="--strip-unneeded"
fi
 
-   emake O="${WORKDIR}"/build "${MAKEARGS[@]}" \
-   INSTALL_MOD_PATH="${T}" INSTALL_MOD_STRIP="${strip_args}" \
-   "${targets[@]}"
+   for target in "${targets[@]}" ; do
+   emake O="${WORKDIR}"/build "${MAKEARGS[@]}" \
+   INSTALL_MOD_PATH="${T}" 
INSTALL_MOD_STRIP="${strip_args}" \
+   "${target}"
+   done
 
kernel-install_test "${KV_FULL}" \
"${WORKDIR}/build/$(dist-kernel_get_image_path)" \
@@ -371,9 +375,11 @@ kernel-build_src_install() {
)
fi
 
-   emake O="${WORKDIR}"/build "${MAKEARGS[@]}" \
-   INSTALL_MOD_PATH="${ED}" INSTALL_MOD_STRIP="${strip_args}" \
-   INSTALL_PATH="${ED}/boot" "${compress[@]}" "${targets[@]}"
+   for target in "${targets[@]}" ; do
+   emake O="${WORKDIR}"/build "${MAKEARGS[@]}" \
+   INSTALL_MOD_PATH="${ED}" 
INSTALL_MOD_STRIP="${strip_args}" \
+   INSTALL_PATH="${ED}/boot" "${compress[@]}" "${target}"
+   done
 
# note: we're using mv rather than doins to save space and time
# install main and arch-specific headers first, and scripts



[gentoo-commits] repo/gentoo:master commit in: eclass/

2024-09-05 Thread Sam James
commit: 82f9bef4ed76f656a3d79b607eecff526b78b7ee
Author: Sam James  gentoo  org>
AuthorDate: Thu Sep  5 11:48:02 2024 +
Commit: Sam James  gentoo  org>
CommitDate: Thu Sep  5 12:09:45 2024 +
URL:https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=82f9bef4

linux-mod-r1.eclass: BDEPEND on dev-util/pahole

If the kernel is built with CONFIG_DEBUG_INFO_BTF_MODULES, external
kernel module builds will try to call `pahole` to generate BTF and
fail if it's not present.

pahole is a small dependency and we're likely to enable BTF by default
in more configurations going forward, so do it unconditionally.

The alternatives aren't great anyway, we would have to instead:
* RDEPEND in g-k-bin
* BDEPEND in g-k-bin and break the binpkg case
* Use an ewarn in the eclass if pahole isn't installed + config option is set
so this is the best option available to us.

Thanks-to: Ionen Wolkens  gentoo.org>
Reported-by: Sebastian Engel  gmx.de>
Signed-off-by: Sam James  gentoo.org>

 eclass/linux-mod-r1.eclass | 1 +
 1 file changed, 1 insertion(+)

diff --git a/eclass/linux-mod-r1.eclass b/eclass/linux-mod-r1.eclass
index 9911a6ddee12..120fb019d74a 100644
--- a/eclass/linux-mod-r1.eclass
+++ b/eclass/linux-mod-r1.eclass
@@ -121,6 +121,7 @@ DEPEND="
virtual/linux-sources
 "
 BDEPEND="
+   dev-util/pahole
sys-apps/kmod[tools]
modules-sign? (
dev-libs/openssl



[gentoo-commits] repo/gentoo:master commit in: eclass/

2024-09-04 Thread Michał Górny
commit: ae9987ba9684a83a0310b42e28299c545e0e5468
Author: Sam James  gentoo  org>
AuthorDate: Wed Sep  4 14:38:34 2024 +
Commit: Michał Górny  gentoo  org>
CommitDate: Wed Sep  4 20:33:03 2024 +
URL:https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=ae9987ba

kernel-build.eclass: fix src_test w/o CTF

Fixes: 983fe336a7571f822655c25e0785f067de80c64c
Signed-off-by: Sam James  gentoo.org>
Signed-off-by: Michał Górny  gentoo.org>

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

diff --git a/eclass/kernel-build.eclass b/eclass/kernel-build.eclass
index 3836bef1276b..91c962d671ab 100644
--- a/eclass/kernel-build.eclass
+++ b/eclass/kernel-build.eclass
@@ -312,6 +312,12 @@ kernel-build_src_compile() {
 kernel-build_src_test() {
debug-print-function ${FUNCNAME} "${@}"
 
+   local targets=( modules_install )
+
+   if grep -q "CONFIG_CTF=y" "${WORKDIR}/modprep/.config"; then
+   targets+=( ctf_install )
+   fi
+
# Use the kernel build system to strip, this ensures the modules
# are stripped *before* they are signed or compressed.
local strip_args
@@ -321,7 +327,7 @@ kernel-build_src_test() {
 
emake O="${WORKDIR}"/build "${MAKEARGS[@]}" \
INSTALL_MOD_PATH="${T}" INSTALL_MOD_STRIP="${strip_args}" \
-   modules_install ctf_install
+   "${targets[@]}"
 
kernel-install_test "${KV_FULL}" \
"${WORKDIR}/build/$(dist-kernel_get_image_path)" \



[gentoo-commits] repo/gentoo:master commit in: eclass/

2024-09-03 Thread Sam James
commit: 983fe336a7571f822655c25e0785f067de80c64c
Author: Sam James  gentoo  org>
AuthorDate: Tue Sep  3 09:38:04 2024 +
Commit: Sam James  gentoo  org>
CommitDate: Tue Sep  3 09:40:45 2024 +
URL:https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=983fe336

kernel-build.eclass: call ctf_install for tests too

As suggested by Andrew at 
https://github.com/gentoo/gentoo/pull/38392#discussion_r1741574357.

Signed-off-by: Sam James  gentoo.org>

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

diff --git a/eclass/kernel-build.eclass b/eclass/kernel-build.eclass
index 1fc86c4a2208..3836bef1276b 100644
--- a/eclass/kernel-build.eclass
+++ b/eclass/kernel-build.eclass
@@ -321,7 +321,7 @@ kernel-build_src_test() {
 
emake O="${WORKDIR}"/build "${MAKEARGS[@]}" \
INSTALL_MOD_PATH="${T}" INSTALL_MOD_STRIP="${strip_args}" \
-   modules_install
+   modules_install ctf_install
 
kernel-install_test "${KV_FULL}" \
"${WORKDIR}/build/$(dist-kernel_get_image_path)" \



[gentoo-commits] repo/gentoo:master commit in: eclass/

2024-09-03 Thread Sam James
commit: 074703d997f81d4632e8f69d88a113c81e3220d4
Author: Sam James  gentoo  org>
AuthorDate: Tue Sep  3 06:50:38 2024 +
Commit: Sam James  gentoo  org>
CommitDate: Tue Sep  3 08:58:13 2024 +
URL:https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=074703d9

kernel-build.eclass: handle CTF if enabled

genpatches will soon be adding optional CTF debug information support
via a patch. If it's enabled, we need to call a few special make targets
to create and install the CTF information. We also need to avoid stripping
the CTF archive.

Signed-off-by: Sam James  gentoo.org>

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

diff --git a/eclass/kernel-build.eclass b/eclass/kernel-build.eclass
index 10fd0cca2cc5..1fc86c4a2208 100644
--- a/eclass/kernel-build.eclass
+++ b/eclass/kernel-build.eclass
@@ -296,7 +296,13 @@ kernel-build_src_configure() {
 kernel-build_src_compile() {
debug-print-function ${FUNCNAME} "${@}"
 
-   emake O="${WORKDIR}"/build "${MAKEARGS[@]}" all
+   local targets=( all )
+
+   if grep -q "CONFIG_CTF=y" "${WORKDIR}/modprep/.config"; then
+   targets+=( ctf )
+   fi
+
+   emake O="${WORKDIR}"/build "${MAKEARGS[@]}" "${targets[@]}"
 }
 
 # @FUNCTION: kernel-build_src_test
@@ -337,6 +343,10 @@ kernel-build_src_install() {
targets+=( dtbs_install )
fi
 
+   if grep -q "CONFIG_CTF=y" "${WORKDIR}/modprep/.config"; then
+   targets+=( ctf_install )
+   fi
+
# Use the kernel build system to strip, this ensures the modules
# are stripped *before* they are signed or compressed.
local strip_args
@@ -430,6 +440,7 @@ kernel-build_src_install() {
mv "build/vmlinux" "${ED}${kernel_dir}/vmlinux" || die
fi
dostrip -x "${kernel_dir}/vmlinux"
+   dostrip -x "${kernel_dir}/vmlinux.ctfa"
fi
 
# strip empty directories



[gentoo-commits] repo/gentoo:master commit in: eclass/

2024-09-02 Thread Ionen Wolkens
commit: 94d87c3124305490189c803dccdd30b034466892
Author: Ionen Wolkens  gentoo  org>
AuthorDate: Tue Sep  3 00:42:16 2024 +
Commit: Ionen Wolkens  gentoo  org>
CommitDate: Tue Sep  3 04:20:22 2024 +
URL:https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=94d87c31

qt6-build.eclass: force cmake's log level back to STATUS

Unless set -DQT_FEATURE_developer_build (which is more involved),
Qt changes the default log level to NOTICE and then, in current
6.8., the configuration summaries were seemingly moved to STATUS
leaving them hidden as just:

-- Configuration summary has been written to ..._build/config.summary

Not new, but the NOTICE log level also hides the result of the various
tests such as:

-- Performing Test HAVE_egl_x11 - Success

Unclear if 6.8.x will keep summaries that way (feel this is a downside
for upstream as well, and perhaps is not intentional as part of some
refactoring), but either way STATUS makes the build.log a lot more
useful.

Signed-off-by: Ionen Wolkens  gentoo.org>

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

diff --git a/eclass/qt6-build.eclass b/eclass/qt6-build.eclass
index 24b857dab53f..3cd8b606c235 100644
--- a/eclass/qt6-build.eclass
+++ b/eclass/qt6-build.eclass
@@ -147,6 +147,9 @@ qt6-build_src_configure() {
fi
 
local defaultcmakeargs=(
+   # cmake defaults to "STATUS" but Qt changes that to "NOTICE" 
which
+   # hides a lot of information that is useful for bug reports
+   --log-level=STATUS
# see _qt6-build_create_user_facing_links
-DINSTALL_PUBLICBINDIR="${QT6_PREFIX}"/bin
# note that if qtbase was built with tests, this is default ON



[gentoo-commits] repo/gentoo:master commit in: eclass/

2024-09-01 Thread Sam James
commit: a5adc69b4bffaf47a520f16dad03472f2f21defc
Author: Sam James  gentoo  org>
AuthorDate: Sun Sep  1 11:02:45 2024 +
Commit: Sam James  gentoo  org>
CommitDate: Sun Sep  1 11:04:43 2024 +
URL:https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=a5adc69b

java-ant-2.eclass: fix eclassdoc issues

eclass-to-manpage noticed these.

Signed-off-by: Sam James  gentoo.org>

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

diff --git a/eclass/java-ant-2.eclass b/eclass/java-ant-2.eclass
index 1ed8b23ee6cd..ef7d306dc9b1 100644
--- a/eclass/java-ant-2.eclass
+++ b/eclass/java-ant-2.eclass
@@ -2,7 +2,6 @@
 # Distributed under the terms of the GNU General Public License v2
 
 # @ECLASS: java-ant-2.eclass
-# @DEPRECATED: none
 # @MAINTAINER:
 # j...@gentoo.org
 # @AUTHOR:
@@ -11,6 +10,7 @@
 # @SUPPORTED_EAPIS: 7 8
 # @PROVIDES: java-utils-2
 # @BLURB: eclass for ant based Java packages
+# @DEPRECATED: none
 # @DESCRIPTION:
 # Eclass for Ant-based Java packages. Provides support for both automatic and
 # manual manipulation of build.xml files. Should be inherited after java-pkg-2



[gentoo-commits] repo/gentoo:master commit in: eclass/

2024-09-01 Thread Sam James
commit: d2f9fd205167416d26858b2c5dd6be463389fdef
Author: Sam James  gentoo  org>
AuthorDate: Sun Sep  1 11:01:51 2024 +
Commit: Sam James  gentoo  org>
CommitDate: Sun Sep  1 11:04:42 2024 +
URL:https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=d2f9fd20

guile.eclass: fix eclassdoc issues

eclass-to-manpage noticed these.

Signed-off-by: Sam James  gentoo.org>

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

diff --git a/eclass/guile.eclass b/eclass/guile.eclass
index d487d765e86a..9310cd060da9 100644
--- a/eclass/guile.eclass
+++ b/eclass/guile.eclass
@@ -2,13 +2,13 @@
 # Distributed under the terms of the GNU General Public License v2
 
 # @ECLASS: guile.eclass
-# @PROVIDES: guile-utils
 # @MAINTAINER:
 # Gentoo Scheme project 
 # @AUTHOR:
 # Author: Arsen Arsenović 
 # Inspired by prior work in the Gentoo Python ecosystem.
 # @SUPPORTED_EAPIS: 8
+# @PROVIDES: guile-utils
 # @BLURB: Utilities for packages multi-implementation Guile packages.
 # @DESCRIPTION:
 # This eclass facilitates building against many Guile implementations,



[gentoo-commits] repo/gentoo:master commit in: eclass/

2024-09-01 Thread Sam James
commit: a948d340bd94e480398c3b55a53bbddae77d1c9c
Author: Sam James  gentoo  org>
AuthorDate: Sun Sep  1 10:59:49 2024 +
Commit: Sam James  gentoo  org>
CommitDate: Sun Sep  1 11:04:41 2024 +
URL:https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=a948d340

guile-single.eclass: fix eclassdoc issues

eclass-to-manpage noticed these.

Signed-off-by: Sam James  gentoo.org>

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

diff --git a/eclass/guile-single.eclass b/eclass/guile-single.eclass
index 41ede32928bc..91f6036139da 100644
--- a/eclass/guile-single.eclass
+++ b/eclass/guile-single.eclass
@@ -2,20 +2,20 @@
 # Distributed under the terms of the GNU General Public License v2
 
 # @ECLASS: guile-single.eclass
-# @PROVIDES: guile-utils
 # @MAINTAINER:
 # Gentoo Scheme project 
 # @AUTHOR:
 # Author: Arsen Arsenović 
-# Inspired by prior work in the Gentoo Python ecosystem.
-# @BLURB: Utilities for packages that build against a single Guile.
 # @SUPPORTED_EAPIS: 8
 # @PROVIDES: guile-utils
+# @BLURB: Utilities for packages that build against a single Guile.
 # @DESCRIPTION:
 # This eclass facilitates packages building against a single slot of
 # Guile, which is normally something that uses Guile for extending, like
 # GNU Make, or for programs built in Guile, like Haunt.
 #
+# Inspired by prior work in the Gentoo Python ecosystem.
+#
 # These packages should use guile_gen_cond_dep to generate a dependency
 # string for their Guile package dependencies (i.e. other Guile single-
 # and multi-implementation packages).  They should also utilize



[gentoo-commits] repo/gentoo:master commit in: eclass/

2024-09-01 Thread Sam James
commit: ef76274515b2653756bf2122f4be03681e94a954
Author: Sam James  gentoo  org>
AuthorDate: Sun Sep  1 11:01:13 2024 +
Commit: Sam James  gentoo  org>
CommitDate: Sun Sep  1 11:04:42 2024 +
URL:https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=ef762745

guile-utils.eclass: fix eclassdoc issues

eclass-to-manpage noticed these.

Signed-off-by: Sam James  gentoo.org>

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

diff --git a/eclass/guile-utils.eclass b/eclass/guile-utils.eclass
index 3f122f63a36f..09ca5aabe502 100644
--- a/eclass/guile-utils.eclass
+++ b/eclass/guile-utils.eclass
@@ -6,13 +6,14 @@
 # Gentoo Scheme project 
 # @AUTHOR:
 # Author: Arsen Arsenović 
-# Inspired by prior work in the Gentoo Python ecosystem.
-# @BLURB: Common code between GNU Guile-related eclasses and ebuilds.
 # @SUPPORTED_EAPIS: 8
+# @BLURB: Common code between GNU Guile-related eclasses and ebuilds.
 # @DESCRIPTION:
 # This eclass contains various bits of common code between
 # dev-scheme/guile, Guile multi-implementation ebuilds and Guile
 # single-implementation ebuilds.
+#
+# Inspired by prior work in the Gentoo Python ecosystem.
 
 case "${EAPI}" in
8) ;;



[gentoo-commits] repo/gentoo:master commit in: eclass/

2024-09-01 Thread Miroslav Šulc
commit: b4b2bc17326e87df2021805bbbc39b46e70e1b2b
Author: Volkmar W. Pogatzki  pogatzki  net>
AuthorDate: Tue Aug  6 06:49:46 2024 +
Commit: Miroslav Šulc  gentoo  org>
CommitDate: Sun Sep  1 09:58:53 2024 +
URL:https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=b4b2bc17

java-ant-2.eclass: mark java-ant-2 eclass as deprecated

Signed-off-by: Volkmar W. Pogatzki  pogatzki.net>
Closes: https://github.com/gentoo/gentoo/pull/38203
Signed-off-by: Miroslav Šulc  gentoo.org>

 eclass/java-ant-2.eclass | 1 +
 1 file changed, 1 insertion(+)

diff --git a/eclass/java-ant-2.eclass b/eclass/java-ant-2.eclass
index b0d2fb216b10..1ed8b23ee6cd 100644
--- a/eclass/java-ant-2.eclass
+++ b/eclass/java-ant-2.eclass
@@ -2,6 +2,7 @@
 # Distributed under the terms of the GNU General Public License v2
 
 # @ECLASS: java-ant-2.eclass
+# @DEPRECATED: none
 # @MAINTAINER:
 # j...@gentoo.org
 # @AUTHOR:



[gentoo-commits] repo/gentoo:master commit in: eclass/

2024-09-01 Thread Miroslav Šulc
commit: f71821015ff790d630acbb54962d4674b9b8b4a6
Author: Volkmar W. Pogatzki  pogatzki  net>
AuthorDate: Tue Aug 13 06:36:46 2024 +
Commit: Miroslav Šulc  gentoo  org>
CommitDate: Sun Sep  1 09:58:53 2024 +
URL:https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=f7182101

java-pkg-2.eclass: remove unused for commons.apache.org packages

removes a condition which used to provide SRC_URI and HOMEPAGE for
packages from commons.apache.org but is completely unused due to not
providing verify-sig.

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

 eclass/java-pkg-2.eclass | 6 --
 1 file changed, 6 deletions(-)

diff --git a/eclass/java-pkg-2.eclass b/eclass/java-pkg-2.eclass
index 0409a7c70e0e..df024bbadf51 100644
--- a/eclass/java-pkg-2.eclass
+++ b/eclass/java-pkg-2.eclass
@@ -39,12 +39,6 @@ DEPEND="${JAVA_PKG_E_DEPEND}"
 # Nothing special for RDEPEND... just the same as DEPEND.
 RDEPEND="${DEPEND}"
 
-# Commons packages follow the same rules so do it here
-if [[ ${CATEGORY} = dev-java && ${PN} = commons-* ]]; then
-   HOMEPAGE="http://commons.apache.org/${PN#commons-}/";
-   SRC_URI="mirror://apache/${PN/-///}/source/${P}-src.tar.gz"
-fi
-
 
 # @FUNCTION: java-pkg-2_pkg_setup
 # @DESCRIPTION:



[gentoo-commits] repo/gentoo:master commit in: eclass/

2024-09-01 Thread Miroslav Šulc
commit: a9f58305b8287641626535a315958a51e5ab34a5
Author: Volkmar W. Pogatzki  pogatzki  net>
AuthorDate: Sat Aug 10 07:18:38 2024 +
Commit: Miroslav Šulc  gentoo  org>
CommitDate: Sun Sep  1 09:58:53 2024 +
URL:https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=a9f58305

java-utils-2.eclass: remove 'ant -lib' from comment of java-pkg_jarfrom

since it is already advised to not use it

Signed-off-by: Volkmar W. Pogatzki  pogatzki.net>
Signed-off-by: Miroslav Šulc  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 9c657cc4c1f9..647f25e2c987 100644
--- a/eclass/java-utils-2.eclass
+++ b/eclass/java-utils-2.eclass
@@ -1140,7 +1140,7 @@ java-pkg_jarfrom() {
 # @USAGE: [--build-only] [--runtime-only] [--with-dependencies] 
[,...]
 # @DESCRIPTION:
 # Get the classpath provided by any number of packages
-# Among other things, this can be passed to 'javac -classpath' or 'ant -lib'.
+# Among other things, this can be passed to 'javac -classpath'.
 # The providing packages are recorded as dependencies into package.env DEPEND
 # line, unless "--build-only" is passed as the very first argument, for jars
 # that have to be present only at build time and are not needed on runtime



[gentoo-commits] repo/gentoo:master commit in: eclass/

2024-09-01 Thread Miroslav Šulc
commit: 199aa0b14194a2a17d43d396c9e341b15c33b719
Author: Volkmar W. Pogatzki  pogatzki  net>
AuthorDate: Tue Aug  6 06:54:55 2024 +
Commit: Miroslav Šulc  gentoo  org>
CommitDate: Sun Sep  1 09:58:53 2024 +
URL:https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=199aa0b1

java-pkg-2.eclass: mark functions as deprecated which depend on 
java-ant-2.eclass

Deprecating java-ant-2.eclass would be the next step.

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

 eclass/java-pkg-2.eclass | 4 +++-
 1 file changed, 3 insertions(+), 1 deletion(-)

diff --git a/eclass/java-pkg-2.eclass b/eclass/java-pkg-2.eclass
index c17a9db26b3b..0409a7c70e0e 100644
--- a/eclass/java-pkg-2.eclass
+++ b/eclass/java-pkg-2.eclass
@@ -1,4 +1,4 @@
-# Copyright 2004-2023 Gentoo Authors
+# Copyright 2004-2024 Gentoo Authors
 # Distributed under the terms of the GNU General Public License v2
 
 # @ECLASS: java-pkg-2.eclass
@@ -63,6 +63,7 @@ java-pkg-2_src_prepare() {
 
 
 # @FUNCTION: java-pkg-2_src_compile
+# @DEPRECATED: none
 # @DESCRIPTION:
 # Default src_compile for java packages
 #
@@ -98,6 +99,7 @@ java-pkg-2_src_compile() {
 }
 
 # @FUNCTION: java-pkg-2_src_test
+# @DEPRECATED: none
 # @DESCRIPTION:
 # src_test, not exported.
 java-pkg-2_src_test() {



[gentoo-commits] repo/gentoo:master commit in: eclass/

2024-08-31 Thread Michał Górny
commit: b88061f78e9d212f4bbd9611cd4c0e41a8baf549
Author: Michał Górny  gentoo  org>
AuthorDate: Sat Aug 31 08:29:18 2024 +
Commit: Michał Górny  gentoo  org>
CommitDate: Sat Aug 31 08:32:48 2024 +
URL:https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=b88061f7

llvm.org.eclass: Add 20.0.0_pre20240830 snapshot

Signed-off-by: Michał Górny  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 b3a22634f2e1..da943081b9bf 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
+   20.0.0_pre20240830)
+   
EGIT_COMMIT=5500e21942f7047344b6fee62d3e08c0ba2f9182
+   ;;
20.0.0_pre20240822)

EGIT_COMMIT=503907dc505db1e439e7061113bf84dd105f2e35
;;



[gentoo-commits] repo/gentoo:master commit in: eclass/

2024-08-30 Thread Andrew Ammerlaan
commit: 660b9cf9f08fd27fca32f1bd1bd8e95ee7a635bc
Author: Andrew Ammerlaan  gentoo  org>
AuthorDate: Fri Aug 30 19:41:18 2024 +
Commit: Andrew Ammerlaan  gentoo  org>
CommitDate: Fri Aug 30 19:43:32 2024 +
URL:https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=660b9cf9

kernel-build.eclass: BDEPEND on dev-lang/perl

Some config options (that we enable by default, e.g. CONFIG_CRYPTO_POLY1305)
cause perl scripts to be run during the build.

Closes: https://bugs.gentoo.org/930390
Signed-off-by: Andrew Ammerlaan  gentoo.org>

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

diff --git a/eclass/kernel-build.eclass b/eclass/kernel-build.eclass
index d92076d61c04..10fd0cca2cc5 100644
--- a/eclass/kernel-build.eclass
+++ b/eclass/kernel-build.eclass
@@ -47,6 +47,7 @@ BDEPEND="
${PYTHON_DEPS}
app-alternatives/cpio
app-alternatives/bc
+   dev-lang/perl
sys-devel/bison
sys-devel/flex
virtual/libelf



[gentoo-commits] repo/gentoo:master commit in: eclass/

2024-08-30 Thread Andrew Ammerlaan
commit: 297e387c75abadc31502f37fd456a1f90b302ad4
Author: Andrew Ammerlaan  gentoo  org>
AuthorDate: Fri Aug 30 13:01:53 2024 +
Commit: Andrew Ammerlaan  gentoo  org>
CommitDate: Fri Aug 30 19:07:05 2024 +
URL:https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=297e387c

kernel-build.eclass: adjust missing .config error messages

kernel-build_merge_configs should always be called first nowadays
because it applies the savedconfig.

Signed-off-by: Andrew Ammerlaan  gentoo.org>
Closes: https://github.com/gentoo/gentoo/pull/38345
Signed-off-by: Andrew Ammerlaan  gentoo.org>

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

diff --git a/eclass/kernel-build.eclass b/eclass/kernel-build.eclass
index be02920162f4..d92076d61c04 100644
--- a/eclass/kernel-build.eclass
+++ b/eclass/kernel-build.eclass
@@ -243,7 +243,7 @@ kernel-build_src_configure() {
MAKEARGS+=( KBZIP2="lbzip2" )
fi
 
-   [[ -f .config ]] || die "Ebuild error: please copy default config into 
.config"
+   [[ -f .config ]] || die "Ebuild error: No .config, 
kernel-build_merge_configs was not called."
 
if [[ -z "${KV_LOCALVERSION}" ]]; then
KV_LOCALVERSION=$(sed -n -e 
's#^CONFIG_LOCALVERSION="\(.*\)"$#\1#p' \
@@ -602,10 +602,13 @@ kernel-build_pkg_postinst() {
 # 3. Config saved via USE=savedconfig (if applicable).
 # 4. Module signing key specified via MODULES_SIGN_KEY* variables.
 # 5. User-supplied configs from ${BROOT}/etc/kernel/config.d/*.config.
+#
+# This function must be called by the ebuild in the src_prepare phase.
 kernel-build_merge_configs() {
debug-print-function ${FUNCNAME} "${@}"
 
-   [[ -f .config ]] || die "${FUNCNAME}: .config does not exist"
+   [[ -f .config ]] ||
+   die "${FUNCNAME}: No .config, please copy default config into 
.config"
has .config "${@}" &&
die "${FUNCNAME}: do not specify .config as parameter"
 



[gentoo-commits] repo/gentoo:master commit in: eclass/

2024-08-26 Thread Ulrich Müller
commit: d1d31339c50dceed5a453793a71298c29698aa3d
Author: Ulrich Müller  gentoo  org>
AuthorDate: Tue Aug 20 17:58:30 2024 +
Commit: Ulrich Müller  gentoo  org>
CommitDate: Mon Aug 26 13:04:23 2024 +
URL:https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=d1d31339

versionator.eclass: Mark as DEAD

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

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

diff --git a/eclass/versionator.eclass b/eclass/versionator.eclass
index 8a1066a0fd30..1e491860b6ca 100644
--- a/eclass/versionator.eclass
+++ b/eclass/versionator.eclass
@@ -1,6 +1,7 @@
 # Copyright 1999-2020 Gentoo Authors
 # Distributed under the terms of the GNU General Public License v2
 
+# @DEAD
 # @ECLASS: versionator.eclass
 # @MAINTAINER:
 # Jonathan Callen 



[gentoo-commits] repo/gentoo:master commit in: eclass/

2024-08-26 Thread Ulrich Müller
commit: dc3043d2bcf8394e96d8f81ec6daf30641afe3d4
Author: Ulrich Müller  gentoo  org>
AuthorDate: Tue Aug 20 17:58:55 2024 +
Commit: Ulrich Müller  gentoo  org>
CommitDate: Mon Aug 26 13:04:24 2024 +
URL:https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=dc3043d2

eqawarn.eclass: Mark as DEAD

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

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

diff --git a/eclass/eqawarn.eclass b/eclass/eqawarn.eclass
index 288976182fb3..df6b13151d74 100644
--- a/eclass/eqawarn.eclass
+++ b/eclass/eqawarn.eclass
@@ -1,6 +1,7 @@
 # Copyright 1999-2022 Gentoo Authors
 # Distributed under the terms of the GNU General Public License v2
 
+# @DEAD
 # @ECLASS: eqawarn.eclass
 # @MAINTAINER:
 # base-sys...@gentoo.org



[gentoo-commits] repo/gentoo:master commit in: eclass/

2024-08-26 Thread Ulrich Müller
commit: 17c11b3d8225ff68bf081488e0285ed117a3c1c6
Author: Ulrich Müller  gentoo  org>
AuthorDate: Mon Aug 26 12:23:04 2024 +
Commit: Ulrich Müller  gentoo  org>
CommitDate: Mon Aug 26 13:04:25 2024 +
URL:https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=17c11b3d

plasma-mobile.kde.org.eclass: Mark as DEAD

Acked-by: Andreas Sturmlechner  gentoo.org>
Signed-off-by: Ulrich Müller  gentoo.org>

 eclass/plasma-mobile.kde.org.eclass | 1 +
 1 file changed, 1 insertion(+)

diff --git a/eclass/plasma-mobile.kde.org.eclass 
b/eclass/plasma-mobile.kde.org.eclass
index 9fd54100d24e..3349f90745bd 100644
--- a/eclass/plasma-mobile.kde.org.eclass
+++ b/eclass/plasma-mobile.kde.org.eclass
@@ -1,6 +1,7 @@
 # Copyright 1999-2023 Gentoo Authors
 # Distributed under the terms of the GNU General Public License v2
 
+# @DEAD
 # @ECLASS: plasma-mobile.kde.org.eclass
 # @MAINTAINER:
 # k...@gentoo.org



[gentoo-commits] repo/gentoo:master commit in: eclass/

2024-08-26 Thread Ulrich Müller
commit: 1118079e4f7b3acb43fa8206a6c9f2f02187c44f
Author: Ulrich Müller  gentoo  org>
AuthorDate: Tue Aug 20 17:58:41 2024 +
Commit: Ulrich Müller  gentoo  org>
CommitDate: Mon Aug 26 13:04:23 2024 +
URL:https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=1118079e

eapi7-ver.eclass: Mark as DEAD

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

 eclass/eapi7-ver.eclass | 1 +
 1 file changed, 1 insertion(+)

diff --git a/eclass/eapi7-ver.eclass b/eclass/eapi7-ver.eclass
index a23e76ad3ee3..85c0856f73b3 100644
--- a/eclass/eapi7-ver.eclass
+++ b/eclass/eapi7-ver.eclass
@@ -1,6 +1,7 @@
 # Copyright 1999-2021 Gentoo Authors
 # Distributed under the terms of the GNU General Public License v2
 
+# @DEAD
 # @ECLASS: eapi7-ver.eclass
 # @MAINTAINER:
 # PMS team 



[gentoo-commits] repo/gentoo:master commit in: eclass/

2024-08-25 Thread Andreas Sturmlechner
commit: 37f7986b816b46aaca8f96b49582c9c73bebaf5c
Author: Andreas Sturmlechner  gentoo  org>
AuthorDate: Sun Aug 25 22:29:07 2024 +
Commit: Andreas Sturmlechner  gentoo  org>
CommitDate: Mon Aug 26 06:33:46 2024 +
URL:https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=37f7986b

ecm-common.eclass: Add _ecm-common-check_deps to simplify pkg_setup()

Bug: https://bugs.gentoo.org/938507
Signed-off-by: Andreas Sturmlechner  gentoo.org>

 eclass/ecm-common.eclass | 43 ++-
 1 file changed, 34 insertions(+), 9 deletions(-)

diff --git a/eclass/ecm-common.eclass b/eclass/ecm-common.eclass
index 63a23878c6f5..c0c2b4f7e644 100644
--- a/eclass/ecm-common.eclass
+++ b/eclass/ecm-common.eclass
@@ -309,6 +309,38 @@ _ecm-common_summary() {
_EOF_
 }
 
+# @FUNCTION: _ecm-common-check_deps
+# @INTERNAL
+# @DESCRIPTION:
+# Check existence of requested KF6 dependencies.
+_ecm-common-check_deps() {
+   local chk=0
+   case ${1} in
+   i18n)
+   if [[ ${ECM_I18N} ]]; then
+   chk=$(has_version -b "kde-frameworks/ki18n:6")
+   fi
+   ;;
+   doctools)
+   if [[ ${ECM_HANDBOOK} ]] && in_iuse handbook; then
+   if use handbook; then
+   chk=$(has_version -b 
"kde-frameworks/kdoctools:6")
+   fi
+   fi
+   ;;
+   kcmutils)
+   if [[ ${ECM_KCM_TARGETS} ]]; then
+   chk=$(has_version -b 
"kde-frameworks/kcmutils:6")
+   fi
+   ;;
+   *)
+   eerror "Unknown value for _ecm-common-check_deps()"
+   die "Value ${1} is not supported"
+   ;;
+   esac
+   return ${chk}
+}
+
 # @FUNCTION: ecm-common-check_deps
 # @DESCRIPTION:
 # Override this to add more KF6 has_version checks to pkg_setup(),
@@ -327,15 +359,8 @@ ecm-common-check_deps() {
 ecm-common_pkg_setup() {
$(ver_test ${KFMIN} -ge 5.240) && return
 
-   if has_version -b "kde-frameworks/ki18n:6" && {
-   ! in_iuse handbook || {
-   in_iuse handbook && use handbook &&
-   has_version -b "kde-frameworks/kdoctools:6"
-   }
-   } && {
-   ! [[ ${ECM_KCM_TARGETS} ]] ||
-   has_version -b "kde-frameworks/kcmutils:6"
-   } && ecm-common-check_deps
+   if _ecm-common-check_deps i18n && _ecm-common-check_deps doctools &&
+   _ecm-common-check_deps kcmutils && ecm-common-check_deps
then
_KFSLOT=6
else



[gentoo-commits] repo/gentoo:master commit in: eclass/

2024-08-25 Thread Andrew Ammerlaan
commit: 0dd42ac730fd855166651d81e3f3d0db671e7328
Author: Andrew Ammerlaan  gentoo  org>
AuthorDate: Sun Aug 25 15:08:55 2024 +
Commit: Andrew Ammerlaan  gentoo  org>
CommitDate: Sun Aug 25 15:36:53 2024 +
URL:https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=0dd42ac7

kernel-build.eclass: fix module signing with unspecified key

MODULES_SIGN_KEY may be unset when using USE=modules-sign. Fix an issue
introduced in e290c3c78b7acb59393f46d1d15175d6dbfc77da that breaks this
configuration due to modules-sign-key.config not existing.

Signed-off-by: Andrew Ammerlaan  gentoo.org>
Closes: https://github.com/gentoo/gentoo/pull/38287
Signed-off-by: Andrew Ammerlaan  gentoo.org>

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

diff --git a/eclass/kernel-build.eclass b/eclass/kernel-build.eclass
index 6406f5b3c0f3..be02920162f4 100644
--- a/eclass/kernel-build.eclass
+++ b/eclass/kernel-build.eclass
@@ -625,18 +625,6 @@ kernel-build_merge_configs() {
CONFIG_MODULE_SIG_FORCE=y
CONFIG_MODULE_SIG_${MODULES_SIGN_HASH^^}=y
EOF
-   if [[ -n ${MODULES_SIGN_KEY_CONTENTS} ]]; then
-   (umask 066 && touch "${T}/kernel_key.pem" || die)
-   echo "${MODULES_SIGN_KEY_CONTENTS}" > 
"${T}/kernel_key.pem" || die
-   unset MODULES_SIGN_KEY_CONTENTS
-   export MODULES_SIGN_KEY="${T}/kernel_key.pem"
-   fi
-   if [[ ${MODULES_SIGN_KEY} == pkcs11:* || -r ${MODULES_SIGN_KEY} 
]]; then
-   echo "CONFIG_MODULE_SIG_KEY=\"${MODULES_SIGN_KEY}\"" \
-   >> "${WORKDIR}/modules-sign-key.config"
-   elif [[ -n ${MODULES_SIGN_KEY} ]]; then
-   die "MODULES_SIGN_KEY=${MODULES_SIGN_KEY} not found or 
not readable!"
-   fi
merge_configs+=( "${WORKDIR}/modules-sign.config" )
fi
 
@@ -657,7 +645,19 @@ kernel-build_merge_configs() {
fi
 
if [[ ${KERNEL_IUSE_MODULES_SIGN} ]] && use modules-sign; then
-   merge_configs+=( "${WORKDIR}/modules-sign-key.config" )
+   if [[ -n ${MODULES_SIGN_KEY_CONTENTS} ]]; then
+   (umask 066 && touch "${T}/kernel_key.pem" || die)
+   echo "${MODULES_SIGN_KEY_CONTENTS}" > 
"${T}/kernel_key.pem" || die
+   unset MODULES_SIGN_KEY_CONTENTS
+   export MODULES_SIGN_KEY="${T}/kernel_key.pem"
+   fi
+   if [[ ${MODULES_SIGN_KEY} == pkcs11:* || -r ${MODULES_SIGN_KEY} 
]]; then
+   echo "CONFIG_MODULE_SIG_KEY=\"${MODULES_SIGN_KEY}\"" \
+   >> "${WORKDIR}/modules-sign-key.config"
+   merge_configs+=( "${WORKDIR}/modules-sign-key.config" )
+   elif [[ -n ${MODULES_SIGN_KEY} ]]; then
+   die "MODULES_SIGN_KEY=${MODULES_SIGN_KEY} not found or 
not readable!"
+   fi
fi
 
if [[ ${#user_configs[@]} -gt 0 ]]; then



[gentoo-commits] repo/gentoo:master commit in: eclass/

2024-08-24 Thread Jason Zaman
commit: 75d12a333e1866ad6affa62b95fe88be48f5b118
Author: Rahul Sandhu  sandhuservices  dev>
AuthorDate: Fri Aug  2 19:37:54 2024 +
Commit: Jason Zaman  gentoo  org>
CommitDate: Sun Aug 25 00:48:19 2024 +
URL:https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=75d12a33

selinux-policy-2.eclass: Load unconfined module for mcs/mls policy types

Currently, there doesn't seem to be a reason to block the loading of
the unconfined policy module on the mcs and mls policy types. Let's
ensure we load the unconfined policy module unconditionally in the
eclass.

The loading of the unconfined policy module was initially blocked in
82e30f21ab85b6de3ebc45ae10b28b9bd280e4a1, however as far as I can tell,
there is no longer a reason to do this. Considering there are use flags
for sec-policy/selinux-base and sec-policy/selinux-base-policy for the
unconfined policy module, and using the unconfined policy module is
supported for the mcs and mls policy types, it makes sense to no longer
block the loading of the policy module. It is also worth mentioning
that grabbing an selinux stage3 has the unconfined policy module
already loaded.

As the strict policy is effectively the targeted policy without support
for the unconfined domain, it makes sense to not load the unconfined
module for strict policy types. Let's keep a conitional check for the
strict policy to ensure we don't load the unconfined module in that
case.

Closes: https://bugs.gentoo.org/933709
Closes: https://github.com/gentoo/gentoo/pull/37931
Signed-off-by: Rahul Sandhu  sandhuservices.dev>
Signed-off-by: Jason Zaman  gentoo.org>

 eclass/selinux-policy-2.eclass | 12 
 1 file changed, 4 insertions(+), 8 deletions(-)

diff --git a/eclass/selinux-policy-2.eclass b/eclass/selinux-policy-2.eclass
index ad760673cab1..e7d6cd9a9e5f 100644
--- a/eclass/selinux-policy-2.eclass
+++ b/eclass/selinux-policy-2.eclass
@@ -1,4 +1,4 @@
-# Copyright 1999-2023 Gentoo Authors
+# Copyright 1999-2024 Gentoo Authors
 # Distributed under the terms of the GNU General Public License v2
 
 # Eclass for installing SELinux policy, and optionally
@@ -260,13 +260,9 @@ selinux-policy-2_pkg_postinst() {
local COMMAND
 
for i in ${POLICY_TYPES}; do
-   if [[ "${MODS}" = "unconfined" ]]; then
-   case ${i} in
-   strict|mcs|mls)
-   einfo "Ignoring loading of unconfined module in 
${i} module store.";
-   continue
-   ;;
-   esac
+   if [[ "${i}" == "strict" ]] && [[ "${MODS}" = "unconfined" ]]; 
then
+   einfo "Ignoring loading of unconfined module in strict 
module store.";
+   continue;
fi
 
einfo "Inserting the following modules into the $i module 
store: ${MODS}"



[gentoo-commits] repo/gentoo:master commit in: eclass/

2024-08-23 Thread Michał Górny
commit: 74140c80f76f27c6f3a67103914498f33a0da8ae
Author: Michał Górny  gentoo  org>
AuthorDate: Wed Aug 21 15:22:42 2024 +
Commit: Michał Górny  gentoo  org>
CommitDate: Fri Aug 23 19:25:40 2024 +
URL:https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=74140c80

kernel-build.eclass: Merge two ifs in kernel-build_merge_configs()

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

 eclass/kernel-build.eclass | 44 +---
 1 file changed, 21 insertions(+), 23 deletions(-)

diff --git a/eclass/kernel-build.eclass b/eclass/kernel-build.eclass
index 1eac9433b65c..6406f5b3c0f3 100644
--- a/eclass/kernel-build.eclass
+++ b/eclass/kernel-build.eclass
@@ -616,30 +616,28 @@ kernel-build_merge_configs() {
 
local merge_configs=( "${@}" )
 
-   if [[ ${KERNEL_IUSE_MODULES_SIGN} ]]; then
-   if use modules-sign; then
-   : "${MODULES_SIGN_HASH:=sha512}"
-   cat <<-EOF > "${WORKDIR}/modules-sign.config" || die
-   ## Enable module signing
-   CONFIG_MODULE_SIG=y
-   CONFIG_MODULE_SIG_ALL=y
-   CONFIG_MODULE_SIG_FORCE=y
-   CONFIG_MODULE_SIG_${MODULES_SIGN_HASH^^}=y
-   EOF
-   if [[ -n ${MODULES_SIGN_KEY_CONTENTS} ]]; then
-   (umask 066 && touch "${T}/kernel_key.pem" || 
die)
-   echo "${MODULES_SIGN_KEY_CONTENTS}" > 
"${T}/kernel_key.pem" || die
-   unset MODULES_SIGN_KEY_CONTENTS
-   export MODULES_SIGN_KEY="${T}/kernel_key.pem"
-   fi
-   if [[ ${MODULES_SIGN_KEY} == pkcs11:* || -r 
${MODULES_SIGN_KEY} ]]; then
-   echo 
"CONFIG_MODULE_SIG_KEY=\"${MODULES_SIGN_KEY}\"" \
-   >> "${WORKDIR}/modules-sign-key.config"
-   elif [[ -n ${MODULES_SIGN_KEY} ]]; then
-   die "MODULES_SIGN_KEY=${MODULES_SIGN_KEY} not 
found or not readable!"
-   fi
-   merge_configs+=( "${WORKDIR}/modules-sign.config" )
+   if [[ ${KERNEL_IUSE_MODULES_SIGN} ]] && use modules-sign; then
+   : "${MODULES_SIGN_HASH:=sha512}"
+   cat <<-EOF > "${WORKDIR}/modules-sign.config" || die
+   ## Enable module signing
+   CONFIG_MODULE_SIG=y
+   CONFIG_MODULE_SIG_ALL=y
+   CONFIG_MODULE_SIG_FORCE=y
+   CONFIG_MODULE_SIG_${MODULES_SIGN_HASH^^}=y
+   EOF
+   if [[ -n ${MODULES_SIGN_KEY_CONTENTS} ]]; then
+   (umask 066 && touch "${T}/kernel_key.pem" || die)
+   echo "${MODULES_SIGN_KEY_CONTENTS}" > 
"${T}/kernel_key.pem" || die
+   unset MODULES_SIGN_KEY_CONTENTS
+   export MODULES_SIGN_KEY="${T}/kernel_key.pem"
+   fi
+   if [[ ${MODULES_SIGN_KEY} == pkcs11:* || -r ${MODULES_SIGN_KEY} 
]]; then
+   echo "CONFIG_MODULE_SIG_KEY=\"${MODULES_SIGN_KEY}\"" \
+   >> "${WORKDIR}/modules-sign-key.config"
+   elif [[ -n ${MODULES_SIGN_KEY} ]]; then
+   die "MODULES_SIGN_KEY=${MODULES_SIGN_KEY} not found or 
not readable!"
fi
+   merge_configs+=( "${WORKDIR}/modules-sign.config" )
fi
 
# Only semi-related but let's use that to avoid changing stable ebuilds.



[gentoo-commits] repo/gentoo:master commit in: eclass/

2024-08-23 Thread Michał Górny
commit: e290c3c78b7acb59393f46d1d15175d6dbfc77da
Author: Michał Górny  gentoo  org>
AuthorDate: Wed Aug 21 15:19:07 2024 +
Commit: Michał Górny  gentoo  org>
CommitDate: Fri Aug 23 19:25:40 2024 +
URL:https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=e290c3c7

kernel-build.eclass: Apply savedconfig on top of merged configs

Move applying savedconfig from src_configure() into
kernel-build_merge_configs(), in order to make it possible to override
saved config options.  Previously, the saved config would
unconditionally overwrite everything, which could be between
inconvenient and plain broken (particularly if savedconfig contained
signing key paths referring to ${T}).

The new logic applies saved config via merge method, on top
of the default config along with ebuild and eclass overrides.  However,
MODULES_SIGN_KEY* and user config snippets do override saved config
for convenience.

Closes: https://bugs.gentoo.org/938130
Signed-off-by: Michał Górny  gentoo.org>

 eclass/kernel-build.eclass | 30 +-
 1 file changed, 21 insertions(+), 9 deletions(-)

diff --git a/eclass/kernel-build.eclass b/eclass/kernel-build.eclass
index c4f3db0028a9..1eac9433b65c 100644
--- a/eclass/kernel-build.eclass
+++ b/eclass/kernel-build.eclass
@@ -167,8 +167,8 @@ kernel-build_pkg_setup() {
 
 # @FUNCTION: kernel-build_src_configure
 # @DESCRIPTION:
-# Prepare the toolchain for building the kernel, get the default .config
-# or restore savedconfig, and get build tree configured for modprep.
+# Prepare the toolchain for building the kernel, get the .config file,
+# and get build tree configured for modprep.
 kernel-build_src_configure() {
debug-print-function ${FUNCNAME} "${@}"
 
@@ -243,7 +243,6 @@ kernel-build_src_configure() {
MAKEARGS+=( KBZIP2="lbzip2" )
fi
 
-   restore_config .config
[[ -f .config ]] || die "Ebuild error: please copy default config into 
.config"
 
if [[ -z "${KV_LOCALVERSION}" ]]; then
@@ -594,11 +593,15 @@ kernel-build_pkg_postinst() {
 # @FUNCTION: kernel-build_merge_configs
 # @USAGE: [distro.config...]
 # @DESCRIPTION:
-# Merge the config files specified as arguments (if any) into
-# the '.config' file in the current directory, then merge
-# any user-supplied configs from ${BROOT}/etc/kernel/config.d/*.config.
-# The '.config' file must exist already and contain the base
-# configuration.
+# Merge kernel config files.  The following is merged onto the '.config'
+# file in the current directory, in order:
+#
+# 1. Config files specified as arguments.
+# 2. Default module signing and compression configuration
+#(if applicable).
+# 3. Config saved via USE=savedconfig (if applicable).
+# 4. Module signing key specified via MODULES_SIGN_KEY* variables.
+# 5. User-supplied configs from ${BROOT}/etc/kernel/config.d/*.config.
 kernel-build_merge_configs() {
debug-print-function ${FUNCNAME} "${@}"
 
@@ -631,7 +634,7 @@ kernel-build_merge_configs() {
fi
if [[ ${MODULES_SIGN_KEY} == pkcs11:* || -r 
${MODULES_SIGN_KEY} ]]; then
echo 
"CONFIG_MODULE_SIG_KEY=\"${MODULES_SIGN_KEY}\"" \
-   >> "${WORKDIR}/modules-sign.config"
+   >> "${WORKDIR}/modules-sign-key.config"
elif [[ -n ${MODULES_SIGN_KEY} ]]; then
die "MODULES_SIGN_KEY=${MODULES_SIGN_KEY} not 
found or not readable!"
fi
@@ -650,6 +653,15 @@ kernel-build_merge_configs() {
merge_configs+=( "${WORKDIR}/module-compress.config" )
fi
 
+   restore_config "${WORKDIR}/savedconfig.config"
+   if [[ -f ${WORKDIR}/savedconfig.config ]]; then
+   merge_configs+=( "${WORKDIR}/savedconfig.config" )
+   fi
+
+   if [[ ${KERNEL_IUSE_MODULES_SIGN} ]] && use modules-sign; then
+   merge_configs+=( "${WORKDIR}/modules-sign-key.config" )
+   fi
+
if [[ ${#user_configs[@]} -gt 0 ]]; then
elog "User config files are being applied:"
local x



[gentoo-commits] repo/gentoo:master commit in: eclass/

2024-08-22 Thread Andreas Sturmlechner
commit: 62094b61a04d451e30bbc6e71351d6dab9592976
Author: Andreas Sturmlechner  gentoo  org>
AuthorDate: Thu Aug 22 16:59:35 2024 +
Commit: Andreas Sturmlechner  gentoo  org>
CommitDate: Thu Aug 22 16:59:35 2024 +
URL:https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=62094b61

ecm-common.eclass: Fix inverted logic in pkg_setup() re KFMIN

Closes: https://bugs.gentoo.org/938312
Signed-off-by: Andreas Sturmlechner  gentoo.org>

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

diff --git a/eclass/ecm-common.eclass b/eclass/ecm-common.eclass
index 460d702dea1f..63a23878c6f5 100644
--- a/eclass/ecm-common.eclass
+++ b/eclass/ecm-common.eclass
@@ -325,7 +325,7 @@ ecm-common-check_deps() {
 # preferring KF6.  The result is stored in _KFSLOT, which is then handed
 # to CMakeLists.txt as KFSLOT var for further use.
 ecm-common_pkg_setup() {
-   $(ver_test ${KFMIN} -lt 5.240) && return
+   $(ver_test ${KFMIN} -ge 5.240) && return
 
if has_version -b "kde-frameworks/ki18n:6" && {
! in_iuse handbook || {



[gentoo-commits] repo/gentoo:master commit in: eclass/

2024-08-22 Thread Michał Górny
commit: 4e03f65e4c9db309db56bf5854e8cbf3d3d58696
Author: Michał Górny  gentoo  org>
AuthorDate: Thu Aug 22 11:15:54 2024 +
Commit: Michał Górny  gentoo  org>
CommitDate: Thu Aug 22 11:23:32 2024 +
URL:https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=4e03f65e

llvm.org.eclass: Add 20.0.0_pre20240822 snapshot

Signed-off-by: Michał Górny  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 4b49d35a542b..b3a22634f2e1 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
+   20.0.0_pre20240822)
+   
EGIT_COMMIT=503907dc505db1e439e7061113bf84dd105f2e35
+   ;;
20.0.0_pre20240815)

EGIT_COMMIT=db8ef6188cbbe2125e6d60bdef77a535105772df
;;



[gentoo-commits] repo/gentoo:master commit in: eclass/

2024-08-21 Thread Andreas Sturmlechner
commit: 595921bcb8fb5914b4b9ffecd5e24f3c235bdb63
Author: Andreas Sturmlechner  gentoo  org>
AuthorDate: Tue Aug 20 15:34:54 2024 +
Commit: Andreas Sturmlechner  gentoo  org>
CommitDate: Wed Aug 21 21:16:31 2024 +
URL:https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=595921bc

gear.kde.org.eclass: Drop obsolete SLOT 5 blockers

Signed-off-by: Andreas Sturmlechner  gentoo.org>

 eclass/gear.kde.org.eclass | 2 --
 1 file changed, 2 deletions(-)

diff --git a/eclass/gear.kde.org.eclass b/eclass/gear.kde.org.eclass
index eb05b406a7ae..8089cbb53bf7 100644
--- a/eclass/gear.kde.org.eclass
+++ b/eclass/gear.kde.org.eclass
@@ -94,7 +94,6 @@ if $(ver_test -gt 24.01.75); then
dragon | \
elisa | \
eventviews | \
-   ffmpegthumbs | \
filelight | \
granatier | \
grantlee-editor | \
@@ -268,7 +267,6 @@ if $(ver_test -gt 24.07.75); then
case ${PN} in
k3b | \
kde-dev-scripts | \
-   kdesdk-thumbnailers | \
kdevelop | \
kdevelop-php | \
kdevelop-python | \



[gentoo-commits] repo/gentoo:master commit in: eclass/

2024-08-20 Thread Mike Gilbert
commit: 1f2079f01b0276fe5ac6f8d2270f3a2bad32de61
Author: Mike Gilbert  gentoo  org>
AuthorDate: Tue Aug 20 20:16:58 2024 +
Commit: Mike Gilbert  gentoo  org>
CommitDate: Tue Aug 20 20:16:58 2024 +
URL:https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=1f2079f0

eclass: remove marecki from maintainers

Signed-off-by: Mike Gilbert  gentoo.org>

 eclass/lua-single.eclass | 3 +--
 eclass/lua-utils.eclass  | 1 -
 eclass/lua.eclass| 3 +--
 3 files changed, 2 insertions(+), 5 deletions(-)

diff --git a/eclass/lua-single.eclass b/eclass/lua-single.eclass
index 8432df0583bb..ad7075955153 100644
--- a/eclass/lua-single.eclass
+++ b/eclass/lua-single.eclass
@@ -1,10 +1,9 @@
-# Copyright 1999-2023 Gentoo Authors
+# Copyright 1999-2024 Gentoo Authors
 # Distributed under the terms of the GNU General Public License v2
 
 # @ECLASS: lua-single.eclass
 # @MAINTAINER:
 # William Hubbs 
-# Marek Szuba 
 # @AUTHOR:
 # Marek Szuba 
 # Based on python-single-r1.eclass by Michał Górny  et al.

diff --git a/eclass/lua-utils.eclass b/eclass/lua-utils.eclass
index c63ec369c1c2..7272f80d0370 100644
--- a/eclass/lua-utils.eclass
+++ b/eclass/lua-utils.eclass
@@ -4,7 +4,6 @@
 # @ECLASS: lua-utils.eclass
 # @MAINTAINER:
 # William Hubbs 
-# Marek Szuba 
 # @AUTHOR:
 # Marek Szuba 
 # Based on python-utils-r1.eclass by Michał Górny  et al.

diff --git a/eclass/lua.eclass b/eclass/lua.eclass
index bb2e41ef1061..380ec274167c 100644
--- a/eclass/lua.eclass
+++ b/eclass/lua.eclass
@@ -1,10 +1,9 @@
-# Copyright 1999-2023 Gentoo Authors
+# Copyright 1999-2024 Gentoo Authors
 # Distributed under the terms of the GNU General Public License v2
 
 # @ECLASS: lua.eclass
 # @MAINTAINER:
 # William Hubbs 
-# Marek Szuba 
 # @AUTHOR:
 # Marek Szuba 
 # Based on python-r1.eclass by Michał Górny  et al.



[gentoo-commits] repo/gentoo:master commit in: eclass/

2024-08-20 Thread Mike Gilbert
commit: e723fd6d0e2fe4cf134a6c6e064d3faaa77c8339
Author: Mike Gilbert  gentoo  org>
AuthorDate: Sun Aug 18 18:19:23 2024 +
Commit: Mike Gilbert  gentoo  org>
CommitDate: Tue Aug 20 20:06:06 2024 +
URL:https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=e723fd6d

lua-utils.eclass: use BROOT or ESYSROOT where appropriate

The LUA variable points to a lua binary that is likely to be executed by
the build system. Use BROOT for this.

Use ESYSROOT for the pkg-config symlink, since this is likely used for
linking a library.

Signed-off-by: Mike Gilbert  gentoo.org>

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

diff --git a/eclass/lua-utils.eclass b/eclass/lua-utils.eclass
index 0ff36734dc8f..c63ec369c1c2 100644
--- a/eclass/lua-utils.eclass
+++ b/eclass/lua-utils.eclass
@@ -1,4 +1,4 @@
-# Copyright 1999-2023 Gentoo Authors
+# Copyright 1999-2024 Gentoo Authors
 # Distributed under the terms of the GNU General Public License v2
 
 # @ECLASS: lua-utils.eclass
@@ -144,18 +144,18 @@ _lua_wrapper_setup() {
_lua_export "${impl}" ELUA LUA
 
# Lua interpreter
-   ln -s "${EPREFIX}"/usr/bin/${ELUA} "${workdir}"/bin/lua || die
+   ln -s "${LUA}" "${workdir}"/bin/lua || die
 
# Lua compiler, or a stub for it in case of luajit
if [[ ${ELUA} == luajit ]]; then
# Just in case
-   ln -s "${EPREFIX}"/bin/true "${workdir}"/bin/luac || die
+   ln -s "${BROOT}"/bin/true "${workdir}"/bin/luac || die
else
-   ln -s "${EPREFIX}"/usr/bin/${ELUA/a/ac} 
"${workdir}"/bin/luac || die
+   ln -s "${BROOT}"/usr/bin/${ELUA/a/ac} 
"${workdir}"/bin/luac || die
fi
 
# pkg-config
-   ln -s "${EPREFIX}"/usr/$(get_libdir)/pkgconfig/${ELUA}.pc \
+   ln -s "${ESYSROOT}"/usr/$(get_libdir)/pkgconfig/${ELUA}.pc \
"${workdir}"/pkgconfig/lua.pc || die
fi
 
@@ -264,7 +264,7 @@ _lua_export() {
debug-print "${FUNCNAME}: ELUA = ${ELUA}"
;;
LUA)
-   export LUA="${EPREFIX}"/usr/bin/${impl}
+   export LUA="${BROOT}"/usr/bin/${impl}
debug-print "${FUNCNAME}: LUA = ${LUA}"
;;
LUA_CFLAGS)



[gentoo-commits] repo/gentoo:master commit in: eclass/

2024-08-19 Thread Robin H. Johnson
commit: b341ff7d283ccc6186eeb29c21baaa22499baadc
Author: Robin H. Johnson  gentoo  org>
AuthorDate: Mon Aug 19 18:14:45 2024 +
Commit: Robin H. Johnson  gentoo  org>
CommitDate: Mon Aug 19 18:17:33 2024 +
URL:https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=b341ff7d

virtualx.eclass: addpredict /dev/dri/ for Xvfb w/ mesa-24.2.0

Newer Mesa tries to access /dev/dri/ when used in Xvfb, and this
triggers a sandbox error; discovered and verified w/
sci-mathematics/fricas-1.3.11-r2.

Reference: 
https://public-inbox.gentoo.org/gentoo-dev/bb4927ba-5ced-3352-86bb-d87f37ceaab6 
 woodpecker.gentoo.org/T/#t
Signed-off-by: Robin H. Johnson  gentoo.org>

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

diff --git a/eclass/virtualx.eclass b/eclass/virtualx.eclass
index 6e77cd662bdd..f7318eafc59e 100644
--- a/eclass/virtualx.eclass
+++ b/eclass/virtualx.eclass
@@ -113,6 +113,7 @@ virtx() {
export XAUTHORITY=
 
einfo "Starting Xvfb ..."
+   addpredict /dev/dri/ # Needed for Xvfb w/ >=mesa-24.2.0
 
debug-print "${FUNCNAME}: Xvfb -displayfd 1 ${xvfbargs[*]}"
local logfile=${T}/Xvfb.log



[gentoo-commits] repo/gentoo:master commit in: eclass/

2024-08-18 Thread Viorel Munteanu
commit: b1619cb5f7d2fafae4adeaa9b25182eb6f658c17
Author: Viorel Munteanu  gentoo  org>
AuthorDate: Mon Aug 19 05:53:15 2024 +
Commit: Viorel Munteanu  gentoo  org>
CommitDate: Mon Aug 19 06:02:08 2024 +
URL:https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=b1619cb5

toolchain-funcs.eclass: fix detecting ld.bfd

There is some more output from the compiler here.
We must use a regular expression to avoid a false positive from mold.

Acked-by: Sam James  gentoo.org>
Signed-off-by: Viorel Munteanu  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 bc1fb064fc45..5e36fa275dcd 100644
--- a/eclass/toolchain-funcs.eclass
+++ b/eclass/toolchain-funcs.eclass
@@ -472,7 +472,7 @@ tc-ld-is-bfd() {
EOF
out=$($(tc-getCC "$@") ${CFLAGS} ${CPPFLAGS} ${LDFLAGS} -Wl,--version 
"${base}.c" -o "${base}" 2>&1)
rm -f "${base}"*
-   if [[ ${out} != "GNU ld"* ]] ; then
+   if [[ ! ${out} =~ .*^"GNU ld".* ]] ; then
return 1
fi
 



[gentoo-commits] repo/gentoo:master commit in: eclass/

2024-08-18 Thread Arsen Arsenović
commit: 944c392114cd791967cd722b7cd20a67b91f7165
Author: Arsen Arsenović  gentoo  org>
AuthorDate: Sat Apr  8 19:51:19 2023 +
Commit: Arsen Arsenović  gentoo  org>
CommitDate: Sun Aug 18 17:43:15 2024 +
URL:https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=944c3921

guile-utils.eclass: new eclass, common code for guile packages

Bug: https://bugs.gentoo.org/689408
Signed-off-by: Arsen Arsenović  gentoo.org>

 eclass/guile-utils.eclass | 275 ++
 1 file changed, 275 insertions(+)

diff --git a/eclass/guile-utils.eclass b/eclass/guile-utils.eclass
new file mode 100644
index ..3f122f63a36f
--- /dev/null
+++ b/eclass/guile-utils.eclass
@@ -0,0 +1,275 @@
+# Copyright 2023-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+# @ECLASS: guile-utils.eclass
+# @MAINTAINER:
+# Gentoo Scheme project 
+# @AUTHOR:
+# Author: Arsen Arsenović 
+# Inspired by prior work in the Gentoo Python ecosystem.
+# @BLURB: Common code between GNU Guile-related eclasses and ebuilds.
+# @SUPPORTED_EAPIS: 8
+# @DESCRIPTION:
+# This eclass contains various bits of common code between
+# dev-scheme/guile, Guile multi-implementation ebuilds and Guile
+# single-implementation ebuilds.
+
+case "${EAPI}" in
+   8) ;;
+   *) die "${ECLASS}: EAPI ${EAPI:-0} not supported" ;;
+esac
+
+if [[ ! "${_GUILE_UTILS_ECLASS}" ]]; then
+_GUILE_UTILS_ECLASS=1
+
+inherit toolchain-funcs
+
+BDEPEND="virtual/pkgconfig"
+
+# @ECLASS_VARIABLE: GUILE_COMPAT
+# @REQUIRED
+# @PRE_INHERIT
+# @DESCRIPTION:
+# List of acceptable versions of Guile.  For instance, setting this
+# variable like below will allow the package to be built against either
+# Guile 2.2 or 3.0:
+#
+# @CODE
+# GUILE_COMPAT=( 2-2 3-0 )
+# @CODE
+#
+# Please keep in ascending order.
+
+# @FUNCTION: guile_check_compat
+# @DESCRIPTION:
+# Checks that GUILE_COMPAT is set to an array, and has no invalid
+# values.
+guile_check_compat() {
+   debug-print-function ${FUNCNAME} "${@}"
+
+   if ! [[ ${GUILE_COMPAT@a} == *a* ]]; then
+   die "GUILE_COMPAT not set to an array"
+   fi
+
+   if [[ ${#GUILE_COMPAT[@]} -eq 0 ]]; then
+   die "GUILE_COMPAT is empty"
+   fi
+}
+
+guile_check_compat
+
+# @ECLASS_VARIABLE: GUILE_REQ_USE
+# @PRE_INHERIT
+# @DEFAULT_UNSET
+# @DESCRIPTION:
+# Specifies a USE dependency string for all versions of Guile in
+# GUILE_COMPAT.
+#
+# @EXAMPLE:
+# GUILE_REQ_USE="deprecated"
+
+# @ECLASS_VARIABLE: GUILE_USEDEP
+# @OUTPUT_VARIABLE
+# @DESCRIPTION:
+# This variable is populated with a USE-dependency string which can be
+# used to depend on other Guile multi-implementation packages.
+# This variable is not usable from guile-single packages.
+
+# @ECLASS_VARIABLE: GUILE_DEPS
+# @OUTPUT_VARIABLE
+# @DESCRIPTION:
+# Contains the dependency string for the compatible Guile runtimes.
+
+# @FUNCTION: guile_set_common_vars
+# @DESCRIPTION:
+# Sets common variables that apply to all Guile packages, namely,
+# QA_PREBUILT.
+guile_set_common_vars() {
+   debug-print-function ${FUNCNAME} "${@}"
+
+   # These aren't strictly speaking prebuilt. but they do generated a
+   # nonstandard ELF object.
+   if [[ -z ${QA_PREBUILT} ]]; then
+   QA_PREBUILT="usr/$(get_libdir)/guile/*/site-ccache/*"
+   fi
+}
+
+# @FUNCTION: guile_filter_pkgconfig_path
+# @USAGE: ...
+# @DESCRIPTION:
+# Alters ${PKG_CONFIG_PATH} such that it does not contain any Guile
+# slots besides the ones required by the caller.
+guile_filter_pkgconfig_path() {
+   debug-print-function ${FUNCNAME} "${@}"
+
+   local filtered_path= unfiltered_path path
+   IFS=: read -ra unfiltered_path <<<"${PKG_CONFIG_PATH}"
+   debug-print "Unfiltered PKG_CONFIG_PATH:" "${unfiltered_path[@]}"
+   for p in "${unfiltered_path[@]}"; do
+   for v in "$@"; do
+   debug-print "... considering '${p}' for ${v}"
+   # Exclude non-selected versions.
+   [[ ${p} == */usr/share/guile-data/${v}/pkgconfig* ]] \
+   || continue
+   debug-print "... OK"
+
+   # Add separator, if some data already exists.
+   [[ "${filtered_path}" ]] && filtered_path+=:
+
+   filtered_path+="${p}"
+   break
+   done
+   done
+
+   debug-print "${FUNCNAME}: Constructed PKG_CONFIG_PATH: ${filtered_path}"
+   PKG_CONFIG_PATH="$filtered_path"
+}
+
+# @FUNCTION: guile_generate_depstrings
+# @USAGE:  
+# @DESCRIPTION:
+# Generates GUILE_REQUIRED_USE/GUILE_DEPS/GUILE_USEDEP based on
+# GUILE_COMPAT, and populates IUSE.
+guile_generate_depstrings() {
+   debug-print-function ${FUNCNAME} "${@}"
+
+   # Generate IUSE, REQUIRED_USE, GUILE_USEDEP
+   local prefix="$1" depop="$2"
+   GUILE_USEDEP=""
+   local ver uses=()
+  

[gentoo-commits] repo/gentoo:master commit in: eclass/

2024-08-18 Thread Arsen Arsenović
commit: 92aece1db30a92b83126d8e13dff1ae816cff5b1
Author: Arsen Arsenović  gentoo  org>
AuthorDate: Sun Apr  9 13:03:35 2023 +
Commit: Arsen Arsenović  gentoo  org>
CommitDate: Sun Aug 18 17:43:15 2024 +
URL:https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=92aece1d

guile.eclass: new eclass, for guile multi-impl packages

Bug: https://bugs.gentoo.org/689408
Signed-off-by: Arsen Arsenović  gentoo.org>

 eclass/guile.eclass | 358 
 1 file changed, 358 insertions(+)

diff --git a/eclass/guile.eclass b/eclass/guile.eclass
new file mode 100644
index ..d487d765e86a
--- /dev/null
+++ b/eclass/guile.eclass
@@ -0,0 +1,358 @@
+# Copyright 2023-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+# @ECLASS: guile.eclass
+# @PROVIDES: guile-utils
+# @MAINTAINER:
+# Gentoo Scheme project 
+# @AUTHOR:
+# Author: Arsen Arsenović 
+# Inspired by prior work in the Gentoo Python ecosystem.
+# @SUPPORTED_EAPIS: 8
+# @BLURB: Utilities for packages multi-implementation Guile packages.
+# @DESCRIPTION:
+# This eclass facilitates building against many Guile implementations,
+# useful for Guile libraries.  Each ebuild must set GUILE_COMPAT to a
+# list of versions they support, which will be intersected with
+# GUILE_TARGETS to pick which versions to install.  The eclass will
+# generate a GUILE_DEPS based on the configured GUILE_COMPAT, as well as
+# a GUILE_REQUIRED_USE, that the user must use.
+#
+# If the user of the eclass needs some USE flag on Guile itself, they
+# should provide it via GUILE_REQ_USE.
+#
+# This ebuild provides multibuild functionality.  Use guile_foreach_impl
+# to run a given command for each enabled Guile version.  The command
+# provided will be ran in a modified environment, see the description of
+# that function for more details.
+#
+# This package provides some stage functions written assuming a
+# conventional GNU Build System-based Guile library and may or may not
+# work.
+#
+# For each Guile target, a Guile library should have at least compiled
+# .go files in the ccache or %site-ccache-dir.  It must also have
+# corresponding sources installed in %site-dir.
+#
+# If your package has some steps that should only happen for one
+# implementation (e.g. installing a program), you can utilize
+# guile_for_best_impl.
+#
+# Due to http://debbugs.gnu.org/cgi/bugreport.cgi?bug=38112, Guile
+# packages ought to bump their sources before building.  To this end,
+# the src_prepare this eclass provides will call guile_bump_sources of
+# the guile-utils eclass.
+#
+# When installing, the packages using this eclass ought to use
+# guile_foreach_impl and its SLOTTED_{,E}D, followed by merging roots
+# via guile_merge_roots and unstripping ccache objects via
+# guile_unstrip_ccache.  See descriptions of those functions for
+# details.
+#
+# Ebuild authors, please pay attention for potential conflicts between
+# slots.  As an example, dev-scheme/guile-lib installs a pkg-config file
+# that depends on the Guile version it is installed for.  This is not
+# acceptable, as it means revdeps will only ever see the version of the
+# file for the best Guile implementation in GUILE_TARGETS.
+#
+# @EXAMPLE:
+# The following example demonstrates a simple package relying entirely
+# on the setup of this eclass.  For each enabled, compatible target, the
+# ebuild will bump sources (see description), and run the default
+# configure, compile and test stages (per PMS, meaning GNU Build
+# System), and an install stage modified such that it installs each
+# variant into SLOTTED_D followed by merging roots and unstripping.
+#
+# @CODE
+# EAPI=8
+#
+# GUILE_COMPAT=( 2-2 3-0 )
+# inherit guile
+#
+# DESCRIPTION="iCalendar/vCard parser for GNU Guile"
+# HOMEPAGE="https://github.com/artyom-poptsov/guile-ics";
+# 
SRC_URI="https://github.com/artyom-poptsov/${PN}/releases/download/v${PV}/${P}.tar.gz";
+#
+# LICENSE="GPL-3+"
+# SLOT="0"
+# KEYWORDS="~amd64"
+# REQUIRED_USE="${GUILE_REQUIRED_USE}"
+#
+# RDEPEND="
+#  ${GUILE_DEPS}
+#  dev-scheme/guile-smc[${GUILE_USEDEP}]
+# "
+# DEPEND="${RDEPEND}"
+# @CODE
+
+case "${EAPI}" in
+   8) ;;
+   *) die "${ECLASS}: EAPI ${EAPI:-0} not supported" ;;
+esac
+
+if [[ ! "${_GUILE_ECLASS}" ]]; then
+_GUILE_ECLASS=1
+
+inherit guile-utils multibuild
+
+# @ECLASS_VARIABLE: GUILE_USEDEP
+# @OUTPUT_VARIABLE
+# @DESCRIPTION:
+# USE dependency string that can be applied to Guile
+# multi-implementation dependencies.
+#
+# @EXAMPLE:
+# RDEPEND="
+#  ${GUILE_DEPS}
+#  dev-scheme/bytestructures[${GUILE_USEDEP}]
+#  >=dev-libs/libgit2-1:=
+# "
+# DEPEND="${RDEPEND}"
+
+# @ECLASS_VARIABLE: GUILE_COMPAT
+# @REQUIRED
+# @PRE_INHERIT
+# @DESCRIPTION:
+# List of acceptable versions of Guile.  For instance, setting this
+# variable like below will allow the package to be built against both
+# Guile 2.2 or 3.0:
+#
+# @CODE
+# GUILE_COMPAT=( 2-2 3-0 )
+# @

[gentoo-commits] repo/gentoo:master commit in: eclass/

2024-08-16 Thread Sam James
commit: 83344561685a21cf36b2349b94f3a579537a506d
Author: Sam James  gentoo  org>
AuthorDate: Fri Aug 16 16:42:19 2024 +
Commit: Sam James  gentoo  org>
CommitDate: Fri Aug 16 17:21:22 2024 +
URL:https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=83344561

toolchain-funcs.eclass: tc-ld-force-bfd: mangle CFLAGS, CXXFLAGS too

This is kind of related to what Ionen mentioned at 
https://github.com/gentoo/gentoo/pull/28355#discussion_r1033001927
but a bit different.

Makefile rules are inconsistent, as are users, and -fuse-ld= might appear
in C{,XX}FLAGS, not just LDFLAGS.

Append -fuse-ld=bfd there too if asked to force bfd. This might
cause problems with Clang because the argument is unused. See the
mess in ddba1d149e82dba88b72f992729ad4158f640e32.

Not having flag-o-matic here makes things a bit awkward. Let's try
the naive approach first because it seemed OK for me with Clang
with a quick test.

Signed-off-by: Sam James  gentoo.org>

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

diff --git a/eclass/toolchain-funcs.eclass b/eclass/toolchain-funcs.eclass
index 5c15f4fb93a1..bc1fb064fc45 100644
--- a/eclass/toolchain-funcs.eclass
+++ b/eclass/toolchain-funcs.eclass
@@ -615,6 +615,8 @@ tc-ld-force-bfd() {
 
# Set up LDFLAGS to select bfd based on the gcc / clang version.
if tc-is-gcc || tc-is-clang ; then
+   export CFLAGS="${CFLAGS} -fuse-ld=bfd"
+   export CXXFLAGS="${CXXFLAGS} -fuse-ld=bfd"
export LDFLAGS="${LDFLAGS} -fuse-ld=bfd"
fi
 }



[gentoo-commits] repo/gentoo:master commit in: eclass/

2024-08-16 Thread Sam James
commit: 3c2c0e0c0e7630ff0df17728f40116a95c1f52d4
Author: Sam James  gentoo  org>
AuthorDate: Fri Aug 16 16:18:39 2024 +
Commit: Sam James  gentoo  org>
CommitDate: Fri Aug 16 17:21:20 2024 +
URL:https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=3c2c0e0c

toolchain-funcs.eclass: use generic filename for linker test

At https://github.com/gentoo/gentoo/pull/28355#discussion_r1089883885, juippis
points out that for mold, the test might be confused. Let's consistently
use 'linker' instead.

Signed-off-by: Sam James  gentoo.org>

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

diff --git a/eclass/toolchain-funcs.eclass b/eclass/toolchain-funcs.eclass
index 2d65c3fdc146..563eb5e191cf 100644
--- a/eclass/toolchain-funcs.eclass
+++ b/eclass/toolchain-funcs.eclass
@@ -466,7 +466,7 @@ tc-ld-is-bfd() {
# Then see if they're selecting bfd via compiler flags.
# Note: We're assuming they're using LDFLAGS to hold the
# options and not CFLAGS/CXXFLAGS.
-   local base="${T}/test-tc-bfd"
+   local base="${T}/test-tc-linker"
cat <<-EOF > "${base}.c"
int main(void) { return 0; }
EOF
@@ -501,7 +501,7 @@ tc-ld-is-gold() {
# Then see if they're selecting gold via compiler flags.
# Note: We're assuming they're using LDFLAGS to hold the
# options and not CFLAGS/CXXFLAGS.
-   local base="${T}/test-tc-gold"
+   local base="${T}/test-tc-linker"
cat <<-EOF > "${base}.c"
int main(void) { return 0; }
EOF
@@ -534,7 +534,7 @@ tc-ld-is-lld() {
# Then see if they're selecting lld via compiler flags.
# Note: We're assuming they're using LDFLAGS to hold the
# options and not CFLAGS/CXXFLAGS.
-   local base="${T}/test-tc-lld"
+   local base="${T}/test-tc-linker"
cat <<-EOF > "${base}.c"
int main(void) { return 0; }
EOF
@@ -568,7 +568,7 @@ tc-ld-is-mold() {
# Then see if they're selecting mold via compiler flags.
# Note: We're assuming they're using LDFLAGS to hold the
# options and not CFLAGS/CXXFLAGS.
-   local base="${T}/test-tc-mold"
+   local base="${T}/test-tc-linker"
cat <<-EOF > "${base}.c"
int main(void) { return 0; }
EOF



[gentoo-commits] repo/gentoo:master commit in: eclass/

2024-08-16 Thread Sam James
commit: 2d141fdf8928615cb394cc7da03c2299a69c612e
Author: Sam James  gentoo  org>
AuthorDate: Mon Nov 21 04:02:47 2022 +
Commit: Sam James  gentoo  org>
CommitDate: Fri Aug 16 17:21:19 2024 +
URL:https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=2d141fdf

toolchain-funcs.eclass: fix tc-ld-force-bfd returning early for unknown linkers

For say, mold, until now tc-ld-force-bfd actually didn't work, because
it bailed early if not lld and not gold (assuming the linker was therefore bfd).

Closes: https://bugs.gentoo.org/877539
Signed-off-by: Sam James  gentoo.org>

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

diff --git a/eclass/toolchain-funcs.eclass b/eclass/toolchain-funcs.eclass
index d54175cf992f..da8c24257ae0 100644
--- a/eclass/toolchain-funcs.eclass
+++ b/eclass/toolchain-funcs.eclass
@@ -594,11 +594,10 @@ tc-ld-disable-gold() {
 # @FUNCTION: tc-ld-force-bfd
 # @USAGE: [toolchain prefix]
 # @DESCRIPTION:
-# If the gold or lld linker is currently selected, configure the compilation
+# If a linker other than bfd is currently selected, configure the compilation
 # settings so that we use the bfd linker instead.
 tc-ld-force-bfd() {
-   if ! tc-ld-is-gold "$@" && ! tc-ld-is-lld "$@" ; then
-   # They aren't using gold or lld, so nothing to do!
+   if tc-ld-is-bfd "$@" ; then
return
fi
 



[gentoo-commits] repo/gentoo:master commit in: eclass/

2024-08-16 Thread Sam James
commit: 20aa5cad2e8e11708e33fb679e760859cf808114
Author: Sam James  gentoo  org>
AuthorDate: Mon Nov 21 04:18:44 2022 +
Commit: Sam James  gentoo  org>
CommitDate: Fri Aug 16 17:21:19 2024 +
URL:https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=20aa5cad

toolchain-funcs.eclass: refine tc-ld-force-bfd description

Signed-off-by: Sam James  gentoo.org>

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

diff --git a/eclass/toolchain-funcs.eclass b/eclass/toolchain-funcs.eclass
index da8c24257ae0..61170de616d7 100644
--- a/eclass/toolchain-funcs.eclass
+++ b/eclass/toolchain-funcs.eclass
@@ -595,7 +595,9 @@ tc-ld-disable-gold() {
 # @USAGE: [toolchain prefix]
 # @DESCRIPTION:
 # If a linker other than bfd is currently selected, configure the compilation
-# settings so that we use the bfd linker instead.
+# settings so that we use the bfd linker instead.  This function should not
+# be used for simple underlinking problems.  This function is intended for use
+# when a package is fragile and/or relies on bfd internals.
 tc-ld-force-bfd() {
if tc-ld-is-bfd "$@" ; then
return



[gentoo-commits] repo/gentoo:master commit in: eclass/

2024-08-16 Thread Sam James
commit: 2283662d49266d652f171cd6b75798166a86335b
Author: Sam James  gentoo  org>
AuthorDate: Mon Nov 21 03:59:08 2022 +
Commit: Sam James  gentoo  org>
CommitDate: Fri Aug 16 17:21:18 2024 +
URL:https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=2283662d

toolchain-funcs.eclass: add tc-ld-is-bfd

This matches tc-ld-is-gold and tc-ld-is-lld.

Signed-off-by: Sam James  gentoo.org>

 eclass/toolchain-funcs.eclass | 35 +++
 1 file changed, 35 insertions(+)

diff --git a/eclass/toolchain-funcs.eclass b/eclass/toolchain-funcs.eclass
index 50eb310b4bf1..121280a7f11f 100644
--- a/eclass/toolchain-funcs.eclass
+++ b/eclass/toolchain-funcs.eclass
@@ -447,6 +447,41 @@ econf_build() {
tc-env_build econf_env "$@"
 }
 
+# @FUNCTION: tc-ld-is-bfd
+# @USAGE: [toolchain prefix]
+# @DESCRIPTION:
+# Return true if the current linker is set to GNU bfd.
+tc-ld-is-bfd() {
+   local out
+
+   # Ensure ld output is in English.
+   local -x LC_ALL=C
+
+   # First check the linker directly.
+   out=$($(tc-getLD "$@") --version 2>&1)
+   if [[ ${out} != "GNU ld"* ]] ; then
+   return 1
+   fi
+
+   # Then see if they're selecting bfd via compiler flags.
+   # Note: We're assuming they're using LDFLAGS to hold the
+   # options and not CFLAGS/CXXFLAGS.
+   local base="${T}/test-tc-bfd"
+   cat <<-EOF > "${base}.c"
+   int main(void) { return 0; }
+   EOF
+   out=$($(tc-getCC "$@") ${CFLAGS} ${CPPFLAGS} ${LDFLAGS} -Wl,--version 
"${base}.c" -o "${base}" 2>&1)
+   rm -f "${base}"*
+   if [[ ${out} != "GNU ld"* ]] ; then
+   return 1
+   fi
+
+   # It's bfd!
+   # We use positive logic here unlike tc-ld-is-gold and tc-ld-is-mold
+   # because LD might be bfd even if *FLAGS isn't.
+   return 0
+}
+
 # @FUNCTION: tc-ld-is-gold
 # @USAGE: [toolchain prefix]
 # @DESCRIPTION:



[gentoo-commits] repo/gentoo:master commit in: eclass/

2024-08-16 Thread Sam James
commit: 87168789d59316975dc42b65a198babfbe816192
Author: Sam James  gentoo  org>
AuthorDate: Fri Aug 16 17:01:32 2024 +
Commit: Sam James  gentoo  org>
CommitDate: Fri Aug 16 17:21:21 2024 +
URL:https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=87168789

toolchain-funcs.eclass: _tc-has-openmp: tweak style a bit

Signed-off-by: Sam James  gentoo.org>

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

diff --git a/eclass/toolchain-funcs.eclass b/eclass/toolchain-funcs.eclass
index 563eb5e191cf..5c15f4fb93a1 100644
--- a/eclass/toolchain-funcs.eclass
+++ b/eclass/toolchain-funcs.eclass
@@ -632,8 +632,9 @@ _tc-has-openmp() {
int nthreads, tid, ret = 0;
#pragma omp parallel private(nthreads, tid)
{
-   tid = omp_get_thread_num();
-   nthreads = omp_get_num_threads(); ret += tid + nthreads;
+   tid = omp_get_thread_num();
+   nthreads = omp_get_num_threads();
+   ret += tid + nthreads;
}
return ret;
}



[gentoo-commits] repo/gentoo:master commit in: eclass/

2024-08-16 Thread Sam James
commit: 65060aed1078b800684e8d39f2dcfac6acd7cf99
Author: Sam James  gentoo  org>
AuthorDate: Mon Nov 21 04:13:01 2022 +
Commit: Sam James  gentoo  org>
CommitDate: Fri Aug 16 17:21:20 2024 +
URL:https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=65060aed

toolchain-funcs.eclass: mark tc-ld-disable-gold as deprecated

I don't think this function makes sense in a world with lld and mold.

If there's a bug causing someone to reach for tc-ld-disable-gold,
it falls into one of the following:

1. there's bfdisms (like wine where there's no hope)
   => tc-ld-force-bfd is the correct solution

2. it's a generic problem like underlinking
   => patch the package please, but in extremis or as a temporary workaround,
  tc-ld-force-bfd could be used (but discouraged in this situation)

3. it's a gold bug (i.e. the package is definitely only broken with gold)
   => report the issue upstream or force bfd if the package is truly
  doing something a bit unusual ("the wine case"), but really, given
  gold seems to be rotting away, it doesn't appear likely any bugs
  would get fixed & users shouldn't be enabling it.

I also think tc-ld-disable-gold has been used hastily in the past
for cases like 2, so let's discourage that in deprecating this as well.

Signed-off-by: Sam James  gentoo.org>

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

diff --git a/eclass/toolchain-funcs.eclass b/eclass/toolchain-funcs.eclass
index 61170de616d7..2d65c3fdc146 100644
--- a/eclass/toolchain-funcs.eclass
+++ b/eclass/toolchain-funcs.eclass
@@ -584,6 +584,7 @@ tc-ld-is-mold() {
 
 # @FUNCTION: tc-ld-disable-gold
 # @USAGE: [toolchain prefix]
+# @DEPRECATED: tc-ld-force-bfd
 # @DESCRIPTION:
 # If the gold linker is currently selected, configure the compilation
 # settings so that we use the older bfd linker instead.



[gentoo-commits] repo/gentoo:master commit in: eclass/

2024-08-16 Thread Sam James
commit: 67d76384107dd15f3fa74e4773882fd581c81e40
Author: Sam James  gentoo  org>
AuthorDate: Mon Nov 21 04:05:31 2022 +
Commit: Sam James  gentoo  org>
CommitDate: Fri Aug 16 17:21:18 2024 +
URL:https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=67d76384

toolchain-funcs.eclass: add tc-ld-is-mold

For completeness.

Bug: https://bugs.gentoo.org/877539
Signed-off-by: Sam James  gentoo.org>

 eclass/toolchain-funcs.eclass | 34 ++
 1 file changed, 34 insertions(+)

diff --git a/eclass/toolchain-funcs.eclass b/eclass/toolchain-funcs.eclass
index 121280a7f11f..d54175cf992f 100644
--- a/eclass/toolchain-funcs.eclass
+++ b/eclass/toolchain-funcs.eclass
@@ -548,6 +548,40 @@ tc-ld-is-lld() {
return 1
 }
 
+
+# @FUNCTION: tc-ld-is-mold
+# @USAGE: [toolchain prefix]
+# @DESCRIPTION:
+# Return true if the current linker is set to mold.
+tc-ld-is-mold() {
+   local out
+
+   # Ensure ld output is in English.
+   local -x LC_ALL=C
+
+   # First check the linker directly.
+   out=$($(tc-getLD "$@") --version 2>&1)
+   if [[ ${out} == *"mold"* ]] ; then
+   return 0
+   fi
+
+   # Then see if they're selecting mold via compiler flags.
+   # Note: We're assuming they're using LDFLAGS to hold the
+   # options and not CFLAGS/CXXFLAGS.
+   local base="${T}/test-tc-mold"
+   cat <<-EOF > "${base}.c"
+   int main(void) { return 0; }
+   EOF
+   out=$($(tc-getCC "$@") ${CFLAGS} ${CPPFLAGS} ${LDFLAGS} -Wl,--version 
"${base}.c" -o "${base}" 2>&1)
+   rm -f "${base}"*
+   if [[ ${out} == *"mold"* ]] ; then
+   return 0
+   fi
+
+   # No mold here!
+   return 1
+}
+
 # @FUNCTION: tc-ld-disable-gold
 # @USAGE: [toolchain prefix]
 # @DESCRIPTION:



[gentoo-commits] repo/gentoo:master commit in: eclass/

2024-08-16 Thread Arthur Zamarin
commit: 99889ce76e1f6ed0ec5cb4e3db3a09dce8de1f05
Author: Arthur Zamarin  gentoo  org>
AuthorDate: Fri Aug 16 10:04:42 2024 +
Commit: Arthur Zamarin  gentoo  org>
CommitDate: Fri Aug 16 10:14:35 2024 +
URL:https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=99889ce7

rust-toolchain.eclass: transform sparc64 rust_abi

Signed-off-by: Arthur Zamarin  gentoo.org>

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

diff --git a/eclass/rust-toolchain.eclass b/eclass/rust-toolchain.eclass
index 6ad5c811f6c0..89bca88b9e6b 100644
--- a/eclass/rust-toolchain.eclass
+++ b/eclass/rust-toolchain.eclass
@@ -51,6 +51,7 @@ rust_abi() {
riscv64*gnu)  echo riscv64gc-unknown-linux-gnu;;
riscv64*musl) echo riscv64gc-unknown-linux-musl;;
s390x*)   echo s390x-unknown-linux-gnu;;
+   sparc64*gnu)  echo sparc64-unknown-linux-gnu;;
x86_64*gnu)   echo x86_64-unknown-linux-gnu;;
x86_64*musl)  echo x86_64-unknown-linux-musl;;
*)echo ${CTARGET};;



[gentoo-commits] repo/gentoo:master commit in: eclass/

2024-08-15 Thread Arthur Zamarin
commit: 1533b604e787b2dfdced75dd5b92b50755f54fb7
Author: Arthur Zamarin  gentoo  org>
AuthorDate: Thu Aug 15 17:56:32 2024 +
Commit: Arthur Zamarin  gentoo  org>
CommitDate: Fri Aug 16 05:55:35 2024 +
URL:https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=1533b604

rust-toolchain.eclass: hide glibc bins behind elibc_glibc?

I'm starting to add various bootstrap binaries for musl, so might as
well protect all downloads of glibc only behind "elibc_glibc?" to be
safe just in case.

Signed-off-by: Arthur Zamarin  gentoo.org>

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

diff --git a/eclass/rust-toolchain.eclass b/eclass/rust-toolchain.eclass
index 469479b849b3..6ad5c811f6c0 100644
--- a/eclass/rust-toolchain.eclass
+++ b/eclass/rust-toolchain.eclass
@@ -91,29 +91,27 @@ rust_arch_uri() {
 rust_all_arch_uris()
 {
echo "
-   abi_x86_32? ( $(rust_arch_uri i686-unknown-linux-gnu "$@") )
+   abi_x86_32? ( elibc_glibc? ( $(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? (
+   arm? ( elibc_glibc? (
$(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 "$@") 
)
)
-   ppc? ( $(rust_arch_uri powerpc-unknown-linux-gnu "$@") )
+   ppc? ( elibc_glibc? ( $(rust_arch_uri powerpc-unknown-linux-gnu "$@") ) 
)
ppc64? (
-   big-endian?  ( $(rust_arch_uri powerpc64-unknown-linux-gnu   
"$@") )
-   !big-endian? ( $(rust_arch_uri powerpc64le-unknown-linux-gnu 
"$@") )
-   )
-   riscv? (
-   elibc_glibc? ( $(rust_arch_uri riscv64gc-unknown-linux-gnu 
"$@") )
+   big-endian?  ( elibc_glibc? ( $(rust_arch_uri 
powerpc64-unknown-linux-gnu   "$@") ) )
+   !big-endian? ( elibc_glibc? ( $(rust_arch_uri 
powerpc64le-unknown-linux-gnu "$@") ) )
)
-   s390?  ( $(rust_arch_uri s390x-unknown-linux-gnu "$@") )
+   riscv? ( elibc_glibc? ( $(rust_arch_uri riscv64gc-unknown-linux-gnu 
"$@") ) )
+   s390?  ( elibc_glibc? ( $(rust_arch_uri s390x-unknown-linux-gnu 
"$@") ) )
"
 
# Upstream did not gain support for loong until v1.71.0.
@@ -122,7 +120,7 @@ rust_all_arch_uris()
local arg_version="${1##*-}"
arg_version="${arg_version:-$PV}"
if ver_test "${arg_version}" -ge 1.71.0; then
-   echo "loong? ( $(rust_arch_uri loongarch64-unknown-linux-gnu 
"$@") )"
+   echo "loong? ( elibc_glibc? ( $(rust_arch_uri 
loongarch64-unknown-linux-gnu "$@") ) )"
fi
 
# until https://github.com/rust-lang/rust/pull/113274 is resolved, there



[gentoo-commits] repo/gentoo:master commit in: eclass/

2024-08-15 Thread Sam James
commit: 1f754863ff91dc4dca11e6a5217ffd449f39c74c
Author: Sam James  gentoo  org>
AuthorDate: Thu Aug 15 21:23:22 2024 +
Commit: Sam James  gentoo  org>
CommitDate: Thu Aug 15 21:24:05 2024 +
URL:https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=1f754863

go-env.eclass: improve debug workaround

Use what Ionen did in x11-terms/kitty to avoid touching flags for
non-Go parts of the build.

Bug: https://bugs.gentoo.org/847991
Bug: https://bugs.gentoo.org/924436
Bug: https://bugs.gentoo.org/924496
Bug: https://bugs.gentoo.org/929219
Signed-off-by: Sam James  gentoo.org>

 eclass/go-env.eclass | 16 ++--
 1 file changed, 10 insertions(+), 6 deletions(-)

diff --git a/eclass/go-env.eclass b/eclass/go-env.eclass
index a4394161cb0b..11fdf943e774 100644
--- a/eclass/go-env.eclass
+++ b/eclass/go-env.eclass
@@ -42,16 +42,20 @@ go-env_set_compile_environment() {
# XXX: Hack for checking ICE (bug #912152, gcc PR113204)
has_version -b "sys-devel/gcc[debug]" && filter-lto
 
-   # bug #929219
-   if tc-is-gcc ; then
-   replace-flags -g3 -g
-   replace-flags -ggdb3 -ggdb
-   fi
-
export CGO_CFLAGS="${CGO_CFLAGS:-$CFLAGS}"
export CGO_CPPFLAGS="${CGO_CPPFLAGS:-$CPPFLAGS}"
export CGO_CXXFLAGS="${CGO_CXXFLAGS:-$CXXFLAGS}"
export CGO_LDFLAGS="${CGO_LDFLAGS:-$LDFLAGS}"
+
+   # bug #929219
+   if tc-is-gcc ; then
+   CGO_CFLAGS=$(
+   CFLAGS=${CGO_CFLAGS}
+   replace-flags -g3 -g
+   replace-flags -ggdb3 -ggdb
+   printf %s "${CFLAGS}"
+   )
+   fi
 }
 
 # @FUNCTION: go-env_goos



[gentoo-commits] repo/gentoo:master commit in: eclass/

2024-08-15 Thread Sam James
commit: 116f54058abd4fa4a5b3c16ee49a99df11883a45
Author: Sam James  gentoo  org>
AuthorDate: Thu Aug 15 21:13:28 2024 +
Commit: Sam James  gentoo  org>
CommitDate: Thu Aug 15 21:18:23 2024 +
URL:https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=116f5405

go-env.eclass: workaround debug info issues

Go can't handle some DWARF produced by GCC but nobody's been able
to produce a simple testcase for it, so add a workaround where we replace
-g3 with -g and -ggdb3 with -ggdb for GCC, like Ionen did in Kitty.

Bug: https://bugs.gentoo.org/847991
Bug: https://bugs.gentoo.org/924436
Bug: https://bugs.gentoo.org/924496
Closes: https://bugs.gentoo.org/929219
Signed-off-by: Sam James  gentoo.org>

 eclass/go-env.eclass | 6 ++
 1 file changed, 6 insertions(+)

diff --git a/eclass/go-env.eclass b/eclass/go-env.eclass
index be131133113b..a4394161cb0b 100644
--- a/eclass/go-env.eclass
+++ b/eclass/go-env.eclass
@@ -42,6 +42,12 @@ go-env_set_compile_environment() {
# XXX: Hack for checking ICE (bug #912152, gcc PR113204)
has_version -b "sys-devel/gcc[debug]" && filter-lto
 
+   # bug #929219
+   if tc-is-gcc ; then
+   replace-flags -g3 -g
+   replace-flags -ggdb3 -ggdb
+   fi
+
export CGO_CFLAGS="${CGO_CFLAGS:-$CFLAGS}"
export CGO_CPPFLAGS="${CGO_CPPFLAGS:-$CPPFLAGS}"
export CGO_CXXFLAGS="${CGO_CXXFLAGS:-$CXXFLAGS}"



[gentoo-commits] repo/gentoo:master commit in: eclass/

2024-08-15 Thread Michał Górny
commit: 740d0c3619f76e9b3a7beffc47861d48ae826012
Author: Michał Górny  gentoo  org>
AuthorDate: Thu Aug 15 19:16:28 2024 +
Commit: Michał Górny  gentoo  org>
CommitDate: Thu Aug 15 20:01:29 2024 +
URL:https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=740d0c36

llvm.org.eclass: Add 20.0.0_pre20240815 snapshot

Signed-off-by: Michał Górny  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 d1c169264662..4b49d35a542b 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
+   20.0.0_pre20240815)
+   
EGIT_COMMIT=db8ef6188cbbe2125e6d60bdef77a535105772df
+   ;;
20.0.0_pre20240808)

EGIT_COMMIT=fd7d7882e7fa5a38d4bfde426120d4663718beb4
;;



[gentoo-commits] repo/gentoo:master commit in: eclass/

2024-08-15 Thread Andreas Sturmlechner
commit: 5fc62d4f396d20ed67cf8455f447f2b9ee03ff4a
Author: Andreas Sturmlechner  gentoo  org>
AuthorDate: Thu Aug 15 08:41:14 2024 +
Commit: Andreas Sturmlechner  gentoo  org>
CommitDate: Thu Aug 15 17:46:52 2024 +
URL:https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=5fc62d4f

gear.kde.org.eclass: Add post-24.05 release SLOT=5 blocklist

Signed-off-by: Andreas Sturmlechner  gentoo.org>

 eclass/gear.kde.org.eclass | 24 
 1 file changed, 24 insertions(+)

diff --git a/eclass/gear.kde.org.eclass b/eclass/gear.kde.org.eclass
index c063ccc2d7c5..3f8126dd1c01 100644
--- a/eclass/gear.kde.org.eclass
+++ b/eclass/gear.kde.org.eclass
@@ -262,4 +262,28 @@ if $(ver_test -gt 24.04.75); then
esac
 fi
 
+# list of applications ported to KF6 post-24.05 in SLOT=6 having to block 
SLOT=5
+if $(ver_test -gt 24.07.75); then
+   case ${PN} in
+   k3b | \
+   kde-dev-scripts | \
+   kdesdk-thumbnailers | \
+   kdevelop | \
+   kdevelop-php | \
+   kdevelop-python | \
+   kgraphviewer | \
+   kimagemapeditor | \
+   kmplot | \
+   kompare | \
+   krdc | \
+   libkomparediff2 | \
+   lokalize | \
+   massif-visualizer | \
+   poxml | \
+   skanlite)
+   RDEPEND+=" !${CATEGORY}/${PN}:5" ;;
+   *) ;;
+   esac
+fi
+
 fi



[gentoo-commits] repo/gentoo:master commit in: eclass/

2024-08-15 Thread Andreas Sturmlechner
commit: 60a395b82ac3d490ea94fea3721fac9b041e3cd0
Author: Nic Boet  boet  cc>
AuthorDate: Thu Feb  1 03:48:21 2024 +
Commit: Andreas Sturmlechner  gentoo  org>
CommitDate: Thu Aug 15 17:46:36 2024 +
URL:https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=60a395b8

cmake.eclass: bug 811486 escape find patterns

Modify cmake_src_prepare to qoute escape filenames
within the find search patterns
This resolves build issues with some EAPI 7 packages,
i.e. sys-fs/dislocker via catalyst

Bug: https://bugs.gentoo.org/811486
Signed-off-by: Nic Boet  boet.cc>
Closes: https://github.com/gentoo/gentoo/pull/35125
Signed-off-by: Andreas Sturmlechner  gentoo.org>

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

diff --git a/eclass/cmake.eclass b/eclass/cmake.eclass
index de43bd017768..b7852355b90b 100644
--- a/eclass/cmake.eclass
+++ b/eclass/cmake.eclass
@@ -388,7 +388,7 @@ cmake_src_prepare() {
local name
for name in "${modules_list[@]}" ; do
if [[ ${EAPI} == 7 ]]; then
-   find "${S}" -name ${name}.cmake -exec rm -v {} + || die
+   find "${S}" -name "${name}.cmake" -exec rm -v {} + || 
die
else
find -name "${name}.cmake" -exec rm -v {} + || die
fi



[gentoo-commits] repo/gentoo:master commit in: eclass/

2024-08-15 Thread Andreas Sturmlechner
commit: 0e7a553e92f53af7aaf509101ba347c54858b75c
Author: Andreas Sturmlechner  gentoo  org>
AuthorDate: Thu Aug 15 08:23:53 2024 +
Commit: Andreas Sturmlechner  gentoo  org>
CommitDate: Thu Aug 15 17:46:51 2024 +
URL:https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=0e7a553e

gear.kde.org.eclass: Cleanup >=24.01.75 SLOT 5 blocklist

Dropping kde-apps/kdegraphics-mobipocket, no file collision in the first place.
Dropping kde-apps/thumbnailers after it was turned into a metapackage.

Signed-off-by: Andreas Sturmlechner  gentoo.org>

 eclass/gear.kde.org.eclass | 2 --
 1 file changed, 2 deletions(-)

diff --git a/eclass/gear.kde.org.eclass b/eclass/gear.kde.org.eclass
index e0d0a8640b5b..c063ccc2d7c5 100644
--- a/eclass/gear.kde.org.eclass
+++ b/eclass/gear.kde.org.eclass
@@ -132,7 +132,6 @@ if $(ver_test -gt 24.01.75); then
kde-dev-utils | \
kdebugsettings | \
kdeconnect | \
-   kdegraphics-mobipocket | \
kdenetwork-filesharing | \
kdenlive | \
kdepim-addons | \
@@ -243,7 +242,6 @@ if $(ver_test -gt 24.01.75); then
spectacle | \
svgpart | \
sweeper | \
-   thumbnailers | \
yakuake | \
zanshin)
RDEPEND+=" !${CATEGORY}/${PN}:5" ;;



[gentoo-commits] repo/gentoo:master commit in: eclass/

2024-08-15 Thread Andreas Sturmlechner
commit: 882d006f2a945587d25fc5e5b8cc520febfe7e9f
Author: Andreas Sturmlechner  gentoo  org>
AuthorDate: Tue Aug 13 20:39:06 2024 +
Commit: Andreas Sturmlechner  gentoo  org>
CommitDate: Thu Aug 15 17:46:50 2024 +
URL:https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=882d006f

ecm.eclass: For kde.org projects, try to rename metainfo file real hard

- detect if we are inheriting kde.org.eclass
- detect if package name is not the same as upstream name (KDE_ORG_NAME)
- iterate through "${ED}"/usr/share/metainfo/
- if file contains KDE_ORG_NAME or similar, rename that to ${PN}${SLOT/0*/}
- otherwise, prepend "${PN}${SLOT/0*/}-" after ^org.kde.

Notably, this does not (yet?) trigger if a package ${PN} == ${KDE_ORG_NAME}
but different SLOTs. Should we just do that all the time?

Signed-off-by: Andreas Sturmlechner  gentoo.org>

 eclass/ecm.eclass | 30 ++
 1 file changed, 30 insertions(+)

diff --git a/eclass/ecm.eclass b/eclass/ecm.eclass
index 3d3b9328269d..c8731b8c0cff 100644
--- a/eclass/ecm.eclass
+++ b/eclass/ecm.eclass
@@ -649,6 +649,9 @@ ecm_src_test() {
 # Wrapper for cmake_src_install. Drops executable bit from .desktop files
 # installed inside /usr/share/applications. This is set by cmake when install()
 # is called in PROGRAM form, as seen in many kde.org projects.
+# In case kde.org.eclass is detected, in case KDE_ORG_NAME != PN, tries real
+# hard to detect, then rename, metainfo.xml appdata files to something unique
+# including SLOT if else than "0" (basically KDE_ORG_NAME -> PN+SLOT).
 ecm_src_install() {
debug-print-function ${FUNCNAME} "$@"
 
@@ -664,6 +667,33 @@ ecm_src_install() {
fi
done
fi
+
+   mv_metainfo() {
+   if [[ -f ${1} ]]; then
+   mv -v ${1} ${1/${2}/${3}} || die
+   fi
+   }
+
+   if [[ -n ${_KDE_ORG_ECLASS} && -d "${ED}"/usr/share/metainfo/ ]]; then
+   if [[ ${KDE_ORG_NAME} != ${PN} ]]; then
+   local ecm_metainfo
+   pushd "${ED}"/usr/share/metainfo/ > /dev/null || die
+   for ecm_metainfo in find * -type f -iname 
"*metainfo.xml"; do
+   case ${ecm_metainfo} in
+   *${KDE_ORG_NAME}*)
+   mv_metainfo ${ecm_metainfo} 
${KDE_ORG_NAME} ${PN}${SLOT/0*/}
+   ;;
+   *${KDE_ORG_NAME/-/_}*)
+   mv_metainfo ${ecm_metainfo} 
${KDE_ORG_NAME/-/_} ${PN}${SLOT/0*/}
+   ;;
+   org.kde.*)
+   mv_metainfo ${ecm_metainfo} 
"org.kde." "org.kde.${PN}${SLOT/0*/}-"
+   ;;
+   esac
+   done
+   popd > /dev/null || die
+   fi
+   fi
 }
 
 # @FUNCTION: ecm_pkg_preinst



[gentoo-commits] repo/gentoo:master commit in: eclass/

2024-08-15 Thread Andreas Sturmlechner
commit: da715b976410cb437456272c921ccd4589b4fbe8
Author: Andreas Sturmlechner  gentoo  org>
AuthorDate: Mon Jun 24 20:53:44 2024 +
Commit: Andreas Sturmlechner  gentoo  org>
CommitDate: Thu Aug 15 17:46:37 2024 +
URL:https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=da715b97

cmake.eclass: Set CMAKE_TLS_VERIFY=ON

Closes: https://bugs.gentoo.org/927160
Signed-off-by: Andreas Sturmlechner  gentoo.org>

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

diff --git a/eclass/cmake.eclass b/eclass/cmake.eclass
index b7852355b90b..db31320c339d 100644
--- a/eclass/cmake.eclass
+++ b/eclass/cmake.eclass
@@ -542,6 +542,7 @@ cmake_src_configure() {
set(BUILD_SHARED_LIBS ON CACHE BOOL "")
set(Python3_FIND_UNVERSIONED_NAMES FIRST CACHE STRING "")
set(CMAKE_DISABLE_PRECOMPILE_HEADERS ON CACHE BOOL "")
+   set(CMAKE_TLS_VERIFY ON CACHE BOOL "")
_EOF_
 
if [[ -n ${_ECM_ECLASS} ]]; then



[gentoo-commits] repo/gentoo:master commit in: eclass/

2024-08-15 Thread Andreas Sturmlechner
commit: 689be1a4afcc8222f7d10f822789d2e1676d0829
Author: Andreas Sturmlechner  gentoo  org>
AuthorDate: Mon Jun 24 20:59:33 2024 +
Commit: Andreas Sturmlechner  gentoo  org>
CommitDate: Thu Aug 15 17:46:44 2024 +
URL:https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=689be1a4

cmake.eclass: Set CMAKE_COMPILE_WARNING_AS_ERROR=OFF

Closes: https://bugs.gentoo.org/926121
Signed-off-by: Andreas Sturmlechner  gentoo.org>

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

diff --git a/eclass/cmake.eclass b/eclass/cmake.eclass
index db31320c339d..c98608d7b5bb 100644
--- a/eclass/cmake.eclass
+++ b/eclass/cmake.eclass
@@ -543,6 +543,7 @@ cmake_src_configure() {
set(Python3_FIND_UNVERSIONED_NAMES FIRST CACHE STRING "")
set(CMAKE_DISABLE_PRECOMPILE_HEADERS ON CACHE BOOL "")
set(CMAKE_TLS_VERIFY ON CACHE BOOL "")
+   set(CMAKE_COMPILE_WARNING_AS_ERROR OFF CACHE BOOL "")
_EOF_
 
if [[ -n ${_ECM_ECLASS} ]]; then



[gentoo-commits] repo/gentoo:master commit in: eclass/

2024-08-15 Thread Andreas Sturmlechner
commit: 796a1fc61893f37aa9158ccb2ce4f038e1d1a4db
Author: Andreas Sturmlechner  gentoo  org>
AuthorDate: Tue Aug 13 20:18:36 2024 +
Commit: Andreas Sturmlechner  gentoo  org>
CommitDate: Thu Aug 15 17:46:50 2024 +
URL:https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=796a1fc6

cmake.eclass: If inherited from ecm.eclass, set ECM_DISABLE_GIT

Signed-off-by: Andreas Sturmlechner  gentoo.org>

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

diff --git a/eclass/cmake.eclass b/eclass/cmake.eclass
index 8d60116f7a93..8079a5cb037b 100644
--- a/eclass/cmake.eclass
+++ b/eclass/cmake.eclass
@@ -550,6 +550,7 @@ cmake_src_configure() {
cat >> ${common_config} <<- _EOF_ || die
set(ECM_DISABLE_QMLPLUGINDUMP ON CACHE BOOL "")
set(ECM_DISABLE_APPSTREAMTEST ON CACHE BOOL "")
+   set(ECM_DISABLE_GIT ON CACHE BOOL "")
_EOF_
fi
 



[gentoo-commits] repo/gentoo:master commit in: eclass/

2024-08-15 Thread Andreas Sturmlechner
commit: 43ecd506f0393ce2cc5e2bb0c19961923ee35a6f
Author: Andreas Sturmlechner  gentoo  org>
AuthorDate: Tue Aug 13 20:06:40 2024 +
Commit: Andreas Sturmlechner  gentoo  org>
CommitDate: Thu Aug 15 17:46:49 2024 +
URL:https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=43ecd506

cmake.eclass: If inherited from ecm.eclass, set ECM_DISABLE_APPSTREAMTEST

Signed-off-by: Andreas Sturmlechner  gentoo.org>

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

diff --git a/eclass/cmake.eclass b/eclass/cmake.eclass
index c98608d7b5bb..8d60116f7a93 100644
--- a/eclass/cmake.eclass
+++ b/eclass/cmake.eclass
@@ -547,7 +547,10 @@ cmake_src_configure() {
_EOF_
 
if [[ -n ${_ECM_ECLASS} ]]; then
-   echo 'set(ECM_DISABLE_QMLPLUGINDUMP ON CACHE BOOL "")' >> 
"${common_config}" || die
+   cat >> ${common_config} <<- _EOF_ || die
+   set(ECM_DISABLE_QMLPLUGINDUMP ON CACHE BOOL "")
+   set(ECM_DISABLE_APPSTREAMTEST ON CACHE BOOL "")
+   _EOF_
fi
 
# See bug 689410



[gentoo-commits] repo/gentoo:master commit in: eclass/

2024-08-12 Thread Ulrich Müller
commit: bcc4c0d2300712a5af55a6f6a9cab0472f13d1bf
Author: Ulrich Müller  gentoo  org>
AuthorDate: Mon Aug 12 19:02:05 2024 +
Commit: Ulrich Müller  gentoo  org>
CommitDate: Mon Aug 12 19:02:05 2024 +
URL:https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=bcc4c0d2

bzr.eclass: Remove dead eclass

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

 eclass/bzr.eclass | 258 --
 1 file changed, 258 deletions(-)

diff --git a/eclass/bzr.eclass b/eclass/bzr.eclass
deleted file mode 100644
index b442381dc668..
--- a/eclass/bzr.eclass
+++ /dev/null
@@ -1,258 +0,0 @@
-# Copyright 1999-2023 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-# @DEAD
-# @ECLASS: bzr.eclass
-# @MAINTAINER:
-# Ulrich Müller 
-# @AUTHOR:
-# Jorge Manuel B. S. Vicetto 
-# Mark Lee 
-# Ulrich Müller 
-# Christian Faulhammer 
-# @SUPPORTED_EAPIS: 7 8
-# @BLURB: generic fetching functions for the Bazaar VCS
-# @DESCRIPTION:
-# The bzr.eclass provides functions to fetch and unpack sources from
-# repositories of the Bazaar distributed version control system.
-# The eclass was originally derived from git.eclass.
-#
-# Note: Just set EBZR_REPO_URI to the URI of the branch and src_unpack()
-# of this eclass will export the branch to ${WORKDIR}/${P}.
-
-case ${EAPI} in
-   7|8) ;;
-   *) die "${ECLASS}: EAPI ${EAPI:-0} not supported" ;;
-esac
-
-PROPERTIES+=" live"
-
-BDEPEND="dev-vcs/breezy"
-
-# @ECLASS_VARIABLE: EBZR_STORE_DIR
-# @USER_VARIABLE
-# @DESCRIPTION:
-# The directory to store all fetched Bazaar live sources.
-: "${EBZR_STORE_DIR:=${PORTAGE_ACTUAL_DISTDIR:-${DISTDIR}}/bzr-src}"
-
-# @ECLASS_VARIABLE: EBZR_UNPACK_DIR
-# @DESCRIPTION:
-# The working directory where the sources are copied to.
-: "${EBZR_UNPACK_DIR:=${WORKDIR}/${P}}"
-
-# @ECLASS_VARIABLE: EBZR_INIT_REPO_CMD
-# @DESCRIPTION:
-# The Bazaar command to initialise a shared repository.
-: "${EBZR_INIT_REPO_CMD:="brz init-shared-repository --no-trees"}"
-
-# @ECLASS_VARIABLE: EBZR_FETCH_CMD
-# @DESCRIPTION:
-# The Bazaar command to fetch the sources.
-: "${EBZR_FETCH_CMD:="brz branch --no-tree"}"
-
-# @ECLASS_VARIABLE: EBZR_UPDATE_CMD
-# @DESCRIPTION:
-# The Bazaar command to update the sources.
-: "${EBZR_UPDATE_CMD:="brz pull --overwrite-tags"}"
-
-# @ECLASS_VARIABLE: EBZR_EXPORT_CMD
-# @DESCRIPTION:
-# The Bazaar command to export a branch.
-: "${EBZR_EXPORT_CMD:="brz export"}"
-
-# @ECLASS_VARIABLE: EBZR_CHECKOUT_CMD
-# @DESCRIPTION:
-# The Bazaar command to checkout a branch.
-: "${EBZR_CHECKOUT_CMD:="brz checkout --lightweight -q"}"
-
-# @ECLASS_VARIABLE: EBZR_REVNO_CMD
-# @DESCRIPTION:
-# The Bazaar command to list a revision number of the branch.
-: "${EBZR_REVNO_CMD:="brz revno"}"
-
-# @ECLASS_VARIABLE: EBZR_OPTIONS
-# @DEFAULT_UNSET
-# @DESCRIPTION:
-# The options passed to the fetch and update commands.
-
-# @ECLASS_VARIABLE: EBZR_REPO_URI
-# @DEFAULT_UNSET
-# @REQUIRED
-# @DESCRIPTION:
-# The repository URI for the source package.
-
-# @ECLASS_VARIABLE: EBZR_PROJECT
-# @DESCRIPTION:
-# The project name of your ebuild.  Normally, the branch will be stored
-# in the ${EBZR_STORE_DIR}/${EBZR_PROJECT} directory.
-#
-# If EBZR_BRANCH is set (see below), then a shared repository will be
-# created in that directory, and the branch will be located in
-# ${EBZR_STORE_DIR}/${EBZR_PROJECT}/${EBZR_BRANCH}.
-: "${EBZR_PROJECT:=${PN}}"
-
-# @ECLASS_VARIABLE: EBZR_BRANCH
-# @DEFAULT_UNSET
-# @DESCRIPTION:
-# The directory where to store the branch within a shared repository,
-# relative to ${EBZR_STORE_DIR}/${EBZR_PROJECT}.
-#
-# This variable should be set if there are several live ebuilds for
-# different branches of the same upstream project.  The branches can
-# then share the same repository in EBZR_PROJECT, which will save both
-# data traffic volume and disk space.
-#
-# If there is only a live ebuild for one single branch, EBZR_BRANCH
-# needs not be set.  In this case, the branch will be stored in a
-# stand-alone repository directly in EBZR_PROJECT.
-
-# @ECLASS_VARIABLE: EBZR_REVISION
-# @DEFAULT_UNSET
-# @DESCRIPTION:
-# Revision to fetch, defaults to the latest (see brz help revisionspec).
-
-# @ECLASS_VARIABLE: EBZR_OFFLINE
-# @USER_VARIABLE
-# @DESCRIPTION:
-# Set this variable to a non-empty value to disable automatic updating
-# of a bzr source tree.  This is intended to be set outside the ebuild
-# by users.
-: "${EBZR_OFFLINE=${EVCS_OFFLINE}}"
-
-# @ECLASS_VARIABLE: EVCS_UMASK
-# @USER_VARIABLE
-# @DEFAULT_UNSET
-# @DESCRIPTION:
-# Set this variable to a custom umask.  This is intended to be set by
-# users.  By setting this to something like 002, it can make life easier
-# for people who do development as non-root (but are in the portage
-# group), and then switch over to building with FEATURES=userpriv.
-# Or vice-versa.  Shouldn't be a security issue here as anyone who has
-# portage group write access already can screw the system o

[gentoo-commits] repo/gentoo:master commit in: eclass/

2024-08-12 Thread Ulrich Müller
commit: a2b06caae07eddf6ee4597f0dbe53a476a6005ce
Author: Ulrich Müller  gentoo  org>
AuthorDate: Mon Aug 12 19:01:57 2024 +
Commit: Ulrich Müller  gentoo  org>
CommitDate: Mon Aug 12 19:01:57 2024 +
URL:https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=a2b06caa

ltprune.eclass: Remove dead eclass

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

 eclass/ltprune.eclass | 177 --
 1 file changed, 177 deletions(-)

diff --git a/eclass/ltprune.eclass b/eclass/ltprune.eclass
deleted file mode 100644
index 51f5aaabfea7..
--- a/eclass/ltprune.eclass
+++ /dev/null
@@ -1,177 +0,0 @@
-# Copyright 1999-2024 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-# @DEAD
-# @ECLASS: ltprune.eclass
-# @MAINTAINER:
-# Michał Górny 
-# @SUPPORTED_EAPIS: 0 1 2 3 4 5 6
-# @BLURB: Smart .la file pruning
-# @DEPRECATED: none
-# @DESCRIPTION:
-# A function to locate and remove unnecessary .la files.
-#
-# Discouraged. Whenever possible, please use much simpler:
-# @CODE
-# find "${ED}" -type f -name '*.la' -delete || die
-# @CODE
-
-if [[ -z ${_LTPRUNE_ECLASS} ]]; then
-
-case ${EAPI:-0} in
-   0|1|2|3|4|5|6)
-   ;;
-   *)
-   die "${ECLASS}: banned in EAPI=${EAPI}; use 'find' instead";;
-esac
-
-inherit toolchain-funcs
-
-# @FUNCTION: prune_libtool_files
-# @USAGE: [--all|--modules]
-# @DESCRIPTION:
-# Locate unnecessary libtool files (.la) and libtool static archives
-# (.a) and remove them from installation image.
-#
-# By default, .la files are removed whenever the static linkage can
-# either be performed using pkg-config or doesn't introduce additional
-# flags.
-#
-# If '--modules' argument is passed, .la files for modules (plugins) are
-# removed as well. This is usually useful when the package installs
-# plugins and the plugin loader does not use .la files.
-#
-# If '--all' argument is passed, all .la files are removed without
-# performing any heuristic on them. You shouldn't ever use that,
-# and instead report a bug in the algorithm instead.
-#
-# The .a files are only removed whenever corresponding .la files state
-# that they should not be linked to, i.e. whenever these files
-# correspond to plugins.
-#
-# Note: if your package installs both static libraries and .pc files
-# which use variable substitution for -l flags, you need to add
-# pkg-config to your DEPEND.
-prune_libtool_files() {
-   debug-print-function ${FUNCNAME} "$@"
-
-   local removing_all removing_modules opt
-   for opt; do
-   case "${opt}" in
-   --all)
-   removing_all=1
-   removing_modules=1
-   ;;
-   --modules)
-   removing_modules=1
-   ;;
-   *)
-   die "Invalid argument to ${FUNCNAME}(): ${opt}"
-   esac
-   done
-
-   local f
-   local queue=()
-   while IFS= read -r -d '' f; do # for all .la files
-   local archivefile=${f/%.la/.a}
-
-   # The following check is done by libtool itself.
-   # It helps us avoid removing random files which match '*.la',
-   # see bug #468380.
-   if ! sed -n -e '/^# Generated by .*libtool/q0;4q1' "${f}"; then
-   continue
-   fi
-
-   [[ ${f} != ${archivefile} ]] || die 'regex sanity check failed'
-   local reason= pkgconfig_scanned=
-   local snotlink=$(sed -n -e 's:^shouldnotlink=::p' "${f}")
-
-   if [[ ${snotlink} == yes ]]; then
-
-   # Remove static libs we're not supposed to link against.
-   if [[ -f ${archivefile} ]]; then
-   einfo "Removing unnecessary 
${archivefile#${D%/}} (static plugin)"
-   queue+=( "${archivefile}" )
-   fi
-
-   # The .la file may be used by a module loader, so avoid 
removing it
-   # unless explicitly requested.
-   if [[ ${removing_modules} ]]; then
-   reason='module'
-   fi
-
-   else
-
-   # Remove .la files when:
-   # - user explicitly wants us to remove all .la files,
-   # - respective static archive doesn't exist,
-   # - they are covered by a .pc file already,
-   # - they don't provide any new information (no libs & 
no flags).
-
-   if [[ ${removing_all} ]]; then
-   reason='requested'
-   elif [[ ! -f ${archivefile} ]]; then
-   reason='no static archive'
-

[gentoo-commits] repo/gentoo:master commit in: eclass/

2024-08-11 Thread Sam James
commit: efff53996be8ae20f332867358fd1a3af83a1ee2
Author: Sam James  gentoo  org>
AuthorDate: Mon Aug 12 01:10:10 2024 +
Commit: Sam James  gentoo  org>
CommitDate: Mon Aug 12 01:19:31 2024 +
URL:https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=efff5399

toolchain.eclass: drop filter-flags from src_test

This no longer does anything after the previous commit to use
custom variables for flags for tests.

Signed-off-by: Sam James  gentoo.org>

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

diff --git a/eclass/toolchain.eclass b/eclass/toolchain.eclass
index 326daf66586c..3cd3be676f9b 100644
--- a/eclass/toolchain.eclass
+++ b/eclass/toolchain.eclass
@@ -1926,19 +1926,6 @@ toolchain_src_test() {
 
# Use a subshell to allow meddling with flags just for the testsuite
(
-   # Unexpected warnings confuse the tests.
-   filter-flags -W*
-   # May break parsing.
-   filter-flags '-fdiagnostics-color=*' '-fdiagnostics-urls=*'
-   # Gentoo QA flags which don't belong in tests
-   filter-flags -frecord-gcc-switches
-   filter-flags '-Wl,--defsym=__gentoo_check_ldflags__=0'
-   # Go doesn't support this and causes noisy warnings
-   filter-flags -Wbuiltin-declaration-mismatch
-   # The ASAN tests at least need LD_PRELOAD and the contract
-   # tests.
-   filter-flags -fno-semantic-interposition
-
# Workaround our -Wformat-security default which breaks
# various tests as it adds unexpected warning output.
GCC_TESTS_CFLAGS+=" -Wno-format-security -Wno-format"



[gentoo-commits] repo/gentoo:master commit in: eclass/

2024-08-11 Thread Sam James
commit: eb9d324cb45589e287e6cce64f3110acccf1e47c
Author: Sam James  gentoo  org>
AuthorDate: Mon Aug 12 01:18:07 2024 +
Commit: Sam James  gentoo  org>
CommitDate: Mon Aug 12 01:19:32 2024 +
URL:https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=eb9d324c

toolchain.eclass: add TODO re flags for building deps in src_test

Signed-off-by: Sam James  gentoo.org>

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

diff --git a/eclass/toolchain.eclass b/eclass/toolchain.eclass
index 3cd3be676f9b..ac236f3127f9 100644
--- a/eclass/toolchain.eclass
+++ b/eclass/toolchain.eclass
@@ -1969,6 +1969,9 @@ toolchain_src_test() {
#
# CFLAGS and so on are repeated here because of tests vs 
building test
# deps like libbacktrace.
+   #
+   # TODO: Should we try pass in the regular user flags for the 
non-RUNTESTFLAGS
+   # instances below for building e.g. libbacktrace?
nonfatal emake -C "${WORKDIR}"/build -k 
"${GCC_TESTS_CHECK_TARGET}" \
RUNTESTFLAGS=" \
${GCC_TESTS_RUNTESTFLAGS} \



[gentoo-commits] repo/gentoo:master commit in: eclass/

2024-08-11 Thread Sam James
commit: 5ea011f3d6691b8093be519474d3303ea388f260
Author: Sam James  gentoo  org>
AuthorDate: Mon Aug 12 01:05:33 2024 +
Commit: Sam James  gentoo  org>
CommitDate: Mon Aug 12 01:19:29 2024 +
URL:https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=5ea011f3

toolchain.eclass: add comment re GCC_TEST_RUN_EXPENSIVE

Make clear it's not a typo as it comes from gcc's testsuite (could
look like an accidental 'TEST' instead of 'TESTS' like the eclassvars
we use for tests.)

Signed-off-by: Sam James  gentoo.org>

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

diff --git a/eclass/toolchain.eclass b/eclass/toolchain.eclass
index 984c37a3fa73..b2d4692bc2e1 100644
--- a/eclass/toolchain.eclass
+++ b/eclass/toolchain.eclass
@@ -1920,6 +1920,8 @@ toolchain_src_test() {
local -x LD_PRELOAD=
 
# Controls running expensive tests in e.g. the torture testsuite.
+   # Note that 'TEST', not 'TESTS', is correct here as it's a GCC
+   # testsuite variable, not ours.
local -x GCC_TEST_RUN_EXPENSIVE=1
 
# Use a subshell to allow meddling with flags just for the testsuite



[gentoo-commits] repo/gentoo:master commit in: eclass/

2024-08-11 Thread Sam James
commit: 15ce82749db7922e462f900df9b7edbda37f152b
Author: Sam James  gentoo  org>
AuthorDate: Mon Aug 12 01:06:45 2024 +
Commit: Sam James  gentoo  org>
CommitDate: Mon Aug 12 01:19:30 2024 +
URL:https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=15ce8274

toolchain.eclass: don't pass user flags in src_test

This is obvious in hindsight. The flags we were passing *precisely because*
we wanted e.g. -Wno-format to be passed to every test also included
-O2 or whatever from the user's flags which breaks tests that may require
no optimisation and so on.

Instead of trying to filter out options in a whack-a-mole game, let's
introduce special GCC_TESTS_* *FLAGS variables which we append
the needed -Wno-* to (etc.) which users can also specify if they really want
or need to.

Note that this isn't as scary or as weird as it sounds. We were only
trying to jam these flags in **purely** to counteract some defaults
we set, these tests really aren't supposed to be run with arbitrary
flags stuck in, but a workaround we added started to introduce way
more than intended.

The torture tests are fine with being run with various optimisation flags
but the rest of the testesuite isn't.

This fixes 361c3758642891759b0ed60a8f96bc0776d19f15 and some of the
attempts afterwards, although not everything in those commits was bad.

Fixes: 361c3758642891759b0ed60a8f96bc0776d19f15
Signed-off-by: Sam James  gentoo.org>

 eclass/toolchain.eclass | 49 +++--
 1 file changed, 27 insertions(+), 22 deletions(-)

diff --git a/eclass/toolchain.eclass b/eclass/toolchain.eclass
index b2d4692bc2e1..326daf66586c 100644
--- a/eclass/toolchain.eclass
+++ b/eclass/toolchain.eclass
@@ -1941,15 +1941,19 @@ toolchain_src_test() {
 
# Workaround our -Wformat-security default which breaks
# various tests as it adds unexpected warning output.
-   append-flags -Wno-format-security -Wno-format
+   GCC_TESTS_CFLAGS+=" -Wno-format-security -Wno-format"
+   GCC_TESTS_CXXFLAGS+=" -Wno-format-security -Wno-format"
+
# Workaround our -Wtrampolines default which breaks
# tests too.
-   append-flags -Wno-trampolines
+   GCC_TESTS_CFLAGS+=" -Wno-trampolines"
+   GCC_TESTS_CXXFLAGS+=" -Wno-trampolines"
# A handful of Ada (and objc++?) tests need an executable stack
-   append-ldflags -Wl,--no-warn-execstack
+   GCC_TESTS_LDFLAGS+=" -Wl,--no-warn-execstack"
# Avoid confusing tests like Fortran/C interop ones where
# CFLAGS are used.
-   append-flags -Wno-complain-wrong-lang
+   GCC_TESTS_CFLAGS+=" -Wno-complain-wrong-lang"
+   GCC_TESTS_CXXFLAGS+=" -Wno-complain-wrong-lang"
 
# Issues with Ada tests:
# gnat.dg/align_max.adb
@@ -1960,11 +1964,12 @@ toolchain_src_test() {
#
# TODO: This isn't ideal given it obv. affects codegen
# and we want to be sure it works.
-   append-flags -fno-stack-clash-protection
+   GCC_TESTS_CFLAGS+=" -fno-stack-clash-protection"
+   GCC_TESTS_CXXFLAGS+=" -fno-stack-clash-protection"
 
# configure defaults to '-O2 -g' and some tests expect it
# accordingly.
-   append-flags -g
+   GCC_TESTS_CFLAGS+=" -g"
 
# TODO: Does this handle s390 (-m31) correctly?
# TODO: What if there are multiple ABIs like x32 too?
@@ -1980,23 +1985,23 @@ toolchain_src_test() {
nonfatal emake -C "${WORKDIR}"/build -k 
"${GCC_TESTS_CHECK_TARGET}" \
RUNTESTFLAGS=" \
${GCC_TESTS_RUNTESTFLAGS} \
-   
CFLAGS_FOR_TARGET='${CFLAGS_FOR_TARGET:-${CFLAGS}}' \
-   
CXXFLAGS_FOR_TARGET='${CXXFLAGS_FOR_TARGET:-${CXXFLAGS}}' \
-   
LDFLAGS_FOR_TARGET='${LDFLAGS_FOR_TARGET:-${LDFLAGS}}' \
-   CFLAGS='${CFLAGS}' \
-   CXXFLAGS='${CXXFLAGS}' \
-   FCFLAGS='${FCFLAGS}' \
-   FFLAGS='${FFLAGS}' \
-   LDFLAGS='${LDFLAGS}' \
+   
CFLAGS_FOR_TARGET='${GCC_TESTS_CFLAGS_FOR_TARGET:-${GCC_TESTS_CFLAGS}}' \
+   
CXXFLAGS_FOR_TARGET='${GCC_TESTS_CXXFLAGS_FOR_TARGET:-${GCC_TESTS_CXXFLAGS}}' \
+   
LDFLAGS_FOR_TARGET='${TEST_LDFLAGS_FOR_TARGET:-${GCC_TESTS_LDFLAGS}}' \
+   CFLAGS='${GCC_TESTS_CFLAGS}' \
+   CXXFLAGS='${GCC_TESTS_CXXFLAGS}' \
+   FCFLAGS='${GCC_TESTS_FCFLAGS}' \
+   FFLAGS='${GCC_TESTS_FFL

[gentoo-commits] repo/gentoo:master commit in: eclass/

2024-08-11 Thread Sam James
commit: 1e38f02f41e79e1fb15b1d418f0a792ce22c390d
Author: Sam James  gentoo  org>
AuthorDate: Sun Aug 11 17:35:12 2024 +
Commit: Sam James  gentoo  org>
CommitDate: Sun Aug 11 20:53:44 2024 +
URL:https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=1e38f02f

toolchain.eclass: style tweak

For consistency.

Signed-off-by: Sam James  gentoo.org>

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

diff --git a/eclass/toolchain.eclass b/eclass/toolchain.eclass
index bfb087146864..984c37a3fa73 100644
--- a/eclass/toolchain.eclass
+++ b/eclass/toolchain.eclass
@@ -2049,7 +2049,7 @@ toolchain_src_test() {
eerror "GCC_TESTS_IGNORE_NO_BASELINE is set, ignoring 
test result and creating a new baseline..."
elif [[ -n ${GCC_TESTS_REGEN_BASELINE} ]] ; then
eerror "GCC_TESTS_REGEN_BASELINE is set, ignoring test 
result and creating using a new baseline..."
-   elif [[ ${ret} != 0 ]]; then
+   elif [[ ${ret} != 0 ]] ; then
eerror "(Set GCC_TESTS_IGNORE_NO_BASELINE=1 to make 
this non-fatal and generate a baseline.)"
die "Tests failed (failures occurred with no reference 
data)"
fi



  1   2   3   4   5   6   7   8   9   10   >