[gentoo-commits] repo/gentoo:master commit in: eclass/tests/
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/
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/
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/
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/
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/
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/
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/
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/
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/
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/
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/
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/
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/
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/
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/
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/
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/
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/
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/
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/
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/
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/
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/
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/
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/
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/
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/
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/
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/
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/
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/
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/
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/
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/
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/
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/
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/
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/
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/
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/
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/
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/
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/
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/
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/
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/
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/
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/
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/
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/
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/
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/
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/
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/
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/
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/
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/
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/
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/
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/
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/
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/
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/
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/
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/
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/
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/
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/
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/
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/
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/
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/
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/
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/
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/
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/
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/
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/
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/
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/
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/
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/
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/
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/
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/
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/
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/
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/
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/
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/
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/
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/
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/
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/
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/
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/
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/
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/
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/
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